import type { Context } from '../context.js'; import type { ZodSchema } from 'zod'; interface LanguageGenerator { (routes: RouteInfo[]): string; } interface RouteInfo { method: string; path: string; description?: string; requestBody?: ZodSchema; responses?: Record; parameters?: Array<{ name: string; in: 'path' | 'query' | 'header'; required?: boolean; schema: ZodSchema; description?: string; }>; } declare function registerLanguage(language: string, generator: LanguageGenerator): void; export declare function openapi(options?: { title?: string; version?: string; }): { collect: (method: string, path: string, options?: string | Partial) => void; generate: () => { openapi: string; info: { title: string; version: string; }; paths: Record; }; generateClient: (language?: string) => string; registerLanguage: typeof registerLanguage; middleware: (ctx: Context, next: () => Promise) => Promise; }; export {}; //# sourceMappingURL=openapi.d.ts.map