import React from "react"; import { CometChat } from "@cometchat-pro/react-native-chat"; import { ImageType } from "../shared"; import { MessageBubbleStyleInterface } from "../shared/views/CometChatMessageBubble/MessageBubbleStyle"; import { AvatarStyleInterface } from "../shared"; import { MessageListStyleInterface } from "./MessageListStyle"; import { MessageListAlignmentType, MessageTimeAlignmentType } from "../shared/constants/UIKitConstants"; import { CometChatMessageTemplate } from "../shared/modals/CometChatMessageTemplate"; import { DateStyleInterface } from "../shared/views/CometChatDate/DateStyle"; import { ActionSheetStylesInterface } from "../shared/views/CometChatActionSheet/ActionSheetStyle"; export interface CometChatMessageListProps { parentMessageId?: string; user?: CometChat.User; group?: CometChat.Group; EmptyStateView?: () => JSX.Element; emptyStateText?: String; ErrorStateView?: (e: CometChat.CometChatException) => JSX.Element; errorStateText?: String; LoadingStateView?: () => JSX.Element; disableReceipt?: boolean; disableSoundForMessages?: boolean; customSoundForMessages?: string; readIcon?: ImageType; deliveredIcon?: ImageType; sentIcon?: ImageType; waitIcon?: ImageType; errorIcon?: ImageType; alignment?: MessageListAlignmentType; showAvatar?: boolean; datePattern?: (message: CometChat.BaseMessage) => "timeFormat" | "dayDateFormat" | "dayDateTimeFormat"; timeStampAlignment?: MessageTimeAlignmentType; dateSeperatorPattern?: (date: number) => string; templates?: Array; messageRequestBuilder?: CometChat.MessagesRequestBuilder; newMessageIndicatorText?: string; scrollToBottomOnNewMessages?: boolean; onThreadRepliesPress?: (messageObject: CometChat.BaseMessage, messageBubbleView: () => JSX.Element) => void; HeaderView?: ({ user, group, id }: { user?: CometChat.User; group?: CometChat.Group; id?: { uid?: string; guid?: string; parentMessageId?: string; }; }) => JSX.Element; FooterView?: ({ user, group, id }: { user?: CometChat.User; group?: CometChat.Group; id?: { uid?: string; guid?: string; parentMessageId?: string; }; }) => JSX.Element; wrapperMessageBubbleStyle?: MessageBubbleStyleInterface; avatarStyle?: AvatarStyleInterface; dateSeperatorStyle?: DateStyleInterface; actionSheetStyle?: ActionSheetStylesInterface; messageListStyle?: MessageListStyleInterface; onError?: (e: CometChat.CometChatException) => void; onBack?: () => void; } export interface CometChatMessageListActionsInterface { addMessage: (messageObject: object) => void; updateMessage: (messageObject: CometChat.BaseMessage, withMuid: boolean) => void; removeMessage: (messageObject: CometChat.BaseMessage) => void; deleteMessage: (messageObject: CometChat.BaseMessage) => void; scrollToBottom: () => void; createActionMessage: () => void; updateMessageReceipt: (message: CometChat.BaseMessage) => void; } export declare const CometChatMessageList: React.ForwardRefExoticComponent>;