import type { HTMLAttributes } from 'react'; import { OptionsType } from '@diplodoc/transform/lib/typings'; import { DOMProps, QAProps } from '@gravity-ui/uikit'; import type { ThinkingMessageContentData } from "../../../types/messages.js"; import { type MarkdownRendererMdxOptions } from "../../atoms/MarkdownRenderer/index.js"; import "./ThinkingMessage.css"; /** * Props for the ThinkingMessage component. * Combines DOM props, QA props, and thinking message data. */ export type ThinkingMessageProps = DOMProps & QAProps & ThinkingMessageContentData & { /** * How thinking content strings are rendered. * @default 'plain' */ format?: 'plain' | 'markdown'; /** * Options for @diplodoc/transform when `format` is `'markdown'`. * Shallow-merged with the component defaults (`disableCommonAnchors: true`). */ transformOptions?: OptionsType; openMarkdownLinksInNewTab?: boolean; mdxOptions?: MarkdownRendererMdxOptions; mdxContext?: Record; /** Extra props forwarded to the root container `div` of each rendered markdown block. */ markdownExtraProps?: HTMLAttributes; }; /** * ThinkingMessage component displays AI model's internal reasoning process. * Shows a collapsible block with thinking content and a copy button. * Displays a loader when the thinking process is still in progress. * * @param props - Component props * @returns Rendered thinking message component */ export declare const ThinkingMessage: (props: ThinkingMessageProps) => import("react/jsx-runtime").JSX.Element;