import ZIMKitMessageModel, { ZIMKitBaseMessageModel, ZIMKitImgMessageModel } from '../Model/ZIMKitMessageModel';
import ZIMKitConversationVM from '../../ZIMKitConversation/VM/ZIMKitConversationVM';
import { ZIMMessage, ZIMUserInfo, ZIMMediaUploadingProgress, ZIMMediaMessageSentResult } from '../../ZIMAdapter/index.entity';
import { ZIMKitGroupMemberModel } from '../../ZIMKitGroup/Model/ZIMKitGroupModel';
export default class ZIMKitMessageVM {
    private static instance;
    currentMessageList: ZIMKitBaseMessageModel[];
    messageCount: number;
    currentChat: ZIMKitConversationVM;
    memberList: ZIMKitGroupMemberModel[];
    constructor();
    static getInstance(): ZIMKitMessageVM;
    initListener(): void;
    sendPeerMessage(message: ZIMMessage): Promise<void>;
    sendGroupMessage(message: ZIMMessage): Promise<void>;
    sendMediaMessage(file: File, progress: ZIMMediaUploadingProgress): Promise<ZIMMediaMessageSentResult>;
    queryHistoryMessage(conversationID: string, conversationType: number): Promise<void>;
    queryCurrentChatGroupMemberList(conversationID: string): Promise<void>;
    registerCurrentChatUpdatedCallback(callback: (currentChat: ZIMKitConversationVM) => void): void;
    registerMessageListUpdatedCallback(callback: (messageList: (ZIMKitMessageModel | ZIMKitImgMessageModel)[]) => void): void;
    removeMessageListUpdatedCallback(callback: (messageList: (ZIMKitMessageModel | ZIMKitImgMessageModel)[]) => void): void;
    registerLoginUserUpdatedCallback(callback: (userInfo: ZIMUserInfo) => void): void;
    unInit(): void;
}
