diff --git a/ts/types/Message.ts b/ts/types/Message.ts new file mode 100644 index 000000000..d41f59f1b --- /dev/null +++ b/ts/types/Message.ts @@ -0,0 +1,47 @@ +import { Attachment } from './Attachment'; + + +export type Message = IncomingMessage | OutgoingMessage; + +export type IncomingMessage = { + type: 'incoming'; + attachments: Array; + body?: string; + conversationId: string; + decrypted_at?: number; + errors?: Array; + flags?: number; + id: string; + received_at: number; + sent_at: number; + source?: string; + sourceDevice?: number; + timestamp: number; +} & Message4 + +export type OutgoingMessage = { + type: 'outgoing'; + attachments: Array; + body?: string; + conversationId: string; + delivered: number; + delivered_to: Array; + destination: string; // PhoneNumber + expirationStartTimestamp: number; + expires_at?: number; + expireTimer?: number; + id: string; + received_at: number; + recipients?: Array; // Array + sent: boolean; + sent_at: number; + sent_to: Array; // Array + synced: boolean; + timestamp: number; +} & Message4 + +interface Message4 { + numAttachments?: number; + numVisualMediaAttachments?: number; + numFileAttachments?: number; +}