import React from 'react'; import '../Presentation/Views/Dialog/Dialog.scss'; import '../Presentation/Views/Dialog/DialogHeader/DialogInfoIcon/DialogInfoIcon.scss'; import { Tone } from 'qb-ai-rephrase/src/Tone'; import useQbInitializedDataContext from '../Presentation/providers/QuickBloxUIKitProvider/useQbInitializedDataContext'; import { DialogEntity } from '../Domain/entity/DialogEntity'; import { DialogListViewModel } from '../Presentation/Views/DialogList/DialogListViewModel'; import { AIMessageWidget } from '../Presentation/Views/Dialog/AIWidgets/AIMessageWidget'; import { DialogViewModel } from '../Presentation/Views/Dialog/DialogViewModel'; import { MessageEntity } from '../Domain/entity/MessageEntity'; import useModal from './useModal'; import { QuickBloxUIKitProps } from '../CommonTypes/CommonTypes'; import { UsersListViewModel } from '../Presentation/Views/DialogInfo/UsersList/UsersListViewModel'; interface QuickBloxUIKitReturn { constants: { messagePerPage: number; maxFileSize?: number; maxWidthToResizing: string; workHeight: string; messagesContainerMobileHeight: string; messagesContainerHeight: string; clientContainerHeight: string; headerHeight: number; dialogListScrollableHeight: number; }; data: { isOnline: boolean; isMobile: boolean; width: number; height: number; breakpoint: number; selectedDialog?: DialogEntity; dialogAvatarUrl: string; showDialogList: boolean; showDialogMessages: boolean; showDialogInformation: boolean; needDialogInformation: boolean; isRecording: boolean; stream?: MediaStream | null; permission: boolean; resultAudioBlob?: Blob | null; audioChunks: Blob[]; fileToSend?: File | null; messageText: string; isLeaving: boolean; waitAIWidget: boolean; maxTokensForAIRephrase: number; defaultAIRephraseWidget?: AIMessageWidget; defaultAITranslateWidget?: AIMessageWidget; defaultAIAssistWidget?: AIMessageWidget; rephraseTones: Tone[]; messagePerPage: number; enableForwarding: boolean; enableReplying: boolean; maxFileSize?: number; userName?: string; currentUserId?: number; sessionToken?: string; forwardMessage: MessageEntity | null; newModal: ReturnType; isOpen: boolean; warningErrorText: string; isAllMembersShow: boolean; scrollUpToDown: boolean; needRefresh: boolean; forwardMessageModal: ReturnType; showReplyMessage: boolean; messagesToReply: MessageEntity[]; }; models: { dialogsViewModel: DialogListViewModel; messagesViewModel: DialogViewModel; userViewModel: UsersListViewModel; currentContext: ReturnType; }; handlers: { setSelectedDialog: (dialog: DialogEntity | undefined) => void; setShowDialogList: (value: boolean) => void; setShowDialogMessages: (value: boolean) => void; setShowDialogInformation: (value: boolean) => void; setNeedDialogInformation: (value: boolean) => void; handleLeaveDialog: () => void; leaveDialogHandler: (dialog: DialogEntity) => void; createDialogHandler: () => void; getDialogPhotoFileForPreview: () => Promise; getMicrophonePermission: () => Promise; startRecording: () => Promise; stopRecording: () => void; setForwardMessage: (message: MessageEntity | null) => void; setWarningErrorText: (text: string) => void; setIsAllMembersShow: (value: boolean) => void; informationCloseHandler: () => void; informationOpenHandler: () => void; setIsRecording: (value: boolean) => void; fetchMoreData: () => void; sendTextMessageActions: (textToSend: string) => void; ChangeFileHandler: (event: React.ChangeEvent) => void; handleOnReply: (message: MessageEntity) => void; handleSendData: (dialogsForForward: DialogEntity[], messagesForForward: MessageEntity[], relatedText: string) => void; handleHeightChange: (newHeight: number) => void; closeReplyMessageFlowHandler: () => void; setMessageText: (text: string) => void; setWaitAIWidget: (value: boolean) => void; handleDialogOnClick: () => void; }; } export default function useQuickBloxUIKit({ AIRephrase, AITranslate, AIAssist, uikitHeightOffset, }: QuickBloxUIKitProps): QuickBloxUIKitReturn; export {}; //# sourceMappingURL=useQuickBloxUIKit.d.ts.map