@mtkruto/node 0.1.190 → 0.1.200

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.
Files changed (205) hide show
  1. package/esm/0_errors.d.ts +12 -0
  2. package/esm/0_errors.js +19 -0
  3. package/esm/1_utilities.d.ts +1 -1
  4. package/esm/1_utilities.js +1 -1
  5. package/esm/2_tl.d.ts +6 -6
  6. package/esm/2_tl.js +6 -6
  7. package/esm/3_storage.d.ts +5 -5
  8. package/esm/3_storage.js +5 -5
  9. package/esm/3_types.d.ts +6 -5
  10. package/esm/3_types.js +6 -5
  11. package/esm/4_constants.d.ts +2 -2
  12. package/esm/4_constants.js +2 -2
  13. package/esm/5_client.d.ts +1 -1
  14. package/esm/5_client.js +1 -1
  15. package/esm/client/0_client_abstract.js +3 -2
  16. package/esm/client/0_html.js +4 -3
  17. package/esm/client/0_markdown.js +6 -5
  18. package/esm/client/0_params.d.ts +7 -1
  19. package/esm/client/0_types.d.ts +1 -2
  20. package/esm/client/0_types.js +1 -2
  21. package/esm/client/0_utilities.d.ts +0 -3
  22. package/esm/client/0_utilities.js +2 -21
  23. package/esm/client/1_business_connection_manager.d.ts +11 -0
  24. package/esm/client/1_business_connection_manager.js +47 -0
  25. package/esm/client/1_client_encrypted.js +1 -1
  26. package/esm/client/1_client_plain.js +3 -4
  27. package/esm/client/1_composer.js +3 -2
  28. package/esm/client/1_file_manager.js +4 -4
  29. package/esm/client/1_update_manager.d.ts +8 -1
  30. package/esm/client/1_update_manager.js +88 -8
  31. package/esm/client/2_message_manager.d.ts +7 -6
  32. package/esm/client/2_message_manager.js +89 -74
  33. package/esm/client/3_chat_list_manager.js +3 -2
  34. package/esm/client/3_story_manager.js +2 -1
  35. package/esm/client/4_client.d.ts +422 -421
  36. package/esm/client/4_client.js +578 -520
  37. package/esm/mod.d.ts +1 -0
  38. package/esm/mod.js +1 -0
  39. package/esm/storage/0_storage.d.ts +5 -0
  40. package/esm/storage/0_storage.js +20 -0
  41. package/esm/storage/{1_storage_indexed_db.js → 2_storage_indexed_db.js} +1 -1
  42. package/esm/storage/{1_storage_local_storage.js → 2_storage_local_storage.js} +1 -1
  43. package/{script/storage/1_storage_memory.d.ts → esm/storage/2_storage_memory.d.ts} +1 -4
  44. package/esm/storage/{1_storage_memory.js → 2_storage_memory.js} +8 -28
  45. package/esm/storage/{1_storage_session_storage.js → 2_storage_session_storage.js} +1 -1
  46. package/esm/tl/2_types.d.ts +1071 -183
  47. package/esm/tl/2_types.js +2916 -464
  48. package/esm/tl/3_functions.d.ts +381 -17
  49. package/esm/tl/3_functions.js +1002 -120
  50. package/{script/tl/4_tl_writer.d.ts → esm/tl/5_tl_writer.d.ts} +1 -1
  51. package/{script/tl/4_rpc_result.d.ts → esm/tl/6_rpc_result.d.ts} +1 -1
  52. package/esm/tl/{4_rpc_result.js → 6_rpc_result.js} +1 -1
  53. package/esm/tl/{6_message.d.ts → 7_message.d.ts} +2 -2
  54. package/esm/tl/{6_message.js → 7_message.js} +3 -3
  55. package/esm/tl/{7_message_container.d.ts → 8_message_container.d.ts} +1 -1
  56. package/esm/tl/{7_message_container.js → 8_message_container.js} +3 -3
  57. package/esm/types/0_chat_photo.d.ts +1 -0
  58. package/esm/types/0_chat_photo.js +8 -5
  59. package/esm/types/0_message_entity.d.ts +1 -1
  60. package/esm/types/0_thumbnail.js +1 -1
  61. package/esm/types/1_bot_command_scope.d.ts +1 -1
  62. package/esm/types/1_photo.js +2 -2
  63. package/esm/types/1_story_privacy.d.ts +1 -1
  64. package/esm/types/2_business_connection.d.ts +11 -0
  65. package/esm/types/2_business_connection.js +12 -0
  66. package/esm/types/2_chat_member.d.ts +1 -1
  67. package/esm/types/2_chosen_inline_result.d.ts +1 -1
  68. package/esm/types/2_game.js +1 -1
  69. package/esm/types/2_inline_keyboard_button.d.ts +1 -1
  70. package/esm/types/2_inline_query.d.ts +1 -1
  71. package/esm/types/2_invite_link.d.ts +1 -1
  72. package/esm/types/2_message_reaction_count.d.ts +1 -1
  73. package/esm/types/2_message_reactions.d.ts +1 -1
  74. package/esm/types/2_story_content.js +1 -1
  75. package/{script/types/1_story_interactive_area.d.ts → esm/types/2_story_interactive_area.d.ts} +2 -2
  76. package/esm/types/{1_story_interactive_area.js → 2_story_interactive_area.js} +1 -1
  77. package/esm/types/3_chat_member_updated.d.ts +1 -1
  78. package/esm/types/3_reply_markup.d.ts +1 -1
  79. package/esm/types/3_story.d.ts +2 -2
  80. package/esm/types/3_story.js +1 -1
  81. package/esm/types/4_inline_query_result.d.ts +1 -1
  82. package/esm/types/4_inline_query_result.js +1 -1
  83. package/esm/types/4_message.d.ts +9 -3
  84. package/esm/types/4_message.js +22 -5
  85. package/esm/types/5_callback_query.d.ts +1 -1
  86. package/esm/types/5_callback_query.js +2 -1
  87. package/esm/types/5_chat.d.ts +1 -1
  88. package/esm/types/6_update.d.ts +12 -2
  89. package/esm/types/{0__file_id.js → _file_id.js} +2 -1
  90. package/package.json +1 -1
  91. package/script/0_errors.d.ts +12 -0
  92. package/script/0_errors.js +27 -0
  93. package/script/1_utilities.d.ts +1 -1
  94. package/script/1_utilities.js +1 -1
  95. package/script/2_tl.d.ts +6 -6
  96. package/script/2_tl.js +6 -6
  97. package/script/3_storage.d.ts +5 -5
  98. package/script/3_storage.js +5 -5
  99. package/script/3_types.d.ts +6 -5
  100. package/script/3_types.js +6 -5
  101. package/script/4_constants.d.ts +2 -2
  102. package/script/4_constants.js +2 -2
  103. package/script/5_client.d.ts +1 -1
  104. package/script/5_client.js +1 -1
  105. package/script/client/0_client_abstract.js +3 -2
  106. package/script/client/0_html.js +4 -3
  107. package/script/client/0_markdown.js +6 -5
  108. package/script/client/0_params.d.ts +7 -1
  109. package/script/client/0_types.d.ts +1 -2
  110. package/script/client/0_types.js +0 -4
  111. package/script/client/0_utilities.d.ts +0 -3
  112. package/script/client/0_utilities.js +3 -24
  113. package/script/client/1_business_connection_manager.d.ts +11 -0
  114. package/script/client/1_business_connection_manager.js +51 -0
  115. package/script/client/1_client_encrypted.js +2 -2
  116. package/script/client/1_client_plain.js +3 -4
  117. package/script/client/1_composer.js +3 -2
  118. package/script/client/1_file_manager.js +5 -5
  119. package/script/client/1_update_manager.d.ts +8 -1
  120. package/script/client/1_update_manager.js +88 -8
  121. package/script/client/2_message_manager.d.ts +7 -6
  122. package/script/client/2_message_manager.js +88 -73
  123. package/script/client/3_chat_list_manager.js +3 -2
  124. package/script/client/3_story_manager.js +2 -1
  125. package/script/client/4_client.d.ts +422 -421
  126. package/script/client/4_client.js +578 -520
  127. package/script/mod.d.ts +1 -0
  128. package/script/mod.js +1 -0
  129. package/script/storage/0_storage.d.ts +5 -0
  130. package/script/storage/0_storage.js +20 -0
  131. package/script/storage/{1_storage_indexed_db.js → 2_storage_indexed_db.js} +7 -7
  132. package/script/storage/{1_storage_local_storage.js → 2_storage_local_storage.js} +10 -10
  133. package/{esm/storage/1_storage_memory.d.ts → script/storage/2_storage_memory.d.ts} +1 -4
  134. package/script/storage/{1_storage_memory.js → 2_storage_memory.js} +12 -32
  135. package/script/storage/{1_storage_session_storage.js → 2_storage_session_storage.js} +10 -10
  136. package/script/tl/2_types.d.ts +1071 -183
  137. package/script/tl/2_types.js +3028 -504
  138. package/script/tl/3_functions.d.ts +381 -17
  139. package/script/tl/3_functions.js +1047 -143
  140. package/{esm/tl/4_tl_writer.d.ts → script/tl/5_tl_writer.d.ts} +1 -1
  141. package/{esm/tl/4_rpc_result.d.ts → script/tl/6_rpc_result.d.ts} +1 -1
  142. package/script/tl/{4_rpc_result.js → 6_rpc_result.js} +2 -2
  143. package/script/tl/{6_message.d.ts → 7_message.d.ts} +2 -2
  144. package/script/tl/{6_message.js → 7_message.js} +8 -8
  145. package/script/tl/{7_message_container.d.ts → 8_message_container.d.ts} +1 -1
  146. package/script/tl/{7_message_container.js → 8_message_container.js} +7 -7
  147. package/script/types/0_chat_photo.d.ts +1 -0
  148. package/script/types/0_chat_photo.js +16 -13
  149. package/script/types/0_message_entity.d.ts +1 -1
  150. package/script/types/0_thumbnail.js +6 -6
  151. package/script/types/1_bot_command_scope.d.ts +1 -1
  152. package/script/types/1_photo.js +7 -7
  153. package/script/types/1_story_privacy.d.ts +1 -1
  154. package/script/types/2_business_connection.d.ts +11 -0
  155. package/script/types/2_business_connection.js +16 -0
  156. package/script/types/2_chat_member.d.ts +1 -1
  157. package/script/types/2_chosen_inline_result.d.ts +1 -1
  158. package/script/types/2_game.js +3 -3
  159. package/script/types/2_inline_keyboard_button.d.ts +1 -1
  160. package/script/types/2_inline_query.d.ts +1 -1
  161. package/script/types/2_invite_link.d.ts +1 -1
  162. package/script/types/2_message_reaction_count.d.ts +1 -1
  163. package/script/types/2_message_reactions.d.ts +1 -1
  164. package/script/types/2_story_content.js +4 -4
  165. package/{esm/types/1_story_interactive_area.d.ts → script/types/2_story_interactive_area.d.ts} +2 -2
  166. package/script/types/{1_story_interactive_area.js → 2_story_interactive_area.js} +2 -2
  167. package/script/types/3_chat_member_updated.d.ts +1 -1
  168. package/script/types/3_reply_markup.d.ts +1 -1
  169. package/script/types/3_story.d.ts +2 -2
  170. package/script/types/3_story.js +2 -2
  171. package/script/types/4_inline_query_result.d.ts +1 -1
  172. package/script/types/4_inline_query_result.js +2 -2
  173. package/script/types/4_message.d.ts +9 -3
  174. package/script/types/4_message.js +37 -20
  175. package/script/types/5_callback_query.d.ts +1 -1
  176. package/script/types/5_callback_query.js +2 -1
  177. package/script/types/5_chat.d.ts +1 -1
  178. package/script/types/6_update.d.ts +12 -2
  179. package/script/types/{0__file_id.js → _file_id.js} +2 -1
  180. /package/esm/storage/{0_utilities.d.ts → 1_utilities.d.ts} +0 -0
  181. /package/esm/storage/{0_utilities.js → 1_utilities.js} +0 -0
  182. /package/esm/storage/{1_storage_indexed_db.d.ts → 2_storage_indexed_db.d.ts} +0 -0
  183. /package/esm/storage/{1_storage_local_storage.d.ts → 2_storage_local_storage.d.ts} +0 -0
  184. /package/esm/storage/{1_storage_session_storage.d.ts → 2_storage_session_storage.d.ts} +0 -0
  185. /package/esm/tl/{3_tl_reader.d.ts → 4_tl_reader.d.ts} +0 -0
  186. /package/esm/tl/{3_tl_reader.js → 4_tl_reader.js} +0 -0
  187. /package/esm/tl/{4_tl_writer.js → 5_tl_writer.js} +0 -0
  188. /package/esm/types/{0_venue.d.ts → 1_venue.d.ts} +0 -0
  189. /package/esm/types/{0_venue.js → 1_venue.js} +0 -0
  190. /package/esm/types/{0__file_id.d.ts → _file_id.d.ts} +0 -0
  191. /package/esm/types/{1__getters.d.ts → _getters.d.ts} +0 -0
  192. /package/esm/types/{1__getters.js → _getters.js} +0 -0
  193. /package/script/storage/{0_utilities.d.ts → 1_utilities.d.ts} +0 -0
  194. /package/script/storage/{0_utilities.js → 1_utilities.js} +0 -0
  195. /package/script/storage/{1_storage_indexed_db.d.ts → 2_storage_indexed_db.d.ts} +0 -0
  196. /package/script/storage/{1_storage_local_storage.d.ts → 2_storage_local_storage.d.ts} +0 -0
  197. /package/script/storage/{1_storage_session_storage.d.ts → 2_storage_session_storage.d.ts} +0 -0
  198. /package/script/tl/{3_tl_reader.d.ts → 4_tl_reader.d.ts} +0 -0
  199. /package/script/tl/{3_tl_reader.js → 4_tl_reader.js} +0 -0
  200. /package/script/tl/{4_tl_writer.js → 5_tl_writer.js} +0 -0
  201. /package/script/types/{0_venue.d.ts → 1_venue.d.ts} +0 -0
  202. /package/script/types/{0_venue.js → 1_venue.js} +0 -0
  203. /package/script/types/{0__file_id.d.ts → _file_id.d.ts} +0 -0
  204. /package/script/types/{1__getters.d.ts → _getters.d.ts} +0 -0
  205. /package/script/types/{1__getters.js → _getters.js} +0 -0
