import { type BaseEvent, type CustomEvent } from '../ag-ui-core/index.js'; export declare const CONVERSATION_CUSTOM_EVENT_NAMES: Readonly<{ a2uiCard: "runtime.a2ui.card"; followUpQuestions: "runtime.follow-up-questions"; image: "runtime.image"; pageState: "runtime.page.state"; }>; export type ConversationPageState = 'empty' | 'network-error' | 'ready' | 'service-offline' | 'service-paused' | 'system-error'; export type ConversationA2UICardEventValue = { itemId?: string; metadata?: Record; payload: unknown; }; export type ConversationImageEventValue = { itemId?: string; src: string; alt?: string; mimeType?: string; metadata?: Record; }; export type ConversationPageStateEventValue = { state: ConversationPageState; }; export type ConversationFollowUpQuestion = { id?: string; label: string; prompt: string; }; export type ConversationFollowUpQuestionsEventValue = { questions: ConversationFollowUpQuestion[]; }; export type ConversationCustomEventValueMap = { [CONVERSATION_CUSTOM_EVENT_NAMES.a2uiCard]: ConversationA2UICardEventValue; [CONVERSATION_CUSTOM_EVENT_NAMES.followUpQuestions]: ConversationFollowUpQuestionsEventValue; [CONVERSATION_CUSTOM_EVENT_NAMES.image]: ConversationImageEventValue; [CONVERSATION_CUSTOM_EVENT_NAMES.pageState]: ConversationPageStateEventValue; }; export type ConversationCustomEventName = keyof ConversationCustomEventValueMap; export type ConversationCustomEvent = CustomEvent & { name: TName; value: ConversationCustomEventValueMap[TName]; }; export declare function createConversationCustomEvent(name: TName, value: ConversationCustomEventValueMap[TName], fields?: Pick): ConversationCustomEvent; export declare function isConversationCustomEvent(event: BaseEvent): event is ConversationCustomEvent;