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;