import type { RecoveryConfig, RecoveryChainConfig, RecoveryAttempt, RecoveryError } from "./types.ts"; import type { StrategyRegistry } from "./strategies/registry.ts"; import type { ISessionClient } from "../platform/ports/session-client.ts"; export interface ChainResult { status: "recovered" | "exhausted" | "aborted"; finalError?: string; totalAttempts: number; } export declare class RecoveryChainExecutor { private registry; private config; constructor(registry: StrategyRegistry, config: RecoveryConfig); executeChain(sessionID: string, error: RecoveryError, chainConfig: RecoveryChainConfig, inject: (text: string) => void, client?: ISessionClient, onAttempt?: (attempt: RecoveryAttempt) => void): Promise; } //# sourceMappingURL=chain-executor.d.ts.map