You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			35 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			TypeScript
		
	
			
		
		
	
	
			35 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			TypeScript
		
	
| import {
 | |
|   ContentMessage,
 | |
|   OpenGroupMessage,
 | |
|   SyncMessage,
 | |
| } from '../messages/outgoing';
 | |
| import { RawMessage } from '../types/RawMessage';
 | |
| import { TypedEventEmitter } from '../utils';
 | |
| import { PubKey } from '../types';
 | |
| import { ClosedGroupV2Message } from '../messages/outgoing/content/data/groupv2/ClosedGroupV2Message';
 | |
| import { ClosedGroupV2ChatMessage } from '../messages/outgoing/content/data/groupv2/ClosedGroupV2ChatMessage';
 | |
| 
 | |
| export type GroupMessageType =
 | |
|   | OpenGroupMessage
 | |
|   | ClosedGroupV2ChatMessage
 | |
|   | ClosedGroupV2Message;
 | |
| export interface MessageQueueInterfaceEvents {
 | |
|   sendSuccess: (
 | |
|     message: RawMessage | OpenGroupMessage,
 | |
|     wrappedEnvelope?: Uint8Array
 | |
|   ) => void;
 | |
|   sendFail: (message: RawMessage | OpenGroupMessage, error: Error) => void;
 | |
| }
 | |
| 
 | |
| export interface MessageQueueInterface {
 | |
|   events: TypedEventEmitter<MessageQueueInterfaceEvents>;
 | |
|   sendUsingMultiDevice(user: PubKey, message: ContentMessage): Promise<void>;
 | |
|   send(device: PubKey, message: ContentMessage): Promise<void>;
 | |
|   sendToGroup(
 | |
|     message: GroupMessageType,
 | |
|     sentCb?: (message?: RawMessage) => Promise<void>
 | |
|   ): Promise<void>;
 | |
|   sendSyncMessage(message: SyncMessage | undefined): Promise<void>;
 | |
|   processPending(device: PubKey): Promise<void>;
 | |
| }
 |