/** * Тип, що представляє об'єкт, який може мати довільні ключі та значення. * * @typedef {Object} keyable * @property {string} [key] - Ключ, який є рядком. * @property {*} [key: string] - Значення будь-якого типу. */ export type keyable = { [key: string]: any; }; /** * Інтерфейс, що представляє повідомлення (Notification). * * @interface Notification * @property {string} action - Дія, пов'язана з повідомленням. * @property {keyable} [body] - Додаткові дані повідомлення у вигляді об'єкта. * @property {number} created_at - Час створення повідомлення у вигляді мітки часу. * @property {number[]} for_users - Масив ідентифікаторів користувачів, для яких призначене повідомлення. * @property {number} id - Унікальний ідентифікатор повідомлення. */ export interface Notification { action: string; body?: keyable; created_at: number; for_users: number[]; id: number; } /** * Інтерфейс, що представляє повідомлення (MessageNotification). * * @interface MessageNotification * @property {string} message - Текст повідомлення. * @property {string} [type] - Тип повідомлення. * @property {number} [timeout] - Час в мілісекундах, після якого повідомлення зникає. */ export interface MessageNotification { message: string; type?: string; timeout?: number; ack_id?: string; error?: string; } export interface MessageScreenShare { state: string; sdp: string; session_id?: string; from_sock_id?: string; parent_id?: string; from_user_id?: number; auto?: boolean; sock_id?: string; timeout?: number; screenConstraints?: any; RTCConfiguration?: any; ack_id?: string; } /** * Перелічуваний тип (enum), що представляє можливі дії для повідомлень. * * @enum {string} */ export declare enum NotificationActions { HideMember = "hide_member", HideAttempt = "hide_attempt", WaitingList = "waiting_list", SetContact = "set_contact", RefreshMissed = "refresh_missed", ShowMessage = "show_message", ScreenShare = "screen_share", Screenshot = "screenshot", OpenLink = "open_link", StartScreenRecord = "ss_record_start", StopScreenRecord = "ss_record_stop", ACK = "ss_ack" } //# sourceMappingURL=notification.d.ts.map