/** * Enhanced Token Manager with Circuit Breaker Protection */ import { TokenManager, TokenManagerConfig } from './TokenManager'; import { CircuitState } from '../utils/CircuitBreaker'; export interface EnhancedTokenManagerConfig extends TokenManagerConfig { circuitBreaker?: { failureThreshold?: number; successThreshold?: number; timeout?: number; monitoringWindow?: number; }; } /** * Token Manager with built-in circuit breaker for resilient token operations */ export declare class TokenManagerWithCircuitBreaker extends TokenManager { private readonly circuitBreaker; constructor(config: EnhancedTokenManagerConfig); /** * Get token with circuit breaker protection */ getToken(): Promise; /** * Fetch token with circuit breaker protection */ fetchToken(): Promise; /** * Refresh token with circuit breaker protection */ refreshToken(): Promise; /** * Get circuit breaker state */ getCircuitBreakerState(): CircuitState; /** * Get circuit breaker metrics */ getCircuitBreakerMetrics(): any; /** * Check if token operations are available (not blocked by circuit breaker) */ isTokenOperationAvailable(): boolean; /** * Manually reset circuit breaker (for recovery scenarios) */ resetCircuitBreaker(): void; /** * Override destroy to cleanup circuit breaker */ destroy(): void; } //# sourceMappingURL=TokenManagerWithCircuitBreaker.d.ts.map