UNPKG

@zegocloud/zimkit-react

Version:

ZEGO ZIMKit SDK for Web React

38 lines (37 loc) 3.04 kB
import { EventName } from "../Constant/event"; import { ZIMErrorCallback, ZIMConnectionStateChanged, ZIMTokenWillExpire, ZIMReceivePeerMessage, ZIMReceiveGroupMessage, ZIMConversationTotalUnreadMessageCountUpdated, ZIMConversationChanged, ZIMGroupFullInfo, ZIMUserInfo, ZIMGroupMemberStateChanged } from '../../ZIMAdapter/index.entity'; import { ZIMKitTextMessageModel, ZIMKitImgMessageModel, ZIMKitAudioMessageModel, ZIMKitVideoMessageModel, ZIMKitFileMessageModel } from '../../ZIMKitChat/Model'; import ZIMKitConversationVM from "../../ZIMKitConversation/VM/ZIMKitConversationVM"; import ZIMKitChatVM from "../../ZIMKitChat/VM/ZIMKitChatVM"; export interface ZIMKitEventHandlerInterface { [EventName.zimError]: ZIMErrorCallback[]; [EventName.zimConnectionStateChanged]: ZIMConnectionStateChanged[]; [EventName.zimTokenWillExpire]: ZIMTokenWillExpire[]; [EventName.zimReceivePeerMessage]: ZIMReceivePeerMessage[]; [EventName.zimReceiveGroupMessage]: ZIMReceiveGroupMessage[]; [EventName.zimConversationTotalUnreadMessageCountUpdated]: ZIMConversationTotalUnreadMessageCountUpdated[]; [EventName.zimConversationChanged]: ZIMConversationChanged[]; [EventName.zimGroupMemberStateChanged]: ZIMGroupMemberStateChanged[]; [EventName.zimKitLoginStateChanged]: ((state: number) => void)[]; [EventName.zimKitLoginUserUpdate]: ((userInfo: ZIMUserInfo) => void)[]; [EventName.zimKitDeleteConversation]: ((conversationID: string) => void)[]; [EventName.zimKitCurrentConversationChanged]: ((conversation: ZIMKitConversationVM) => void)[]; [EventName.zimKitCurrentConversationUpdate]: ((conversation: ZIMKitConversationVM) => void)[]; [EventName.zimKitConversationListUpdate]: ((conversationList: Map<string, ZIMKitConversationVM>) => void)[]; [EventName.zimKitConversationListQueryAbnormally]: ((isAbnormal: boolean) => void)[]; [EventName.zimKitCurrentChatChanged]: ((chat: ZIMKitChatVM) => void)[]; [EventName.zimKitCurrentChatUpdated]: ((chat: ZIMKitChatVM) => void)[]; [EventName.zimKitCurrentGroupInfoUpdated]: ((groupInfo: ZIMGroupFullInfo) => void)[]; [EventName.zimKitImgMessageUpdated]: ((message: ZIMKitImgMessageModel) => void)[]; [EventName.zimKitNetworkChanged]: ((networkStatus: number) => void)[]; [EventName.zimKitModeChanged]: ((mode: number, message: ZIMKitTextMessageModel | ZIMKitImgMessageModel | ZIMKitAudioMessageModel | ZIMKitVideoMessageModel | ZIMKitFileMessageModel) => void)[]; } export default class ZIMKitEventHandler { static instance: ZIMKitEventHandler; eventList: ZIMKitEventHandlerInterface; constructor(); static getInstance(): ZIMKitEventHandler; addEventListener<K extends keyof ZIMKitEventHandlerInterface>(event: K, callBackList: ZIMKitEventHandlerInterface[K]): boolean; removeEventListener<K extends keyof ZIMKitEventHandlerInterface>(event: K, callBackList: ZIMKitEventHandlerInterface[K]): boolean; actionListener<K extends keyof ZIMKitEventHandlerInterface>(event: K, ...args: Array<any>): void; }