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;