GeoLeaf Core API - v3.19.0
    Preparing search index...

    Interface BootInfoNamespace

    Subset of the global GeoLeaf namespace consumed by boot-info.

    Narrows the three members boot-info reads structurally, and keeps a permissive index signature for the six it reaches by name only (Labels, Storage, boot, bootInfo, _LMRenderer, _LayerManagerControl).

    🛑 STANDALONE, AND THAT IS NOT COSMETIC — it is what makes the PUBLIC export possible (decided 17/08/2026). This type extended GeoLeafAPINamespace, which lives in contracts/api.contract.ts — a module the exports map does not publish: of the 8 declared ./contracts/* subpaths, api.contract.js is not one. Exporting BootInfoNamespace while keeping the extends would have emitted a public declaration referencing a type the consumer cannot resolve — exactly the TS2882 class closed by the CSS-stub work.

    ⚠️ And the arbitration said "remove the unused extends": the word is too broad. What was unused are the parent's three named members (_APIController, API, CONSTANTS); its index signature, however, SERVES — six of the nine members read by boot-info.ts only pass through it. It is therefore reproduced here, not deleted.

    interface BootInfoNamespace {
        _version?: string;
        plugins?: { getLoadedPlugins?: () => string[]; [key: string]: unknown };
        Config?: {
            get?: (key: string, def?: unknown) => unknown;
            [key: string]: unknown;
        };
        [key: string]: unknown;
    }

    Indexable

    • [key: string]: unknown

      Reached by name only — see the note above.

    Index
    _version?: string
    plugins?: { getLoadedPlugins?: () => string[]; [key: string]: unknown }
    Config?: {
        get?: (key: string, def?: unknown) => unknown;
        [key: string]: unknown;
    }