Saxonberg Server API
    Preparing search index...

    One client-state schema entry. Declared in HasInteractiveMixin.clientStateSchema. key is the dotted string the client uses ('console.tabs', …); defaultValue is surfaced when the host has not written that key yet; optional validator rejects bad writes (none ship in v1).

    If the schema ever grows past the point where a single TS array is comfortable, externalize it (YAML / a per-feature mixin with a walker / …). Until then, one array, one place.

    interface ClientStateSchemaEntry<T = unknown> {
        defaultValue: T;
        description?: string;
        key: string;
        transient?: boolean;
        validator?: (value: unknown) => string | true;
    }

    Type Parameters

    • T = unknown
    Index

    Properties

    defaultValue: T
    description?: string
    key: string
    transient?: boolean

    Transient keys live with the live session, not the character: held in an in-memory store that is never persisted (so they reset to the default on a fresh login) and never round-trips through the Hydrator. Used for ephemeral UI scoping like per-bar input modes. Defaults to persisted (false/absent).

    validator?: (value: unknown) => string | true