@azure/communication-react
Version:
React library for building modern communication user experiences utilizing Azure Communication Services
57 lines • 2.19 kB
TypeScript
import React from 'react';
import { InlineImageOptions } from '../ChatMessageContent';
import { ChatMessage } from '../../../types/ChatMessage';
import { MessageThreadStrings } from '../../MessageThread';
import { ComponentSlotStyle, OnRenderAvatarCallback } from '../../../types';
import { AttachmentMenuAction } from '../../../types/Attachment';
import { AttachmentMetadata } from "../../../../../acs-ui-common/src";
type ChatMyMessageComponentAsMessageBubbleProps = {
message: ChatMessage;
messageContainerStyle?: ComponentSlotStyle;
showDate?: boolean;
disableEditing?: boolean;
onEditClick: () => void;
onRemoveClick?: () => void;
onResendClick?: () => void;
strings: MessageThreadStrings;
userId: string;
messageStatus?: string;
/**
* Whether the status indicator for each message is displayed or not.
*/
showMessageStatus?: boolean;
shouldFocusFluentMessageBody: 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 function to provide customized date format.
* @beta
*/
onDisplayDateTimeString?: (messageDate: Date) => string;
/**
* Optional callback called when an inline image is clicked.
* @beta
*/
inlineImageOptions?: InlineImageOptions;
/**
* Optional callback to render message attachments in the message component.
*/
onRenderAttachmentDownloads?: (message: ChatMessage) => JSX.Element;
/**
* Optional callback to define custom actions for attachments.
*/
actionsForAttachment?: (attachment: AttachmentMetadata, message?: ChatMessage) => AttachmentMenuAction[];
};
/** @private */
export declare const ChatMyMessageComponentAsMessageBubble: React.MemoExoticComponent<(props: ChatMyMessageComponentAsMessageBubbleProps) => JSX.Element>;
export {};
//# sourceMappingURL=ChatMyMessageComponentAsMessageBubble.d.ts.map