/** * Provider input types. * * The message-part shapes that provider conversion accepts as input, shared by * tool replay reconciliation and provider conversion. Kept out of both so * neither has to import the other's leaf types. */ import type { ChatUiMessagePart, ChatUiMessageRole } from "./types.js"; import type { MessagePart } from "./conversation.js"; type RawToolCallMessagePart = Extract; type RawToolResultMessagePart = Extract; /** Stored tool-call replay part accepted by provider conversion. */ export type ChatProviderModelInputToolCallPart = RawToolCallMessagePart; /** Stored tool-result replay part accepted by provider conversion. */ export type ChatProviderModelInputToolResultPart = RawToolResultMessagePart & { tool_name?: string; }; /** Message part accepted by provider conversion. */ export type ChatProviderModelInputPart = ChatUiMessagePart | ChatProviderModelInputToolCallPart | ChatProviderModelInputToolResultPart; /** Message accepted by provider conversion. */ export interface ChatProviderModelInputMessage { id: string; role: ChatUiMessageRole; parts: ChatProviderModelInputPart[]; metadata?: TMessageMetadata; } export {}; //# sourceMappingURL=provider-input-types.d.ts.map