@adobe/data - v0.10.30
    Preparing search index...

    Interface Schema

    interface Schema {
        additionalProperties?: boolean | Schema.Schema;
        allOf?: readonly Schema.Schema[];
        anyOf?: readonly Schema.Schema[];
        conditionals?: readonly Schema.Conditional[];
        const?: any;
        default?: any;
        defaultFactory?: string;
        description?: string;
        entity?: boolean;
        enum?: readonly any[];
        exclusiveMaximum?: number;
        exclusiveMinimum?: number;
        external?: { agent?: boolean; link?: boolean };
        interpolators?: { cubicSpline?: string; linear?: string; step?: string };
        items?: Schema.Schema;
        layout?: Schema.Layout;
        maximum?: number;
        maxItems?: number;
        maxLength?: number;
        mediaType?: string;
        minimum?: number;
        minItems?: number;
        minLength?: number;
        multipleOf?: number;
        mutable?: boolean;
        nonPersistent?: boolean;
        nonShared?: boolean;
        nullable?: undefined;
        oneOf?: readonly Schema.Schema[];
        partition?: boolean;
        pattern?: string;
        precision?: 2 | 1;
        properties?: { readonly [key: string]: Schema.Schema };
        propertyMeta?: { readonly [key: string]: Schema.PropertyMeta };
        required?: readonly string[];
        schema?: undefined;
        signature?: {
            parameters?: readonly (Schema.Schema | Schema.Parameter)[];
            returns?: Schema.Schema;
        };
        title?: string;
        type?: | "string"
        | "number"
        | "boolean"
        | "object"
        | "function"
        | "null"
        | "integer"
        | "array"
        | "typed-buffer"
        | "blob"
        | "observe"
        | "promise"
        | "generator";
        typeName?: string;
        value?: Schema.Schema;
    }
    Index

    Properties

    additionalProperties?: boolean | Schema.Schema
    allOf?: readonly Schema.Schema[]
    anyOf?: readonly Schema.Schema[]
    conditionals?: readonly Schema.Conditional[]
    const?: any
    default?: any
    defaultFactory?: string
    description?: string
    entity?: boolean
    enum?: readonly any[]
    exclusiveMaximum?: number
    exclusiveMinimum?: number
    external?: { agent?: boolean; link?: boolean }

    Exposure policy for untrusted channels, valid on any schema (an action, a state, a nested group). For a function it governs invocation; for any other member it governs visibility (e.g. toTypeScript omits members hidden from the agent). Pure metadata: does NOT affect ToType or service-schema validation. Resolve it with resolveExternalInvocation(schema) — the single source of truth — rather than re-deriving per call site.

    The two channels have deliberately opposite default polarity, matching their trust level:

    • link — a deeplink / URL: the least-trusted channel (anyone can craft a URL and get a victim to open it in their authenticated session). Default-deny whitelist: exposed only when link === true.
    • agent — an agent acting on the user's behalf: more trusted. Default-allow blacklist: exposed unless agent === false.
    interpolators?: { cubicSpline?: string; linear?: string; step?: string }
    items?: Schema.Schema
    layout?: Schema.Layout
    maximum?: number
    maxItems?: number
    maxLength?: number
    mediaType?: string
    minimum?: number
    minItems?: number
    minLength?: number
    multipleOf?: number
    mutable?: boolean
    nonPersistent?: boolean
    nonShared?: boolean
    nullable?: undefined
    oneOf?: readonly Schema.Schema[]
    partition?: boolean
    pattern?: string
    precision?: 2 | 1
    properties?: { readonly [key: string]: Schema.Schema }
    propertyMeta?: { readonly [key: string]: Schema.PropertyMeta }
    required?: readonly string[]
    schema?: undefined
    signature?: {
        parameters?: readonly (Schema.Schema | Schema.Parameter)[];
        returns?: Schema.Schema;
    }

    The signature of the function constructor, grouped so these members live only on function schemas rather than on every Schema: { type: "function", signature: { parameters, returns } } → (...args) => ToType<returns>. Absent parameters ⇒ no args; absent returns ⇒ void; absent signature entirely ⇒ () => void.

    Each parameter is a named descriptor (Parameter) rather than a bare schema, so the argument's name and its own documentation are known independently of its type (parameter.schema). parameter.description documents the argument; parameter.schema.description documents the type. Neither affects ToType, which derives the call signature positionally from parameter.schema. A bare Schema entry is the deprecated positional form; read either with Parameter.schemaOf.

    title?: string
    type?:
        | "string"
        | "number"
        | "boolean"
        | "object"
        | "function"
        | "null"
        | "integer"
        | "array"
        | "typed-buffer"
        | "blob"
        | "observe"
        | "promise"
        | "generator"
    typeName?: string
    value?: Schema.Schema