Union type.

IAnyOf represents a union type in TypeScript (A | B | C).

For reference, even if your Swagger (or OpenAPI) document defines oneOf instead of anyOf, ILlmSchema forcibly converts it to the anyOf-based ILlmSchema.IAnyOf type.

interface IAnyOf {
    anyOf: (
        | ILlmSchema.IObject
        | ILlmSchema.IBoolean
        | ILlmSchema.IInteger
        | ILlmSchema.INumber
        | ILlmSchema.IString
        | ILlmSchema.IArray
        | ILlmSchema.IReference
        | ILlmSchema.INull
        | ILlmSchema.IUnknown
    )[];
    deprecated?: boolean;
    description?: string;
    example?: any;
    examples?: Record<string, any>;
    readOnly?: boolean;
    title?: string;
    writeOnly?: boolean;
    "x-discriminator"?: ILlmSchema.IAnyOf.IDiscriminator;
}

Hierarchy (View Summary)

Properties

anyOf: (
    | ILlmSchema.IObject
    | ILlmSchema.IBoolean
    | ILlmSchema.IInteger
    | ILlmSchema.INumber
    | ILlmSchema.IString
    | ILlmSchema.IArray
    | ILlmSchema.IReference
    | ILlmSchema.INull
    | ILlmSchema.IUnknown
)[]

List of the union types.

deprecated?: boolean

Whether the type is deprecated or not.

description?: string

Detailed description of the schema.

example?: any

Example value.

examples?: Record<string, any>

List of example values as key-value pairs.

readOnly?: boolean

Whether the property is read-only.

title?: string

Title of the schema.

writeOnly?: boolean

Whether the property is write-only.

"x-discriminator"?: ILlmSchema.IAnyOf.IDiscriminator

Discriminator info of the union type.

This discriminator is used to determine which type in the union should be used based on the value of a specific property.