import * as _json_render_core from '@json-render/core'; import { Spec } from '@json-render/core'; /** * Ink terminal schema definition. * * Defines the spec shape (what the AI generates) and catalog shape * (what the developer provides as component + action definitions). */ declare const schema: _json_render_core.Schema<{ spec: _json_render_core.SchemaType<"object", { /** Root element key */ root: _json_render_core.SchemaType<"string", unknown>; /** Flat map of elements by key */ elements: _json_render_core.SchemaType<"record", _json_render_core.SchemaType<"object", { /** Component type from catalog */ type: _json_render_core.SchemaType<"ref", string>; /** Component props */ props: _json_render_core.SchemaType<"propsOf", string>; /** Child element keys (flat reference) */ children: _json_render_core.SchemaType<"array", _json_render_core.SchemaType<"string", unknown>>; /** Visibility condition */ visible: { optional: true; kind: "any"; inner?: unknown; }; /** Repeat children from a state array */ repeat: { optional: true; kind: "any"; inner?: unknown; }; }>>; }>; catalog: _json_render_core.SchemaType<"object", { /** Component definitions */ components: _json_render_core.SchemaType<"map", { /** Zod schema for component props */ props: _json_render_core.SchemaType<"zod", unknown>; /** Slots for this component. Use ['default'] for children, or named slots like ['header', 'footer'] */ slots: _json_render_core.SchemaType<"array", _json_render_core.SchemaType<"string", unknown>>; /** Description for AI generation hints */ description: _json_render_core.SchemaType<"string", unknown>; /** Example prop values used in prompt examples (auto-generated from Zod schema if omitted) */ example: _json_render_core.SchemaType<"any", unknown>; }>; /** Action definitions (optional) */ actions: _json_render_core.SchemaType<"map", { /** Zod schema for action params */ params: _json_render_core.SchemaType<"zod", unknown>; /** Description for AI generation hints */ description: _json_render_core.SchemaType<"string", unknown>; }>; }>; }>; /** * Type alias for the Ink schema */ type InkSchema = typeof schema; /** * Spec type for Ink (parameterized by catalog) */ type InkSpec = Spec; export { type InkSchema, type InkSpec, schema };