UNPKG

workery

Version:

Modern web framework for building APIs on Cloudflare Workers.

54 lines (53 loc) 2.06 kB
/// <reference types="@cloudflare/workers-types" /> import { ResponseConfig } from "@asteasolutions/zod-to-openapi"; import type { ContactObject, LicenseObject, OpenAPIObject, SecurityRequirementObject, SecuritySchemeObject, ServerObject, TagObject } from "openapi3-ts/oas31"; import { Middleware } from "./middleware"; import { Router } from "./routing"; import type { ArgsOf, ExceptionHandler, ResponseClass } from "./types"; export declare class App<E = unknown> extends Router<E> { rootPath: string; title: string; description: string; version: string; tagsInfo: TagObject[]; servers: ServerObject[]; contact?: ContactObject; license?: LicenseObject; termsOfService?: string; securitySchemes: Record<string, SecuritySchemeObject>; security: SecurityRequirementObject[]; openapiUrl: string | null; swaggerUrl: string | null; redocUrl: string | null; middleware: Middleware<E>[]; exceptionHandler: ExceptionHandler<E>; private _rootPathRegex; private _openapi?; constructor(init: { rootPath?: string; title?: string; description?: string; version?: string; tagsInfo?: TagObject[]; servers?: ServerObject[]; contact?: ContactObject; license?: LicenseObject; termsOfService?: string; securitySchemes?: Record<string, SecuritySchemeObject>; security?: SecurityRequirementObject[]; openapiUrl?: string | null; swaggerUrl?: string | null; redocUrl?: string | null; middleware?: Middleware<E>[]; exceptionHandler?: ExceptionHandler<E>; tags?: string[]; deprecated?: boolean; includeInSchema?: boolean; responses?: Record<number, ResponseConfig>; defaultResponseClass?: ResponseClass; }); include(pathPrefix: string, router: Router<E>): void; openapi(): OpenAPIObject; handle(baseArgs: ArgsOf<{}, E>): Promise<Response>; fetch: (req: Request, env: E, ctx: ExecutionContext) => Promise<Response>; }