import type { ApiResponse, HttpRequest } from '../types/entity'; import Emitter from '../utils/emitter'; import { CbEvents } from '../constant/callback'; import { SdkWsProto } from '@openim/protocol'; import { LoginParams, SendWsReqParams, TriggerEventParams, UploadFileParams } from '../types/params'; import { MessageTrigger, RelationTrigger, GroupTrigger, UserTrigger, BusinessTrigger, SignalingTrigger } from './internal'; import { ConversationApi, FriendApi, GroupApi, MessageApi, SignalingApi, UserApi } from './api'; import { LoginStatus, Platform } from '../types/enum'; import type { CallbackEvent, DataOfEvent } from '../types/eventData'; declare class OpenIMSDK extends Emitter implements FriendApi, GroupApi, UserApi, MessageApi, ConversationApi, SignalingApi { userID?: string; platform?: Platform; private token?; private apiAddr?; loginStatus: LoginStatus; isReconnected: boolean; serverConfig: SdkWsProto.ServerConfig; private connectState; private wsManager?; messageTrigger: MessageTrigger; userTrigger: UserTrigger; groupTrigger: GroupTrigger; relationTrigger: RelationTrigger; businessTrigger: BusinessTrigger; signalingTrigger: SignalingTrigger; private requestMap; constructor(); private generateHttpHeader; sendHttpRequest: (req: HttpRequest) => Promise; private handleWsConnected; private handleMessage; private handleGeneralWsResp; private handleReconnecting; private handleReconnectFailed; private handleReconnectSuccess; sendReqWaitResp: ({ data, reqIdentifier, operationID, }: SendWsReqParams) => Promise; triggerEvent: ({ event, data, errCode, errMsg, operationID, }: TriggerEventParams) => void; login: (params: LoginParams, operationID?: string) => Promise>; getLoginStatus: (operationID?: string) => Promise>; forceReconnect: (operationID?: string) => Promise>; logout: (operationID?: string) => Promise>; internalUploadFile: (file: File, operationID: string, onProgress?: (percent: number) => void) => Promise<{ url?: string; error?: Error; }>; uploadFile: (params: UploadFileParams, operationID?: string) => Promise>; private reset; getSelfUserInfo: UserApi['getSelfUserInfo']; setSelfInfo: UserApi['setSelfInfo']; getUsersInfo: UserApi['getUsersInfo']; subscribeUsersStatus: UserApi['subscribeUsersStatus']; unsubscribeUsersStatus: UserApi['unsubscribeUsersStatus']; getSubscribeUsersStatus: UserApi['getSubscribeUsersStatus']; acceptFriendApplication: FriendApi['acceptFriendApplication']; addBlack: FriendApi['addBlack']; addFriend: FriendApi['addFriend']; updateFriends: FriendApi['updateFriends']; checkFriend: FriendApi['checkFriend']; deleteFriend: FriendApi['deleteFriend']; getBlackList: FriendApi['getBlackList']; getFriendApplicationListAsApplicant: FriendApi['getFriendApplicationListAsApplicant']; getFriendApplicationListAsRecipient: FriendApi['getFriendApplicationListAsRecipient']; getFriendListPage: FriendApi['getFriendListPage']; getSpecifiedFriendsInfo: FriendApi['getSpecifiedFriendsInfo']; refuseFriendApplication: FriendApi['refuseFriendApplication']; removeBlack: FriendApi['removeBlack']; createGroup: GroupApi['createGroup']; joinGroup: GroupApi['joinGroup']; inviteUserToGroup: GroupApi['inviteUserToGroup']; getJoinedGroupListPage: GroupApi['getJoinedGroupListPage']; getSpecifiedGroupsInfo: GroupApi['getSpecifiedGroupsInfo']; setGroupInfo: GroupApi['setGroupInfo']; getGroupApplicationListAsRecipient: GroupApi['getGroupApplicationListAsRecipient']; getGroupApplicationListAsApplicant: GroupApi['getGroupApplicationListAsApplicant']; acceptGroupApplication: GroupApi['acceptGroupApplication']; refuseGroupApplication: GroupApi['refuseGroupApplication']; getGroupMemberList: GroupApi['getGroupMemberList']; getSpecifiedGroupMembersInfo: GroupApi['getSpecifiedGroupMembersInfo']; setGroupMemberInfo: GroupApi['setGroupMemberInfo']; kickGroupMember: GroupApi['kickGroupMember']; changeGroupMemberMute: GroupApi['changeGroupMemberMute']; changeGroupMute: GroupApi['changeGroupMute']; transferGroupOwner: GroupApi['transferGroupOwner']; dismissGroup: GroupApi['dismissGroup']; quitGroup: GroupApi['quitGroup']; getUsersInGroup: GroupApi['getUsersInGroup']; isJoinGroup: GroupApi['isJoinGroup']; createTextMessage: MessageApi['createTextMessage']; createTextAtMessage: MessageApi['createTextAtMessage']; createLocationMessage: MessageApi['createLocationMessage']; createCustomMessage: MessageApi['createCustomMessage']; createQuoteMessage: MessageApi['createQuoteMessage']; createCardMessage: MessageApi['createCardMessage']; createImageMessageByURL: MessageApi['createImageMessageByURL']; createImageMessageByFile: MessageApi['createImageMessageByFile']; createSoundMessageByURL: MessageApi['createSoundMessageByURL']; createSoundMessageByFile: MessageApi['createSoundMessageByFile']; createVideoMessageByURL: MessageApi['createVideoMessageByURL']; createVideoMessageByFile: MessageApi['createVideoMessageByFile']; createFileMessageByURL: MessageApi['createFileMessageByURL']; createFileMessageByFile: MessageApi['createFileMessageByFile']; createMergerMessage: MessageApi['createMergerMessage']; createFaceMessage: MessageApi['createFaceMessage']; createForwardMessage: MessageApi['createForwardMessage']; sendMessage: MessageApi['sendMessage']; sendMessageNotOss: MessageApi['sendMessageNotOss']; revokeMessage: MessageApi['revokeMessage']; getAdvancedHistoryMessageList: MessageApi['getAdvancedHistoryMessageList']; deleteMessage: MessageApi['deleteMessage']; deleteAllMsgFromLocalAndSvr: MessageApi['deleteAllMsgFromLocalAndSvr']; sendGroupMessageReadReceipt: MessageApi['sendGroupMessageReadReceipt']; getGroupMessageReaderList: MessageApi['getGroupMessageReaderList']; cancelMessageTasks: MessageApi['cancelMessageTasks']; getConversationListSplit: ConversationApi['getConversationListSplit']; getOneConversation: ConversationApi['getOneConversation']; setConversation: ConversationApi['setConversation']; getTotalUnreadMsgCount: ConversationApi['getTotalUnreadMsgCount']; markConversationMessageAsRead: ConversationApi['markConversationMessageAsRead']; changeInputStates: ConversationApi['changeInputStates']; getInputStates: ConversationApi['getInputStates']; signalingInvite: SignalingApi['signalingInvite']; signalingInviteInGroup: SignalingApi['signalingInviteInGroup']; signalingAccept: SignalingApi['signalingAccept']; signalingReject: SignalingApi['signalingReject']; signalingCancel: SignalingApi['signalingCancel']; signalingHungUp: SignalingApi['signalingHungUp']; signalingGetRoomByGroupID: SignalingApi['signalingGetRoomByGroupID']; signalingGetTokenByRoomID: SignalingApi['signalingGetTokenByRoomID']; getSignalingInvitationInfoStartApp: SignalingApi['getSignalingInvitationInfoStartApp']; signalingSendCustomSignal: SignalingApi['signalingSendCustomSignal']; } export declare const getSDK: () => ApiService; export type ApiService = FriendApi & GroupApi & UserApi & MessageApi & ConversationApi & SignalingApi & { on: (event: E, fn: (data: CallbackEvent>) => void) => unknown; off: (event: E, fn: (data: CallbackEvent>) => void) => unknown; login: (params: LoginParams) => Promise>; getLoginStatus: () => Promise>; forceReconnect: () => Promise>; logout: () => Promise>; uploadFile: (params: UploadFileParams) => Promise>; }; export type MixinApiService = OpenIMSDK; export {};