import type { UIMessage } from "ai"; import type { MessageFormatAdapter, MessageFormatItem, MessageStorageEntry, } from "@assistant-ui/core"; // Storage format for AI SDK messages - just the UIMessage export type AISDKStorageFormat = Omit; export const aiSDKV6FormatAdapter: MessageFormatAdapter< UIMessage, AISDKStorageFormat > = { format: "ai-sdk/v6", encode({ message: { id, parts, ...message }, }: MessageFormatItem): AISDKStorageFormat { return { ...message, parts, }; }, decode( stored: MessageStorageEntry, ): MessageFormatItem { return { parentId: stored.parent_id, message: { id: stored.id, ...stored.content, }, }; }, getId(message: UIMessage): string { return message.id; }, };