import { ReactNode } from 'react'; import { MessageModel, UseAssistantProps } from '@openassistant/core'; /** * Type of AiAssistantProps. */ export type AiAssistantProps = UseAssistantProps & { theme?: 'dark' | 'light'; /** The welcome message of the assistant. */ welcomeMessage: string | ReactNode; /** The ideas of the assistant, which will be shown above the prompt input box. */ ideas?: { title: string; description: string; }[]; /** The callback function to handle the refresh ideas. */ onRefreshIdeas?: () => void; /** Set the avatar of the user. */ userAvatar?: ReactNode | string; /** Set the avatar of the assistant. */ assistantAvatar?: ReactNode | string; /** Set the flag to indicate if the message is draggable. */ isMessageDraggable?: boolean; /** Set the flag to indicate if the voice is enabled. */ enableVoice?: boolean; /** Set the flag to indicate if the screen capture is enabled. */ enableScreenCapture?: boolean; /** The screen captured base64. */ screenCapturedBase64?: string; /** The screen captured prompt. */ screenCapturedPrompt?: string; /** The callback function to handle the screenshot click. */ onScreenshotClick?: () => void; /** The callback function to handle the screenshot remove. */ onRemoveScreenshot?: () => void; /** The callback function to handle the feedback. */ onFeedback?: (question: string) => void; /** The callback function to handle the messages updated. */ onMessagesUpdated?: (messages: MessageModel[]) => void; /** The callback function to handle the tool finished. */ onToolFinished?: (toolCallId: string, additionalData: unknown) => void; /** The callback function to handle the restart chat. */ onRestartChat?: () => void; /** The font size of the assistant. */ fontSize?: string; /** The class name of the bot message. */ botMessageClassName?: string; /** The class name of the user message. */ userMessageClassName?: string; /** The link to the github issue. */ githubIssueLink?: string; /** The flag to indicate if the markdown is enabled. */ useMarkdown?: boolean; /** The flag to indicate if the tools are shown. */ showTools?: boolean; /** The initial messages of the assistant. */ initialMessages?: MessageModel[]; }; /** * Main AI Assistant component for React applications * * @param {AiAssistantProps} props - The props of the Assistant component. See {@link AiAssistantProps} for more details. * @returns {JSX.Element} The rendered AI Assistant component * @example * ```tsx * * ``` */ export declare function AiAssistant(props: AiAssistantProps): import("react/jsx-runtime").JSX.Element; type AvatarIconProps = { width?: number; height?: number; className?: string; }; export declare function AvatarIcon({ width, height, className, }: AvatarIconProps): import("react/jsx-runtime").JSX.Element; export {};