/** * Config emitters, typed wrappers for the ConfigEvent domain. * * Used by the config emit-bridge (runtime/config/emit-bridge.ts) to surface * key-level setting changes onto the runtime event bus `config` domain, which * the control-plane gateway fans out to subscribed SSE/WebSocket clients * unchanged. */ import type { RuntimeEventBus } from '../events/index.js'; import type { ConfigEventScope, ConfigEventValue } from '../../../events/config.js'; import type { EmitterContext } from './index.js'; /** * Announce that one config key changed. * * `value` must be OMITTED for a secret-bearing key rather than passed as null: * the absence is the contract, and a null would read as "the credential was * cleared". The bridge is the one place that decides which it is. */ export declare function emitConfigKeyChanged(bus: RuntimeEventBus, ctx: EmitterContext, data: { key: string; scope: ConfigEventScope; secret: boolean; value?: ConfigEventValue | undefined; changedAt: number; }): void; //# sourceMappingURL=config.d.ts.map