///
import { ChatObject, MessageObject } from '../../../interfaces';
import { ChatFeedStyles } from './styles';
import { ChatHeaderProps } from './ChatHeader/props';
import { MessageListProps } from './MessageList/props';
import { MessageProps } from './MessageList/Message/props';
import { WelcomeGifProps } from './WelcomeGif/props';
import { MessageFormProps } from './MessageForm/props';
export interface ChatFeedProps extends ChatFeedStyles {
messages: MessageObject[];
username?: string;
chat?: ChatObject;
timezoneOffset?: number;
isLoading?: boolean;
hasMoreMessages?: boolean;
onMessageLoaderShow?: () => Promise;
onMessageLoaderHide?: () => Promise;
onBottomMessageShow?: () => Promise;
onBottomMessageHide?: () => Promise;
onMessageFormSubmit?: (message: MessageObject) => Promise;
renderChatFeed?: (props: ChatFeedProps) => JSX.Element | Element | React.FC;
renderChatHeader?: (props: ChatHeaderProps) => JSX.Element | Element | React.FC;
renderMessageList?: (props: MessageListProps) => JSX.Element | Element | React.FC;
renderMessage?: (props: MessageProps) => JSX.Element | Element | React.FC;
renderWelcomeGif?: (props: WelcomeGifProps) => JSX.Element | Element | React.FC;
renderMessageForm?: (props: MessageFormProps) => JSX.Element | Element | React.FC;
}