import { type PipelineBus } from "./pipeline-bus.js"; import { type Scheduler } from "./scheduler.js"; export interface FallbackProvider { readonly id: string; send(req: TReq, signal: AbortSignal): Promise; healthProbe(signal: AbortSignal): Promise; } export interface ProviderFallbackOptions { readonly bus: PipelineBus; readonly contextId: string; readonly attemptTimeoutMs: number; readonly recoveryProbeIntervalMs: number; readonly scheduler?: Scheduler; } export declare class ProviderFallback { private readonly providers; private readonly opts; private readonly unavailable; private readonly recoveryTimers; private readonly scheduler; constructor(providers: readonly FallbackProvider[], opts: ProviderFallbackOptions); send(req: TReq): Promise; close(): void; private markUnavailable; private scheduleRecoveryProbe; private metric; } //# sourceMappingURL=provider-fallback.d.ts.map