@mtcute/core 0.5.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/highlevel/base.d.ts +111 -0
- package/cjs/highlevel/base.js +228 -0
- package/cjs/highlevel/base.js.map +1 -0
- package/cjs/highlevel/client.d.ts +4412 -0
- package/cjs/highlevel/client.js +1069 -0
- package/cjs/highlevel/client.js.map +1 -0
- package/cjs/highlevel/client.types.d.ts +38 -0
- package/cjs/highlevel/client.types.js +3 -0
- package/cjs/highlevel/client.types.js.map +1 -0
- package/cjs/highlevel/index.d.ts +6 -0
- package/cjs/highlevel/index.js +23 -0
- package/cjs/highlevel/index.js.map +1 -0
- package/cjs/highlevel/managers/app-config-manager.d.ts +12 -0
- package/cjs/highlevel/managers/app-config-manager.js +41 -0
- package/cjs/highlevel/managers/app-config-manager.js.map +1 -0
- package/cjs/highlevel/methods/_imports.js +4 -0
- package/cjs/highlevel/methods/_imports.js.map +1 -0
- package/cjs/highlevel/methods/_init.js +67 -0
- package/cjs/highlevel/methods/_init.js.map +1 -0
- package/cjs/highlevel/methods/auth/check-password.d.ts +10 -0
- package/cjs/highlevel/methods/auth/check-password.js +22 -0
- package/cjs/highlevel/methods/auth/check-password.js.map +1 -0
- package/cjs/highlevel/methods/auth/get-password-hint.d.ts +7 -0
- package/cjs/highlevel/methods/auth/get-password-hint.js +17 -0
- package/cjs/highlevel/methods/auth/get-password-hint.js.map +1 -0
- package/cjs/highlevel/methods/auth/log-out.d.ts +10 -0
- package/cjs/highlevel/methods/auth/log-out.js +18 -0
- package/cjs/highlevel/methods/auth/log-out.js.map +1 -0
- package/cjs/highlevel/methods/auth/recover-password.d.ts +12 -0
- package/cjs/highlevel/methods/auth/recover-password.js +20 -0
- package/cjs/highlevel/methods/auth/recover-password.js.map +1 -0
- package/cjs/highlevel/methods/auth/resend-code.d.ts +14 -0
- package/cjs/highlevel/methods/auth/resend-code.js +24 -0
- package/cjs/highlevel/methods/auth/resend-code.js.map +1 -0
- package/cjs/highlevel/methods/auth/run.d.ts +15 -0
- package/cjs/highlevel/methods/auth/run.js +22 -0
- package/cjs/highlevel/methods/auth/run.js.map +1 -0
- package/cjs/highlevel/methods/auth/send-code.d.ts +11 -0
- package/cjs/highlevel/methods/auth/send-code.js +26 -0
- package/cjs/highlevel/methods/auth/send-code.js.map +1 -0
- package/cjs/highlevel/methods/auth/send-recovery-code.d.ts +7 -0
- package/cjs/highlevel/methods/auth/send-recovery-code.js +17 -0
- package/cjs/highlevel/methods/auth/send-recovery-code.js.map +1 -0
- package/cjs/highlevel/methods/auth/sign-in-bot.d.ts +10 -0
- package/cjs/highlevel/methods/auth/sign-in-bot.js +24 -0
- package/cjs/highlevel/methods/auth/sign-in-bot.js.map +1 -0
- package/cjs/highlevel/methods/auth/sign-in.d.ts +17 -0
- package/cjs/highlevel/methods/auth/sign-in.js +24 -0
- package/cjs/highlevel/methods/auth/sign-in.js.map +1 -0
- package/cjs/highlevel/methods/auth/start-test.d.ts +30 -0
- package/cjs/highlevel/methods/auth/start-test.js +66 -0
- package/cjs/highlevel/methods/auth/start-test.js.map +1 -0
- package/cjs/highlevel/methods/auth/start.d.ts +74 -0
- package/cjs/highlevel/methods/auth/start.js +136 -0
- package/cjs/highlevel/methods/auth/start.js.map +1 -0
- package/cjs/highlevel/methods/auth/utils.d.ts +6 -0
- package/cjs/highlevel/methods/auth/utils.js +33 -0
- package/cjs/highlevel/methods/auth/utils.js.map +1 -0
- package/cjs/highlevel/methods/bots/answer-callback-query.d.ts +41 -0
- package/cjs/highlevel/methods/bots/answer-callback-query.js +28 -0
- package/cjs/highlevel/methods/bots/answer-callback-query.js.map +1 -0
- package/cjs/highlevel/methods/bots/answer-inline-query.d.ts +88 -0
- package/cjs/highlevel/methods/bots/answer-inline-query.js +44 -0
- package/cjs/highlevel/methods/bots/answer-inline-query.js.map +1 -0
- package/cjs/highlevel/methods/bots/answer-pre-checkout-query.d.ts +12 -0
- package/cjs/highlevel/methods/bots/answer-pre-checkout-query.js +25 -0
- package/cjs/highlevel/methods/bots/answer-pre-checkout-query.js.map +1 -0
- package/cjs/highlevel/methods/bots/delete-my-commands.d.ts +22 -0
- package/cjs/highlevel/methods/bots/delete-my-commands.js +25 -0
- package/cjs/highlevel/methods/bots/delete-my-commands.js.map +1 -0
- package/cjs/highlevel/methods/bots/get-bot-info.d.ts +18 -0
- package/cjs/highlevel/methods/bots/get-bot-info.js +17 -0
- package/cjs/highlevel/methods/bots/get-bot-info.js.map +1 -0
- package/cjs/highlevel/methods/bots/get-bot-menu-button.d.ts +7 -0
- package/cjs/highlevel/methods/bots/get-bot-menu-button.js +15 -0
- package/cjs/highlevel/methods/bots/get-bot-menu-button.js.map +1 -0
- package/cjs/highlevel/methods/bots/get-callback-answer.d.ts +30 -0
- package/cjs/highlevel/methods/bots/get-callback-answer.js +31 -0
- package/cjs/highlevel/methods/bots/get-callback-answer.js.map +1 -0
- package/cjs/highlevel/methods/bots/get-game-high-scores.d.ts +17 -0
- package/cjs/highlevel/methods/bots/get-game-high-scores.js +55 -0
- package/cjs/highlevel/methods/bots/get-game-high-scores.js.map +1 -0
- package/cjs/highlevel/methods/bots/get-my-commands.d.ts +21 -0
- package/cjs/highlevel/methods/bots/get-my-commands.js +23 -0
- package/cjs/highlevel/methods/bots/get-my-commands.js.map +1 -0
- package/cjs/highlevel/methods/bots/normalize-command-scope.js +34 -0
- package/cjs/highlevel/methods/bots/normalize-command-scope.js.map +1 -0
- package/cjs/highlevel/methods/bots/set-bot-info.d.ts +23 -0
- package/cjs/highlevel/methods/bots/set-bot-info.js +22 -0
- package/cjs/highlevel/methods/bots/set-bot-info.js.map +1 -0
- package/cjs/highlevel/methods/bots/set-bot-menu-button.d.ts +7 -0
- package/cjs/highlevel/methods/bots/set-bot-menu-button.js +18 -0
- package/cjs/highlevel/methods/bots/set-bot-menu-button.js.map +1 -0
- package/cjs/highlevel/methods/bots/set-game-score.d.ts +54 -0
- package/cjs/highlevel/methods/bots/set-game-score.js +53 -0
- package/cjs/highlevel/methods/bots/set-game-score.js.map +1 -0
- package/cjs/highlevel/methods/bots/set-my-commands.d.ts +26 -0
- package/cjs/highlevel/methods/bots/set-my-commands.js +36 -0
- package/cjs/highlevel/methods/bots/set-my-commands.js.map +1 -0
- package/cjs/highlevel/methods/bots/set-my-default-rights.d.ts +11 -0
- package/cjs/highlevel/methods/bots/set-my-default-rights.js +20 -0
- package/cjs/highlevel/methods/bots/set-my-default-rights.js.map +1 -0
- package/cjs/highlevel/methods/chats/add-chat-members.d.ts +18 -0
- package/cjs/highlevel/methods/chats/add-chat-members.js +43 -0
- package/cjs/highlevel/methods/chats/add-chat-members.js.map +1 -0
- package/cjs/highlevel/methods/chats/archive-chats.d.ts +9 -0
- package/cjs/highlevel/methods/chats/archive-chats.js +25 -0
- package/cjs/highlevel/methods/chats/archive-chats.js.map +1 -0
- package/cjs/highlevel/methods/chats/ban-chat-member.d.ts +23 -0
- package/cjs/highlevel/methods/chats/ban-chat-member.js +48 -0
- package/cjs/highlevel/methods/chats/ban-chat-member.js.map +1 -0
- package/cjs/highlevel/methods/chats/batched-queries.js +125 -0
- package/cjs/highlevel/methods/chats/batched-queries.js.map +1 -0
- package/cjs/highlevel/methods/chats/create-channel.d.ts +17 -0
- package/cjs/highlevel/methods/chats/create-channel.js +24 -0
- package/cjs/highlevel/methods/chats/create-channel.js.map +1 -0
- package/cjs/highlevel/methods/chats/create-group.d.ts +26 -0
- package/cjs/highlevel/methods/chats/create-group.js +30 -0
- package/cjs/highlevel/methods/chats/create-group.js.map +1 -0
- package/cjs/highlevel/methods/chats/create-supergroup.d.ts +27 -0
- package/cjs/highlevel/methods/chats/create-supergroup.js +26 -0
- package/cjs/highlevel/methods/chats/create-supergroup.js.map +1 -0
- package/cjs/highlevel/methods/chats/delete-channel.d.ts +8 -0
- package/cjs/highlevel/methods/chats/delete-channel.js +19 -0
- package/cjs/highlevel/methods/chats/delete-channel.js.map +1 -0
- package/cjs/highlevel/methods/chats/delete-chat-photo.d.ts +10 -0
- package/cjs/highlevel/methods/chats/delete-chat-photo.js +36 -0
- package/cjs/highlevel/methods/chats/delete-chat-photo.js.map +1 -0
- package/cjs/highlevel/methods/chats/delete-group.d.ts +8 -0
- package/cjs/highlevel/methods/chats/delete-group.js +31 -0
- package/cjs/highlevel/methods/chats/delete-group.js.map +1 -0
- package/cjs/highlevel/methods/chats/delete-history.d.ts +24 -0
- package/cjs/highlevel/methods/chats/delete-history.js +28 -0
- package/cjs/highlevel/methods/chats/delete-history.js.map +1 -0
- package/cjs/highlevel/methods/chats/delete-user-history.d.ts +11 -0
- package/cjs/highlevel/methods/chats/delete-user-history.js +21 -0
- package/cjs/highlevel/methods/chats/delete-user-history.js.map +1 -0
- package/cjs/highlevel/methods/chats/edit-admin-rights.d.ts +16 -0
- package/cjs/highlevel/methods/chats/edit-admin-rights.js +25 -0
- package/cjs/highlevel/methods/chats/edit-admin-rights.js.map +1 -0
- package/cjs/highlevel/methods/chats/get-chat-event-log.d.ts +61 -0
- package/cjs/highlevel/methods/chats/get-chat-event-log.js +55 -0
- package/cjs/highlevel/methods/chats/get-chat-event-log.js.map +1 -0
- package/cjs/highlevel/methods/chats/get-chat-member.d.ts +15 -0
- package/cjs/highlevel/methods/chats/get-chat-member.js +60 -0
- package/cjs/highlevel/methods/chats/get-chat-member.js.map +1 -0
- package/cjs/highlevel/methods/chats/get-chat-members.d.ts +51 -0
- package/cjs/highlevel/methods/chats/get-chat-members.js +87 -0
- package/cjs/highlevel/methods/chats/get-chat-members.js.map +1 -0
- package/cjs/highlevel/methods/chats/get-chat-preview.d.ts +12 -0
- package/cjs/highlevel/methods/chats/get-chat-preview.js +30 -0
- package/cjs/highlevel/methods/chats/get-chat-preview.js.map +1 -0
- package/cjs/highlevel/methods/chats/get-chat.d.ts +11 -0
- package/cjs/highlevel/methods/chats/get-chat.js +39 -0
- package/cjs/highlevel/methods/chats/get-chat.js.map +1 -0
- package/cjs/highlevel/methods/chats/get-full-chat.d.ts +11 -0
- package/cjs/highlevel/methods/chats/get-full-chat.js +57 -0
- package/cjs/highlevel/methods/chats/get-full-chat.js.map +1 -0
- package/cjs/highlevel/methods/chats/get-nearby-chats.d.ts +9 -0
- package/cjs/highlevel/methods/chats/get-nearby-chats.js +42 -0
- package/cjs/highlevel/methods/chats/get-nearby-chats.js.map +1 -0
- package/cjs/highlevel/methods/chats/get-similar-channels.d.ts +12 -0
- package/cjs/highlevel/methods/chats/get-similar-channels.js +31 -0
- package/cjs/highlevel/methods/chats/get-similar-channels.js.map +1 -0
- package/cjs/highlevel/methods/chats/iter-chat-event-log.d.ts +26 -0
- package/cjs/highlevel/methods/chats/iter-chat-event-log.js +57 -0
- package/cjs/highlevel/methods/chats/iter-chat-event-log.js.map +1 -0
- package/cjs/highlevel/methods/chats/iter-chat-members.d.ts +22 -0
- package/cjs/highlevel/methods/chats/iter-chat-members.js +53 -0
- package/cjs/highlevel/methods/chats/iter-chat-members.js.map +1 -0
- package/cjs/highlevel/methods/chats/join-chat.d.ts +14 -0
- package/cjs/highlevel/methods/chats/join-chat.js +41 -0
- package/cjs/highlevel/methods/chats/join-chat.js.map +1 -0
- package/cjs/highlevel/methods/chats/kick-chat-member.d.ts +15 -0
- package/cjs/highlevel/methods/chats/kick-chat-member.js +30 -0
- package/cjs/highlevel/methods/chats/kick-chat-member.js.map +1 -0
- package/cjs/highlevel/methods/chats/leave-chat.d.ts +13 -0
- package/cjs/highlevel/methods/chats/leave-chat.js +37 -0
- package/cjs/highlevel/methods/chats/leave-chat.js.map +1 -0
- package/cjs/highlevel/methods/chats/mark-chat-unread.d.ts +8 -0
- package/cjs/highlevel/methods/chats/mark-chat-unread.js +23 -0
- package/cjs/highlevel/methods/chats/mark-chat-unread.js.map +1 -0
- package/cjs/highlevel/methods/chats/open-chat.d.ts +21 -0
- package/cjs/highlevel/methods/chats/open-chat.js +43 -0
- package/cjs/highlevel/methods/chats/open-chat.js.map +1 -0
- package/cjs/highlevel/methods/chats/reorder-usernames.d.ts +8 -0
- package/cjs/highlevel/methods/chats/reorder-usernames.js +44 -0
- package/cjs/highlevel/methods/chats/reorder-usernames.js.map +1 -0
- package/cjs/highlevel/methods/chats/restrict-chat-member.d.ts +28 -0
- package/cjs/highlevel/methods/chats/restrict-chat-member.js +31 -0
- package/cjs/highlevel/methods/chats/restrict-chat-member.js.map +1 -0
- package/cjs/highlevel/methods/chats/save-draft.d.ts +10 -0
- package/cjs/highlevel/methods/chats/save-draft.js +29 -0
- package/cjs/highlevel/methods/chats/save-draft.js.map +1 -0
- package/cjs/highlevel/methods/chats/set-chat-color.d.ts +38 -0
- package/cjs/highlevel/methods/chats/set-chat-color.js +42 -0
- package/cjs/highlevel/methods/chats/set-chat-color.js.map +1 -0
- package/cjs/highlevel/methods/chats/set-chat-default-permissions.d.ts +16 -0
- package/cjs/highlevel/methods/chats/set-chat-default-permissions.js +35 -0
- package/cjs/highlevel/methods/chats/set-chat-default-permissions.js.map +1 -0
- package/cjs/highlevel/methods/chats/set-chat-description.d.ts +11 -0
- package/cjs/highlevel/methods/chats/set-chat-description.js +24 -0
- package/cjs/highlevel/methods/chats/set-chat-description.js.map +1 -0
- package/cjs/highlevel/methods/chats/set-chat-photo.d.ts +20 -0
- package/cjs/highlevel/methods/chats/set-chat-photo.js +90 -0
- package/cjs/highlevel/methods/chats/set-chat-photo.js.map +1 -0
- package/cjs/highlevel/methods/chats/set-chat-title.d.ts +11 -0
- package/cjs/highlevel/methods/chats/set-chat-title.js +37 -0
- package/cjs/highlevel/methods/chats/set-chat-title.js.map +1 -0
- package/cjs/highlevel/methods/chats/set-chat-ttl.d.ts +9 -0
- package/cjs/highlevel/methods/chats/set-chat-ttl.js +19 -0
- package/cjs/highlevel/methods/chats/set-chat-ttl.js.map +1 -0
- package/cjs/highlevel/methods/chats/set-chat-username.d.ts +11 -0
- package/cjs/highlevel/methods/chats/set-chat-username.js +23 -0
- package/cjs/highlevel/methods/chats/set-chat-username.js.map +1 -0
- package/cjs/highlevel/methods/chats/set-slow-mode.d.ts +12 -0
- package/cjs/highlevel/methods/chats/set-slow-mode.js +23 -0
- package/cjs/highlevel/methods/chats/set-slow-mode.js.map +1 -0
- package/cjs/highlevel/methods/chats/toggle-content-protection.d.ts +9 -0
- package/cjs/highlevel/methods/chats/toggle-content-protection.js +20 -0
- package/cjs/highlevel/methods/chats/toggle-content-protection.js.map +1 -0
- package/cjs/highlevel/methods/chats/toggle-fragment-username.d.ts +20 -0
- package/cjs/highlevel/methods/chats/toggle-fragment-username.js +49 -0
- package/cjs/highlevel/methods/chats/toggle-fragment-username.js.map +1 -0
- package/cjs/highlevel/methods/chats/toggle-join-requests.d.ts +12 -0
- package/cjs/highlevel/methods/chats/toggle-join-requests.js +23 -0
- package/cjs/highlevel/methods/chats/toggle-join-requests.js.map +1 -0
- package/cjs/highlevel/methods/chats/toggle-join-to-send.d.ts +12 -0
- package/cjs/highlevel/methods/chats/toggle-join-to-send.js +23 -0
- package/cjs/highlevel/methods/chats/toggle-join-to-send.js.map +1 -0
- package/cjs/highlevel/methods/chats/unarchive-chats.d.ts +9 -0
- package/cjs/highlevel/methods/chats/unarchive-chats.js +28 -0
- package/cjs/highlevel/methods/chats/unarchive-chats.js.map +1 -0
- package/cjs/highlevel/methods/chats/unban-chat-member.d.ts +16 -0
- package/cjs/highlevel/methods/chats/unban-chat-member.js +39 -0
- package/cjs/highlevel/methods/chats/unban-chat-member.js.map +1 -0
- package/cjs/highlevel/methods/contacts/add-contact.d.ts +28 -0
- package/cjs/highlevel/methods/contacts/add-contact.js +26 -0
- package/cjs/highlevel/methods/contacts/add-contact.js.map +1 -0
- package/cjs/highlevel/methods/contacts/delete-contacts.d.ts +12 -0
- package/cjs/highlevel/methods/contacts/delete-contacts.js +32 -0
- package/cjs/highlevel/methods/contacts/delete-contacts.js.map +1 -0
- package/cjs/highlevel/methods/contacts/get-contacts.d.ts +6 -0
- package/cjs/highlevel/methods/contacts/get-contacts.js +22 -0
- package/cjs/highlevel/methods/contacts/get-contacts.js.map +1 -0
- package/cjs/highlevel/methods/contacts/import-contacts.d.ts +9 -0
- package/cjs/highlevel/methods/contacts/import-contacts.js +26 -0
- package/cjs/highlevel/methods/contacts/import-contacts.js.map +1 -0
- package/cjs/highlevel/methods/dialogs/create-folder.d.ts +13 -0
- package/cjs/highlevel/methods/dialogs/create-folder.js +45 -0
- package/cjs/highlevel/methods/dialogs/create-folder.js.map +1 -0
- package/cjs/highlevel/methods/dialogs/delete-folder.d.ts +8 -0
- package/cjs/highlevel/methods/dialogs/delete-folder.js +18 -0
- package/cjs/highlevel/methods/dialogs/delete-folder.js.map +1 -0
- package/cjs/highlevel/methods/dialogs/edit-folder.d.ts +18 -0
- package/cjs/highlevel/methods/dialogs/edit-folder.js +39 -0
- package/cjs/highlevel/methods/dialogs/edit-folder.js.map +1 -0
- package/cjs/highlevel/methods/dialogs/find-folder.d.ts +19 -0
- package/cjs/highlevel/methods/dialogs/find-folder.js +33 -0
- package/cjs/highlevel/methods/dialogs/find-folder.js.map +1 -0
- package/cjs/highlevel/methods/dialogs/get-folders.d.ts +6 -0
- package/cjs/highlevel/methods/dialogs/get-folders.js +32 -0
- package/cjs/highlevel/methods/dialogs/get-folders.js.map +1 -0
- package/cjs/highlevel/methods/dialogs/get-peer-dialogs.d.ts +10 -0
- package/cjs/highlevel/methods/dialogs/get-peer-dialogs.js +24 -0
- package/cjs/highlevel/methods/dialogs/get-peer-dialogs.js.map +1 -0
- package/cjs/highlevel/methods/dialogs/iter-dialogs.d.ts +103 -0
- package/cjs/highlevel/methods/dialogs/iter-dialogs.js +148 -0
- package/cjs/highlevel/methods/dialogs/iter-dialogs.js.map +1 -0
- package/cjs/highlevel/methods/dialogs/set-folders-order.d.ts +7 -0
- package/cjs/highlevel/methods/dialogs/set-folders-order.js +18 -0
- package/cjs/highlevel/methods/dialogs/set-folders-order.js.map +1 -0
- package/cjs/highlevel/methods/files/_platform.js +33 -0
- package/cjs/highlevel/methods/files/_platform.js.map +1 -0
- package/cjs/highlevel/methods/files/_platform.web.js +26 -0
- package/cjs/highlevel/methods/files/_platform.web.js.map +1 -0
- package/cjs/highlevel/methods/files/download-buffer.d.ts +11 -0
- package/cjs/highlevel/methods/files/download-buffer.js +26 -0
- package/cjs/highlevel/methods/files/download-buffer.js.map +1 -0
- package/cjs/highlevel/methods/files/download-file.d.ts +10 -0
- package/cjs/highlevel/methods/files/download-file.js +35 -0
- package/cjs/highlevel/methods/files/download-file.js.map +1 -0
- package/cjs/highlevel/methods/files/download-file.web.d.ts +1 -0
- package/cjs/highlevel/methods/files/download-file.web.js +9 -0
- package/cjs/highlevel/methods/files/download-file.web.js.map +1 -0
- package/cjs/highlevel/methods/files/download-iterable.d.ts +10 -0
- package/cjs/highlevel/methods/files/download-iterable.js +184 -0
- package/cjs/highlevel/methods/files/download-iterable.js.map +1 -0
- package/cjs/highlevel/methods/files/download-stream.d.ts +9 -0
- package/cjs/highlevel/methods/files/download-stream.js +38 -0
- package/cjs/highlevel/methods/files/download-stream.js.map +1 -0
- package/cjs/highlevel/methods/files/normalize-file-to-document.js +23 -0
- package/cjs/highlevel/methods/files/normalize-file-to-document.js.map +1 -0
- package/cjs/highlevel/methods/files/normalize-input-file.d.ts +13 -0
- package/cjs/highlevel/methods/files/normalize-input-file.js +42 -0
- package/cjs/highlevel/methods/files/normalize-input-file.js.map +1 -0
- package/cjs/highlevel/methods/files/normalize-input-media.d.ts +11 -0
- package/cjs/highlevel/methods/files/normalize-input-media.js +366 -0
- package/cjs/highlevel/methods/files/normalize-input-media.js.map +1 -0
- package/cjs/highlevel/methods/files/upload-file.d.ts +67 -0
- package/cjs/highlevel/methods/files/upload-file.js +217 -0
- package/cjs/highlevel/methods/files/upload-file.js.map +1 -0
- package/cjs/highlevel/methods/files/upload-media.d.ts +28 -0
- package/cjs/highlevel/methods/files/upload-media.js +68 -0
- package/cjs/highlevel/methods/files/upload-media.js.map +1 -0
- package/cjs/highlevel/methods/forums/create-forum-topic.d.ts +36 -0
- package/cjs/highlevel/methods/forums/create-forum-topic.js +28 -0
- package/cjs/highlevel/methods/forums/create-forum-topic.js.map +1 -0
- package/cjs/highlevel/methods/forums/delete-forum-topic-history.d.ts +9 -0
- package/cjs/highlevel/methods/forums/delete-forum-topic-history.js +24 -0
- package/cjs/highlevel/methods/forums/delete-forum-topic-history.js.map +1 -0
- package/cjs/highlevel/methods/forums/edit-forum-topic.d.ts +34 -0
- package/cjs/highlevel/methods/forums/edit-forum-topic.js +31 -0
- package/cjs/highlevel/methods/forums/edit-forum-topic.js.map +1 -0
- package/cjs/highlevel/methods/forums/get-forum-topics-by-id.d.ts +9 -0
- package/cjs/highlevel/methods/forums/get-forum-topics-by-id.js +22 -0
- package/cjs/highlevel/methods/forums/get-forum-topics-by-id.js.map +1 -0
- package/cjs/highlevel/methods/forums/get-forum-topics.d.ts +28 -0
- package/cjs/highlevel/methods/forums/get-forum-topics.js +42 -0
- package/cjs/highlevel/methods/forums/get-forum-topics.js.map +1 -0
- package/cjs/highlevel/methods/forums/iter-forum-topics.d.ts +20 -0
- package/cjs/highlevel/methods/forums/iter-forum-topics.js +35 -0
- package/cjs/highlevel/methods/forums/iter-forum-topics.js.map +1 -0
- package/cjs/highlevel/methods/forums/reorder-pinned-forum-topics.d.ts +19 -0
- package/cjs/highlevel/methods/forums/reorder-pinned-forum-topics.js +20 -0
- package/cjs/highlevel/methods/forums/reorder-pinned-forum-topics.js.map +1 -0
- package/cjs/highlevel/methods/forums/toggle-forum-topic-closed.d.ts +22 -0
- package/cjs/highlevel/methods/forums/toggle-forum-topic-closed.js +24 -0
- package/cjs/highlevel/methods/forums/toggle-forum-topic-closed.js.map +1 -0
- package/cjs/highlevel/methods/forums/toggle-forum-topic-pinned.d.ts +15 -0
- package/cjs/highlevel/methods/forums/toggle-forum-topic-pinned.js +20 -0
- package/cjs/highlevel/methods/forums/toggle-forum-topic-pinned.js.map +1 -0
- package/cjs/highlevel/methods/forums/toggle-forum.d.ts +11 -0
- package/cjs/highlevel/methods/forums/toggle-forum.js +22 -0
- package/cjs/highlevel/methods/forums/toggle-forum.js.map +1 -0
- package/cjs/highlevel/methods/forums/toggle-general-topic-hidden.d.ts +20 -0
- package/cjs/highlevel/methods/forums/toggle-general-topic-hidden.js +24 -0
- package/cjs/highlevel/methods/forums/toggle-general-topic-hidden.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/create-invite-link.d.ts +31 -0
- package/cjs/highlevel/methods/invite-links/create-invite-link.js +28 -0
- package/cjs/highlevel/methods/invite-links/create-invite-link.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/edit-invite-link.d.ts +36 -0
- package/cjs/highlevel/methods/invite-links/edit-invite-link.js +32 -0
- package/cjs/highlevel/methods/invite-links/edit-invite-link.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/export-invite-link.d.ts +12 -0
- package/cjs/highlevel/methods/invite-links/export-invite-link.js +24 -0
- package/cjs/highlevel/methods/invite-links/export-invite-link.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/get-invite-link-members.d.ts +45 -0
- package/cjs/highlevel/methods/invite-links/get-invite-link-members.js +43 -0
- package/cjs/highlevel/methods/invite-links/get-invite-link-members.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/get-invite-link.d.ts +9 -0
- package/cjs/highlevel/methods/invite-links/get-invite-link.js +22 -0
- package/cjs/highlevel/methods/invite-links/get-invite-link.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/get-invite-links.d.ts +39 -0
- package/cjs/highlevel/methods/invite-links/get-invite-links.js +43 -0
- package/cjs/highlevel/methods/invite-links/get-invite-links.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/get-primary-invite-link.d.ts +8 -0
- package/cjs/highlevel/methods/invite-links/get-primary-invite-link.js +30 -0
- package/cjs/highlevel/methods/invite-links/get-primary-invite-link.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/hide-all-join-requests.d.ts +13 -0
- package/cjs/highlevel/methods/invite-links/hide-all-join-requests.js +18 -0
- package/cjs/highlevel/methods/invite-links/hide-all-join-requests.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/hide-join-request.d.ts +13 -0
- package/cjs/highlevel/methods/invite-links/hide-join-request.js +19 -0
- package/cjs/highlevel/methods/invite-links/hide-join-request.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/iter-invite-link-members.d.ts +25 -0
- package/cjs/highlevel/methods/invite-links/iter-invite-link-members.js +43 -0
- package/cjs/highlevel/methods/invite-links/iter-invite-link-members.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/iter-invite-links.d.ts +27 -0
- package/cjs/highlevel/methods/invite-links/iter-invite-links.js +45 -0
- package/cjs/highlevel/methods/invite-links/iter-invite-links.js.map +1 -0
- package/cjs/highlevel/methods/invite-links/revoke-invite-link.d.ts +13 -0
- package/cjs/highlevel/methods/invite-links/revoke-invite-link.js +28 -0
- package/cjs/highlevel/methods/invite-links/revoke-invite-link.js.map +1 -0
- package/cjs/highlevel/methods/messages/close-poll.d.ts +15 -0
- package/cjs/highlevel/methods/messages/close-poll.js +47 -0
- package/cjs/highlevel/methods/messages/close-poll.js.map +1 -0
- package/cjs/highlevel/methods/messages/delete-messages.d.ts +24 -0
- package/cjs/highlevel/methods/messages/delete-messages.js +64 -0
- package/cjs/highlevel/methods/messages/delete-messages.js.map +1 -0
- package/cjs/highlevel/methods/messages/delete-scheduled-messages.d.ts +9 -0
- package/cjs/highlevel/methods/messages/delete-scheduled-messages.js +21 -0
- package/cjs/highlevel/methods/messages/delete-scheduled-messages.js.map +1 -0
- package/cjs/highlevel/methods/messages/edit-inline-message.d.ts +51 -0
- package/cjs/highlevel/methods/messages/edit-inline-message.js +57 -0
- package/cjs/highlevel/methods/messages/edit-inline-message.js.map +1 -0
- package/cjs/highlevel/methods/messages/edit-message.d.ts +54 -0
- package/cjs/highlevel/methods/messages/edit-message.js +46 -0
- package/cjs/highlevel/methods/messages/edit-message.js.map +1 -0
- package/cjs/highlevel/methods/messages/find-in-update.js +30 -0
- package/cjs/highlevel/methods/messages/find-in-update.js.map +1 -0
- package/cjs/highlevel/methods/messages/forward-messages.d.ts +73 -0
- package/cjs/highlevel/methods/messages/forward-messages.js +72 -0
- package/cjs/highlevel/methods/messages/forward-messages.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-callback-query-message.d.ts +14 -0
- package/cjs/highlevel/methods/messages/get-callback-query-message.js +56 -0
- package/cjs/highlevel/methods/messages/get-callback-query-message.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-discussion-message.d.ts +17 -0
- package/cjs/highlevel/methods/messages/get-discussion-message.js +63 -0
- package/cjs/highlevel/methods/messages/get-discussion-message.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-history.d.ts +61 -0
- package/cjs/highlevel/methods/messages/get-history.js +54 -0
- package/cjs/highlevel/methods/messages/get-history.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-message-by-link.d.ts +6 -0
- package/cjs/highlevel/methods/messages/get-message-by-link.js +34 -0
- package/cjs/highlevel/methods/messages/get-message-by-link.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-message-group.d.ts +9 -0
- package/cjs/highlevel/methods/messages/get-message-group.js +36 -0
- package/cjs/highlevel/methods/messages/get-message-group.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-message-reactions.d.ts +28 -0
- package/cjs/highlevel/methods/messages/get-message-reactions.js +58 -0
- package/cjs/highlevel/methods/messages/get-message-reactions.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-messages-unsafe.d.ts +19 -0
- package/cjs/highlevel/methods/messages/get-messages-unsafe.js +42 -0
- package/cjs/highlevel/methods/messages/get-messages-unsafe.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-messages.d.ts +17 -0
- package/cjs/highlevel/methods/messages/get-messages.js +76 -0
- package/cjs/highlevel/methods/messages/get-messages.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-reaction-users.d.ts +24 -0
- package/cjs/highlevel/methods/messages/get-reaction-users.js +29 -0
- package/cjs/highlevel/methods/messages/get-reaction-users.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-reply-to.d.ts +10 -0
- package/cjs/highlevel/methods/messages/get-reply-to.js +25 -0
- package/cjs/highlevel/methods/messages/get-reply-to.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-scheduled-messages.d.ts +13 -0
- package/cjs/highlevel/methods/messages/get-scheduled-messages.js +35 -0
- package/cjs/highlevel/methods/messages/get-scheduled-messages.js.map +1 -0
- package/cjs/highlevel/methods/messages/iter-history.d.ts +23 -0
- package/cjs/highlevel/methods/messages/iter-history.js +41 -0
- package/cjs/highlevel/methods/messages/iter-history.js.map +1 -0
- package/cjs/highlevel/methods/messages/iter-reaction-users.d.ts +26 -0
- package/cjs/highlevel/methods/messages/iter-reaction-users.js +40 -0
- package/cjs/highlevel/methods/messages/iter-reaction-users.js.map +1 -0
- package/cjs/highlevel/methods/messages/iter-search-global.d.ts +27 -0
- package/cjs/highlevel/methods/messages/iter-search-global.js +46 -0
- package/cjs/highlevel/methods/messages/iter-search-global.js.map +1 -0
- package/cjs/highlevel/methods/messages/iter-search-messages.d.ts +26 -0
- package/cjs/highlevel/methods/messages/iter-search-messages.js +55 -0
- package/cjs/highlevel/methods/messages/iter-search-messages.js.map +1 -0
- package/cjs/highlevel/methods/messages/pin-message.d.ts +21 -0
- package/cjs/highlevel/methods/messages/pin-message.js +28 -0
- package/cjs/highlevel/methods/messages/pin-message.js.map +1 -0
- package/cjs/highlevel/methods/messages/read-history.d.ts +19 -0
- package/cjs/highlevel/methods/messages/read-history.js +46 -0
- package/cjs/highlevel/methods/messages/read-history.js.map +1 -0
- package/cjs/highlevel/methods/messages/read-reactions.d.ts +8 -0
- package/cjs/highlevel/methods/messages/read-reactions.js +19 -0
- package/cjs/highlevel/methods/messages/read-reactions.js.map +1 -0
- package/cjs/highlevel/methods/messages/search-global.d.ts +47 -0
- package/cjs/highlevel/methods/messages/search-global.js +50 -0
- package/cjs/highlevel/methods/messages/search-global.js.map +1 -0
- package/cjs/highlevel/methods/messages/search-messages.d.ts +93 -0
- package/cjs/highlevel/methods/messages/search-messages.js +50 -0
- package/cjs/highlevel/methods/messages/search-messages.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-answer.d.ts +12 -0
- package/cjs/highlevel/methods/messages/send-answer.js +37 -0
- package/cjs/highlevel/methods/messages/send-answer.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-comment.d.ts +39 -0
- package/cjs/highlevel/methods/messages/send-comment.js +75 -0
- package/cjs/highlevel/methods/messages/send-comment.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-common.d.ts +83 -0
- package/cjs/highlevel/methods/messages/send-common.js +68 -0
- package/cjs/highlevel/methods/messages/send-common.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-copy-group.d.ts +21 -0
- package/cjs/highlevel/methods/messages/send-copy-group.js +41 -0
- package/cjs/highlevel/methods/messages/send-copy-group.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-copy.d.ts +32 -0
- package/cjs/highlevel/methods/messages/send-copy.js +57 -0
- package/cjs/highlevel/methods/messages/send-copy.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-media-group.d.ts +35 -0
- package/cjs/highlevel/methods/messages/send-media-group.js +76 -0
- package/cjs/highlevel/methods/messages/send-media-group.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-media.d.ts +48 -0
- package/cjs/highlevel/methods/messages/send-media.js +58 -0
- package/cjs/highlevel/methods/messages/send-media.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-quote.d.ts +33 -0
- package/cjs/highlevel/methods/messages/send-quote.js +66 -0
- package/cjs/highlevel/methods/messages/send-quote.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-reaction.d.ts +21 -0
- package/cjs/highlevel/methods/messages/send-reaction.js +39 -0
- package/cjs/highlevel/methods/messages/send-reaction.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-reply.d.ts +12 -0
- package/cjs/highlevel/methods/messages/send-reply.js +28 -0
- package/cjs/highlevel/methods/messages/send-reply.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-scheduled.d.ts +14 -0
- package/cjs/highlevel/methods/messages/send-scheduled.js +34 -0
- package/cjs/highlevel/methods/messages/send-scheduled.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-text.d.ts +31 -0
- package/cjs/highlevel/methods/messages/send-text.js +95 -0
- package/cjs/highlevel/methods/messages/send-text.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-text.test.d.ts +1 -0
- package/cjs/highlevel/methods/messages/send-text.test.js +140 -0
- package/cjs/highlevel/methods/messages/send-text.test.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-typing.d.ts +25 -0
- package/cjs/highlevel/methods/messages/send-typing.js +84 -0
- package/cjs/highlevel/methods/messages/send-typing.js.map +1 -0
- package/cjs/highlevel/methods/messages/send-vote.d.ts +15 -0
- package/cjs/highlevel/methods/messages/send-vote.js +56 -0
- package/cjs/highlevel/methods/messages/send-vote.js.map +1 -0
- package/cjs/highlevel/methods/messages/translate-message.d.ts +11 -0
- package/cjs/highlevel/methods/messages/translate-message.js +26 -0
- package/cjs/highlevel/methods/messages/translate-message.js.map +1 -0
- package/cjs/highlevel/methods/messages/translate-text.d.ts +9 -0
- package/cjs/highlevel/methods/messages/translate-text.js +34 -0
- package/cjs/highlevel/methods/messages/translate-text.js.map +1 -0
- package/cjs/highlevel/methods/messages/unpin-all-messages.d.ts +13 -0
- package/cjs/highlevel/methods/messages/unpin-all-messages.js +28 -0
- package/cjs/highlevel/methods/messages/unpin-all-messages.js.map +1 -0
- package/cjs/highlevel/methods/messages/unpin-message.d.ts +12 -0
- package/cjs/highlevel/methods/messages/unpin-message.js +26 -0
- package/cjs/highlevel/methods/messages/unpin-message.js.map +1 -0
- package/cjs/highlevel/methods/misc/chain-id.d.ts +1 -0
- package/cjs/highlevel/methods/misc/chain-id.js +11 -0
- package/cjs/highlevel/methods/misc/chain-id.js.map +1 -0
- package/cjs/highlevel/methods/misc/init-takeout-session.d.ts +9 -0
- package/cjs/highlevel/methods/misc/init-takeout-session.js +17 -0
- package/cjs/highlevel/methods/misc/init-takeout-session.js.map +1 -0
- package/cjs/highlevel/methods/misc/normalize-privacy-rules.d.ts +8 -0
- package/cjs/highlevel/methods/misc/normalize-privacy-rules.js +43 -0
- package/cjs/highlevel/methods/misc/normalize-privacy-rules.js.map +1 -0
- package/cjs/highlevel/methods/misc/normalize-text.d.ts +1 -0
- package/cjs/highlevel/methods/misc/normalize-text.js +34 -0
- package/cjs/highlevel/methods/misc/normalize-text.js.map +1 -0
- package/cjs/highlevel/methods/password/change-cloud-password.d.ts +12 -0
- package/cjs/highlevel/methods/password/change-cloud-password.js +29 -0
- package/cjs/highlevel/methods/password/change-cloud-password.js.map +1 -0
- package/cjs/highlevel/methods/password/enable-cloud-password.d.ts +17 -0
- package/cjs/highlevel/methods/password/enable-cloud-password.js +36 -0
- package/cjs/highlevel/methods/password/enable-cloud-password.js.map +1 -0
- package/cjs/highlevel/methods/password/password-email.d.ts +15 -0
- package/cjs/highlevel/methods/password/password-email.js +38 -0
- package/cjs/highlevel/methods/password/password-email.js.map +1 -0
- package/cjs/highlevel/methods/password/remove-cloud-password.d.ts +7 -0
- package/cjs/highlevel/methods/password/remove-cloud-password.js +28 -0
- package/cjs/highlevel/methods/password/remove-cloud-password.js.map +1 -0
- package/cjs/highlevel/methods/premium/apply-boost.d.ts +8 -0
- package/cjs/highlevel/methods/premium/apply-boost.js +17 -0
- package/cjs/highlevel/methods/premium/apply-boost.js.map +1 -0
- package/cjs/highlevel/methods/premium/can-apply-boost.d.ts +29 -0
- package/cjs/highlevel/methods/premium/can-apply-boost.js +33 -0
- package/cjs/highlevel/methods/premium/can-apply-boost.js.map +1 -0
- package/cjs/highlevel/methods/premium/get-boost-stats.d.ts +9 -0
- package/cjs/highlevel/methods/premium/get-boost-stats.js +20 -0
- package/cjs/highlevel/methods/premium/get-boost-stats.js.map +1 -0
- package/cjs/highlevel/methods/premium/get-boosts.d.ts +18 -0
- package/cjs/highlevel/methods/premium/get-boosts.js +23 -0
- package/cjs/highlevel/methods/premium/get-boosts.js.map +1 -0
- package/cjs/highlevel/methods/premium/get-my-boost-slots.d.ts +9 -0
- package/cjs/highlevel/methods/premium/get-my-boost-slots.js +20 -0
- package/cjs/highlevel/methods/premium/get-my-boost-slots.js.map +1 -0
- package/cjs/highlevel/methods/premium/iter-boosters.d.ts +26 -0
- package/cjs/highlevel/methods/premium/iter-boosters.js +36 -0
- package/cjs/highlevel/methods/premium/iter-boosters.js.map +1 -0
- package/cjs/highlevel/methods/stickers/add-sticker-to-set.d.ts +22 -0
- package/cjs/highlevel/methods/stickers/add-sticker-to-set.js +39 -0
- package/cjs/highlevel/methods/stickers/add-sticker-to-set.js.map +1 -0
- package/cjs/highlevel/methods/stickers/create-sticker-set.d.ts +75 -0
- package/cjs/highlevel/methods/stickers/create-sticker-set.js +56 -0
- package/cjs/highlevel/methods/stickers/create-sticker-set.js.map +1 -0
- package/cjs/highlevel/methods/stickers/delete-sticker-from-set.d.ts +16 -0
- package/cjs/highlevel/methods/stickers/delete-sticker-from-set.js +29 -0
- package/cjs/highlevel/methods/stickers/delete-sticker-from-set.js.map +1 -0
- package/cjs/highlevel/methods/stickers/get-custom-emojis.d.ts +14 -0
- package/cjs/highlevel/methods/stickers/get-custom-emojis.js +50 -0
- package/cjs/highlevel/methods/stickers/get-custom-emojis.js.map +1 -0
- package/cjs/highlevel/methods/stickers/get-installed-stickers.d.ts +11 -0
- package/cjs/highlevel/methods/stickers/get-installed-stickers.js +27 -0
- package/cjs/highlevel/methods/stickers/get-installed-stickers.js.map +1 -0
- package/cjs/highlevel/methods/stickers/get-sticker-set.d.ts +8 -0
- package/cjs/highlevel/methods/stickers/get-sticker-set.js +19 -0
- package/cjs/highlevel/methods/stickers/get-sticker-set.js.map +1 -0
- package/cjs/highlevel/methods/stickers/move-sticker-in-set.d.ts +18 -0
- package/cjs/highlevel/methods/stickers/move-sticker-in-set.js +32 -0
- package/cjs/highlevel/methods/stickers/move-sticker-in-set.js.map +1 -0
- package/cjs/highlevel/methods/stickers/set-chat-sticker-set.d.ts +11 -0
- package/cjs/highlevel/methods/stickers/set-chat-sticker-set.js +24 -0
- package/cjs/highlevel/methods/stickers/set-chat-sticker-set.js.map +1 -0
- package/cjs/highlevel/methods/stickers/set-sticker-set-thumb.d.ts +20 -0
- package/cjs/highlevel/methods/stickers/set-sticker-set-thumb.js +23 -0
- package/cjs/highlevel/methods/stickers/set-sticker-set-thumb.js.map +1 -0
- package/cjs/highlevel/methods/stories/can-send-story.d.ts +13 -0
- package/cjs/highlevel/methods/stories/can-send-story.js +36 -0
- package/cjs/highlevel/methods/stories/can-send-story.js.map +1 -0
- package/cjs/highlevel/methods/stories/delete-stories.d.ts +20 -0
- package/cjs/highlevel/methods/stories/delete-stories.js +19 -0
- package/cjs/highlevel/methods/stories/delete-stories.js.map +1 -0
- package/cjs/highlevel/methods/stories/edit-story.d.ts +38 -0
- package/cjs/highlevel/methods/stories/edit-story.js +44 -0
- package/cjs/highlevel/methods/stories/edit-story.js.map +1 -0
- package/cjs/highlevel/methods/stories/find-in-update.d.ts +1 -0
- package/cjs/highlevel/methods/stories/find-in-update.js +21 -0
- package/cjs/highlevel/methods/stories/find-in-update.js.map +1 -0
- package/cjs/highlevel/methods/stories/get-all-stories.d.ts +15 -0
- package/cjs/highlevel/methods/stories/get-all-stories.js +23 -0
- package/cjs/highlevel/methods/stories/get-all-stories.js.map +1 -0
- package/cjs/highlevel/methods/stories/get-peer-stories.d.ts +8 -0
- package/cjs/highlevel/methods/stories/get-peer-stories.js +20 -0
- package/cjs/highlevel/methods/stories/get-peer-stories.js.map +1 -0
- package/cjs/highlevel/methods/stories/get-profile-stories.d.ts +25 -0
- package/cjs/highlevel/methods/stories/get-profile-stories.js +31 -0
- package/cjs/highlevel/methods/stories/get-profile-stories.js.map +1 -0
- package/cjs/highlevel/methods/stories/get-stories-by-id.d.ts +10 -0
- package/cjs/highlevel/methods/stories/get-stories-by-id.js +29 -0
- package/cjs/highlevel/methods/stories/get-stories-by-id.js.map +1 -0
- package/cjs/highlevel/methods/stories/get-stories-interactions.d.ts +9 -0
- package/cjs/highlevel/methods/stories/get-stories-interactions.js +24 -0
- package/cjs/highlevel/methods/stories/get-stories-interactions.js.map +1 -0
- package/cjs/highlevel/methods/stories/get-story-link.d.ts +11 -0
- package/cjs/highlevel/methods/stories/get-story-link.js +23 -0
- package/cjs/highlevel/methods/stories/get-story-link.js.map +1 -0
- package/cjs/highlevel/methods/stories/get-story-viewers.d.ts +33 -0
- package/cjs/highlevel/methods/stories/get-story-viewers.js +26 -0
- package/cjs/highlevel/methods/stories/get-story-viewers.js.map +1 -0
- package/cjs/highlevel/methods/stories/hide-my-stories-views.d.ts +21 -0
- package/cjs/highlevel/methods/stories/hide-my-stories-views.js +29 -0
- package/cjs/highlevel/methods/stories/hide-my-stories-views.js.map +1 -0
- package/cjs/highlevel/methods/stories/increment-stories-views.d.ts +13 -0
- package/cjs/highlevel/methods/stories/increment-stories-views.js +24 -0
- package/cjs/highlevel/methods/stories/increment-stories-views.js.map +1 -0
- package/cjs/highlevel/methods/stories/iter-all-stories.d.ts +16 -0
- package/cjs/highlevel/methods/stories/iter-all-stories.js +32 -0
- package/cjs/highlevel/methods/stories/iter-all-stories.js.map +1 -0
- package/cjs/highlevel/methods/stories/iter-profile-stories.d.ts +21 -0
- package/cjs/highlevel/methods/stories/iter-profile-stories.js +33 -0
- package/cjs/highlevel/methods/stories/iter-profile-stories.js.map +1 -0
- package/cjs/highlevel/methods/stories/iter-story-viewers.d.ts +22 -0
- package/cjs/highlevel/methods/stories/iter-story-viewers.js +36 -0
- package/cjs/highlevel/methods/stories/iter-story-viewers.js.map +1 -0
- package/cjs/highlevel/methods/stories/read-stories.d.ts +11 -0
- package/cjs/highlevel/methods/stories/read-stories.js +21 -0
- package/cjs/highlevel/methods/stories/read-stories.js.map +1 -0
- package/cjs/highlevel/methods/stories/report-story.d.ts +19 -0
- package/cjs/highlevel/methods/stories/report-story.js +21 -0
- package/cjs/highlevel/methods/stories/report-story.js.map +1 -0
- package/cjs/highlevel/methods/stories/send-story-reaction.d.ts +14 -0
- package/cjs/highlevel/methods/stories/send-story-reaction.js +21 -0
- package/cjs/highlevel/methods/stories/send-story-reaction.js.map +1 -0
- package/cjs/highlevel/methods/stories/send-story.d.ts +51 -0
- package/cjs/highlevel/methods/stories/send-story.js +48 -0
- package/cjs/highlevel/methods/stories/send-story.js.map +1 -0
- package/cjs/highlevel/methods/stories/toggle-peer-stories-archived.d.ts +8 -0
- package/cjs/highlevel/methods/stories/toggle-peer-stories-archived.js +20 -0
- package/cjs/highlevel/methods/stories/toggle-peer-stories-archived.js.map +1 -0
- package/cjs/highlevel/methods/stories/toggle-stories-pinned.d.ts +24 -0
- package/cjs/highlevel/methods/stories/toggle-stories-pinned.js +20 -0
- package/cjs/highlevel/methods/stories/toggle-stories-pinned.js.map +1 -0
- package/cjs/highlevel/methods/users/block-user.d.ts +8 -0
- package/cjs/highlevel/methods/users/block-user.js +19 -0
- package/cjs/highlevel/methods/users/block-user.js.map +1 -0
- package/cjs/highlevel/methods/users/delete-profile-photos.d.ts +9 -0
- package/cjs/highlevel/methods/users/delete-profile-photos.js +25 -0
- package/cjs/highlevel/methods/users/delete-profile-photos.js.map +1 -0
- package/cjs/highlevel/methods/users/edit-close-friends.d.ts +14 -0
- package/cjs/highlevel/methods/users/edit-close-friends.js +37 -0
- package/cjs/highlevel/methods/users/edit-close-friends.js.map +1 -0
- package/cjs/highlevel/methods/users/get-common-chats.d.ts +9 -0
- package/cjs/highlevel/methods/users/get-common-chats.js +23 -0
- package/cjs/highlevel/methods/users/get-common-chats.js.map +1 -0
- package/cjs/highlevel/methods/users/get-global-ttl.d.ts +5 -0
- package/cjs/highlevel/methods/users/get-global-ttl.js +15 -0
- package/cjs/highlevel/methods/users/get-global-ttl.js.map +1 -0
- package/cjs/highlevel/methods/users/get-me.d.ts +6 -0
- package/cjs/highlevel/methods/users/get-me.js +26 -0
- package/cjs/highlevel/methods/users/get-me.js.map +1 -0
- package/cjs/highlevel/methods/users/get-my-username.d.ts +8 -0
- package/cjs/highlevel/methods/users/get-my-username.js +14 -0
- package/cjs/highlevel/methods/users/get-my-username.js.map +1 -0
- package/cjs/highlevel/methods/users/get-profile-photo.d.ts +11 -0
- package/cjs/highlevel/methods/users/get-profile-photo.js +27 -0
- package/cjs/highlevel/methods/users/get-profile-photo.js.map +1 -0
- package/cjs/highlevel/methods/users/get-profile-photos.d.ts +22 -0
- package/cjs/highlevel/methods/users/get-profile-photos.js +35 -0
- package/cjs/highlevel/methods/users/get-profile-photos.js.map +1 -0
- package/cjs/highlevel/methods/users/get-users.d.ts +12 -0
- package/cjs/highlevel/methods/users/get-users.js +29 -0
- package/cjs/highlevel/methods/users/get-users.js.map +1 -0
- package/cjs/highlevel/methods/users/get-users.test.d.ts +1 -0
- package/cjs/highlevel/methods/users/get-users.test.js +33 -0
- package/cjs/highlevel/methods/users/get-users.test.js.map +1 -0
- package/cjs/highlevel/methods/users/iter-profile-photos.d.ts +23 -0
- package/cjs/highlevel/methods/users/iter-profile-photos.js +35 -0
- package/cjs/highlevel/methods/users/iter-profile-photos.js.map +1 -0
- package/cjs/highlevel/methods/users/resolve-peer-many.d.ts +22 -0
- package/cjs/highlevel/methods/users/resolve-peer-many.js +70 -0
- package/cjs/highlevel/methods/users/resolve-peer-many.js.map +1 -0
- package/cjs/highlevel/methods/users/resolve-peer.d.ts +19 -0
- package/cjs/highlevel/methods/users/resolve-peer.js +163 -0
- package/cjs/highlevel/methods/users/resolve-peer.js.map +1 -0
- package/cjs/highlevel/methods/users/resolve-peer.test.d.ts +1 -0
- package/cjs/highlevel/methods/users/resolve-peer.test.js +307 -0
- package/cjs/highlevel/methods/users/resolve-peer.test.js.map +1 -0
- package/cjs/highlevel/methods/users/set-global-ttl.d.ts +8 -0
- package/cjs/highlevel/methods/users/set-global-ttl.js +19 -0
- package/cjs/highlevel/methods/users/set-global-ttl.js.map +1 -0
- package/cjs/highlevel/methods/users/set-my-emoji-status.d.ts +13 -0
- package/cjs/highlevel/methods/users/set-my-emoji-status.js +37 -0
- package/cjs/highlevel/methods/users/set-my-emoji-status.js.map +1 -0
- package/cjs/highlevel/methods/users/set-my-profile-photo.d.ts +16 -0
- package/cjs/highlevel/methods/users/set-my-profile-photo.js +42 -0
- package/cjs/highlevel/methods/users/set-my-profile-photo.js.map +1 -0
- package/cjs/highlevel/methods/users/set-my-username.d.ts +11 -0
- package/cjs/highlevel/methods/users/set-my-username.js +24 -0
- package/cjs/highlevel/methods/users/set-my-username.js.map +1 -0
- package/cjs/highlevel/methods/users/set-offline.d.ts +7 -0
- package/cjs/highlevel/methods/users/set-offline.js +18 -0
- package/cjs/highlevel/methods/users/set-offline.js.map +1 -0
- package/cjs/highlevel/methods/users/unblock-user.d.ts +8 -0
- package/cjs/highlevel/methods/users/unblock-user.js +19 -0
- package/cjs/highlevel/methods/users/unblock-user.js.map +1 -0
- package/cjs/highlevel/methods/users/update-profile.d.ts +23 -0
- package/cjs/highlevel/methods/users/update-profile.js +22 -0
- package/cjs/highlevel/methods/users/update-profile.js.map +1 -0
- package/cjs/highlevel/storage/index.d.ts +4 -0
- package/cjs/highlevel/storage/index.js +21 -0
- package/cjs/highlevel/storage/index.js.map +1 -0
- package/cjs/highlevel/storage/provider.d.ts +7 -0
- package/cjs/highlevel/storage/provider.js +3 -0
- package/cjs/highlevel/storage/provider.js.map +1 -0
- package/cjs/highlevel/storage/repository/peers.d.ts +32 -0
- package/cjs/highlevel/storage/repository/peers.js +3 -0
- package/cjs/highlevel/storage/repository/peers.js.map +1 -0
- package/cjs/highlevel/storage/repository/ref-messages.d.ts +20 -0
- package/cjs/highlevel/storage/repository/ref-messages.js +3 -0
- package/cjs/highlevel/storage/repository/ref-messages.js.map +1 -0
- package/cjs/highlevel/storage/service/current-user.d.ts +23 -0
- package/cjs/highlevel/storage/service/current-user.js +129 -0
- package/cjs/highlevel/storage/service/current-user.js.map +1 -0
- package/cjs/highlevel/storage/service/peers.d.ts +23 -0
- package/cjs/highlevel/storage/service/peers.js +217 -0
- package/cjs/highlevel/storage/service/peers.js.map +1 -0
- package/cjs/highlevel/storage/service/ref-messages.d.ts +15 -0
- package/cjs/highlevel/storage/service/ref-messages.js +40 -0
- package/cjs/highlevel/storage/service/ref-messages.js.map +1 -0
- package/cjs/highlevel/storage/service/updates.d.ts +16 -0
- package/cjs/highlevel/storage/service/updates.js +72 -0
- package/cjs/highlevel/storage/service/updates.js.map +1 -0
- package/cjs/highlevel/storage/storage.d.ts +22 -0
- package/cjs/highlevel/storage/storage.js +25 -0
- package/cjs/highlevel/storage/storage.js.map +1 -0
- package/cjs/highlevel/types/auth/index.d.ts +1 -0
- package/cjs/highlevel/types/auth/index.js +18 -0
- package/cjs/highlevel/types/auth/index.js.map +1 -0
- package/cjs/highlevel/types/auth/sent-code.d.ts +51 -0
- package/cjs/highlevel/types/auth/sent-code.js +65 -0
- package/cjs/highlevel/types/auth/sent-code.js.map +1 -0
- package/cjs/highlevel/types/bots/command-scope.d.ts +63 -0
- package/cjs/highlevel/types/bots/command-scope.js +87 -0
- package/cjs/highlevel/types/bots/command-scope.js.map +1 -0
- package/cjs/highlevel/types/bots/game-high-score.d.ts +23 -0
- package/cjs/highlevel/types/bots/game-high-score.js +37 -0
- package/cjs/highlevel/types/bots/game-high-score.js.map +1 -0
- package/cjs/highlevel/types/bots/index.d.ts +5 -0
- package/cjs/highlevel/types/bots/index.js +22 -0
- package/cjs/highlevel/types/bots/index.js.map +1 -0
- package/cjs/highlevel/types/bots/input/index.d.ts +2 -0
- package/cjs/highlevel/types/bots/input/index.js +19 -0
- package/cjs/highlevel/types/bots/input/index.js.map +1 -0
- package/cjs/highlevel/types/bots/input/input-inline-message.d.ts +157 -0
- package/cjs/highlevel/types/bots/input/input-inline-message.js +179 -0
- package/cjs/highlevel/types/bots/input/input-inline-message.js.map +1 -0
- package/cjs/highlevel/types/bots/input/input-inline-result.d.ts +511 -0
- package/cjs/highlevel/types/bots/input/input-inline-result.js +490 -0
- package/cjs/highlevel/types/bots/input/input-inline-result.js.map +1 -0
- package/cjs/highlevel/types/bots/keyboard-builder.d.ts +38 -0
- package/cjs/highlevel/types/bots/keyboard-builder.js +93 -0
- package/cjs/highlevel/types/bots/keyboard-builder.js.map +1 -0
- package/cjs/highlevel/types/bots/keyboard-builder.test.d.ts +1 -0
- package/cjs/highlevel/types/bots/keyboard-builder.test.js +162 -0
- package/cjs/highlevel/types/bots/keyboard-builder.test.js.map +1 -0
- package/cjs/highlevel/types/bots/keyboards.d.ts +239 -0
- package/cjs/highlevel/types/bots/keyboards.js +380 -0
- package/cjs/highlevel/types/bots/keyboards.js.map +1 -0
- package/cjs/highlevel/types/bots/keyboards.test.d.ts +1 -0
- package/cjs/highlevel/types/bots/keyboards.test.js +146 -0
- package/cjs/highlevel/types/bots/keyboards.test.js.map +1 -0
- package/cjs/highlevel/types/calls/discard-reason.d.ts +8 -0
- package/cjs/highlevel/types/calls/discard-reason.js +37 -0
- package/cjs/highlevel/types/calls/discard-reason.js.map +1 -0
- package/cjs/highlevel/types/calls/index.d.ts +1 -0
- package/cjs/highlevel/types/calls/index.js +18 -0
- package/cjs/highlevel/types/calls/index.js.map +1 -0
- package/cjs/highlevel/types/conversation.d.ts +210 -0
- package/cjs/highlevel/types/conversation.js +469 -0
- package/cjs/highlevel/types/conversation.js.map +1 -0
- package/cjs/highlevel/types/errors.d.ts +33 -0
- package/cjs/highlevel/types/errors.js +46 -0
- package/cjs/highlevel/types/errors.js.map +1 -0
- package/cjs/highlevel/types/files/file-location.d.ts +48 -0
- package/cjs/highlevel/types/files/file-location.js +39 -0
- package/cjs/highlevel/types/files/file-location.js.map +1 -0
- package/cjs/highlevel/types/files/index.d.ts +4 -0
- package/cjs/highlevel/types/files/index.js +21 -0
- package/cjs/highlevel/types/files/index.js.map +1 -0
- package/cjs/highlevel/types/files/uploaded-file.d.ts +22 -0
- package/cjs/highlevel/types/files/uploaded-file.js +9 -0
- package/cjs/highlevel/types/files/uploaded-file.js.map +1 -0
- package/cjs/highlevel/types/files/utils.d.ts +84 -0
- package/cjs/highlevel/types/files/utils.js +3 -0
- package/cjs/highlevel/types/files/utils.js.map +1 -0
- package/cjs/highlevel/types/files/web-document.d.ts +32 -0
- package/cjs/highlevel/types/files/web-document.js +57 -0
- package/cjs/highlevel/types/files/web-document.js.map +1 -0
- package/cjs/highlevel/types/index.d.ts +15 -0
- package/cjs/highlevel/types/index.js +32 -0
- package/cjs/highlevel/types/index.js.map +1 -0
- package/cjs/highlevel/types/media/audio.d.ts +31 -0
- package/cjs/highlevel/types/media/audio.js +48 -0
- package/cjs/highlevel/types/media/audio.js.map +1 -0
- package/cjs/highlevel/types/media/contact.d.ts +31 -0
- package/cjs/highlevel/types/media/contact.js +51 -0
- package/cjs/highlevel/types/media/contact.js.map +1 -0
- package/cjs/highlevel/types/media/dice.d.ts +155 -0
- package/cjs/highlevel/types/media/dice.js +171 -0
- package/cjs/highlevel/types/media/dice.js.map +1 -0
- package/cjs/highlevel/types/media/document-utils.d.ts +6 -0
- package/cjs/highlevel/types/media/document-utils.js +35 -0
- package/cjs/highlevel/types/media/document-utils.js.map +1 -0
- package/cjs/highlevel/types/media/document.d.ts +75 -0
- package/cjs/highlevel/types/media/document.js +143 -0
- package/cjs/highlevel/types/media/document.js.map +1 -0
- package/cjs/highlevel/types/media/game.d.ts +38 -0
- package/cjs/highlevel/types/media/game.js +76 -0
- package/cjs/highlevel/types/media/game.js.map +1 -0
- package/cjs/highlevel/types/media/index.d.ts +17 -0
- package/cjs/highlevel/types/media/index.js +34 -0
- package/cjs/highlevel/types/media/index.js.map +1 -0
- package/cjs/highlevel/types/media/input-media.d.ts +645 -0
- package/cjs/highlevel/types/media/input-media.js +254 -0
- package/cjs/highlevel/types/media/input-media.js.map +1 -0
- package/cjs/highlevel/types/media/invoice.d.ts +107 -0
- package/cjs/highlevel/types/media/invoice.js +163 -0
- package/cjs/highlevel/types/media/invoice.js.map +1 -0
- package/cjs/highlevel/types/media/location.d.ts +83 -0
- package/cjs/highlevel/types/media/location.js +121 -0
- package/cjs/highlevel/types/media/location.js.map +1 -0
- package/cjs/highlevel/types/media/photo.d.ts +72 -0
- package/cjs/highlevel/types/media/photo.js +160 -0
- package/cjs/highlevel/types/media/photo.js.map +1 -0
- package/cjs/highlevel/types/media/poll.d.ts +99 -0
- package/cjs/highlevel/types/media/poll.js +144 -0
- package/cjs/highlevel/types/media/poll.js.map +1 -0
- package/cjs/highlevel/types/media/sticker.d.ts +123 -0
- package/cjs/highlevel/types/media/sticker.js +145 -0
- package/cjs/highlevel/types/media/sticker.js.map +1 -0
- package/cjs/highlevel/types/media/story.d.ts +33 -0
- package/cjs/highlevel/types/media/story.js +55 -0
- package/cjs/highlevel/types/media/story.js.map +1 -0
- package/cjs/highlevel/types/media/thumbnail.d.ts +70 -0
- package/cjs/highlevel/types/media/thumbnail.js +230 -0
- package/cjs/highlevel/types/media/thumbnail.js.map +1 -0
- package/cjs/highlevel/types/media/venue.d.ts +58 -0
- package/cjs/highlevel/types/media/venue.js +79 -0
- package/cjs/highlevel/types/media/venue.js.map +1 -0
- package/cjs/highlevel/types/media/video.d.ts +46 -0
- package/cjs/highlevel/types/media/video.js +79 -0
- package/cjs/highlevel/types/media/video.js.map +1 -0
- package/cjs/highlevel/types/media/voice.d.ts +23 -0
- package/cjs/highlevel/types/media/voice.js +40 -0
- package/cjs/highlevel/types/media/voice.js.map +1 -0
- package/cjs/highlevel/types/media/web-page.d.ts +151 -0
- package/cjs/highlevel/types/media/web-page.js +197 -0
- package/cjs/highlevel/types/media/web-page.js.map +1 -0
- package/cjs/highlevel/types/messages/dialog.d.ts +108 -0
- package/cjs/highlevel/types/messages/dialog.js +247 -0
- package/cjs/highlevel/types/messages/dialog.js.map +1 -0
- package/cjs/highlevel/types/messages/draft-message.d.ts +29 -0
- package/cjs/highlevel/types/messages/draft-message.js +56 -0
- package/cjs/highlevel/types/messages/draft-message.js.map +1 -0
- package/cjs/highlevel/types/messages/index.d.ts +12 -0
- package/cjs/highlevel/types/messages/index.js +29 -0
- package/cjs/highlevel/types/messages/index.js.map +1 -0
- package/cjs/highlevel/types/messages/input-message-id.d.ts +15 -0
- package/cjs/highlevel/types/messages/input-message-id.js +11 -0
- package/cjs/highlevel/types/messages/input-message-id.js.map +1 -0
- package/cjs/highlevel/types/messages/message-action.d.ts +332 -0
- package/cjs/highlevel/types/messages/message-action.js +255 -0
- package/cjs/highlevel/types/messages/message-action.js.map +1 -0
- package/cjs/highlevel/types/messages/message-entity.d.ts +86 -0
- package/cjs/highlevel/types/messages/message-entity.js +105 -0
- package/cjs/highlevel/types/messages/message-entity.js.map +1 -0
- package/cjs/highlevel/types/messages/message-forward.d.ts +36 -0
- package/cjs/highlevel/types/messages/message-forward.js +66 -0
- package/cjs/highlevel/types/messages/message-forward.js.map +1 -0
- package/cjs/highlevel/types/messages/message-media.d.ts +18 -0
- package/cjs/highlevel/types/messages/message-media.js +72 -0
- package/cjs/highlevel/types/messages/message-media.js.map +1 -0
- package/cjs/highlevel/types/messages/message-reactions.d.ts +29 -0
- package/cjs/highlevel/types/messages/message-reactions.js +43 -0
- package/cjs/highlevel/types/messages/message-reactions.js.map +1 -0
- package/cjs/highlevel/types/messages/message-replies.d.ts +42 -0
- package/cjs/highlevel/types/messages/message-replies.js +67 -0
- package/cjs/highlevel/types/messages/message-replies.js.map +1 -0
- package/cjs/highlevel/types/messages/message.d.ts +178 -0
- package/cjs/highlevel/types/messages/message.js +339 -0
- package/cjs/highlevel/types/messages/message.js.map +1 -0
- package/cjs/highlevel/types/messages/replied-message.d.ts +103 -0
- package/cjs/highlevel/types/messages/replied-message.js +163 -0
- package/cjs/highlevel/types/messages/replied-message.js.map +1 -0
- package/cjs/highlevel/types/messages/search-filters.d.ts +82 -0
- package/cjs/highlevel/types/messages/search-filters.js +58 -0
- package/cjs/highlevel/types/messages/search-filters.js.map +1 -0
- package/cjs/highlevel/types/misc/app-config.d.ts +887 -0
- package/cjs/highlevel/types/misc/app-config.js +5 -0
- package/cjs/highlevel/types/misc/app-config.js.map +1 -0
- package/cjs/highlevel/types/misc/entities.d.ts +15 -0
- package/cjs/highlevel/types/misc/entities.js +3 -0
- package/cjs/highlevel/types/misc/entities.js.map +1 -0
- package/cjs/highlevel/types/misc/index.d.ts +5 -0
- package/cjs/highlevel/types/misc/index.js +22 -0
- package/cjs/highlevel/types/misc/index.js.map +1 -0
- package/cjs/highlevel/types/misc/input-privacy-rule.d.ts +63 -0
- package/cjs/highlevel/types/misc/input-privacy-rule.js +85 -0
- package/cjs/highlevel/types/misc/input-privacy-rule.js.map +1 -0
- package/cjs/highlevel/types/misc/sticker-set.d.ts +151 -0
- package/cjs/highlevel/types/misc/sticker-set.js +220 -0
- package/cjs/highlevel/types/misc/sticker-set.js.map +1 -0
- package/cjs/highlevel/types/misc/takeout-session.d.ts +49 -0
- package/cjs/highlevel/types/misc/takeout-session.js +82 -0
- package/cjs/highlevel/types/misc/takeout-session.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-colors.d.ts +25 -0
- package/cjs/highlevel/types/peers/chat-colors.js +36 -0
- package/cjs/highlevel/types/peers/chat-colors.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-event/actions.d.ts +263 -0
- package/cjs/highlevel/types/peers/chat-event/actions.js +234 -0
- package/cjs/highlevel/types/peers/chat-event/actions.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-event/filters.d.ts +8 -0
- package/cjs/highlevel/types/peers/chat-event/filters.js +108 -0
- package/cjs/highlevel/types/peers/chat-event/filters.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-event/index.d.ts +27 -0
- package/cjs/highlevel/types/peers/chat-event/index.js +56 -0
- package/cjs/highlevel/types/peers/chat-event/index.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-invite-link-member.d.ts +33 -0
- package/cjs/highlevel/types/peers/chat-invite-link-member.js +55 -0
- package/cjs/highlevel/types/peers/chat-invite-link-member.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-invite-link.d.ts +72 -0
- package/cjs/highlevel/types/peers/chat-invite-link.js +108 -0
- package/cjs/highlevel/types/peers/chat-invite-link.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-location.d.ts +17 -0
- package/cjs/highlevel/types/peers/chat-location.js +30 -0
- package/cjs/highlevel/types/peers/chat-location.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-member.d.ts +81 -0
- package/cjs/highlevel/types/peers/chat-member.js +154 -0
- package/cjs/highlevel/types/peers/chat-member.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-permissions.d.ts +127 -0
- package/cjs/highlevel/types/peers/chat-permissions.js +176 -0
- package/cjs/highlevel/types/peers/chat-permissions.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-photo.d.ts +39 -0
- package/cjs/highlevel/types/peers/chat-photo.js +128 -0
- package/cjs/highlevel/types/peers/chat-photo.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-preview.d.ts +55 -0
- package/cjs/highlevel/types/peers/chat-preview.js +74 -0
- package/cjs/highlevel/types/peers/chat-preview.js.map +1 -0
- package/cjs/highlevel/types/peers/chat.d.ts +332 -0
- package/cjs/highlevel/types/peers/chat.js +660 -0
- package/cjs/highlevel/types/peers/chat.js.map +1 -0
- package/cjs/highlevel/types/peers/forum-topic.d.ts +96 -0
- package/cjs/highlevel/types/peers/forum-topic.js +158 -0
- package/cjs/highlevel/types/peers/forum-topic.js.map +1 -0
- package/cjs/highlevel/types/peers/index.d.ts +14 -0
- package/cjs/highlevel/types/peers/index.js +31 -0
- package/cjs/highlevel/types/peers/index.js.map +1 -0
- package/cjs/highlevel/types/peers/peer.d.ts +49 -0
- package/cjs/highlevel/types/peers/peer.js +20 -0
- package/cjs/highlevel/types/peers/peer.js.map +1 -0
- package/cjs/highlevel/types/peers/peers-index.d.ts +15 -0
- package/cjs/highlevel/types/peers/peers-index.js +57 -0
- package/cjs/highlevel/types/peers/peers-index.js.map +1 -0
- package/cjs/highlevel/types/peers/peers-index.test.d.ts +1 -0
- package/cjs/highlevel/types/peers/peers-index.test.js +71 -0
- package/cjs/highlevel/types/peers/peers-index.test.js.map +1 -0
- package/cjs/highlevel/types/peers/typing-status.d.ts +26 -0
- package/cjs/highlevel/types/peers/typing-status.js +3 -0
- package/cjs/highlevel/types/peers/typing-status.js.map +1 -0
- package/cjs/highlevel/types/peers/user.d.ts +259 -0
- package/cjs/highlevel/types/peers/user.js +437 -0
- package/cjs/highlevel/types/peers/user.js.map +1 -0
- package/cjs/highlevel/types/peers/user.test.d.ts +1 -0
- package/cjs/highlevel/types/peers/user.test.js +176 -0
- package/cjs/highlevel/types/peers/user.test.js.map +1 -0
- package/cjs/highlevel/types/premium/boost-slot.d.ts +37 -0
- package/cjs/highlevel/types/premium/boost-slot.js +64 -0
- package/cjs/highlevel/types/premium/boost-slot.js.map +1 -0
- package/cjs/highlevel/types/premium/boost-stats.d.ts +54 -0
- package/cjs/highlevel/types/premium/boost-stats.js +91 -0
- package/cjs/highlevel/types/premium/boost-stats.js.map +1 -0
- package/cjs/highlevel/types/premium/boost.d.ts +55 -0
- package/cjs/highlevel/types/premium/boost.js +80 -0
- package/cjs/highlevel/types/premium/boost.js.map +1 -0
- package/cjs/highlevel/types/premium/index.d.ts +3 -0
- package/cjs/highlevel/types/premium/index.js +20 -0
- package/cjs/highlevel/types/premium/index.js.map +1 -0
- package/cjs/highlevel/types/reactions/emoji-status.d.ts +12 -0
- package/cjs/highlevel/types/reactions/emoji-status.js +25 -0
- package/cjs/highlevel/types/reactions/emoji-status.js.map +1 -0
- package/cjs/highlevel/types/reactions/index.d.ts +2 -0
- package/cjs/highlevel/types/reactions/index.js +19 -0
- package/cjs/highlevel/types/reactions/index.js.map +1 -0
- package/cjs/highlevel/types/reactions/peer-reaction.d.ts +32 -0
- package/cjs/highlevel/types/reactions/peer-reaction.js +53 -0
- package/cjs/highlevel/types/reactions/peer-reaction.js.map +1 -0
- package/cjs/highlevel/types/reactions/reaction-count.d.ts +23 -0
- package/cjs/highlevel/types/reactions/reaction-count.js +36 -0
- package/cjs/highlevel/types/reactions/reaction-count.js.map +1 -0
- package/cjs/highlevel/types/reactions/types.d.ts +14 -0
- package/cjs/highlevel/types/reactions/types.js +44 -0
- package/cjs/highlevel/types/reactions/types.js.map +1 -0
- package/cjs/highlevel/types/stories/all-stories.d.ts +28 -0
- package/cjs/highlevel/types/stories/all-stories.js +46 -0
- package/cjs/highlevel/types/stories/all-stories.js.map +1 -0
- package/cjs/highlevel/types/stories/index.d.ts +7 -0
- package/cjs/highlevel/types/stories/index.js +24 -0
- package/cjs/highlevel/types/stories/index.js.map +1 -0
- package/cjs/highlevel/types/stories/interactive/base.d.ts +16 -0
- package/cjs/highlevel/types/stories/interactive/base.js +31 -0
- package/cjs/highlevel/types/stories/interactive/base.js.map +1 -0
- package/cjs/highlevel/types/stories/interactive/channel-post.d.ts +17 -0
- package/cjs/highlevel/types/stories/interactive/channel-post.js +30 -0
- package/cjs/highlevel/types/stories/interactive/channel-post.js.map +1 -0
- package/cjs/highlevel/types/stories/interactive/index.d.ts +10 -0
- package/cjs/highlevel/types/stories/interactive/index.js +44 -0
- package/cjs/highlevel/types/stories/interactive/index.js.map +1 -0
- package/cjs/highlevel/types/stories/interactive/input.d.ts +67 -0
- package/cjs/highlevel/types/stories/interactive/input.js +84 -0
- package/cjs/highlevel/types/stories/interactive/input.js.map +1 -0
- package/cjs/highlevel/types/stories/interactive/location.d.ts +15 -0
- package/cjs/highlevel/types/stories/interactive/location.js +29 -0
- package/cjs/highlevel/types/stories/interactive/location.js.map +1 -0
- package/cjs/highlevel/types/stories/interactive/reaction.d.ts +21 -0
- package/cjs/highlevel/types/stories/interactive/reaction.js +35 -0
- package/cjs/highlevel/types/stories/interactive/reaction.js.map +1 -0
- package/cjs/highlevel/types/stories/interactive/venue.d.ts +28 -0
- package/cjs/highlevel/types/stories/interactive/venue.js +53 -0
- package/cjs/highlevel/types/stories/interactive/venue.js.map +1 -0
- package/cjs/highlevel/types/stories/peer-stories.d.ts +20 -0
- package/cjs/highlevel/types/stories/peer-stories.js +39 -0
- package/cjs/highlevel/types/stories/peer-stories.js.map +1 -0
- package/cjs/highlevel/types/stories/stealth-mode.d.ts +9 -0
- package/cjs/highlevel/types/stories/stealth-mode.js +24 -0
- package/cjs/highlevel/types/stories/stealth-mode.js.map +1 -0
- package/cjs/highlevel/types/stories/story-interactions.d.ts +34 -0
- package/cjs/highlevel/types/stories/story-interactions.js +56 -0
- package/cjs/highlevel/types/stories/story-interactions.js.map +1 -0
- package/cjs/highlevel/types/stories/story-viewer.d.ts +75 -0
- package/cjs/highlevel/types/stories/story-viewer.js +140 -0
- package/cjs/highlevel/types/stories/story-viewer.js.map +1 -0
- package/cjs/highlevel/types/stories/story.d.ts +79 -0
- package/cjs/highlevel/types/stories/story.js +148 -0
- package/cjs/highlevel/types/stories/story.js.map +1 -0
- package/cjs/highlevel/types/updates/bot-chat-join-request.d.ts +42 -0
- package/cjs/highlevel/types/updates/bot-chat-join-request.js +66 -0
- package/cjs/highlevel/types/updates/bot-chat-join-request.js.map +1 -0
- package/cjs/highlevel/types/updates/bot-reaction.d.ts +72 -0
- package/cjs/highlevel/types/updates/bot-reaction.js +104 -0
- package/cjs/highlevel/types/updates/bot-reaction.js.map +1 -0
- package/cjs/highlevel/types/updates/bot-stopped.d.ts +28 -0
- package/cjs/highlevel/types/updates/bot-stopped.js +43 -0
- package/cjs/highlevel/types/updates/bot-stopped.js.map +1 -0
- package/cjs/highlevel/types/updates/callback-query.d.ts +81 -0
- package/cjs/highlevel/types/updates/callback-query.js +123 -0
- package/cjs/highlevel/types/updates/callback-query.js.map +1 -0
- package/cjs/highlevel/types/updates/chat-join-request.d.ts +30 -0
- package/cjs/highlevel/types/updates/chat-join-request.js +50 -0
- package/cjs/highlevel/types/updates/chat-join-request.js.map +1 -0
- package/cjs/highlevel/types/updates/chat-member-update.d.ts +76 -0
- package/cjs/highlevel/types/updates/chat-member-update.js +178 -0
- package/cjs/highlevel/types/updates/chat-member-update.js.map +1 -0
- package/cjs/highlevel/types/updates/chosen-inline-result.d.ts +50 -0
- package/cjs/highlevel/types/updates/chosen-inline-result.js +76 -0
- package/cjs/highlevel/types/updates/chosen-inline-result.js.map +1 -0
- package/cjs/highlevel/types/updates/delete-message-update.d.ts +16 -0
- package/cjs/highlevel/types/updates/delete-message-update.js +28 -0
- package/cjs/highlevel/types/updates/delete-message-update.js.map +1 -0
- package/cjs/highlevel/types/updates/delete-story-update.d.ts +18 -0
- package/cjs/highlevel/types/updates/delete-story-update.js +31 -0
- package/cjs/highlevel/types/updates/delete-story-update.js.map +1 -0
- package/cjs/highlevel/types/updates/history-read-update.d.ts +39 -0
- package/cjs/highlevel/types/updates/history-read-update.js +109 -0
- package/cjs/highlevel/types/updates/history-read-update.js.map +1 -0
- package/cjs/highlevel/types/updates/index.d.ts +87 -0
- package/cjs/highlevel/types/updates/index.js +41 -0
- package/cjs/highlevel/types/updates/index.js.map +1 -0
- package/cjs/highlevel/types/updates/inline-query.d.ts +42 -0
- package/cjs/highlevel/types/updates/inline-query.js +73 -0
- package/cjs/highlevel/types/updates/inline-query.js.map +1 -0
- package/cjs/highlevel/types/updates/parse-update.d.ts +1 -0
- package/cjs/highlevel/types/updates/parse-update.js +76 -0
- package/cjs/highlevel/types/updates/parse-update.js.map +1 -0
- package/cjs/highlevel/types/updates/poll-update.d.ts +39 -0
- package/cjs/highlevel/types/updates/poll-update.js +67 -0
- package/cjs/highlevel/types/updates/poll-update.js.map +1 -0
- package/cjs/highlevel/types/updates/poll-vote.d.ts +52 -0
- package/cjs/highlevel/types/updates/poll-vote.js +78 -0
- package/cjs/highlevel/types/updates/poll-vote.js.map +1 -0
- package/cjs/highlevel/types/updates/pre-checkout-query.d.ts +36 -0
- package/cjs/highlevel/types/updates/pre-checkout-query.js +61 -0
- package/cjs/highlevel/types/updates/pre-checkout-query.js.map +1 -0
- package/cjs/highlevel/types/updates/story-update.d.ts +22 -0
- package/cjs/highlevel/types/updates/story-update.js +37 -0
- package/cjs/highlevel/types/updates/story-update.js.map +1 -0
- package/cjs/highlevel/types/updates/user-status-update.d.ts +28 -0
- package/cjs/highlevel/types/updates/user-status-update.js +47 -0
- package/cjs/highlevel/types/updates/user-status-update.js.map +1 -0
- package/cjs/highlevel/types/updates/user-typing-update.d.ts +31 -0
- package/cjs/highlevel/types/updates/user-typing-update.js +99 -0
- package/cjs/highlevel/types/updates/user-typing-update.js.map +1 -0
- package/cjs/highlevel/types/utils.d.ts +12 -0
- package/cjs/highlevel/types/utils.js +3 -0
- package/cjs/highlevel/types/utils.js.map +1 -0
- package/cjs/highlevel/updates/index.d.ts +2 -0
- package/cjs/highlevel/updates/index.js +20 -0
- package/cjs/highlevel/updates/index.js.map +1 -0
- package/cjs/highlevel/updates/manager.d.ts +120 -0
- package/cjs/highlevel/updates/manager.js +1342 -0
- package/cjs/highlevel/updates/manager.js.map +1 -0
- package/cjs/highlevel/updates/parsed.d.ts +32 -0
- package/cjs/highlevel/updates/parsed.js +43 -0
- package/cjs/highlevel/updates/parsed.js.map +1 -0
- package/cjs/highlevel/updates/types.d.ts +48 -0
- package/cjs/highlevel/updates/types.js +3 -0
- package/cjs/highlevel/updates/types.js.map +1 -0
- package/cjs/highlevel/updates/utils.d.ts +19 -0
- package/cjs/highlevel/updates/utils.js +109 -0
- package/cjs/highlevel/updates/utils.js.map +1 -0
- package/cjs/highlevel/utils/convert-file-id.d.ts +46 -0
- package/cjs/highlevel/utils/convert-file-id.js +293 -0
- package/cjs/highlevel/utils/convert-file-id.js.map +1 -0
- package/cjs/highlevel/utils/file-type.d.ts +1 -0
- package/cjs/highlevel/utils/file-type.js +139 -0
- package/cjs/highlevel/utils/file-type.js.map +1 -0
- package/cjs/highlevel/utils/file-type.test.d.ts +1 -0
- package/cjs/highlevel/utils/file-type.test.js +64 -0
- package/cjs/highlevel/utils/file-type.test.js.map +1 -0
- package/cjs/highlevel/utils/file-utils.d.ts +29 -0
- package/cjs/highlevel/utils/file-utils.js +119 -0
- package/cjs/highlevel/utils/file-utils.js.map +1 -0
- package/cjs/highlevel/utils/file-utils.test.d.ts +1 -0
- package/cjs/highlevel/utils/file-utils.test.js +126 -0
- package/cjs/highlevel/utils/file-utils.test.js.map +1 -0
- package/cjs/highlevel/utils/index.d.ts +8 -0
- package/cjs/highlevel/utils/index.js +26 -0
- package/cjs/highlevel/utils/index.js.map +1 -0
- package/cjs/highlevel/utils/inline-utils.d.ts +14 -0
- package/cjs/highlevel/utils/inline-utils.js +65 -0
- package/cjs/highlevel/utils/inline-utils.js.map +1 -0
- package/cjs/highlevel/utils/inline-utils.test.d.ts +1 -0
- package/cjs/highlevel/utils/inline-utils.test.js +47 -0
- package/cjs/highlevel/utils/inline-utils.test.js.map +1 -0
- package/cjs/highlevel/utils/inspectable.d.ts +9 -0
- package/cjs/highlevel/utils/inspectable.js +65 -0
- package/cjs/highlevel/utils/inspectable.js.map +1 -0
- package/cjs/highlevel/utils/inspectable.test.d.ts +1 -0
- package/cjs/highlevel/utils/inspectable.test.js +97 -0
- package/cjs/highlevel/utils/inspectable.test.js.map +1 -0
- package/cjs/highlevel/utils/memoize.d.ts +1 -0
- package/cjs/highlevel/utils/memoize.js +30 -0
- package/cjs/highlevel/utils/memoize.js.map +1 -0
- package/cjs/highlevel/utils/memoize.test.d.ts +1 -0
- package/cjs/highlevel/utils/memoize.test.js +60 -0
- package/cjs/highlevel/utils/memoize.test.js.map +1 -0
- package/cjs/highlevel/utils/misc-utils.d.ts +12 -0
- package/cjs/highlevel/utils/misc-utils.js +43 -0
- package/cjs/highlevel/utils/misc-utils.js.map +1 -0
- package/cjs/highlevel/utils/peer-utils.d.ts +11 -0
- package/cjs/highlevel/utils/peer-utils.js +139 -0
- package/cjs/highlevel/utils/peer-utils.js.map +1 -0
- package/cjs/highlevel/utils/peer-utils.test.d.ts +1 -0
- package/cjs/highlevel/utils/peer-utils.test.js +109 -0
- package/cjs/highlevel/utils/peer-utils.test.js.map +1 -0
- package/cjs/highlevel/utils/platform/storage.d.ts +1 -0
- package/cjs/highlevel/utils/platform/storage.js +10 -0
- package/cjs/highlevel/utils/platform/storage.js.map +1 -0
- package/cjs/highlevel/utils/platform/storage.web.d.ts +1 -0
- package/cjs/highlevel/utils/platform/storage.web.js +14 -0
- package/cjs/highlevel/utils/platform/storage.web.js.map +1 -0
- package/cjs/highlevel/utils/query-batcher.d.ts +48 -0
- package/cjs/highlevel/utils/query-batcher.js +146 -0
- package/cjs/highlevel/utils/query-batcher.js.map +1 -0
- package/cjs/highlevel/utils/query-batcher.test.d.ts +1 -0
- package/cjs/highlevel/utils/query-batcher.test.js +502 -0
- package/cjs/highlevel/utils/query-batcher.test.js.map +1 -0
- package/cjs/highlevel/utils/rps-meter.d.ts +9 -0
- package/cjs/highlevel/utils/rps-meter.js +40 -0
- package/cjs/highlevel/utils/rps-meter.js.map +1 -0
- package/cjs/highlevel/utils/stream-utils.d.ts +8 -0
- package/cjs/highlevel/utils/stream-utils.js +141 -0
- package/cjs/highlevel/utils/stream-utils.js.map +1 -0
- package/cjs/highlevel/utils/stream-utils.test.d.ts +1 -0
- package/cjs/highlevel/utils/stream-utils.test.js +98 -0
- package/cjs/highlevel/utils/stream-utils.test.js.map +1 -0
- package/cjs/highlevel/utils/voice-utils.d.ts +14 -0
- package/cjs/highlevel/utils/voice-utils.js +64 -0
- package/cjs/highlevel/utils/voice-utils.js.map +1 -0
- package/cjs/highlevel/utils/voice-utils.test.d.ts +1 -0
- package/cjs/highlevel/utils/voice-utils.test.js +28 -0
- package/cjs/highlevel/utils/voice-utils.test.js.map +1 -0
- package/cjs/highlevel/worker/app-config.d.ts +13 -0
- package/cjs/highlevel/worker/app-config.js +13 -0
- package/cjs/highlevel/worker/app-config.js.map +1 -0
- package/cjs/highlevel/worker/errors.d.ts +8 -0
- package/cjs/highlevel/worker/errors.js +121 -0
- package/cjs/highlevel/worker/errors.js.map +1 -0
- package/cjs/highlevel/worker/invoker.d.ts +17 -0
- package/cjs/highlevel/worker/invoker.js +60 -0
- package/cjs/highlevel/worker/invoker.js.map +1 -0
- package/cjs/highlevel/worker/platform/connect.d.ts +2 -0
- package/cjs/highlevel/worker/platform/connect.js +19 -0
- package/cjs/highlevel/worker/platform/connect.js.map +1 -0
- package/cjs/highlevel/worker/platform/connect.web.d.ts +2 -0
- package/cjs/highlevel/worker/platform/connect.web.js +51 -0
- package/cjs/highlevel/worker/platform/connect.web.js.map +1 -0
- package/cjs/highlevel/worker/platform/register.d.ts +2 -0
- package/cjs/highlevel/worker/platform/register.js +20 -0
- package/cjs/highlevel/worker/platform/register.js.map +1 -0
- package/cjs/highlevel/worker/platform/register.web.d.ts +2 -0
- package/cjs/highlevel/worker/platform/register.web.js +64 -0
- package/cjs/highlevel/worker/platform/register.web.js.map +1 -0
- package/cjs/highlevel/worker/port.d.ts +53 -0
- package/cjs/highlevel/worker/port.js +94 -0
- package/cjs/highlevel/worker/port.js.map +1 -0
- package/cjs/highlevel/worker/protocol.d.ts +43 -0
- package/cjs/highlevel/worker/protocol.js +3 -0
- package/cjs/highlevel/worker/protocol.js.map +1 -0
- package/cjs/highlevel/worker/storage.d.ts +43 -0
- package/cjs/highlevel/worker/storage.js +66 -0
- package/cjs/highlevel/worker/storage.js.map +1 -0
- package/cjs/highlevel/worker/worker.d.ts +7 -0
- package/cjs/highlevel/worker/worker.js +107 -0
- package/cjs/highlevel/worker/worker.js.map +1 -0
- package/cjs/index.d.ts +1 -2
- package/cjs/index.js +1 -2
- package/cjs/index.js.map +1 -1
- package/cjs/network/authorization.js +7 -4
- package/cjs/network/authorization.js.map +1 -1
- package/cjs/network/client.d.ts +246 -0
- package/cjs/network/client.js +148 -0
- package/cjs/network/client.js.map +1 -0
- package/cjs/network/config-manager.d.ts +3 -17
- package/cjs/network/config-manager.js +8 -51
- package/cjs/network/config-manager.js.map +1 -1
- package/cjs/network/config-manager.test.js +8 -4
- package/cjs/network/config-manager.test.js.map +1 -1
- package/cjs/network/index.d.ts +1 -0
- package/cjs/network/index.js +1 -0
- package/cjs/network/index.js.map +1 -1
- package/cjs/network/mtproto-session.d.ts +1 -0
- package/cjs/network/mtproto-session.js +7 -4
- package/cjs/network/mtproto-session.js.map +1 -1
- package/cjs/network/network-manager.d.ts +11 -14
- package/cjs/network/network-manager.js +40 -51
- package/cjs/network/network-manager.js.map +1 -1
- package/cjs/network/persistent-connection.d.ts +2 -3
- package/cjs/network/persistent-connection.js.map +1 -1
- package/cjs/network/session-connection.js +6 -3
- package/cjs/network/session-connection.js.map +1 -1
- package/cjs/network/transports/abstract.d.ts +6 -6
- package/cjs/network/transports/abstract.js +1 -1
- package/cjs/network/transports/abstract.js.map +1 -1
- package/cjs/network/transports/tcp.d.ts +4 -5
- package/cjs/network/transports/tcp.js.map +1 -1
- package/cjs/network/transports/websocket.d.ts +3 -4
- package/cjs/network/transports/websocket.js +2 -2
- package/cjs/network/transports/websocket.js.map +1 -1
- package/cjs/storage/driver.d.ts +56 -0
- package/cjs/storage/driver.js +41 -0
- package/cjs/storage/driver.js.map +1 -0
- package/cjs/storage/index.d.ts +6 -2
- package/cjs/storage/index.js +6 -2
- package/cjs/storage/index.js.map +1 -1
- package/cjs/storage/provider.d.ts +10 -0
- package/cjs/storage/provider.js +3 -0
- package/cjs/storage/provider.js.map +1 -0
- package/cjs/storage/providers/idb/driver.d.ts +18 -0
- package/cjs/storage/providers/idb/driver.js +138 -0
- package/cjs/storage/providers/idb/driver.js.map +1 -0
- package/cjs/storage/providers/idb/idb.test.d.ts +1 -0
- package/cjs/storage/providers/idb/idb.test.js +29 -0
- package/cjs/storage/providers/idb/idb.test.js.map +1 -0
- package/cjs/storage/providers/idb/index.d.ts +22 -0
- package/cjs/storage/providers/idb/index.js +28 -0
- package/cjs/storage/providers/idb/index.js.map +1 -0
- package/cjs/storage/providers/idb/repository/auth-keys.d.ts +14 -0
- package/cjs/storage/providers/idb/repository/auth-keys.js +70 -0
- package/cjs/storage/providers/idb/repository/auth-keys.js.map +1 -0
- package/cjs/storage/providers/idb/repository/kv.d.ts +11 -0
- package/cjs/storage/providers/idb/repository/kv.js +34 -0
- package/cjs/storage/providers/idb/repository/kv.js.map +1 -0
- package/cjs/storage/providers/idb/repository/peers.d.ts +12 -0
- package/cjs/storage/providers/idb/repository/peers.js +38 -0
- package/cjs/storage/providers/idb/repository/peers.js.map +1 -0
- package/cjs/storage/providers/idb/repository/ref-messages.d.ts +12 -0
- package/cjs/storage/providers/idb/repository/ref-messages.js +57 -0
- package/cjs/storage/providers/idb/repository/ref-messages.js.map +1 -0
- package/cjs/storage/providers/idb/utils.d.ts +3 -0
- package/cjs/storage/providers/idb/utils.js +27 -0
- package/cjs/storage/providers/idb/utils.js.map +1 -0
- package/cjs/storage/providers/memory/driver.d.ts +6 -0
- package/cjs/storage/providers/memory/driver.js +17 -0
- package/cjs/storage/providers/memory/driver.js.map +1 -0
- package/cjs/storage/providers/memory/index.d.ts +22 -0
- package/cjs/storage/providers/memory/index.js +28 -0
- package/cjs/storage/providers/memory/index.js.map +1 -0
- package/cjs/storage/providers/memory/memory.test.d.ts +1 -0
- package/cjs/storage/providers/memory/memory.test.js +13 -0
- package/cjs/storage/providers/memory/memory.test.js.map +1 -0
- package/cjs/storage/providers/memory/repository/auth-keys.d.ts +19 -0
- package/cjs/storage/providers/memory/repository/auth-keys.js +58 -0
- package/cjs/storage/providers/memory/repository/auth-keys.js.map +1 -0
- package/cjs/storage/providers/memory/repository/kv.d.ts +11 -0
- package/cjs/storage/providers/memory/repository/kv.js +23 -0
- package/cjs/storage/providers/memory/repository/kv.js.map +1 -0
- package/cjs/storage/providers/memory/repository/peers.d.ts +18 -0
- package/cjs/storage/providers/memory/repository/peers.js +55 -0
- package/cjs/storage/providers/memory/repository/peers.js.map +1 -0
- package/cjs/storage/providers/memory/repository/ref-messages.d.ts +16 -0
- package/cjs/storage/providers/memory/repository/ref-messages.js +41 -0
- package/cjs/storage/providers/memory/repository/ref-messages.js.map +1 -0
- package/cjs/storage/repository/auth-keys.d.ts +41 -0
- package/cjs/storage/repository/auth-keys.js +3 -0
- package/cjs/storage/repository/auth-keys.js.map +1 -0
- package/cjs/storage/repository/index.d.ts +2 -0
- package/cjs/storage/repository/index.js +19 -0
- package/cjs/storage/repository/index.js.map +1 -0
- package/cjs/storage/repository/key-value.d.ts +10 -0
- package/cjs/storage/repository/key-value.js +3 -0
- package/cjs/storage/repository/key-value.js.map +1 -0
- package/cjs/storage/service/auth-keys.d.ts +9 -0
- package/cjs/storage/service/auth-keys.js +17 -0
- package/cjs/storage/service/auth-keys.js.map +1 -0
- package/cjs/storage/service/auth-keys.test.d.ts +1 -0
- package/cjs/storage/service/auth-keys.test.js +22 -0
- package/cjs/storage/service/auth-keys.test.js.map +1 -0
- package/cjs/storage/service/base.d.ts +19 -0
- package/cjs/storage/service/base.js +25 -0
- package/cjs/storage/service/base.js.map +1 -0
- package/cjs/storage/service/default-dcs.d.ts +10 -0
- package/cjs/storage/service/default-dcs.js +55 -0
- package/cjs/storage/service/default-dcs.js.map +1 -0
- package/cjs/storage/service/future-salts.d.ts +11 -0
- package/cjs/storage/service/future-salts.js +43 -0
- package/cjs/storage/service/future-salts.js.map +1 -0
- package/cjs/storage/service/updates.test.d.ts +1 -0
- package/cjs/storage/service/updates.test.js +60 -0
- package/cjs/storage/service/updates.test.js.map +1 -0
- package/cjs/storage/service/utils.test-utils.d.ts +2 -0
- package/cjs/storage/service/utils.test-utils.js +19 -0
- package/cjs/storage/service/utils.test-utils.js.map +1 -0
- package/cjs/storage/storage.d.ts +32 -0
- package/cjs/storage/storage.js +62 -0
- package/cjs/storage/storage.js.map +1 -0
- package/cjs/types/utils.d.ts +4 -1
- package/cjs/types/utils.js.map +1 -1
- package/cjs/utils/crypto/abstract.d.ts +5 -5
- package/cjs/utils/crypto/abstract.js.map +1 -1
- package/cjs/utils/crypto/factorization.test.d.ts +1 -0
- package/cjs/utils/crypto/factorization.test.js +19 -0
- package/cjs/utils/crypto/factorization.test.js.map +1 -0
- package/cjs/utils/crypto/node.d.ts +2 -2
- package/cjs/utils/crypto/node.js.map +1 -1
- package/cjs/utils/crypto/password.d.ts +1 -1
- package/cjs/utils/crypto/password.js +2 -0
- package/cjs/utils/crypto/password.js.map +1 -1
- package/cjs/utils/dcs.d.ts +13 -0
- package/cjs/utils/dcs.js +94 -0
- package/cjs/utils/dcs.js.map +1 -0
- package/cjs/utils/function-utils.d.ts +6 -0
- package/cjs/utils/function-utils.js +28 -1
- package/cjs/utils/function-utils.js.map +1 -1
- package/cjs/utils/index.d.ts +2 -1
- package/cjs/utils/index.js +2 -1
- package/cjs/utils/index.js.map +1 -1
- package/cjs/utils/logger.js +1 -1
- package/cjs/utils/logger.js.map +1 -1
- package/cjs/utils/peer-utils.d.ts +2 -8
- package/cjs/utils/peer-utils.js +13 -40
- package/cjs/utils/peer-utils.js.map +1 -1
- package/cjs/utils/peer-utils.test.js +7 -19
- package/cjs/utils/peer-utils.test.js.map +1 -1
- package/cjs/utils/reloadable.d.ts +24 -0
- package/cjs/utils/reloadable.js +62 -0
- package/cjs/utils/reloadable.js.map +1 -0
- package/cjs/utils/string-session.d.ts +4 -3
- package/cjs/utils/string-session.js +4 -1
- package/cjs/utils/string-session.js.map +1 -1
- package/cjs/utils/string-session.test.js +33 -8
- package/cjs/utils/string-session.test.js.map +1 -1
- package/esm/highlevel/base.d.ts +111 -0
- package/esm/highlevel/base.js +224 -0
- package/esm/highlevel/base.js.map +1 -0
- package/esm/highlevel/client.d.ts +4412 -0
- package/esm/highlevel/client.js +1062 -0
- package/esm/highlevel/client.js.map +1 -0
- package/esm/highlevel/client.types.d.ts +38 -0
- package/esm/highlevel/client.types.js +2 -0
- package/esm/highlevel/client.types.js.map +1 -0
- package/esm/highlevel/index.d.ts +6 -0
- package/esm/highlevel/index.js +7 -0
- package/esm/highlevel/index.js.map +1 -0
- package/esm/highlevel/managers/app-config-manager.d.ts +12 -0
- package/esm/highlevel/managers/app-config-manager.js +37 -0
- package/esm/highlevel/managers/app-config-manager.js.map +1 -0
- package/esm/highlevel/methods/_imports.d.ts +1 -0
- package/esm/highlevel/methods/_imports.js +3 -0
- package/esm/highlevel/methods/_imports.js.map +1 -0
- package/esm/highlevel/methods/_init.d.ts +1 -0
- package/esm/highlevel/methods/_init.js +65 -0
- package/esm/highlevel/methods/_init.js.map +1 -0
- package/esm/highlevel/methods/auth/check-password.d.ts +10 -0
- package/esm/highlevel/methods/auth/check-password.js +18 -0
- package/esm/highlevel/methods/auth/check-password.js.map +1 -0
- package/esm/highlevel/methods/auth/get-password-hint.d.ts +7 -0
- package/esm/highlevel/methods/auth/get-password-hint.js +13 -0
- package/esm/highlevel/methods/auth/get-password-hint.js.map +1 -0
- package/esm/highlevel/methods/auth/log-out.d.ts +10 -0
- package/esm/highlevel/methods/auth/log-out.js +14 -0
- package/esm/highlevel/methods/auth/log-out.js.map +1 -0
- package/esm/highlevel/methods/auth/recover-password.d.ts +12 -0
- package/esm/highlevel/methods/auth/recover-password.js +16 -0
- package/esm/highlevel/methods/auth/recover-password.js.map +1 -0
- package/esm/highlevel/methods/auth/resend-code.d.ts +14 -0
- package/esm/highlevel/methods/auth/resend-code.js +20 -0
- package/esm/highlevel/methods/auth/resend-code.js.map +1 -0
- package/esm/highlevel/methods/auth/run.d.ts +15 -0
- package/esm/highlevel/methods/auth/run.js +18 -0
- package/esm/highlevel/methods/auth/run.js.map +1 -0
- package/esm/highlevel/methods/auth/send-code.d.ts +11 -0
- package/esm/highlevel/methods/auth/send-code.js +22 -0
- package/esm/highlevel/methods/auth/send-code.js.map +1 -0
- package/esm/highlevel/methods/auth/send-recovery-code.d.ts +7 -0
- package/esm/highlevel/methods/auth/send-recovery-code.js +13 -0
- package/esm/highlevel/methods/auth/send-recovery-code.js.map +1 -0
- package/esm/highlevel/methods/auth/sign-in-bot.d.ts +10 -0
- package/esm/highlevel/methods/auth/sign-in-bot.js +20 -0
- package/esm/highlevel/methods/auth/sign-in-bot.js.map +1 -0
- package/esm/highlevel/methods/auth/sign-in.d.ts +17 -0
- package/esm/highlevel/methods/auth/sign-in.js +20 -0
- package/esm/highlevel/methods/auth/sign-in.js.map +1 -0
- package/esm/highlevel/methods/auth/start-test.d.ts +30 -0
- package/esm/highlevel/methods/auth/start-test.js +62 -0
- package/esm/highlevel/methods/auth/start-test.js.map +1 -0
- package/esm/highlevel/methods/auth/start.d.ts +74 -0
- package/esm/highlevel/methods/auth/start.js +132 -0
- package/esm/highlevel/methods/auth/start.js.map +1 -0
- package/esm/highlevel/methods/auth/utils.d.ts +6 -0
- package/esm/highlevel/methods/auth/utils.js +28 -0
- package/esm/highlevel/methods/auth/utils.js.map +1 -0
- package/esm/highlevel/methods/bots/answer-callback-query.d.ts +41 -0
- package/esm/highlevel/methods/bots/answer-callback-query.js +21 -0
- package/esm/highlevel/methods/bots/answer-callback-query.js.map +1 -0
- package/esm/highlevel/methods/bots/answer-inline-query.d.ts +88 -0
- package/esm/highlevel/methods/bots/answer-inline-query.js +37 -0
- package/esm/highlevel/methods/bots/answer-inline-query.js.map +1 -0
- package/esm/highlevel/methods/bots/answer-pre-checkout-query.d.ts +12 -0
- package/esm/highlevel/methods/bots/answer-pre-checkout-query.js +18 -0
- package/esm/highlevel/methods/bots/answer-pre-checkout-query.js.map +1 -0
- package/esm/highlevel/methods/bots/delete-my-commands.d.ts +22 -0
- package/esm/highlevel/methods/bots/delete-my-commands.js +21 -0
- package/esm/highlevel/methods/bots/delete-my-commands.js.map +1 -0
- package/esm/highlevel/methods/bots/get-bot-info.d.ts +18 -0
- package/esm/highlevel/methods/bots/get-bot-info.js +13 -0
- package/esm/highlevel/methods/bots/get-bot-info.js.map +1 -0
- package/esm/highlevel/methods/bots/get-bot-menu-button.d.ts +7 -0
- package/esm/highlevel/methods/bots/get-bot-menu-button.js +11 -0
- package/esm/highlevel/methods/bots/get-bot-menu-button.js.map +1 -0
- package/esm/highlevel/methods/bots/get-callback-answer.d.ts +30 -0
- package/esm/highlevel/methods/bots/get-callback-answer.js +27 -0
- package/esm/highlevel/methods/bots/get-callback-answer.js.map +1 -0
- package/esm/highlevel/methods/bots/get-game-high-scores.d.ts +17 -0
- package/esm/highlevel/methods/bots/get-game-high-scores.js +50 -0
- package/esm/highlevel/methods/bots/get-game-high-scores.js.map +1 -0
- package/esm/highlevel/methods/bots/get-my-commands.d.ts +21 -0
- package/esm/highlevel/methods/bots/get-my-commands.js +19 -0
- package/esm/highlevel/methods/bots/get-my-commands.js.map +1 -0
- package/esm/highlevel/methods/bots/normalize-command-scope.d.ts +1 -0
- package/esm/highlevel/methods/bots/normalize-command-scope.js +30 -0
- package/esm/highlevel/methods/bots/normalize-command-scope.js.map +1 -0
- package/esm/highlevel/methods/bots/set-bot-info.d.ts +23 -0
- package/esm/highlevel/methods/bots/set-bot-info.js +18 -0
- package/esm/highlevel/methods/bots/set-bot-info.js.map +1 -0
- package/esm/highlevel/methods/bots/set-bot-menu-button.d.ts +7 -0
- package/esm/highlevel/methods/bots/set-bot-menu-button.js +14 -0
- package/esm/highlevel/methods/bots/set-bot-menu-button.js.map +1 -0
- package/esm/highlevel/methods/bots/set-game-score.d.ts +54 -0
- package/esm/highlevel/methods/bots/set-game-score.js +48 -0
- package/esm/highlevel/methods/bots/set-game-score.js.map +1 -0
- package/esm/highlevel/methods/bots/set-my-commands.d.ts +26 -0
- package/esm/highlevel/methods/bots/set-my-commands.js +32 -0
- package/esm/highlevel/methods/bots/set-my-commands.js.map +1 -0
- package/esm/highlevel/methods/bots/set-my-default-rights.d.ts +11 -0
- package/esm/highlevel/methods/bots/set-my-default-rights.js +16 -0
- package/esm/highlevel/methods/bots/set-my-default-rights.js.map +1 -0
- package/esm/highlevel/methods/chats/add-chat-members.d.ts +18 -0
- package/esm/highlevel/methods/chats/add-chat-members.js +39 -0
- package/esm/highlevel/methods/chats/add-chat-members.js.map +1 -0
- package/esm/highlevel/methods/chats/archive-chats.d.ts +9 -0
- package/esm/highlevel/methods/chats/archive-chats.js +21 -0
- package/esm/highlevel/methods/chats/archive-chats.js.map +1 -0
- package/esm/highlevel/methods/chats/ban-chat-member.d.ts +23 -0
- package/esm/highlevel/methods/chats/ban-chat-member.js +44 -0
- package/esm/highlevel/methods/chats/ban-chat-member.js.map +1 -0
- package/esm/highlevel/methods/chats/batched-queries.d.ts +1 -0
- package/esm/highlevel/methods/chats/batched-queries.js +121 -0
- package/esm/highlevel/methods/chats/batched-queries.js.map +1 -0
- package/esm/highlevel/methods/chats/create-channel.d.ts +17 -0
- package/esm/highlevel/methods/chats/create-channel.js +20 -0
- package/esm/highlevel/methods/chats/create-channel.js.map +1 -0
- package/esm/highlevel/methods/chats/create-group.d.ts +26 -0
- package/esm/highlevel/methods/chats/create-group.js +26 -0
- package/esm/highlevel/methods/chats/create-group.js.map +1 -0
- package/esm/highlevel/methods/chats/create-supergroup.d.ts +27 -0
- package/esm/highlevel/methods/chats/create-supergroup.js +22 -0
- package/esm/highlevel/methods/chats/create-supergroup.js.map +1 -0
- package/esm/highlevel/methods/chats/delete-channel.d.ts +8 -0
- package/esm/highlevel/methods/chats/delete-channel.js +15 -0
- package/esm/highlevel/methods/chats/delete-channel.js.map +1 -0
- package/esm/highlevel/methods/chats/delete-chat-photo.d.ts +10 -0
- package/esm/highlevel/methods/chats/delete-chat-photo.js +32 -0
- package/esm/highlevel/methods/chats/delete-chat-photo.js.map +1 -0
- package/esm/highlevel/methods/chats/delete-group.d.ts +8 -0
- package/esm/highlevel/methods/chats/delete-group.js +27 -0
- package/esm/highlevel/methods/chats/delete-group.js.map +1 -0
- package/esm/highlevel/methods/chats/delete-history.d.ts +24 -0
- package/esm/highlevel/methods/chats/delete-history.js +24 -0
- package/esm/highlevel/methods/chats/delete-history.js.map +1 -0
- package/esm/highlevel/methods/chats/delete-user-history.d.ts +11 -0
- package/esm/highlevel/methods/chats/delete-user-history.js +17 -0
- package/esm/highlevel/methods/chats/delete-user-history.js.map +1 -0
- package/esm/highlevel/methods/chats/edit-admin-rights.d.ts +16 -0
- package/esm/highlevel/methods/chats/edit-admin-rights.js +21 -0
- package/esm/highlevel/methods/chats/edit-admin-rights.js.map +1 -0
- package/esm/highlevel/methods/chats/get-chat-event-log.d.ts +61 -0
- package/esm/highlevel/methods/chats/get-chat-event-log.js +48 -0
- package/esm/highlevel/methods/chats/get-chat-event-log.js.map +1 -0
- package/esm/highlevel/methods/chats/get-chat-member.d.ts +15 -0
- package/esm/highlevel/methods/chats/get-chat-member.js +56 -0
- package/esm/highlevel/methods/chats/get-chat-member.js.map +1 -0
- package/esm/highlevel/methods/chats/get-chat-members.d.ts +51 -0
- package/esm/highlevel/methods/chats/get-chat-members.js +80 -0
- package/esm/highlevel/methods/chats/get-chat-members.js.map +1 -0
- package/esm/highlevel/methods/chats/get-chat-preview.d.ts +12 -0
- package/esm/highlevel/methods/chats/get-chat-preview.js +26 -0
- package/esm/highlevel/methods/chats/get-chat-preview.js.map +1 -0
- package/esm/highlevel/methods/chats/get-chat.d.ts +11 -0
- package/esm/highlevel/methods/chats/get-chat.js +35 -0
- package/esm/highlevel/methods/chats/get-chat.js.map +1 -0
- package/esm/highlevel/methods/chats/get-full-chat.d.ts +11 -0
- package/esm/highlevel/methods/chats/get-full-chat.js +53 -0
- package/esm/highlevel/methods/chats/get-full-chat.js.map +1 -0
- package/esm/highlevel/methods/chats/get-nearby-chats.d.ts +9 -0
- package/esm/highlevel/methods/chats/get-nearby-chats.js +38 -0
- package/esm/highlevel/methods/chats/get-nearby-chats.js.map +1 -0
- package/esm/highlevel/methods/chats/get-similar-channels.d.ts +12 -0
- package/esm/highlevel/methods/chats/get-similar-channels.js +27 -0
- package/esm/highlevel/methods/chats/get-similar-channels.js.map +1 -0
- package/esm/highlevel/methods/chats/iter-chat-event-log.d.ts +26 -0
- package/esm/highlevel/methods/chats/iter-chat-event-log.js +50 -0
- package/esm/highlevel/methods/chats/iter-chat-event-log.js.map +1 -0
- package/esm/highlevel/methods/chats/iter-chat-members.d.ts +22 -0
- package/esm/highlevel/methods/chats/iter-chat-members.js +49 -0
- package/esm/highlevel/methods/chats/iter-chat-members.js.map +1 -0
- package/esm/highlevel/methods/chats/join-chat.d.ts +14 -0
- package/esm/highlevel/methods/chats/join-chat.js +37 -0
- package/esm/highlevel/methods/chats/join-chat.js.map +1 -0
- package/esm/highlevel/methods/chats/kick-chat-member.d.ts +15 -0
- package/esm/highlevel/methods/chats/kick-chat-member.js +26 -0
- package/esm/highlevel/methods/chats/kick-chat-member.js.map +1 -0
- package/esm/highlevel/methods/chats/leave-chat.d.ts +13 -0
- package/esm/highlevel/methods/chats/leave-chat.js +33 -0
- package/esm/highlevel/methods/chats/leave-chat.js.map +1 -0
- package/esm/highlevel/methods/chats/mark-chat-unread.d.ts +8 -0
- package/esm/highlevel/methods/chats/mark-chat-unread.js +19 -0
- package/esm/highlevel/methods/chats/mark-chat-unread.js.map +1 -0
- package/esm/highlevel/methods/chats/open-chat.d.ts +21 -0
- package/esm/highlevel/methods/chats/open-chat.js +38 -0
- package/esm/highlevel/methods/chats/open-chat.js.map +1 -0
- package/esm/highlevel/methods/chats/reorder-usernames.d.ts +8 -0
- package/esm/highlevel/methods/chats/reorder-usernames.js +40 -0
- package/esm/highlevel/methods/chats/reorder-usernames.js.map +1 -0
- package/esm/highlevel/methods/chats/restrict-chat-member.d.ts +28 -0
- package/esm/highlevel/methods/chats/restrict-chat-member.js +27 -0
- package/esm/highlevel/methods/chats/restrict-chat-member.js.map +1 -0
- package/esm/highlevel/methods/chats/save-draft.d.ts +10 -0
- package/esm/highlevel/methods/chats/save-draft.js +25 -0
- package/esm/highlevel/methods/chats/save-draft.js.map +1 -0
- package/esm/highlevel/methods/chats/set-chat-color.d.ts +38 -0
- package/esm/highlevel/methods/chats/set-chat-color.js +38 -0
- package/esm/highlevel/methods/chats/set-chat-color.js.map +1 -0
- package/esm/highlevel/methods/chats/set-chat-default-permissions.d.ts +16 -0
- package/esm/highlevel/methods/chats/set-chat-default-permissions.js +31 -0
- package/esm/highlevel/methods/chats/set-chat-default-permissions.js.map +1 -0
- package/esm/highlevel/methods/chats/set-chat-description.d.ts +11 -0
- package/esm/highlevel/methods/chats/set-chat-description.js +20 -0
- package/esm/highlevel/methods/chats/set-chat-description.js.map +1 -0
- package/esm/highlevel/methods/chats/set-chat-photo.d.ts +20 -0
- package/esm/highlevel/methods/chats/set-chat-photo.js +86 -0
- package/esm/highlevel/methods/chats/set-chat-photo.js.map +1 -0
- package/esm/highlevel/methods/chats/set-chat-title.d.ts +11 -0
- package/esm/highlevel/methods/chats/set-chat-title.js +33 -0
- package/esm/highlevel/methods/chats/set-chat-title.js.map +1 -0
- package/esm/highlevel/methods/chats/set-chat-ttl.d.ts +9 -0
- package/esm/highlevel/methods/chats/set-chat-ttl.js +15 -0
- package/esm/highlevel/methods/chats/set-chat-ttl.js.map +1 -0
- package/esm/highlevel/methods/chats/set-chat-username.d.ts +11 -0
- package/esm/highlevel/methods/chats/set-chat-username.js +19 -0
- package/esm/highlevel/methods/chats/set-chat-username.js.map +1 -0
- package/esm/highlevel/methods/chats/set-slow-mode.d.ts +12 -0
- package/esm/highlevel/methods/chats/set-slow-mode.js +19 -0
- package/esm/highlevel/methods/chats/set-slow-mode.js.map +1 -0
- package/esm/highlevel/methods/chats/toggle-content-protection.d.ts +9 -0
- package/esm/highlevel/methods/chats/toggle-content-protection.js +16 -0
- package/esm/highlevel/methods/chats/toggle-content-protection.js.map +1 -0
- package/esm/highlevel/methods/chats/toggle-fragment-username.d.ts +20 -0
- package/esm/highlevel/methods/chats/toggle-fragment-username.js +45 -0
- package/esm/highlevel/methods/chats/toggle-fragment-username.js.map +1 -0
- package/esm/highlevel/methods/chats/toggle-join-requests.d.ts +12 -0
- package/esm/highlevel/methods/chats/toggle-join-requests.js +19 -0
- package/esm/highlevel/methods/chats/toggle-join-requests.js.map +1 -0
- package/esm/highlevel/methods/chats/toggle-join-to-send.d.ts +12 -0
- package/esm/highlevel/methods/chats/toggle-join-to-send.js +19 -0
- package/esm/highlevel/methods/chats/toggle-join-to-send.js.map +1 -0
- package/esm/highlevel/methods/chats/unarchive-chats.d.ts +9 -0
- package/esm/highlevel/methods/chats/unarchive-chats.js +24 -0
- package/esm/highlevel/methods/chats/unarchive-chats.js.map +1 -0
- package/esm/highlevel/methods/chats/unban-chat-member.d.ts +16 -0
- package/esm/highlevel/methods/chats/unban-chat-member.js +35 -0
- package/esm/highlevel/methods/chats/unban-chat-member.js.map +1 -0
- package/esm/highlevel/methods/contacts/add-contact.d.ts +28 -0
- package/esm/highlevel/methods/contacts/add-contact.js +22 -0
- package/esm/highlevel/methods/contacts/add-contact.js.map +1 -0
- package/esm/highlevel/methods/contacts/delete-contacts.d.ts +12 -0
- package/esm/highlevel/methods/contacts/delete-contacts.js +28 -0
- package/esm/highlevel/methods/contacts/delete-contacts.js.map +1 -0
- package/esm/highlevel/methods/contacts/get-contacts.d.ts +6 -0
- package/esm/highlevel/methods/contacts/get-contacts.js +15 -0
- package/esm/highlevel/methods/contacts/get-contacts.js.map +1 -0
- package/esm/highlevel/methods/contacts/import-contacts.d.ts +9 -0
- package/esm/highlevel/methods/contacts/import-contacts.js +19 -0
- package/esm/highlevel/methods/contacts/import-contacts.js.map +1 -0
- package/esm/highlevel/methods/dialogs/create-folder.d.ts +13 -0
- package/esm/highlevel/methods/dialogs/create-folder.js +41 -0
- package/esm/highlevel/methods/dialogs/create-folder.js.map +1 -0
- package/esm/highlevel/methods/dialogs/delete-folder.d.ts +8 -0
- package/esm/highlevel/methods/dialogs/delete-folder.js +14 -0
- package/esm/highlevel/methods/dialogs/delete-folder.js.map +1 -0
- package/esm/highlevel/methods/dialogs/edit-folder.d.ts +18 -0
- package/esm/highlevel/methods/dialogs/edit-folder.js +35 -0
- package/esm/highlevel/methods/dialogs/edit-folder.js.map +1 -0
- package/esm/highlevel/methods/dialogs/find-folder.d.ts +19 -0
- package/esm/highlevel/methods/dialogs/find-folder.js +29 -0
- package/esm/highlevel/methods/dialogs/find-folder.js.map +1 -0
- package/esm/highlevel/methods/dialogs/get-folders.d.ts +6 -0
- package/esm/highlevel/methods/dialogs/get-folders.js +27 -0
- package/esm/highlevel/methods/dialogs/get-folders.js.map +1 -0
- package/esm/highlevel/methods/dialogs/get-peer-dialogs.d.ts +10 -0
- package/esm/highlevel/methods/dialogs/get-peer-dialogs.js +20 -0
- package/esm/highlevel/methods/dialogs/get-peer-dialogs.js.map +1 -0
- package/esm/highlevel/methods/dialogs/iter-dialogs.d.ts +103 -0
- package/esm/highlevel/methods/dialogs/iter-dialogs.js +141 -0
- package/esm/highlevel/methods/dialogs/iter-dialogs.js.map +1 -0
- package/esm/highlevel/methods/dialogs/set-folders-order.d.ts +7 -0
- package/esm/highlevel/methods/dialogs/set-folders-order.js +14 -0
- package/esm/highlevel/methods/dialogs/set-folders-order.js.map +1 -0
- package/esm/highlevel/methods/files/_platform.d.ts +1 -0
- package/esm/highlevel/methods/files/_platform.js +26 -0
- package/esm/highlevel/methods/files/_platform.js.map +1 -0
- package/esm/highlevel/methods/files/_platform.web.d.ts +1 -0
- package/esm/highlevel/methods/files/_platform.web.js +19 -0
- package/esm/highlevel/methods/files/_platform.web.js.map +1 -0
- package/esm/highlevel/methods/files/download-buffer.d.ts +11 -0
- package/esm/highlevel/methods/files/download-buffer.js +22 -0
- package/esm/highlevel/methods/files/download-buffer.js.map +1 -0
- package/esm/highlevel/methods/files/download-file.d.ts +10 -0
- package/esm/highlevel/methods/files/download-file.js +31 -0
- package/esm/highlevel/methods/files/download-file.js.map +1 -0
- package/esm/highlevel/methods/files/download-file.web.d.ts +1 -0
- package/esm/highlevel/methods/files/download-file.web.js +5 -0
- package/esm/highlevel/methods/files/download-file.web.js.map +1 -0
- package/esm/highlevel/methods/files/download-iterable.d.ts +10 -0
- package/esm/highlevel/methods/files/download-iterable.js +180 -0
- package/esm/highlevel/methods/files/download-iterable.js.map +1 -0
- package/esm/highlevel/methods/files/download-stream.d.ts +9 -0
- package/esm/highlevel/methods/files/download-stream.js +34 -0
- package/esm/highlevel/methods/files/download-stream.js.map +1 -0
- package/esm/highlevel/methods/files/normalize-file-to-document.d.ts +1 -0
- package/esm/highlevel/methods/files/normalize-file-to-document.js +19 -0
- package/esm/highlevel/methods/files/normalize-file-to-document.js.map +1 -0
- package/esm/highlevel/methods/files/normalize-input-file.d.ts +13 -0
- package/esm/highlevel/methods/files/normalize-input-file.js +38 -0
- package/esm/highlevel/methods/files/normalize-input-file.js.map +1 -0
- package/esm/highlevel/methods/files/normalize-input-media.d.ts +11 -0
- package/esm/highlevel/methods/files/normalize-input-media.js +359 -0
- package/esm/highlevel/methods/files/normalize-input-media.js.map +1 -0
- package/esm/highlevel/methods/files/upload-file.d.ts +67 -0
- package/esm/highlevel/methods/files/upload-file.js +213 -0
- package/esm/highlevel/methods/files/upload-file.js.map +1 -0
- package/esm/highlevel/methods/files/upload-media.d.ts +28 -0
- package/esm/highlevel/methods/files/upload-media.js +64 -0
- package/esm/highlevel/methods/files/upload-media.js.map +1 -0
- package/esm/highlevel/methods/forums/create-forum-topic.d.ts +36 -0
- package/esm/highlevel/methods/forums/create-forum-topic.js +24 -0
- package/esm/highlevel/methods/forums/create-forum-topic.js.map +1 -0
- package/esm/highlevel/methods/forums/delete-forum-topic-history.d.ts +9 -0
- package/esm/highlevel/methods/forums/delete-forum-topic-history.js +20 -0
- package/esm/highlevel/methods/forums/delete-forum-topic-history.js.map +1 -0
- package/esm/highlevel/methods/forums/edit-forum-topic.d.ts +34 -0
- package/esm/highlevel/methods/forums/edit-forum-topic.js +24 -0
- package/esm/highlevel/methods/forums/edit-forum-topic.js.map +1 -0
- package/esm/highlevel/methods/forums/get-forum-topics-by-id.d.ts +9 -0
- package/esm/highlevel/methods/forums/get-forum-topics-by-id.js +18 -0
- package/esm/highlevel/methods/forums/get-forum-topics-by-id.js.map +1 -0
- package/esm/highlevel/methods/forums/get-forum-topics.d.ts +28 -0
- package/esm/highlevel/methods/forums/get-forum-topics.js +38 -0
- package/esm/highlevel/methods/forums/get-forum-topics.js.map +1 -0
- package/esm/highlevel/methods/forums/iter-forum-topics.d.ts +20 -0
- package/esm/highlevel/methods/forums/iter-forum-topics.js +31 -0
- package/esm/highlevel/methods/forums/iter-forum-topics.js.map +1 -0
- package/esm/highlevel/methods/forums/reorder-pinned-forum-topics.d.ts +19 -0
- package/esm/highlevel/methods/forums/reorder-pinned-forum-topics.js +16 -0
- package/esm/highlevel/methods/forums/reorder-pinned-forum-topics.js.map +1 -0
- package/esm/highlevel/methods/forums/toggle-forum-topic-closed.d.ts +22 -0
- package/esm/highlevel/methods/forums/toggle-forum-topic-closed.js +20 -0
- package/esm/highlevel/methods/forums/toggle-forum-topic-closed.js.map +1 -0
- package/esm/highlevel/methods/forums/toggle-forum-topic-pinned.d.ts +15 -0
- package/esm/highlevel/methods/forums/toggle-forum-topic-pinned.js +16 -0
- package/esm/highlevel/methods/forums/toggle-forum-topic-pinned.js.map +1 -0
- package/esm/highlevel/methods/forums/toggle-forum.d.ts +11 -0
- package/esm/highlevel/methods/forums/toggle-forum.js +18 -0
- package/esm/highlevel/methods/forums/toggle-forum.js.map +1 -0
- package/esm/highlevel/methods/forums/toggle-general-topic-hidden.d.ts +20 -0
- package/esm/highlevel/methods/forums/toggle-general-topic-hidden.js +20 -0
- package/esm/highlevel/methods/forums/toggle-general-topic-hidden.js.map +1 -0
- package/esm/highlevel/methods/invite-links/create-invite-link.d.ts +31 -0
- package/esm/highlevel/methods/invite-links/create-invite-link.js +24 -0
- package/esm/highlevel/methods/invite-links/create-invite-link.js.map +1 -0
- package/esm/highlevel/methods/invite-links/edit-invite-link.d.ts +36 -0
- package/esm/highlevel/methods/invite-links/edit-invite-link.js +28 -0
- package/esm/highlevel/methods/invite-links/edit-invite-link.js.map +1 -0
- package/esm/highlevel/methods/invite-links/export-invite-link.d.ts +12 -0
- package/esm/highlevel/methods/invite-links/export-invite-link.js +20 -0
- package/esm/highlevel/methods/invite-links/export-invite-link.js.map +1 -0
- package/esm/highlevel/methods/invite-links/get-invite-link-members.d.ts +45 -0
- package/esm/highlevel/methods/invite-links/get-invite-link-members.js +39 -0
- package/esm/highlevel/methods/invite-links/get-invite-link-members.js.map +1 -0
- package/esm/highlevel/methods/invite-links/get-invite-link.d.ts +9 -0
- package/esm/highlevel/methods/invite-links/get-invite-link.js +18 -0
- package/esm/highlevel/methods/invite-links/get-invite-link.js.map +1 -0
- package/esm/highlevel/methods/invite-links/get-invite-links.d.ts +39 -0
- package/esm/highlevel/methods/invite-links/get-invite-links.js +39 -0
- package/esm/highlevel/methods/invite-links/get-invite-links.js.map +1 -0
- package/esm/highlevel/methods/invite-links/get-primary-invite-link.d.ts +8 -0
- package/esm/highlevel/methods/invite-links/get-primary-invite-link.js +26 -0
- package/esm/highlevel/methods/invite-links/get-primary-invite-link.js.map +1 -0
- package/esm/highlevel/methods/invite-links/hide-all-join-requests.d.ts +13 -0
- package/esm/highlevel/methods/invite-links/hide-all-join-requests.js +14 -0
- package/esm/highlevel/methods/invite-links/hide-all-join-requests.js.map +1 -0
- package/esm/highlevel/methods/invite-links/hide-join-request.d.ts +13 -0
- package/esm/highlevel/methods/invite-links/hide-join-request.js +15 -0
- package/esm/highlevel/methods/invite-links/hide-join-request.js.map +1 -0
- package/esm/highlevel/methods/invite-links/iter-invite-link-members.d.ts +25 -0
- package/esm/highlevel/methods/invite-links/iter-invite-link-members.js +39 -0
- package/esm/highlevel/methods/invite-links/iter-invite-link-members.js.map +1 -0
- package/esm/highlevel/methods/invite-links/iter-invite-links.d.ts +27 -0
- package/esm/highlevel/methods/invite-links/iter-invite-links.js +41 -0
- package/esm/highlevel/methods/invite-links/iter-invite-links.js.map +1 -0
- package/esm/highlevel/methods/invite-links/revoke-invite-link.d.ts +13 -0
- package/esm/highlevel/methods/invite-links/revoke-invite-link.js +24 -0
- package/esm/highlevel/methods/invite-links/revoke-invite-link.js.map +1 -0
- package/esm/highlevel/methods/messages/close-poll.d.ts +15 -0
- package/esm/highlevel/methods/messages/close-poll.js +40 -0
- package/esm/highlevel/methods/messages/close-poll.js.map +1 -0
- package/esm/highlevel/methods/messages/delete-messages.d.ts +24 -0
- package/esm/highlevel/methods/messages/delete-messages.js +59 -0
- package/esm/highlevel/methods/messages/delete-messages.js.map +1 -0
- package/esm/highlevel/methods/messages/delete-scheduled-messages.d.ts +9 -0
- package/esm/highlevel/methods/messages/delete-scheduled-messages.js +17 -0
- package/esm/highlevel/methods/messages/delete-scheduled-messages.js.map +1 -0
- package/esm/highlevel/methods/messages/edit-inline-message.d.ts +51 -0
- package/esm/highlevel/methods/messages/edit-inline-message.js +53 -0
- package/esm/highlevel/methods/messages/edit-inline-message.js.map +1 -0
- package/esm/highlevel/methods/messages/edit-message.d.ts +54 -0
- package/esm/highlevel/methods/messages/edit-message.js +42 -0
- package/esm/highlevel/methods/messages/edit-message.js.map +1 -0
- package/esm/highlevel/methods/messages/find-in-update.d.ts +1 -0
- package/esm/highlevel/methods/messages/find-in-update.js +26 -0
- package/esm/highlevel/methods/messages/find-in-update.js.map +1 -0
- package/esm/highlevel/methods/messages/forward-messages.d.ts +73 -0
- package/esm/highlevel/methods/messages/forward-messages.js +67 -0
- package/esm/highlevel/methods/messages/forward-messages.js.map +1 -0
- package/esm/highlevel/methods/messages/get-callback-query-message.d.ts +14 -0
- package/esm/highlevel/methods/messages/get-callback-query-message.js +52 -0
- package/esm/highlevel/methods/messages/get-callback-query-message.js.map +1 -0
- package/esm/highlevel/methods/messages/get-discussion-message.d.ts +17 -0
- package/esm/highlevel/methods/messages/get-discussion-message.js +58 -0
- package/esm/highlevel/methods/messages/get-discussion-message.js.map +1 -0
- package/esm/highlevel/methods/messages/get-history.d.ts +61 -0
- package/esm/highlevel/methods/messages/get-history.js +47 -0
- package/esm/highlevel/methods/messages/get-history.js.map +1 -0
- package/esm/highlevel/methods/messages/get-message-by-link.d.ts +6 -0
- package/esm/highlevel/methods/messages/get-message-by-link.js +30 -0
- package/esm/highlevel/methods/messages/get-message-by-link.js.map +1 -0
- package/esm/highlevel/methods/messages/get-message-group.d.ts +9 -0
- package/esm/highlevel/methods/messages/get-message-group.js +32 -0
- package/esm/highlevel/methods/messages/get-message-group.js.map +1 -0
- package/esm/highlevel/methods/messages/get-message-reactions.d.ts +28 -0
- package/esm/highlevel/methods/messages/get-message-reactions.js +53 -0
- package/esm/highlevel/methods/messages/get-message-reactions.js.map +1 -0
- package/esm/highlevel/methods/messages/get-messages-unsafe.d.ts +19 -0
- package/esm/highlevel/methods/messages/get-messages-unsafe.js +38 -0
- package/esm/highlevel/methods/messages/get-messages-unsafe.js.map +1 -0
- package/esm/highlevel/methods/messages/get-messages.d.ts +17 -0
- package/esm/highlevel/methods/messages/get-messages.js +72 -0
- package/esm/highlevel/methods/messages/get-messages.js.map +1 -0
- package/esm/highlevel/methods/messages/get-reaction-users.d.ts +24 -0
- package/esm/highlevel/methods/messages/get-reaction-users.js +25 -0
- package/esm/highlevel/methods/messages/get-reaction-users.js.map +1 -0
- package/esm/highlevel/methods/messages/get-reply-to.d.ts +10 -0
- package/esm/highlevel/methods/messages/get-reply-to.js +21 -0
- package/esm/highlevel/methods/messages/get-reply-to.js.map +1 -0
- package/esm/highlevel/methods/messages/get-scheduled-messages.d.ts +13 -0
- package/esm/highlevel/methods/messages/get-scheduled-messages.js +31 -0
- package/esm/highlevel/methods/messages/get-scheduled-messages.js.map +1 -0
- package/esm/highlevel/methods/messages/iter-history.d.ts +23 -0
- package/esm/highlevel/methods/messages/iter-history.js +37 -0
- package/esm/highlevel/methods/messages/iter-history.js.map +1 -0
- package/esm/highlevel/methods/messages/iter-reaction-users.d.ts +26 -0
- package/esm/highlevel/methods/messages/iter-reaction-users.js +36 -0
- package/esm/highlevel/methods/messages/iter-reaction-users.js.map +1 -0
- package/esm/highlevel/methods/messages/iter-search-global.d.ts +27 -0
- package/esm/highlevel/methods/messages/iter-search-global.js +42 -0
- package/esm/highlevel/methods/messages/iter-search-global.js.map +1 -0
- package/esm/highlevel/methods/messages/iter-search-messages.d.ts +26 -0
- package/esm/highlevel/methods/messages/iter-search-messages.js +51 -0
- package/esm/highlevel/methods/messages/iter-search-messages.js.map +1 -0
- package/esm/highlevel/methods/messages/pin-message.d.ts +21 -0
- package/esm/highlevel/methods/messages/pin-message.js +24 -0
- package/esm/highlevel/methods/messages/pin-message.js.map +1 -0
- package/esm/highlevel/methods/messages/read-history.d.ts +19 -0
- package/esm/highlevel/methods/messages/read-history.js +42 -0
- package/esm/highlevel/methods/messages/read-history.js.map +1 -0
- package/esm/highlevel/methods/messages/read-reactions.d.ts +8 -0
- package/esm/highlevel/methods/messages/read-reactions.js +15 -0
- package/esm/highlevel/methods/messages/read-reactions.js.map +1 -0
- package/esm/highlevel/methods/messages/search-global.d.ts +47 -0
- package/esm/highlevel/methods/messages/search-global.js +46 -0
- package/esm/highlevel/methods/messages/search-global.js.map +1 -0
- package/esm/highlevel/methods/messages/search-messages.d.ts +93 -0
- package/esm/highlevel/methods/messages/search-messages.js +43 -0
- package/esm/highlevel/methods/messages/search-messages.js.map +1 -0
- package/esm/highlevel/methods/messages/send-answer.d.ts +12 -0
- package/esm/highlevel/methods/messages/send-answer.js +31 -0
- package/esm/highlevel/methods/messages/send-answer.js.map +1 -0
- package/esm/highlevel/methods/messages/send-comment.d.ts +39 -0
- package/esm/highlevel/methods/messages/send-comment.js +69 -0
- package/esm/highlevel/methods/messages/send-comment.js.map +1 -0
- package/esm/highlevel/methods/messages/send-common.d.ts +83 -0
- package/esm/highlevel/methods/messages/send-common.js +64 -0
- package/esm/highlevel/methods/messages/send-common.js.map +1 -0
- package/esm/highlevel/methods/messages/send-copy-group.d.ts +21 -0
- package/esm/highlevel/methods/messages/send-copy-group.js +37 -0
- package/esm/highlevel/methods/messages/send-copy-group.js.map +1 -0
- package/esm/highlevel/methods/messages/send-copy.d.ts +32 -0
- package/esm/highlevel/methods/messages/send-copy.js +53 -0
- package/esm/highlevel/methods/messages/send-copy.js.map +1 -0
- package/esm/highlevel/methods/messages/send-media-group.d.ts +35 -0
- package/esm/highlevel/methods/messages/send-media-group.js +72 -0
- package/esm/highlevel/methods/messages/send-media-group.js.map +1 -0
- package/esm/highlevel/methods/messages/send-media.d.ts +48 -0
- package/esm/highlevel/methods/messages/send-media.js +54 -0
- package/esm/highlevel/methods/messages/send-media.js.map +1 -0
- package/esm/highlevel/methods/messages/send-quote.d.ts +33 -0
- package/esm/highlevel/methods/messages/send-quote.js +60 -0
- package/esm/highlevel/methods/messages/send-quote.js.map +1 -0
- package/esm/highlevel/methods/messages/send-reaction.d.ts +21 -0
- package/esm/highlevel/methods/messages/send-reaction.js +35 -0
- package/esm/highlevel/methods/messages/send-reaction.js.map +1 -0
- package/esm/highlevel/methods/messages/send-reply.d.ts +12 -0
- package/esm/highlevel/methods/messages/send-reply.js +22 -0
- package/esm/highlevel/methods/messages/send-reply.js.map +1 -0
- package/esm/highlevel/methods/messages/send-scheduled.d.ts +14 -0
- package/esm/highlevel/methods/messages/send-scheduled.js +30 -0
- package/esm/highlevel/methods/messages/send-scheduled.js.map +1 -0
- package/esm/highlevel/methods/messages/send-text.d.ts +31 -0
- package/esm/highlevel/methods/messages/send-text.js +91 -0
- package/esm/highlevel/methods/messages/send-text.js.map +1 -0
- package/esm/highlevel/methods/messages/send-text.test.d.ts +1 -0
- package/esm/highlevel/methods/messages/send-text.test.js +135 -0
- package/esm/highlevel/methods/messages/send-text.test.js.map +1 -0
- package/esm/highlevel/methods/messages/send-typing.d.ts +25 -0
- package/esm/highlevel/methods/messages/send-typing.js +80 -0
- package/esm/highlevel/methods/messages/send-typing.js.map +1 -0
- package/esm/highlevel/methods/messages/send-vote.d.ts +15 -0
- package/esm/highlevel/methods/messages/send-vote.js +52 -0
- package/esm/highlevel/methods/messages/send-vote.js.map +1 -0
- package/esm/highlevel/methods/messages/translate-message.d.ts +11 -0
- package/esm/highlevel/methods/messages/translate-message.js +22 -0
- package/esm/highlevel/methods/messages/translate-message.js.map +1 -0
- package/esm/highlevel/methods/messages/translate-text.d.ts +9 -0
- package/esm/highlevel/methods/messages/translate-text.js +30 -0
- package/esm/highlevel/methods/messages/translate-text.js.map +1 -0
- package/esm/highlevel/methods/messages/unpin-all-messages.d.ts +13 -0
- package/esm/highlevel/methods/messages/unpin-all-messages.js +24 -0
- package/esm/highlevel/methods/messages/unpin-all-messages.js.map +1 -0
- package/esm/highlevel/methods/messages/unpin-message.d.ts +12 -0
- package/esm/highlevel/methods/messages/unpin-message.js +22 -0
- package/esm/highlevel/methods/messages/unpin-message.js.map +1 -0
- package/esm/highlevel/methods/misc/chain-id.d.ts +1 -0
- package/esm/highlevel/methods/misc/chain-id.js +7 -0
- package/esm/highlevel/methods/misc/chain-id.js.map +1 -0
- package/esm/highlevel/methods/misc/init-takeout-session.d.ts +9 -0
- package/esm/highlevel/methods/misc/init-takeout-session.js +13 -0
- package/esm/highlevel/methods/misc/init-takeout-session.js.map +1 -0
- package/esm/highlevel/methods/misc/normalize-privacy-rules.d.ts +8 -0
- package/esm/highlevel/methods/misc/normalize-privacy-rules.js +39 -0
- package/esm/highlevel/methods/misc/normalize-privacy-rules.js.map +1 -0
- package/esm/highlevel/methods/misc/normalize-text.d.ts +1 -0
- package/esm/highlevel/methods/misc/normalize-text.js +30 -0
- package/esm/highlevel/methods/misc/normalize-text.js.map +1 -0
- package/esm/highlevel/methods/password/change-cloud-password.d.ts +12 -0
- package/esm/highlevel/methods/password/change-cloud-password.js +25 -0
- package/esm/highlevel/methods/password/change-cloud-password.js.map +1 -0
- package/esm/highlevel/methods/password/enable-cloud-password.d.ts +17 -0
- package/esm/highlevel/methods/password/enable-cloud-password.js +32 -0
- package/esm/highlevel/methods/password/enable-cloud-password.js.map +1 -0
- package/esm/highlevel/methods/password/password-email.d.ts +15 -0
- package/esm/highlevel/methods/password/password-email.js +32 -0
- package/esm/highlevel/methods/password/password-email.js.map +1 -0
- package/esm/highlevel/methods/password/remove-cloud-password.d.ts +7 -0
- package/esm/highlevel/methods/password/remove-cloud-password.js +24 -0
- package/esm/highlevel/methods/password/remove-cloud-password.js.map +1 -0
- package/esm/highlevel/methods/premium/apply-boost.d.ts +8 -0
- package/esm/highlevel/methods/premium/apply-boost.js +13 -0
- package/esm/highlevel/methods/premium/apply-boost.js.map +1 -0
- package/esm/highlevel/methods/premium/can-apply-boost.d.ts +29 -0
- package/esm/highlevel/methods/premium/can-apply-boost.js +29 -0
- package/esm/highlevel/methods/premium/can-apply-boost.js.map +1 -0
- package/esm/highlevel/methods/premium/get-boost-stats.d.ts +9 -0
- package/esm/highlevel/methods/premium/get-boost-stats.js +16 -0
- package/esm/highlevel/methods/premium/get-boost-stats.js.map +1 -0
- package/esm/highlevel/methods/premium/get-boosts.d.ts +18 -0
- package/esm/highlevel/methods/premium/get-boosts.js +19 -0
- package/esm/highlevel/methods/premium/get-boosts.js.map +1 -0
- package/esm/highlevel/methods/premium/get-my-boost-slots.d.ts +9 -0
- package/esm/highlevel/methods/premium/get-my-boost-slots.js +16 -0
- package/esm/highlevel/methods/premium/get-my-boost-slots.js.map +1 -0
- package/esm/highlevel/methods/premium/iter-boosters.d.ts +26 -0
- package/esm/highlevel/methods/premium/iter-boosters.js +32 -0
- package/esm/highlevel/methods/premium/iter-boosters.js.map +1 -0
- package/esm/highlevel/methods/stickers/add-sticker-to-set.d.ts +22 -0
- package/esm/highlevel/methods/stickers/add-sticker-to-set.js +35 -0
- package/esm/highlevel/methods/stickers/add-sticker-to-set.js.map +1 -0
- package/esm/highlevel/methods/stickers/create-sticker-set.d.ts +75 -0
- package/esm/highlevel/methods/stickers/create-sticker-set.js +52 -0
- package/esm/highlevel/methods/stickers/create-sticker-set.js.map +1 -0
- package/esm/highlevel/methods/stickers/delete-sticker-from-set.d.ts +16 -0
- package/esm/highlevel/methods/stickers/delete-sticker-from-set.js +25 -0
- package/esm/highlevel/methods/stickers/delete-sticker-from-set.js.map +1 -0
- package/esm/highlevel/methods/stickers/get-custom-emojis.d.ts +14 -0
- package/esm/highlevel/methods/stickers/get-custom-emojis.js +45 -0
- package/esm/highlevel/methods/stickers/get-custom-emojis.js.map +1 -0
- package/esm/highlevel/methods/stickers/get-installed-stickers.d.ts +11 -0
- package/esm/highlevel/methods/stickers/get-installed-stickers.js +20 -0
- package/esm/highlevel/methods/stickers/get-installed-stickers.js.map +1 -0
- package/esm/highlevel/methods/stickers/get-sticker-set.d.ts +8 -0
- package/esm/highlevel/methods/stickers/get-sticker-set.js +15 -0
- package/esm/highlevel/methods/stickers/get-sticker-set.js.map +1 -0
- package/esm/highlevel/methods/stickers/move-sticker-in-set.d.ts +18 -0
- package/esm/highlevel/methods/stickers/move-sticker-in-set.js +28 -0
- package/esm/highlevel/methods/stickers/move-sticker-in-set.js.map +1 -0
- package/esm/highlevel/methods/stickers/set-chat-sticker-set.d.ts +11 -0
- package/esm/highlevel/methods/stickers/set-chat-sticker-set.js +20 -0
- package/esm/highlevel/methods/stickers/set-chat-sticker-set.js.map +1 -0
- package/esm/highlevel/methods/stickers/set-sticker-set-thumb.d.ts +20 -0
- package/esm/highlevel/methods/stickers/set-sticker-set-thumb.js +19 -0
- package/esm/highlevel/methods/stickers/set-sticker-set-thumb.js.map +1 -0
- package/esm/highlevel/methods/stories/can-send-story.d.ts +13 -0
- package/esm/highlevel/methods/stories/can-send-story.js +32 -0
- package/esm/highlevel/methods/stories/can-send-story.js.map +1 -0
- package/esm/highlevel/methods/stories/delete-stories.d.ts +20 -0
- package/esm/highlevel/methods/stories/delete-stories.js +15 -0
- package/esm/highlevel/methods/stories/delete-stories.js.map +1 -0
- package/esm/highlevel/methods/stories/edit-story.d.ts +38 -0
- package/esm/highlevel/methods/stories/edit-story.js +40 -0
- package/esm/highlevel/methods/stories/edit-story.js.map +1 -0
- package/esm/highlevel/methods/stories/find-in-update.d.ts +1 -0
- package/esm/highlevel/methods/stories/find-in-update.js +17 -0
- package/esm/highlevel/methods/stories/find-in-update.js.map +1 -0
- package/esm/highlevel/methods/stories/get-all-stories.d.ts +15 -0
- package/esm/highlevel/methods/stories/get-all-stories.js +19 -0
- package/esm/highlevel/methods/stories/get-all-stories.js.map +1 -0
- package/esm/highlevel/methods/stories/get-peer-stories.d.ts +8 -0
- package/esm/highlevel/methods/stories/get-peer-stories.js +16 -0
- package/esm/highlevel/methods/stories/get-peer-stories.js.map +1 -0
- package/esm/highlevel/methods/stories/get-profile-stories.d.ts +25 -0
- package/esm/highlevel/methods/stories/get-profile-stories.js +27 -0
- package/esm/highlevel/methods/stories/get-profile-stories.js.map +1 -0
- package/esm/highlevel/methods/stories/get-stories-by-id.d.ts +10 -0
- package/esm/highlevel/methods/stories/get-stories-by-id.js +25 -0
- package/esm/highlevel/methods/stories/get-stories-by-id.js.map +1 -0
- package/esm/highlevel/methods/stories/get-stories-interactions.d.ts +9 -0
- package/esm/highlevel/methods/stories/get-stories-interactions.js +20 -0
- package/esm/highlevel/methods/stories/get-stories-interactions.js.map +1 -0
- package/esm/highlevel/methods/stories/get-story-link.d.ts +11 -0
- package/esm/highlevel/methods/stories/get-story-link.js +19 -0
- package/esm/highlevel/methods/stories/get-story-link.js.map +1 -0
- package/esm/highlevel/methods/stories/get-story-viewers.d.ts +33 -0
- package/esm/highlevel/methods/stories/get-story-viewers.js +22 -0
- package/esm/highlevel/methods/stories/get-story-viewers.js.map +1 -0
- package/esm/highlevel/methods/stories/hide-my-stories-views.d.ts +21 -0
- package/esm/highlevel/methods/stories/hide-my-stories-views.js +25 -0
- package/esm/highlevel/methods/stories/hide-my-stories-views.js.map +1 -0
- package/esm/highlevel/methods/stories/increment-stories-views.d.ts +13 -0
- package/esm/highlevel/methods/stories/increment-stories-views.js +20 -0
- package/esm/highlevel/methods/stories/increment-stories-views.js.map +1 -0
- package/esm/highlevel/methods/stories/iter-all-stories.d.ts +16 -0
- package/esm/highlevel/methods/stories/iter-all-stories.js +28 -0
- package/esm/highlevel/methods/stories/iter-all-stories.js.map +1 -0
- package/esm/highlevel/methods/stories/iter-profile-stories.d.ts +21 -0
- package/esm/highlevel/methods/stories/iter-profile-stories.js +29 -0
- package/esm/highlevel/methods/stories/iter-profile-stories.js.map +1 -0
- package/esm/highlevel/methods/stories/iter-story-viewers.d.ts +22 -0
- package/esm/highlevel/methods/stories/iter-story-viewers.js +32 -0
- package/esm/highlevel/methods/stories/iter-story-viewers.js.map +1 -0
- package/esm/highlevel/methods/stories/read-stories.d.ts +11 -0
- package/esm/highlevel/methods/stories/read-stories.js +17 -0
- package/esm/highlevel/methods/stories/read-stories.js.map +1 -0
- package/esm/highlevel/methods/stories/report-story.d.ts +19 -0
- package/esm/highlevel/methods/stories/report-story.js +17 -0
- package/esm/highlevel/methods/stories/report-story.js.map +1 -0
- package/esm/highlevel/methods/stories/send-story-reaction.d.ts +14 -0
- package/esm/highlevel/methods/stories/send-story-reaction.js +17 -0
- package/esm/highlevel/methods/stories/send-story-reaction.js.map +1 -0
- package/esm/highlevel/methods/stories/send-story.d.ts +51 -0
- package/esm/highlevel/methods/stories/send-story.js +44 -0
- package/esm/highlevel/methods/stories/send-story.js.map +1 -0
- package/esm/highlevel/methods/stories/toggle-peer-stories-archived.d.ts +8 -0
- package/esm/highlevel/methods/stories/toggle-peer-stories-archived.js +16 -0
- package/esm/highlevel/methods/stories/toggle-peer-stories-archived.js.map +1 -0
- package/esm/highlevel/methods/stories/toggle-stories-pinned.d.ts +24 -0
- package/esm/highlevel/methods/stories/toggle-stories-pinned.js +16 -0
- package/esm/highlevel/methods/stories/toggle-stories-pinned.js.map +1 -0
- package/esm/highlevel/methods/users/block-user.d.ts +8 -0
- package/esm/highlevel/methods/users/block-user.js +15 -0
- package/esm/highlevel/methods/users/block-user.js.map +1 -0
- package/esm/highlevel/methods/users/delete-profile-photos.d.ts +9 -0
- package/esm/highlevel/methods/users/delete-profile-photos.js +21 -0
- package/esm/highlevel/methods/users/delete-profile-photos.js.map +1 -0
- package/esm/highlevel/methods/users/edit-close-friends.d.ts +14 -0
- package/esm/highlevel/methods/users/edit-close-friends.js +32 -0
- package/esm/highlevel/methods/users/edit-close-friends.js.map +1 -0
- package/esm/highlevel/methods/users/get-common-chats.d.ts +9 -0
- package/esm/highlevel/methods/users/get-common-chats.js +19 -0
- package/esm/highlevel/methods/users/get-common-chats.js.map +1 -0
- package/esm/highlevel/methods/users/get-global-ttl.d.ts +5 -0
- package/esm/highlevel/methods/users/get-global-ttl.js +11 -0
- package/esm/highlevel/methods/users/get-global-ttl.js.map +1 -0
- package/esm/highlevel/methods/users/get-me.d.ts +6 -0
- package/esm/highlevel/methods/users/get-me.js +22 -0
- package/esm/highlevel/methods/users/get-me.js.map +1 -0
- package/esm/highlevel/methods/users/get-my-username.d.ts +8 -0
- package/esm/highlevel/methods/users/get-my-username.js +10 -0
- package/esm/highlevel/methods/users/get-my-username.js.map +1 -0
- package/esm/highlevel/methods/users/get-profile-photo.d.ts +11 -0
- package/esm/highlevel/methods/users/get-profile-photo.js +23 -0
- package/esm/highlevel/methods/users/get-profile-photo.js.map +1 -0
- package/esm/highlevel/methods/users/get-profile-photos.d.ts +22 -0
- package/esm/highlevel/methods/users/get-profile-photos.js +28 -0
- package/esm/highlevel/methods/users/get-profile-photos.js.map +1 -0
- package/esm/highlevel/methods/users/get-users.d.ts +12 -0
- package/esm/highlevel/methods/users/get-users.js +25 -0
- package/esm/highlevel/methods/users/get-users.js.map +1 -0
- package/esm/highlevel/methods/users/get-users.test.d.ts +1 -0
- package/esm/highlevel/methods/users/get-users.test.js +28 -0
- package/esm/highlevel/methods/users/get-users.test.js.map +1 -0
- package/esm/highlevel/methods/users/iter-profile-photos.d.ts +23 -0
- package/esm/highlevel/methods/users/iter-profile-photos.js +31 -0
- package/esm/highlevel/methods/users/iter-profile-photos.js.map +1 -0
- package/esm/highlevel/methods/users/resolve-peer-many.d.ts +22 -0
- package/esm/highlevel/methods/users/resolve-peer-many.js +66 -0
- package/esm/highlevel/methods/users/resolve-peer-many.js.map +1 -0
- package/esm/highlevel/methods/users/resolve-peer.d.ts +19 -0
- package/esm/highlevel/methods/users/resolve-peer.js +154 -0
- package/esm/highlevel/methods/users/resolve-peer.js.map +1 -0
- package/esm/highlevel/methods/users/resolve-peer.test.d.ts +1 -0
- package/esm/highlevel/methods/users/resolve-peer.test.js +302 -0
- package/esm/highlevel/methods/users/resolve-peer.test.js.map +1 -0
- package/esm/highlevel/methods/users/set-global-ttl.d.ts +8 -0
- package/esm/highlevel/methods/users/set-global-ttl.js +15 -0
- package/esm/highlevel/methods/users/set-global-ttl.js.map +1 -0
- package/esm/highlevel/methods/users/set-my-emoji-status.d.ts +13 -0
- package/esm/highlevel/methods/users/set-my-emoji-status.js +33 -0
- package/esm/highlevel/methods/users/set-my-emoji-status.js.map +1 -0
- package/esm/highlevel/methods/users/set-my-profile-photo.d.ts +16 -0
- package/esm/highlevel/methods/users/set-my-profile-photo.js +38 -0
- package/esm/highlevel/methods/users/set-my-profile-photo.js.map +1 -0
- package/esm/highlevel/methods/users/set-my-username.d.ts +11 -0
- package/esm/highlevel/methods/users/set-my-username.js +20 -0
- package/esm/highlevel/methods/users/set-my-username.js.map +1 -0
- package/esm/highlevel/methods/users/set-offline.d.ts +7 -0
- package/esm/highlevel/methods/users/set-offline.js +14 -0
- package/esm/highlevel/methods/users/set-offline.js.map +1 -0
- package/esm/highlevel/methods/users/unblock-user.d.ts +8 -0
- package/esm/highlevel/methods/users/unblock-user.js +15 -0
- package/esm/highlevel/methods/users/unblock-user.js.map +1 -0
- package/esm/highlevel/methods/users/update-profile.d.ts +23 -0
- package/esm/highlevel/methods/users/update-profile.js +18 -0
- package/esm/highlevel/methods/users/update-profile.js.map +1 -0
- package/esm/highlevel/storage/index.d.ts +4 -0
- package/esm/highlevel/storage/index.js +5 -0
- package/esm/highlevel/storage/index.js.map +1 -0
- package/esm/highlevel/storage/provider.d.ts +7 -0
- package/esm/highlevel/storage/provider.js +2 -0
- package/esm/highlevel/storage/provider.js.map +1 -0
- package/esm/highlevel/storage/repository/peers.d.ts +32 -0
- package/esm/highlevel/storage/repository/peers.js +2 -0
- package/esm/highlevel/storage/repository/peers.js.map +1 -0
- package/esm/highlevel/storage/repository/ref-messages.d.ts +20 -0
- package/esm/highlevel/storage/repository/ref-messages.js +2 -0
- package/esm/highlevel/storage/repository/ref-messages.js.map +1 -0
- package/esm/highlevel/storage/service/current-user.d.ts +23 -0
- package/esm/highlevel/storage/service/current-user.js +125 -0
- package/esm/highlevel/storage/service/current-user.js.map +1 -0
- package/esm/highlevel/storage/service/peers.d.ts +23 -0
- package/esm/highlevel/storage/service/peers.js +210 -0
- package/esm/highlevel/storage/service/peers.js.map +1 -0
- package/esm/highlevel/storage/service/ref-messages.d.ts +15 -0
- package/esm/highlevel/storage/service/ref-messages.js +36 -0
- package/esm/highlevel/storage/service/ref-messages.js.map +1 -0
- package/esm/highlevel/storage/service/updates.d.ts +16 -0
- package/esm/highlevel/storage/service/updates.js +68 -0
- package/esm/highlevel/storage/service/updates.js.map +1 -0
- package/esm/highlevel/storage/storage.d.ts +22 -0
- package/esm/highlevel/storage/storage.js +21 -0
- package/esm/highlevel/storage/storage.js.map +1 -0
- package/esm/highlevel/types/auth/index.d.ts +1 -0
- package/esm/highlevel/types/auth/index.js +2 -0
- package/esm/highlevel/types/auth/index.js.map +1 -0
- package/esm/highlevel/types/auth/sent-code.d.ts +51 -0
- package/esm/highlevel/types/auth/sent-code.js +61 -0
- package/esm/highlevel/types/auth/sent-code.js.map +1 -0
- package/esm/highlevel/types/bots/command-scope.d.ts +63 -0
- package/esm/highlevel/types/bots/command-scope.js +84 -0
- package/esm/highlevel/types/bots/command-scope.js.map +1 -0
- package/esm/highlevel/types/bots/game-high-score.d.ts +23 -0
- package/esm/highlevel/types/bots/game-high-score.js +33 -0
- package/esm/highlevel/types/bots/game-high-score.js.map +1 -0
- package/esm/highlevel/types/bots/index.d.ts +5 -0
- package/esm/highlevel/types/bots/index.js +6 -0
- package/esm/highlevel/types/bots/index.js.map +1 -0
- package/esm/highlevel/types/bots/input/index.d.ts +2 -0
- package/esm/highlevel/types/bots/input/index.js +3 -0
- package/esm/highlevel/types/bots/input/index.js.map +1 -0
- package/esm/highlevel/types/bots/input/input-inline-message.d.ts +157 -0
- package/esm/highlevel/types/bots/input/input-inline-message.js +176 -0
- package/esm/highlevel/types/bots/input/input-inline-message.js.map +1 -0
- package/esm/highlevel/types/bots/input/input-inline-result.d.ts +511 -0
- package/esm/highlevel/types/bots/input/input-inline-result.js +487 -0
- package/esm/highlevel/types/bots/input/input-inline-result.js.map +1 -0
- package/esm/highlevel/types/bots/keyboard-builder.d.ts +38 -0
- package/esm/highlevel/types/bots/keyboard-builder.js +89 -0
- package/esm/highlevel/types/bots/keyboard-builder.js.map +1 -0
- package/esm/highlevel/types/bots/keyboard-builder.test.d.ts +1 -0
- package/esm/highlevel/types/bots/keyboard-builder.test.js +160 -0
- package/esm/highlevel/types/bots/keyboard-builder.test.js.map +1 -0
- package/esm/highlevel/types/bots/keyboards.d.ts +239 -0
- package/esm/highlevel/types/bots/keyboards.js +377 -0
- package/esm/highlevel/types/bots/keyboards.js.map +1 -0
- package/esm/highlevel/types/bots/keyboards.test.d.ts +1 -0
- package/esm/highlevel/types/bots/keyboards.test.js +144 -0
- package/esm/highlevel/types/bots/keyboards.test.js.map +1 -0
- package/esm/highlevel/types/calls/discard-reason.d.ts +8 -0
- package/esm/highlevel/types/calls/discard-reason.js +32 -0
- package/esm/highlevel/types/calls/discard-reason.js.map +1 -0
- package/esm/highlevel/types/calls/index.d.ts +1 -0
- package/esm/highlevel/types/calls/index.js +2 -0
- package/esm/highlevel/types/calls/index.js.map +1 -0
- package/esm/highlevel/types/conversation.d.ts +210 -0
- package/esm/highlevel/types/conversation.js +465 -0
- package/esm/highlevel/types/conversation.js.map +1 -0
- package/esm/highlevel/types/errors.d.ts +33 -0
- package/esm/highlevel/types/errors.js +39 -0
- package/esm/highlevel/types/errors.js.map +1 -0
- package/esm/highlevel/types/files/file-location.d.ts +48 -0
- package/esm/highlevel/types/files/file-location.js +35 -0
- package/esm/highlevel/types/files/file-location.js.map +1 -0
- package/esm/highlevel/types/files/index.d.ts +4 -0
- package/esm/highlevel/types/files/index.js +5 -0
- package/esm/highlevel/types/files/index.js.map +1 -0
- package/esm/highlevel/types/files/uploaded-file.d.ts +22 -0
- package/esm/highlevel/types/files/uploaded-file.js +5 -0
- package/esm/highlevel/types/files/uploaded-file.js.map +1 -0
- package/esm/highlevel/types/files/utils.d.ts +84 -0
- package/esm/highlevel/types/files/utils.js +2 -0
- package/esm/highlevel/types/files/utils.js.map +1 -0
- package/esm/highlevel/types/files/web-document.d.ts +32 -0
- package/esm/highlevel/types/files/web-document.js +53 -0
- package/esm/highlevel/types/files/web-document.js.map +1 -0
- package/esm/highlevel/types/index.d.ts +15 -0
- package/esm/highlevel/types/index.js +16 -0
- package/esm/highlevel/types/index.js.map +1 -0
- package/esm/highlevel/types/media/audio.d.ts +31 -0
- package/esm/highlevel/types/media/audio.js +44 -0
- package/esm/highlevel/types/media/audio.js.map +1 -0
- package/esm/highlevel/types/media/contact.d.ts +31 -0
- package/esm/highlevel/types/media/contact.js +47 -0
- package/esm/highlevel/types/media/contact.js.map +1 -0
- package/esm/highlevel/types/media/dice.d.ts +155 -0
- package/esm/highlevel/types/media/dice.js +167 -0
- package/esm/highlevel/types/media/dice.js.map +1 -0
- package/esm/highlevel/types/media/document-utils.d.ts +6 -0
- package/esm/highlevel/types/media/document-utils.js +31 -0
- package/esm/highlevel/types/media/document-utils.js.map +1 -0
- package/esm/highlevel/types/media/document.d.ts +75 -0
- package/esm/highlevel/types/media/document.js +138 -0
- package/esm/highlevel/types/media/document.js.map +1 -0
- package/esm/highlevel/types/media/game.d.ts +38 -0
- package/esm/highlevel/types/media/game.js +72 -0
- package/esm/highlevel/types/media/game.js.map +1 -0
- package/esm/highlevel/types/media/index.d.ts +17 -0
- package/esm/highlevel/types/media/index.js +18 -0
- package/esm/highlevel/types/media/index.js.map +1 -0
- package/esm/highlevel/types/media/input-media.d.ts +645 -0
- package/esm/highlevel/types/media/input-media.js +251 -0
- package/esm/highlevel/types/media/input-media.js.map +1 -0
- package/esm/highlevel/types/media/invoice.d.ts +107 -0
- package/esm/highlevel/types/media/invoice.js +158 -0
- package/esm/highlevel/types/media/invoice.js.map +1 -0
- package/esm/highlevel/types/media/location.d.ts +83 -0
- package/esm/highlevel/types/media/location.js +115 -0
- package/esm/highlevel/types/media/location.js.map +1 -0
- package/esm/highlevel/types/media/photo.d.ts +72 -0
- package/esm/highlevel/types/media/photo.js +156 -0
- package/esm/highlevel/types/media/photo.js.map +1 -0
- package/esm/highlevel/types/media/poll.d.ts +99 -0
- package/esm/highlevel/types/media/poll.js +137 -0
- package/esm/highlevel/types/media/poll.js.map +1 -0
- package/esm/highlevel/types/media/sticker.d.ts +123 -0
- package/esm/highlevel/types/media/sticker.js +141 -0
- package/esm/highlevel/types/media/sticker.js.map +1 -0
- package/esm/highlevel/types/media/story.d.ts +33 -0
- package/esm/highlevel/types/media/story.js +51 -0
- package/esm/highlevel/types/media/story.js.map +1 -0
- package/esm/highlevel/types/media/thumbnail.d.ts +70 -0
- package/esm/highlevel/types/media/thumbnail.js +223 -0
- package/esm/highlevel/types/media/thumbnail.js.map +1 -0
- package/esm/highlevel/types/media/venue.d.ts +58 -0
- package/esm/highlevel/types/media/venue.js +75 -0
- package/esm/highlevel/types/media/venue.js.map +1 -0
- package/esm/highlevel/types/media/video.d.ts +46 -0
- package/esm/highlevel/types/media/video.js +75 -0
- package/esm/highlevel/types/media/video.js.map +1 -0
- package/esm/highlevel/types/media/voice.d.ts +23 -0
- package/esm/highlevel/types/media/voice.js +36 -0
- package/esm/highlevel/types/media/voice.js.map +1 -0
- package/esm/highlevel/types/media/web-page.d.ts +151 -0
- package/esm/highlevel/types/media/web-page.js +193 -0
- package/esm/highlevel/types/media/web-page.js.map +1 -0
- package/esm/highlevel/types/messages/dialog.d.ts +108 -0
- package/esm/highlevel/types/messages/dialog.js +243 -0
- package/esm/highlevel/types/messages/dialog.js.map +1 -0
- package/esm/highlevel/types/messages/draft-message.d.ts +29 -0
- package/esm/highlevel/types/messages/draft-message.js +52 -0
- package/esm/highlevel/types/messages/draft-message.js.map +1 -0
- package/esm/highlevel/types/messages/index.d.ts +12 -0
- package/esm/highlevel/types/messages/index.js +13 -0
- package/esm/highlevel/types/messages/index.js.map +1 -0
- package/esm/highlevel/types/messages/input-message-id.d.ts +15 -0
- package/esm/highlevel/types/messages/input-message-id.js +7 -0
- package/esm/highlevel/types/messages/input-message-id.js.map +1 -0
- package/esm/highlevel/types/messages/message-action.d.ts +332 -0
- package/esm/highlevel/types/messages/message-action.js +251 -0
- package/esm/highlevel/types/messages/message-action.js.map +1 -0
- package/esm/highlevel/types/messages/message-entity.d.ts +86 -0
- package/esm/highlevel/types/messages/message-entity.js +101 -0
- package/esm/highlevel/types/messages/message-entity.js.map +1 -0
- package/esm/highlevel/types/messages/message-forward.d.ts +36 -0
- package/esm/highlevel/types/messages/message-forward.js +62 -0
- package/esm/highlevel/types/messages/message-forward.js.map +1 -0
- package/esm/highlevel/types/messages/message-media.d.ts +18 -0
- package/esm/highlevel/types/messages/message-media.js +68 -0
- package/esm/highlevel/types/messages/message-media.js.map +1 -0
- package/esm/highlevel/types/messages/message-reactions.d.ts +29 -0
- package/esm/highlevel/types/messages/message-reactions.js +39 -0
- package/esm/highlevel/types/messages/message-reactions.js.map +1 -0
- package/esm/highlevel/types/messages/message-replies.d.ts +42 -0
- package/esm/highlevel/types/messages/message-replies.js +63 -0
- package/esm/highlevel/types/messages/message-replies.js.map +1 -0
- package/esm/highlevel/types/messages/message.d.ts +178 -0
- package/esm/highlevel/types/messages/message.js +335 -0
- package/esm/highlevel/types/messages/message.js.map +1 -0
- package/esm/highlevel/types/messages/replied-message.d.ts +103 -0
- package/esm/highlevel/types/messages/replied-message.js +159 -0
- package/esm/highlevel/types/messages/replied-message.js.map +1 -0
- package/esm/highlevel/types/messages/search-filters.d.ts +82 -0
- package/esm/highlevel/types/messages/search-filters.js +55 -0
- package/esm/highlevel/types/messages/search-filters.js.map +1 -0
- package/esm/highlevel/types/misc/app-config.d.ts +887 -0
- package/esm/highlevel/types/misc/app-config.js +4 -0
- package/esm/highlevel/types/misc/app-config.js.map +1 -0
- package/esm/highlevel/types/misc/entities.d.ts +15 -0
- package/esm/highlevel/types/misc/entities.js +2 -0
- package/esm/highlevel/types/misc/entities.js.map +1 -0
- package/esm/highlevel/types/misc/index.d.ts +5 -0
- package/esm/highlevel/types/misc/index.js +6 -0
- package/esm/highlevel/types/misc/index.js.map +1 -0
- package/esm/highlevel/types/misc/input-privacy-rule.d.ts +63 -0
- package/esm/highlevel/types/misc/input-privacy-rule.js +82 -0
- package/esm/highlevel/types/misc/input-privacy-rule.js.map +1 -0
- package/esm/highlevel/types/misc/sticker-set.d.ts +151 -0
- package/esm/highlevel/types/misc/sticker-set.js +215 -0
- package/esm/highlevel/types/misc/sticker-set.js.map +1 -0
- package/esm/highlevel/types/misc/takeout-session.d.ts +49 -0
- package/esm/highlevel/types/misc/takeout-session.js +78 -0
- package/esm/highlevel/types/misc/takeout-session.js.map +1 -0
- package/esm/highlevel/types/peers/chat-colors.d.ts +25 -0
- package/esm/highlevel/types/peers/chat-colors.js +32 -0
- package/esm/highlevel/types/peers/chat-colors.js.map +1 -0
- package/esm/highlevel/types/peers/chat-event/actions.d.ts +263 -0
- package/esm/highlevel/types/peers/chat-event/actions.js +230 -0
- package/esm/highlevel/types/peers/chat-event/actions.js.map +1 -0
- package/esm/highlevel/types/peers/chat-event/filters.d.ts +8 -0
- package/esm/highlevel/types/peers/chat-event/filters.js +104 -0
- package/esm/highlevel/types/peers/chat-event/filters.js.map +1 -0
- package/esm/highlevel/types/peers/chat-event/index.d.ts +27 -0
- package/esm/highlevel/types/peers/chat-event/index.js +38 -0
- package/esm/highlevel/types/peers/chat-event/index.js.map +1 -0
- package/esm/highlevel/types/peers/chat-invite-link-member.d.ts +33 -0
- package/esm/highlevel/types/peers/chat-invite-link-member.js +51 -0
- package/esm/highlevel/types/peers/chat-invite-link-member.js.map +1 -0
- package/esm/highlevel/types/peers/chat-invite-link.d.ts +72 -0
- package/esm/highlevel/types/peers/chat-invite-link.js +104 -0
- package/esm/highlevel/types/peers/chat-invite-link.js.map +1 -0
- package/esm/highlevel/types/peers/chat-location.d.ts +17 -0
- package/esm/highlevel/types/peers/chat-location.js +26 -0
- package/esm/highlevel/types/peers/chat-location.js.map +1 -0
- package/esm/highlevel/types/peers/chat-member.d.ts +81 -0
- package/esm/highlevel/types/peers/chat-member.js +150 -0
- package/esm/highlevel/types/peers/chat-member.js.map +1 -0
- package/esm/highlevel/types/peers/chat-permissions.d.ts +127 -0
- package/esm/highlevel/types/peers/chat-permissions.js +172 -0
- package/esm/highlevel/types/peers/chat-permissions.js.map +1 -0
- package/esm/highlevel/types/peers/chat-photo.d.ts +39 -0
- package/esm/highlevel/types/peers/chat-photo.js +120 -0
- package/esm/highlevel/types/peers/chat-photo.js.map +1 -0
- package/esm/highlevel/types/peers/chat-preview.d.ts +55 -0
- package/esm/highlevel/types/peers/chat-preview.js +70 -0
- package/esm/highlevel/types/peers/chat-preview.js.map +1 -0
- package/esm/highlevel/types/peers/chat.d.ts +332 -0
- package/esm/highlevel/types/peers/chat.js +656 -0
- package/esm/highlevel/types/peers/chat.js.map +1 -0
- package/esm/highlevel/types/peers/forum-topic.d.ts +96 -0
- package/esm/highlevel/types/peers/forum-topic.js +154 -0
- package/esm/highlevel/types/peers/forum-topic.js.map +1 -0
- package/esm/highlevel/types/peers/index.d.ts +14 -0
- package/esm/highlevel/types/peers/index.js +15 -0
- package/esm/highlevel/types/peers/index.js.map +1 -0
- package/esm/highlevel/types/peers/peer.d.ts +49 -0
- package/esm/highlevel/types/peers/peer.js +16 -0
- package/esm/highlevel/types/peers/peer.js.map +1 -0
- package/esm/highlevel/types/peers/peers-index.d.ts +15 -0
- package/esm/highlevel/types/peers/peers-index.js +53 -0
- package/esm/highlevel/types/peers/peers-index.js.map +1 -0
- package/esm/highlevel/types/peers/peers-index.test.d.ts +1 -0
- package/esm/highlevel/types/peers/peers-index.test.js +69 -0
- package/esm/highlevel/types/peers/peers-index.test.js.map +1 -0
- package/esm/highlevel/types/peers/typing-status.d.ts +26 -0
- package/esm/highlevel/types/peers/typing-status.js +2 -0
- package/esm/highlevel/types/peers/typing-status.js.map +1 -0
- package/esm/highlevel/types/peers/user.d.ts +259 -0
- package/esm/highlevel/types/peers/user.js +433 -0
- package/esm/highlevel/types/peers/user.js.map +1 -0
- package/esm/highlevel/types/peers/user.test.d.ts +1 -0
- package/esm/highlevel/types/peers/user.test.js +171 -0
- package/esm/highlevel/types/peers/user.test.js.map +1 -0
- package/esm/highlevel/types/premium/boost-slot.d.ts +37 -0
- package/esm/highlevel/types/premium/boost-slot.js +60 -0
- package/esm/highlevel/types/premium/boost-slot.js.map +1 -0
- package/esm/highlevel/types/premium/boost-stats.d.ts +54 -0
- package/esm/highlevel/types/premium/boost-stats.js +87 -0
- package/esm/highlevel/types/premium/boost-stats.js.map +1 -0
- package/esm/highlevel/types/premium/boost.d.ts +55 -0
- package/esm/highlevel/types/premium/boost.js +76 -0
- package/esm/highlevel/types/premium/boost.js.map +1 -0
- package/esm/highlevel/types/premium/index.d.ts +3 -0
- package/esm/highlevel/types/premium/index.js +4 -0
- package/esm/highlevel/types/premium/index.js.map +1 -0
- package/esm/highlevel/types/reactions/emoji-status.d.ts +12 -0
- package/esm/highlevel/types/reactions/emoji-status.js +21 -0
- package/esm/highlevel/types/reactions/emoji-status.js.map +1 -0
- package/esm/highlevel/types/reactions/index.d.ts +2 -0
- package/esm/highlevel/types/reactions/index.js +3 -0
- package/esm/highlevel/types/reactions/index.js.map +1 -0
- package/esm/highlevel/types/reactions/peer-reaction.d.ts +32 -0
- package/esm/highlevel/types/reactions/peer-reaction.js +49 -0
- package/esm/highlevel/types/reactions/peer-reaction.js.map +1 -0
- package/esm/highlevel/types/reactions/reaction-count.d.ts +23 -0
- package/esm/highlevel/types/reactions/reaction-count.js +32 -0
- package/esm/highlevel/types/reactions/reaction-count.js.map +1 -0
- package/esm/highlevel/types/reactions/types.d.ts +14 -0
- package/esm/highlevel/types/reactions/types.js +36 -0
- package/esm/highlevel/types/reactions/types.js.map +1 -0
- package/esm/highlevel/types/stories/all-stories.d.ts +28 -0
- package/esm/highlevel/types/stories/all-stories.js +42 -0
- package/esm/highlevel/types/stories/all-stories.js.map +1 -0
- package/esm/highlevel/types/stories/index.d.ts +7 -0
- package/esm/highlevel/types/stories/index.js +8 -0
- package/esm/highlevel/types/stories/index.js.map +1 -0
- package/esm/highlevel/types/stories/interactive/base.d.ts +16 -0
- package/esm/highlevel/types/stories/interactive/base.js +27 -0
- package/esm/highlevel/types/stories/interactive/base.js.map +1 -0
- package/esm/highlevel/types/stories/interactive/channel-post.d.ts +17 -0
- package/esm/highlevel/types/stories/interactive/channel-post.js +26 -0
- package/esm/highlevel/types/stories/interactive/channel-post.js.map +1 -0
- package/esm/highlevel/types/stories/interactive/index.d.ts +10 -0
- package/esm/highlevel/types/stories/interactive/index.js +23 -0
- package/esm/highlevel/types/stories/interactive/index.js.map +1 -0
- package/esm/highlevel/types/stories/interactive/input.d.ts +67 -0
- package/esm/highlevel/types/stories/interactive/input.js +77 -0
- package/esm/highlevel/types/stories/interactive/input.js.map +1 -0
- package/esm/highlevel/types/stories/interactive/location.d.ts +15 -0
- package/esm/highlevel/types/stories/interactive/location.js +25 -0
- package/esm/highlevel/types/stories/interactive/location.js.map +1 -0
- package/esm/highlevel/types/stories/interactive/reaction.d.ts +21 -0
- package/esm/highlevel/types/stories/interactive/reaction.js +31 -0
- package/esm/highlevel/types/stories/interactive/reaction.js.map +1 -0
- package/esm/highlevel/types/stories/interactive/venue.d.ts +28 -0
- package/esm/highlevel/types/stories/interactive/venue.js +49 -0
- package/esm/highlevel/types/stories/interactive/venue.js.map +1 -0
- package/esm/highlevel/types/stories/peer-stories.d.ts +20 -0
- package/esm/highlevel/types/stories/peer-stories.js +35 -0
- package/esm/highlevel/types/stories/peer-stories.js.map +1 -0
- package/esm/highlevel/types/stories/stealth-mode.d.ts +9 -0
- package/esm/highlevel/types/stories/stealth-mode.js +20 -0
- package/esm/highlevel/types/stories/stealth-mode.js.map +1 -0
- package/esm/highlevel/types/stories/story-interactions.d.ts +34 -0
- package/esm/highlevel/types/stories/story-interactions.js +52 -0
- package/esm/highlevel/types/stories/story-interactions.js.map +1 -0
- package/esm/highlevel/types/stories/story-viewer.d.ts +75 -0
- package/esm/highlevel/types/stories/story-viewer.js +134 -0
- package/esm/highlevel/types/stories/story-viewer.js.map +1 -0
- package/esm/highlevel/types/stories/story.d.ts +79 -0
- package/esm/highlevel/types/stories/story.js +144 -0
- package/esm/highlevel/types/stories/story.js.map +1 -0
- package/esm/highlevel/types/updates/bot-chat-join-request.d.ts +42 -0
- package/esm/highlevel/types/updates/bot-chat-join-request.js +62 -0
- package/esm/highlevel/types/updates/bot-chat-join-request.js.map +1 -0
- package/esm/highlevel/types/updates/bot-reaction.d.ts +72 -0
- package/esm/highlevel/types/updates/bot-reaction.js +99 -0
- package/esm/highlevel/types/updates/bot-reaction.js.map +1 -0
- package/esm/highlevel/types/updates/bot-stopped.d.ts +28 -0
- package/esm/highlevel/types/updates/bot-stopped.js +39 -0
- package/esm/highlevel/types/updates/bot-stopped.js.map +1 -0
- package/esm/highlevel/types/updates/callback-query.d.ts +81 -0
- package/esm/highlevel/types/updates/callback-query.js +118 -0
- package/esm/highlevel/types/updates/callback-query.js.map +1 -0
- package/esm/highlevel/types/updates/chat-join-request.d.ts +30 -0
- package/esm/highlevel/types/updates/chat-join-request.js +46 -0
- package/esm/highlevel/types/updates/chat-join-request.js.map +1 -0
- package/esm/highlevel/types/updates/chat-member-update.d.ts +76 -0
- package/esm/highlevel/types/updates/chat-member-update.js +174 -0
- package/esm/highlevel/types/updates/chat-member-update.js.map +1 -0
- package/esm/highlevel/types/updates/chosen-inline-result.d.ts +50 -0
- package/esm/highlevel/types/updates/chosen-inline-result.js +72 -0
- package/esm/highlevel/types/updates/chosen-inline-result.js.map +1 -0
- package/esm/highlevel/types/updates/delete-message-update.d.ts +16 -0
- package/esm/highlevel/types/updates/delete-message-update.js +24 -0
- package/esm/highlevel/types/updates/delete-message-update.js.map +1 -0
- package/esm/highlevel/types/updates/delete-story-update.d.ts +18 -0
- package/esm/highlevel/types/updates/delete-story-update.js +27 -0
- package/esm/highlevel/types/updates/delete-story-update.js.map +1 -0
- package/esm/highlevel/types/updates/history-read-update.d.ts +39 -0
- package/esm/highlevel/types/updates/history-read-update.js +105 -0
- package/esm/highlevel/types/updates/history-read-update.js.map +1 -0
- package/esm/highlevel/types/updates/index.d.ts +87 -0
- package/esm/highlevel/types/updates/index.js +20 -0
- package/esm/highlevel/types/updates/index.js.map +1 -0
- package/esm/highlevel/types/updates/inline-query.d.ts +42 -0
- package/esm/highlevel/types/updates/inline-query.js +69 -0
- package/esm/highlevel/types/updates/inline-query.js.map +1 -0
- package/esm/highlevel/types/updates/parse-update.d.ts +1 -0
- package/esm/highlevel/types/updates/parse-update.js +72 -0
- package/esm/highlevel/types/updates/parse-update.js.map +1 -0
- package/esm/highlevel/types/updates/poll-update.d.ts +39 -0
- package/esm/highlevel/types/updates/poll-update.js +63 -0
- package/esm/highlevel/types/updates/poll-update.js.map +1 -0
- package/esm/highlevel/types/updates/poll-vote.d.ts +52 -0
- package/esm/highlevel/types/updates/poll-vote.js +74 -0
- package/esm/highlevel/types/updates/poll-vote.js.map +1 -0
- package/esm/highlevel/types/updates/pre-checkout-query.d.ts +36 -0
- package/esm/highlevel/types/updates/pre-checkout-query.js +57 -0
- package/esm/highlevel/types/updates/pre-checkout-query.js.map +1 -0
- package/esm/highlevel/types/updates/story-update.d.ts +22 -0
- package/esm/highlevel/types/updates/story-update.js +33 -0
- package/esm/highlevel/types/updates/story-update.js.map +1 -0
- package/esm/highlevel/types/updates/user-status-update.d.ts +28 -0
- package/esm/highlevel/types/updates/user-status-update.js +43 -0
- package/esm/highlevel/types/updates/user-status-update.js.map +1 -0
- package/esm/highlevel/types/updates/user-typing-update.d.ts +31 -0
- package/esm/highlevel/types/updates/user-typing-update.js +95 -0
- package/esm/highlevel/types/updates/user-typing-update.js.map +1 -0
- package/esm/highlevel/types/utils.d.ts +12 -0
- package/esm/highlevel/types/utils.js +2 -0
- package/esm/highlevel/types/utils.js.map +1 -0
- package/esm/highlevel/updates/index.d.ts +2 -0
- package/esm/highlevel/updates/index.js +4 -0
- package/esm/highlevel/updates/index.js.map +1 -0
- package/esm/highlevel/updates/manager.d.ts +120 -0
- package/esm/highlevel/updates/manager.js +1338 -0
- package/esm/highlevel/updates/manager.js.map +1 -0
- package/esm/highlevel/updates/parsed.d.ts +32 -0
- package/esm/highlevel/updates/parsed.js +39 -0
- package/esm/highlevel/updates/parsed.js.map +1 -0
- package/esm/highlevel/updates/types.d.ts +48 -0
- package/esm/highlevel/updates/types.js +2 -0
- package/esm/highlevel/updates/types.js.map +1 -0
- package/esm/highlevel/updates/utils.d.ts +19 -0
- package/esm/highlevel/updates/utils.js +99 -0
- package/esm/highlevel/updates/utils.js.map +1 -0
- package/esm/highlevel/utils/convert-file-id.d.ts +46 -0
- package/esm/highlevel/utils/convert-file-id.js +281 -0
- package/esm/highlevel/utils/convert-file-id.js.map +1 -0
- package/esm/highlevel/utils/file-type.d.ts +1 -0
- package/esm/highlevel/utils/file-type.js +135 -0
- package/esm/highlevel/utils/file-type.js.map +1 -0
- package/esm/highlevel/utils/file-type.test.d.ts +1 -0
- package/esm/highlevel/utils/file-type.test.js +62 -0
- package/esm/highlevel/utils/file-type.test.js.map +1 -0
- package/esm/highlevel/utils/file-utils.d.ts +29 -0
- package/esm/highlevel/utils/file-utils.js +110 -0
- package/esm/highlevel/utils/file-utils.js.map +1 -0
- package/esm/highlevel/utils/file-utils.test.d.ts +1 -0
- package/esm/highlevel/utils/file-utils.test.js +124 -0
- package/esm/highlevel/utils/file-utils.test.js.map +1 -0
- package/esm/highlevel/utils/index.d.ts +8 -0
- package/esm/highlevel/utils/index.js +10 -0
- package/esm/highlevel/utils/index.js.map +1 -0
- package/esm/highlevel/utils/inline-utils.d.ts +14 -0
- package/esm/highlevel/utils/inline-utils.js +59 -0
- package/esm/highlevel/utils/inline-utils.js.map +1 -0
- package/esm/highlevel/utils/inline-utils.test.d.ts +1 -0
- package/esm/highlevel/utils/inline-utils.test.js +42 -0
- package/esm/highlevel/utils/inline-utils.test.js.map +1 -0
- package/esm/highlevel/utils/inspectable.d.ts +9 -0
- package/esm/highlevel/utils/inspectable.js +61 -0
- package/esm/highlevel/utils/inspectable.js.map +1 -0
- package/esm/highlevel/utils/inspectable.test.d.ts +1 -0
- package/esm/highlevel/utils/inspectable.test.js +95 -0
- package/esm/highlevel/utils/inspectable.test.js.map +1 -0
- package/esm/highlevel/utils/memoize.d.ts +1 -0
- package/esm/highlevel/utils/memoize.js +26 -0
- package/esm/highlevel/utils/memoize.js.map +1 -0
- package/esm/highlevel/utils/memoize.test.d.ts +1 -0
- package/esm/highlevel/utils/memoize.test.js +58 -0
- package/esm/highlevel/utils/memoize.test.js.map +1 -0
- package/esm/highlevel/utils/misc-utils.d.ts +12 -0
- package/esm/highlevel/utils/misc-utils.js +34 -0
- package/esm/highlevel/utils/misc-utils.js.map +1 -0
- package/esm/highlevel/utils/peer-utils.d.ts +11 -0
- package/esm/highlevel/utils/peer-utils.js +128 -0
- package/esm/highlevel/utils/peer-utils.js.map +1 -0
- package/esm/highlevel/utils/peer-utils.test.d.ts +1 -0
- package/esm/highlevel/utils/peer-utils.test.js +107 -0
- package/esm/highlevel/utils/peer-utils.test.js.map +1 -0
- package/esm/highlevel/utils/platform/storage.d.ts +1 -0
- package/esm/highlevel/utils/platform/storage.js +6 -0
- package/esm/highlevel/utils/platform/storage.js.map +1 -0
- package/esm/highlevel/utils/platform/storage.web.d.ts +1 -0
- package/esm/highlevel/utils/platform/storage.web.js +10 -0
- package/esm/highlevel/utils/platform/storage.web.js.map +1 -0
- package/esm/highlevel/utils/query-batcher.d.ts +48 -0
- package/esm/highlevel/utils/query-batcher.js +142 -0
- package/esm/highlevel/utils/query-batcher.js.map +1 -0
- package/esm/highlevel/utils/query-batcher.test.d.ts +1 -0
- package/esm/highlevel/utils/query-batcher.test.js +500 -0
- package/esm/highlevel/utils/query-batcher.test.js.map +1 -0
- package/esm/highlevel/utils/rps-meter.d.ts +9 -0
- package/esm/highlevel/utils/rps-meter.js +36 -0
- package/esm/highlevel/utils/rps-meter.js.map +1 -0
- package/esm/highlevel/utils/stream-utils.d.ts +8 -0
- package/esm/highlevel/utils/stream-utils.js +134 -0
- package/esm/highlevel/utils/stream-utils.js.map +1 -0
- package/esm/highlevel/utils/stream-utils.test.d.ts +1 -0
- package/esm/highlevel/utils/stream-utils.test.js +96 -0
- package/esm/highlevel/utils/stream-utils.test.js.map +1 -0
- package/esm/highlevel/utils/voice-utils.d.ts +14 -0
- package/esm/highlevel/utils/voice-utils.js +59 -0
- package/esm/highlevel/utils/voice-utils.js.map +1 -0
- package/esm/highlevel/utils/voice-utils.test.d.ts +1 -0
- package/esm/highlevel/utils/voice-utils.test.js +26 -0
- package/esm/highlevel/utils/voice-utils.test.js.map +1 -0
- package/esm/highlevel/worker/app-config.d.ts +13 -0
- package/esm/highlevel/worker/app-config.js +9 -0
- package/esm/highlevel/worker/app-config.js.map +1 -0
- package/esm/highlevel/worker/errors.d.ts +8 -0
- package/esm/highlevel/worker/errors.js +116 -0
- package/esm/highlevel/worker/errors.js.map +1 -0
- package/esm/highlevel/worker/invoker.d.ts +17 -0
- package/esm/highlevel/worker/invoker.js +56 -0
- package/esm/highlevel/worker/invoker.js.map +1 -0
- package/esm/highlevel/worker/platform/connect.d.ts +2 -0
- package/esm/highlevel/worker/platform/connect.js +15 -0
- package/esm/highlevel/worker/platform/connect.js.map +1 -0
- package/esm/highlevel/worker/platform/connect.web.d.ts +2 -0
- package/esm/highlevel/worker/platform/connect.web.js +47 -0
- package/esm/highlevel/worker/platform/connect.web.js.map +1 -0
- package/esm/highlevel/worker/platform/register.d.ts +2 -0
- package/esm/highlevel/worker/platform/register.js +16 -0
- package/esm/highlevel/worker/platform/register.js.map +1 -0
- package/esm/highlevel/worker/platform/register.web.d.ts +2 -0
- package/esm/highlevel/worker/platform/register.web.js +60 -0
- package/esm/highlevel/worker/platform/register.web.js.map +1 -0
- package/esm/highlevel/worker/port.d.ts +53 -0
- package/esm/highlevel/worker/port.js +90 -0
- package/esm/highlevel/worker/port.js.map +1 -0
- package/esm/highlevel/worker/protocol.d.ts +43 -0
- package/esm/highlevel/worker/protocol.js +2 -0
- package/esm/highlevel/worker/protocol.js.map +1 -0
- package/esm/highlevel/worker/storage.d.ts +43 -0
- package/esm/highlevel/worker/storage.js +62 -0
- package/esm/highlevel/worker/storage.js.map +1 -0
- package/esm/highlevel/worker/worker.d.ts +7 -0
- package/esm/highlevel/worker/worker.js +103 -0
- package/esm/highlevel/worker/worker.js.map +1 -0
- package/esm/index.d.ts +1 -2
- package/esm/index.js +1 -2
- package/esm/index.js.map +1 -1
- package/esm/network/authorization.js +7 -4
- package/esm/network/authorization.js.map +1 -1
- package/esm/network/client.d.ts +246 -0
- package/esm/network/client.js +141 -0
- package/esm/network/client.js.map +1 -0
- package/esm/network/config-manager.d.ts +3 -17
- package/esm/network/config-manager.js +8 -51
- package/esm/network/config-manager.js.map +1 -1
- package/esm/network/config-manager.test.js +8 -4
- package/esm/network/config-manager.test.js.map +1 -1
- package/esm/network/index.d.ts +1 -0
- package/esm/network/index.js +1 -0
- package/esm/network/index.js.map +1 -1
- package/esm/network/mtproto-session.d.ts +1 -0
- package/esm/network/mtproto-session.js +7 -4
- package/esm/network/mtproto-session.js.map +1 -1
- package/esm/network/network-manager.d.ts +11 -14
- package/esm/network/network-manager.js +42 -53
- package/esm/network/network-manager.js.map +1 -1
- package/esm/network/persistent-connection.d.ts +2 -3
- package/esm/network/persistent-connection.js.map +1 -1
- package/esm/network/session-connection.js +6 -3
- package/esm/network/session-connection.js.map +1 -1
- package/esm/network/transports/abstract.d.ts +6 -6
- package/esm/network/transports/abstract.js +1 -1
- package/esm/network/transports/abstract.js.map +1 -1
- package/esm/network/transports/tcp.d.ts +4 -5
- package/esm/network/transports/tcp.js.map +1 -1
- package/esm/network/transports/websocket.d.ts +3 -4
- package/esm/network/transports/websocket.js +2 -2
- package/esm/network/transports/websocket.js.map +1 -1
- package/esm/storage/driver.d.ts +56 -0
- package/esm/storage/driver.js +37 -0
- package/esm/storage/driver.js.map +1 -0
- package/esm/storage/index.d.ts +6 -2
- package/esm/storage/index.js +6 -2
- package/esm/storage/index.js.map +1 -1
- package/esm/storage/provider.d.ts +10 -0
- package/esm/storage/provider.js +2 -0
- package/esm/storage/provider.js.map +1 -0
- package/esm/storage/providers/idb/driver.d.ts +18 -0
- package/esm/storage/providers/idb/driver.js +134 -0
- package/esm/storage/providers/idb/driver.js.map +1 -0
- package/esm/storage/providers/idb/idb.test.d.ts +1 -0
- package/esm/storage/providers/idb/idb.test.js +27 -0
- package/esm/storage/providers/idb/idb.test.js.map +1 -0
- package/esm/storage/providers/idb/index.d.ts +22 -0
- package/esm/storage/providers/idb/index.js +23 -0
- package/esm/storage/providers/idb/index.js.map +1 -0
- package/esm/storage/providers/idb/repository/auth-keys.d.ts +14 -0
- package/esm/storage/providers/idb/repository/auth-keys.js +66 -0
- package/esm/storage/providers/idb/repository/auth-keys.js.map +1 -0
- package/esm/storage/providers/idb/repository/kv.d.ts +11 -0
- package/esm/storage/providers/idb/repository/kv.js +30 -0
- package/esm/storage/providers/idb/repository/kv.js.map +1 -0
- package/esm/storage/providers/idb/repository/peers.d.ts +12 -0
- package/esm/storage/providers/idb/repository/peers.js +34 -0
- package/esm/storage/providers/idb/repository/peers.js.map +1 -0
- package/esm/storage/providers/idb/repository/ref-messages.d.ts +12 -0
- package/esm/storage/providers/idb/repository/ref-messages.js +53 -0
- package/esm/storage/providers/idb/repository/ref-messages.js.map +1 -0
- package/esm/storage/providers/idb/utils.d.ts +3 -0
- package/esm/storage/providers/idb/utils.js +21 -0
- package/esm/storage/providers/idb/utils.js.map +1 -0
- package/esm/storage/providers/memory/driver.d.ts +6 -0
- package/esm/storage/providers/memory/driver.js +13 -0
- package/esm/storage/providers/memory/driver.js.map +1 -0
- package/esm/storage/providers/memory/index.d.ts +22 -0
- package/esm/storage/providers/memory/index.js +23 -0
- package/esm/storage/providers/memory/index.js.map +1 -0
- package/esm/storage/providers/memory/memory.test.d.ts +1 -0
- package/esm/storage/providers/memory/memory.test.js +11 -0
- package/esm/storage/providers/memory/memory.test.js.map +1 -0
- package/esm/storage/providers/memory/repository/auth-keys.d.ts +19 -0
- package/esm/storage/providers/memory/repository/auth-keys.js +54 -0
- package/esm/storage/providers/memory/repository/auth-keys.js.map +1 -0
- package/esm/storage/providers/memory/repository/kv.d.ts +11 -0
- package/esm/storage/providers/memory/repository/kv.js +19 -0
- package/esm/storage/providers/memory/repository/kv.js.map +1 -0
- package/esm/storage/providers/memory/repository/peers.d.ts +18 -0
- package/esm/storage/providers/memory/repository/peers.js +51 -0
- package/esm/storage/providers/memory/repository/peers.js.map +1 -0
- package/esm/storage/providers/memory/repository/ref-messages.d.ts +16 -0
- package/esm/storage/providers/memory/repository/ref-messages.js +37 -0
- package/esm/storage/providers/memory/repository/ref-messages.js.map +1 -0
- package/esm/storage/repository/auth-keys.d.ts +41 -0
- package/esm/storage/repository/auth-keys.js +2 -0
- package/esm/storage/repository/auth-keys.js.map +1 -0
- package/esm/storage/repository/index.d.ts +2 -0
- package/esm/storage/repository/index.js +3 -0
- package/esm/storage/repository/index.js.map +1 -0
- package/esm/storage/repository/key-value.d.ts +10 -0
- package/esm/storage/repository/key-value.js +2 -0
- package/esm/storage/repository/key-value.js.map +1 -0
- package/esm/storage/service/auth-keys.d.ts +9 -0
- package/esm/storage/service/auth-keys.js +13 -0
- package/esm/storage/service/auth-keys.js.map +1 -0
- package/esm/storage/service/auth-keys.test.d.ts +1 -0
- package/esm/storage/service/auth-keys.test.js +20 -0
- package/esm/storage/service/auth-keys.test.js.map +1 -0
- package/esm/storage/service/base.d.ts +19 -0
- package/esm/storage/service/base.js +21 -0
- package/esm/storage/service/base.js.map +1 -0
- package/esm/storage/service/default-dcs.d.ts +10 -0
- package/esm/storage/service/default-dcs.js +51 -0
- package/esm/storage/service/default-dcs.js.map +1 -0
- package/esm/storage/service/future-salts.d.ts +11 -0
- package/esm/storage/service/future-salts.js +39 -0
- package/esm/storage/service/future-salts.js.map +1 -0
- package/esm/storage/service/updates.test.d.ts +1 -0
- package/esm/storage/service/updates.test.js +58 -0
- package/esm/storage/service/updates.test.js.map +1 -0
- package/esm/storage/service/utils.test-utils.d.ts +2 -0
- package/esm/storage/service/utils.test-utils.js +15 -0
- package/esm/storage/service/utils.test-utils.js.map +1 -0
- package/esm/storage/storage.d.ts +32 -0
- package/esm/storage/storage.js +58 -0
- package/esm/storage/storage.js.map +1 -0
- package/esm/types/utils.d.ts +4 -1
- package/esm/types/utils.js.map +1 -1
- package/esm/utils/crypto/abstract.d.ts +5 -5
- package/esm/utils/crypto/abstract.js.map +1 -1
- package/esm/utils/crypto/factorization.test.d.ts +1 -0
- package/esm/utils/crypto/factorization.test.js +17 -0
- package/esm/utils/crypto/factorization.test.js.map +1 -0
- package/esm/utils/crypto/node.d.ts +2 -2
- package/esm/utils/crypto/node.js.map +1 -1
- package/esm/utils/crypto/password.d.ts +1 -1
- package/esm/utils/crypto/password.js +2 -0
- package/esm/utils/crypto/password.js.map +1 -1
- package/esm/utils/dcs.d.ts +13 -0
- package/esm/utils/dcs.js +89 -0
- package/esm/utils/dcs.js.map +1 -0
- package/esm/utils/function-utils.d.ts +6 -0
- package/esm/utils/function-utils.js +26 -0
- package/esm/utils/function-utils.js.map +1 -1
- package/esm/utils/index.d.ts +2 -1
- package/esm/utils/index.js +2 -1
- package/esm/utils/index.js.map +1 -1
- package/esm/utils/logger.js +1 -2
- package/esm/utils/logger.js.map +1 -1
- package/esm/utils/peer-utils.d.ts +2 -8
- package/esm/utils/peer-utils.js +11 -37
- package/esm/utils/peer-utils.js.map +1 -1
- package/esm/utils/peer-utils.test.js +8 -20
- package/esm/utils/peer-utils.test.js.map +1 -1
- package/esm/utils/reloadable.d.ts +24 -0
- package/esm/utils/reloadable.js +58 -0
- package/esm/utils/reloadable.js.map +1 -0
- package/esm/utils/string-session.d.ts +4 -3
- package/esm/utils/string-session.js +4 -1
- package/esm/utils/string-session.js.map +1 -1
- package/esm/utils/string-session.test.js +31 -6
- package/esm/utils/string-session.test.js.map +1 -1
- package/package.json +24 -5
- package/cjs/base-client.d.ts +0 -161
- package/cjs/base-client.js +0 -345
- package/cjs/base-client.js.map +0 -1
- package/cjs/base-client.types.d.ts +0 -153
- package/cjs/base-client.types.js +0 -3
- package/cjs/base-client.types.js.map +0 -1
- package/cjs/storage/abstract.d.ts +0 -224
- package/cjs/storage/abstract.js +0 -3
- package/cjs/storage/abstract.js.map +0 -1
- package/cjs/storage/idb.d.ts +0 -103
- package/cjs/storage/idb.js +0 -475
- package/cjs/storage/idb.js.map +0 -1
- package/cjs/storage/idb.test.js +0 -21
- package/cjs/storage/idb.test.js.map +0 -1
- package/cjs/storage/json-file.d.ts +0 -42
- package/cjs/storage/json-file.js +0 -94
- package/cjs/storage/json-file.js.map +0 -1
- package/cjs/storage/json.d.ts +0 -9
- package/cjs/storage/json.js +0 -66
- package/cjs/storage/json.js.map +0 -1
- package/cjs/storage/json.test.js +0 -36
- package/cjs/storage/json.test.js.map +0 -1
- package/cjs/storage/localstorage.d.ts +0 -19
- package/cjs/storage/localstorage.js +0 -40
- package/cjs/storage/localstorage.js.map +0 -1
- package/cjs/storage/localstorage.test.js +0 -23
- package/cjs/storage/localstorage.test.js.map +0 -1
- package/cjs/storage/memory.d.ts +0 -111
- package/cjs/storage/memory.js +0 -375
- package/cjs/storage/memory.js.map +0 -1
- package/cjs/storage/memory.test.js +0 -49
- package/cjs/storage/memory.test.js.map +0 -1
- package/cjs/utils/default-dcs.d.ts +0 -7
- package/cjs/utils/default-dcs.js +0 -76
- package/cjs/utils/default-dcs.js.map +0 -1
- package/esm/base-client.d.ts +0 -161
- package/esm/base-client.js +0 -338
- package/esm/base-client.js.map +0 -1
- package/esm/base-client.types.d.ts +0 -153
- package/esm/base-client.types.js +0 -2
- package/esm/base-client.types.js.map +0 -1
- package/esm/storage/abstract.d.ts +0 -224
- package/esm/storage/abstract.js +0 -2
- package/esm/storage/abstract.js.map +0 -1
- package/esm/storage/idb.d.ts +0 -103
- package/esm/storage/idb.js +0 -471
- package/esm/storage/idb.js.map +0 -1
- package/esm/storage/idb.test.js +0 -19
- package/esm/storage/idb.test.js.map +0 -1
- package/esm/storage/json-file.d.ts +0 -42
- package/esm/storage/json-file.js +0 -67
- package/esm/storage/json-file.js.map +0 -1
- package/esm/storage/json.d.ts +0 -9
- package/esm/storage/json.js +0 -62
- package/esm/storage/json.js.map +0 -1
- package/esm/storage/json.test.js +0 -34
- package/esm/storage/json.test.js.map +0 -1
- package/esm/storage/localstorage.d.ts +0 -19
- package/esm/storage/localstorage.js +0 -36
- package/esm/storage/localstorage.js.map +0 -1
- package/esm/storage/localstorage.test.js +0 -21
- package/esm/storage/localstorage.test.js.map +0 -1
- package/esm/storage/memory.d.ts +0 -111
- package/esm/storage/memory.js +0 -371
- package/esm/storage/memory.js.map +0 -1
- package/esm/storage/memory.test.js +0 -47
- package/esm/storage/memory.test.js.map +0 -1
- package/esm/utils/default-dcs.d.ts +0 -7
- package/esm/utils/default-dcs.js +0 -73
- package/esm/utils/default-dcs.js.map +0 -1
- /package/cjs/{storage/idb.test.d.ts → highlevel/methods/_imports.d.ts} +0 -0
- /package/cjs/{storage/json.test.d.ts → highlevel/methods/_init.d.ts} +0 -0
- /package/cjs/{storage/localstorage.test.d.ts → highlevel/methods/bots/normalize-command-scope.d.ts} +0 -0
- /package/cjs/{storage/memory.test.d.ts → highlevel/methods/chats/batched-queries.d.ts} +0 -0
- /package/{esm/storage/idb.test.d.ts → cjs/highlevel/methods/files/_platform.d.ts} +0 -0
- /package/{esm/storage/json.test.d.ts → cjs/highlevel/methods/files/_platform.web.d.ts} +0 -0
- /package/{esm/storage/localstorage.test.d.ts → cjs/highlevel/methods/files/normalize-file-to-document.d.ts} +0 -0
- /package/{esm/storage/memory.test.d.ts → cjs/highlevel/methods/messages/find-in-update.d.ts} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { tl } from '@mtcute/tl';
|
|
2
2
|
import { TlReaderMap, TlWriterMap } from '@mtcute/tl-runtime';
|
|
3
|
-
import {
|
|
4
|
-
import { ICryptoProvider, Logger } from '../utils/index.js';
|
|
3
|
+
import { StorageManager } from '../storage/storage.js';
|
|
4
|
+
import { DcOptions, ICryptoProvider, Logger } from '../utils/index.js';
|
|
5
5
|
import { ConfigManager } from './config-manager.js';
|
|
6
6
|
import { MultiSessionConnection } from './multi-session-connection.js';
|
|
7
7
|
import { PersistentConnectionParams } from './persistent-connection.js';
|
|
@@ -14,7 +14,7 @@ export type ConnectionKind = 'main' | 'upload' | 'download' | 'downloadSmall';
|
|
|
14
14
|
* This type is intended for internal usage only.
|
|
15
15
|
*/
|
|
16
16
|
export interface NetworkManagerParams {
|
|
17
|
-
storage:
|
|
17
|
+
storage: StorageManager;
|
|
18
18
|
crypto: ICryptoProvider;
|
|
19
19
|
log: Logger;
|
|
20
20
|
enableErrorReporting: boolean;
|
|
@@ -31,8 +31,8 @@ export interface NetworkManagerParams {
|
|
|
31
31
|
readerMap: TlReaderMap;
|
|
32
32
|
writerMap: TlWriterMap;
|
|
33
33
|
isPremium: boolean;
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
emitError: (err: Error, connection?: SessionConnection) => void;
|
|
35
|
+
onUpdate: (upd: tl.TypeUpdates) => void;
|
|
36
36
|
onUsable: () => void;
|
|
37
37
|
}
|
|
38
38
|
export type ConnectionCountDelegate = (kind: ConnectionKind, dcId: number, isPremium: boolean) => number;
|
|
@@ -138,7 +138,7 @@ export declare class DcConnectionManager {
|
|
|
138
138
|
/** DC ID */
|
|
139
139
|
readonly dcId: number;
|
|
140
140
|
/** DC options to use */
|
|
141
|
-
readonly _dcs:
|
|
141
|
+
readonly _dcs: DcOptions;
|
|
142
142
|
/** Whether this DC is the primary one */
|
|
143
143
|
isPrimary: boolean;
|
|
144
144
|
private _salts;
|
|
@@ -159,7 +159,7 @@ export declare class DcConnectionManager {
|
|
|
159
159
|
/** DC ID */
|
|
160
160
|
dcId: number,
|
|
161
161
|
/** DC options to use */
|
|
162
|
-
_dcs:
|
|
162
|
+
_dcs: DcOptions,
|
|
163
163
|
/** Whether this DC is the primary one */
|
|
164
164
|
isPrimary?: boolean);
|
|
165
165
|
private _setupMulti;
|
|
@@ -175,15 +175,13 @@ export declare class NetworkManager {
|
|
|
175
175
|
readonly params: NetworkManagerParams & NetworkManagerExtraParams;
|
|
176
176
|
readonly config: ConfigManager;
|
|
177
177
|
readonly _log: Logger;
|
|
178
|
-
readonly _storage:
|
|
178
|
+
readonly _storage: StorageManager;
|
|
179
179
|
readonly _initConnectionParams: tl.RawInitConnectionRequest;
|
|
180
180
|
readonly _transportFactory: TransportFactory;
|
|
181
181
|
readonly _reconnectionStrategy: ReconnectionStrategy<PersistentConnectionParams>;
|
|
182
182
|
readonly _connectionCount: ConnectionCountDelegate;
|
|
183
183
|
protected readonly _dcConnections: Map<number, DcConnectionManager>;
|
|
184
184
|
protected _primaryDc?: DcConnectionManager;
|
|
185
|
-
private _keepAliveInterval?;
|
|
186
|
-
private _lastUpdateTime;
|
|
187
185
|
private _updateHandler;
|
|
188
186
|
constructor(params: NetworkManagerParams & NetworkManagerExtraParams, config: ConfigManager);
|
|
189
187
|
private _findDcOptions;
|
|
@@ -195,18 +193,17 @@ export declare class NetworkManager {
|
|
|
195
193
|
*
|
|
196
194
|
* @param defaultDcs Default DCs to connect to
|
|
197
195
|
*/
|
|
198
|
-
connect(defaultDcs:
|
|
196
|
+
connect(defaultDcs: DcOptions): Promise<void>;
|
|
199
197
|
private _pendingExports;
|
|
200
198
|
private _exportAuthTo;
|
|
201
199
|
setIsPremium(isPremium: boolean): void;
|
|
202
|
-
notifyLoggedIn(auth: tl.auth.TypeAuthorization):
|
|
200
|
+
notifyLoggedIn(auth: tl.auth.TypeAuthorization | tl.RawUser): tl.RawUser;
|
|
201
|
+
notifyLoggedOut(): void;
|
|
203
202
|
resetSessions(): void;
|
|
204
203
|
private _onConfigChanged;
|
|
205
204
|
changePrimaryDc(newDc: number): Promise<void>;
|
|
206
205
|
private _floodWaitedRequests;
|
|
207
206
|
call<T extends tl.RpcMethod>(message: T, params?: RpcCallOptions, stack?: string): Promise<tl.RpcCallReturn[T['_']]>;
|
|
208
|
-
setUpdateHandler(handler: (upd: tl.TypeUpdates, fromClient: boolean) => void): void;
|
|
209
|
-
handleUpdate(update: tl.TypeUpdates, fromClient?: boolean): void;
|
|
210
207
|
changeTransport(factory: TransportFactory): void;
|
|
211
208
|
getPoolSize(kind: ConnectionKind, dcId?: number): number;
|
|
212
209
|
getPrimaryDcId(): number;
|
|
@@ -105,13 +105,13 @@ class DcConnectionManager {
|
|
|
105
105
|
this.upload.setAuthKey(key);
|
|
106
106
|
this.download.setAuthKey(key);
|
|
107
107
|
this.downloadSmall.setAuthKey(key);
|
|
108
|
-
Promise.resolve(this.manager._storage.
|
|
108
|
+
Promise.resolve(this.manager._storage.provider.authKeys.set(this.dcId, key))
|
|
109
109
|
.then(() => {
|
|
110
110
|
this.upload.notifyKeyChange();
|
|
111
111
|
this.download.notifyKeyChange();
|
|
112
112
|
this.downloadSmall.notifyKeyChange();
|
|
113
113
|
})
|
|
114
|
-
.catch((e) => this.manager.params.
|
|
114
|
+
.catch((e) => this.manager.params.emitError(e));
|
|
115
115
|
});
|
|
116
116
|
connection.on('tmp-key-change', (idx, key, expires) => {
|
|
117
117
|
if (kind !== 'main') {
|
|
@@ -123,16 +123,16 @@ class DcConnectionManager {
|
|
|
123
123
|
this.upload.setAuthKey(key, true);
|
|
124
124
|
this.download.setAuthKey(key, true);
|
|
125
125
|
this.downloadSmall.setAuthKey(key, true);
|
|
126
|
-
Promise.resolve(this.manager._storage.
|
|
126
|
+
Promise.resolve(this.manager._storage.provider.authKeys.setTemp(this.dcId, idx, key, expires * 1000))
|
|
127
127
|
.then(() => {
|
|
128
128
|
this.upload.notifyKeyChange();
|
|
129
129
|
this.download.notifyKeyChange();
|
|
130
130
|
this.downloadSmall.notifyKeyChange();
|
|
131
131
|
})
|
|
132
|
-
.catch((e) => this.manager.params.
|
|
132
|
+
.catch((e) => this.manager.params.emitError(e));
|
|
133
133
|
});
|
|
134
134
|
connection.on('future-salts', (salts) => {
|
|
135
|
-
Promise.resolve(this.manager._storage.
|
|
135
|
+
Promise.resolve(this.manager._storage.salts.store(this.dcId, salts)).catch((e) => this.manager.params.emitError(e));
|
|
136
136
|
});
|
|
137
137
|
connection.on('auth-begin', () => {
|
|
138
138
|
// we need to propagate auth-begin to all connections
|
|
@@ -157,7 +157,7 @@ class DcConnectionManager {
|
|
|
157
157
|
.catch((e) => promise.reject(e));
|
|
158
158
|
});
|
|
159
159
|
connection.on('error', (err, conn) => {
|
|
160
|
-
this.manager.params.
|
|
160
|
+
this.manager.params.emitError(err, conn);
|
|
161
161
|
});
|
|
162
162
|
}
|
|
163
163
|
setIsPrimary(isPrimary) {
|
|
@@ -179,8 +179,8 @@ class DcConnectionManager {
|
|
|
179
179
|
}
|
|
180
180
|
async loadKeys(forcePfs = false) {
|
|
181
181
|
const [permanent, salts] = await Promise.all([
|
|
182
|
-
this.manager._storage.
|
|
183
|
-
this.manager._storage.
|
|
182
|
+
this.manager._storage.provider.authKeys.get(this.dcId),
|
|
183
|
+
this.manager._storage.salts.fetch(this.dcId),
|
|
184
184
|
]);
|
|
185
185
|
this.main.setAuthKey(permanent);
|
|
186
186
|
this.upload.setAuthKey(permanent);
|
|
@@ -193,8 +193,9 @@ class DcConnectionManager {
|
|
|
193
193
|
return false;
|
|
194
194
|
}
|
|
195
195
|
if (this.manager.params.usePfs || forcePfs) {
|
|
196
|
+
const now = Date.now();
|
|
196
197
|
await Promise.all(this.main._sessions.map(async (_, i) => {
|
|
197
|
-
const temp = await this.manager._storage.
|
|
198
|
+
const temp = await this.manager._storage.provider.authKeys.getTemp(this.dcId, i, now);
|
|
198
199
|
this.main.setAuthKey(temp, true, i);
|
|
199
200
|
if (i === 0) {
|
|
200
201
|
this.upload.setAuthKey(temp, true);
|
|
@@ -224,8 +225,6 @@ class NetworkManager {
|
|
|
224
225
|
this._log = this.params.log.create('network');
|
|
225
226
|
this._storage = this.params.storage;
|
|
226
227
|
this._dcConnections = new Map();
|
|
227
|
-
this._lastUpdateTime = 0;
|
|
228
|
-
this._updateHandler = () => { };
|
|
229
228
|
this._dcCreationPromise = new Map();
|
|
230
229
|
this._pendingExports = {};
|
|
231
230
|
this._floodWaitedRequests = new Map();
|
|
@@ -245,7 +244,7 @@ class NetworkManager {
|
|
|
245
244
|
_: 'initConnection',
|
|
246
245
|
deviceModel,
|
|
247
246
|
systemVersion: '1.0',
|
|
248
|
-
appVersion: '0.
|
|
247
|
+
appVersion: '0.7.0',
|
|
249
248
|
systemLangCode: 'en',
|
|
250
249
|
langPack: '',
|
|
251
250
|
langCode: 'en',
|
|
@@ -257,8 +256,9 @@ class NetworkManager {
|
|
|
257
256
|
this._transportFactory = params.transport ?? index_js_3.defaultTransportFactory;
|
|
258
257
|
this._reconnectionStrategy = params.reconnectionStrategy ?? reconnection_js_1.defaultReconnectionStrategy;
|
|
259
258
|
this._connectionCount = params.connectionCount ?? defaultConnectionCountDelegate;
|
|
259
|
+
this._updateHandler = params.onUpdate;
|
|
260
260
|
this._onConfigChanged = this._onConfigChanged.bind(this);
|
|
261
|
-
config.
|
|
261
|
+
config.onReload(this._onConfigChanged);
|
|
262
262
|
}
|
|
263
263
|
async _findDcOptions(dcId) {
|
|
264
264
|
const main = await this.config.findOption({
|
|
@@ -288,29 +288,9 @@ class NetworkManager {
|
|
|
288
288
|
this._primaryDc = dc;
|
|
289
289
|
dc.setIsPrimary(true);
|
|
290
290
|
dc.main.on('usable', () => {
|
|
291
|
-
this._lastUpdateTime = Date.now();
|
|
292
291
|
this.params.onUsable();
|
|
293
|
-
if (this._keepAliveInterval)
|
|
294
|
-
clearInterval(this._keepAliveInterval);
|
|
295
|
-
this._keepAliveInterval = setInterval(() => {
|
|
296
|
-
if (Date.now() - this._lastUpdateTime > 900000) {
|
|
297
|
-
// telegram asks to fetch pending updates if there are no updates for 15 minutes.
|
|
298
|
-
// it is up to the user to decide whether to do it or not
|
|
299
|
-
this.params.keepAliveAction();
|
|
300
|
-
this._lastUpdateTime = Date.now();
|
|
301
|
-
}
|
|
302
|
-
}, 60000);
|
|
303
|
-
Promise.resolve(this._storage.getSelf())
|
|
304
|
-
.then((self) => {
|
|
305
|
-
if (self?.isBot) {
|
|
306
|
-
// bots may receive tmpSessions, which we should respect
|
|
307
|
-
return this.config.update(true);
|
|
308
|
-
}
|
|
309
|
-
})
|
|
310
|
-
.catch((e) => this.params._emitError(e));
|
|
311
292
|
});
|
|
312
293
|
dc.main.on('update', (update) => {
|
|
313
|
-
this._lastUpdateTime = Date.now();
|
|
314
294
|
this._updateHandler(update, false);
|
|
315
295
|
});
|
|
316
296
|
return dc.loadKeys().then(() => dc.main.ensureConnected());
|
|
@@ -393,13 +373,33 @@ class NetworkManager {
|
|
|
393
373
|
}
|
|
394
374
|
}
|
|
395
375
|
notifyLoggedIn(auth) {
|
|
396
|
-
if (auth._ === 'auth.authorizationSignUpRequired'
|
|
397
|
-
|
|
376
|
+
if (auth._ === 'auth.authorizationSignUpRequired') {
|
|
377
|
+
throw new index_js_1.MtUnsupportedError('Signup is no longer supported by Telegram for non-official clients. Please use your mobile device to sign up.');
|
|
398
378
|
}
|
|
399
|
-
|
|
400
|
-
|
|
379
|
+
let user;
|
|
380
|
+
if (auth._ === 'auth.authorization') {
|
|
381
|
+
if (auth.tmpSessions) {
|
|
382
|
+
this._primaryDc?.main.setCount(auth.tmpSessions);
|
|
383
|
+
}
|
|
384
|
+
user = auth.user;
|
|
401
385
|
}
|
|
402
|
-
|
|
386
|
+
else {
|
|
387
|
+
if (auth.bot) {
|
|
388
|
+
// bots may receive tmpSessions, which we should respect
|
|
389
|
+
this.config.update(true).catch((e) => this.params.emitError(e));
|
|
390
|
+
}
|
|
391
|
+
user = auth;
|
|
392
|
+
}
|
|
393
|
+
this.setIsPremium(user.premium);
|
|
394
|
+
// telegram ignores invokeWithoutUpdates for auth methods
|
|
395
|
+
if (auth._ === 'auth.authorization' && this.params.disableUpdates) {
|
|
396
|
+
this.resetSessions();
|
|
397
|
+
}
|
|
398
|
+
return user;
|
|
399
|
+
}
|
|
400
|
+
notifyLoggedOut() {
|
|
401
|
+
this.setIsPremium(false);
|
|
402
|
+
this.resetSessions();
|
|
403
403
|
}
|
|
404
404
|
resetSessions() {
|
|
405
405
|
const dc = this._primaryDc;
|
|
@@ -422,7 +422,7 @@ class NetworkManager {
|
|
|
422
422
|
if (!this._dcConnections.has(newDc)) {
|
|
423
423
|
this._dcConnections.set(newDc, new DcConnectionManager(this, newDc, options, true));
|
|
424
424
|
}
|
|
425
|
-
await this._storage.
|
|
425
|
+
await this._storage.dcs.store(options);
|
|
426
426
|
await this._switchPrimaryDc(this._dcConnections.get(newDc));
|
|
427
427
|
}
|
|
428
428
|
async call(message, params, stack) {
|
|
@@ -465,9 +465,6 @@ class NetworkManager {
|
|
|
465
465
|
for (let i = 0; i < maxRetryCount; i++) {
|
|
466
466
|
try {
|
|
467
467
|
const res = await multi.sendRpc(message, stack, params?.timeout, params?.abortSignal, params?.chainId);
|
|
468
|
-
if (kind === 'main') {
|
|
469
|
-
this._lastUpdateTime = Date.now();
|
|
470
|
-
}
|
|
471
468
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
472
469
|
return res;
|
|
473
470
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -524,12 +521,6 @@ class NetworkManager {
|
|
|
524
521
|
}
|
|
525
522
|
throw lastError;
|
|
526
523
|
}
|
|
527
|
-
setUpdateHandler(handler) {
|
|
528
|
-
this._updateHandler = handler;
|
|
529
|
-
}
|
|
530
|
-
handleUpdate(update, fromClient = true) {
|
|
531
|
-
this._updateHandler(update, fromClient);
|
|
532
|
-
}
|
|
533
524
|
changeTransport(factory) {
|
|
534
525
|
for (const dc of this._dcConnections.values()) {
|
|
535
526
|
dc.main.changeTransport(factory);
|
|
@@ -559,9 +550,7 @@ class NetworkManager {
|
|
|
559
550
|
for (const dc of this._dcConnections.values()) {
|
|
560
551
|
dc.destroy();
|
|
561
552
|
}
|
|
562
|
-
|
|
563
|
-
clearInterval(this._keepAliveInterval);
|
|
564
|
-
this.config.offConfigUpdate(this._onConfigChanged);
|
|
553
|
+
this.config.offReload(this._onConfigChanged);
|
|
565
554
|
}
|
|
566
555
|
}
|
|
567
556
|
exports.NetworkManager = NetworkManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network-manager.js","sourceRoot":"","sources":["../../../src/network/network-manager.ts"],"names":[],"mappings":"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","sourcesContent":["import { mtp, tl } from '@mtcute/tl'\nimport { TlReaderMap, TlWriterMap } from '@mtcute/tl-runtime'\n\nimport { ITelegramStorage } from '../storage/index.js'\nimport { MtArgumentError, MtcuteError, MtTimeoutError } from '../types/index.js'\nimport { ControllablePromise, createControllablePromise, ICryptoProvider, Logger, sleep } from '../utils/index.js'\nimport { assertTypeIs } from '../utils/type-assertions.js'\nimport { ConfigManager } from './config-manager.js'\nimport { MultiSessionConnection } from './multi-session-connection.js'\nimport { PersistentConnectionParams } from './persistent-connection.js'\nimport { defaultReconnectionStrategy, ReconnectionStrategy } from './reconnection.js'\nimport { ServerSaltManager } from './server-salt.js'\nimport { SessionConnection, SessionConnectionParams } from './session-connection.js'\nimport { defaultTransportFactory, TransportFactory } from './transports/index.js'\n\nexport type ConnectionKind = 'main' | 'upload' | 'download' | 'downloadSmall'\n\nconst CLIENT_ERRORS = {\n [tl.RpcError.BAD_REQUEST]: 1,\n [tl.RpcError.UNAUTHORIZED]: 1,\n [tl.RpcError.FORBIDDEN]: 1,\n [tl.RpcError.NOT_FOUND]: 1,\n [tl.RpcError.FLOOD]: 1,\n [tl.RpcError.SEE_OTHER]: 1,\n [tl.RpcError.NOT_ACCEPTABLE]: 1,\n}\n\n/**\n * Params passed into {@link NetworkManager} by {@link TelegramClient}.\n * This type is intended for internal usage only.\n */\nexport interface NetworkManagerParams {\n storage: ITelegramStorage\n crypto: ICryptoProvider\n log: Logger\n\n enableErrorReporting: boolean\n apiId: number\n initConnectionOptions?: Partial<Omit<tl.RawInitConnectionRequest, 'apiId' | 'query'>>\n transport?: TransportFactory\n reconnectionStrategy?: ReconnectionStrategy<PersistentConnectionParams>\n floodSleepThreshold: number\n maxRetryCount: number\n disableUpdates?: boolean\n testMode: boolean\n layer: number\n useIpv6: boolean\n readerMap: TlReaderMap\n writerMap: TlWriterMap\n isPremium: boolean\n _emitError: (err: Error, connection?: SessionConnection) => void\n keepAliveAction: () => void\n onUsable: () => void\n}\n\nexport type ConnectionCountDelegate = (kind: ConnectionKind, dcId: number, isPremium: boolean) => number\n\nconst defaultConnectionCountDelegate: ConnectionCountDelegate = (kind, dcId, isPremium) => {\n switch (kind) {\n case 'main':\n return 1\n case 'upload':\n return isPremium || (dcId !== 2 && dcId !== 4) ? 8 : 4\n case 'download':\n return isPremium ? 8 : 2\n case 'downloadSmall':\n return 2\n }\n}\n\n/**\n * Additional params passed into {@link NetworkManager} by the user\n * that customize the behavior of the manager\n */\nexport interface NetworkManagerExtraParams {\n /**\n * Whether to use PFS (Perfect Forward Secrecy) for all connections.\n * This is disabled by default\n */\n usePfs?: boolean\n\n /**\n * Connection count for each connection kind.\n * The function should be pure to avoid unexpected behavior.\n *\n * Defaults to TDLib logic:\n * - main: handled internally, **cannot be changed here**\n * - upload: if premium or dc id is other than 2 or 4, then 8, otherwise 4\n * - download: if premium then 8, otherwise 2\n * - downloadSmall: 2\n */\n connectionCount?: ConnectionCountDelegate\n\n /**\n * Idle timeout for non-main connections, in ms\n *\n * @default 60000 (60 seconds).\n */\n inactivityTimeout?: number\n}\n\n/** Options that can be customized when making an RPC call */\nexport interface RpcCallOptions {\n /**\n * If the call results in a `FLOOD_WAIT_X` error,\n * the maximum amount of time to wait before retrying.\n *\n * If set to `0`, the call will not be retried.\n *\n * @default {@link BaseTelegramClientOptions.floodSleepThreshold}\n */\n floodSleepThreshold?: number\n\n /**\n * If the call results in an internal server error or a flood wait,\n * the maximum amount of times to retry the call.\n *\n * @default {@link BaseTelegramClientOptions.maxRetryCount}\n */\n maxRetryCount?: number\n\n /**\n * Timeout for the call, in milliseconds.\n *\n * @default Infinity\n */\n timeout?: number\n\n /**\n * **ADVANCED**\n *\n * Kind of connection to use for this call.\n *\n * @default 'main'\n */\n kind?: ConnectionKind\n\n /**\n * **ADVANCED**\n *\n * ID of the DC to use for this call\n */\n dcId?: number\n\n /**\n * **ADVANCED**\n *\n * DC connection manager to use for this call.\n * Overrides `dcId` if set.\n */\n manager?: DcConnectionManager\n\n /**\n * Abort signal for the call.\n */\n abortSignal?: AbortSignal\n\n /**\n * Whether we should not retry on -503 errors and throw {@link MtTimeoutError} immediately instead.\n *\n * Useful for methods like `messages.getBotCallbackAnswer` that reliably return\n * -503 in case the upstream bot failed to respond.\n */\n throw503?: boolean\n\n /**\n * Some requests should be processed consecutively, and not in parallel.\n * Using the same `chainId` for multiple requests will ensure that they are processed in the order\n * of calling `.call()`.\n *\n * Particularly useful for `messages.sendMessage` and alike.\n */\n chainId?: string | number\n}\n\n/**\n * Wrapper over all connection pools for a single DC.\n */\nexport class DcConnectionManager {\n private _salts = new ServerSaltManager()\n private __baseConnectionParams = (): SessionConnectionParams => ({\n crypto: this.manager.params.crypto,\n initConnection: this.manager._initConnectionParams,\n transportFactory: this.manager._transportFactory,\n dc: this._dcs.media,\n testMode: this.manager.params.testMode,\n reconnectionStrategy: this.manager._reconnectionStrategy,\n layer: this.manager.params.layer,\n disableUpdates: this.manager.params.disableUpdates,\n readerMap: this.manager.params.readerMap,\n writerMap: this.manager.params.writerMap,\n usePfs: this.manager.params.usePfs,\n isMainConnection: false,\n isMainDcConnection: this.isPrimary,\n inactivityTimeout: this.manager.params.inactivityTimeout ?? 60_000,\n enableErrorReporting: this.manager.params.enableErrorReporting,\n salts: this._salts,\n })\n\n private _log = this.manager._log.create('dc-manager')\n\n /** Main connection pool */\n main: MultiSessionConnection\n\n /** Upload connection pool */\n upload = new MultiSessionConnection(\n this.__baseConnectionParams(),\n this.manager._connectionCount('upload', this.dcId, this.manager.params.isPremium),\n this._log,\n 'UPLOAD',\n )\n\n /** Download connection pool */\n download = new MultiSessionConnection(\n this.__baseConnectionParams(),\n this.manager._connectionCount('download', this.dcId, this.manager.params.isPremium),\n this._log,\n 'DOWNLOAD',\n )\n\n /** Download connection pool (for small files) */\n downloadSmall = new MultiSessionConnection(\n this.__baseConnectionParams(),\n this.manager._connectionCount('downloadSmall', this.dcId, this.manager.params.isPremium),\n this._log,\n 'DOWNLOAD_SMALL',\n )\n\n private get _mainConnectionCount() {\n if (!this.isPrimary) return 1\n\n return this.manager.config.getNow()?.tmpSessions ?? 1\n }\n\n constructor(\n /** Network manager instance */\n readonly manager: NetworkManager,\n /** DC ID */\n readonly dcId: number,\n /** DC options to use */\n readonly _dcs: ITelegramStorage.DcOptions,\n /** Whether this DC is the primary one */\n public isPrimary = false,\n ) {\n this._log.prefix = `[DC ${dcId}] `\n\n const mainParams = this.__baseConnectionParams()\n mainParams.isMainConnection = true\n mainParams.dc = _dcs.main\n\n if (isPrimary) {\n mainParams.inactivityTimeout = undefined\n }\n\n this.main = new MultiSessionConnection(mainParams, this._mainConnectionCount, this._log, 'MAIN')\n\n this._setupMulti('main')\n this._setupMulti('upload')\n this._setupMulti('download')\n this._setupMulti('downloadSmall')\n }\n\n private _setupMulti(kind: ConnectionKind): void {\n const connection = this[kind]\n\n connection.on('key-change', (idx, key: Uint8Array | null) => {\n if (kind !== 'main') {\n // main connection is responsible for authorization,\n // and keys are then sent to other connections\n this.manager._log.warn('got key-change from non-main connection, ignoring')\n\n return\n }\n\n this.manager._log.debug('key change for dc %d from connection %d', this.dcId, idx)\n\n // send key to other connections\n this.upload.setAuthKey(key)\n this.download.setAuthKey(key)\n this.downloadSmall.setAuthKey(key)\n Promise.resolve(this.manager._storage.setAuthKeyFor(this.dcId, key))\n .then(() => {\n this.upload.notifyKeyChange()\n this.download.notifyKeyChange()\n this.downloadSmall.notifyKeyChange()\n })\n .catch((e: Error) => this.manager.params._emitError(e))\n })\n connection.on('tmp-key-change', (idx: number, key: Uint8Array | null, expires: number) => {\n if (kind !== 'main') {\n this.manager._log.warn('got tmp-key-change from non-main connection, ignoring')\n\n return\n }\n\n this.manager._log.debug('temp key change for dc %d from connection %d', this.dcId, idx)\n\n // send key to other connections\n this.upload.setAuthKey(key, true)\n this.download.setAuthKey(key, true)\n this.downloadSmall.setAuthKey(key, true)\n\n Promise.resolve(this.manager._storage.setTempAuthKeyFor(this.dcId, idx, key, expires * 1000))\n .then(() => {\n this.upload.notifyKeyChange()\n this.download.notifyKeyChange()\n this.downloadSmall.notifyKeyChange()\n })\n .catch((e: Error) => this.manager.params._emitError(e))\n })\n connection.on('future-salts', (salts: mtp.RawMt_future_salt[]) => {\n Promise.resolve(this.manager._storage.setFutureSalts(this.dcId, salts)).catch((e: Error) =>\n this.manager.params._emitError(e),\n )\n })\n\n connection.on('auth-begin', () => {\n // we need to propagate auth-begin to all connections\n // to avoid them sending requests before auth is complete\n if (kind !== 'main') {\n this.manager._log.warn('got auth-begin from non-main connection, ignoring')\n\n return\n }\n\n // reset key on non-main connections\n // this event was already propagated to additional main connections\n this.upload.resetAuthKeys()\n this.download.resetAuthKeys()\n this.downloadSmall.resetAuthKeys()\n })\n\n connection.on('request-auth', () => {\n this.main.requestAuth()\n })\n\n // fucking awesome architecture, but whatever\n connection.on('request-keys', (promise: ControllablePromise<void>) => {\n this.loadKeys(true)\n .then(() => promise.resolve())\n .catch((e: Error) => promise.reject(e))\n })\n\n connection.on('error', (err: Error, conn: SessionConnection) => {\n this.manager.params._emitError(err, conn)\n })\n }\n\n setIsPrimary(isPrimary: boolean): void {\n if (this.isPrimary === isPrimary) return\n this.isPrimary = isPrimary\n this.main.params.isMainDcConnection = isPrimary\n\n if (isPrimary) {\n this.main.setInactivityTimeout(undefined)\n } else {\n this.main.setInactivityTimeout(this.manager.params.inactivityTimeout ?? 60_000)\n }\n }\n\n setIsPremium(isPremium: boolean): void {\n this.upload.setCount(this.manager._connectionCount('upload', this.dcId, isPremium))\n this.download.setCount(this.manager._connectionCount('download', this.dcId, isPremium))\n this.downloadSmall.setCount(this.manager._connectionCount('downloadSmall', this.dcId, isPremium))\n }\n\n async loadKeys(forcePfs = false): Promise<boolean> {\n const [permanent, salts] = await Promise.all([\n this.manager._storage.getAuthKeyFor(this.dcId),\n this.manager._storage.getFutureSalts(this.dcId),\n ])\n\n this.main.setAuthKey(permanent)\n this.upload.setAuthKey(permanent)\n this.download.setAuthKey(permanent)\n this.downloadSmall.setAuthKey(permanent)\n\n if (salts) {\n this._salts.setFutureSalts(salts)\n }\n\n if (!permanent) {\n return false\n }\n\n if (this.manager.params.usePfs || forcePfs) {\n await Promise.all(\n this.main._sessions.map(async (_, i) => {\n const temp = await this.manager._storage.getAuthKeyFor(this.dcId, i)\n this.main.setAuthKey(temp, true, i)\n\n if (i === 0) {\n this.upload.setAuthKey(temp, true)\n this.download.setAuthKey(temp, true)\n this.downloadSmall.setAuthKey(temp, true)\n }\n }),\n )\n }\n\n return true\n }\n\n destroy() {\n this.main.destroy()\n this.upload.destroy()\n this.download.destroy()\n this.downloadSmall.destroy()\n this._salts.destroy()\n }\n}\n\n/**\n * Class that manages all connections to Telegram servers.\n */\nexport class NetworkManager {\n readonly _log = this.params.log.create('network')\n readonly _storage = this.params.storage\n\n readonly _initConnectionParams: tl.RawInitConnectionRequest\n readonly _transportFactory: TransportFactory\n readonly _reconnectionStrategy: ReconnectionStrategy<PersistentConnectionParams>\n readonly _connectionCount: ConnectionCountDelegate\n\n protected readonly _dcConnections = new Map<number, DcConnectionManager>()\n protected _primaryDc?: DcConnectionManager\n\n private _keepAliveInterval?: NodeJS.Timeout\n private _lastUpdateTime = 0\n private _updateHandler: (upd: tl.TypeUpdates, fromClient: boolean) => void = () => {}\n\n constructor(\n readonly params: NetworkManagerParams & NetworkManagerExtraParams,\n readonly config: ConfigManager,\n ) {\n let deviceModel = 'mtcute on '\n /* eslint-disable no-restricted-globals */\n if (typeof process !== 'undefined' && typeof require !== 'undefined') {\n const os = require('os') as typeof import('os')\n deviceModel += `${os.type()} ${os.arch()} ${os.release()}`\n /* eslint-enable no-restricted-globals */\n } else if (typeof navigator !== 'undefined') {\n deviceModel += navigator.userAgent\n } else deviceModel += 'unknown'\n\n this._initConnectionParams = {\n _: 'initConnection',\n deviceModel,\n systemVersion: '1.0',\n appVersion: '%VERSION%',\n systemLangCode: 'en',\n langPack: '', // \"langPacks are for official apps only\"\n langCode: 'en',\n ...(params.initConnectionOptions ?? {}),\n apiId: params.apiId,\n // eslint-disable-next-line\n query: null as any,\n }\n\n this._transportFactory = params.transport ?? defaultTransportFactory\n this._reconnectionStrategy = params.reconnectionStrategy ?? defaultReconnectionStrategy\n this._connectionCount = params.connectionCount ?? defaultConnectionCountDelegate\n\n this._onConfigChanged = this._onConfigChanged.bind(this)\n config.onConfigUpdate(this._onConfigChanged)\n }\n\n private async _findDcOptions(dcId: number): Promise<ITelegramStorage.DcOptions> {\n const main = await this.config.findOption({\n dcId,\n allowIpv6: this.params.useIpv6,\n preferIpv6: this.params.useIpv6,\n allowMedia: false,\n cdn: false,\n })\n\n const media = await this.config.findOption({\n dcId,\n allowIpv6: this.params.useIpv6,\n preferIpv6: this.params.useIpv6,\n allowMedia: true,\n preferMedia: true,\n cdn: false,\n })\n\n if (!main || !media) {\n throw new MtArgumentError(`Could not find DC ${dcId}`)\n }\n\n return { main, media }\n }\n\n private _switchPrimaryDc(dc: DcConnectionManager) {\n if (this._primaryDc && this._primaryDc !== dc) {\n this._primaryDc.setIsPrimary(false)\n }\n\n this._primaryDc = dc\n dc.setIsPrimary(true)\n\n dc.main.on('usable', () => {\n this._lastUpdateTime = Date.now()\n this.params.onUsable()\n\n if (this._keepAliveInterval) clearInterval(this._keepAliveInterval)\n this._keepAliveInterval = setInterval(() => {\n if (Date.now() - this._lastUpdateTime > 900_000) {\n // telegram asks to fetch pending updates if there are no updates for 15 minutes.\n // it is up to the user to decide whether to do it or not\n\n this.params.keepAliveAction()\n this._lastUpdateTime = Date.now()\n }\n }, 60_000)\n\n Promise.resolve(this._storage.getSelf())\n .then((self) => {\n if (self?.isBot) {\n // bots may receive tmpSessions, which we should respect\n return this.config.update(true)\n }\n })\n .catch((e: Error) => this.params._emitError(e))\n })\n dc.main.on('update', (update: tl.TypeUpdates) => {\n this._lastUpdateTime = Date.now()\n this._updateHandler(update, false)\n })\n\n return dc.loadKeys().then(() => dc.main.ensureConnected())\n }\n\n private _dcCreationPromise = new Map<number, Promise<void>>()\n async _getOtherDc(dcId: number): Promise<DcConnectionManager> {\n if (!this._dcConnections.has(dcId)) {\n if (this._dcCreationPromise.has(dcId)) {\n this._log.debug('waiting for DC %d to be created', dcId)\n await this._dcCreationPromise.get(dcId)\n\n return this._dcConnections.get(dcId)!\n }\n\n const promise = createControllablePromise<void>()\n this._dcCreationPromise.set(dcId, promise)\n\n this._log.debug('creating new DC %d', dcId)\n\n try {\n const dcOptions = await this._findDcOptions(dcId)\n\n const dc = new DcConnectionManager(this, dcId, dcOptions)\n\n if (!(await dc.loadKeys())) {\n dc.main.requestAuth()\n }\n\n this._dcConnections.set(dcId, dc)\n promise.resolve()\n } catch (e) {\n promise.reject(e)\n }\n }\n\n return this._dcConnections.get(dcId)!\n }\n\n /**\n * Perform initial connection to the default DC\n *\n * @param defaultDcs Default DCs to connect to\n */\n async connect(defaultDcs: ITelegramStorage.DcOptions): Promise<void> {\n if (defaultDcs.main.id !== defaultDcs.media.id) {\n throw new MtArgumentError('Default DCs must be the same')\n }\n\n if (this._dcConnections.has(defaultDcs.main.id)) {\n // shouldn't happen\n throw new MtArgumentError('DC manager already exists')\n }\n\n const dc = new DcConnectionManager(this, defaultDcs.main.id, defaultDcs, true)\n this._dcConnections.set(defaultDcs.main.id, dc)\n await this._switchPrimaryDc(dc)\n }\n\n private _pendingExports: Record<number, Promise<void>> = {}\n private async _exportAuthTo(manager: DcConnectionManager): Promise<void> {\n if (manager.dcId in this._pendingExports) {\n this._log.debug('waiting for auth export to dc %d', manager.dcId)\n\n return this._pendingExports[manager.dcId]\n }\n\n this._log.debug('exporting auth to dc %d', manager.dcId)\n const promise = createControllablePromise<void>()\n this._pendingExports[manager.dcId] = promise\n\n try {\n const auth = await this.call({\n _: 'auth.exportAuthorization',\n dcId: manager.dcId,\n })\n\n const res = await this.call(\n {\n _: 'auth.importAuthorization',\n id: auth.id,\n bytes: auth.bytes,\n },\n { manager },\n )\n\n assertTypeIs('auth.importAuthorization', res, 'auth.authorization')\n\n promise.resolve()\n delete this._pendingExports[manager.dcId]\n } catch (e) {\n this._log.warn('failed to export auth to dc %d: %s', manager.dcId, e)\n promise.reject(e)\n throw e\n }\n }\n\n setIsPremium(isPremium: boolean): void {\n this._log.debug('setting isPremium to %s', isPremium)\n this.params.isPremium = isPremium\n\n for (const dc of this._dcConnections.values()) {\n dc.setIsPremium(isPremium)\n }\n }\n\n notifyLoggedIn(auth: tl.auth.TypeAuthorization): void {\n if (auth._ === 'auth.authorizationSignUpRequired' || auth.user._ === 'userEmpty') {\n return\n }\n\n if (auth.tmpSessions) {\n this._primaryDc?.main.setCount(auth.tmpSessions)\n }\n\n this.setIsPremium(auth.user.premium!)\n }\n\n resetSessions(): void {\n const dc = this._primaryDc\n if (!dc) return\n\n dc.main.resetSessions()\n dc.upload.resetSessions()\n dc.download.resetSessions()\n dc.downloadSmall.resetSessions()\n }\n\n private _onConfigChanged(config: tl.RawConfig): void {\n if (config.tmpSessions) {\n this._primaryDc?.main.setCount(config.tmpSessions)\n }\n }\n\n async changePrimaryDc(newDc: number): Promise<void> {\n if (newDc === this._primaryDc?.dcId) return\n\n const options = await this._findDcOptions(newDc)\n\n if (!this._dcConnections.has(newDc)) {\n this._dcConnections.set(newDc, new DcConnectionManager(this, newDc, options, true))\n }\n\n await this._storage.setDefaultDcs(options)\n\n await this._switchPrimaryDc(this._dcConnections.get(newDc)!)\n }\n\n private _floodWaitedRequests = new Map<string, number>()\n async call<T extends tl.RpcMethod>(\n message: T,\n params?: RpcCallOptions,\n stack?: string,\n ): Promise<tl.RpcCallReturn[T['_']]> {\n if (!this._primaryDc) {\n throw new MtcuteError('Not connected to any DC')\n }\n\n const floodSleepThreshold = params?.floodSleepThreshold ?? this.params.floodSleepThreshold\n const maxRetryCount = params?.maxRetryCount ?? this.params.maxRetryCount\n const throw503 = params?.throw503 ?? false\n\n // do not send requests that are in flood wait\n if (this._floodWaitedRequests.has(message._)) {\n const delta = this._floodWaitedRequests.get(message._)! - Date.now()\n\n if (delta <= 3000) {\n // flood waits below 3 seconds are \"ignored\"\n this._floodWaitedRequests.delete(message._)\n } else if (delta <= this.params.floodSleepThreshold) {\n await sleep(delta)\n this._floodWaitedRequests.delete(message._)\n } else {\n const err = tl.RpcError.create(tl.RpcError.FLOOD, 'FLOOD_WAIT_%d')\n err.seconds = Math.ceil(delta / 1000)\n throw err\n }\n }\n\n let lastError: Error | null = null\n\n const kind = params?.kind ?? 'main'\n let manager: DcConnectionManager\n\n if (params?.manager) {\n manager = params.manager\n } else if (params?.dcId && params.dcId !== this._primaryDc.dcId) {\n manager = await this._getOtherDc(params.dcId)\n } else {\n manager = this._primaryDc\n }\n\n let multi = manager[kind]\n\n for (let i = 0; i < maxRetryCount; i++) {\n try {\n const res = await multi.sendRpc(message, stack, params?.timeout, params?.abortSignal, params?.chainId)\n\n if (kind === 'main') {\n this._lastUpdateTime = Date.now()\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return res\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n lastError = e as Error\n\n if (!tl.RpcError.is(e)) {\n throw e\n }\n\n if (!(e.code in CLIENT_ERRORS)) {\n if (throw503 && e.code === -503) {\n throw new MtTimeoutError()\n }\n\n this._log.warn(\n 'Telegram is having internal issues: %d:%s (%s), retrying',\n e.code,\n e.text,\n e.message,\n )\n\n if (e.text === 'WORKER_BUSY_TOO_LONG_RETRY') {\n // according to tdlib, \"it is dangerous to resend query without timeout, so use 1\"\n await sleep(1000)\n }\n continue\n }\n\n if (e.is('FLOOD_WAIT_%d') || e.is('SLOWMODE_WAIT_%d') || e.is('FLOOD_TEST_PHONE_WAIT_%d')) {\n if (e.text !== 'SLOWMODE_WAIT_%d') {\n // SLOW_MODE_WAIT is chat-specific, not request-specific\n this._floodWaitedRequests.set(message._, Date.now() + e.seconds * 1000)\n }\n\n // In test servers, FLOOD_WAIT_0 has been observed, and sleeping for\n // such a short amount will cause retries very fast leading to issues\n if (e.seconds === 0) {\n e.seconds = 1\n }\n\n if (e.seconds <= floodSleepThreshold) {\n this._log.info('Flood wait for %d seconds', e.seconds)\n await sleep(e.seconds * 1000)\n continue\n }\n }\n\n if (manager === this._primaryDc) {\n if (e.is('PHONE_MIGRATE_%d') || e.is('NETWORK_MIGRATE_%d') || e.is('USER_MIGRATE_%d')) {\n this._log.info('Migrate error, new dc = %d', e.newDc)\n\n await this.changePrimaryDc(e.newDc)\n manager = this._primaryDc!\n multi = manager[kind]\n\n continue\n }\n } else if (e.is('AUTH_KEY_UNREGISTERED')) {\n // we can try re-exporting auth from the primary connection\n this._log.warn('exported auth key error, trying re-exporting..')\n\n await this._exportAuthTo(manager)\n continue\n }\n\n throw e\n }\n }\n\n throw lastError!\n }\n\n setUpdateHandler(handler: (upd: tl.TypeUpdates, fromClient: boolean) => void): void {\n this._updateHandler = handler\n }\n\n handleUpdate(update: tl.TypeUpdates, fromClient = true): void {\n this._updateHandler(update, fromClient)\n }\n\n changeTransport(factory: TransportFactory): void {\n for (const dc of this._dcConnections.values()) {\n dc.main.changeTransport(factory)\n dc.upload.changeTransport(factory)\n dc.download.changeTransport(factory)\n dc.downloadSmall.changeTransport(factory)\n }\n }\n\n getPoolSize(kind: ConnectionKind, dcId?: number) {\n const dc = dcId ? this._dcConnections.get(dcId) : this._primaryDc\n\n if (!dc) {\n if (!this._primaryDc) {\n throw new MtcuteError('Not connected to any DC')\n }\n\n // guess based on the provided delegate. it is most likely correct,\n // but we should give actual values if possible\n return this._connectionCount(kind, dcId ?? this._primaryDc.dcId, this.params.isPremium)\n }\n\n return dc[kind].getPoolSize()\n }\n\n getPrimaryDcId() {\n if (!this._primaryDc) throw new MtcuteError('Not connected to any DC')\n\n return this._primaryDc.dcId\n }\n\n destroy(): void {\n for (const dc of this._dcConnections.values()) {\n dc.destroy()\n }\n if (this._keepAliveInterval) clearInterval(this._keepAliveInterval)\n this.config.offConfigUpdate(this._onConfigChanged)\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"network-manager.js","sourceRoot":"","sources":["../../../src/network/network-manager.ts"],"names":[],"mappings":"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","sourcesContent":["import { mtp, tl } from '@mtcute/tl'\nimport { TlReaderMap, TlWriterMap } from '@mtcute/tl-runtime'\n\nimport { StorageManager } from '../storage/storage.js'\nimport { MtArgumentError, MtcuteError, MtTimeoutError, MtUnsupportedError } from '../types/index.js'\nimport {\n ControllablePromise,\n createControllablePromise,\n DcOptions,\n ICryptoProvider,\n Logger,\n sleep,\n} from '../utils/index.js'\nimport { assertTypeIs } from '../utils/type-assertions.js'\nimport { ConfigManager } from './config-manager.js'\nimport { MultiSessionConnection } from './multi-session-connection.js'\nimport { PersistentConnectionParams } from './persistent-connection.js'\nimport { defaultReconnectionStrategy, ReconnectionStrategy } from './reconnection.js'\nimport { ServerSaltManager } from './server-salt.js'\nimport { SessionConnection, SessionConnectionParams } from './session-connection.js'\nimport { defaultTransportFactory, TransportFactory } from './transports/index.js'\n\nexport type ConnectionKind = 'main' | 'upload' | 'download' | 'downloadSmall'\n\nconst CLIENT_ERRORS = {\n [tl.RpcError.BAD_REQUEST]: 1,\n [tl.RpcError.UNAUTHORIZED]: 1,\n [tl.RpcError.FORBIDDEN]: 1,\n [tl.RpcError.NOT_FOUND]: 1,\n [tl.RpcError.FLOOD]: 1,\n [tl.RpcError.SEE_OTHER]: 1,\n [tl.RpcError.NOT_ACCEPTABLE]: 1,\n}\n\n/**\n * Params passed into {@link NetworkManager} by {@link TelegramClient}.\n * This type is intended for internal usage only.\n */\nexport interface NetworkManagerParams {\n storage: StorageManager\n crypto: ICryptoProvider\n log: Logger\n\n enableErrorReporting: boolean\n apiId: number\n initConnectionOptions?: Partial<Omit<tl.RawInitConnectionRequest, 'apiId' | 'query'>>\n transport?: TransportFactory\n reconnectionStrategy?: ReconnectionStrategy<PersistentConnectionParams>\n floodSleepThreshold: number\n maxRetryCount: number\n disableUpdates?: boolean\n testMode: boolean\n layer: number\n useIpv6: boolean\n readerMap: TlReaderMap\n writerMap: TlWriterMap\n isPremium: boolean\n emitError: (err: Error, connection?: SessionConnection) => void\n onUpdate: (upd: tl.TypeUpdates) => void\n onUsable: () => void\n}\n\nexport type ConnectionCountDelegate = (kind: ConnectionKind, dcId: number, isPremium: boolean) => number\n\nconst defaultConnectionCountDelegate: ConnectionCountDelegate = (kind, dcId, isPremium) => {\n switch (kind) {\n case 'main':\n return 1\n case 'upload':\n return isPremium || (dcId !== 2 && dcId !== 4) ? 8 : 4\n case 'download':\n return isPremium ? 8 : 2\n case 'downloadSmall':\n return 2\n }\n}\n\n/**\n * Additional params passed into {@link NetworkManager} by the user\n * that customize the behavior of the manager\n */\nexport interface NetworkManagerExtraParams {\n /**\n * Whether to use PFS (Perfect Forward Secrecy) for all connections.\n * This is disabled by default\n */\n usePfs?: boolean\n\n /**\n * Connection count for each connection kind.\n * The function should be pure to avoid unexpected behavior.\n *\n * Defaults to TDLib logic:\n * - main: handled internally, **cannot be changed here**\n * - upload: if premium or dc id is other than 2 or 4, then 8, otherwise 4\n * - download: if premium then 8, otherwise 2\n * - downloadSmall: 2\n */\n connectionCount?: ConnectionCountDelegate\n\n /**\n * Idle timeout for non-main connections, in ms\n *\n * @default 60000 (60 seconds).\n */\n inactivityTimeout?: number\n}\n\n/** Options that can be customized when making an RPC call */\nexport interface RpcCallOptions {\n /**\n * If the call results in a `FLOOD_WAIT_X` error,\n * the maximum amount of time to wait before retrying.\n *\n * If set to `0`, the call will not be retried.\n *\n * @default {@link BaseTelegramClientOptions.floodSleepThreshold}\n */\n floodSleepThreshold?: number\n\n /**\n * If the call results in an internal server error or a flood wait,\n * the maximum amount of times to retry the call.\n *\n * @default {@link BaseTelegramClientOptions.maxRetryCount}\n */\n maxRetryCount?: number\n\n /**\n * Timeout for the call, in milliseconds.\n *\n * @default Infinity\n */\n timeout?: number\n\n /**\n * **ADVANCED**\n *\n * Kind of connection to use for this call.\n *\n * @default 'main'\n */\n kind?: ConnectionKind\n\n /**\n * **ADVANCED**\n *\n * ID of the DC to use for this call\n */\n dcId?: number\n\n /**\n * **ADVANCED**\n *\n * DC connection manager to use for this call.\n * Overrides `dcId` if set.\n */\n manager?: DcConnectionManager\n\n /**\n * Abort signal for the call.\n */\n abortSignal?: AbortSignal\n\n /**\n * Whether we should not retry on -503 errors and throw {@link MtTimeoutError} immediately instead.\n *\n * Useful for methods like `messages.getBotCallbackAnswer` that reliably return\n * -503 in case the upstream bot failed to respond.\n */\n throw503?: boolean\n\n /**\n * Some requests should be processed consecutively, and not in parallel.\n * Using the same `chainId` for multiple requests will ensure that they are processed in the order\n * of calling `.call()`.\n *\n * Particularly useful for `messages.sendMessage` and alike.\n */\n chainId?: string | number\n}\n\n/**\n * Wrapper over all connection pools for a single DC.\n */\nexport class DcConnectionManager {\n private _salts = new ServerSaltManager()\n private __baseConnectionParams = (): SessionConnectionParams => ({\n crypto: this.manager.params.crypto,\n initConnection: this.manager._initConnectionParams,\n transportFactory: this.manager._transportFactory,\n dc: this._dcs.media,\n testMode: this.manager.params.testMode,\n reconnectionStrategy: this.manager._reconnectionStrategy,\n layer: this.manager.params.layer,\n disableUpdates: this.manager.params.disableUpdates,\n readerMap: this.manager.params.readerMap,\n writerMap: this.manager.params.writerMap,\n usePfs: this.manager.params.usePfs,\n isMainConnection: false,\n isMainDcConnection: this.isPrimary,\n inactivityTimeout: this.manager.params.inactivityTimeout ?? 60_000,\n enableErrorReporting: this.manager.params.enableErrorReporting,\n salts: this._salts,\n })\n\n private _log = this.manager._log.create('dc-manager')\n\n /** Main connection pool */\n main: MultiSessionConnection\n\n /** Upload connection pool */\n upload = new MultiSessionConnection(\n this.__baseConnectionParams(),\n this.manager._connectionCount('upload', this.dcId, this.manager.params.isPremium),\n this._log,\n 'UPLOAD',\n )\n\n /** Download connection pool */\n download = new MultiSessionConnection(\n this.__baseConnectionParams(),\n this.manager._connectionCount('download', this.dcId, this.manager.params.isPremium),\n this._log,\n 'DOWNLOAD',\n )\n\n /** Download connection pool (for small files) */\n downloadSmall = new MultiSessionConnection(\n this.__baseConnectionParams(),\n this.manager._connectionCount('downloadSmall', this.dcId, this.manager.params.isPremium),\n this._log,\n 'DOWNLOAD_SMALL',\n )\n\n private get _mainConnectionCount() {\n if (!this.isPrimary) return 1\n\n return this.manager.config.getNow()?.tmpSessions ?? 1\n }\n\n constructor(\n /** Network manager instance */\n readonly manager: NetworkManager,\n /** DC ID */\n readonly dcId: number,\n /** DC options to use */\n readonly _dcs: DcOptions,\n /** Whether this DC is the primary one */\n public isPrimary = false,\n ) {\n this._log.prefix = `[DC ${dcId}] `\n\n const mainParams = this.__baseConnectionParams()\n mainParams.isMainConnection = true\n mainParams.dc = _dcs.main\n\n if (isPrimary) {\n mainParams.inactivityTimeout = undefined\n }\n\n this.main = new MultiSessionConnection(mainParams, this._mainConnectionCount, this._log, 'MAIN')\n\n this._setupMulti('main')\n this._setupMulti('upload')\n this._setupMulti('download')\n this._setupMulti('downloadSmall')\n }\n\n private _setupMulti(kind: ConnectionKind): void {\n const connection = this[kind]\n\n connection.on('key-change', (idx, key: Uint8Array | null) => {\n if (kind !== 'main') {\n // main connection is responsible for authorization,\n // and keys are then sent to other connections\n this.manager._log.warn('got key-change from non-main connection, ignoring')\n\n return\n }\n\n this.manager._log.debug('key change for dc %d from connection %d', this.dcId, idx)\n\n // send key to other connections\n this.upload.setAuthKey(key)\n this.download.setAuthKey(key)\n this.downloadSmall.setAuthKey(key)\n Promise.resolve(this.manager._storage.provider.authKeys.set(this.dcId, key))\n .then(() => {\n this.upload.notifyKeyChange()\n this.download.notifyKeyChange()\n this.downloadSmall.notifyKeyChange()\n })\n .catch((e: Error) => this.manager.params.emitError(e))\n })\n connection.on('tmp-key-change', (idx: number, key: Uint8Array | null, expires: number) => {\n if (kind !== 'main') {\n this.manager._log.warn('got tmp-key-change from non-main connection, ignoring')\n\n return\n }\n\n this.manager._log.debug('temp key change for dc %d from connection %d', this.dcId, idx)\n\n // send key to other connections\n this.upload.setAuthKey(key, true)\n this.download.setAuthKey(key, true)\n this.downloadSmall.setAuthKey(key, true)\n\n Promise.resolve(this.manager._storage.provider.authKeys.setTemp(this.dcId, idx, key, expires * 1000))\n .then(() => {\n this.upload.notifyKeyChange()\n this.download.notifyKeyChange()\n this.downloadSmall.notifyKeyChange()\n })\n .catch((e: Error) => this.manager.params.emitError(e))\n })\n connection.on('future-salts', (salts: mtp.RawMt_future_salt[]) => {\n Promise.resolve(this.manager._storage.salts.store(this.dcId, salts)).catch((e: Error) =>\n this.manager.params.emitError(e),\n )\n })\n\n connection.on('auth-begin', () => {\n // we need to propagate auth-begin to all connections\n // to avoid them sending requests before auth is complete\n if (kind !== 'main') {\n this.manager._log.warn('got auth-begin from non-main connection, ignoring')\n\n return\n }\n\n // reset key on non-main connections\n // this event was already propagated to additional main connections\n this.upload.resetAuthKeys()\n this.download.resetAuthKeys()\n this.downloadSmall.resetAuthKeys()\n })\n\n connection.on('request-auth', () => {\n this.main.requestAuth()\n })\n\n // fucking awesome architecture, but whatever\n connection.on('request-keys', (promise: ControllablePromise<void>) => {\n this.loadKeys(true)\n .then(() => promise.resolve())\n .catch((e: Error) => promise.reject(e))\n })\n\n connection.on('error', (err: Error, conn: SessionConnection) => {\n this.manager.params.emitError(err, conn)\n })\n }\n\n setIsPrimary(isPrimary: boolean): void {\n if (this.isPrimary === isPrimary) return\n this.isPrimary = isPrimary\n this.main.params.isMainDcConnection = isPrimary\n\n if (isPrimary) {\n this.main.setInactivityTimeout(undefined)\n } else {\n this.main.setInactivityTimeout(this.manager.params.inactivityTimeout ?? 60_000)\n }\n }\n\n setIsPremium(isPremium: boolean): void {\n this.upload.setCount(this.manager._connectionCount('upload', this.dcId, isPremium))\n this.download.setCount(this.manager._connectionCount('download', this.dcId, isPremium))\n this.downloadSmall.setCount(this.manager._connectionCount('downloadSmall', this.dcId, isPremium))\n }\n\n async loadKeys(forcePfs = false): Promise<boolean> {\n const [permanent, salts] = await Promise.all([\n this.manager._storage.provider.authKeys.get(this.dcId),\n this.manager._storage.salts.fetch(this.dcId),\n ])\n\n this.main.setAuthKey(permanent)\n this.upload.setAuthKey(permanent)\n this.download.setAuthKey(permanent)\n this.downloadSmall.setAuthKey(permanent)\n\n if (salts) {\n this._salts.setFutureSalts(salts)\n }\n\n if (!permanent) {\n return false\n }\n\n if (this.manager.params.usePfs || forcePfs) {\n const now = Date.now()\n await Promise.all(\n this.main._sessions.map(async (_, i) => {\n const temp = await this.manager._storage.provider.authKeys.getTemp(this.dcId, i, now)\n this.main.setAuthKey(temp, true, i)\n\n if (i === 0) {\n this.upload.setAuthKey(temp, true)\n this.download.setAuthKey(temp, true)\n this.downloadSmall.setAuthKey(temp, true)\n }\n }),\n )\n }\n\n return true\n }\n\n destroy() {\n this.main.destroy()\n this.upload.destroy()\n this.download.destroy()\n this.downloadSmall.destroy()\n this._salts.destroy()\n }\n}\n\n/**\n * Class that manages all connections to Telegram servers.\n */\nexport class NetworkManager {\n readonly _log = this.params.log.create('network')\n readonly _storage = this.params.storage\n\n readonly _initConnectionParams: tl.RawInitConnectionRequest\n readonly _transportFactory: TransportFactory\n readonly _reconnectionStrategy: ReconnectionStrategy<PersistentConnectionParams>\n readonly _connectionCount: ConnectionCountDelegate\n\n protected readonly _dcConnections = new Map<number, DcConnectionManager>()\n protected _primaryDc?: DcConnectionManager\n\n private _updateHandler: (upd: tl.TypeUpdates, fromClient: boolean) => void\n\n constructor(\n readonly params: NetworkManagerParams & NetworkManagerExtraParams,\n readonly config: ConfigManager,\n ) {\n let deviceModel = 'mtcute on '\n /* eslint-disable no-restricted-globals */\n if (typeof process !== 'undefined' && typeof require !== 'undefined') {\n const os = require('os') as typeof import('os')\n deviceModel += `${os.type()} ${os.arch()} ${os.release()}`\n /* eslint-enable no-restricted-globals */\n } else if (typeof navigator !== 'undefined') {\n deviceModel += navigator.userAgent\n } else deviceModel += 'unknown'\n\n this._initConnectionParams = {\n _: 'initConnection',\n deviceModel,\n systemVersion: '1.0',\n appVersion: '%VERSION%',\n systemLangCode: 'en',\n langPack: '', // \"langPacks are for official apps only\"\n langCode: 'en',\n ...(params.initConnectionOptions ?? {}),\n apiId: params.apiId,\n // eslint-disable-next-line\n query: null as any,\n }\n\n this._transportFactory = params.transport ?? defaultTransportFactory\n this._reconnectionStrategy = params.reconnectionStrategy ?? defaultReconnectionStrategy\n this._connectionCount = params.connectionCount ?? defaultConnectionCountDelegate\n this._updateHandler = params.onUpdate\n\n this._onConfigChanged = this._onConfigChanged.bind(this)\n config.onReload(this._onConfigChanged)\n }\n\n private async _findDcOptions(dcId: number): Promise<DcOptions> {\n const main = await this.config.findOption({\n dcId,\n allowIpv6: this.params.useIpv6,\n preferIpv6: this.params.useIpv6,\n allowMedia: false,\n cdn: false,\n })\n\n const media = await this.config.findOption({\n dcId,\n allowIpv6: this.params.useIpv6,\n preferIpv6: this.params.useIpv6,\n allowMedia: true,\n preferMedia: true,\n cdn: false,\n })\n\n if (!main || !media) {\n throw new MtArgumentError(`Could not find DC ${dcId}`)\n }\n\n return { main, media }\n }\n\n private _switchPrimaryDc(dc: DcConnectionManager) {\n if (this._primaryDc && this._primaryDc !== dc) {\n this._primaryDc.setIsPrimary(false)\n }\n\n this._primaryDc = dc\n dc.setIsPrimary(true)\n\n dc.main.on('usable', () => {\n this.params.onUsable()\n })\n dc.main.on('update', (update: tl.TypeUpdates) => {\n this._updateHandler(update, false)\n })\n\n return dc.loadKeys().then(() => dc.main.ensureConnected())\n }\n\n private _dcCreationPromise = new Map<number, Promise<void>>()\n async _getOtherDc(dcId: number): Promise<DcConnectionManager> {\n if (!this._dcConnections.has(dcId)) {\n if (this._dcCreationPromise.has(dcId)) {\n this._log.debug('waiting for DC %d to be created', dcId)\n await this._dcCreationPromise.get(dcId)\n\n return this._dcConnections.get(dcId)!\n }\n\n const promise = createControllablePromise<void>()\n this._dcCreationPromise.set(dcId, promise)\n\n this._log.debug('creating new DC %d', dcId)\n\n try {\n const dcOptions = await this._findDcOptions(dcId)\n\n const dc = new DcConnectionManager(this, dcId, dcOptions)\n\n if (!(await dc.loadKeys())) {\n dc.main.requestAuth()\n }\n\n this._dcConnections.set(dcId, dc)\n promise.resolve()\n } catch (e) {\n promise.reject(e)\n }\n }\n\n return this._dcConnections.get(dcId)!\n }\n\n /**\n * Perform initial connection to the default DC\n *\n * @param defaultDcs Default DCs to connect to\n */\n async connect(defaultDcs: DcOptions): Promise<void> {\n if (defaultDcs.main.id !== defaultDcs.media.id) {\n throw new MtArgumentError('Default DCs must be the same')\n }\n\n if (this._dcConnections.has(defaultDcs.main.id)) {\n // shouldn't happen\n throw new MtArgumentError('DC manager already exists')\n }\n\n const dc = new DcConnectionManager(this, defaultDcs.main.id, defaultDcs, true)\n this._dcConnections.set(defaultDcs.main.id, dc)\n await this._switchPrimaryDc(dc)\n }\n\n private _pendingExports: Record<number, Promise<void>> = {}\n private async _exportAuthTo(manager: DcConnectionManager): Promise<void> {\n if (manager.dcId in this._pendingExports) {\n this._log.debug('waiting for auth export to dc %d', manager.dcId)\n\n return this._pendingExports[manager.dcId]\n }\n\n this._log.debug('exporting auth to dc %d', manager.dcId)\n const promise = createControllablePromise<void>()\n this._pendingExports[manager.dcId] = promise\n\n try {\n const auth = await this.call({\n _: 'auth.exportAuthorization',\n dcId: manager.dcId,\n })\n\n const res = await this.call(\n {\n _: 'auth.importAuthorization',\n id: auth.id,\n bytes: auth.bytes,\n },\n { manager },\n )\n\n assertTypeIs('auth.importAuthorization', res, 'auth.authorization')\n\n promise.resolve()\n delete this._pendingExports[manager.dcId]\n } catch (e) {\n this._log.warn('failed to export auth to dc %d: %s', manager.dcId, e)\n promise.reject(e)\n throw e\n }\n }\n\n setIsPremium(isPremium: boolean): void {\n this._log.debug('setting isPremium to %s', isPremium)\n this.params.isPremium = isPremium\n\n for (const dc of this._dcConnections.values()) {\n dc.setIsPremium(isPremium)\n }\n }\n\n notifyLoggedIn(auth: tl.auth.TypeAuthorization | tl.RawUser): tl.RawUser {\n if (auth._ === 'auth.authorizationSignUpRequired') {\n throw new MtUnsupportedError(\n 'Signup is no longer supported by Telegram for non-official clients. Please use your mobile device to sign up.',\n )\n }\n\n let user: tl.RawUser\n\n if (auth._ === 'auth.authorization') {\n if (auth.tmpSessions) {\n this._primaryDc?.main.setCount(auth.tmpSessions)\n }\n\n user = auth.user as tl.RawUser\n } else {\n if (auth.bot) {\n // bots may receive tmpSessions, which we should respect\n this.config.update(true).catch((e: Error) => this.params.emitError(e))\n }\n\n user = auth\n }\n\n this.setIsPremium(user.premium!)\n\n // telegram ignores invokeWithoutUpdates for auth methods\n if (auth._ === 'auth.authorization' && this.params.disableUpdates) {\n this.resetSessions()\n }\n\n return user\n }\n\n notifyLoggedOut(): void {\n this.setIsPremium(false)\n this.resetSessions()\n }\n\n resetSessions(): void {\n const dc = this._primaryDc\n if (!dc) return\n\n dc.main.resetSessions()\n dc.upload.resetSessions()\n dc.download.resetSessions()\n dc.downloadSmall.resetSessions()\n }\n\n private _onConfigChanged(config: tl.RawConfig): void {\n if (config.tmpSessions) {\n this._primaryDc?.main.setCount(config.tmpSessions)\n }\n }\n\n async changePrimaryDc(newDc: number): Promise<void> {\n if (newDc === this._primaryDc?.dcId) return\n\n const options = await this._findDcOptions(newDc)\n\n if (!this._dcConnections.has(newDc)) {\n this._dcConnections.set(newDc, new DcConnectionManager(this, newDc, options, true))\n }\n\n await this._storage.dcs.store(options)\n\n await this._switchPrimaryDc(this._dcConnections.get(newDc)!)\n }\n\n private _floodWaitedRequests = new Map<string, number>()\n async call<T extends tl.RpcMethod>(\n message: T,\n params?: RpcCallOptions,\n stack?: string,\n ): Promise<tl.RpcCallReturn[T['_']]> {\n if (!this._primaryDc) {\n throw new MtcuteError('Not connected to any DC')\n }\n\n const floodSleepThreshold = params?.floodSleepThreshold ?? this.params.floodSleepThreshold\n const maxRetryCount = params?.maxRetryCount ?? this.params.maxRetryCount\n const throw503 = params?.throw503 ?? false\n\n // do not send requests that are in flood wait\n if (this._floodWaitedRequests.has(message._)) {\n const delta = this._floodWaitedRequests.get(message._)! - Date.now()\n\n if (delta <= 3000) {\n // flood waits below 3 seconds are \"ignored\"\n this._floodWaitedRequests.delete(message._)\n } else if (delta <= this.params.floodSleepThreshold) {\n await sleep(delta)\n this._floodWaitedRequests.delete(message._)\n } else {\n const err = tl.RpcError.create(tl.RpcError.FLOOD, 'FLOOD_WAIT_%d')\n err.seconds = Math.ceil(delta / 1000)\n throw err\n }\n }\n\n let lastError: Error | null = null\n\n const kind = params?.kind ?? 'main'\n let manager: DcConnectionManager\n\n if (params?.manager) {\n manager = params.manager\n } else if (params?.dcId && params.dcId !== this._primaryDc.dcId) {\n manager = await this._getOtherDc(params.dcId)\n } else {\n manager = this._primaryDc\n }\n\n let multi = manager[kind]\n\n for (let i = 0; i < maxRetryCount; i++) {\n try {\n const res = await multi.sendRpc(message, stack, params?.timeout, params?.abortSignal, params?.chainId)\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return res\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n lastError = e as Error\n\n if (!tl.RpcError.is(e)) {\n throw e\n }\n\n if (!(e.code in CLIENT_ERRORS)) {\n if (throw503 && e.code === -503) {\n throw new MtTimeoutError()\n }\n\n this._log.warn(\n 'Telegram is having internal issues: %d:%s (%s), retrying',\n e.code,\n e.text,\n e.message,\n )\n\n if (e.text === 'WORKER_BUSY_TOO_LONG_RETRY') {\n // according to tdlib, \"it is dangerous to resend query without timeout, so use 1\"\n await sleep(1000)\n }\n continue\n }\n\n if (e.is('FLOOD_WAIT_%d') || e.is('SLOWMODE_WAIT_%d') || e.is('FLOOD_TEST_PHONE_WAIT_%d')) {\n if (e.text !== 'SLOWMODE_WAIT_%d') {\n // SLOW_MODE_WAIT is chat-specific, not request-specific\n this._floodWaitedRequests.set(message._, Date.now() + e.seconds * 1000)\n }\n\n // In test servers, FLOOD_WAIT_0 has been observed, and sleeping for\n // such a short amount will cause retries very fast leading to issues\n if (e.seconds === 0) {\n e.seconds = 1\n }\n\n if (e.seconds <= floodSleepThreshold) {\n this._log.info('Flood wait for %d seconds', e.seconds)\n await sleep(e.seconds * 1000)\n continue\n }\n }\n\n if (manager === this._primaryDc) {\n if (e.is('PHONE_MIGRATE_%d') || e.is('NETWORK_MIGRATE_%d') || e.is('USER_MIGRATE_%d')) {\n this._log.info('Migrate error, new dc = %d', e.newDc)\n\n await this.changePrimaryDc(e.newDc)\n manager = this._primaryDc!\n multi = manager[kind]\n\n continue\n }\n } else if (e.is('AUTH_KEY_UNREGISTERED')) {\n // we can try re-exporting auth from the primary connection\n this._log.warn('exported auth key error, trying re-exporting..')\n\n await this._exportAuthTo(manager)\n continue\n }\n\n throw e\n }\n }\n\n throw lastError!\n }\n\n changeTransport(factory: TransportFactory): void {\n for (const dc of this._dcConnections.values()) {\n dc.main.changeTransport(factory)\n dc.upload.changeTransport(factory)\n dc.download.changeTransport(factory)\n dc.downloadSmall.changeTransport(factory)\n }\n }\n\n getPoolSize(kind: ConnectionKind, dcId?: number) {\n const dc = dcId ? this._dcConnections.get(dcId) : this._primaryDc\n\n if (!dc) {\n if (!this._primaryDc) {\n throw new MtcuteError('Not connected to any DC')\n }\n\n // guess based on the provided delegate. it is most likely correct,\n // but we should give actual values if possible\n return this._connectionCount(kind, dcId ?? this._primaryDc.dcId, this.params.isPremium)\n }\n\n return dc[kind].getPoolSize()\n }\n\n getPrimaryDcId() {\n if (!this._primaryDc) throw new MtcuteError('Not connected to any DC')\n\n return this._primaryDc.dcId\n }\n\n destroy(): void {\n for (const dc of this._dcConnections.values()) {\n dc.destroy()\n }\n this.config.offReload(this._onConfigChanged)\n }\n}\n"]}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
2
|
import EventEmitter from 'events';
|
|
3
|
-
import {
|
|
4
|
-
import { ICryptoProvider, Logger } from '../utils/index.js';
|
|
3
|
+
import { BasicDcOption, ICryptoProvider, Logger } from '../utils/index.js';
|
|
5
4
|
import { ReconnectionStrategy } from './reconnection.js';
|
|
6
5
|
import { ITelegramTransport, TransportFactory } from './transports/index.js';
|
|
7
6
|
export interface PersistentConnectionParams {
|
|
8
7
|
crypto: ICryptoProvider;
|
|
9
8
|
transportFactory: TransportFactory;
|
|
10
|
-
dc:
|
|
9
|
+
dc: BasicDcOption;
|
|
11
10
|
testMode: boolean;
|
|
12
11
|
reconnectionStrategy: ReconnectionStrategy<PersistentConnectionParams>;
|
|
13
12
|
inactivityTimeout?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistent-connection.js","sourceRoot":"","sources":["../../../src/network/persistent-connection.ts"],"names":[],"mappings":"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","sourcesContent":["import EventEmitter from 'events'\n\nimport { tl } from '@mtcute/tl'\n\nimport { MtcuteError } from '../types/index.js'\nimport { ICryptoProvider, Logger } from '../utils/index.js'\nimport { ReconnectionStrategy } from './reconnection.js'\nimport { ITelegramTransport, TransportFactory, TransportState } from './transports/index.js'\n\nexport interface PersistentConnectionParams {\n crypto: ICryptoProvider\n transportFactory: TransportFactory\n dc: tl.RawDcOption\n testMode: boolean\n reconnectionStrategy: ReconnectionStrategy<PersistentConnectionParams>\n inactivityTimeout?: number\n}\n\nlet nextConnectionUid = 0\n\n/**\n * Base class for persistent connections.\n * Only used for {@link PersistentConnection} and used as a mean of code splitting.\n * This class doesn't know anything about MTProto, it just manages the transport.\n */\nexport abstract class PersistentConnection extends EventEmitter {\n private _uid = nextConnectionUid++\n\n readonly params: PersistentConnectionParams\n protected _transport!: ITelegramTransport\n\n private _sendOnceConnected: Uint8Array[] = []\n\n // reconnection\n private _lastError: Error | null = null\n private _consequentFails = 0\n private _previousWait: number | null = null\n private _reconnectionTimeout: NodeJS.Timeout | null = null\n\n // inactivity timeout\n private _inactivityTimeout: NodeJS.Timeout | null = null\n private _inactive = true\n\n _destroyed = false\n _usable = false\n\n protected abstract onConnected(): void\n\n protected abstract onError(err: Error): void\n\n protected abstract onMessage(data: Uint8Array): void\n\n protected constructor(\n params: PersistentConnectionParams,\n readonly log: Logger,\n ) {\n super()\n this.params = params\n this.changeTransport(params.transportFactory)\n\n this.log.prefix = `[UID ${this._uid}] `\n\n this._onInactivityTimeout = this._onInactivityTimeout.bind(this)\n }\n\n get isConnected(): boolean {\n return this._transport.state() !== TransportState.Idle\n }\n\n changeTransport(factory: TransportFactory): void {\n if (this._transport) {\n this._transport.close()\n }\n\n this._transport = factory()\n this._transport.setup?.(this.params.crypto, this.log)\n\n this._transport.on('ready', this.onTransportReady.bind(this))\n this._transport.on('message', this.onMessage.bind(this))\n this._transport.on('error', this.onTransportError.bind(this))\n this._transport.on('close', this.onTransportClose.bind(this))\n }\n\n onTransportReady(): void {\n // transport ready does not mean actual mtproto is ready\n if (this._sendOnceConnected.length) {\n const sendNext = () => {\n if (!this._sendOnceConnected.length) {\n this.onConnected()\n\n return\n }\n\n const data = this._sendOnceConnected.shift()!\n this._transport\n .send(data)\n .then(sendNext)\n .catch((err) => {\n this.log.error('error sending queued data: %s', err)\n this._sendOnceConnected.unshift(data)\n })\n }\n\n sendNext()\n\n return\n }\n\n this.onConnected()\n }\n\n protected onConnectionUsable(): void {\n const isReconnection = this._consequentFails > 0\n\n // reset reconnection related state\n this._lastError = null\n this._consequentFails = 0\n this._previousWait = null\n this._usable = true\n this.emit('usable', isReconnection)\n this._rescheduleInactivity()\n }\n\n onTransportError(err: Error): void {\n this._lastError = err\n this.onError(err)\n // transport is expected to emit `close` after `error`\n }\n\n onTransportClose(): void {\n // transport closed because of inactivity\n // obviously we dont want to reconnect then\n if (this._inactive) return\n\n this._consequentFails += 1\n\n const wait = this.params.reconnectionStrategy(\n this.params,\n this._lastError,\n this._consequentFails,\n this._previousWait,\n )\n\n if (wait === false) {\n this.destroy()\n\n return\n }\n\n this.emit('wait', wait)\n\n this._previousWait = wait\n\n if (this._reconnectionTimeout != null) {\n clearTimeout(this._reconnectionTimeout)\n }\n this._reconnectionTimeout = setTimeout(() => {\n if (this._destroyed) return\n this._reconnectionTimeout = null\n this.connect()\n }, wait)\n }\n\n connect(): void {\n if (this.isConnected) {\n throw new MtcuteError('Connection is already opened!')\n }\n if (this._destroyed) {\n throw new MtcuteError('Connection is already destroyed!')\n }\n\n if (this._reconnectionTimeout != null) {\n clearTimeout(this._reconnectionTimeout)\n }\n\n this._inactive = false\n this._transport.connect(this.params.dc, this.params.testMode)\n }\n\n reconnect(): void {\n this._transport.close()\n }\n\n destroy(): void {\n if (this._reconnectionTimeout != null) {\n clearTimeout(this._reconnectionTimeout)\n }\n if (this._inactivityTimeout != null) {\n clearTimeout(this._inactivityTimeout)\n }\n\n this._transport.close()\n this._transport.removeAllListeners()\n this._destroyed = true\n }\n\n protected _rescheduleInactivity(): void {\n if (!this.params.inactivityTimeout) return\n if (this._inactivityTimeout) clearTimeout(this._inactivityTimeout)\n this._inactivityTimeout = setTimeout(this._onInactivityTimeout, this.params.inactivityTimeout)\n }\n\n protected _onInactivityTimeout(): void {\n this.log.info('disconnected because of inactivity for %d', this.params.inactivityTimeout)\n this._inactive = true\n this._inactivityTimeout = null\n this._transport.close()\n }\n\n setInactivityTimeout(timeout?: number): void {\n this.params.inactivityTimeout = timeout\n\n if (this._inactivityTimeout) {\n clearTimeout(this._inactivityTimeout)\n }\n\n if (timeout) {\n this._rescheduleInactivity()\n }\n }\n\n async send(data: Uint8Array): Promise<void> {\n if (this._inactive) {\n this.connect()\n }\n\n if (this._transport.state() === TransportState.Ready) {\n await this._transport.send(data)\n } else {\n this._sendOnceConnected.push(data)\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"persistent-connection.js","sourceRoot":"","sources":["../../../src/network/persistent-connection.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAiC;AAEjC,gDAA+C;AAG/C,oDAA4F;AAW5F,IAAI,iBAAiB,GAAG,CAAC,CAAA;AAEzB;;;;GAIG;AACH,MAAsB,oBAAqB,SAAQ,gBAAY;IA2B3D,YACI,MAAkC,EACzB,GAAW;QAEpB,KAAK,EAAE,CAAA;QAFE,QAAG,GAAH,GAAG,CAAQ;QA5BhB,SAAI,GAAG,iBAAiB,EAAE,CAAA;QAK1B,uBAAkB,GAAiB,EAAE,CAAA;QAE7C,eAAe;QACP,eAAU,GAAiB,IAAI,CAAA;QAC/B,qBAAgB,GAAG,CAAC,CAAA;QACpB,kBAAa,GAAkB,IAAI,CAAA;QACnC,yBAAoB,GAA0B,IAAI,CAAA;QAE1D,qBAAqB;QACb,uBAAkB,GAA0B,IAAI,CAAA;QAChD,cAAS,GAAG,IAAI,CAAA;QAExB,eAAU,GAAG,KAAK,CAAA;QAClB,YAAO,GAAG,KAAK,CAAA;QAaX,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;QAE7C,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,QAAQ,IAAI,CAAC,IAAI,IAAI,CAAA;QAEvC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACpE,CAAC;IAED,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,yBAAc,CAAC,IAAI,CAAA;IAC1D,CAAC;IAED,eAAe,CAAC,OAAyB;QACrC,IAAI,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;SAC1B;QAED,IAAI,CAAC,UAAU,GAAG,OAAO,EAAE,CAAA;QAC3B,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;QAErD,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC7D,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACxD,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC7D,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACjE,CAAC;IAED,gBAAgB;QACZ,wDAAwD;QACxD,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE;YAChC,MAAM,QAAQ,GAAG,GAAG,EAAE;gBAClB,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE;oBACjC,IAAI,CAAC,WAAW,EAAE,CAAA;oBAElB,OAAM;iBACT;gBAED,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAG,CAAA;gBAC7C,IAAI,CAAC,UAAU;qBACV,IAAI,CAAC,IAAI,CAAC;qBACV,IAAI,CAAC,QAAQ,CAAC;qBACd,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACX,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAA;oBACpD,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;gBACzC,CAAC,CAAC,CAAA;YACV,CAAC,CAAA;YAED,QAAQ,EAAE,CAAA;YAEV,OAAM;SACT;QAED,IAAI,CAAC,WAAW,EAAE,CAAA;IACtB,CAAC;IAES,kBAAkB;QACxB,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAA;QAEhD,mCAAmC;QACnC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;QACtB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAA;QACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QACnB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAA;QACnC,IAAI,CAAC,qBAAqB,EAAE,CAAA;IAChC,CAAC;IAED,gBAAgB,CAAC,GAAU;QACvB,IAAI,CAAC,UAAU,GAAG,GAAG,CAAA;QACrB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACjB,sDAAsD;IAC1D,CAAC;IAED,gBAAgB;QACZ,yCAAyC;QACzC,2CAA2C;QAC3C,IAAI,IAAI,CAAC,SAAS;YAAE,OAAM;QAE1B,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAA;QAE1B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CACzC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,aAAa,CACrB,CAAA;QAED,IAAI,IAAI,KAAK,KAAK,EAAE;YAChB,IAAI,CAAC,OAAO,EAAE,CAAA;YAEd,OAAM;SACT;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAEvB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;QAEzB,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,EAAE;YACnC,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;SAC1C;QACD,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC,GAAG,EAAE;YACxC,IAAI,IAAI,CAAC,UAAU;gBAAE,OAAM;YAC3B,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAA;YAChC,IAAI,CAAC,OAAO,EAAE,CAAA;QAClB,CAAC,EAAE,IAAI,CAAC,CAAA;IACZ,CAAC;IAED,OAAO;QACH,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,MAAM,IAAI,sBAAW,CAAC,+BAA+B,CAAC,CAAA;SACzD;QACD,IAAI,IAAI,CAAC,UAAU,EAAE;YACjB,MAAM,IAAI,sBAAW,CAAC,kCAAkC,CAAC,CAAA;SAC5D;QAED,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,EAAE;YACnC,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;SAC1C;QAED,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;QACtB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACjE,CAAC;IAED,SAAS;QACL,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;IAC3B,CAAC;IAED,OAAO;QACH,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,EAAE;YACnC,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;SAC1C;QACD,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,EAAE;YACjC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;SACxC;QAED,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QACvB,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAA;QACpC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;IAC1B,CAAC;IAES,qBAAqB;QAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB;YAAE,OAAM;QAC1C,IAAI,IAAI,CAAC,kBAAkB;YAAE,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;QAClE,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;IAClG,CAAC;IAES,oBAAoB;QAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,2CAA2C,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;QACzF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACrB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAA;QAC9B,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;IAC3B,CAAC;IAED,oBAAoB,CAAC,OAAgB;QACjC,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,OAAO,CAAA;QAEvC,IAAI,IAAI,CAAC,kBAAkB,EAAE;YACzB,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;SACxC;QAED,IAAI,OAAO,EAAE;YACT,IAAI,CAAC,qBAAqB,EAAE,CAAA;SAC/B;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAgB;QACvB,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,OAAO,EAAE,CAAA;SACjB;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,yBAAc,CAAC,KAAK,EAAE;YAClD,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SACnC;aAAM;YACH,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SACrC;IACL,CAAC;CACJ;AA/MD,oDA+MC","sourcesContent":["import EventEmitter from 'events'\n\nimport { MtcuteError } from '../types/index.js'\nimport { BasicDcOption, ICryptoProvider, Logger } from '../utils/index.js'\nimport { ReconnectionStrategy } from './reconnection.js'\nimport { ITelegramTransport, TransportFactory, TransportState } from './transports/index.js'\n\nexport interface PersistentConnectionParams {\n crypto: ICryptoProvider\n transportFactory: TransportFactory\n dc: BasicDcOption\n testMode: boolean\n reconnectionStrategy: ReconnectionStrategy<PersistentConnectionParams>\n inactivityTimeout?: number\n}\n\nlet nextConnectionUid = 0\n\n/**\n * Base class for persistent connections.\n * Only used for {@link PersistentConnection} and used as a mean of code splitting.\n * This class doesn't know anything about MTProto, it just manages the transport.\n */\nexport abstract class PersistentConnection extends EventEmitter {\n private _uid = nextConnectionUid++\n\n readonly params: PersistentConnectionParams\n protected _transport!: ITelegramTransport\n\n private _sendOnceConnected: Uint8Array[] = []\n\n // reconnection\n private _lastError: Error | null = null\n private _consequentFails = 0\n private _previousWait: number | null = null\n private _reconnectionTimeout: NodeJS.Timeout | null = null\n\n // inactivity timeout\n private _inactivityTimeout: NodeJS.Timeout | null = null\n private _inactive = true\n\n _destroyed = false\n _usable = false\n\n protected abstract onConnected(): void\n\n protected abstract onError(err: Error): void\n\n protected abstract onMessage(data: Uint8Array): void\n\n protected constructor(\n params: PersistentConnectionParams,\n readonly log: Logger,\n ) {\n super()\n this.params = params\n this.changeTransport(params.transportFactory)\n\n this.log.prefix = `[UID ${this._uid}] `\n\n this._onInactivityTimeout = this._onInactivityTimeout.bind(this)\n }\n\n get isConnected(): boolean {\n return this._transport.state() !== TransportState.Idle\n }\n\n changeTransport(factory: TransportFactory): void {\n if (this._transport) {\n this._transport.close()\n }\n\n this._transport = factory()\n this._transport.setup?.(this.params.crypto, this.log)\n\n this._transport.on('ready', this.onTransportReady.bind(this))\n this._transport.on('message', this.onMessage.bind(this))\n this._transport.on('error', this.onTransportError.bind(this))\n this._transport.on('close', this.onTransportClose.bind(this))\n }\n\n onTransportReady(): void {\n // transport ready does not mean actual mtproto is ready\n if (this._sendOnceConnected.length) {\n const sendNext = () => {\n if (!this._sendOnceConnected.length) {\n this.onConnected()\n\n return\n }\n\n const data = this._sendOnceConnected.shift()!\n this._transport\n .send(data)\n .then(sendNext)\n .catch((err) => {\n this.log.error('error sending queued data: %s', err)\n this._sendOnceConnected.unshift(data)\n })\n }\n\n sendNext()\n\n return\n }\n\n this.onConnected()\n }\n\n protected onConnectionUsable(): void {\n const isReconnection = this._consequentFails > 0\n\n // reset reconnection related state\n this._lastError = null\n this._consequentFails = 0\n this._previousWait = null\n this._usable = true\n this.emit('usable', isReconnection)\n this._rescheduleInactivity()\n }\n\n onTransportError(err: Error): void {\n this._lastError = err\n this.onError(err)\n // transport is expected to emit `close` after `error`\n }\n\n onTransportClose(): void {\n // transport closed because of inactivity\n // obviously we dont want to reconnect then\n if (this._inactive) return\n\n this._consequentFails += 1\n\n const wait = this.params.reconnectionStrategy(\n this.params,\n this._lastError,\n this._consequentFails,\n this._previousWait,\n )\n\n if (wait === false) {\n this.destroy()\n\n return\n }\n\n this.emit('wait', wait)\n\n this._previousWait = wait\n\n if (this._reconnectionTimeout != null) {\n clearTimeout(this._reconnectionTimeout)\n }\n this._reconnectionTimeout = setTimeout(() => {\n if (this._destroyed) return\n this._reconnectionTimeout = null\n this.connect()\n }, wait)\n }\n\n connect(): void {\n if (this.isConnected) {\n throw new MtcuteError('Connection is already opened!')\n }\n if (this._destroyed) {\n throw new MtcuteError('Connection is already destroyed!')\n }\n\n if (this._reconnectionTimeout != null) {\n clearTimeout(this._reconnectionTimeout)\n }\n\n this._inactive = false\n this._transport.connect(this.params.dc, this.params.testMode)\n }\n\n reconnect(): void {\n this._transport.close()\n }\n\n destroy(): void {\n if (this._reconnectionTimeout != null) {\n clearTimeout(this._reconnectionTimeout)\n }\n if (this._inactivityTimeout != null) {\n clearTimeout(this._inactivityTimeout)\n }\n\n this._transport.close()\n this._transport.removeAllListeners()\n this._destroyed = true\n }\n\n protected _rescheduleInactivity(): void {\n if (!this.params.inactivityTimeout) return\n if (this._inactivityTimeout) clearTimeout(this._inactivityTimeout)\n this._inactivityTimeout = setTimeout(this._onInactivityTimeout, this.params.inactivityTimeout)\n }\n\n protected _onInactivityTimeout(): void {\n this.log.info('disconnected because of inactivity for %d', this.params.inactivityTimeout)\n this._inactive = true\n this._inactivityTimeout = null\n this._transport.close()\n }\n\n setInactivityTimeout(timeout?: number): void {\n this.params.inactivityTimeout = timeout\n\n if (this._inactivityTimeout) {\n clearTimeout(this._inactivityTimeout)\n }\n\n if (timeout) {\n this._rescheduleInactivity()\n }\n }\n\n async send(data: Uint8Array): Promise<void> {\n if (this._inactive) {\n this.connect()\n }\n\n if (this._transport.state() === TransportState.Ready) {\n await this._transport.send(data)\n } else {\n this._sendOnceConnected.push(data)\n }\n }\n}\n"]}
|