@@ -13,12 +13,12 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
13
13
  var _FileManager_instances, _FileManager_c, _FileManager_Lupload, _FileManager_downloadInner;
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.FileManager = void 0;
16
+ const _0_errors_js_1 = require("../0_errors.js");
16
17
  const _1_utilities_js_1 = require("../1_utilities.js");
17
18
  const _2_tl_js_1 = require("../2_tl.js");
18
19
  const _3_types_js_1 = require("../3_types.js");
19
20
  const _4_constants_js_1 = require("../4_constants.js");
20
21
  const _4_errors_js_1 = require("../4_errors.js");
21
- const _0_types_js_1 = require("./0_types.js");
22
22
  class FileManager {
23
23
  constructor(c) {
24
24
  _FileManager_instances.add(this);
@@ -32,7 +32,7 @@ class FileManager {
32
32
  const isBig = contents.length > 1048576; // 10 MB
33
33
  const chunkSize = params?.chunkSize ?? 512 * 1024;
34
34
  if ((0, _1_utilities_js_1.mod)(chunkSize, 1024) != 0) {
35
- throw new Error("chunkSize must be divisible by 1024");
35
+ throw new _0_errors_js_1.InputError("chunkSize must be divisible by 1024.");
36
36
  }
37
37
  const signal = params?.signal;
38
38
  __classPrivateFieldGet(this, _FileManager_Lupload, "f").debug("uploading " + (isBig ? "big " : "") + "file of size " + contents.length + " with chunk size of " + chunkSize);
@@ -70,7 +70,7 @@ class FileManager {
70
70
  __classPrivateFieldGet(this, _FileManager_Lupload, "f").warning("got a flood wait of " + err.seconds + " seconds");
71
71
  await new Promise((r) => setTimeout(r, err.seconds * 1000));
72
72
  }
73
- else if (err instanceof _0_types_js_1.ConnectionError) {
73
+ else if (err instanceof _0_errors_js_1.ConnectionError) {
74
74
  while (true) {
75
75
  try {
76
76
  await new Promise((r) => setTimeout(r, 3000));
@@ -173,7 +173,7 @@ class FileManager {
173
173
  async getCustomEmojiStickers(id) {
174
174
  id = Array.isArray(id) ? id : [id];
175
175
  if (!id.length) {
176
- throw new Error("No custom emoji ID provided");
176
+ return [];
177
177
  }
178
178
  const stickers = new Array();
179
179
  let shouldFetch = false;
@@ -232,7 +232,7 @@ _FileManager_c = new WeakMap(), _FileManager_Lupload = new WeakMap(), _FileManag
232
232
  }
233
233
  const chunkSize = params?.chunkSize ?? 1024 * 1024;
234
234
  if ((0, _1_utilities_js_1.mod)(chunkSize, 1024) != 0) {
235
- throw new Error("chunkSize must be divisible by 1024");
235
+ throw new _0_errors_js_1.InputError("chunkSize must be divisible by 1024.");
236
236
  }
237
237
  const { api, connect, disconnect } = __classPrivateFieldGet(this, _FileManager_c, "f").apiFactory(dcId);
238
238
  await connect();
@@ -1,11 +1,18 @@
1
1
  import { Queue } from "../1_utilities.js";
2
- import { enums, ReadObject, TLObject } from "../2_tl.js";
2
+ import { enums, ReadObject, TLObject, types } from "../2_tl.js";
3
3
  import { C } from "./0_types.js";
4
4
  type UpdateHandler = (update: enums.Update) => Promise<(() => Promise<unknown>)>;
5
+ export type PtsUpdate = types.UpdateNewMessage | types.UpdateDeleteMessages | types.UpdateReadHistoryInbox | types.UpdateReadHistoryOutbox | types.UpdatePinnedChannelMessages | types.UpdatePinnedMessages | types.UpdateFolderPeers | types.UpdateChannelWebPage | types.UpdateEditMessage | types.UpdateReadMessagesContents | types.UpdateWebPage;
6
+ export type ChannelPtsUpdate = types.UpdateNewChannelMessage | types.UpdateEditChannelMessage | types.UpdateDeleteChannelMessages | types.UpdateChannelTooLong;
7
+ export type QtsUpdate = types.UpdateNewEncryptedMessage | types.UpdateMessagePollVote | types.UpdateBotStopped | types.UpdateChatParticipant | types.UpdateChannelParticipant | types.UpdateBotChatInviteRequester | types.UpdateBotChatBoost | types.UpdateBotMessageReaction | types.UpdateBotMessageReactions | types.UpdateBotBusinessConnect | types.UpdateBotNewBusinessMessage | types.UpdateBotEditBusinessMessage | types.UpdateBotDeleteBusinessMessage;
5
8
  export declare class UpdateManager {
6
9
  #private;
10
+ static readonly QTS_COUNT = 1;
7
11
  static readonly MAIN_BOX_ID = 0n;
8
12
  constructor(c: C);
13
+ static isPtsUpdate(v: enums.Update): v is PtsUpdate;
14
+ static isQtsUpdate(v: enums.Update): v is QtsUpdate;
15
+ static isChannelPtsUpdate(v: enums.Update | enums.Updates): v is ChannelPtsUpdate;
9
16
  fetchState(source: string): Promise<void>;
10
17
  processChats(chats: enums.Chat[]): Promise<void>;
11
18
  processResult(result: ReadObject): Promise<void>;
@@ -10,13 +10,12 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
10
10
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
11
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
12
  };
13
- var _UpdateManager_instances, _a, _UpdateManager_c, _UpdateManager_updateState, _UpdateManager_updateHandler, _UpdateManager_LrecoverUpdateGap, _UpdateManager_LrecoverChannelUpdateGap, _UpdateManager_L$handleUpdate, _UpdateManager_L$processUpdates, _UpdateManager_LfetchState, _UpdateManager_defaultDropPendingUpdates, _UpdateManager_mustDropPendingUpdates, _UpdateManager_state, _UpdateManager_getState, _UpdateManager_setState, _UpdateManager_handleUpdateQueues, _UpdateManager_nonFirst, _UpdateManager_getChannelPtsWithDropPendingUpdatesCheck, _UpdateManager_checkGap, _UpdateManager_checkChannelGap, _UpdateManager_channelUpdateQueues, _UpdateManager_processChannelPtsUpdateInner, _UpdateManager_queueUpdate, _UpdateManager_processChannelPtsUpdate, _UpdateManager_processPtsUpdateInner, _UpdateManager_ptsUpdateQueue, _UpdateManager_processPtsUpdate, _UpdateManager_processUpdatesQueue, _UpdateManager_processUpdates, _UpdateManager_setUpdateStateDate, _UpdateManager_setUpdatePts, _UpdateManager_getLocalState, _UpdateManager_recoverChannelUpdateGap, _UpdateManager_handleUpdatesSet, _UpdateManager_handleStoredUpdates, _UpdateManager_handleUpdate;
13
+ var _UpdateManager_instances, _a, _UpdateManager_c, _UpdateManager_updateState, _UpdateManager_updateHandler, _UpdateManager_LrecoverUpdateGap, _UpdateManager_LrecoverChannelUpdateGap, _UpdateManager_L$handleUpdate, _UpdateManager_L$processUpdates, _UpdateManager_LfetchState, _UpdateManager_defaultDropPendingUpdates, _UpdateManager_mustDropPendingUpdates, _UpdateManager_state, _UpdateManager_getState, _UpdateManager_setState, _UpdateManager_handleUpdateQueues, _UpdateManager_nonFirst, _UpdateManager_getChannelPtsWithDropPendingUpdatesCheck, _UpdateManager_checkGap, _UpdateManager_checkGapQts, _UpdateManager_checkChannelGap, _UpdateManager_channelUpdateQueues, _UpdateManager_processChannelPtsUpdateInner, _UpdateManager_queueUpdate, _UpdateManager_processChannelPtsUpdate, _UpdateManager_processPtsUpdateInner, _UpdateManager_ptsUpdateQueue, _UpdateManager_processPtsUpdate, _UpdateManager_processQtsUpdateInner, _UpdateManager_qtsUpdateQueue, _UpdateManager_processQtsUpdate, _UpdateManager_processUpdatesQueue, _UpdateManager_processUpdates, _UpdateManager_setUpdateStateDate, _UpdateManager_setUpdatePts, _UpdateManager_setUpdateQts, _UpdateManager_getLocalState, _UpdateManager_recoverChannelUpdateGap, _UpdateManager_handleUpdatesSet, _UpdateManager_handleStoredUpdates, _UpdateManager_handleUpdate;
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.UpdateManager = void 0;
16
16
  const _1_utilities_js_1 = require("../1_utilities.js");
17
17
  const _2_tl_js_1 = require("../2_tl.js");
18
18
  const _4_constants_js_1 = require("../4_constants.js");
19
- const _0_utilities_js_1 = require("./0_utilities.js");
20
19
  class UpdateManager {
21
20
  constructor(c) {
22
21
  _UpdateManager_instances.add(this);
@@ -34,6 +33,7 @@ class UpdateManager {
34
33
  _UpdateManager_nonFirst.set(this, new Set());
35
34
  _UpdateManager_channelUpdateQueues.set(this, new Map());
36
35
  _UpdateManager_ptsUpdateQueue.set(this, new _1_utilities_js_1.Queue("ptsUpdate"));
36
+ _UpdateManager_qtsUpdateQueue.set(this, new _1_utilities_js_1.Queue("qtsUpdate"));
37
37
  _UpdateManager_processUpdatesQueue.set(this, new _1_utilities_js_1.Queue("UpdateManager/processUpdates"));
38
38
  _UpdateManager_handleUpdatesSet.set(this, new Set());
39
39
  __classPrivateFieldSet(this, _UpdateManager_c, c, "f");
@@ -44,8 +44,49 @@ class UpdateManager {
44
44
  __classPrivateFieldSet(this, _UpdateManager_L$processUpdates, L.branch("#processUpdates"), "f");
45
45
  __classPrivateFieldSet(this, _UpdateManager_LfetchState, L.branch("fetchState"), "f");
46
46
  }
47
+ static isPtsUpdate(v) {
48
+ return v instanceof _2_tl_js_1.types.UpdateNewMessage ||
49
+ v instanceof _2_tl_js_1.types.UpdateDeleteMessages ||
50
+ v instanceof _2_tl_js_1.types.UpdateReadHistoryInbox ||
51
+ v instanceof _2_tl_js_1.types.UpdateReadHistoryOutbox ||
52
+ v instanceof _2_tl_js_1.types.UpdatePinnedChannelMessages ||
53
+ v instanceof _2_tl_js_1.types.UpdatePinnedMessages ||
54
+ v instanceof _2_tl_js_1.types.UpdateFolderPeers ||
55
+ v instanceof _2_tl_js_1.types.UpdateChannelWebPage ||
56
+ v instanceof _2_tl_js_1.types.UpdateEditMessage ||
57
+ v instanceof _2_tl_js_1.types.UpdateReadMessagesContents ||
58
+ v instanceof _2_tl_js_1.types.UpdateWebPage;
59
+ }
60
+ static isQtsUpdate(v) {
61
+ return v instanceof _2_tl_js_1.types.UpdateNewEncryptedMessage ||
62
+ v instanceof _2_tl_js_1.types.UpdateMessagePollVote ||
63
+ v instanceof _2_tl_js_1.types.UpdateBotStopped ||
64
+ v instanceof _2_tl_js_1.types.UpdateChatParticipant ||
65
+ v instanceof _2_tl_js_1.types.UpdateChannelParticipant ||
66
+ v instanceof _2_tl_js_1.types.UpdateBotChatInviteRequester ||
67
+ v instanceof _2_tl_js_1.types.UpdateBotChatBoost ||
68
+ v instanceof _2_tl_js_1.types.UpdateBotMessageReaction ||
69
+ v instanceof _2_tl_js_1.types.UpdateBotMessageReactions ||
70
+ v instanceof _2_tl_js_1.types.UpdateBotBusinessConnect ||
71
+ v instanceof _2_tl_js_1.types.UpdateBotNewBusinessMessage ||
72
+ v instanceof _2_tl_js_1.types.UpdateBotEditBusinessMessage ||
73
+ v instanceof _2_tl_js_1.types.UpdateBotDeleteBusinessMessage;
74
+ }
75
+ static isChannelPtsUpdate(v) {
76
+ return v instanceof _2_tl_js_1.types.UpdateNewChannelMessage ||
77
+ v instanceof _2_tl_js_1.types.UpdateEditChannelMessage ||
78
+ v instanceof _2_tl_js_1.types.UpdateDeleteChannelMessages ||
79
+ v instanceof _2_tl_js_1.types.UpdateChannelTooLong;
80
+ }
47
81
  async fetchState(source) {
48
- const state = await __classPrivateFieldGet(this, _UpdateManager_c, "f").api.updates.getState();
82
+ let state = await __classPrivateFieldGet(this, _UpdateManager_c, "f").api.updates.getState();
83
+ const difference = await __classPrivateFieldGet(this, _UpdateManager_c, "f").api.updates.getDifference(state);
84
+ if (difference instanceof _2_tl_js_1.types.updates.Difference) {
85
+ state = difference.state;
86
+ }
87
+ else if (difference instanceof _2_tl_js_1.types.updates.DifferenceSlice) {
88
+ state = difference.intermediate_state;
89
+ }
49
90
  __classPrivateFieldSet(this, _UpdateManager_updateState, state, "f");
50
91
  __classPrivateFieldGet(this, _UpdateManager_LfetchState, "f").debug(`state fetched [${source}]`);
51
92
  if (await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_mustDropPendingUpdates).call(this)) {
@@ -241,7 +282,7 @@ class UpdateManager {
241
282
  }
242
283
  }
243
284
  exports.UpdateManager = UpdateManager;
244
- _a = UpdateManager, _UpdateManager_c = new WeakMap(), _UpdateManager_updateState = new WeakMap(), _UpdateManager_updateHandler = new WeakMap(), _UpdateManager_LrecoverUpdateGap = new WeakMap(), _UpdateManager_LrecoverChannelUpdateGap = new WeakMap(), _UpdateManager_L$handleUpdate = new WeakMap(), _UpdateManager_L$processUpdates = new WeakMap(), _UpdateManager_LfetchState = new WeakMap(), _UpdateManager_defaultDropPendingUpdates = new WeakMap(), _UpdateManager_state = new WeakMap(), _UpdateManager_handleUpdateQueues = new WeakMap(), _UpdateManager_nonFirst = new WeakMap(), _UpdateManager_channelUpdateQueues = new WeakMap(), _UpdateManager_ptsUpdateQueue = new WeakMap(), _UpdateManager_processUpdatesQueue = new WeakMap(), _UpdateManager_handleUpdatesSet = new WeakMap(), _UpdateManager_instances = new WeakSet(), _UpdateManager_mustDropPendingUpdates = async function _UpdateManager_mustDropPendingUpdates() {
285
+ _a = UpdateManager, _UpdateManager_c = new WeakMap(), _UpdateManager_updateState = new WeakMap(), _UpdateManager_updateHandler = new WeakMap(), _UpdateManager_LrecoverUpdateGap = new WeakMap(), _UpdateManager_LrecoverChannelUpdateGap = new WeakMap(), _UpdateManager_L$handleUpdate = new WeakMap(), _UpdateManager_L$processUpdates = new WeakMap(), _UpdateManager_LfetchState = new WeakMap(), _UpdateManager_defaultDropPendingUpdates = new WeakMap(), _UpdateManager_state = new WeakMap(), _UpdateManager_handleUpdateQueues = new WeakMap(), _UpdateManager_nonFirst = new WeakMap(), _UpdateManager_channelUpdateQueues = new WeakMap(), _UpdateManager_ptsUpdateQueue = new WeakMap(), _UpdateManager_qtsUpdateQueue = new WeakMap(), _UpdateManager_processUpdatesQueue = new WeakMap(), _UpdateManager_handleUpdatesSet = new WeakMap(), _UpdateManager_instances = new WeakSet(), _UpdateManager_mustDropPendingUpdates = async function _UpdateManager_mustDropPendingUpdates() {
245
286
  if (typeof __classPrivateFieldGet(this, _UpdateManager_c, "f").dropPendingUpdates === "boolean") {
246
287
  return __classPrivateFieldGet(this, _UpdateManager_c, "f").dropPendingUpdates;
247
288
  }
@@ -278,7 +319,12 @@ _a = UpdateManager, _UpdateManager_c = new WeakMap(), _UpdateManager_updateState
278
319
  }, _UpdateManager_checkGap = async function _UpdateManager_checkGap(pts, ptsCount) {
279
320
  const localState = await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_getLocalState).call(this);
280
321
  if (localState.pts + ptsCount < pts) {
281
- await this.recoverUpdateGap("processUpdates");
322
+ await this.recoverUpdateGap("processUpdates[pts]");
323
+ }
324
+ }, _UpdateManager_checkGapQts = async function _UpdateManager_checkGapQts(qts) {
325
+ const localState = await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_getLocalState).call(this);
326
+ if (localState.qts + _a.QTS_COUNT < qts) {
327
+ await this.recoverUpdateGap("processUpdates[qts]");
282
328
  }
283
329
  }, _UpdateManager_checkChannelGap = async function _UpdateManager_checkChannelGap(channelId, pts, ptsCount) {
284
330
  let localPts = await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_getChannelPtsWithDropPendingUpdatesCheck).call(this, channelId);
@@ -350,11 +396,32 @@ _a = UpdateManager, _UpdateManager_c = new WeakMap(), _UpdateManager_updateState
350
396
  if (update.pts != 0) {
351
397
  await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_setUpdatePts).call(this, update.pts);
352
398
  }
353
- __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_queueUpdate).call(this, update, 0n, true);
399
+ __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_queueUpdate).call(this, update, 1n, false);
354
400
  }, _UpdateManager_processPtsUpdate = function _UpdateManager_processPtsUpdate(update, checkGap) {
355
401
  __classPrivateFieldGet(this, _UpdateManager_ptsUpdateQueue, "f").add(async () => {
356
402
  await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_processPtsUpdateInner).call(this, update, checkGap);
357
403
  });
404
+ }, _UpdateManager_processQtsUpdateInner = async function _UpdateManager_processQtsUpdateInner(update, checkGap) {
405
+ const localState = await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_getLocalState).call(this);
406
+ if (update.qts != 0) {
407
+ if (checkGap) {
408
+ await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_checkGapQts).call(this, update.qts);
409
+ }
410
+ if (localState.qts + _a.QTS_COUNT > update.qts) {
411
+ return;
412
+ }
413
+ }
414
+ if (__classPrivateFieldGet(this, _UpdateManager_c, "f").guaranteeUpdateDelivery) {
415
+ await __classPrivateFieldGet(this, _UpdateManager_c, "f").storage.setUpdate(_a.MAIN_BOX_ID, update);
416
+ }
417
+ if (update.qts != 0) {
418
+ await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_setUpdateQts).call(this, update.qts);
419
+ }
420
+ __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_queueUpdate).call(this, update, 0n, true);
421
+ }, _UpdateManager_processQtsUpdate = function _UpdateManager_processQtsUpdate(update, checkGap) {
422
+ __classPrivateFieldGet(this, _UpdateManager_qtsUpdateQueue, "f").add(async () => {
423
+ await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_processQtsUpdateInner).call(this, update, checkGap);
424
+ });
358
425
  }, _UpdateManager_processUpdates = async function _UpdateManager_processUpdates(updates_, checkGap, call = null) {
359
426
  /// First, individual updates (Update[1]) are extracted from Updates.[2]
360
427
  ///
@@ -502,12 +569,15 @@ _a = UpdateManager, _UpdateManager_c = new WeakMap(), _UpdateManager_updateState
502
569
  (0, _1_utilities_js_1.UNREACHABLE)();
503
570
  }
