import { CbEvents } from '../../../constant/callback'; import { SdkWsProto } from '@openim/protocol'; import { MixinApiService } from '../..'; import GroupCache from './cache'; import GroupSyncer from './syncer'; type GroupApplicationEventTypes = CbEvents.OnGroupApplicationAdded | CbEvents.OnGroupApplicationAccepted | CbEvents.OnGroupApplicationRejected; declare class GroupTrigger { private instance; cache: GroupCache; syncer: GroupSyncer; triggeredEventMap: { OnGroupApplicationAdded: Map; OnGroupApplicationAccepted: Map; OnGroupApplicationRejected: Map; }; constructor(instance: MixinApiService); sync: (operationID: string) => Promise; reset(): void; setTriggeredEventMap: (event: GroupApplicationEventTypes, key: string) => void; checkConversationUpdate: (group: SdkWsProto.GroupInfo) => void; getDesignatedGroupApplicationAndTrigger: ({ event, userID, groupID, operationID, activeTrigger, }: { event: GroupApplicationEventTypes; userID?: string; groupID: string; operationID: string; activeTrigger?: boolean; }) => Promise; updateCachedGroupInfoAndTrigger: (data: SdkWsProto.GroupInfo, operationID: string) => void; updateCachedGroupMemberInfoAndTrigger: (data: SdkWsProto.GroupMemberFullInfo, operationID: string) => void; parseMessageAndTrigger: (message: SdkWsProto.MsgData, operationID: string) => Promise; } export default GroupTrigger;