import { AISDKError } from '@ai-sdk/provider'; import { UIMessage } from '../ui/ui-messages'; const name = 'AI_MessageConversionError'; const marker = `vercel.ai.error.${name}`; const symbol = Symbol.for(marker); export class MessageConversionError extends AISDKError { private readonly [symbol] = true; // used in isInstance readonly originalMessage: Omit; constructor({ originalMessage, message, }: { originalMessage: Omit; message: string; }) { super({ name, message }); this.originalMessage = originalMessage; } static isInstance(error: unknown): error is MessageConversionError { return AISDKError.hasMarker(error, marker); } }