/** * ZodCompiler — OpenAPI JSON Schema → Zod Code String * * Translates OpenAPI JSON Schema AST directly into Zod code strings. * No intermediate ParamsMap — the Zod AST is the compilation target. * * Key design decisions: * - Path/query params use `z.coerce.*` (URL params arrive as strings) * - Body params use standard `z.*` (JSON provides native types) * - `required: false` → `.optional()` * - Enum + format constraints are preserved * * @module */ import type { SchemaNode, ParamSource } from '../parser/types.js'; /** * Compile an OpenAPI schema node into a Zod code string. * * @param schema - Normalized JSON Schema node * @param coerce - Whether to use `z.coerce.*` (for path/query params) * @returns Zod code string (e.g. `z.coerce.number().int()`) */ export declare function compileZod(schema: SchemaNode, coerce?: boolean): string; /** * Compile a list of API parameters into a `z.object({...})` code string. * * @param params - List of parameters (merged path + query + header) * @param bodySchema - Optional request body schema * @param requiredFields - List of required field names from parent * @returns Zod object code string */ export declare function compileInputSchema(params: ReadonlyArray<{ name: string; source: ParamSource; required: boolean; schema: SchemaNode; description?: string; }>, bodySchema?: SchemaNode): string; /** * Compile a response schema into a Zod code string for Presenter generation. * * @param schema - Response schema node * @returns Zod code string */ export declare function compileResponseSchema(schema: SchemaNode): string; //# sourceMappingURL=ZodCompiler.d.ts.map