/** * Copyright 2025 Chris Bunting * * Circuit Breaker Pattern - Prevents cascading failures */ declare enum CircuitState { CLOSED = "CLOSED",// Normal operation OPEN = "OPEN",// Failing, reject requests HALF_OPEN = "HALF_OPEN" } interface CircuitBreakerOptions { failureThreshold?: number; timeout?: number; resetTimeout?: number; } declare class CircuitBreaker { private state; private failureCount; private successCount; private lastFailureTime; private readonly failureThreshold; private readonly resetTimeout; private readonly timeout; constructor(options?: CircuitBreakerOptions); /** * Execute a function with circuit breaker protection */ execute(fn: () => Promise): Promise; private onSuccess; private onFailure; /** * Get current state */ getState(): CircuitState; /** * Reset circuit breaker */ reset(): void; } export declare const circuitBreaker: CircuitBreaker; export {}; //# sourceMappingURL=circuitBreaker.d.ts.map