/** * Wires EscalationLedger persistence to the pipeline's existing escalation events. * Deliberately zero changes to the escalation decision logic in stage-executor.ts — * `PipelineEventEmitter` already emits everything the ledger needs * (`emitEscalationTriggered`/`emitEscalationResolved`/`emitEscalationAborted`); nothing * previously subscribed to them. */ import { type PipelineEventEmitter } from '../output/pipeline-emitter.js'; import { type EscalationLedger } from './escalation-ledger.js'; /** * Subscribes a ledger to an emitter's escalation events for the lifetime of the process. * A "triggered" event's signal fields are held in memory just long enough to be merged * with the "resolved"/"aborted" event for the same stage that follows it. */ export declare function subscribeEscalationLedger(emitter: PipelineEventEmitter, ledger: EscalationLedger): () => void; /** * Subscribes the default `EscalationLedger` singleton to the default pipeline emitter * singleton, exactly once per process. Safe to call more than once (e.g. if the CLI's * startup path runs more than once in a test process) — subsequent calls are no-ops. */ export declare function bootstrapEscalationLedger(): void; /** * Test-only: allow bootstrapEscalationLedger() to be exercised again in isolation. * Removes the listeners subscribeEscalationLedger() attached to the shared emitter * singleton — without this, repeated bootstrap/reset cycles (e.g. across test files) * would leak listeners onto that singleton for the lifetime of the process. */ export declare function resetEscalationLedgerBootstrap(): void; //# sourceMappingURL=escalation-ledger-subscriber.d.ts.map