import type { AgentBusEvent, CircuitBreakerSnapshot } from '../types/bus/index.js'; import type { SessionId } from '../types/ids/index.js'; import type { Logger } from '../utils/logger.js'; export declare class CircuitBreaker { private readonly breakers; private readonly failureThreshold; private readonly resetTimeoutMs; private readonly log; private readonly emit; constructor(log: Logger, emit: (event: AgentBusEvent) => void, failureThreshold?: number, resetTimeoutMs?: number); canExecute(agentSessionId: SessionId): boolean; recordSuccess(agentSessionId: SessionId): void; recordFailure(agentSessionId: SessionId): void; getSnapshot(agentSessionId: SessionId): CircuitBreakerSnapshot | undefined; reset(agentSessionId: SessionId): void; listTripped(): CircuitBreakerSnapshot[]; } //# sourceMappingURL=breaker.d.ts.map