import { type ConversationProtocolVersion } from './version.js'; export type ConversationMessageRole = 'assistant' | 'developer' | 'system' | 'tool' | 'user'; export type ConversationJsonValue = string | number | boolean | null | ConversationJsonValue[] | { [key: string]: ConversationJsonValue; }; export type ConversationA2UIEventSource = { itemId: string; surfaceId: string; catalogId?: string; componentId: string; componentName: string; instanceIndex?: number; cardRef?: string; cardRevision?: string; cardInstanceId?: string; }; export type ConversationA2UIEventContent = { type: 'a2ui.event'; invocationId: string; displayText?: string; event: { name: string; payload: Record; }; source: ConversationA2UIEventSource; }; export type ConversationMessageContent = string | ConversationA2UIEventContent; export type ConversationMessage = { id: string; role: ConversationMessageRole; content?: ConversationMessageContent; name?: string; }; export type ConversationAttachment = { id: string; resourceId?: string; name: string; mimeType: string; size?: number; url?: string; metadata?: Record; }; export type ConversationRunRequest = { protocolVersion: ConversationProtocolVersion; agentId?: string; threadId: string; runId: string; messages: ConversationMessage[]; attachments: ConversationAttachment[]; metadata: Record; resumeFrom?: string; }; export type CreateConversationRunRequestInput = Omit & { attachments?: ConversationAttachment[]; metadata?: Record; }; export declare class ConversationProtocolValidationError extends Error { readonly issues: string[]; readonly code = "CONVERSATION_PROTOCOL_INVALID"; constructor(issues: string[]); } export declare function createConversationRunRequest(input: CreateConversationRunRequestInput): ConversationRunRequest; export declare function parseConversationRunRequest(value: unknown): ConversationRunRequest; export declare function isConversationRunRequest(value: unknown): value is ConversationRunRequest; export declare function getConversationRunRequestIssues(value: unknown): string[];