import * as React from 'react'; import { SxProps, Theme } from '@mui/system'; import { type MessageListRootProps, type MessageListRootSlots, type MessageListRootSlotProps, type MessageListRootHandle } from '@mui/x-chat-headless'; import { type ChatMessageListClasses } from "./chatMessageListClasses.mjs"; import { type ChatMessageRowSlots, type ChatMessageRowSlotProps, type ChatMessageListFeatures } from "./DefaultMessageItem.mjs"; export interface ChatMessageListSlots extends MessageListRootSlots, Partial {} export interface ChatMessageListSlotProps extends MessageListRootSlotProps, ChatMessageRowSlotProps {} export interface ChatMessageListProps extends Omit { /** * Render a custom row for each message. When omitted, the default row used by * `ChatBox` is rendered (group → message → avatar → content, with conditional * inline meta, external meta in compact variant, and message actions slot). * Provide a function to fully replace the row; use slot overrides to tweak * individual sub-components without losing the default chrome. */ renderItem?: MessageListRootProps['renderItem']; slots?: Partial; slotProps?: ChatMessageListSlotProps; /** * Feature flags for the row extras rendered by the default row: the opt-in * dividers (`dateDivider` / `unreadMarker`, disabled by default) and the * streaming indicator (`streamingIndicator`, `'auto'` by default). Ignored * when a custom `renderItem` replaces the default row. */ features?: ChatMessageListFeatures; className?: string; sx?: SxProps; classes?: Partial; } declare const ChatMessageList: React.ForwardRefExoticComponent>; export { ChatMessageList };