/// <reference types="react" />
import { CommunicationParticipant, MessageProps, MessageRenderer, MessageThreadStyles, ParticipantMenuItemsCallback, SendBoxStylesProps, TypingIndicatorStylesProps } from "../../../../react-components/src";
import { AvatarPersonaDataCallback } from '../common/AvatarPersona';
import { ChatCompositeOptions } from './ChatComposite';
/**
 * @private
 */
export type ChatScreenProps = {
    options?: ChatCompositeOptions;
    onFetchAvatarPersonaData?: AvatarPersonaDataCallback;
    onRenderMessage?: (messageProps: MessageProps, defaultOnRender?: MessageRenderer) => JSX.Element;
    onRenderTypingIndicator?: (typingUsers: CommunicationParticipant[]) => JSX.Element;
    onFetchParticipantMenuItems?: ParticipantMenuItemsCallback;
    styles?: ChatScreenStyles;
    formFactor?: 'desktop' | 'mobile';
};
/**
 * @private
 */
export type ChatScreenStyles = {
    messageThread?: MessageThreadStyles;
    sendBox?: SendBoxStylesProps;
    typingIndicator?: TypingIndicatorStylesProps;
};
/**
 * @private
 */
export declare const ChatScreen: (props: ChatScreenProps) => JSX.Element;
//# sourceMappingURL=ChatScreen.d.ts.map