IFClite TypeScript API
    Preparing search index...

    Type Alias JsonSchema

    A deliberately small JSON Schema (2020-12 subset) interpreter.

    The workspace has no zod, so the op contract is authored ONCE as JSON Schema (./schema.ts) and this interpreter validates against that very object. The schema handed to an AI tool and the check the reducer relies on are therefore the same data; there is nothing to drift.

    Supported keywords: type, enum, const, properties, required, additionalProperties (boolean or schema), items, minItems, minLength, minimum, oneOf, anyOf, $ref (local #/$defs/…), discriminator-free unions. Anything else is ignored, so only use the keywords listed here.

    type JsonSchema = {
        $ref?: string;
        additionalProperties?: boolean | JsonSchema;
        anyOf?: readonly JsonSchema[];
        const?: unknown;
        description?: string;
        enum?: readonly unknown[];
        items?: JsonSchema;
        minimum?: number;
        minItems?: number;
        minLength?: number;
        oneOf?: readonly JsonSchema[];
        pattern?: string;
        properties?: Record<string, JsonSchema>;
        required?: readonly string[];
        title?: string;
        type?: JsonType | JsonType[];
    }
    Index
    $ref?: string
    additionalProperties?: boolean | JsonSchema
    anyOf?: readonly JsonSchema[]
    const?: unknown
    description?: string
    enum?: readonly unknown[]
    items?: JsonSchema
    minimum?: number
    minItems?: number
    minLength?: number
    oneOf?: readonly JsonSchema[]
    pattern?: string
    properties?: Record<string, JsonSchema>
    required?: readonly string[]
    title?: string
    type?: JsonType | JsonType[]