/** * Chat Component Exports * * Exotel Design System building blocks for MUI X Chat (`@mui/x-chat`). * Re-exports the four basics — Messages, Composer, Conversation, Layout — * plus the message-part display primitives (code blocks, sources, unread * marker), themed entirely through `src/theme/theme.ts` (see the * `MuiChat*` entries in its `components` map). Ships one opinionated Signal * wrapper today (the avatar adapters in `ChatAvatars.tsx`); everything else * is a straight re-export. * * Runtime primitives (`ChatProvider`, the adapters, and the headless types) * are re-exported here too so consumers never need to add `@mui/x-chat` (or * `@mui/x-chat-headless`) as a direct dependency for ordinary usage — the * same reasoning `/flow-builder` applies to `@xyflow/react`. */ export { ChatMessage, ChatMessageList, ChatMessageGroup, ChatMessageAvatar, ChatMessageAuthorLabel, ChatMessageContent, ChatMessageMeta, ChatMessageInlineMeta, ChatMessageActions, ChatDateDivider, ChatMessageError, ChatMessageSkeleton, chatMessageClasses, chatMessageListClasses, chatMessageErrorClasses, chatMessageSkeletonClasses, } from '@mui/x-chat'; export type { ChatMessageProps, ChatMessageActionsResolveContext, ChatMessageListProps, ChatMessageListFeatures, ChatMessageGroupProps, ChatMessageAvatarProps, ChatMessageAuthorLabelProps, ChatMessageContentProps, ChatMessageMetaProps, ChatMessageInlineMetaProps, ChatMessageActionsProps, ChatMessageExtraAction, ChatMessageExtraActionContext, ChatDateDividerProps, ChatMessageErrorProps, ChatMessageSkeletonProps, ChatMessageClasses, ChatMessageListClasses, ChatMessageErrorClasses, ChatMessageSkeletonClasses, } from '@mui/x-chat'; export { ChatComposer, ChatComposerTextArea, ChatComposerSendButton, ChatComposerAttachButton, ChatComposerAttachmentList, ChatComposerToolbar, ChatComposerHelperText, ChatComposerLabel, chatComposerClasses, } from '@mui/x-chat'; export type { ChatComposerProps, ChatComposerFeatures, ChatComposerTextAreaProps, ChatComposerSendButtonProps, ChatComposerAttachButtonProps, ChatComposerAttachmentListProps, ChatComposerToolbarProps, ChatComposerHelperTextProps, ChatComposerClasses, } from '@mui/x-chat'; export { ChatComposerActionSlot, DEFAULT_CHAT_COMPOSER_ACTIONS } from './ChatComposerActions'; export type { ChatComposerAction, ChatComposerActionSlotProps } from './ChatComposerActions'; export { OutlinedActionIconButton, ContainedSendIconButton } from './ChatComposerIconButtons'; export { ChatComposerVoiceRecorder } from './ChatComposerVoiceRecorder'; export type { ChatComposerVoiceRecorderProps } from './ChatComposerVoiceRecorder'; export { SignalChatComposer } from './SignalChatComposer'; export type { SignalChatComposerProps } from './SignalChatComposer'; export { ChatConversation, ChatConversationHeader, ChatConversationTitle, ChatConversationSubtitle, ChatConversationHeaderInfo, ChatConversationHeaderActions, chatConversationClasses, } from '@mui/x-chat'; export type { ChatConversationProps, ChatConversationHeaderProps, ChatConversationTitleProps, ChatConversationSubtitleProps, ChatConversationHeaderInfoProps, ChatConversationHeaderActionsProps, ChatConversationClasses, } from '@mui/x-chat'; export { ChatBox, ChatConversationList, chatBoxClasses, chatConversationListClasses } from '@mui/x-chat'; export type { ChatBoxProps, ChatBoxSlots, ChatBoxSlotProps, ChatBoxFeatures, ChatBoxLayoutMode, ChatBoxLayoutModeBreakpoints, ChatBoxClasses, ChatConversationListProps, ChatConversationListClasses, } from '@mui/x-chat'; export { ChatCodeBlock, chatCodeBlockClasses } from '@mui/x-chat'; export type { ChatCodeBlockProps, ChatCodeBlockClasses } from '@mui/x-chat'; export { ChatMessageSources, ChatMessageSource, chatMessageSourcesClasses, chatMessageSourceClasses } from '@mui/x-chat'; export type { ChatMessageSourcesProps, ChatMessageSourceProps, ChatMessageSourcesClasses, ChatMessageSourceClasses, } from '@mui/x-chat'; export { ChatUnreadMarker, chatUnreadMarkerClasses } from '@mui/x-chat'; export type { ChatUnreadMarkerProps, ChatUnreadMarkerClasses } from '@mui/x-chat'; export { ChatSuggestions, chatSuggestionsClasses } from '@mui/x-chat'; export type { ChatSuggestionsProps, ChatSuggestionsClasses } from '@mui/x-chat'; export { ChatScrollToBottomAffordance, chatScrollToBottomAffordanceClasses } from '@mui/x-chat'; export type { ChatScrollToBottomAffordanceProps, ChatScrollToBottomAffordanceClasses } from '@mui/x-chat'; export { ChatTypingIndicator, chatTypingIndicatorClasses } from '@mui/x-chat'; export type { ChatTypingIndicatorProps, ChatTypingIndicatorClasses } from '@mui/x-chat'; export { SignalSuggestionChip, SignalScrollToBottomButton } from './ChatSlotButtons'; export { ChatConfirmation, chatConfirmationClasses } from '@mui/x-chat'; export type { ChatConfirmationProps, ChatConfirmationClasses } from '@mui/x-chat'; export { SignalToolApproveButton, SignalToolDenyButton } from './ChatSlotButtons'; export { ChatMessageSignalAvatar, ChatConversationListItemSignalAvatar } from './ChatAvatars'; export { ChatProvider, createEchoAdapter, createAiSdkAdapter, ChatVariantProvider, useChatVariant, ChatDensityProvider, useChatDensity, useMessageContentTabIndex, useMessageActionable, useMessageListContext, useMessageRovingItem, createTimeWindowGroupKey, useChatActions, useChatStatus, } from '@mui/x-chat/headless'; export type { ChatProviderProps, ChatFeatures, ChatAdapter, ChatMessage as ChatMessageEntity, ChatConversation as ChatConversationEntity, ChatUser, ChatRole, ChatMessageStatus, ChatMessagePart, ChatTextMessagePart, ChatVariant, ChatDensity, ChatAttachmentRejection, ChatAttachmentRejectionReason, ChatAttachmentsConfig, CreateEchoAdapterOptions, GroupKeyFn, ChatPartRenderer, ChatPartRendererMap, ChatPartRendererProps, ChatRuntimeActions, UseChatStatusValue, ChatSuggestion, ConversationReadState, PaginationDirection, ChatListMessagesInput, ChatListMessagesResult, ChatMarkReadInput, ChatSetTypingInput, ChatSubscribeInput, ChatSubscriptionCleanup, ChatRealtimeEvent, ChatToolInvocation, ChatDynamicToolInvocation, ChatToolInvocationState, ChatToolApproval, ChatToolMessagePart, ChatDynamicToolMessagePart, ChatReasoningMessagePart, ChatStepStartMessagePart, ChatAddToolApproveResponseInput, } from '@mui/x-chat/headless';