import * as react_jsx_runtime from 'react/jsx-runtime'; import React__default from 'react'; /** * Icons for AiChat component. */ interface AiChatIcons { /** * The icon to use for the open chat button. * @default */ openIcon?: React__default.ReactNode; /** * The icon to use for the close chat button. * @default */ closeIcon?: React__default.ReactNode; /** * The icon to use for the close chat button in the header. * @default */ headerCloseIcon?: React__default.ReactNode; /** * The icon to use for the send button. * @default */ sendIcon?: React__default.ReactNode; /** * The icon to use for the activity indicator. * @default */ activityIcon?: React__default.ReactNode; /** * The icon to use for the spinner. * @default */ spinnerIcon?: React__default.ReactNode; /** * The icon to use for the stop button. * @default */ stopIcon?: React__default.ReactNode; /** * The icon to use for the regenerate button. * @default */ regenerateIcon?: React__default.ReactNode; /** * The icons to use for push to talk. * @default */ pushToTalkIcon?: React__default.ReactNode; /** * The icons to use for copy assistant response * @default */ copyIcon?: React__default.ReactNode; /** * The icon to use for thumbs up/response approval. * @default */ thumbsUpIcon?: React__default.ReactNode; /** * The icon to use for thumbs down/response rejection. * @default */ thumbsDownIcon?: React__default.ReactNode; /** * The icon to use for the upload button. * @default */ uploadIcon?: React__default.ReactNode; } /** * Labels for AiChat component. */ interface AiChatLabels { /** * The initial message(s) to display in the chat window. */ initial?: string | string[]; /** * The title to display in the header. * @default "VN SDK" */ title?: string; /** * The placeholder to display in the input. * @default "Type a message..." */ placeholder?: string; /** * The message to display when an error occurs. * @default "❌ An error occurred. Please try again." */ error?: string; /** * The label to display on the stop button. * @default "Stop generating" */ stopGenerating?: string; /** * The label to display on the regenerate button. * @default "Regenerate response" */ regenerateResponse?: string; /** * The label for the copy button. * @default "Copy to clipboard" */ copyToClipboard?: string; /** * The label for the thumbs up button. * @default "Thumbs up" */ thumbsUp?: string; /** * The label for the thumbs down button. * @default "Thumbs down" */ thumbsDown?: string; /** * The text to display when content is copied. * @default "Copied!" */ copied?: string; } interface ChatContext { labels: Required; icons: Required; open: boolean; setOpen: (open: boolean) => void; } declare const ChatContext: React__default.Context; declare function useChatContext(): ChatContext; interface ChatContextProps { labels?: AiChatLabels; icons?: AiChatIcons; children?: React__default.ReactNode; open: boolean; setOpen: (open: boolean) => void; } declare const ChatContextProvider: ({ labels, icons, children, open, setOpen, }: ChatContextProps) => react_jsx_runtime.JSX.Element; export { AiChatIcons, AiChatLabels, ChatContext, ChatContextProvider, useChatContext };