UNPKG

@azure/communication-react

Version:

React library for building modern communication user experiences utilizing Azure Communication Services

73 lines 2.62 kB
/// <reference types="react" /> import { MessageThreadStrings, UpdateMessageCallback } from '../../MessageThread'; import { ChatMessage, ComponentSlotStyle, OnRenderAvatarCallback } from '../../../types'; import { AttachmentMenuAction } from '../../../types/Attachment'; import { AttachmentMetadata } from "../../../../../acs-ui-common/src"; import { InlineImageOptions } from '../ChatMessageContent'; /** * Props for the ChatMyMessageComponent component. */ export type ChatMyMessageComponentProps = { message: ChatMessage; userId: string; messageContainerStyle?: ComponentSlotStyle; showDate?: boolean; disableEditing?: boolean; onUpdateMessage?: UpdateMessageCallback; onCancelEditMessage?: (messageId: string) => void; /** * Callback to delete a message. Also called before resending a message that failed to send. * @param messageId ID of the message to delete */ onDeleteMessage?: (messageId: string) => Promise<void>; /** * Callback to send a message * @param content The message content to send */ onSendMessage?: (content: string) => Promise<void>; strings: MessageThreadStrings; messageStatus?: string; /** * Optional text to display when the message status is 'failed'. */ failureReason?: string; /** * Whether the status indicator for each message is displayed or not. */ showMessageStatus?: boolean; /** * Whether to overlap avatar and message when the view is width constrained. */ shouldOverlapAvatarAndMessage: boolean; remoteParticipantsCount?: number; onActionButtonClick: (message: ChatMessage, setMessageReadBy: (readBy: { id: string; displayName: string; }[]) => void) => void; /** * Optional callback to override render of the avatar. * * @param userId - user Id */ onRenderAvatar?: OnRenderAvatarCallback; /** * Optional callback called when an inline image is clicked. * @beta */ inlineImageOptions?: InlineImageOptions; /** * Optional callback to render message attachments in the message component. * @beta */ onRenderAttachmentDownloads?: (message: ChatMessage) => JSX.Element; /** * Optional callback to define custom actions for attachments. * @beta */ actionsForAttachment?: (attachment: AttachmentMetadata, message?: ChatMessage) => AttachmentMenuAction[]; }; /** * @private */ export declare const ChatMyMessageComponent: (props: ChatMyMessageComponentProps) => JSX.Element; //# sourceMappingURL=ChatMyMessageComponent.d.ts.map