UNPKG

@openim/client-sdk

Version:

JavaScript/TypeScript Client SDK for OpenIM

40 lines (39 loc) 2.21 kB
import { ConversationItem, MessageItem, SDKMessage } from '../../../types/entity'; import { GetOneConversationParams } from '../../../types/params'; import { MsgProto, SdkWsProto } from '@openim/protocol'; import { MixinApiService } from '../..'; import { TypingManager } from './typing'; import MessageCache from './cache'; import MessageSyncer from './syncer'; declare class MessageTrigger { private instance; cache: MessageCache; syncer: MessageSyncer; triggeredConversationEvent: Map<string, boolean>; typingManager: TypingManager; constructor(instance: MixinApiService); sync: (operationID: string) => Promise<void>; reset: () => void; setTriggeredConversationEvent: (key: string) => void; getMessageWithCacheBySeqs: (conversationID: string, seqs: number[], operationID: string) => Promise<{ messages: SDKMessage[]; filterCount: number; }>; getPreviousSeqMessage: ({ conversationID, seq, operationID, }: { conversationID: string; seq: number; operationID: string; }) => Promise<SDKMessage | null>; initConversation: (params: GetOneConversationParams & { operationID: string; }) => Promise<ConversationItem>; getConversationsWithCacheByIDs: (conversationIDs: string[], operationID: string) => Promise<ConversationItem[]>; getOneConversationAndTryChange: (conversationID: string, operationID: string, updateFields?: Partial<ConversationItem>, unreadCountIncr?: boolean, isNewConversation?: boolean) => Promise<ConversationItem | undefined>; getMessageFromServerBySeqs: (conversations: MsgProto.ConversationSeqs[], operationID: string) => Promise<MsgProto.GetSeqMessageResp>; revokeMessage: (revokeMsgTips: SdkWsProto.RevokeMsgTips, operationID: string) => Promise<void>; triggerTyping: (message: MessageItem) => void; triggerNotification: (messages: Record<string, SdkWsProto.PullMsgs>, operationID: string) => Promise<void>; triggerConversationNotification: (message: SdkWsProto.MsgData, operationID: string) => Promise<void>; triggerConversation: (messages: Record<string, SdkWsProto.PullMsgs>, operationID: string) => Promise<void>; } export default MessageTrigger;