UNPKG

softchatjs-core

Version:
114 lines (111 loc) 3.95 kB
import { a as Connection } from './Broadcast-Duu_7bUS.mjs'; import { Reaction, ReadMessages, Prettify, SendMessageGenerics, Message, EditedMessage, Conversation, MediaType } from './types.mjs'; import { Emoticon } from './emoticon.type.mjs'; import 'isomorphic-ws'; import 'events'; declare class MessageClient { private static message_client; private connection; private screen; private idleTimers; constructor(connection: Connection, conversationId: string); static getInstace(connection: Connection, conversationId: string): MessageClient; private getPublicMethods; private getConversationType; private rotateAndInsertMessageList; private _createMessage; private editConversationListMetaMessage; private _editMessage; _updateMessageReactions(conversationId: string, messageId: string, reactions: Reaction[], config?: { ws: boolean; to: string; }): void; private storeEditedMessage; /** * * @param conversationId * @summary Updates the list of conversations with typing indicator flags */ private showTypingIndicator; private _sendTypingNotification; private _sendStoppedTypingNotification; private addMessageToConversation; private sendReadNotification; private _clearActiveTypingIndicator; private _updateConversationListMetaMessages; readMessages(conversationId: string, data: ReadMessages): void; clearUserUnreadNotifications(conversationId: string, ids: string[]): void; private wsOnError; private deleteMessageFromConversationMeta; reactToMessage({ conversationId, messageId, reactions, to, }: { conversationId: string; messageId: string; reactions: Reaction[]; to: string; }): void; sendMessage(newMessage: Prettify<SendMessageGenerics<Message>>): void; updateBroadcastList(payload: { broadcastListId: string; participants: string[]; name: string; }): void; deleteBroadcastList(payload: { broadcastListId: string; participants: string[]; name: string; }): void; broadcastMessage({ broadcastListId, participantsIds, newMessage }: { broadcastListId: string; participantsIds: string[]; newMessage: Prettify<SendMessageGenerics<Message>>; }): void; editMessage(message: Omit<EditedMessage, "from">): void; sendTypingNotification(uid: string): void; sendStoppedTypingNotification(uid: string): void; deleteMessage(messageId: string, to: string, conversationId: string): void; getMessages(page?: number): Promise<Message[]>; getBroadcastListMessages(page?: number): Promise<Message[]>; getConversation(conversationId: string): Promise<Conversation | null>; getEmojiList(): Promise<Emoticon[]>; uploadAttachment({ base64, fileKey, }: { base64: string; fileKey: string; }): Promise<{ success: boolean; data: { url: string; }; message: string; } | undefined>; private isReadableStream; uploadFile(uri: string | NodeJS.ReadableStream | Buffer | File, meta: { filename: string; mimeType: string; ext: string; }): Promise<{ link: string; success: boolean; fileSize: number; } | { link: string; success: boolean; fileSize: string; }>; uploadAttachmentV2({ base64, fileKey, mediaType, mimeType, }: { base64: string; fileKey: string; mediaType: MediaType; mimeType: string; }): Promise<{ success: boolean; data: { uploadUrl: string; s3Link: string; }; message: string; } | undefined>; setActiveConversation(): Promise<void>; unSetActiveConversation(): Promise<void>; messageEventHandler(event: MessageEvent): null | undefined; } export { MessageClient as default };