Saxonberg Server API
    Preparing search index...

    Public shape provided by EnvironmentMixin — methods only, per the inter-stuff contract. The persistentStore (Hydrator-saved) and sessionStore (transient) stores live as public fields on the implementing class so the Hydrator can reflect into them by name, but they are NOT part of the contract surface; external code goes through getSetting / setSetting / setVar / listVars. Tests that need raw state reach for the concrete class type, not the Environment narrowing.

    interface Environment {
        describeSetting(key: string): SettingsSchemaEntry<unknown> | undefined;
        getOwnSetting<T>(key: string): T | undefined;
        getSetting<T>(key: string): T | undefined;
        listSettings(): SettingsSnapshotEntry[];
        listVars(): Record<string, string>;
        setSetting<T>(key: string, value: T, actor: Stuff): void;
        setVar(name: string, value: string): void;
        unsetSetting(key: string, actor: Stuff): void;
        unsetVar(name: string): void;
    }

    Hierarchy (View Summary)

    Index

    Methods

    • Return the user-explicit override for key without falling back to the schema default. undefined when nothing has been setSetting'd — even when the schema declares a default. Lets consumers distinguish "user explicitly set this" from "schema default is in effect" for chain-resolution flows (e.g., LocomotionApi.defaultModeFor defers to the bodyplan default only when there's no explicit override).

      Type Parameters

      • T

      Parameters

      • key: string

      Returns T | undefined