import type { PluginHookContributions } from "../../types/hook"; type EventHook = NonNullable; type ForegroundFallbackReason = "rate-limit"; type ForegroundFallbackDependencies = { defaultFallbackChain?: string[]; getCurrentModel?: (sessionID: string) => string | undefined; getAvailableModels?: (sessionID: string) => Set; setCurrentModel?: (sessionID: string, model: string) => void | Promise; onFallbackApplied?: (input: { sessionID: string; previousModel: string; nextModel: string; reason: ForegroundFallbackReason; }) => void | Promise; onRetryRequested?: (input: { sessionID: string; model: string; }) => void | Promise; now?: () => number; }; export declare function createForegroundFallbackHandler(deps?: ForegroundFallbackDependencies): EventHook; export {};