import React from 'react';
import { InlineImageOptions } from '../ChatMessageContent';
import { ChatMessage } from '../../../types/ChatMessage';
import { MessageThreadStrings } from '../../MessageThread';
import { AttachmentMenuAction, ComponentSlotStyle } from '../../../types';
import { AttachmentMetadata } from "../../../../../acs-ui-common/src";
type ChatMessageComponentAsMessageBubbleProps = {
    message: ChatMessage;
    messageContainerStyle?: ComponentSlotStyle;
    showDate?: boolean;
    strings: MessageThreadStrings;
    userId: string;
    /**
     * Whether to overlap avatar and message when the view is width constrained.
     */
    shouldOverlapAvatarAndMessage: boolean;
    /**
     * 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[];
    /**
     * Optional function to provide customized date format.
     * @beta
     */
    onDisplayDateTimeString?: (messageDate: Date) => string;
    /**
     * Optional callback called when an inline image is clicked.
     * @beta
     */
    inlineImageOptions?: InlineImageOptions;
};
/** @private */
export declare const ChatMessageComponentAsMessageBubble: React.MemoExoticComponent<(props: ChatMessageComponentAsMessageBubbleProps) => JSX.Element>;
export {};
//# sourceMappingURL=ChatMessageComponentAsMessageBubble.d.ts.map