import type { RouteDefinition } from "../../core/src/index.js"; import type { ModelDefinition } from "../../orm/src/index.js"; interface OpenAPISpecInfo { title: string; version: string; description?: string; contact?: { name?: string; url?: string; email?: string; }; license?: { name: string; url?: string; }; } interface OpenAPISpec { openapi: string; info: OpenAPISpecInfo; servers?: { url: string; }[]; paths: Record>; components?: { schemas?: Record; securitySchemes?: Record; }; tags?: { name: string; }[]; } /** * Register a named OpenAPI security scheme (e.g. an oauth2 scheme with scopes, * or a custom apiKey). Call at app bootstrap, before generate(). A registered * scheme may override the built-in bearerAuth. */ export declare function addSecurityScheme(name: string, definition: Record): void; /** * Register a reusable component schema, referenceable via meta.requestSchema / * meta.responseSchemas or a raw $ref. */ export declare function addSchema(name: string, schema: Record): void; /** Clear the security-scheme and schema registries (test helper). */ export declare function resetRegistry(): void; export declare function generate(routes: RouteDefinition[], models?: ModelDefinition[]): OpenAPISpec; export {};