import type { LanguageModelV4Prompt } from "@ai-sdk/provider"; import { type CallJsonBudget } from "./call-options-primitives.js"; export type PromptRole = "assistant" | "tool" | "user"; export declare function cloneTextOrReasoningPart(record: Record, role: PromptRole, type: "reasoning" | "text", providerOptions: unknown): T; export declare function cloneFilePart(record: Record, role: PromptRole, type: "file" | "reasoning-file", providerOptions: unknown): T; export declare function cloneCustomPart(record: Record, role: PromptRole, providerOptions: unknown): T; export declare function cloneToolCallPart(record: Record, role: PromptRole, providerOptions: unknown, budget: CallJsonBudget): T; export declare function cloneToolResultPart(record: Record, role: PromptRole, providerOptions: unknown, budget: CallJsonBudget): T; export declare function cloneToolApprovalPart(record: Record, role: PromptRole, providerOptions: unknown): T; export declare function clonePromptPart(part: T, role: PromptRole, budget: CallJsonBudget): T; export declare function clonePromptMessage(message: LanguageModelV4Prompt[number], budget: CallJsonBudget): LanguageModelV4Prompt[number]; export declare function clonePrompt(prompt: LanguageModelV4Prompt, budget: CallJsonBudget): LanguageModelV4Prompt;