import type { ChatMessage } from '../types/ChatMessage'; import type { MarkdownInlineReference } from '../utils/renderMarkdown'; import type { ChatMessageContentSegment } from '../utils/splitMessageContentIntoSegments'; import type { StreamingFeaturePlaceholderKind } from './StreamingFeaturePlaceholder'; /** * Props for rendering the rich message-body content area. * * @private internal component of `` */ export type ChatMessageRichContentProps = { /** * Raw message content used for loading-state detection. */ readonly content: ChatMessage['content']; /** * Pre-split message content segments in their render order. */ readonly contentSegments: ReadonlyArray; /** * Optional placeholder shown while a rich feature is still streaming. */ readonly streamingFeaturePlaceholderKind: StreamingFeaturePlaceholderKind | null; /** * Optional callback for creating a new agent from a book code block. */ readonly onCreateAgent?: (bookContent: string) => void; /** * Optional inline references rendered from `[[reference]]` tokens in message markdown. */ readonly markdownInlineReferences?: ReadonlyArray; /** * Resolved theme used by nested code blocks and editors. */ readonly mode: 'LIGHT' | 'DARK'; }; /** * Renders markdown, code blocks, maps, and generated-image placeholders for one message. * * @private internal component of `` */ export declare function ChatMessageRichContent(props: ChatMessageRichContentProps): import("react/jsx-runtime").JSX.Element | null;