Documentation
    Preparing search index...

    Function parameters schema with shared type definitions.

    Extends the object schema to include a $defs map for named type definitions that can be referenced via $ref. This structure allows recursive types and reduces schema duplication.

    The additionalProperties is always false for parameters to ensure strict argument validation and prevent unexpected properties.

    interface IParameters {
        $defs: Record<string, ILlmSchema>;
        additionalProperties: false;
        deprecated?: boolean;
        description?: string;
        example?: any;
        examples?: Record<string, any>;
        properties: Record<string, ILlmSchema>;
        readOnly?: boolean;
        required: string[];
        title?: string;
        type: "object";
        writeOnly?: boolean;
    }

    Hierarchy

    Index

    Properties

    $defs: Record<string, ILlmSchema>

    Named schema definitions for reference.

    Contains type definitions that can be referenced throughout the schema using $ref: "#/$defs/TypeName". Essential for recursive types and shared structures.

    additionalProperties: false

    Whether additional properties are allowed.

    Always false for function parameters to ensure strict type checking. This prevents LLMs from hallucinating extra properties.

    deprecated?: boolean

    Whether this type is deprecated.

    When true, indicates the type should no longer be used and may be removed in future versions. Set via the @deprecated JSDoc tag.

    description?: string

    Detailed description of the schema.

    Full documentation for the type, explaining its purpose, constraints, and usage. Extracted from JSDoc comment body. Supports markdown formatting in many JSON Schema consumers.

    example?: any

    Single example value for the schema.

    A representative value that conforms to the schema, useful for documentation and testing. Set via the @example JSDoc tag.

    examples?: Record<string, any>

    Named example values for the schema.

    Multiple examples as key-value pairs, where keys are example names and values are conforming data. Useful for showing different valid states or edge cases.

    properties: Record<string, ILlmSchema>

    Property name to schema mapping.

    Defines the type of each named property on the object. All properties are defined here regardless of whether they are required or optional.

    readOnly?: boolean

    Whether the property is read-only.

    When true, the property should not be modified by clients and is typically set by the server. Useful for generated IDs, timestamps, etc.

    required: string[]

    List of required property names.

    Properties in this array must be present in the object. In strict mode, all properties become required automatically.

    title?: string

    Short title for the schema.

    A brief, human-readable name for the type. Typically extracted from the first line of a JSDoc comment or the @title tag.

    type: "object"
    writeOnly?: boolean

    Whether the property is write-only.

    When true, the property is accepted on input but never returned in responses. Common for sensitive data like passwords.