diff options
Diffstat (limited to 'src/api/MessageEvents.ts')
-rw-r--r-- | src/api/MessageEvents.ts | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/src/api/MessageEvents.ts b/src/api/MessageEvents.ts index aaf8d40..4bd3bc0 100644 --- a/src/api/MessageEvents.ts +++ b/src/api/MessageEvents.ts @@ -36,10 +36,36 @@ export interface Emoji { export interface MessageObject { content: string, validNonShortcutEmojis: Emoji[]; + invalidEmojis: any[]; + tts: boolean; } +export interface Upload { + classification: string; + currentSize: number; + description: string | null; + filename: string; + id: string; + isImage: boolean; + isVideo: boolean; + item: { + file: File; + platform: number; + }; + loaded: number; + mimeType: string; + preCompressionSize: number; + responseUrl: string; + sensitive: boolean; + showLargeMessageDialog: boolean; + spoiler: boolean; + status: "NOT_STARTED" | "STARTED" | "UPLOADING" | "ERROR" | "COMPLETED" | "CANCELLED"; + uniqueId: string; + uploadedFilename: string; +} export interface MessageExtra { stickerIds?: string[]; + uploads?: Upload[]; } export type SendListener = (channelId: string, messageObj: MessageObject, extra: MessageExtra) => Promisable<void | { cancel: boolean; }>; @@ -48,7 +74,8 @@ export type EditListener = (channelId: string, messageId: string, messageObj: Me const sendListeners = new Set<SendListener>(); const editListeners = new Set<EditListener>(); -export async function _handlePreSend(channelId: string, messageObj: MessageObject, extra: MessageExtra) { +export async function _handlePreSend(channelId: string, messageObj: MessageObject, extra: MessageExtra, uploads: Upload[]) { + extra.uploads = uploads; for (const listener of sendListeners) { try { const result = await listener(channelId, messageObj, extra); |