import { type ZodType } from 'zod'; /** * JSON Schema type definitions for conversion. */ interface JsonSchema { type?: string; properties?: Record; required?: string[]; items?: JsonSchema; enum?: (string | number | boolean)[]; const?: unknown; anyOf?: JsonSchema[]; oneOf?: JsonSchema[]; allOf?: JsonSchema[]; description?: string; default?: unknown; minimum?: number; maximum?: number; minLength?: number; maxLength?: number; pattern?: string; format?: string; nullable?: boolean; [key: string]: unknown; } /** * Convert a JSON Schema to a Zod schema. * * Supports common JSON Schema types and constraints: * - string, number, integer, boolean, null * - object with properties and required * - array with items * - enum and const * - anyOf, oneOf, allOf * - format constraints (email, uri, uuid, date-time) * - numeric constraints (minimum, maximum) * - string constraints (minLength, maxLength, pattern) * * @param schema - JSON Schema object * @returns Zod schema */ export declare function jsonSchemaToZod(schema: JsonSchema | Record): ZodType; /** * Convert a JSON Schema to a Zod schema with a default empty object fallback. * * @param schema - Optional JSON Schema object * @returns Zod schema (defaults to empty object schema) */ export declare function jsonSchemaToZodSafe(schema?: Record): ZodType; export {};