504
571
  }
505
- else if ((0, _0_utilities_js_1.isPtsUpdate)(update)) {
572
+ else if (_a.isPtsUpdate(update)) {
506
573
  __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_processPtsUpdate).call(this, update, checkGap);
507
574
  }
508
- else if ((0, _0_utilities_js_1.isChannelPtsUpdate)(update)) {
575
+ else if (_a.isChannelPtsUpdate(update)) {
509
576
  __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_processChannelPtsUpdate).call(this, update, checkGap);
510
577
  }
578
+ else if (_a.isQtsUpdate(update)) {
579
+ __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_processQtsUpdate).call(this, update, checkGap);
580
+ }
511
581
  else {
512
582
  __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_queueUpdate).call(this, update, 0n, false);
513
583
  }
@@ -520,6 +590,10 @@ _a = UpdateManager, _UpdateManager_c = new WeakMap(), _UpdateManager_updateState
520
590
  const localState = await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_getLocalState).call(this);
521
591
  localState.pts = pts;
522
592
  await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_setState).call(this, localState);
593
+ }, _UpdateManager_setUpdateQts = async function _UpdateManager_setUpdateQts(qts) {
594
+ const localState = await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_getLocalState).call(this);
595
+ localState.qts = qts;
596
+ await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_setState).call(this, localState);
523
597
  }, _UpdateManager_getLocalState = async function _UpdateManager_getLocalState() {
524
598
  let localState = await __classPrivateFieldGet(this, _UpdateManager_instances, "m", _UpdateManager_getState).call(this);
525
599
  if (!localState) {
@@ -627,6 +701,12 @@ _a = UpdateManager, _UpdateManager_c = new WeakMap(), _UpdateManager_updateState
627
701
  return () => Promise.resolve();
628
702
  }
629
703
  };
