UNPKG

stream-chat-react

Version:

React components to create chat conversations or livestream style chat

36 lines (35 loc) 2.14 kB
import React from 'react'; import type { ReactionGroupResponse, ReactionResponse } from 'stream-chat'; import type { AvatarProps } from '../Avatar'; import type { DefaultStreamChatGenerics } from '../../types/types'; import type { ReactionOptions } from './reactionOptions'; export type ReactionSelectorProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = { /** Custom UI component to display user avatar, defaults to and accepts same props as: [Avatar](https://github.com/GetStream/stream-chat-react/blob/master/src/components/Avatar/Avatar.tsx) */ Avatar?: React.ElementType<AvatarProps>; /** If true, shows the user's avatar with the reaction */ detailedView?: boolean; /** Function that adds/removes a reaction on a message (overrides the function stored in `MessageContext`) */ handleReaction?: (reactionType: string, event: React.BaseSyntheticEvent) => Promise<void>; /** An array of the reaction objects to display in the list */ latest_reactions?: ReactionResponse<StreamChatGenerics>[]; /** An array of the own reaction objects to distinguish own reactions visually */ own_reactions?: ReactionResponse<StreamChatGenerics>[]; /** * An object that keeps track of the count of each type of reaction on a message * @deprecated This override value is no longer taken into account. Use `reaction_groups` to override reaction counts instead. * */ reaction_counts?: Record<string, number>; /** An object containing summary for each reaction type on a message */ reaction_groups?: Record<string, ReactionGroupResponse>; /** * @deprecated * A list of the currently supported reactions on a message * */ reactionOptions?: ReactionOptions; /** If true, adds a CSS class that reverses the horizontal positioning of the selector */ reverse?: boolean; }; /** * Component that allows a user to select a reaction. */ export declare const ReactionSelector: <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(props: ReactionSelectorProps<StreamChatGenerics>) => React.JSX.Element;