import type { ItemId, RunPhaseName, Turn } from "@best-agent/protocol";
import type { AgentProfile } from "../../agent/profile-registry.js";
import type { PreparedToolInvocation } from "../../tool/registry.js";
import type { ExecuteToolInvocationOptions } from "../agent-runtime-tool-execution-types.js";
import type { ToolResumeContext } from "../checkpoint-codec.js";
import type { PersistTerminalToolFailure, ToolExecutionRuntime, ToolShellDebugBase } from "./tool-execution-types.js";
export declare function appendToolReasoningPrelude(input: {
    options: ExecuteToolInvocationOptions;
    profile: AgentProfile;
    reasoning?: string;
    runtime: ToolExecutionRuntime;
    toolName: string;
    turn: Turn;
}): Promise<void>;
export declare function prepareToolInvocationForExecution(input: {
    activeSkillIds: string[];
    approvalTurn?: Turn;
    currentPhaseName?: RunPhaseName;
    options: ExecuteToolInvocationOptions;
    persistTerminalToolFailure: PersistTerminalToolFailure;
    previewCallId?: ItemId;
    profile: AgentProfile;
    reasoning?: string;
    runtime: ToolExecutionRuntime;
    shellDebugBase?: ToolShellDebugBase;
    toolInput: ToolResumeContext["toolInput"];
    toolName: string;
    turn: Turn;
}): Promise<{
    kind: "prepared";
    prepared: PreparedToolInvocation;
    preparedToolResumeContext: ToolResumeContext;
    toolResumeContext: ToolResumeContext;
} | {
    kind: "replayed";
    output: string;
} | {
    kind: "terminal-failure";
    output: string;
}>;
//# sourceMappingURL=tool-preparation-runner.d.ts.map