import { CardBodyProps, CardProps, CardTitleProps, DividerProps, ExpandableSectionProps } from '@patternfly/react-core'; import { type FunctionComponent } from 'react'; import type { MarkdownContentProps } from '../MarkdownContent'; export interface ToolResponseProps { /** Toggle content shown for expandable section */ toggleContent: React.ReactNode; /** Flag indicating whether the expandable content is expanded by default. */ isDefaultExpanded?: boolean; /** Additional props passed to expandable section */ expandableSectionProps?: Omit; /** Subheading rendered inside expandable section */ subheading?: string; /** Body text rendered inside expandable section */ body?: React.ReactNode | string; /** Content passed into tool response card body */ cardBody?: React.ReactNode; /** Content passed into tool response card title */ cardTitle?: React.ReactNode; /** Additional props passed to main card */ cardProps?: CardProps; /** Additional props passed to main card body */ cardBodyProps?: CardBodyProps; /** Additional props passed to tool response card */ toolResponseCardProps?: CardProps; /** Additional props passed to tool response card body */ toolResponseCardBodyProps?: CardBodyProps; /** Additional props passed to tool response card divider */ toolResponseCardDividerProps?: DividerProps; /** Additional props passed to tool response card title */ toolResponseCardTitleProps?: CardTitleProps; /** Whether to enable markdown rendering for toggleContent. When true and toggleContent is a string, it will be parsed as markdown. */ isToggleContentMarkdown?: boolean; /** Whether to enable markdown rendering for subheading. When true, subheading will be parsed as markdown. */ isSubheadingMarkdown?: boolean; /** Whether to enable markdown rendering for body. When true and body is a string, it will be parsed as markdown. */ isBodyMarkdown?: boolean; /** Whether to enable markdown rendering for cardBody. When true and cardBody is a string, it will be parsed as markdown. */ isCardBodyMarkdown?: boolean; /** Whether to enable markdown rendering for cardTitle. When true and cardTitle is a string, it will be parsed as markdown. */ isCardTitleMarkdown?: boolean; /** Props passed to MarkdownContent component when markdown is enabled */ markdownContentProps?: Omit; /** Whether to retain styles in the MarkdownContent component. Defaults to false. */ shouldRetainStyles?: boolean; } export declare const ToolResponse: FunctionComponent; export default ToolResponse;