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.
		
		
		
		
		
			
		
			
				
	
	
		
			26 lines
		
	
	
		
			911 B
		
	
	
	
		
			TypeScript
		
	
			
		
		
	
	
			26 lines
		
	
	
		
			911 B
		
	
	
	
		
			TypeScript
		
	
| import {
 | |
|   ClosedGroupMessage,
 | |
|   ContentMessage,
 | |
|   OpenGroupMessage,
 | |
|   SyncMessage,
 | |
| } from '../messages/outgoing';
 | |
| import { RawMessage } from '../types/RawMessage';
 | |
| import { TypedEventEmitter } from '../utils';
 | |
| import { PubKey } from '../types';
 | |
| 
 | |
| type GroupMessageType = OpenGroupMessage | ClosedGroupMessage;
 | |
| 
 | |
| export interface MessageQueueInterfaceEvents {
 | |
|   success: (message: RawMessage | OpenGroupMessage) => void;
 | |
|   fail: (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): Promise<void>;
 | |
|   sendSyncMessage(message: SyncMessage | undefined): Promise<void>;
 | |
|   processPending(device: PubKey): Promise<void>;
 | |
| }
 |