UNPKG

@busy-hour/blaze

Version:

<h1 align='center'>🔥 Blaze</h1> <div align='center'> An event driven framework for 🔥 Hono.js </div>

47 lines (46 loc) • 2.53 kB
import type { Context as HonoCtx } from 'hono'; import type { ZodSchema } from 'zod'; import type { RecordString, RecordUnknown } from '../../types/common'; export interface ContextValidator<H extends ZodSchema = ZodSchema, P extends ZodSchema = ZodSchema, Q extends ZodSchema = ZodSchema, B extends ZodSchema = ZodSchema> { header?: H | null; params?: P | null; query?: Q | null; body?: B | null; } export interface CreateContextOption<M extends RecordUnknown = RecordUnknown, H extends RecordString = RecordString, P extends RecordUnknown = RecordUnknown, Q extends RecordUnknown = RecordUnknown, B extends RecordUnknown = RecordUnknown, HV extends ZodSchema = ZodSchema, PV extends ZodSchema = ZodSchema, QV extends ZodSchema = ZodSchema, BV extends ZodSchema = ZodSchema, V extends ContextValidator<HV, PV, QV, BV> = ContextValidator<HV, PV, QV, BV>> { honoCtx: HonoCtx | null; meta: M | null; headers: H | null; params: P | null; query: Q | null; body: B | null; validator: V | null; } export interface ContextConstructorOption<M extends RecordUnknown, H extends RecordString, P extends RecordUnknown, Q extends RecordUnknown, B extends RecordUnknown, HV extends ZodSchema = ZodSchema, PV extends ZodSchema = ZodSchema, QV extends ZodSchema = ZodSchema, BV extends ZodSchema = ZodSchema> extends Omit<CreateContextOption<M, H, P, Q, B, HV, PV, QV, BV>, 'validator'> { } export interface ContextSetter<M extends RecordUnknown = RecordUnknown, H extends RecordString = RecordString, P extends RecordUnknown = RecordUnknown, Q extends RecordUnknown = RecordUnknown, B extends RecordUnknown = RecordUnknown> { meta(meta: M): void; header(headers: H): void; headers(headers: H): void; params(params: P): void; query(query: Q): void; body(body: B): void; } export interface ContextRequest<H extends RecordString = RecordString, P extends RecordUnknown = RecordUnknown, Q extends RecordUnknown = RecordUnknown, B extends RecordUnknown = RecordUnknown> { /** @description Alias for `headers` */ header: H; /** @description Get request `headers` */ headers: H; /** @description Get request `query` */ query: Q; /** @description Get request `params` */ params: P; /** @description Get request `body` */ body(): Promise<B>; /** @description Get request `url` */ url: string | null; /** @description Get request `method` */ method: string | null; /** @description Get request `path` */ path: string | null; }