import type { IR } from "./ir.js"; export interface JsonSchemaOptions { description?: string; target?: string; dialect?: string | null; /** * Which side of morphs and defaults to describe: * - `'input'` — accepted payloads: morphs emit their input shape, defaulted * properties are optional (with `default` annotations). * - `'output'` — produced values: morphs emit their output shape, defaulted * properties are required (always present after validation). * Unset keeps the hybrid legacy behavior (morph output, defaults optional). */ io?: "input" | "output"; fallback?: (context: { base: Record; }) => unknown; } type JsonSchema = Record; /** Emit the requested JSON Schema dialect represented by an IR tree. */ export declare function irToJsonSchema(ir: IR, options?: JsonSchemaOptions): JsonSchema; export {};