import type { ChatMessage } from '../types/ChatMessage';
import type { ChatMessageContentSegment } from '../utils/splitMessageContentIntoSegments';
import type { StreamingFeaturePlaceholderKind } from './StreamingFeaturePlaceholder';
/**
 * Props for rendering the rich message-body content area.
 *
 * @private internal component of `<ChatMessageItem/>`
 */
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<ChatMessageContentSegment>;
    /**
     * 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;
    /**
     * 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 `<ChatMessageItem/>`
 */
export declare function ChatMessageRichContent(props: ChatMessageRichContentProps): import("react/jsx-runtime").JSX.Element | null;
