/**
 * JSON Schema to Zod schema converter.
 *
 * Converts MCP tool JSON Schema definitions to Zod schemas
 * for use with the Tool Registry.
 */
import { z } from "zod";
import type { JsonSchema } from "../types.js";
/**
 * Converts a JSON Schema to a Zod schema.
 *
 * Supports common JSON Schema constructs used in MCP tool definitions:
 * - Primitive types (string, number, integer, boolean, null)
 * - Objects with properties
 * - Arrays with items
 * - Enums and const values
 * - Basic validation (min/max, pattern, required)
 * - Union types (oneOf, anyOf)
 *
 * @param schema - JSON Schema to convert
 * @returns Equivalent Zod schema
 *
 * @example
 * const jsonSchema = {
 *   type: "object",
 *   properties: {
 *     url: { type: "string" },
 *     timeout: { type: "number", minimum: 0 }
 *   },
 *   required: ["url"]
 * };
 * const zodSchema = jsonSchemaToZod(jsonSchema);
 */
export declare function jsonSchemaToZod(schema: JsonSchema | undefined): z.ZodTypeAny;
/**
 * Creates a permissive fallback schema for unknown structures.
 *
 * Used when JSON Schema conversion fails or schema is missing.
 *
 * @param description - Optional description for the schema
 * @returns A permissive Zod schema that accepts any object
 */
export declare function createPermissiveSchema(description?: string): z.ZodTypeAny;
//# sourceMappingURL=json-schema-to-zod.d.ts.map