UNPKG

stream-chat-react

Version:

React components to create chat conversations or livestream style chat

32 lines (31 loc) 2.51 kB
import React from 'react'; import type { MessageInputProps } from '../MessageInput'; import type { MessageListProps, VirtualizedMessageListProps } from '../MessageList'; import type { MessageProps, MessageUIComponentProps } from '../Message/types'; import type { MessageActionsArray } from '../Message/utils'; export type ThreadProps = { /** Additional props for `MessageInput` component: [available props](https://getstream.io/chat/docs/sdk/react/message-input-components/message_input/#props) */ additionalMessageInputProps?: MessageInputProps; /** Additional props for `MessageList` component: [available props](https://getstream.io/chat/docs/sdk/react/core-components/message_list/#props) */ additionalMessageListProps?: MessageListProps; /** Additional props for `Message` component of the parent message: [available props](https://getstream.io/chat/docs/sdk/react/message-components/message/#props) */ additionalParentMessageProps?: Partial<MessageProps>; /** Additional props for `VirtualizedMessageList` component: [available props](https://getstream.io/chat/docs/sdk/react/core-components/virtualized_list/#props) */ additionalVirtualizedMessageListProps?: VirtualizedMessageListProps; /** If true, focuses the `MessageInput` component on opening a thread */ autoFocus?: boolean; /** Injects date separator components into `Thread`, defaults to `false`. To be passed to the underlying `MessageList` or `VirtualizedMessageList` components */ enableDateSeparator?: boolean; /** Custom thread input UI component used to override the default `Input` value stored in `ComponentContext` or the [MessageInputSmall](https://github.com/GetStream/stream-chat-react/blob/master/src/components/MessageInput/MessageInputSmall.tsx) default */ Input?: React.ComponentType; /** Custom thread message UI component used to override the default `Message` value stored in `ComponentContext` */ Message?: React.ComponentType<MessageUIComponentProps>; /** Array of allowed message actions (ex: ['edit', 'delete', 'flag', 'mute', 'pin', 'quote', 'react', 'reply']). To disable all actions, provide an empty array. */ messageActions?: MessageActionsArray; /** If true, render the `VirtualizedMessageList` instead of the standard `MessageList` component */ virtualized?: boolean; }; /** * The Thread component renders a parent Message with a list of replies */ export declare const Thread: (props: ThreadProps) => React.JSX.Element | null;