/**
 * @module zod-to-json-schema
 * @description Vendored Zod → JSON Schema converter. Supports the subset of
 * Zod the VibeFrame manifest uses (object, string, number, boolean, enum,
 * optional, default, array, literal).
 *
 * Why vendored instead of npm `zod-to-json-schema`:
 * - We don't need refs/$ref/nested defs. All manifest schemas are flat.
 * - The MCP SDK's `inputSchema` field expects a specific JSON Schema subset
 *   (`{ type: "object", properties, required }`); the npm package emits
 *   $schema/dialect URLs that some MCP hosts mishandle.
 * - The Agent's `parameters` field is structurally identical to MCP's
 *   `inputSchema` (see `packages/cli/src/agent/types.ts`); one converter
 *   serves both adapters.
 * - 150 lines we can debug.
 *
 * Coverage gaps (intentional):
 * - z.union, z.discriminatedUnion: not used by any current tool.
 * - z.record, z.map, z.tuple, z.intersection: not used.
 * - z.nullable: not used (we use .optional() everywhere).
 * - z.transform/preprocess: pre-applied by Zod parse; output schema is the
 *   "input" view, which is what MCP/Agent need.
 *
 * If a manifest entry needs an unsupported feature, this converter throws
 * loudly so the gap is visible at registration time, not at runtime.
 */
import type { ZodTypeAny } from "zod";
export interface JsonSchema {
    type: "object" | "string" | "number" | "boolean" | "array";
    description?: string;
    enum?: readonly (string | number)[];
    default?: unknown;
    properties?: Record<string, JsonSchema>;
    required?: string[];
    items?: JsonSchema;
    additionalProperties?: JsonSchema | boolean;
}
/**
 * Convert a ZodObject schema to a JSON Schema suitable for MCP `inputSchema`.
 * Throws on unsupported Zod variants.
 */
export declare function zodToJsonSchema(schema: ZodTypeAny): JsonSchema;
/**
 * The Agent surface uses a `parameters` field that's structurally identical
 * to MCP's `inputSchema`. This is just an alias to make adapter code clearer.
 */
export declare const zodToAgentParameters: typeof zodToJsonSchema;
