Skip to main content

Interface: ChiveEnv

Defined in: src/api/types/context.ts:128

Hono environment bindings for Chive API.

Remarks

Extends Hono's generic types to provide type-safe access to injected services and request-scoped variables.

Example

import type { Context } from 'hono';
import type { ChiveEnv } from './types/context.js';

async function handler(c: Context<ChiveEnv>) {
const services = c.get('services');
const preprint = await services.preprint.getPreprint(uri);
}

Properties

Bindings

Bindings: Record<string, never>

Defined in: src/api/types/context.ts:132

Environment bindings (unused in Node.js runtime).


Variables

Variables: object

Defined in: src/api/types/context.ts:137

Context variables set by middleware.

logger

logger: ILogger

Logger instance with request context.

rateLimitTier

rateLimitTier: RateLimitTier

User's rate limit tier.

redis

redis: Redis

Redis client for rate limiting and caching.

requestId

requestId: string

Unique request identifier for correlation.

requestStartTime

requestStartTime: number

Request start time for duration tracking.

services

services: ChiveServices

Injected service instances.

user?

optional user: AuthenticatedUser

Authenticated user (undefined if anonymous).

validatedInput?

optional validatedInput: unknown

Validated request input (set by validation middleware).