import { type RunLedgerStore } from "../audit/run-ledger.js"; import { type RuntimeEventBus } from "../events/bus.js"; import { type OutboxProcessor } from "../outbox/processor.js"; import { type OutboxStore } from "../outbox/store.js"; import { type SessionRegistry } from "../sessions/registry.js"; import { type TicketQueueStore } from "../tickets/store.js"; import type { ConductorRecoveryResult } from "../conductor/recovery.js"; import type { WorkerPaneAdapter } from "../workers/panes.js"; import { type WorkerRegistry } from "../workers/registry.js"; export interface WatchdogReconcileResult { readonly at: string; readonly recovered_ticket_ids: readonly string[]; readonly rebound_ticket_ids: readonly string[]; readonly quarantined_ticket_ids: readonly string[]; readonly stalled_session_ids: readonly string[]; readonly stalled_outbox_event_ids: readonly string[]; readonly superseded_event_ids: readonly string[]; readonly failed_event_ids: readonly string[]; readonly failed_subject_ids: readonly string[]; readonly recovered_structured_request_ids: readonly string[]; readonly conductor_recovery: ConductorRecoveryResult | null; } export declare function reconcileWatchdog(options: { at: string; bus: RuntimeEventBus; processor: OutboxProcessor; outbox: OutboxStore; queue: TicketQueueStore; sessions: SessionRegistry; workers: WorkerRegistry; workerPanes?: Pick; packageRoot: string; configRoot: string; stateRoot: string; auditLedger: RunLedgerStore; stallMs?: number; recoverStructuredRoleCompletions?: () => Readonly<{ recoveredRequestIds: readonly string[]; failedRequestIds: readonly string[]; }>; recoverConductor?: () => ConductorRecoveryResult; }): Promise;