import type { AgentRuntimeExecutionContext, AgentRuntimeExecutionResult, ServerAgentRuntimeModule } from "@rudderhq/agent-runtime-utils";
import { type ModelAttemptSpec } from "@rudderhq/agent-runtime-utils";
interface ModelFallbackExecutionOptions {
    resolveAdapter?: (agentRuntimeType: string) => ServerAgentRuntimeModule | null;
    createAuthToken?: (agentRuntimeType: string) => string | undefined;
    onAttemptStart?: (attempt: ModelAttemptSpec, adapter: ServerAgentRuntimeModule) => Promise<void> | void;
}
export declare function executeAdapterWithModelFallbacks(adapter: ServerAgentRuntimeModule, ctx: AgentRuntimeExecutionContext, options?: ModelFallbackExecutionOptions): Promise<AgentRuntimeExecutionResult>;
export {};
//# sourceMappingURL=model-fallback.d.ts.map