/** * Module-level license registry + the static `LicenseManager`. * * `LicenseRegistry` is a single per-bundle instance. Call * `LicenseManager.setLicenseKey()` once at app boot and every dock sees it. It * holds the statically-set key, notifies on change, and owns the once-per- * process console de-dup (modelled on core's `_warnedMissingModule`). * * Static-only by design: there is no per-instance key. The effective key is * the registry key, or missing when none is set. See `enterprise-modules/ * license.md` ยง5. */ import { DockviewEvent } from 'dockview'; declare class LicenseRegistryImpl { private _key; private readonly _warned; private readonly _onDidChangeKey; /** Fires when the statically-set key changes (e.g. a late `setLicenseKey`). */ readonly onDidChangeKey: DockviewEvent; /** The effective key, or `undefined` if none has been set. */ get key(): string | undefined; /** Set (or clear, with `undefined`) the process-wide key. Fires on change. */ setKey(key: string | undefined): void; /** * Log `message` at most once per process for a given `dedupeKey`. N docks on * a page therefore produce one warning, not N. The flag lives here (module * scope), never on the per-component service. */ warnOnce(dedupeKey: string, message: string, severity?: 'error' | 'warn' | 'info'): void; /** Tests only: reset key and de-dup state. */ _reset(): void; } /** The single per-bundle registry instance. */ export declare const LicenseRegistry: LicenseRegistryImpl; /** * Static entry point: the only way to set a key (static-only, no per-instance * option). Set once at app boot; every `DockviewComponent` created afterwards * sees it. */ export declare class LicenseManager { static setLicenseKey(key: string): void; /** Test/teardown helper. */ static _clearLicenseKey(): void; } export {};