import { Type } from '../reflection'; import type { OpenApiReferenceObject, OpenApiSchemaObject } from './types'; export interface OpenApiSchemaContext { schemas: Record; generating: Set; componentNames: WeakMap; componentTypes: Map; objectLiteralComponents: Map>; } export interface OpenApiTypeProperty { name: string; type: Type; required: boolean; description?: string; } export declare function createOpenApiSchemaContext(): OpenApiSchemaContext; export declare function typeToOpenApiSchema(type: Type, context?: OpenApiSchemaContext): OpenApiSchemaObject | OpenApiReferenceObject; export declare function listOpenApiTypeProperties(type: Type): OpenApiTypeProperty[]; export declare function unwrapOpenApiType(type: Type): Type; export declare function allowsUndefined(type: Type): boolean; export declare function typeHasOpenApiFileUpload(type: Type, seenTypes?: Set, seenClasses?: Set>): boolean; export declare function typeRequiresOpenApiFileUpload(type: Type, seenTypes?: Set, seenClasses?: Set>): boolean; //# sourceMappingURL=schema.d.ts.map