import type { ProviderConfig, ProviderTurnActionPolicy } from "@best-agent/protocol";
import type { AgentProfile } from "../../agent/profile-registry.js";
import { type ConversationMessage, type ProviderToolOption } from "../../provider/model-provider.js";
import type { CompletedProviderToolCall, ProviderCorrectionTrace, ToolResumeContext } from "../checkpoint-codec.js";
import type { ProviderTurnBudget, ProviderTurnInvokeContext } from "./provider-turn-budget.js";
import { type RuntimeObservation } from "./runtime-observation.js";
import type { RequiredToolConstraint } from "./tool-constraint-types.js";
export declare function buildReplayToolOutputRepairContexts(input: {
    completedToolCalls: CompletedProviderToolCall[];
    fixedReplayRoute: boolean;
    payload: ToolResumeContext;
    repairRequiredToolConstraint?: RequiredToolConstraint;
    repairRouteConfig: ProviderConfig;
    replayProfile: AgentProfile;
    replayProviderTurnBudget: ProviderTurnBudget;
}): {
    providerContext: ProviderTurnInvokeContext;
    resolveContext: ProviderTurnInvokeContext;
    toolStepCount: number;
};
export declare function prepareReplayToolOutputRepair(input: {
    completedToolCalls: CompletedProviderToolCall[];
    payload: ToolResumeContext;
    repairActionPolicyOverride?: ProviderTurnActionPolicy;
    repairCode: ProviderCorrectionTrace["code"];
    repairMessages: ConversationMessage[];
    repairObservation: RuntimeObservation;
    requiresDeliverableAssertion?: boolean;
    suppressStructuredControls?: boolean;
    unresolvedRequiredToolConstraint?: RequiredToolConstraint;
}): {
    providerRepairMessages: ConversationMessage[];
    repairActionPolicy?: ProviderTurnActionPolicy;
    repairRequiredToolConstraint?: RequiredToolConstraint;
    repairSystemPrompt?: string;
    requiresDeliverableAssertion: boolean;
    visibleTools: ProviderToolOption[];
};
//# sourceMappingURL=provider-replay-tool-output-repair-context.d.ts.map