import type { ErrorRecoveryConfig, VidstreamError, VidstreamErrorCode } from '../types'; export declare class ErrorRecoveryManager { private config; private retryCount; private retryTimer; private liveReconnectTimer; constructor(config?: ErrorRecoveryConfig); canRetry(): boolean; /** Call on a non-fatal network/segment error. Returns delay in ms before caller should retry. */ scheduleRetry(retryFn: () => void): void; resetRetries(): void; reportError(code: VidstreamErrorCode, message: string, fatal: boolean): VidstreamError; /** Poll for live stream recovery. Calls checkFn; if it returns true, calls onRecovered. */ startLiveReconnect(checkFn: () => boolean, onRecovered: () => void): void; stopLiveReconnect(): void; destroy(): void; }