704
+ Object.defineProperty(UpdateManager, "QTS_COUNT", {
705
+ enumerable: true,
706
+ configurable: true,
707
+ writable: true,
708
+ value: 1
709
+ });
630
710
  Object.defineProperty(UpdateManager, "MAIN_BOX_ID", {
631
711
  enumerable: true,
632
712
  configurable: true,
@@ -1,12 +1,12 @@
1
1
  import { enums, types } from "../2_tl.js";
2
2
  import { ChatAction, ChatMember, FileSource, FileType, ID, Message, MessageEntity, ParseMode, Reaction, Update, UsernameResolver } from "../3_types.js";
3
- import { AddReactionParams, BanChatMemberParams, CreateInviteLinkParams, DeleteMessagesParams, EditMessageLiveLocationParams, EditMessageParams, EditMessageReplyMarkupParams, ForwardMessagesParams, GetCreatedInviteLinksParams, GetHistoryParams, PinMessageParams, SearchMessagesParams, SendAnimationParams, SendAudioParams, SendContactParams, SendDiceParams, SendDocumentParams, SendLocationParams, SendMessageParams, SendPhotoParams, SendPollParams, SendStickerParams, SendVenueParams, SendVideoNoteParams, SendVideoParams, SendVoiceParams, SetChatMemberRightsParams, SetChatPhotoParams, SetReactionsParams, StopPollParams } from "./0_params.js";
3
+ import { AddReactionParams, BanChatMemberParams, CreateInviteLinkParams, DeleteMessagesParams, EditMessageLiveLocationParams, EditMessageParams, EditMessageReplyMarkupParams, ForwardMessagesParams, GetCreatedInviteLinksParams, GetHistoryParams, PinMessageParams, SearchMessagesParams, SendAnimationParams, SendAudioParams, SendChatActionParams, SendContactParams, SendDiceParams, SendDocumentParams, SendLocationParams, SendMessageParams, SendPhotoParams, SendPollParams, SendStickerParams, SendVenueParams, SendVideoNoteParams, SendVideoParams, SendVoiceParams, SetChatMemberRightsParams, SetChatPhotoParams, SetReactionsParams, StopPollParams } from "./0_params.js";
4
4
  import { C as C_ } from "./0_types.js";
5
5
  import { FileManager } from "./1_file_manager.js";
6
6
  interface C extends C_ {
7
7
  fileManager: FileManager;
8
8
  }
9
- type MessageManagerUpdate = types.UpdateNewMessage | types.UpdateNewChannelMessage | types.UpdateEditMessage | types.UpdateEditChannelMessage | types.UpdateDeleteMessages | types.UpdateDeleteChannelMessages | types.UpdateChannelParticipant | types.UpdateChatParticipant;
9
+ type MessageManagerUpdate = types.UpdateNewMessage | types.UpdateNewChannelMessage | types.UpdateEditMessage | types.UpdateEditChannelMessage | types.UpdateBotNewBusinessMessage | types.UpdateBotEditBusinessMessage | types.UpdateBotDeleteBusinessMessage | types.UpdateDeleteMessages | types.UpdateDeleteChannelMessages | types.UpdateChannelParticipant | types.UpdateChatParticipant;
10
10
  export declare class MessageManager {
11
11
  #private;
12
12
  constructor(c: C);
@@ -18,7 +18,10 @@ export declare class MessageManager {
18
18
  parseMode?: ParseMode;
19
19
  entities?: MessageEntity[];
20
20
  }): Promise<readonly [string, enums.MessageEntity[] | undefined]>;
21
- constructMessage(message_: enums.Message, r?: boolean): Promise<Message>;
21
+ constructMessage(message_: enums.Message, r?: boolean, business?: {
22
+ connectionId: string;
23
+ replyToMessage?: enums.Message;
24
+ }): Promise<Message>;
22
25
  forwardMessages(from: ID, to: ID, messageIds: number[], params?: ForwardMessagesParams): Promise<Message[]>;
23
26
  getHistory(chatId: ID, params?: GetHistoryParams): Promise<Message[]>;
24
27
  usernameResolver: UsernameResolver;
@@ -56,9 +59,7 @@ export declare class MessageManager {
56
59
  removeReaction(chatId: number, messageId: number, reaction: Reaction): Promise<void>;
57
60
  static canHandleUpdate(update: enums.Update): update is MessageManagerUpdate;
58
61
  handleUpdate(update: MessageManagerUpdate): Promise<Update | null>;
59
- sendChatAction(chatId: ID, action: ChatAction, params?: {
60
- messageThreadId?: number;
61
- }): Promise<void>;
62
+ sendChatAction(chatId: ID, action: ChatAction, params?: SendChatActionParams): Promise<void>;
62
63
  deleteChatPhoto(chatId: number): Promise<void>;
63
64
  setChatPhoto(chatId: number, photo: FileSource, params?: SetChatPhotoParams): Promise<void>;
64
65
  banChatMember(chatId: ID, memberId: ID, params?: BanChatMemberParams): Promise<void>;