@mtcute/core 0.7.3 → 0.9.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.
Files changed (1169) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +26 -3
  3. package/cjs/highlevel/base.d.ts +3 -1
  4. package/cjs/highlevel/base.js +18 -0
  5. package/cjs/highlevel/base.js.map +1 -1
  6. package/cjs/highlevel/client.d.ts +23 -10
  7. package/cjs/highlevel/client.js +26 -19
  8. package/cjs/highlevel/client.js.map +1 -1
  9. package/cjs/highlevel/client.types.d.ts +14 -0
  10. package/cjs/highlevel/client.types.js.map +1 -1
  11. package/cjs/highlevel/index.d.ts +0 -2
  12. package/cjs/highlevel/index.js +0 -2
  13. package/cjs/highlevel/index.js.map +1 -1
  14. package/cjs/highlevel/methods/_imports.js.map +1 -1
  15. package/cjs/highlevel/methods/_init.js +4 -29
  16. package/cjs/highlevel/methods/_init.js.map +1 -1
  17. package/cjs/highlevel/methods/bots/get-callback-answer.js +2 -2
  18. package/cjs/highlevel/methods/bots/get-callback-answer.js.map +1 -1
  19. package/cjs/highlevel/methods/dialogs/create-folder.js +1 -1
  20. package/cjs/highlevel/methods/dialogs/create-folder.js.map +1 -1
  21. package/cjs/highlevel/methods/dialogs/edit-folder.js +1 -1
  22. package/cjs/highlevel/methods/dialogs/edit-folder.js.map +1 -1
  23. package/cjs/highlevel/methods/dialogs/find-folder.js +1 -1
  24. package/cjs/highlevel/methods/dialogs/find-folder.js.map +1 -1
  25. package/cjs/highlevel/methods/dialogs/get-folders.d.ts +1 -1
  26. package/cjs/highlevel/methods/dialogs/get-folders.js +1 -1
  27. package/cjs/highlevel/methods/dialogs/get-folders.js.map +1 -1
  28. package/cjs/highlevel/methods/files/download-file.d.ts +1 -10
  29. package/cjs/highlevel/methods/files/download-file.js +1 -32
  30. package/cjs/highlevel/methods/files/download-file.js.map +1 -1
  31. package/cjs/highlevel/methods/files/download-iterable.js +2 -1
  32. package/cjs/highlevel/methods/files/download-iterable.js.map +1 -1
  33. package/cjs/highlevel/methods/files/download-node-stream.js +4 -0
  34. package/cjs/highlevel/methods/files/download-node-stream.js.map +1 -0
  35. package/cjs/highlevel/methods/files/normalize-input-media.d.ts +1 -1
  36. package/cjs/highlevel/methods/files/normalize-input-media.js +2 -1
  37. package/cjs/highlevel/methods/files/normalize-input-media.js.map +1 -1
  38. package/cjs/highlevel/methods/files/upload-file.d.ts +0 -3
  39. package/cjs/highlevel/methods/files/upload-file.js +24 -11
  40. package/cjs/highlevel/methods/files/upload-file.js.map +1 -1
  41. package/cjs/highlevel/methods/messages/find-in-update.js +23 -8
  42. package/cjs/highlevel/methods/messages/find-in-update.js.map +1 -1
  43. package/cjs/highlevel/methods/messages/send-media-group.d.ts +1 -1
  44. package/cjs/highlevel/methods/messages/send-media-group.js.map +1 -1
  45. package/cjs/highlevel/methods/messages/send-media.d.ts +2 -2
  46. package/cjs/highlevel/methods/messages/send-media.js +5 -4
  47. package/cjs/highlevel/methods/messages/send-media.js.map +1 -1
  48. package/cjs/highlevel/methods/messages/send-text.d.ts +1 -1
  49. package/cjs/highlevel/methods/messages/send-text.js +7 -6
  50. package/cjs/highlevel/methods/messages/send-text.js.map +1 -1
  51. package/cjs/highlevel/methods/misc/with-params.d.ts +10 -0
  52. package/cjs/highlevel/methods/misc/with-params.js +32 -0
  53. package/cjs/highlevel/methods/misc/with-params.js.map +1 -0
  54. package/cjs/highlevel/methods.d.ts +13 -1
  55. package/cjs/highlevel/methods.js +4 -6
  56. package/cjs/highlevel/methods.js.map +1 -1
  57. package/cjs/highlevel/types/bots/command-scope/index.d.ts +10 -0
  58. package/cjs/highlevel/types/bots/command-scope/index.js +29 -0
  59. package/cjs/highlevel/types/bots/command-scope/index.js.map +1 -0
  60. package/cjs/highlevel/types/bots/command-scope/inner.d.ts +54 -0
  61. package/cjs/highlevel/types/bots/command-scope/inner.js +76 -0
  62. package/cjs/highlevel/types/bots/command-scope/inner.js.map +1 -0
  63. package/cjs/highlevel/types/bots/index.d.ts +4 -4
  64. package/cjs/highlevel/types/bots/index.js +4 -4
  65. package/cjs/highlevel/types/bots/index.js.map +1 -1
  66. package/cjs/highlevel/types/bots/inline-message/factories.d.ts +43 -0
  67. package/cjs/highlevel/types/bots/inline-message/factories.js +175 -0
  68. package/cjs/highlevel/types/bots/inline-message/factories.js.map +1 -0
  69. package/cjs/highlevel/types/bots/inline-message/index.d.ts +3 -0
  70. package/cjs/highlevel/types/bots/inline-message/index.js +33 -0
  71. package/cjs/highlevel/types/bots/inline-message/index.js.map +1 -0
  72. package/{esm/highlevel/types/bots/input/input-inline-message.d.ts → cjs/highlevel/types/bots/inline-message/types.d.ts} +2 -45
  73. package/cjs/highlevel/types/bots/inline-message/types.js +3 -0
  74. package/cjs/highlevel/types/bots/inline-message/types.js.map +1 -0
  75. package/cjs/highlevel/types/bots/inline-result/factories.d.ts +94 -0
  76. package/cjs/highlevel/types/bots/inline-result/factories.js +486 -0
  77. package/cjs/highlevel/types/bots/inline-result/factories.js.map +1 -0
  78. package/cjs/highlevel/types/bots/inline-result/index.d.ts +3 -0
  79. package/cjs/highlevel/types/bots/inline-result/index.js +33 -0
  80. package/cjs/highlevel/types/bots/inline-result/index.js.map +1 -0
  81. package/{esm/highlevel/types/bots/input/input-inline-result.d.ts → cjs/highlevel/types/bots/inline-result/types.d.ts} +1 -95
  82. package/cjs/highlevel/types/bots/inline-result/types.js +3 -0
  83. package/cjs/highlevel/types/bots/inline-result/types.js.map +1 -0
  84. package/cjs/highlevel/types/bots/{keyboard-builder.d.ts → keyboards/builder.d.ts} +1 -1
  85. package/cjs/highlevel/types/bots/{keyboard-builder.js → keyboards/builder.js} +1 -1
  86. package/cjs/highlevel/types/bots/keyboards/builder.js.map +1 -0
  87. package/cjs/highlevel/types/bots/keyboards/factories.d.ts +195 -0
  88. package/cjs/highlevel/types/bots/keyboards/factories.js +366 -0
  89. package/cjs/highlevel/types/bots/keyboards/factories.js.map +1 -0
  90. package/cjs/highlevel/types/bots/keyboards/index.d.ts +14 -0
  91. package/cjs/highlevel/types/bots/keyboards/index.js +33 -0
  92. package/cjs/highlevel/types/bots/keyboards/index.js.map +1 -0
  93. package/cjs/highlevel/types/bots/keyboards/types.d.ts +34 -0
  94. package/cjs/highlevel/types/bots/keyboards/types.js +3 -0
  95. package/cjs/highlevel/types/bots/keyboards/types.js.map +1 -0
  96. package/cjs/highlevel/types/files/utils.d.ts +9 -6
  97. package/cjs/highlevel/types/files/utils.js.map +1 -1
  98. package/cjs/highlevel/types/media/document.js +3 -2
  99. package/cjs/highlevel/types/media/document.js.map +1 -1
  100. package/cjs/highlevel/types/media/index.d.ts +1 -1
  101. package/cjs/highlevel/types/media/index.js +1 -1
  102. package/cjs/highlevel/types/media/index.js.map +1 -1
  103. package/cjs/highlevel/types/media/input-media/factories.d.ts +141 -0
  104. package/cjs/highlevel/types/media/input-media/factories.js +250 -0
  105. package/cjs/highlevel/types/media/input-media/factories.js.map +1 -0
  106. package/cjs/highlevel/types/media/input-media/index.d.ts +3 -0
  107. package/cjs/highlevel/types/media/input-media/index.js +33 -0
  108. package/cjs/highlevel/types/media/input-media/index.js.map +1 -0
  109. package/cjs/highlevel/types/media/{input-media.d.ts → input-media/types.d.ts} +5 -145
  110. package/cjs/highlevel/types/media/input-media/types.js +3 -0
  111. package/cjs/highlevel/types/media/input-media/types.js.map +1 -0
  112. package/cjs/highlevel/types/media/thumbnail.js +5 -4
  113. package/cjs/highlevel/types/media/thumbnail.js.map +1 -1
  114. package/cjs/highlevel/types/messages/message.d.ts +1 -1
  115. package/cjs/highlevel/types/messages/message.js +3 -3
  116. package/cjs/highlevel/types/messages/message.js.map +1 -1
  117. package/cjs/highlevel/types/misc/index.d.ts +1 -1
  118. package/cjs/highlevel/types/misc/index.js +1 -1
  119. package/cjs/highlevel/types/misc/index.js.map +1 -1
  120. package/cjs/highlevel/types/misc/input-privacy-rule/allow.d.ts +22 -0
  121. package/cjs/highlevel/types/misc/input-privacy-rule/allow.js +36 -0
  122. package/cjs/highlevel/types/misc/input-privacy-rule/allow.js.map +1 -0
  123. package/cjs/highlevel/types/misc/input-privacy-rule/bundle.d.ts +3 -0
  124. package/cjs/highlevel/types/misc/input-privacy-rule/bundle.js +31 -0
  125. package/cjs/highlevel/types/misc/input-privacy-rule/bundle.js.map +1 -0
  126. package/cjs/highlevel/types/misc/input-privacy-rule/disallow.d.ts +20 -0
  127. package/cjs/highlevel/types/misc/input-privacy-rule/disallow.js +32 -0
  128. package/cjs/highlevel/types/misc/input-privacy-rule/disallow.js.map +1 -0
  129. package/cjs/highlevel/types/misc/input-privacy-rule/index.d.ts +3 -0
  130. package/cjs/highlevel/types/misc/input-privacy-rule/index.js +33 -0
  131. package/cjs/highlevel/types/misc/input-privacy-rule/index.js.map +1 -0
  132. package/cjs/highlevel/types/misc/input-privacy-rule/types.d.ts +11 -0
  133. package/cjs/highlevel/types/misc/input-privacy-rule/types.js +3 -0
  134. package/cjs/highlevel/types/misc/input-privacy-rule/types.js.map +1 -0
  135. package/cjs/highlevel/types/peers/chat-photo.js +3 -2
  136. package/cjs/highlevel/types/peers/chat-photo.js.map +1 -1
  137. package/cjs/highlevel/types/updates/callback-query.js +2 -2
  138. package/cjs/highlevel/types/updates/callback-query.js.map +1 -1
  139. package/cjs/highlevel/types/updates/user-status-update.js +1 -1
  140. package/cjs/highlevel/types/updates/user-status-update.js.map +1 -1
  141. package/cjs/highlevel/updates/manager.d.ts +5 -3
  142. package/cjs/highlevel/updates/manager.js +81 -67
  143. package/cjs/highlevel/updates/manager.js.map +1 -1
  144. package/cjs/highlevel/utils/convert-file-id.js +7 -6
  145. package/cjs/highlevel/utils/convert-file-id.js.map +1 -1
  146. package/cjs/highlevel/utils/file-utils.js +8 -4
  147. package/cjs/highlevel/utils/file-utils.js.map +1 -1
  148. package/cjs/highlevel/utils/inline-utils.js +3 -2
  149. package/cjs/highlevel/utils/inline-utils.js.map +1 -1
  150. package/cjs/highlevel/utils/inspectable.d.ts +1 -1
  151. package/cjs/highlevel/utils/inspectable.js +3 -2
  152. package/cjs/highlevel/utils/inspectable.js.map +1 -1
  153. package/cjs/highlevel/utils/memoize.d.ts +1 -1
  154. package/cjs/highlevel/utils/memoize.js +1 -0
  155. package/cjs/highlevel/utils/memoize.js.map +1 -1
  156. package/cjs/highlevel/utils/stream-utils.d.ts +0 -2
  157. package/cjs/highlevel/utils/stream-utils.js +1 -28
  158. package/cjs/highlevel/utils/stream-utils.js.map +1 -1
  159. package/cjs/highlevel/utils/string-session.js +3 -2
  160. package/cjs/highlevel/utils/string-session.js.map +1 -1
  161. package/cjs/highlevel/worker/index.d.ts +3 -0
  162. package/cjs/highlevel/{types/bots/input → worker}/index.js +3 -2
  163. package/cjs/highlevel/worker/index.js.map +1 -0
  164. package/cjs/highlevel/worker/port.d.ts +6 -3
  165. package/cjs/highlevel/worker/port.js +8 -2
  166. package/cjs/highlevel/worker/port.js.map +1 -1
  167. package/cjs/highlevel/worker/protocol.d.ts +5 -1
  168. package/cjs/highlevel/worker/protocol.js.map +1 -1
  169. package/cjs/highlevel/worker/worker.d.ts +11 -4
  170. package/cjs/highlevel/worker/worker.js +53 -49
  171. package/cjs/highlevel/worker/worker.js.map +1 -1
  172. package/cjs/network/client.d.ts +4 -4
  173. package/cjs/network/client.js +3 -1
  174. package/cjs/network/client.js.map +1 -1
  175. package/cjs/network/multi-session-connection.d.ts +1 -0
  176. package/cjs/network/multi-session-connection.js +6 -0
  177. package/cjs/network/multi-session-connection.js.map +1 -1
  178. package/cjs/network/network-manager.d.ts +5 -1
  179. package/cjs/network/network-manager.js +24 -15
  180. package/cjs/network/network-manager.js.map +1 -1
  181. package/cjs/network/persistent-connection.d.ts +3 -0
  182. package/cjs/network/persistent-connection.js +23 -1
  183. package/cjs/network/persistent-connection.js.map +1 -1
  184. package/cjs/network/session-connection.d.ts +2 -0
  185. package/cjs/network/session-connection.js +18 -4
  186. package/cjs/network/session-connection.js.map +1 -1
  187. package/cjs/network/transports/index.d.ts +0 -3
  188. package/cjs/network/transports/index.js +0 -4
  189. package/cjs/network/transports/index.js.map +1 -1
  190. package/cjs/platform.d.ts +18 -0
  191. package/cjs/platform.js +36 -0
  192. package/cjs/platform.js.map +1 -0
  193. package/cjs/storage/index.d.ts +2 -2
  194. package/cjs/storage/index.js +2 -2
  195. package/cjs/storage/index.js.map +1 -1
  196. package/{esm/storage/providers → cjs/storage}/memory/driver.d.ts +1 -1
  197. package/cjs/storage/memory/driver.js.map +1 -0
  198. package/{esm/storage/providers → cjs/storage}/memory/index.d.ts +2 -2
  199. package/cjs/storage/memory/index.js.map +1 -0
  200. package/cjs/storage/{providers/memory → memory}/repository/auth-keys.d.ts +1 -1
  201. package/cjs/storage/memory/repository/auth-keys.js.map +1 -0
  202. package/{esm/storage/providers → cjs/storage}/memory/repository/kv.d.ts +1 -1
  203. package/cjs/storage/memory/repository/kv.js.map +1 -0
  204. package/{esm/storage/providers → cjs/storage}/memory/repository/peers.d.ts +1 -1
  205. package/cjs/storage/memory/repository/peers.js.map +1 -0
  206. package/{esm/storage/providers → cjs/storage}/memory/repository/ref-messages.d.ts +1 -1
  207. package/cjs/storage/memory/repository/ref-messages.js.map +1 -0
  208. package/cjs/storage/sqlite/driver.d.ts +24 -0
  209. package/cjs/storage/sqlite/driver.js +129 -0
  210. package/cjs/storage/sqlite/driver.js.map +1 -0
  211. package/cjs/storage/sqlite/index.d.ts +17 -0
  212. package/cjs/storage/sqlite/index.js +35 -0
  213. package/cjs/storage/sqlite/index.js.map +1 -0
  214. package/cjs/storage/sqlite/repository/auth-keys.d.ts +20 -0
  215. package/cjs/storage/sqlite/repository/auth-keys.js +68 -0
  216. package/cjs/storage/sqlite/repository/auth-keys.js.map +1 -0
  217. package/cjs/storage/sqlite/repository/kv.d.ts +14 -0
  218. package/cjs/storage/sqlite/repository/kv.js +96 -0
  219. package/cjs/storage/sqlite/repository/kv.js.map +1 -0
  220. package/cjs/storage/sqlite/repository/peers.d.ts +16 -0
  221. package/cjs/storage/sqlite/repository/peers.js +77 -0
  222. package/cjs/storage/sqlite/repository/peers.js.map +1 -0
  223. package/cjs/storage/sqlite/repository/ref-messages.d.ts +16 -0
  224. package/cjs/storage/sqlite/repository/ref-messages.js +49 -0
  225. package/cjs/storage/sqlite/repository/ref-messages.js.map +1 -0
  226. package/cjs/storage/sqlite/types.d.ts +18 -0
  227. package/cjs/storage/sqlite/types.js +3 -0
  228. package/cjs/storage/sqlite/types.js.map +1 -0
  229. package/cjs/storage/storage.js +2 -1
  230. package/cjs/storage/storage.js.map +1 -1
  231. package/cjs/utils/binary/asn1-parser.js +3 -3
  232. package/cjs/utils/binary/asn1-parser.js.map +1 -1
  233. package/cjs/utils/crypto/abstract.d.ts +0 -1
  234. package/cjs/utils/crypto/abstract.js.map +1 -1
  235. package/cjs/utils/crypto/index.d.ts +0 -2
  236. package/cjs/utils/crypto/index.js +0 -3
  237. package/cjs/utils/crypto/index.js.map +1 -1
  238. package/cjs/utils/crypto/keys.js +5 -3
  239. package/cjs/utils/crypto/keys.js.map +1 -1
  240. package/cjs/utils/crypto/password.js +3 -3
  241. package/cjs/utils/crypto/password.js.map +1 -1
  242. package/cjs/utils/dcs.d.ts +4 -0
  243. package/cjs/utils/dcs.js +0 -4
  244. package/cjs/utils/dcs.js.map +1 -1
  245. package/cjs/utils/{platform/error-reporting.d.ts → error-reporting.d.ts} +1 -1
  246. package/cjs/utils/error-reporting.js.map +1 -0
  247. package/cjs/utils/index.d.ts +4 -1
  248. package/cjs/utils/index.js +6 -1
  249. package/cjs/utils/index.js.map +1 -1
  250. package/cjs/utils/links/common.js +1 -1
  251. package/cjs/utils/links/common.js.map +1 -1
  252. package/cjs/utils/logger.d.ts +1 -0
  253. package/cjs/utils/logger.js +9 -22
  254. package/cjs/utils/logger.js.map +1 -1
  255. package/esm/highlevel/base.d.ts +3 -1
  256. package/esm/highlevel/base.js +18 -0
  257. package/esm/highlevel/base.js.map +1 -1
  258. package/esm/highlevel/client.d.ts +23 -10
  259. package/esm/highlevel/client.js +12 -19
  260. package/esm/highlevel/client.js.map +1 -1
  261. package/esm/highlevel/client.types.d.ts +14 -0
  262. package/esm/highlevel/client.types.js.map +1 -1
  263. package/esm/highlevel/index.d.ts +0 -2
  264. package/esm/highlevel/index.js +0 -2
  265. package/esm/highlevel/index.js.map +1 -1
  266. package/esm/highlevel/methods/_imports.js.map +1 -1
  267. package/esm/highlevel/methods/_init.js +4 -29
  268. package/esm/highlevel/methods/_init.js.map +1 -1
  269. package/esm/highlevel/methods/bots/get-callback-answer.js +2 -2
  270. package/esm/highlevel/methods/bots/get-callback-answer.js.map +1 -1
  271. package/esm/highlevel/methods/dialogs/create-folder.js +1 -1
  272. package/esm/highlevel/methods/dialogs/create-folder.js.map +1 -1
  273. package/esm/highlevel/methods/dialogs/edit-folder.js +1 -1
  274. package/esm/highlevel/methods/dialogs/edit-folder.js.map +1 -1
  275. package/esm/highlevel/methods/dialogs/find-folder.js +1 -1
  276. package/esm/highlevel/methods/dialogs/find-folder.js.map +1 -1
  277. package/esm/highlevel/methods/dialogs/get-folders.d.ts +1 -1
  278. package/esm/highlevel/methods/dialogs/get-folders.js +1 -1
  279. package/esm/highlevel/methods/dialogs/get-folders.js.map +1 -1
  280. package/esm/highlevel/methods/files/download-file.d.ts +1 -10
  281. package/esm/highlevel/methods/files/download-file.js +2 -30
  282. package/esm/highlevel/methods/files/download-file.js.map +1 -1
  283. package/esm/highlevel/methods/files/download-iterable.js +2 -1
  284. package/esm/highlevel/methods/files/download-iterable.js.map +1 -1
  285. package/esm/highlevel/methods/files/download-node-stream.js +3 -0
  286. package/esm/highlevel/methods/files/download-node-stream.js.map +1 -0
  287. package/esm/highlevel/methods/files/normalize-input-media.d.ts +1 -1
  288. package/esm/highlevel/methods/files/normalize-input-media.js +2 -1
  289. package/esm/highlevel/methods/files/normalize-input-media.js.map +1 -1
  290. package/esm/highlevel/methods/files/upload-file.d.ts +0 -3
  291. package/esm/highlevel/methods/files/upload-file.js +24 -11
  292. package/esm/highlevel/methods/files/upload-file.js.map +1 -1
  293. package/esm/highlevel/methods/messages/find-in-update.js +23 -8
  294. package/esm/highlevel/methods/messages/find-in-update.js.map +1 -1
  295. package/esm/highlevel/methods/messages/send-media-group.d.ts +1 -1
  296. package/esm/highlevel/methods/messages/send-media-group.js.map +1 -1
  297. package/esm/highlevel/methods/messages/send-media.d.ts +2 -2
  298. package/esm/highlevel/methods/messages/send-media.js +4 -3
  299. package/esm/highlevel/methods/messages/send-media.js.map +1 -1
  300. package/esm/highlevel/methods/messages/send-text.d.ts +1 -1
  301. package/esm/highlevel/methods/messages/send-text.js +4 -3
  302. package/esm/highlevel/methods/messages/send-text.js.map +1 -1
  303. package/esm/highlevel/methods/misc/with-params.d.ts +10 -0
  304. package/esm/highlevel/methods/misc/with-params.js +28 -0
  305. package/esm/highlevel/methods/misc/with-params.js.map +1 -0
  306. package/esm/highlevel/methods.d.ts +13 -1
  307. package/esm/highlevel/methods.js +0 -1
  308. package/esm/highlevel/methods.js.map +1 -1
  309. package/esm/highlevel/types/auth/sent-code.js +4 -3
  310. package/esm/highlevel/types/bots/command-scope/index.d.ts +10 -0
  311. package/esm/highlevel/types/bots/command-scope/index.js +11 -0
  312. package/esm/highlevel/types/bots/command-scope/index.js.map +1 -0
  313. package/esm/highlevel/types/bots/command-scope/inner.d.ts +54 -0
  314. package/esm/highlevel/types/bots/command-scope/inner.js +69 -0
  315. package/esm/highlevel/types/bots/command-scope/inner.js.map +1 -0
  316. package/esm/highlevel/types/bots/game-high-score.js +5 -4
  317. package/esm/highlevel/types/bots/index.d.ts +4 -4
  318. package/esm/highlevel/types/bots/index.js +4 -4
  319. package/esm/highlevel/types/bots/index.js.map +1 -1
  320. package/esm/highlevel/types/bots/inline-message/factories.d.ts +43 -0
  321. package/esm/highlevel/types/bots/inline-message/factories.js +163 -0
  322. package/esm/highlevel/types/bots/inline-message/factories.js.map +1 -0
  323. package/esm/highlevel/types/bots/inline-message/index.d.ts +3 -0
  324. package/esm/highlevel/types/bots/inline-message/index.js +4 -0
  325. package/esm/highlevel/types/bots/inline-message/index.js.map +1 -0
  326. package/{cjs/highlevel/types/bots/input/input-inline-message.d.ts → esm/highlevel/types/bots/inline-message/types.d.ts} +2 -45
  327. package/esm/highlevel/types/bots/inline-message/types.js +2 -0
  328. package/esm/highlevel/types/bots/inline-message/types.js.map +1 -0
  329. package/esm/highlevel/types/bots/inline-result/factories.d.ts +94 -0
  330. package/esm/highlevel/types/bots/inline-result/factories.js +470 -0
  331. package/esm/highlevel/types/bots/inline-result/factories.js.map +1 -0
  332. package/esm/highlevel/types/bots/inline-result/index.d.ts +3 -0
  333. package/esm/highlevel/types/bots/inline-result/index.js +4 -0
  334. package/esm/highlevel/types/bots/inline-result/index.js.map +1 -0
  335. package/{cjs/highlevel/types/bots/input/input-inline-result.d.ts → esm/highlevel/types/bots/inline-result/types.d.ts} +1 -95
  336. package/esm/highlevel/types/bots/inline-result/types.js +2 -0
  337. package/esm/highlevel/types/bots/inline-result/types.js.map +1 -0
  338. package/esm/highlevel/types/bots/{keyboard-builder.d.ts → keyboards/builder.d.ts} +1 -1
  339. package/esm/highlevel/types/bots/{keyboard-builder.js → keyboards/builder.js} +1 -1
  340. package/esm/highlevel/types/bots/keyboards/builder.js.map +1 -0
  341. package/esm/highlevel/types/bots/keyboards/factories.d.ts +195 -0
  342. package/esm/highlevel/types/bots/keyboards/factories.js +341 -0
  343. package/esm/highlevel/types/bots/keyboards/factories.js.map +1 -0
  344. package/esm/highlevel/types/bots/keyboards/index.d.ts +14 -0
  345. package/esm/highlevel/types/bots/keyboards/index.js +15 -0
  346. package/esm/highlevel/types/bots/keyboards/index.js.map +1 -0
  347. package/esm/highlevel/types/bots/keyboards/types.d.ts +34 -0
  348. package/esm/highlevel/types/bots/keyboards/types.js +2 -0
  349. package/esm/highlevel/types/bots/keyboards/types.js.map +1 -0
  350. package/esm/highlevel/types/files/file-location.js +4 -3
  351. package/esm/highlevel/types/files/utils.d.ts +9 -6
  352. package/esm/highlevel/types/files/utils.js.map +1 -1
  353. package/esm/highlevel/types/files/web-document.js +4 -3
  354. package/esm/highlevel/types/media/audio.js +5 -4
  355. package/esm/highlevel/types/media/contact.js +4 -3
  356. package/esm/highlevel/types/media/dice.js +4 -3
  357. package/esm/highlevel/types/media/document.js +8 -6
  358. package/esm/highlevel/types/media/document.js.map +1 -1
  359. package/esm/highlevel/types/media/game.js +5 -4
  360. package/esm/highlevel/types/media/index.d.ts +1 -1
  361. package/esm/highlevel/types/media/index.js +1 -1
  362. package/esm/highlevel/types/media/index.js.map +1 -1
  363. package/esm/highlevel/types/media/input-media/factories.d.ts +141 -0
  364. package/esm/highlevel/types/media/input-media/factories.js +228 -0
  365. package/esm/highlevel/types/media/input-media/factories.js.map +1 -0
  366. package/esm/highlevel/types/media/input-media/index.d.ts +3 -0
  367. package/esm/highlevel/types/media/input-media/index.js +4 -0
  368. package/esm/highlevel/types/media/input-media/index.js.map +1 -0
  369. package/esm/highlevel/types/media/{input-media.d.ts → input-media/types.d.ts} +5 -145
  370. package/esm/highlevel/types/media/input-media/types.js +2 -0
  371. package/esm/highlevel/types/media/input-media/types.js.map +1 -0
  372. package/esm/highlevel/types/media/invoice.js +9 -7
  373. package/esm/highlevel/types/media/location.js +7 -5
  374. package/esm/highlevel/types/media/photo.js +5 -4
  375. package/esm/highlevel/types/media/poll.js +5 -4
  376. package/esm/highlevel/types/media/sticker.js +5 -4
  377. package/esm/highlevel/types/media/story.js +4 -3
  378. package/esm/highlevel/types/media/thumbnail.js +10 -8
  379. package/esm/highlevel/types/media/thumbnail.js.map +1 -1
  380. package/esm/highlevel/types/media/venue.js +5 -4
  381. package/esm/highlevel/types/media/video.js +5 -4
  382. package/esm/highlevel/types/media/voice.js +5 -4
  383. package/esm/highlevel/types/media/web-page.js +5 -4
  384. package/esm/highlevel/types/messages/dialog.js +5 -4
  385. package/esm/highlevel/types/messages/draft-message.js +5 -4
  386. package/esm/highlevel/types/messages/message-entity.js +5 -4
  387. package/esm/highlevel/types/messages/message-forward.js +5 -4
  388. package/esm/highlevel/types/messages/message-reactions.js +5 -4
  389. package/esm/highlevel/types/messages/message-replies.js +5 -4
  390. package/esm/highlevel/types/messages/message.d.ts +1 -1
  391. package/esm/highlevel/types/messages/message.js +6 -5
  392. package/esm/highlevel/types/messages/message.js.map +1 -1
  393. package/esm/highlevel/types/messages/replied-message.js +5 -4
  394. package/esm/highlevel/types/misc/index.d.ts +1 -1
  395. package/esm/highlevel/types/misc/index.js +1 -1
  396. package/esm/highlevel/types/misc/index.js.map +1 -1
  397. package/esm/highlevel/types/misc/input-privacy-rule/allow.d.ts +22 -0
  398. package/esm/highlevel/types/misc/input-privacy-rule/allow.js +31 -0
  399. package/esm/highlevel/types/misc/input-privacy-rule/allow.js.map +1 -0
  400. package/esm/highlevel/types/misc/input-privacy-rule/bundle.d.ts +3 -0
  401. package/esm/highlevel/types/misc/input-privacy-rule/bundle.js +4 -0
  402. package/esm/highlevel/types/misc/input-privacy-rule/bundle.js.map +1 -0
  403. package/esm/highlevel/types/misc/input-privacy-rule/disallow.d.ts +20 -0
  404. package/esm/highlevel/types/misc/input-privacy-rule/disallow.js +27 -0
  405. package/esm/highlevel/types/misc/input-privacy-rule/disallow.js.map +1 -0
  406. package/esm/highlevel/types/misc/input-privacy-rule/index.d.ts +3 -0
  407. package/esm/highlevel/types/misc/input-privacy-rule/index.js +4 -0
  408. package/esm/highlevel/types/misc/input-privacy-rule/index.js.map +1 -0
  409. package/esm/highlevel/types/misc/input-privacy-rule/types.d.ts +11 -0
  410. package/esm/highlevel/types/misc/input-privacy-rule/types.js +2 -0
  411. package/esm/highlevel/types/misc/input-privacy-rule/types.js.map +1 -0
  412. package/esm/highlevel/types/misc/sticker-set.js +5 -4
  413. package/esm/highlevel/types/misc/takeout-session.js +4 -3
  414. package/esm/highlevel/types/peers/chat-colors.js +4 -3
  415. package/esm/highlevel/types/peers/chat-event/index.js +5 -4
  416. package/esm/highlevel/types/peers/chat-invite-link-member.js +5 -4
  417. package/esm/highlevel/types/peers/chat-invite-link.js +5 -4
  418. package/esm/highlevel/types/peers/chat-location.js +5 -4
  419. package/esm/highlevel/types/peers/chat-member.js +5 -4
  420. package/esm/highlevel/types/peers/chat-permissions.js +4 -3
  421. package/esm/highlevel/types/peers/chat-photo.js +12 -9
  422. package/esm/highlevel/types/peers/chat-photo.js.map +1 -1
  423. package/esm/highlevel/types/peers/chat-preview.js +5 -4
  424. package/esm/highlevel/types/peers/chat.js +5 -4
  425. package/esm/highlevel/types/peers/forum-topic.js +5 -4
  426. package/esm/highlevel/types/peers/user.js +5 -4
  427. package/esm/highlevel/types/premium/boost-slot.js +5 -4
  428. package/esm/highlevel/types/premium/boost-stats.js +4 -3
  429. package/esm/highlevel/types/premium/boost.js +5 -4
  430. package/esm/highlevel/types/reactions/emoji-status.js +4 -3
  431. package/esm/highlevel/types/reactions/peer-reaction.js +5 -4
  432. package/esm/highlevel/types/reactions/reaction-count.js +4 -3
  433. package/esm/highlevel/types/stories/all-stories.js +5 -4
  434. package/esm/highlevel/types/stories/interactive/channel-post.js +5 -4
  435. package/esm/highlevel/types/stories/interactive/location.js +5 -4
  436. package/esm/highlevel/types/stories/interactive/reaction.js +4 -3
  437. package/esm/highlevel/types/stories/interactive/venue.js +5 -4
  438. package/esm/highlevel/types/stories/peer-stories.js +5 -4
  439. package/esm/highlevel/types/stories/stealth-mode.js +4 -3
  440. package/esm/highlevel/types/stories/story-interactions.js +5 -4
  441. package/esm/highlevel/types/stories/story-viewer.js +9 -7
  442. package/esm/highlevel/types/stories/story.js +5 -4
  443. package/esm/highlevel/types/updates/bot-chat-join-request.js +5 -4
  444. package/esm/highlevel/types/updates/bot-reaction.js +9 -7
  445. package/esm/highlevel/types/updates/bot-stopped.js +5 -4
  446. package/esm/highlevel/types/updates/callback-query.js +11 -9
  447. package/esm/highlevel/types/updates/callback-query.js.map +1 -1
  448. package/esm/highlevel/types/updates/chat-join-request.js +5 -4
  449. package/esm/highlevel/types/updates/chat-member-update.js +5 -4
  450. package/esm/highlevel/types/updates/chosen-inline-result.js +5 -4
  451. package/esm/highlevel/types/updates/delete-message-update.js +4 -3
  452. package/esm/highlevel/types/updates/delete-story-update.js +5 -4
  453. package/esm/highlevel/types/updates/history-read-update.js +4 -3
  454. package/esm/highlevel/types/updates/inline-query.js +5 -4
  455. package/esm/highlevel/types/updates/poll-update.js +5 -4
  456. package/esm/highlevel/types/updates/poll-vote.js +5 -4
  457. package/esm/highlevel/types/updates/pre-checkout-query.js +5 -4
  458. package/esm/highlevel/types/updates/story-update.js +5 -4
  459. package/esm/highlevel/types/updates/user-status-update.js +5 -4
  460. package/esm/highlevel/types/updates/user-status-update.js.map +1 -1
  461. package/esm/highlevel/types/updates/user-typing-update.js +4 -3
  462. package/esm/highlevel/updates/manager.d.ts +5 -3
  463. package/esm/highlevel/updates/manager.js +81 -67
  464. package/esm/highlevel/updates/manager.js.map +1 -1
  465. package/esm/highlevel/utils/convert-file-id.js +7 -6
  466. package/esm/highlevel/utils/convert-file-id.js.map +1 -1
  467. package/esm/highlevel/utils/file-utils.js +8 -4
  468. package/esm/highlevel/utils/file-utils.js.map +1 -1
  469. package/esm/highlevel/utils/inline-utils.js +4 -3
  470. package/esm/highlevel/utils/inline-utils.js.map +1 -1
  471. package/esm/highlevel/utils/inspectable.d.ts +1 -1
  472. package/esm/highlevel/utils/inspectable.js +3 -2
  473. package/esm/highlevel/utils/inspectable.js.map +1 -1
  474. package/esm/highlevel/utils/memoize.d.ts +1 -1
  475. package/esm/highlevel/utils/memoize.js +1 -0
  476. package/esm/highlevel/utils/memoize.js.map +1 -1
  477. package/esm/highlevel/utils/stream-utils.d.ts +0 -2
  478. package/esm/highlevel/utils/stream-utils.js +0 -26
  479. package/esm/highlevel/utils/stream-utils.js.map +1 -1
  480. package/esm/highlevel/utils/string-session.js +4 -3
  481. package/esm/highlevel/utils/string-session.js.map +1 -1
  482. package/esm/highlevel/worker/index.d.ts +3 -0
  483. package/esm/highlevel/worker/index.js +4 -0
  484. package/esm/highlevel/worker/index.js.map +1 -0
  485. package/esm/highlevel/worker/port.d.ts +6 -3
  486. package/esm/highlevel/worker/port.js +8 -2
  487. package/esm/highlevel/worker/port.js.map +1 -1
  488. package/esm/highlevel/worker/protocol.d.ts +5 -1
  489. package/esm/highlevel/worker/protocol.js.map +1 -1
  490. package/esm/highlevel/worker/worker.d.ts +11 -4
  491. package/esm/highlevel/worker/worker.js +51 -47
  492. package/esm/highlevel/worker/worker.js.map +1 -1
  493. package/esm/network/client.d.ts +4 -4
  494. package/esm/network/client.js +4 -2
  495. package/esm/network/client.js.map +1 -1
  496. package/esm/network/multi-session-connection.d.ts +1 -0
  497. package/esm/network/multi-session-connection.js +6 -0
  498. package/esm/network/multi-session-connection.js.map +1 -1
  499. package/esm/network/network-manager.d.ts +5 -1
  500. package/esm/network/network-manager.js +24 -15
  501. package/esm/network/network-manager.js.map +1 -1
  502. package/esm/network/persistent-connection.d.ts +3 -0
  503. package/esm/network/persistent-connection.js +23 -1
  504. package/esm/network/persistent-connection.js.map +1 -1
  505. package/esm/network/session-connection.d.ts +2 -0
  506. package/esm/network/session-connection.js +18 -4
  507. package/esm/network/session-connection.js.map +1 -1
  508. package/esm/network/transports/index.d.ts +0 -3
  509. package/esm/network/transports/index.js +0 -3
  510. package/esm/network/transports/index.js.map +1 -1
  511. package/esm/platform.d.ts +18 -0
  512. package/esm/platform.js +31 -0
  513. package/esm/platform.js.map +1 -0
  514. package/esm/storage/index.d.ts +2 -2
  515. package/esm/storage/index.js +2 -2
  516. package/esm/storage/index.js.map +1 -1
  517. package/{cjs/storage/providers → esm/storage}/memory/driver.d.ts +1 -1
  518. package/esm/storage/memory/driver.js.map +1 -0
  519. package/{cjs/storage/providers → esm/storage}/memory/index.d.ts +2 -2
  520. package/esm/storage/memory/index.js.map +1 -0
  521. package/esm/storage/{providers/memory → memory}/repository/auth-keys.d.ts +1 -1
  522. package/esm/storage/memory/repository/auth-keys.js.map +1 -0
  523. package/{cjs/storage/providers → esm/storage}/memory/repository/kv.d.ts +1 -1
  524. package/esm/storage/memory/repository/kv.js.map +1 -0
  525. package/{cjs/storage/providers → esm/storage}/memory/repository/peers.d.ts +1 -1
  526. package/esm/storage/memory/repository/peers.js.map +1 -0
  527. package/{cjs/storage/providers → esm/storage}/memory/repository/ref-messages.d.ts +1 -1
  528. package/esm/storage/memory/repository/ref-messages.js.map +1 -0
  529. package/esm/storage/sqlite/driver.d.ts +24 -0
  530. package/esm/storage/sqlite/driver.js +125 -0
  531. package/esm/storage/sqlite/driver.js.map +1 -0
  532. package/esm/storage/sqlite/index.d.ts +17 -0
  533. package/esm/storage/sqlite/index.js +17 -0
  534. package/esm/storage/sqlite/index.js.map +1 -0
  535. package/esm/storage/sqlite/repository/auth-keys.d.ts +20 -0
  536. package/esm/storage/sqlite/repository/auth-keys.js +64 -0
  537. package/esm/storage/sqlite/repository/auth-keys.js.map +1 -0
  538. package/esm/storage/sqlite/repository/kv.d.ts +14 -0
  539. package/esm/storage/sqlite/repository/kv.js +92 -0
  540. package/esm/storage/sqlite/repository/kv.js.map +1 -0
  541. package/esm/storage/sqlite/repository/peers.d.ts +16 -0
  542. package/esm/storage/sqlite/repository/peers.js +73 -0
  543. package/esm/storage/sqlite/repository/peers.js.map +1 -0
  544. package/esm/storage/sqlite/repository/ref-messages.d.ts +16 -0
  545. package/esm/storage/sqlite/repository/ref-messages.js +45 -0
  546. package/esm/storage/sqlite/repository/ref-messages.js.map +1 -0
  547. package/esm/storage/sqlite/types.d.ts +18 -0
  548. package/esm/storage/sqlite/types.js +2 -0
  549. package/esm/storage/sqlite/types.js.map +1 -0
  550. package/esm/storage/storage.js +3 -2
  551. package/esm/storage/storage.js.map +1 -1
  552. package/esm/utils/binary/asn1-parser.js +3 -3
  553. package/esm/utils/binary/asn1-parser.js.map +1 -1
  554. package/esm/utils/crypto/abstract.d.ts +0 -1
  555. package/esm/utils/crypto/abstract.js.map +1 -1
  556. package/esm/utils/crypto/index.d.ts +0 -2
  557. package/esm/utils/crypto/index.js +0 -2
  558. package/esm/utils/crypto/index.js.map +1 -1
  559. package/esm/utils/crypto/keys.js +6 -4
  560. package/esm/utils/crypto/keys.js.map +1 -1
  561. package/esm/utils/crypto/password.js +3 -3
  562. package/esm/utils/crypto/password.js.map +1 -1
  563. package/esm/utils/dcs.d.ts +4 -0
  564. package/esm/utils/dcs.js +0 -4
  565. package/esm/utils/dcs.js.map +1 -1
  566. package/esm/utils/{platform/error-reporting.d.ts → error-reporting.d.ts} +1 -1
  567. package/esm/utils/error-reporting.js.map +1 -0
  568. package/esm/utils/index.d.ts +4 -1
  569. package/esm/utils/index.js +6 -1
  570. package/esm/utils/index.js.map +1 -1
  571. package/esm/utils/links/common.js +1 -1
  572. package/esm/utils/links/common.js.map +1 -1
  573. package/esm/utils/logger.d.ts +1 -0
  574. package/esm/utils/logger.js +9 -22
  575. package/esm/utils/logger.js.map +1 -1
  576. package/package.json +25 -53
  577. package/cjs/highlevel/base.test.js +0 -14
  578. package/cjs/highlevel/base.test.js.map +0 -1
  579. package/cjs/highlevel/methods/files/_platform.js +0 -33
  580. package/cjs/highlevel/methods/files/_platform.js.map +0 -1
  581. package/cjs/highlevel/methods/files/_platform.web.d.ts +0 -1
  582. package/cjs/highlevel/methods/files/_platform.web.js +0 -26
  583. package/cjs/highlevel/methods/files/_platform.web.js.map +0 -1
  584. package/cjs/highlevel/methods/files/download-file.web.d.ts +0 -1
  585. package/cjs/highlevel/methods/files/download-file.web.js +0 -9
  586. package/cjs/highlevel/methods/files/download-file.web.js.map +0 -1
  587. package/cjs/highlevel/methods/messages/send-text.test.d.ts +0 -1
  588. package/cjs/highlevel/methods/messages/send-text.test.js +0 -140
  589. package/cjs/highlevel/methods/messages/send-text.test.js.map +0 -1
  590. package/cjs/highlevel/methods/users/get-users.test.d.ts +0 -1
  591. package/cjs/highlevel/methods/users/get-users.test.js +0 -33
  592. package/cjs/highlevel/methods/users/get-users.test.js.map +0 -1
  593. package/cjs/highlevel/methods/users/resolve-peer.test.d.ts +0 -1
  594. package/cjs/highlevel/methods/users/resolve-peer.test.js +0 -307
  595. package/cjs/highlevel/methods/users/resolve-peer.test.js.map +0 -1
  596. package/cjs/highlevel/types/bots/command-scope.d.ts +0 -63
  597. package/cjs/highlevel/types/bots/command-scope.js +0 -87
  598. package/cjs/highlevel/types/bots/command-scope.js.map +0 -1
  599. package/cjs/highlevel/types/bots/input/index.d.ts +0 -2
  600. package/cjs/highlevel/types/bots/input/index.js.map +0 -1
  601. package/cjs/highlevel/types/bots/input/input-inline-message.js +0 -179
  602. package/cjs/highlevel/types/bots/input/input-inline-message.js.map +0 -1
  603. package/cjs/highlevel/types/bots/input/input-inline-result.js +0 -490
  604. package/cjs/highlevel/types/bots/input/input-inline-result.js.map +0 -1
  605. package/cjs/highlevel/types/bots/keyboard-builder.js.map +0 -1
  606. package/cjs/highlevel/types/bots/keyboard-builder.test.d.ts +0 -1
  607. package/cjs/highlevel/types/bots/keyboard-builder.test.js +0 -162
  608. package/cjs/highlevel/types/bots/keyboard-builder.test.js.map +0 -1
  609. package/cjs/highlevel/types/bots/keyboards.d.ts +0 -239
  610. package/cjs/highlevel/types/bots/keyboards.js +0 -380
  611. package/cjs/highlevel/types/bots/keyboards.js.map +0 -1
  612. package/cjs/highlevel/types/bots/keyboards.test.d.ts +0 -1
  613. package/cjs/highlevel/types/bots/keyboards.test.js +0 -146
  614. package/cjs/highlevel/types/bots/keyboards.test.js.map +0 -1
  615. package/cjs/highlevel/types/media/input-media.js +0 -254
  616. package/cjs/highlevel/types/media/input-media.js.map +0 -1
  617. package/cjs/highlevel/types/misc/input-privacy-rule.d.ts +0 -63
  618. package/cjs/highlevel/types/misc/input-privacy-rule.js +0 -85
  619. package/cjs/highlevel/types/misc/input-privacy-rule.js.map +0 -1
  620. package/cjs/highlevel/types/peers/peers-index.test.d.ts +0 -1
  621. package/cjs/highlevel/types/peers/peers-index.test.js +0 -71
  622. package/cjs/highlevel/types/peers/peers-index.test.js.map +0 -1
  623. package/cjs/highlevel/types/peers/user.test.d.ts +0 -1
  624. package/cjs/highlevel/types/peers/user.test.js +0 -176
  625. package/cjs/highlevel/types/peers/user.test.js.map +0 -1
  626. package/cjs/highlevel/utils/file-type.test.d.ts +0 -1
  627. package/cjs/highlevel/utils/file-type.test.js +0 -64
  628. package/cjs/highlevel/utils/file-type.test.js.map +0 -1
  629. package/cjs/highlevel/utils/file-utils.test.d.ts +0 -1
  630. package/cjs/highlevel/utils/file-utils.test.js +0 -126
  631. package/cjs/highlevel/utils/file-utils.test.js.map +0 -1
  632. package/cjs/highlevel/utils/inline-utils.test.d.ts +0 -1
  633. package/cjs/highlevel/utils/inline-utils.test.js +0 -47
  634. package/cjs/highlevel/utils/inline-utils.test.js.map +0 -1
  635. package/cjs/highlevel/utils/inspectable.test.d.ts +0 -1
  636. package/cjs/highlevel/utils/inspectable.test.js +0 -97
  637. package/cjs/highlevel/utils/inspectable.test.js.map +0 -1
  638. package/cjs/highlevel/utils/memoize.test.d.ts +0 -1
  639. package/cjs/highlevel/utils/memoize.test.js +0 -60
  640. package/cjs/highlevel/utils/memoize.test.js.map +0 -1
  641. package/cjs/highlevel/utils/peer-utils.test.d.ts +0 -1
  642. package/cjs/highlevel/utils/peer-utils.test.js +0 -109
  643. package/cjs/highlevel/utils/peer-utils.test.js.map +0 -1
  644. package/cjs/highlevel/utils/platform/storage.d.ts +0 -1
  645. package/cjs/highlevel/utils/platform/storage.js +0 -10
  646. package/cjs/highlevel/utils/platform/storage.js.map +0 -1
  647. package/cjs/highlevel/utils/platform/storage.web.d.ts +0 -1
  648. package/cjs/highlevel/utils/platform/storage.web.js +0 -14
  649. package/cjs/highlevel/utils/platform/storage.web.js.map +0 -1
  650. package/cjs/highlevel/utils/query-batcher.test.d.ts +0 -1
  651. package/cjs/highlevel/utils/query-batcher.test.js +0 -502
  652. package/cjs/highlevel/utils/query-batcher.test.js.map +0 -1
  653. package/cjs/highlevel/utils/stream-utils.test.d.ts +0 -1
  654. package/cjs/highlevel/utils/stream-utils.test.js +0 -98
  655. package/cjs/highlevel/utils/stream-utils.test.js.map +0 -1
  656. package/cjs/highlevel/utils/string-session.test.d.ts +0 -1
  657. package/cjs/highlevel/utils/string-session.test.js +0 -198
  658. package/cjs/highlevel/utils/string-session.test.js.map +0 -1
  659. package/cjs/highlevel/utils/voice-utils.test.d.ts +0 -1
  660. package/cjs/highlevel/utils/voice-utils.test.js +0 -28
  661. package/cjs/highlevel/utils/voice-utils.test.js.map +0 -1
  662. package/cjs/highlevel/worker/platform/connect.d.ts +0 -2
  663. package/cjs/highlevel/worker/platform/connect.js +0 -19
  664. package/cjs/highlevel/worker/platform/connect.js.map +0 -1
  665. package/cjs/highlevel/worker/platform/connect.web.d.ts +0 -2
  666. package/cjs/highlevel/worker/platform/connect.web.js +0 -51
  667. package/cjs/highlevel/worker/platform/connect.web.js.map +0 -1
  668. package/cjs/highlevel/worker/platform/register.d.ts +0 -2
  669. package/cjs/highlevel/worker/platform/register.js +0 -20
  670. package/cjs/highlevel/worker/platform/register.js.map +0 -1
  671. package/cjs/highlevel/worker/platform/register.web.d.ts +0 -2
  672. package/cjs/highlevel/worker/platform/register.web.js +0 -64
  673. package/cjs/highlevel/worker/platform/register.web.js.map +0 -1
  674. package/cjs/network/auth-key.test.d.ts +0 -1
  675. package/cjs/network/auth-key.test.js +0 -111
  676. package/cjs/network/auth-key.test.js.map +0 -1
  677. package/cjs/network/config-manager.test.d.ts +0 -1
  678. package/cjs/network/config-manager.test.js +0 -174
  679. package/cjs/network/config-manager.test.js.map +0 -1
  680. package/cjs/network/persistent-connection.test.d.ts +0 -1
  681. package/cjs/network/persistent-connection.test.js +0 -157
  682. package/cjs/network/persistent-connection.test.js.map +0 -1
  683. package/cjs/network/transports/intermediate.test.d.ts +0 -1
  684. package/cjs/network/transports/intermediate.test.js +0 -84
  685. package/cjs/network/transports/intermediate.test.js.map +0 -1
  686. package/cjs/network/transports/obfuscated.test.d.ts +0 -1
  687. package/cjs/network/transports/obfuscated.test.js +0 -131
  688. package/cjs/network/transports/obfuscated.test.js.map +0 -1
  689. package/cjs/network/transports/tcp.d.ts +0 -32
  690. package/cjs/network/transports/tcp.js +0 -130
  691. package/cjs/network/transports/tcp.js.map +0 -1
  692. package/cjs/network/transports/tcp.test.d.ts +0 -1
  693. package/cjs/network/transports/tcp.test.js +0 -103
  694. package/cjs/network/transports/tcp.test.js.map +0 -1
  695. package/cjs/network/transports/websocket.d.ts +0 -46
  696. package/cjs/network/transports/websocket.js +0 -124
  697. package/cjs/network/transports/websocket.js.map +0 -1
  698. package/cjs/network/transports/websocket.test.d.ts +0 -1
  699. package/cjs/network/transports/websocket.test.js +0 -91
  700. package/cjs/network/transports/websocket.test.js.map +0 -1
  701. package/cjs/storage/providers/idb/driver.d.ts +0 -18
  702. package/cjs/storage/providers/idb/driver.js +0 -138
  703. package/cjs/storage/providers/idb/driver.js.map +0 -1
  704. package/cjs/storage/providers/idb/idb.test.d.ts +0 -1
  705. package/cjs/storage/providers/idb/idb.test.js +0 -29
  706. package/cjs/storage/providers/idb/idb.test.js.map +0 -1
  707. package/cjs/storage/providers/idb/index.d.ts +0 -22
  708. package/cjs/storage/providers/idb/index.js +0 -28
  709. package/cjs/storage/providers/idb/index.js.map +0 -1
  710. package/cjs/storage/providers/idb/repository/auth-keys.d.ts +0 -14
  711. package/cjs/storage/providers/idb/repository/auth-keys.js +0 -70
  712. package/cjs/storage/providers/idb/repository/auth-keys.js.map +0 -1
  713. package/cjs/storage/providers/idb/repository/kv.d.ts +0 -11
  714. package/cjs/storage/providers/idb/repository/kv.js +0 -34
  715. package/cjs/storage/providers/idb/repository/kv.js.map +0 -1
  716. package/cjs/storage/providers/idb/repository/peers.d.ts +0 -12
  717. package/cjs/storage/providers/idb/repository/peers.js +0 -38
  718. package/cjs/storage/providers/idb/repository/peers.js.map +0 -1
  719. package/cjs/storage/providers/idb/repository/ref-messages.d.ts +0 -12
  720. package/cjs/storage/providers/idb/repository/ref-messages.js +0 -57
  721. package/cjs/storage/providers/idb/repository/ref-messages.js.map +0 -1
  722. package/cjs/storage/providers/idb/utils.d.ts +0 -3
  723. package/cjs/storage/providers/idb/utils.js +0 -27
  724. package/cjs/storage/providers/idb/utils.js.map +0 -1
  725. package/cjs/storage/providers/memory/driver.js.map +0 -1
  726. package/cjs/storage/providers/memory/index.js.map +0 -1
  727. package/cjs/storage/providers/memory/memory.test.d.ts +0 -1
  728. package/cjs/storage/providers/memory/memory.test.js +0 -13
  729. package/cjs/storage/providers/memory/memory.test.js.map +0 -1
  730. package/cjs/storage/providers/memory/repository/auth-keys.js.map +0 -1
  731. package/cjs/storage/providers/memory/repository/kv.js.map +0 -1
  732. package/cjs/storage/providers/memory/repository/peers.js.map +0 -1
  733. package/cjs/storage/providers/memory/repository/ref-messages.js.map +0 -1
  734. package/cjs/storage/service/auth-keys.test.d.ts +0 -1
  735. package/cjs/storage/service/auth-keys.test.js +0 -22
  736. package/cjs/storage/service/auth-keys.test.js.map +0 -1
  737. package/cjs/storage/service/updates.test.d.ts +0 -1
  738. package/cjs/storage/service/updates.test.js +0 -60
  739. package/cjs/storage/service/updates.test.js.map +0 -1
  740. package/cjs/storage/service/utils.test-utils.d.ts +0 -2
  741. package/cjs/storage/service/utils.test-utils.js +0 -19
  742. package/cjs/storage/service/utils.test-utils.js.map +0 -1
  743. package/cjs/utils/async-lock.test.d.ts +0 -1
  744. package/cjs/utils/async-lock.test.js +0 -25
  745. package/cjs/utils/async-lock.test.js.map +0 -1
  746. package/cjs/utils/bigint-utils.test.d.ts +0 -1
  747. package/cjs/utils/bigint-utils.test.js +0 -150
  748. package/cjs/utils/bigint-utils.test.js.map +0 -1
  749. package/cjs/utils/buffer-utils.test.d.ts +0 -1
  750. package/cjs/utils/buffer-utils.test.js +0 -69
  751. package/cjs/utils/buffer-utils.test.js.map +0 -1
  752. package/cjs/utils/condition-variable.test.d.ts +0 -1
  753. package/cjs/utils/condition-variable.test.js +0 -27
  754. package/cjs/utils/condition-variable.test.js.map +0 -1
  755. package/cjs/utils/controllable-promise.test.d.ts +0 -1
  756. package/cjs/utils/controllable-promise.test.js +0 -17
  757. package/cjs/utils/controllable-promise.test.js.map +0 -1
  758. package/cjs/utils/crypto/factorization.test.d.ts +0 -1
  759. package/cjs/utils/crypto/factorization.test.js +0 -19
  760. package/cjs/utils/crypto/factorization.test.js.map +0 -1
  761. package/cjs/utils/crypto/keys.test.d.ts +0 -1
  762. package/cjs/utils/crypto/keys.test.js +0 -40
  763. package/cjs/utils/crypto/keys.test.js.map +0 -1
  764. package/cjs/utils/crypto/miller-rabin.test.d.ts +0 -1
  765. package/cjs/utils/crypto/miller-rabin.test.js +0 -60
  766. package/cjs/utils/crypto/miller-rabin.test.js.map +0 -1
  767. package/cjs/utils/crypto/mtproto.test.d.ts +0 -1
  768. package/cjs/utils/crypto/mtproto.test.js +0 -50
  769. package/cjs/utils/crypto/mtproto.test.js.map +0 -1
  770. package/cjs/utils/crypto/node.d.ts +0 -21
  771. package/cjs/utils/crypto/node.js +0 -74
  772. package/cjs/utils/crypto/node.js.map +0 -1
  773. package/cjs/utils/crypto/node.test.d.ts +0 -1
  774. package/cjs/utils/crypto/node.test.js +0 -14
  775. package/cjs/utils/crypto/node.test.js.map +0 -1
  776. package/cjs/utils/crypto/password.test.d.ts +0 -1
  777. package/cjs/utils/crypto/password.test.js +0 -95
  778. package/cjs/utils/crypto/password.test.js.map +0 -1
  779. package/cjs/utils/crypto/utils.test.d.ts +0 -1
  780. package/cjs/utils/crypto/utils.test.js +0 -49
  781. package/cjs/utils/crypto/utils.test.js.map +0 -1
  782. package/cjs/utils/crypto/wasm.d.ts +0 -22
  783. package/cjs/utils/crypto/wasm.js +0 -41
  784. package/cjs/utils/crypto/wasm.js.map +0 -1
  785. package/cjs/utils/crypto/web.d.ts +0 -11
  786. package/cjs/utils/crypto/web.js +0 -40
  787. package/cjs/utils/crypto/web.js.map +0 -1
  788. package/cjs/utils/crypto/web.test.d.ts +0 -1
  789. package/cjs/utils/crypto/web.test.js +0 -17
  790. package/cjs/utils/crypto/web.test.js.map +0 -1
  791. package/cjs/utils/deque.test.d.ts +0 -1
  792. package/cjs/utils/deque.test.js +0 -128
  793. package/cjs/utils/deque.test.js.map +0 -1
  794. package/cjs/utils/function-utils.test.d.ts +0 -1
  795. package/cjs/utils/function-utils.test.js +0 -23
  796. package/cjs/utils/function-utils.test.js.map +0 -1
  797. package/cjs/utils/linked-list.test.d.ts +0 -1
  798. package/cjs/utils/linked-list.test.js +0 -36
  799. package/cjs/utils/linked-list.test.js.map +0 -1
  800. package/cjs/utils/links/bots.test.d.ts +0 -1
  801. package/cjs/utils/links/bots.test.js +0 -152
  802. package/cjs/utils/links/bots.test.js.map +0 -1
  803. package/cjs/utils/links/chat.test.d.ts +0 -1
  804. package/cjs/utils/links/chat.test.js +0 -84
  805. package/cjs/utils/links/chat.test.js.map +0 -1
  806. package/cjs/utils/links/misc.test.d.ts +0 -1
  807. package/cjs/utils/links/misc.test.js +0 -153
  808. package/cjs/utils/links/misc.test.js.map +0 -1
  809. package/cjs/utils/links/proxy.test.d.ts +0 -1
  810. package/cjs/utils/links/proxy.test.js +0 -74
  811. package/cjs/utils/links/proxy.test.js.map +0 -1
  812. package/cjs/utils/links/user.test.d.ts +0 -1
  813. package/cjs/utils/links/user.test.js +0 -63
  814. package/cjs/utils/links/user.test.js.map +0 -1
  815. package/cjs/utils/logger.test.d.ts +0 -1
  816. package/cjs/utils/logger.test.js +0 -139
  817. package/cjs/utils/logger.test.js.map +0 -1
  818. package/cjs/utils/long-utils.test.d.ts +0 -1
  819. package/cjs/utils/long-utils.test.js +0 -158
  820. package/cjs/utils/long-utils.test.js.map +0 -1
  821. package/cjs/utils/lru-map.test.d.ts +0 -1
  822. package/cjs/utils/lru-map.test.js +0 -96
  823. package/cjs/utils/lru-map.test.js.map +0 -1
  824. package/cjs/utils/lru-set.test.d.ts +0 -1
  825. package/cjs/utils/lru-set.test.js +0 -77
  826. package/cjs/utils/lru-set.test.js.map +0 -1
  827. package/cjs/utils/peer-utils.test.d.ts +0 -1
  828. package/cjs/utils/peer-utils.test.js +0 -110
  829. package/cjs/utils/peer-utils.test.js.map +0 -1
  830. package/cjs/utils/platform/crypto.d.ts +0 -1
  831. package/cjs/utils/platform/crypto.js +0 -8
  832. package/cjs/utils/platform/crypto.js.map +0 -1
  833. package/cjs/utils/platform/crypto.web.d.ts +0 -1
  834. package/cjs/utils/platform/crypto.web.js +0 -14
  835. package/cjs/utils/platform/crypto.web.js.map +0 -1
  836. package/cjs/utils/platform/error-reporting.js.map +0 -1
  837. package/cjs/utils/platform/exit-hook.d.ts +0 -1
  838. package/cjs/utils/platform/exit-hook.js +0 -45
  839. package/cjs/utils/platform/exit-hook.js.map +0 -1
  840. package/cjs/utils/platform/exit-hook.web.d.ts +0 -1
  841. package/cjs/utils/platform/exit-hook.web.js +0 -21
  842. package/cjs/utils/platform/exit-hook.web.js.map +0 -1
  843. package/cjs/utils/platform/logging.d.ts +0 -1
  844. package/cjs/utils/platform/logging.js +0 -34
  845. package/cjs/utils/platform/logging.js.map +0 -1
  846. package/cjs/utils/platform/logging.web.d.ts +0 -1
  847. package/cjs/utils/platform/logging.web.js +0 -35
  848. package/cjs/utils/platform/logging.web.js.map +0 -1
  849. package/cjs/utils/platform/transport.d.ts +0 -1
  850. package/cjs/utils/platform/transport.js +0 -8
  851. package/cjs/utils/platform/transport.js.map +0 -1
  852. package/cjs/utils/platform/transport.web.d.ts +0 -1
  853. package/cjs/utils/platform/transport.web.js +0 -15
  854. package/cjs/utils/platform/transport.web.js.map +0 -1
  855. package/cjs/utils/sorted-array.test.d.ts +0 -1
  856. package/cjs/utils/sorted-array.test.js +0 -66
  857. package/cjs/utils/sorted-array.test.js.map +0 -1
  858. package/cjs/utils/tl-json.test.d.ts +0 -1
  859. package/cjs/utils/tl-json.test.js +0 -83
  860. package/cjs/utils/tl-json.test.js.map +0 -1
  861. package/cjs/utils/type-assertions.test.d.ts +0 -1
  862. package/cjs/utils/type-assertions.test.js +0 -67
  863. package/cjs/utils/type-assertions.test.js.map +0 -1
  864. package/esm/highlevel/base.test.d.ts +0 -1
  865. package/esm/highlevel/base.test.js +0 -12
  866. package/esm/highlevel/base.test.js.map +0 -1
  867. package/esm/highlevel/methods/files/_platform.d.ts +0 -1
  868. package/esm/highlevel/methods/files/_platform.js +0 -26
  869. package/esm/highlevel/methods/files/_platform.js.map +0 -1
  870. package/esm/highlevel/methods/files/_platform.web.d.ts +0 -1
  871. package/esm/highlevel/methods/files/_platform.web.js +0 -19
  872. package/esm/highlevel/methods/files/_platform.web.js.map +0 -1
  873. package/esm/highlevel/methods/files/download-file.web.d.ts +0 -1
  874. package/esm/highlevel/methods/files/download-file.web.js +0 -5
  875. package/esm/highlevel/methods/files/download-file.web.js.map +0 -1
  876. package/esm/highlevel/methods/messages/send-text.test.d.ts +0 -1
  877. package/esm/highlevel/methods/messages/send-text.test.js +0 -135
  878. package/esm/highlevel/methods/messages/send-text.test.js.map +0 -1
  879. package/esm/highlevel/methods/users/get-users.test.d.ts +0 -1
  880. package/esm/highlevel/methods/users/get-users.test.js +0 -28
  881. package/esm/highlevel/methods/users/get-users.test.js.map +0 -1
  882. package/esm/highlevel/methods/users/resolve-peer.test.d.ts +0 -1
  883. package/esm/highlevel/methods/users/resolve-peer.test.js +0 -302
  884. package/esm/highlevel/methods/users/resolve-peer.test.js.map +0 -1
  885. package/esm/highlevel/types/bots/command-scope.d.ts +0 -63
  886. package/esm/highlevel/types/bots/command-scope.js +0 -84
  887. package/esm/highlevel/types/bots/command-scope.js.map +0 -1
  888. package/esm/highlevel/types/bots/input/index.d.ts +0 -2
  889. package/esm/highlevel/types/bots/input/index.js +0 -3
  890. package/esm/highlevel/types/bots/input/index.js.map +0 -1
  891. package/esm/highlevel/types/bots/input/input-inline-message.js +0 -176
  892. package/esm/highlevel/types/bots/input/input-inline-message.js.map +0 -1
  893. package/esm/highlevel/types/bots/input/input-inline-result.js +0 -487
  894. package/esm/highlevel/types/bots/input/input-inline-result.js.map +0 -1
  895. package/esm/highlevel/types/bots/keyboard-builder.js.map +0 -1
  896. package/esm/highlevel/types/bots/keyboard-builder.test.d.ts +0 -1
  897. package/esm/highlevel/types/bots/keyboard-builder.test.js +0 -160
  898. package/esm/highlevel/types/bots/keyboard-builder.test.js.map +0 -1
  899. package/esm/highlevel/types/bots/keyboards.d.ts +0 -239
  900. package/esm/highlevel/types/bots/keyboards.js +0 -377
  901. package/esm/highlevel/types/bots/keyboards.js.map +0 -1
  902. package/esm/highlevel/types/bots/keyboards.test.d.ts +0 -1
  903. package/esm/highlevel/types/bots/keyboards.test.js +0 -144
  904. package/esm/highlevel/types/bots/keyboards.test.js.map +0 -1
  905. package/esm/highlevel/types/media/input-media.js +0 -251
  906. package/esm/highlevel/types/media/input-media.js.map +0 -1
  907. package/esm/highlevel/types/misc/input-privacy-rule.d.ts +0 -63
  908. package/esm/highlevel/types/misc/input-privacy-rule.js +0 -82
  909. package/esm/highlevel/types/misc/input-privacy-rule.js.map +0 -1
  910. package/esm/highlevel/types/peers/peers-index.test.d.ts +0 -1
  911. package/esm/highlevel/types/peers/peers-index.test.js +0 -69
  912. package/esm/highlevel/types/peers/peers-index.test.js.map +0 -1
  913. package/esm/highlevel/types/peers/user.test.d.ts +0 -1
  914. package/esm/highlevel/types/peers/user.test.js +0 -171
  915. package/esm/highlevel/types/peers/user.test.js.map +0 -1
  916. package/esm/highlevel/utils/file-type.test.d.ts +0 -1
  917. package/esm/highlevel/utils/file-type.test.js +0 -62
  918. package/esm/highlevel/utils/file-type.test.js.map +0 -1
  919. package/esm/highlevel/utils/file-utils.test.d.ts +0 -1
  920. package/esm/highlevel/utils/file-utils.test.js +0 -124
  921. package/esm/highlevel/utils/file-utils.test.js.map +0 -1
  922. package/esm/highlevel/utils/inline-utils.test.d.ts +0 -1
  923. package/esm/highlevel/utils/inline-utils.test.js +0 -42
  924. package/esm/highlevel/utils/inline-utils.test.js.map +0 -1
  925. package/esm/highlevel/utils/inspectable.test.d.ts +0 -1
  926. package/esm/highlevel/utils/inspectable.test.js +0 -95
  927. package/esm/highlevel/utils/inspectable.test.js.map +0 -1
  928. package/esm/highlevel/utils/memoize.test.d.ts +0 -1
  929. package/esm/highlevel/utils/memoize.test.js +0 -58
  930. package/esm/highlevel/utils/memoize.test.js.map +0 -1
  931. package/esm/highlevel/utils/peer-utils.test.d.ts +0 -1
  932. package/esm/highlevel/utils/peer-utils.test.js +0 -107
  933. package/esm/highlevel/utils/peer-utils.test.js.map +0 -1
  934. package/esm/highlevel/utils/platform/storage.d.ts +0 -1
  935. package/esm/highlevel/utils/platform/storage.js +0 -6
  936. package/esm/highlevel/utils/platform/storage.js.map +0 -1
  937. package/esm/highlevel/utils/platform/storage.web.d.ts +0 -1
  938. package/esm/highlevel/utils/platform/storage.web.js +0 -10
  939. package/esm/highlevel/utils/platform/storage.web.js.map +0 -1
  940. package/esm/highlevel/utils/query-batcher.test.d.ts +0 -1
  941. package/esm/highlevel/utils/query-batcher.test.js +0 -500
  942. package/esm/highlevel/utils/query-batcher.test.js.map +0 -1
  943. package/esm/highlevel/utils/stream-utils.test.d.ts +0 -1
  944. package/esm/highlevel/utils/stream-utils.test.js +0 -96
  945. package/esm/highlevel/utils/stream-utils.test.js.map +0 -1
  946. package/esm/highlevel/utils/string-session.test.d.ts +0 -1
  947. package/esm/highlevel/utils/string-session.test.js +0 -196
  948. package/esm/highlevel/utils/string-session.test.js.map +0 -1
  949. package/esm/highlevel/utils/voice-utils.test.d.ts +0 -1
  950. package/esm/highlevel/utils/voice-utils.test.js +0 -26
  951. package/esm/highlevel/utils/voice-utils.test.js.map +0 -1
  952. package/esm/highlevel/worker/platform/connect.d.ts +0 -2
  953. package/esm/highlevel/worker/platform/connect.js +0 -15
  954. package/esm/highlevel/worker/platform/connect.js.map +0 -1
  955. package/esm/highlevel/worker/platform/connect.web.d.ts +0 -2
  956. package/esm/highlevel/worker/platform/connect.web.js +0 -47
  957. package/esm/highlevel/worker/platform/connect.web.js.map +0 -1
  958. package/esm/highlevel/worker/platform/register.d.ts +0 -2
  959. package/esm/highlevel/worker/platform/register.js +0 -16
  960. package/esm/highlevel/worker/platform/register.js.map +0 -1
  961. package/esm/highlevel/worker/platform/register.web.d.ts +0 -2
  962. package/esm/highlevel/worker/platform/register.web.js +0 -60
  963. package/esm/highlevel/worker/platform/register.web.js.map +0 -1
  964. package/esm/network/auth-key.test.d.ts +0 -1
  965. package/esm/network/auth-key.test.js +0 -106
  966. package/esm/network/auth-key.test.js.map +0 -1
  967. package/esm/network/config-manager.test.d.ts +0 -1
  968. package/esm/network/config-manager.test.js +0 -172
  969. package/esm/network/config-manager.test.js.map +0 -1
  970. package/esm/network/persistent-connection.test.d.ts +0 -1
  971. package/esm/network/persistent-connection.test.js +0 -155
  972. package/esm/network/persistent-connection.test.js.map +0 -1
  973. package/esm/network/transports/intermediate.test.d.ts +0 -1
  974. package/esm/network/transports/intermediate.test.js +0 -82
  975. package/esm/network/transports/intermediate.test.js.map +0 -1
  976. package/esm/network/transports/obfuscated.test.d.ts +0 -1
  977. package/esm/network/transports/obfuscated.test.js +0 -129
  978. package/esm/network/transports/obfuscated.test.js.map +0 -1
  979. package/esm/network/transports/tcp.d.ts +0 -32
  980. package/esm/network/transports/tcp.js +0 -122
  981. package/esm/network/transports/tcp.js.map +0 -1
  982. package/esm/network/transports/tcp.test.d.ts +0 -1
  983. package/esm/network/transports/tcp.test.js +0 -101
  984. package/esm/network/transports/tcp.test.js.map +0 -1
  985. package/esm/network/transports/websocket.d.ts +0 -46
  986. package/esm/network/transports/websocket.js +0 -116
  987. package/esm/network/transports/websocket.js.map +0 -1
  988. package/esm/network/transports/websocket.test.d.ts +0 -1
  989. package/esm/network/transports/websocket.test.js +0 -89
  990. package/esm/network/transports/websocket.test.js.map +0 -1
  991. package/esm/storage/providers/idb/driver.d.ts +0 -18
  992. package/esm/storage/providers/idb/driver.js +0 -134
  993. package/esm/storage/providers/idb/driver.js.map +0 -1
  994. package/esm/storage/providers/idb/idb.test.d.ts +0 -1
  995. package/esm/storage/providers/idb/idb.test.js +0 -27
  996. package/esm/storage/providers/idb/idb.test.js.map +0 -1
  997. package/esm/storage/providers/idb/index.d.ts +0 -22
  998. package/esm/storage/providers/idb/index.js +0 -23
  999. package/esm/storage/providers/idb/index.js.map +0 -1
  1000. package/esm/storage/providers/idb/repository/auth-keys.d.ts +0 -14
  1001. package/esm/storage/providers/idb/repository/auth-keys.js +0 -66
  1002. package/esm/storage/providers/idb/repository/auth-keys.js.map +0 -1
  1003. package/esm/storage/providers/idb/repository/kv.d.ts +0 -11
  1004. package/esm/storage/providers/idb/repository/kv.js +0 -30
  1005. package/esm/storage/providers/idb/repository/kv.js.map +0 -1
  1006. package/esm/storage/providers/idb/repository/peers.d.ts +0 -12
  1007. package/esm/storage/providers/idb/repository/peers.js +0 -34
  1008. package/esm/storage/providers/idb/repository/peers.js.map +0 -1
  1009. package/esm/storage/providers/idb/repository/ref-messages.d.ts +0 -12
  1010. package/esm/storage/providers/idb/repository/ref-messages.js +0 -53
  1011. package/esm/storage/providers/idb/repository/ref-messages.js.map +0 -1
  1012. package/esm/storage/providers/idb/utils.d.ts +0 -3
  1013. package/esm/storage/providers/idb/utils.js +0 -21
  1014. package/esm/storage/providers/idb/utils.js.map +0 -1
  1015. package/esm/storage/providers/memory/driver.js.map +0 -1
  1016. package/esm/storage/providers/memory/index.js.map +0 -1
  1017. package/esm/storage/providers/memory/memory.test.d.ts +0 -1
  1018. package/esm/storage/providers/memory/memory.test.js +0 -11
  1019. package/esm/storage/providers/memory/memory.test.js.map +0 -1
  1020. package/esm/storage/providers/memory/repository/auth-keys.js.map +0 -1
  1021. package/esm/storage/providers/memory/repository/kv.js.map +0 -1
  1022. package/esm/storage/providers/memory/repository/peers.js.map +0 -1
  1023. package/esm/storage/providers/memory/repository/ref-messages.js.map +0 -1
  1024. package/esm/storage/service/auth-keys.test.d.ts +0 -1
  1025. package/esm/storage/service/auth-keys.test.js +0 -20
  1026. package/esm/storage/service/auth-keys.test.js.map +0 -1
  1027. package/esm/storage/service/updates.test.d.ts +0 -1
  1028. package/esm/storage/service/updates.test.js +0 -58
  1029. package/esm/storage/service/updates.test.js.map +0 -1
  1030. package/esm/storage/service/utils.test-utils.d.ts +0 -2
  1031. package/esm/storage/service/utils.test-utils.js +0 -15
  1032. package/esm/storage/service/utils.test-utils.js.map +0 -1
  1033. package/esm/utils/async-lock.test.d.ts +0 -1
  1034. package/esm/utils/async-lock.test.js +0 -23
  1035. package/esm/utils/async-lock.test.js.map +0 -1
  1036. package/esm/utils/bigint-utils.test.d.ts +0 -1
  1037. package/esm/utils/bigint-utils.test.js +0 -148
  1038. package/esm/utils/bigint-utils.test.js.map +0 -1
  1039. package/esm/utils/buffer-utils.test.d.ts +0 -1
  1040. package/esm/utils/buffer-utils.test.js +0 -67
  1041. package/esm/utils/buffer-utils.test.js.map +0 -1
  1042. package/esm/utils/condition-variable.test.d.ts +0 -1
  1043. package/esm/utils/condition-variable.test.js +0 -25
  1044. package/esm/utils/condition-variable.test.js.map +0 -1
  1045. package/esm/utils/controllable-promise.test.d.ts +0 -1
  1046. package/esm/utils/controllable-promise.test.js +0 -15
  1047. package/esm/utils/controllable-promise.test.js.map +0 -1
  1048. package/esm/utils/crypto/factorization.test.d.ts +0 -1
  1049. package/esm/utils/crypto/factorization.test.js +0 -17
  1050. package/esm/utils/crypto/factorization.test.js.map +0 -1
  1051. package/esm/utils/crypto/keys.test.d.ts +0 -1
  1052. package/esm/utils/crypto/keys.test.js +0 -38
  1053. package/esm/utils/crypto/keys.test.js.map +0 -1
  1054. package/esm/utils/crypto/miller-rabin.test.d.ts +0 -1
  1055. package/esm/utils/crypto/miller-rabin.test.js +0 -58
  1056. package/esm/utils/crypto/miller-rabin.test.js.map +0 -1
  1057. package/esm/utils/crypto/mtproto.test.d.ts +0 -1
  1058. package/esm/utils/crypto/mtproto.test.js +0 -48
  1059. package/esm/utils/crypto/mtproto.test.js.map +0 -1
  1060. package/esm/utils/crypto/node.d.ts +0 -21
  1061. package/esm/utils/crypto/node.js +0 -69
  1062. package/esm/utils/crypto/node.js.map +0 -1
  1063. package/esm/utils/crypto/node.test.d.ts +0 -1
  1064. package/esm/utils/crypto/node.test.js +0 -12
  1065. package/esm/utils/crypto/node.test.js.map +0 -1
  1066. package/esm/utils/crypto/password.test.d.ts +0 -1
  1067. package/esm/utils/crypto/password.test.js +0 -90
  1068. package/esm/utils/crypto/password.test.js.map +0 -1
  1069. package/esm/utils/crypto/utils.test.d.ts +0 -1
  1070. package/esm/utils/crypto/utils.test.js +0 -47
  1071. package/esm/utils/crypto/utils.test.js.map +0 -1
  1072. package/esm/utils/crypto/wasm.d.ts +0 -22
  1073. package/esm/utils/crypto/wasm.js +0 -37
  1074. package/esm/utils/crypto/wasm.js.map +0 -1
  1075. package/esm/utils/crypto/web.d.ts +0 -11
  1076. package/esm/utils/crypto/web.js +0 -36
  1077. package/esm/utils/crypto/web.js.map +0 -1
  1078. package/esm/utils/crypto/web.test.d.ts +0 -1
  1079. package/esm/utils/crypto/web.test.js +0 -15
  1080. package/esm/utils/crypto/web.test.js.map +0 -1
  1081. package/esm/utils/deque.test.d.ts +0 -1
  1082. package/esm/utils/deque.test.js +0 -126
  1083. package/esm/utils/deque.test.js.map +0 -1
  1084. package/esm/utils/function-utils.test.d.ts +0 -1
  1085. package/esm/utils/function-utils.test.js +0 -21
  1086. package/esm/utils/function-utils.test.js.map +0 -1
  1087. package/esm/utils/linked-list.test.d.ts +0 -1
  1088. package/esm/utils/linked-list.test.js +0 -34
  1089. package/esm/utils/linked-list.test.js.map +0 -1
  1090. package/esm/utils/links/bots.test.d.ts +0 -1
  1091. package/esm/utils/links/bots.test.js +0 -150
  1092. package/esm/utils/links/bots.test.js.map +0 -1
  1093. package/esm/utils/links/chat.test.d.ts +0 -1
  1094. package/esm/utils/links/chat.test.js +0 -82
  1095. package/esm/utils/links/chat.test.js.map +0 -1
  1096. package/esm/utils/links/misc.test.d.ts +0 -1
  1097. package/esm/utils/links/misc.test.js +0 -151
  1098. package/esm/utils/links/misc.test.js.map +0 -1
  1099. package/esm/utils/links/proxy.test.d.ts +0 -1
  1100. package/esm/utils/links/proxy.test.js +0 -72
  1101. package/esm/utils/links/proxy.test.js.map +0 -1
  1102. package/esm/utils/links/user.test.d.ts +0 -1
  1103. package/esm/utils/links/user.test.js +0 -61
  1104. package/esm/utils/links/user.test.js.map +0 -1
  1105. package/esm/utils/logger.test.d.ts +0 -1
  1106. package/esm/utils/logger.test.js +0 -134
  1107. package/esm/utils/logger.test.js.map +0 -1
  1108. package/esm/utils/long-utils.test.d.ts +0 -1
  1109. package/esm/utils/long-utils.test.js +0 -153
  1110. package/esm/utils/long-utils.test.js.map +0 -1
  1111. package/esm/utils/lru-map.test.d.ts +0 -1
  1112. package/esm/utils/lru-map.test.js +0 -94
  1113. package/esm/utils/lru-map.test.js.map +0 -1
  1114. package/esm/utils/lru-set.test.d.ts +0 -1
  1115. package/esm/utils/lru-set.test.js +0 -72
  1116. package/esm/utils/lru-set.test.js.map +0 -1
  1117. package/esm/utils/peer-utils.test.d.ts +0 -1
  1118. package/esm/utils/peer-utils.test.js +0 -105
  1119. package/esm/utils/peer-utils.test.js.map +0 -1
  1120. package/esm/utils/platform/crypto.d.ts +0 -1
  1121. package/esm/utils/platform/crypto.js +0 -4
  1122. package/esm/utils/platform/crypto.js.map +0 -1
  1123. package/esm/utils/platform/crypto.web.d.ts +0 -1
  1124. package/esm/utils/platform/crypto.web.js +0 -10
  1125. package/esm/utils/platform/crypto.web.js.map +0 -1
  1126. package/esm/utils/platform/error-reporting.js.map +0 -1
  1127. package/esm/utils/platform/exit-hook.d.ts +0 -1
  1128. package/esm/utils/platform/exit-hook.js +0 -41
  1129. package/esm/utils/platform/exit-hook.js.map +0 -1
  1130. package/esm/utils/platform/exit-hook.web.d.ts +0 -1
  1131. package/esm/utils/platform/exit-hook.web.js +0 -17
  1132. package/esm/utils/platform/exit-hook.web.js.map +0 -1
  1133. package/esm/utils/platform/logging.d.ts +0 -1
  1134. package/esm/utils/platform/logging.js +0 -31
  1135. package/esm/utils/platform/logging.js.map +0 -1
  1136. package/esm/utils/platform/logging.web.d.ts +0 -1
  1137. package/esm/utils/platform/logging.web.js +0 -31
  1138. package/esm/utils/platform/logging.web.js.map +0 -1
  1139. package/esm/utils/platform/transport.d.ts +0 -1
  1140. package/esm/utils/platform/transport.js +0 -4
  1141. package/esm/utils/platform/transport.js.map +0 -1
  1142. package/esm/utils/platform/transport.web.d.ts +0 -1
  1143. package/esm/utils/platform/transport.web.js +0 -12
  1144. package/esm/utils/platform/transport.web.js.map +0 -1
  1145. package/esm/utils/sorted-array.test.d.ts +0 -1
  1146. package/esm/utils/sorted-array.test.js +0 -64
  1147. package/esm/utils/sorted-array.test.js.map +0 -1
  1148. package/esm/utils/tl-json.test.d.ts +0 -1
  1149. package/esm/utils/tl-json.test.js +0 -81
  1150. package/esm/utils/tl-json.test.js.map +0 -1
  1151. package/esm/utils/type-assertions.test.d.ts +0 -1
  1152. package/esm/utils/type-assertions.test.js +0 -65
  1153. package/esm/utils/type-assertions.test.js.map +0 -1
  1154. /package/cjs/highlevel/{base.test.d.ts → methods/files/download-node-stream.d.ts} +0 -0
  1155. /package/cjs/storage/{providers/memory → memory}/driver.js +0 -0
  1156. /package/cjs/storage/{providers/memory → memory}/index.js +0 -0
  1157. /package/cjs/storage/{providers/memory → memory}/repository/auth-keys.js +0 -0
  1158. /package/cjs/storage/{providers/memory → memory}/repository/kv.js +0 -0
  1159. /package/cjs/storage/{providers/memory → memory}/repository/peers.js +0 -0
  1160. /package/cjs/storage/{providers/memory → memory}/repository/ref-messages.js +0 -0
  1161. /package/cjs/utils/{platform/error-reporting.js → error-reporting.js} +0 -0
  1162. /package/{cjs/highlevel/methods/files/_platform.d.ts → esm/highlevel/methods/files/download-node-stream.d.ts} +0 -0
  1163. /package/esm/storage/{providers/memory → memory}/driver.js +0 -0
  1164. /package/esm/storage/{providers/memory → memory}/index.js +0 -0
  1165. /package/esm/storage/{providers/memory → memory}/repository/auth-keys.js +0 -0
  1166. /package/esm/storage/{providers/memory → memory}/repository/kv.js +0 -0
  1167. /package/esm/storage/{providers/memory → memory}/repository/peers.js +0 -0
  1168. /package/esm/storage/{providers/memory → memory}/repository/ref-messages.js +0 -0
  1169. /package/esm/utils/{platform/error-reporting.js → error-reporting.js} +0 -0
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Thumbnail = void 0;
7
7
  const long_1 = __importDefault(require("long"));
8
8
  const file_id_1 = require("@mtcute/file-id");
9
+ const platform_js_1 = require("../../../platform.js");
9
10
  const errors_js_1 = require("../../../types/errors.js");
10
11
  const type_assertions_js_1 = require("../../../utils/type-assertions.js");
11
12
  const file_utils_js_1 = require("../../utils/file-utils.js");
@@ -137,7 +138,7 @@ class Thumbnail extends index_js_2.FileLocation {
137
138
  throw new errors_js_1.MtArgumentError(`Cannot generate a file ID for "${this.type}"`);
138
139
  }
139
140
  if (this._media._ === 'stickerSet') {
140
- return (0, file_id_1.toFileId)({
141
+ return (0, file_id_1.toFileId)((0, platform_js_1.getPlatform)(), {
141
142
  type: file_id_1.tdFileId.FileType.Thumbnail,
142
143
  dcId: this.dcId,
143
144
  fileReference: null,
@@ -154,7 +155,7 @@ class Thumbnail extends index_js_2.FileLocation {
154
155
  },
155
156
  });
156
157
  }
157
- return (0, file_id_1.toFileId)({
158
+ return (0, file_id_1.toFileId)((0, platform_js_1.getPlatform)(), {
158
159
  type: this._media._ === 'photo' ? file_id_1.tdFileId.FileType.Photo : file_id_1.tdFileId.FileType.Thumbnail,
159
160
  dcId: this.dcId,
160
161
  fileReference: this._media.fileReference,
@@ -180,7 +181,7 @@ class Thumbnail extends index_js_2.FileLocation {
180
181
  throw new errors_js_1.MtArgumentError(`Cannot generate a unique file ID for "${this.type}"`);
181
182
  }
182
183
  if (this._media._ === 'stickerSet') {
183
- return (0, file_id_1.toUniqueFileId)(file_id_1.tdFileId.FileType.Thumbnail, {
184
+ return (0, file_id_1.toUniqueFileId)((0, platform_js_1.getPlatform)(), file_id_1.tdFileId.FileType.Thumbnail, {
184
185
  _: 'photo',
185
186
  id: long_1.default.ZERO,
186
187
  source: {
@@ -191,7 +192,7 @@ class Thumbnail extends index_js_2.FileLocation {
191
192
  },
192
193
  });
193
194
  }
194
- return (0, file_id_1.toUniqueFileId)(this._media._ === 'photo' ? file_id_1.tdFileId.FileType.Photo : file_id_1.tdFileId.FileType.Thumbnail, {
195
+ return (0, file_id_1.toUniqueFileId)((0, platform_js_1.getPlatform)(), this._media._ === 'photo' ? file_id_1.tdFileId.FileType.Photo : file_id_1.tdFileId.FileType.Thumbnail, {
195
196
  _: 'photo',
196
197
  id: this._media.id,
197
198
  source: {
@@ -1 +1 @@
1
- {"version":3,"file":"thumbnail.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/media/thumbnail.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\n\nimport { tdFileId as td, toFileId, toUniqueFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { MtArgumentError, MtTypeAssertionError } from '../../../types/errors.js'\nimport { assertTypeIs } from '../../../utils/type-assertions.js'\nimport { inflateSvgPath, strippedPhotoToJpg, svgPathToFile } from '../../utils/file-utils.js'\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { FileLocation } from '../files/index.js'\n\n/**\n * One size of some thumbnail\n */\nexport class Thumbnail extends FileLocation {\n // see: https://core.telegram.org/api/files#image-thumbnail-types\n static readonly THUMB_100x100_BOX = 's'\n static readonly THUMB_320x320_BOX = 'm'\n static readonly THUMB_800x800_BOX = 'x'\n static readonly THUMB_1280x1280_BOX = 'y'\n static readonly THUMB_2560x2560_BOX = 'w'\n\n static readonly THUMB_160x160_CROP = 'a'\n static readonly THUMB_320x320_CROP = 'b'\n static readonly THUMB_640x640_CROP = 'c'\n static readonly THUMB_1280x1280_CROP = 'd'\n\n static readonly THUMB_STRIP = 'i'\n static readonly THUMB_OUTLINE = 'j'\n\n /** Animated profile pictures preview */\n static readonly THUMB_VIDEO_PROFILE = 'u'\n /** Trimmed and downscaled video previews */\n static readonly THUMB_VIDEO_PREVIEW = 'v'\n /** Fullscreen animation for Premium stickers */\n static readonly THUMB_VIDEO_FULLSCREEN = 'f'\n\n /** (non-standard) Emoji-based markup for profile photo */\n static readonly THUMB_EMOJI_MARKUP = 'pfp_em'\n /** (non-standard) Sticker-based markup for profile photo */\n static readonly THUMB_STICKER_MARKUP = 'pfp_st'\n\n readonly raw: tl.TypePhotoSize | tl.TypeVideoSize\n\n /**\n * Thumbnail width\n * (`NaN` for {@link THUMB_OUTLINE} and {@link THUMB_STRIP})\n */\n readonly width: number\n\n /**\n * Thumbnail height\n * (`NaN` for {@link THUMB_OUTLINE} and {@link THUMB_STRIP})\n */\n readonly height: number\n\n private _path?: string\n private _media: tl.RawPhoto | tl.RawDocument | tl.RawStickerSet | tl.RawMessageExtendedMediaPreview\n\n constructor(\n media: tl.RawPhoto | tl.RawDocument | tl.RawStickerSet | tl.RawMessageExtendedMediaPreview,\n sz: tl.TypePhotoSize | tl.TypeVideoSize,\n ) {\n switch (sz._) {\n case 'photoSizeEmpty':\n case 'photoCachedSize':\n throw new MtTypeAssertionError('sz', 'not (photoSizeEmpty | photoCachedSize)', sz._)\n }\n\n let location: tl.TypeInputFileLocation | Uint8Array | (() => tl.TypeInputFileLocation | Uint8Array)\n let size\n let width\n let height: number\n\n switch (sz._) {\n case 'photoStrippedSize':\n location = strippedPhotoToJpg(sz.bytes)\n width = height = NaN\n size = location.length\n break\n case 'photoPathSize': // lazily\n location = () => svgPathToFile(this._path!)\n width = height = NaN\n size = Infinity // this doesn't really matter\n break\n case 'videoSizeEmojiMarkup':\n case 'videoSizeStickerMarkup':\n location = () => {\n throw new MtArgumentError('Cannot download thumbnail with emoji/sticker markup, try other size')\n }\n width = height = NaN\n size = Infinity\n break\n default:\n if (media._ === 'stickerSet') {\n location = {\n _: 'inputStickerSetThumb',\n stickerset: {\n _: 'inputStickerSetID',\n id: media.id,\n accessHash: media.accessHash,\n },\n thumbVersion: media.thumbVersion!,\n }\n } else if (media._ === 'messageExtendedMediaPreview') {\n // according to tdlib and tdesktop sources, sz can only be photoStrippedSize\n throw new MtTypeAssertionError('messageExtendedMediaPreview#thumb', 'photoStrippedSize', sz._)\n } else {\n location = {\n _: media._ === 'photo' ? 'inputPhotoFileLocation' : 'inputDocumentFileLocation',\n id: media.id,\n fileReference: media.fileReference,\n accessHash: media.accessHash,\n thumbSize: sz.type,\n }\n }\n width = sz.w\n height = sz.h\n size = sz._ === 'photoSizeProgressive' ? Math.max(...sz.sizes) : sz.size\n break\n }\n\n let dcId: number | undefined\n\n if (media._ === 'stickerSet') {\n dcId = media.thumbDcId\n } else if (media._ === 'messageExtendedMediaPreview') {\n dcId = 0\n } else {\n dcId = media.dcId\n }\n\n super(location, size, dcId)\n this.raw = sz\n this.width = width\n this.height = height\n this._media = media\n\n if (sz._ === 'photoPathSize') {\n this._path = inflateSvgPath(sz.bytes)\n }\n }\n\n get isVideo(): boolean {\n return this.raw._ === 'videoSize'\n }\n\n /**\n * Thumbnail type\n */\n get type(): string {\n if (this.raw._ === 'videoSizeEmojiMarkup') {\n return Thumbnail.THUMB_EMOJI_MARKUP\n }\n if (this.raw._ === 'videoSizeStickerMarkup') {\n return Thumbnail.THUMB_STICKER_MARKUP\n }\n\n return this.raw.type\n }\n\n /**\n * If {@link raw} is `tl.RawPhotoPathSize` (i.e. `raw.type === Thumbnail.THUMB_OUTLINE`),\n * this property will return raw SVG path of the preview.\n *\n * When downloading path thumbnails, a valid SVG file is returned.\n *\n * See also: https://core.telegram.org/api/files#vector-thumbnails\n *\n * @throws MtTypeAssertionError In case {@link raw} is not `tl.RawPhotoPathSize`\n */\n get path(): string {\n assertTypeIs('Thumbnail#path', this.raw, 'photoPathSize')\n\n return this._path!\n }\n\n /**\n * Get TDLib and Bot API compatible File ID\n * representing this thumbnail.\n *\n * > **Note:** You can't use this file id to send a thumbnail,\n * > only to download it.\n */\n get fileId(): string {\n if (\n (this.raw._ !== 'photoSize' && this.raw._ !== 'photoSizeProgressive' && this.raw._ !== 'videoSize') ||\n this._media._ === 'messageExtendedMediaPreview' // just for type safety\n ) {\n throw new MtArgumentError(`Cannot generate a file ID for \"${this.type}\"`)\n }\n\n if (this._media._ === 'stickerSet') {\n return toFileId({\n type: td.FileType.Thumbnail,\n dcId: this.dcId!,\n fileReference: null,\n location: {\n _: 'photo',\n id: Long.ZERO,\n accessHash: Long.ZERO,\n source: {\n _: 'stickerSetThumbnailVersion',\n id: this._media.id,\n accessHash: this._media.accessHash,\n version: this._media.thumbVersion!,\n },\n },\n })\n }\n\n return toFileId({\n type: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n dcId: this.dcId!,\n fileReference: this._media.fileReference,\n location: {\n _: 'photo',\n id: this._media.id,\n accessHash: this._media.accessHash,\n source: {\n _: 'thumbnail',\n fileType: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n thumbnailType: this.raw.type === 'u' ? '\\x00' : this.raw.type,\n },\n },\n })\n }\n\n /**\n * Get a unique File ID representing this thumbnail.\n */\n get uniqueFileId(): string {\n if (\n (this.raw._ !== 'photoSize' && this.raw._ !== 'photoSizeProgressive' && this.raw._ !== 'videoSize') ||\n this._media._ === 'messageExtendedMediaPreview' // just for type safety\n ) {\n throw new MtArgumentError(`Cannot generate a unique file ID for \"${this.type}\"`)\n }\n\n if (this._media._ === 'stickerSet') {\n return toUniqueFileId(td.FileType.Thumbnail, {\n _: 'photo',\n id: Long.ZERO,\n source: {\n _: 'stickerSetThumbnailVersion',\n id: this._media.id,\n accessHash: this._media.accessHash,\n version: this._media.thumbVersion!,\n },\n })\n }\n\n return toUniqueFileId(this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail, {\n _: 'photo',\n id: this._media.id,\n source: {\n _: 'thumbnail',\n fileType: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n thumbnailType: this.raw.type === 'u' ? '\\x00' : this.raw.type,\n },\n })\n }\n}\n\nmemoizeGetters(Thumbnail, ['fileId', 'uniqueFileId'])\nmakeInspectable(Thumbnail, ['fileSize', 'dcId', 'width', 'height'], ['path'])\n"]}
1
+ {"version":3,"file":"thumbnail.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/media/thumbnail.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\n\nimport { tdFileId as td, toFileId, toUniqueFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { getPlatform } from '../../../platform.js'\nimport { MtArgumentError, MtTypeAssertionError } from '../../../types/errors.js'\nimport { assertTypeIs } from '../../../utils/type-assertions.js'\nimport { inflateSvgPath, strippedPhotoToJpg, svgPathToFile } from '../../utils/file-utils.js'\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { FileLocation } from '../files/index.js'\n\n/**\n * One size of some thumbnail\n */\nexport class Thumbnail extends FileLocation {\n // see: https://core.telegram.org/api/files#image-thumbnail-types\n static readonly THUMB_100x100_BOX = 's'\n static readonly THUMB_320x320_BOX = 'm'\n static readonly THUMB_800x800_BOX = 'x'\n static readonly THUMB_1280x1280_BOX = 'y'\n static readonly THUMB_2560x2560_BOX = 'w'\n\n static readonly THUMB_160x160_CROP = 'a'\n static readonly THUMB_320x320_CROP = 'b'\n static readonly THUMB_640x640_CROP = 'c'\n static readonly THUMB_1280x1280_CROP = 'd'\n\n static readonly THUMB_STRIP = 'i'\n static readonly THUMB_OUTLINE = 'j'\n\n /** Animated profile pictures preview */\n static readonly THUMB_VIDEO_PROFILE = 'u'\n /** Trimmed and downscaled video previews */\n static readonly THUMB_VIDEO_PREVIEW = 'v'\n /** Fullscreen animation for Premium stickers */\n static readonly THUMB_VIDEO_FULLSCREEN = 'f'\n\n /** (non-standard) Emoji-based markup for profile photo */\n static readonly THUMB_EMOJI_MARKUP = 'pfp_em'\n /** (non-standard) Sticker-based markup for profile photo */\n static readonly THUMB_STICKER_MARKUP = 'pfp_st'\n\n readonly raw: tl.TypePhotoSize | tl.TypeVideoSize\n\n /**\n * Thumbnail width\n * (`NaN` for {@link THUMB_OUTLINE} and {@link THUMB_STRIP})\n */\n readonly width: number\n\n /**\n * Thumbnail height\n * (`NaN` for {@link THUMB_OUTLINE} and {@link THUMB_STRIP})\n */\n readonly height: number\n\n private _path?: string\n private _media: tl.RawPhoto | tl.RawDocument | tl.RawStickerSet | tl.RawMessageExtendedMediaPreview\n\n constructor(\n media: tl.RawPhoto | tl.RawDocument | tl.RawStickerSet | tl.RawMessageExtendedMediaPreview,\n sz: tl.TypePhotoSize | tl.TypeVideoSize,\n ) {\n switch (sz._) {\n case 'photoSizeEmpty':\n case 'photoCachedSize':\n throw new MtTypeAssertionError('sz', 'not (photoSizeEmpty | photoCachedSize)', sz._)\n }\n\n let location: tl.TypeInputFileLocation | Uint8Array | (() => tl.TypeInputFileLocation | Uint8Array)\n let size\n let width\n let height: number\n\n switch (sz._) {\n case 'photoStrippedSize':\n location = strippedPhotoToJpg(sz.bytes)\n width = height = NaN\n size = location.length\n break\n case 'photoPathSize': // lazily\n location = () => svgPathToFile(this._path!)\n width = height = NaN\n size = Infinity // this doesn't really matter\n break\n case 'videoSizeEmojiMarkup':\n case 'videoSizeStickerMarkup':\n location = () => {\n throw new MtArgumentError('Cannot download thumbnail with emoji/sticker markup, try other size')\n }\n width = height = NaN\n size = Infinity\n break\n default:\n if (media._ === 'stickerSet') {\n location = {\n _: 'inputStickerSetThumb',\n stickerset: {\n _: 'inputStickerSetID',\n id: media.id,\n accessHash: media.accessHash,\n },\n thumbVersion: media.thumbVersion!,\n }\n } else if (media._ === 'messageExtendedMediaPreview') {\n // according to tdlib and tdesktop sources, sz can only be photoStrippedSize\n throw new MtTypeAssertionError('messageExtendedMediaPreview#thumb', 'photoStrippedSize', sz._)\n } else {\n location = {\n _: media._ === 'photo' ? 'inputPhotoFileLocation' : 'inputDocumentFileLocation',\n id: media.id,\n fileReference: media.fileReference,\n accessHash: media.accessHash,\n thumbSize: sz.type,\n }\n }\n width = sz.w\n height = sz.h\n size = sz._ === 'photoSizeProgressive' ? Math.max(...sz.sizes) : sz.size\n break\n }\n\n let dcId: number | undefined\n\n if (media._ === 'stickerSet') {\n dcId = media.thumbDcId\n } else if (media._ === 'messageExtendedMediaPreview') {\n dcId = 0\n } else {\n dcId = media.dcId\n }\n\n super(location, size, dcId)\n this.raw = sz\n this.width = width\n this.height = height\n this._media = media\n\n if (sz._ === 'photoPathSize') {\n this._path = inflateSvgPath(sz.bytes)\n }\n }\n\n get isVideo(): boolean {\n return this.raw._ === 'videoSize'\n }\n\n /**\n * Thumbnail type\n */\n get type(): string {\n if (this.raw._ === 'videoSizeEmojiMarkup') {\n return Thumbnail.THUMB_EMOJI_MARKUP\n }\n if (this.raw._ === 'videoSizeStickerMarkup') {\n return Thumbnail.THUMB_STICKER_MARKUP\n }\n\n return this.raw.type\n }\n\n /**\n * If {@link raw} is `tl.RawPhotoPathSize` (i.e. `raw.type === Thumbnail.THUMB_OUTLINE`),\n * this property will return raw SVG path of the preview.\n *\n * When downloading path thumbnails, a valid SVG file is returned.\n *\n * See also: https://core.telegram.org/api/files#vector-thumbnails\n *\n * @throws MtTypeAssertionError In case {@link raw} is not `tl.RawPhotoPathSize`\n */\n get path(): string {\n assertTypeIs('Thumbnail#path', this.raw, 'photoPathSize')\n\n return this._path!\n }\n\n /**\n * Get TDLib and Bot API compatible File ID\n * representing this thumbnail.\n *\n * > **Note:** You can't use this file id to send a thumbnail,\n * > only to download it.\n */\n get fileId(): string {\n if (\n (this.raw._ !== 'photoSize' && this.raw._ !== 'photoSizeProgressive' && this.raw._ !== 'videoSize') ||\n this._media._ === 'messageExtendedMediaPreview' // just for type safety\n ) {\n throw new MtArgumentError(`Cannot generate a file ID for \"${this.type}\"`)\n }\n\n if (this._media._ === 'stickerSet') {\n return toFileId(getPlatform(), {\n type: td.FileType.Thumbnail,\n dcId: this.dcId!,\n fileReference: null,\n location: {\n _: 'photo',\n id: Long.ZERO,\n accessHash: Long.ZERO,\n source: {\n _: 'stickerSetThumbnailVersion',\n id: this._media.id,\n accessHash: this._media.accessHash,\n version: this._media.thumbVersion!,\n },\n },\n })\n }\n\n return toFileId(getPlatform(), {\n type: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n dcId: this.dcId!,\n fileReference: this._media.fileReference,\n location: {\n _: 'photo',\n id: this._media.id,\n accessHash: this._media.accessHash,\n source: {\n _: 'thumbnail',\n fileType: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n thumbnailType: this.raw.type === 'u' ? '\\x00' : this.raw.type,\n },\n },\n })\n }\n\n /**\n * Get a unique File ID representing this thumbnail.\n */\n get uniqueFileId(): string {\n if (\n (this.raw._ !== 'photoSize' && this.raw._ !== 'photoSizeProgressive' && this.raw._ !== 'videoSize') ||\n this._media._ === 'messageExtendedMediaPreview' // just for type safety\n ) {\n throw new MtArgumentError(`Cannot generate a unique file ID for \"${this.type}\"`)\n }\n\n if (this._media._ === 'stickerSet') {\n return toUniqueFileId(getPlatform(), td.FileType.Thumbnail, {\n _: 'photo',\n id: Long.ZERO,\n source: {\n _: 'stickerSetThumbnailVersion',\n id: this._media.id,\n accessHash: this._media.accessHash,\n version: this._media.thumbVersion!,\n },\n })\n }\n\n return toUniqueFileId(getPlatform(), this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail, {\n _: 'photo',\n id: this._media.id,\n source: {\n _: 'thumbnail',\n fileType: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n thumbnailType: this.raw.type === 'u' ? '\\x00' : this.raw.type,\n },\n })\n }\n}\n\nmemoizeGetters(Thumbnail, ['fileId', 'uniqueFileId'])\nmakeInspectable(Thumbnail, ['fileSize', 'dcId', 'width', 'height'], ['path'])\n"]}
@@ -1,5 +1,5 @@
1
1
  import { tl } from '@mtcute/tl';
2
- import { ReplyMarkup } from '../bots/keyboards.js';
2
+ import { ReplyMarkup } from '../bots/keyboards/index.js';
3
3
  import { TextWithEntities } from '../misc/index.js';
4
4
  import { Chat } from '../peers/chat.js';
5
5
  import { Peer } from '../peers/peer.js';
@@ -7,7 +7,7 @@ const peer_utils_js_1 = require("../../../utils/peer-utils.js");
7
7
  const type_assertions_js_1 = require("../../../utils/type-assertions.js");
8
8
  const index_js_1 = require("../../utils/index.js");
9
9
  const memoize_js_1 = require("../../utils/memoize.js");
10
- const keyboards_js_1 = require("../bots/keyboards.js");
10
+ const index_js_2 = require("../bots/keyboards/index.js");
11
11
  const chat_js_1 = require("../peers/chat.js");
12
12
  const peer_js_1 = require("../peers/peer.js");
13
13
  const user_js_1 = require("../peers/user.js");
@@ -282,12 +282,12 @@ class Message {
282
282
  resize: rm.resize,
283
283
  singleUse: rm.singleUse,
284
284
  selective: rm.selective,
285
- buttons: keyboards_js_1.BotKeyboard._rowsTo2d(rm.rows),
285
+ buttons: index_js_2.BotKeyboard._rowsTo2d(rm.rows),
286
286
  };
287
287
  case 'replyInlineMarkup':
288
288
  return {
289
289
  type: 'inline',
290
- buttons: keyboards_js_1.BotKeyboard._rowsTo2d(rm.rows),
290
+ buttons: index_js_2.BotKeyboard._rowsTo2d(rm.rows),
291
291
  };
292
292
  default:
293
293
  (0, utils_js_1.assertNever)(rm);
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/messages/message.ts"],"names":[],"mappings":"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","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtArgumentError } from '../../../types/errors.js'\nimport { assertNever } from '../../../types/utils.js'\nimport { getMarkedPeerId, toggleChannelIdMark } from '../../../utils/peer-utils.js'\nimport { assertTypeIsNot } from '../../../utils/type-assertions.js'\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { BotKeyboard, ReplyMarkup } from '../bots/keyboards.js'\nimport { TextWithEntities } from '../misc/index.js'\nimport { Chat } from '../peers/chat.js'\nimport { parsePeer, Peer } from '../peers/peer.js'\nimport { PeersIndex } from '../peers/peers-index.js'\nimport { User } from '../peers/user.js'\nimport { _messageActionFromTl, MessageAction } from './message-action.js'\nimport { MessageEntity } from './message-entity.js'\nimport { MessageForwardInfo } from './message-forward.js'\nimport { _messageMediaFromTl, MessageMedia } from './message-media.js'\nimport { MessageReactions } from './message-reactions.js'\nimport { MessageRepliesInfo } from './message-replies.js'\nimport { RepliedMessageInfo } from './replied-message.js'\n\n/**\n * A Telegram message.\n */\nexport class Message {\n /**\n * Raw TL object.\n */\n readonly raw: tl.RawMessage | tl.RawMessageService\n\n constructor(\n raw: tl.TypeMessage,\n readonly _peers: PeersIndex,\n /**\n * Whether the message is scheduled.\n * If it is, then its {@link date} is set to future.\n */\n readonly isScheduled = false,\n ) {\n assertTypeIsNot('Message#ctor', raw, 'messageEmpty')\n\n this.raw = raw\n }\n\n /** Unique message identifier inside this chat */\n get id(): number {\n return this.raw.id\n }\n\n /**\n * For channel posts, number of views\n *\n * `null` for service messages and non-post messages.\n */\n get views(): number | null {\n return this.raw._ === 'message' ? this.raw.views ?? null : null\n }\n\n /**\n * Whether the message is incoming or outgoing:\n * - Messages received from other chats are incoming (`outgoing = false`)\n * - Messages sent by you to other chats are outgoing (`outgoing = true`)\n * - Messages to yourself (i.e. *Saved Messages*) are incoming (`outgoing = false`)\n */\n get isOutgoing(): boolean {\n return this.raw.out!\n }\n\n /**\n * Whether this message is a service message\n */\n get isService(): boolean {\n return this.raw._ === 'messageService'\n }\n\n /** Whether this message has content protection (i.e. disabled forwards) */\n get isContentProtected(): boolean {\n return this.raw._ === 'message' && this.raw.noforwards!\n }\n\n /**\n * Multiple media messages with the same grouped ID\n * indicate an album or media group\n *\n * `null` for service messages and non-grouped messages\n */\n get groupedId(): tl.Long | null {\n return this.raw._ === 'message' ? this.raw.groupedId ?? null : null\n }\n\n /**\n * Same as {@link groupedId}, but is globally unique across chats.\n */\n get groupedIdUnique(): string | null {\n if (!(this.raw._ === 'message' && this.raw.groupedId !== undefined)) return null\n\n return `${this.raw.groupedId.low}|${this.raw.groupedId.high}|${getMarkedPeerId(this.raw.peerId)}`\n }\n\n /**\n * Message sender.\n *\n * Usually is a {@link User}, but can be a {@link Chat}\n * in case the message was sent by an anonymous admin, anonymous premium user,\n * or if the message is a forwarded channel post.\n *\n * If the message was sent by an anonymous admin,\n * sender will equal to {@link chat}.\n *\n * If the message is a forwarded channel post,\n * sender is the channel itself.\n */\n get sender(): Peer {\n const from = this.raw.fromId\n\n if (!from) {\n if (this.raw.peerId._ === 'peerUser') {\n return new User(this._peers.user(this.raw.peerId.userId))\n }\n\n // anon admin, return the chat\n return this.chat\n }\n\n return parsePeer(from, this._peers)\n }\n\n /**\n * Conversation the message belongs to\n */\n get chat(): Chat {\n return Chat._parseFromMessage(this.raw, this._peers)\n }\n\n /**\n * Date the message was sent\n */\n get date(): Date {\n return new Date(this.raw.date * 1000)\n }\n\n /**\n * If this message is a forward, contains info about it.\n */\n get forward(): MessageForwardInfo | null {\n if (this.raw._ !== 'message' || !this.raw.fwdFrom) {\n return null\n }\n\n return new MessageForwardInfo(this.raw.fwdFrom, this._peers)\n }\n\n /**\n * Whether the message is a channel post that was\n * automatically forwarded to the connected discussion group\n */\n get isAutomaticForward(): boolean {\n if (this.raw._ === 'messageService' || !this.raw.fwdFrom) return false\n\n const fwd = this.raw.fwdFrom\n\n return Boolean(\n this.chat.chatType === 'supergroup' &&\n fwd.savedFromMsgId &&\n fwd.savedFromPeer?._ === 'peerChannel' &&\n getMarkedPeerId(fwd.savedFromPeer) !== getMarkedPeerId(this.raw.peerId),\n )\n }\n\n /**\n * Information about comments (for channels) or replies (for groups)\n */\n get replies(): MessageRepliesInfo | null {\n if (this.raw._ !== 'message' || !this.raw.replies) return null\n\n return new MessageRepliesInfo(this.raw.replies, this._peers)\n }\n\n /**\n * For replies, information about the that is being replied to.\n *\n * Mutually exclusive with {@link replyToStory}\n */\n get replyToMessage(): RepliedMessageInfo | null {\n if (this.raw.replyTo?._ !== 'messageReplyHeader') return null\n\n return new RepliedMessageInfo(this.raw.replyTo, this._peers)\n }\n\n /**\n * For replies, information about the story that is being replied to\n *\n * Mutually exclusive with {@link replyToMessage}\n */\n get replyToStory(): tl.RawMessageReplyStoryHeader | null {\n if (this.raw.replyTo?._ !== 'messageReplyStoryHeader') return null\n\n return this.raw.replyTo\n }\n\n /** Whether this message is in a forum topic */\n get isTopicMessage(): boolean {\n if (this.raw.replyTo?._ !== 'messageReplyHeader') return false\n\n return this.raw.replyTo.forumTopic!\n }\n\n /**\n * Whether this message contains mention of the current user\n */\n get isMention(): boolean {\n return this.raw.mentioned!\n }\n\n /**\n * If this message is generated from an inline query,\n * information about the bot which generated it\n */\n get viaBot(): User | null {\n if (this.raw._ === 'messageService' || !this.raw.viaBotId) {\n return null\n }\n\n return new User(this._peers.user(this.raw.viaBotId))\n }\n\n /**\n * Message text or media caption.\n *\n * Empty string for service messages\n * (you should handle i18n yourself)\n */\n get text(): string {\n return this.raw._ === 'messageService' ? '' : this.raw.message\n }\n\n /**\n * Message text/caption entities (may be empty)\n */\n get entities(): ReadonlyArray<MessageEntity> {\n const entities: MessageEntity[] = []\n\n if (this.raw._ === 'message' && this.raw.entities?.length) {\n for (const ent of this.raw.entities) {\n entities.push(new MessageEntity(ent, this.raw.message))\n }\n }\n\n return entities\n }\n\n get textWithEntities(): TextWithEntities {\n if (this.raw._ === 'messageService') return { text: '', entities: [] }\n\n return {\n text: this.raw.message,\n entities: this.raw.entities,\n }\n }\n\n /**\n * Message action. `null` for non-service messages\n * or for unsupported events.\n *\n * For unsupported events, use `.raw.action` directly.\n */\n get action(): MessageAction | null {\n if (this.raw._ === 'message') {\n return null\n }\n\n return _messageActionFromTl.call(this, this.raw.action)\n }\n\n /**\n * Message media. `null` for text-only and service messages\n * and for unsupported media types.\n *\n * For unsupported media types, use `.raw.media` directly.\n */\n get media(): MessageMedia {\n if (this.raw._ === 'messageService' || !this.raw.media || this.raw.media._ === 'messageMediaEmpty') {\n return null\n }\n\n return _messageMediaFromTl(this._peers, this.raw.media)\n }\n\n /**\n * Whether this is a premium media\n * (e.g. >2gb file or fullscreen sticker)\n * that was forwarded without author by a non-premium user\n */\n get isForwardedPremiumMedia(): boolean {\n return this.raw._ === 'message' && this.raw.media?._ === 'messageMediaDocument' && this.raw.media.nopremium!\n }\n\n /**\n * TTL period of the message, in seconds.\n */\n get ttlPeriod(): number | null {\n return this.raw.ttlPeriod ?? null\n }\n\n /**\n * Reply markup provided with this message, if any.\n */\n get markup(): ReplyMarkup | null {\n if (this.raw._ === 'messageService' || !this.raw.replyMarkup) {\n return null\n }\n\n const rm = this.raw.replyMarkup\n\n switch (rm._) {\n case 'replyKeyboardHide':\n return {\n type: 'reply_hide',\n selective: rm.selective,\n }\n case 'replyKeyboardForceReply':\n return {\n type: 'force_reply',\n singleUse: rm.singleUse,\n selective: rm.selective,\n }\n case 'replyKeyboardMarkup':\n return {\n type: 'reply',\n resize: rm.resize,\n singleUse: rm.singleUse,\n selective: rm.selective,\n buttons: BotKeyboard._rowsTo2d(rm.rows),\n }\n case 'replyInlineMarkup':\n return {\n type: 'inline',\n buttons: BotKeyboard._rowsTo2d(rm.rows),\n }\n default:\n assertNever(rm)\n }\n }\n\n /**\n * Whether this message can be forwarded\n *\n * `false` for service mesasges and private restricted chats/chanenls\n */\n get canBeForwarded(): boolean {\n return this.raw._ === 'message' && !this.raw.noforwards\n }\n\n get reactions(): MessageReactions | null {\n if (this.raw._ === 'messageService' || !this.raw.reactions) {\n return null\n }\n\n return new MessageReactions(this.raw.id, getMarkedPeerId(this.raw.peerId), this.raw.reactions, this._peers)\n }\n\n /**\n * Generated permalink to this message, only for groups and channels\n *\n * @throws MtArgumentError In case the chat does not support message links\n */\n get link(): string {\n if (this.chat.chatType === 'supergroup' || this.chat.chatType === 'channel') {\n if (this.chat.username) {\n return `https://t.me/${this.chat.username}/${this.id}`\n }\n\n return `https://t.me/c/${toggleChannelIdMark(this.chat.id)}/${this.id}`\n }\n\n throw new MtArgumentError(`Cannot generate message link for ${this.chat.chatType}`)\n }\n}\n\nmemoizeGetters(Message, [\n 'sender',\n 'chat',\n 'forward',\n 'replies',\n 'viaBot',\n 'entities',\n 'action',\n 'media',\n 'markup',\n 'reactions',\n])\nmakeInspectable(Message, ['isScheduled'], ['link'])\n"]}
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/messages/message.ts"],"names":[],"mappings":"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","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtArgumentError } from '../../../types/errors.js'\nimport { assertNever } from '../../../types/utils.js'\nimport { getMarkedPeerId, toggleChannelIdMark } from '../../../utils/peer-utils.js'\nimport { assertTypeIsNot } from '../../../utils/type-assertions.js'\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { BotKeyboard, ReplyMarkup } from '../bots/keyboards/index.js'\nimport { TextWithEntities } from '../misc/index.js'\nimport { Chat } from '../peers/chat.js'\nimport { parsePeer, Peer } from '../peers/peer.js'\nimport { PeersIndex } from '../peers/peers-index.js'\nimport { User } from '../peers/user.js'\nimport { _messageActionFromTl, MessageAction } from './message-action.js'\nimport { MessageEntity } from './message-entity.js'\nimport { MessageForwardInfo } from './message-forward.js'\nimport { _messageMediaFromTl, MessageMedia } from './message-media.js'\nimport { MessageReactions } from './message-reactions.js'\nimport { MessageRepliesInfo } from './message-replies.js'\nimport { RepliedMessageInfo } from './replied-message.js'\n\n/**\n * A Telegram message.\n */\nexport class Message {\n /**\n * Raw TL object.\n */\n readonly raw: tl.RawMessage | tl.RawMessageService\n\n constructor(\n raw: tl.TypeMessage,\n readonly _peers: PeersIndex,\n /**\n * Whether the message is scheduled.\n * If it is, then its {@link date} is set to future.\n */\n readonly isScheduled = false,\n ) {\n assertTypeIsNot('Message#ctor', raw, 'messageEmpty')\n\n this.raw = raw\n }\n\n /** Unique message identifier inside this chat */\n get id(): number {\n return this.raw.id\n }\n\n /**\n * For channel posts, number of views\n *\n * `null` for service messages and non-post messages.\n */\n get views(): number | null {\n return this.raw._ === 'message' ? this.raw.views ?? null : null\n }\n\n /**\n * Whether the message is incoming or outgoing:\n * - Messages received from other chats are incoming (`outgoing = false`)\n * - Messages sent by you to other chats are outgoing (`outgoing = true`)\n * - Messages to yourself (i.e. *Saved Messages*) are incoming (`outgoing = false`)\n */\n get isOutgoing(): boolean {\n return this.raw.out!\n }\n\n /**\n * Whether this message is a service message\n */\n get isService(): boolean {\n return this.raw._ === 'messageService'\n }\n\n /** Whether this message has content protection (i.e. disabled forwards) */\n get isContentProtected(): boolean {\n return this.raw._ === 'message' && this.raw.noforwards!\n }\n\n /**\n * Multiple media messages with the same grouped ID\n * indicate an album or media group\n *\n * `null` for service messages and non-grouped messages\n */\n get groupedId(): tl.Long | null {\n return this.raw._ === 'message' ? this.raw.groupedId ?? null : null\n }\n\n /**\n * Same as {@link groupedId}, but is globally unique across chats.\n */\n get groupedIdUnique(): string | null {\n if (!(this.raw._ === 'message' && this.raw.groupedId !== undefined)) return null\n\n return `${this.raw.groupedId.low}|${this.raw.groupedId.high}|${getMarkedPeerId(this.raw.peerId)}`\n }\n\n /**\n * Message sender.\n *\n * Usually is a {@link User}, but can be a {@link Chat}\n * in case the message was sent by an anonymous admin, anonymous premium user,\n * or if the message is a forwarded channel post.\n *\n * If the message was sent by an anonymous admin,\n * sender will equal to {@link chat}.\n *\n * If the message is a forwarded channel post,\n * sender is the channel itself.\n */\n get sender(): Peer {\n const from = this.raw.fromId\n\n if (!from) {\n if (this.raw.peerId._ === 'peerUser') {\n return new User(this._peers.user(this.raw.peerId.userId))\n }\n\n // anon admin, return the chat\n return this.chat\n }\n\n return parsePeer(from, this._peers)\n }\n\n /**\n * Conversation the message belongs to\n */\n get chat(): Chat {\n return Chat._parseFromMessage(this.raw, this._peers)\n }\n\n /**\n * Date the message was sent\n */\n get date(): Date {\n return new Date(this.raw.date * 1000)\n }\n\n /**\n * If this message is a forward, contains info about it.\n */\n get forward(): MessageForwardInfo | null {\n if (this.raw._ !== 'message' || !this.raw.fwdFrom) {\n return null\n }\n\n return new MessageForwardInfo(this.raw.fwdFrom, this._peers)\n }\n\n /**\n * Whether the message is a channel post that was\n * automatically forwarded to the connected discussion group\n */\n get isAutomaticForward(): boolean {\n if (this.raw._ === 'messageService' || !this.raw.fwdFrom) return false\n\n const fwd = this.raw.fwdFrom\n\n return Boolean(\n this.chat.chatType === 'supergroup' &&\n fwd.savedFromMsgId &&\n fwd.savedFromPeer?._ === 'peerChannel' &&\n getMarkedPeerId(fwd.savedFromPeer) !== getMarkedPeerId(this.raw.peerId),\n )\n }\n\n /**\n * Information about comments (for channels) or replies (for groups)\n */\n get replies(): MessageRepliesInfo | null {\n if (this.raw._ !== 'message' || !this.raw.replies) return null\n\n return new MessageRepliesInfo(this.raw.replies, this._peers)\n }\n\n /**\n * For replies, information about the that is being replied to.\n *\n * Mutually exclusive with {@link replyToStory}\n */\n get replyToMessage(): RepliedMessageInfo | null {\n if (this.raw.replyTo?._ !== 'messageReplyHeader') return null\n\n return new RepliedMessageInfo(this.raw.replyTo, this._peers)\n }\n\n /**\n * For replies, information about the story that is being replied to\n *\n * Mutually exclusive with {@link replyToMessage}\n */\n get replyToStory(): tl.RawMessageReplyStoryHeader | null {\n if (this.raw.replyTo?._ !== 'messageReplyStoryHeader') return null\n\n return this.raw.replyTo\n }\n\n /** Whether this message is in a forum topic */\n get isTopicMessage(): boolean {\n if (this.raw.replyTo?._ !== 'messageReplyHeader') return false\n\n return this.raw.replyTo.forumTopic!\n }\n\n /**\n * Whether this message contains mention of the current user\n */\n get isMention(): boolean {\n return this.raw.mentioned!\n }\n\n /**\n * If this message is generated from an inline query,\n * information about the bot which generated it\n */\n get viaBot(): User | null {\n if (this.raw._ === 'messageService' || !this.raw.viaBotId) {\n return null\n }\n\n return new User(this._peers.user(this.raw.viaBotId))\n }\n\n /**\n * Message text or media caption.\n *\n * Empty string for service messages\n * (you should handle i18n yourself)\n */\n get text(): string {\n return this.raw._ === 'messageService' ? '' : this.raw.message\n }\n\n /**\n * Message text/caption entities (may be empty)\n */\n get entities(): ReadonlyArray<MessageEntity> {\n const entities: MessageEntity[] = []\n\n if (this.raw._ === 'message' && this.raw.entities?.length) {\n for (const ent of this.raw.entities) {\n entities.push(new MessageEntity(ent, this.raw.message))\n }\n }\n\n return entities\n }\n\n get textWithEntities(): TextWithEntities {\n if (this.raw._ === 'messageService') return { text: '', entities: [] }\n\n return {\n text: this.raw.message,\n entities: this.raw.entities,\n }\n }\n\n /**\n * Message action. `null` for non-service messages\n * or for unsupported events.\n *\n * For unsupported events, use `.raw.action` directly.\n */\n get action(): MessageAction | null {\n if (this.raw._ === 'message') {\n return null\n }\n\n return _messageActionFromTl.call(this, this.raw.action)\n }\n\n /**\n * Message media. `null` for text-only and service messages\n * and for unsupported media types.\n *\n * For unsupported media types, use `.raw.media` directly.\n */\n get media(): MessageMedia {\n if (this.raw._ === 'messageService' || !this.raw.media || this.raw.media._ === 'messageMediaEmpty') {\n return null\n }\n\n return _messageMediaFromTl(this._peers, this.raw.media)\n }\n\n /**\n * Whether this is a premium media\n * (e.g. >2gb file or fullscreen sticker)\n * that was forwarded without author by a non-premium user\n */\n get isForwardedPremiumMedia(): boolean {\n return this.raw._ === 'message' && this.raw.media?._ === 'messageMediaDocument' && this.raw.media.nopremium!\n }\n\n /**\n * TTL period of the message, in seconds.\n */\n get ttlPeriod(): number | null {\n return this.raw.ttlPeriod ?? null\n }\n\n /**\n * Reply markup provided with this message, if any.\n */\n get markup(): ReplyMarkup | null {\n if (this.raw._ === 'messageService' || !this.raw.replyMarkup) {\n return null\n }\n\n const rm = this.raw.replyMarkup\n\n switch (rm._) {\n case 'replyKeyboardHide':\n return {\n type: 'reply_hide',\n selective: rm.selective,\n }\n case 'replyKeyboardForceReply':\n return {\n type: 'force_reply',\n singleUse: rm.singleUse,\n selective: rm.selective,\n }\n case 'replyKeyboardMarkup':\n return {\n type: 'reply',\n resize: rm.resize,\n singleUse: rm.singleUse,\n selective: rm.selective,\n buttons: BotKeyboard._rowsTo2d(rm.rows),\n }\n case 'replyInlineMarkup':\n return {\n type: 'inline',\n buttons: BotKeyboard._rowsTo2d(rm.rows),\n }\n default:\n assertNever(rm)\n }\n }\n\n /**\n * Whether this message can be forwarded\n *\n * `false` for service mesasges and private restricted chats/chanenls\n */\n get canBeForwarded(): boolean {\n return this.raw._ === 'message' && !this.raw.noforwards\n }\n\n get reactions(): MessageReactions | null {\n if (this.raw._ === 'messageService' || !this.raw.reactions) {\n return null\n }\n\n return new MessageReactions(this.raw.id, getMarkedPeerId(this.raw.peerId), this.raw.reactions, this._peers)\n }\n\n /**\n * Generated permalink to this message, only for groups and channels\n *\n * @throws MtArgumentError In case the chat does not support message links\n */\n get link(): string {\n if (this.chat.chatType === 'supergroup' || this.chat.chatType === 'channel') {\n if (this.chat.username) {\n return `https://t.me/${this.chat.username}/${this.id}`\n }\n\n return `https://t.me/c/${toggleChannelIdMark(this.chat.id)}/${this.id}`\n }\n\n throw new MtArgumentError(`Cannot generate message link for ${this.chat.chatType}`)\n }\n}\n\nmemoizeGetters(Message, [\n 'sender',\n 'chat',\n 'forward',\n 'replies',\n 'viaBot',\n 'entities',\n 'action',\n 'media',\n 'markup',\n 'reactions',\n])\nmakeInspectable(Message, ['isScheduled'], ['link'])\n"]}
@@ -1,5 +1,5 @@
1
1
  export * from './app-config.js';
2
2
  export * from './entities.js';
3
- export * from './input-privacy-rule.js';
3
+ export * from './input-privacy-rule/index.js';
4
4
  export * from './sticker-set.js';
5
5
  export * from './takeout-session.js';
@@ -16,7 +16,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./app-config.js"), exports);
18
18
  __exportStar(require("./entities.js"), exports);
19
- __exportStar(require("./input-privacy-rule.js"), exports);
19
+ __exportStar(require("./input-privacy-rule/index.js"), exports);
20
20
  __exportStar(require("./sticker-set.js"), exports);
21
21
  __exportStar(require("./takeout-session.js"), exports);
22
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/misc/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA+B;AAC/B,gDAA6B;AAC7B,0DAAuC;AACvC,mDAAgC;AAChC,uDAAoC","sourcesContent":["export * from './app-config.js'\nexport * from './entities.js'\nexport * from './input-privacy-rule.js'\nexport * from './sticker-set.js'\nexport * from './takeout-session.js'\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/misc/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA+B;AAC/B,gDAA6B;AAC7B,gEAA6C;AAC7C,mDAAgC;AAChC,uDAAoC","sourcesContent":["export * from './app-config.js'\nexport * from './entities.js'\nexport * from './input-privacy-rule/index.js'\nexport * from './sticker-set.js'\nexport * from './takeout-session.js'\n"]}
@@ -0,0 +1,22 @@
1
+ import { tl } from '@mtcute/tl';
2
+ import { MaybeArray } from '../../../../types/utils.js';
3
+ import { InputPeerLike } from '../../peers/peer.js';
4
+ import { InputPrivacyRuleChatParticipants, InputPrivacyRuleUsers } from './types.js';
5
+ /** Allow all users */
6
+ export declare const all: tl.RawInputPrivacyValueAllowAll;
7
+ /** Allow only contacts */
8
+ export declare const contacts: tl.RawInputPrivacyValueAllowContacts;
9
+ /** Allow only "close friends" list */
10
+ export declare const closeFriends: tl.RawInputPrivacyValueAllowCloseFriends;
11
+ /**
12
+ * Allow only users specified in `users`
13
+ *
14
+ * @param users Users to allow
15
+ */
16
+ export declare function users(users: MaybeArray<InputPeerLike>): InputPrivacyRuleUsers;
17
+ /**
18
+ * Allow only participants of chats specified in `chats`
19
+ *
20
+ * @param chats Chats to allow
21
+ */
22
+ export declare function chatParticipants(chats: MaybeArray<InputPeerLike>): InputPrivacyRuleChatParticipants;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.chatParticipants = exports.users = exports.closeFriends = exports.contacts = exports.all = void 0;
4
+ /** Allow all users */
5
+ exports.all = { _: 'inputPrivacyValueAllowAll' };
6
+ /** Allow only contacts */
7
+ exports.contacts = { _: 'inputPrivacyValueAllowContacts' };
8
+ /** Allow only "close friends" list */
9
+ exports.closeFriends = {
10
+ _: 'inputPrivacyValueAllowCloseFriends',
11
+ };
12
+ /**
13
+ * Allow only users specified in `users`
14
+ *
15
+ * @param users Users to allow
16
+ */
17
+ function users(users) {
18
+ return {
19
+ allow: true,
20
+ users: Array.isArray(users) ? users : [users],
21
+ };
22
+ }
23
+ exports.users = users;
24
+ /**
25
+ * Allow only participants of chats specified in `chats`
26
+ *
27
+ * @param chats Chats to allow
28
+ */
29
+ function chatParticipants(chats) {
30
+ return {
31
+ allow: true,
32
+ chats: Array.isArray(chats) ? chats : [chats],
33
+ };
34
+ }
35
+ exports.chatParticipants = chatParticipants;
36
+ //# sourceMappingURL=allow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allow.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/misc/input-privacy-rule/allow.ts"],"names":[],"mappings":";;;AAMA,sBAAsB;AACT,QAAA,GAAG,GAAoC,EAAE,CAAC,EAAE,2BAA2B,EAAE,CAAA;AACtF,0BAA0B;AACb,QAAA,QAAQ,GAAyC,EAAE,CAAC,EAAE,gCAAgC,EAAE,CAAA;AACrG,sCAAsC;AACzB,QAAA,YAAY,GAA6C;IAClE,CAAC,EAAE,oCAAoC;CAC1C,CAAA;AAED;;;;GAIG;AACH,SAAgB,KAAK,CAAC,KAAgC;IAClD,OAAO;QACH,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;KAChD,CAAA;AACL,CAAC;AALD,sBAKC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,KAAgC;IAC7D,OAAO;QACH,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;KAChD,CAAA;AACL,CAAC;AALD,4CAKC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MaybeArray } from '../../../../types/utils.js'\nimport { InputPeerLike } from '../../peers/peer.js'\nimport { InputPrivacyRuleChatParticipants, InputPrivacyRuleUsers } from './types.js'\n\n/** Allow all users */\nexport const all: tl.RawInputPrivacyValueAllowAll = { _: 'inputPrivacyValueAllowAll' }\n/** Allow only contacts */\nexport const contacts: tl.RawInputPrivacyValueAllowContacts = { _: 'inputPrivacyValueAllowContacts' }\n/** Allow only \"close friends\" list */\nexport const closeFriends: tl.RawInputPrivacyValueAllowCloseFriends = {\n _: 'inputPrivacyValueAllowCloseFriends',\n}\n\n/**\n * Allow only users specified in `users`\n *\n * @param users Users to allow\n */\nexport function users(users: MaybeArray<InputPeerLike>): InputPrivacyRuleUsers {\n return {\n allow: true,\n users: Array.isArray(users) ? users : [users],\n }\n}\n\n/**\n * Allow only participants of chats specified in `chats`\n *\n * @param chats Chats to allow\n */\nexport function chatParticipants(chats: MaybeArray<InputPeerLike>): InputPrivacyRuleChatParticipants {\n return {\n allow: true,\n chats: Array.isArray(chats) ? chats : [chats],\n }\n}\n"]}
@@ -0,0 +1,3 @@
1
+ import * as allow from './allow.js';
2
+ import * as disallow from './disallow.js';
3
+ export { allow, disallow };
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.disallow = exports.allow = void 0;
27
+ const allow = __importStar(require("./allow.js"));
28
+ exports.allow = allow;
29
+ const disallow = __importStar(require("./disallow.js"));
30
+ exports.disallow = disallow;
31
+ //# sourceMappingURL=bundle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/misc/input-privacy-rule/bundle.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAmC;AAG1B,sBAAK;AAFd,wDAAyC;AAEzB,4BAAQ","sourcesContent":["import * as allow from './allow.js'\nimport * as disallow from './disallow.js'\n\nexport { allow, disallow }\n"]}
@@ -0,0 +1,20 @@
1
+ import { tl } from '@mtcute/tl';
2
+ import { MaybeArray } from '../../../../types/utils.js';
3
+ import { InputPeerLike } from '../../peers/peer.js';
4
+ import { InputPrivacyRuleChatParticipants, InputPrivacyRuleUsers } from './types.js';
5
+ /** Disallow all users */
6
+ export declare const all: tl.RawInputPrivacyValueDisallowAll;
7
+ /** Disallow contacts */
8
+ export declare const contacts: tl.RawInputPrivacyValueDisallowContacts;
9
+ /**
10
+ * Disallow users specified in `users`
11
+ *
12
+ * @param users Users to disallow
13
+ */
14
+ export declare function users(users: MaybeArray<InputPeerLike>): InputPrivacyRuleUsers;
15
+ /**
16
+ * Disallow participants of chats specified in `chats`
17
+ *
18
+ * @param chats Chats to disallow
19
+ */
20
+ export declare function chatParticipants(chats: MaybeArray<InputPeerLike>): InputPrivacyRuleChatParticipants;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.chatParticipants = exports.users = exports.contacts = exports.all = void 0;
4
+ /** Disallow all users */
5
+ exports.all = { _: 'inputPrivacyValueDisallowAll' };
6
+ /** Disallow contacts */
7
+ exports.contacts = { _: 'inputPrivacyValueDisallowContacts' };
8
+ /**
9
+ * Disallow users specified in `users`
10
+ *
11
+ * @param users Users to disallow
12
+ */
13
+ function users(users) {
14
+ return {
15
+ allow: false,
16
+ users: Array.isArray(users) ? users : [users],
17
+ };
18
+ }
19
+ exports.users = users;
20
+ /**
21
+ * Disallow participants of chats specified in `chats`
22
+ *
23
+ * @param chats Chats to disallow
24
+ */
25
+ function chatParticipants(chats) {
26
+ return {
27
+ allow: false,
28
+ chats: Array.isArray(chats) ? chats : [chats],
29
+ };
30
+ }
31
+ exports.chatParticipants = chatParticipants;
32
+ //# sourceMappingURL=disallow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disallow.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/misc/input-privacy-rule/disallow.ts"],"names":[],"mappings":";;;AAMA,yBAAyB;AACZ,QAAA,GAAG,GAAuC,EAAE,CAAC,EAAE,8BAA8B,EAAE,CAAA;AAC5F,wBAAwB;AACX,QAAA,QAAQ,GAA4C,EAAE,CAAC,EAAE,mCAAmC,EAAE,CAAA;AAE3G;;;;GAIG;AACH,SAAgB,KAAK,CAAC,KAAgC;IAClD,OAAO;QACH,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;KAChD,CAAA;AACL,CAAC;AALD,sBAKC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,KAAgC;IAC7D,OAAO;QACH,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;KAChD,CAAA;AACL,CAAC;AALD,4CAKC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MaybeArray } from '../../../../types/utils.js'\nimport { InputPeerLike } from '../../peers/peer.js'\nimport { InputPrivacyRuleChatParticipants, InputPrivacyRuleUsers } from './types.js'\n\n/** Disallow all users */\nexport const all: tl.RawInputPrivacyValueDisallowAll = { _: 'inputPrivacyValueDisallowAll' }\n/** Disallow contacts */\nexport const contacts: tl.RawInputPrivacyValueDisallowContacts = { _: 'inputPrivacyValueDisallowContacts' }\n\n/**\n * Disallow users specified in `users`\n *\n * @param users Users to disallow\n */\nexport function users(users: MaybeArray<InputPeerLike>): InputPrivacyRuleUsers {\n return {\n allow: false,\n users: Array.isArray(users) ? users : [users],\n }\n}\n\n/**\n * Disallow participants of chats specified in `chats`\n *\n * @param chats Chats to disallow\n */\nexport function chatParticipants(chats: MaybeArray<InputPeerLike>): InputPrivacyRuleChatParticipants {\n return {\n allow: false,\n chats: Array.isArray(chats) ? chats : [chats],\n }\n}\n"]}
@@ -0,0 +1,3 @@
1
+ import * as PrivacyRule from './bundle.js';
2
+ export { PrivacyRule };
3
+ export * from './types.js';
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.PrivacyRule = void 0;
30
+ const PrivacyRule = __importStar(require("./bundle.js"));
31
+ exports.PrivacyRule = PrivacyRule;
32
+ __exportStar(require("./types.js"), exports);
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/misc/input-privacy-rule/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAA0C;AAEjC,kCAAW;AACpB,6CAA0B","sourcesContent":["import * as PrivacyRule from './bundle.js'\n\nexport { PrivacyRule }\nexport * from './types.js'\n"]}
@@ -0,0 +1,11 @@
1
+ import { tl } from '@mtcute/tl';
2
+ import { InputPeerLike } from '../../peers/peer.js';
3
+ export interface InputPrivacyRuleUsers {
4
+ allow: boolean;
5
+ users: InputPeerLike[];
6
+ }
7
+ export interface InputPrivacyRuleChatParticipants {
8
+ allow: boolean;
9
+ chats: InputPeerLike[];
10
+ }
11
+ export type InputPrivacyRule = InputPrivacyRuleChatParticipants | InputPrivacyRuleUsers | tl.TypeInputPrivacyRule;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/misc/input-privacy-rule/types.ts"],"names":[],"mappings":"","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { InputPeerLike } from '../../peers/peer.js'\n\nexport interface InputPrivacyRuleUsers {\n allow: boolean\n users: InputPeerLike[]\n}\n\nexport interface InputPrivacyRuleChatParticipants {\n allow: boolean\n chats: InputPeerLike[]\n}\n\nexport type InputPrivacyRule = InputPrivacyRuleChatParticipants | InputPrivacyRuleUsers | tl.TypeInputPrivacyRule\n"]}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.ChatPhoto = exports.ChatPhotoSize = void 0;
7
7
  const long_1 = __importDefault(require("long"));
8
8
  const file_id_1 = require("@mtcute/file-id");
9
+ const platform_js_1 = require("../../../platform.js");
9
10
  const errors_js_1 = require("../../../types/errors.js");
10
11
  const peer_utils_js_1 = require("../../../utils/peer-utils.js");
11
12
  const file_utils_js_1 = require("../../utils/file-utils.js");
@@ -54,7 +55,7 @@ class ChatPhotoSize extends index_js_2.FileLocation {
54
55
  // should not happen
55
56
  throw new errors_js_1.MtArgumentError('Input peer was invalid');
56
57
  }
57
- return (0, file_id_1.toFileId)({
58
+ return (0, file_id_1.toFileId)((0, platform_js_1.getPlatform)(), {
58
59
  dcId: this.obj.dcId,
59
60
  type: file_id_1.tdFileId.FileType.ProfilePhoto,
60
61
  fileReference: null,
@@ -75,7 +76,7 @@ class ChatPhotoSize extends index_js_2.FileLocation {
75
76
  * TDLib and Bot API compatible unique File ID representing this size
76
77
  */
77
78
  get uniqueFileId() {
78
- return (0, file_id_1.toUniqueFileId)(file_id_1.tdFileId.FileType.ProfilePhoto, {
79
+ return (0, file_id_1.toUniqueFileId)((0, platform_js_1.getPlatform)(), file_id_1.tdFileId.FileType.ProfilePhoto, {
79
80
  _: 'photo',
80
81
  id: this.obj.photoId,
81
82
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
@@ -1 +1 @@
1
- {"version":3,"file":"chat-photo.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/peers/chat-photo.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\n\nimport { tdFileId, toFileId, toUniqueFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { MtArgumentError } from '../../../types/errors.js'\nimport { toggleChannelIdMark } from '../../../utils/peer-utils.js'\nimport { strippedPhotoToJpg } from '../../utils/file-utils.js'\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { FileLocation } from '../files/index.js'\n\n/**\n * A size of a chat photo\n */\nexport class ChatPhotoSize extends FileLocation {\n constructor(\n readonly peer: tl.TypeInputPeer,\n readonly obj: tl.RawUserProfilePhoto | tl.RawChatPhoto,\n readonly big: boolean,\n ) {\n super(\n {\n _: 'inputPeerPhotoFileLocation',\n peer,\n photoId: obj.photoId,\n big,\n },\n undefined,\n obj.dcId,\n )\n\n this.peer = peer\n this.obj = obj\n this.big = big\n }\n\n /**\n * TDLib and Bot API compatible File ID representing this size\n */\n get fileId(): string {\n const peer = this.peer\n\n let id: number\n let hash: tl.Long\n\n switch (peer._) {\n case 'inputPeerUser':\n id = peer.userId\n hash = peer.accessHash\n break\n case 'inputPeerChat':\n id = -peer.chatId\n hash = Long.ZERO\n break\n case 'inputPeerChannel':\n id = toggleChannelIdMark(peer.channelId)\n hash = peer.accessHash\n break\n default:\n // should not happen\n throw new MtArgumentError('Input peer was invalid')\n }\n\n return toFileId({\n dcId: this.obj.dcId,\n type: tdFileId.FileType.ProfilePhoto,\n fileReference: null,\n location: {\n _: 'photo',\n id: this.obj.photoId,\n accessHash: Long.ZERO,\n source: {\n _: 'dialogPhoto',\n big: this.big,\n id: id,\n accessHash: hash,\n },\n },\n })\n }\n\n /**\n * TDLib and Bot API compatible unique File ID representing this size\n */\n get uniqueFileId(): string {\n return toUniqueFileId(tdFileId.FileType.ProfilePhoto, {\n _: 'photo',\n id: this.obj.photoId,\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n source: {\n _: 'dialogPhoto',\n big: this.big,\n // will be looked into in MTQ-37\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } as any,\n })\n }\n}\n\nmemoizeGetters(ChatPhotoSize, ['fileId', 'uniqueFileId'])\nmakeInspectable(ChatPhotoSize, ['dcId', 'big'])\n\n/**\n * A chat photo\n */\nexport class ChatPhoto {\n constructor(\n readonly peer: tl.TypeInputPeer,\n readonly raw: tl.RawUserProfilePhoto | tl.RawChatPhoto,\n ) {}\n\n /**\n * Whether this photo is personal (i.e. you set it yourself for this peer)\n */\n get isPersonal(): boolean {\n return this.raw._ === 'userProfilePhoto' && this.raw.personal!\n }\n\n /** Chat photo file location in small resolution (160x160) */\n get small(): ChatPhotoSize {\n return new ChatPhotoSize(this.peer, this.raw, false)\n }\n\n /** Chat photo file location in big resolution (640x640) */\n get big(): ChatPhotoSize {\n return new ChatPhotoSize(this.peer, this.raw, true)\n }\n\n /**\n * Chat photo preview in *very* small resolution, if available\n */\n get thumb(): Uint8Array | null {\n if (!this.raw.strippedThumb) return null\n\n return strippedPhotoToJpg(this.raw.strippedThumb)\n }\n}\n\nmemoizeGetters(ChatPhoto, ['small', 'big', 'thumb'])\nmakeInspectable(ChatPhoto, [], ['thumb'])\n"]}
1
+ {"version":3,"file":"chat-photo.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/peers/chat-photo.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\n\nimport { tdFileId, toFileId, toUniqueFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { getPlatform } from '../../../platform.js'\nimport { MtArgumentError } from '../../../types/errors.js'\nimport { toggleChannelIdMark } from '../../../utils/peer-utils.js'\nimport { strippedPhotoToJpg } from '../../utils/file-utils.js'\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { FileLocation } from '../files/index.js'\n\n/**\n * A size of a chat photo\n */\nexport class ChatPhotoSize extends FileLocation {\n constructor(\n readonly peer: tl.TypeInputPeer,\n readonly obj: tl.RawUserProfilePhoto | tl.RawChatPhoto,\n readonly big: boolean,\n ) {\n super(\n {\n _: 'inputPeerPhotoFileLocation',\n peer,\n photoId: obj.photoId,\n big,\n },\n undefined,\n obj.dcId,\n )\n\n this.peer = peer\n this.obj = obj\n this.big = big\n }\n\n /**\n * TDLib and Bot API compatible File ID representing this size\n */\n get fileId(): string {\n const peer = this.peer\n\n let id: number\n let hash: tl.Long\n\n switch (peer._) {\n case 'inputPeerUser':\n id = peer.userId\n hash = peer.accessHash\n break\n case 'inputPeerChat':\n id = -peer.chatId\n hash = Long.ZERO\n break\n case 'inputPeerChannel':\n id = toggleChannelIdMark(peer.channelId)\n hash = peer.accessHash\n break\n default:\n // should not happen\n throw new MtArgumentError('Input peer was invalid')\n }\n\n return toFileId(getPlatform(), {\n dcId: this.obj.dcId,\n type: tdFileId.FileType.ProfilePhoto,\n fileReference: null,\n location: {\n _: 'photo',\n id: this.obj.photoId,\n accessHash: Long.ZERO,\n source: {\n _: 'dialogPhoto',\n big: this.big,\n id: id,\n accessHash: hash,\n },\n },\n })\n }\n\n /**\n * TDLib and Bot API compatible unique File ID representing this size\n */\n get uniqueFileId(): string {\n return toUniqueFileId(getPlatform(), tdFileId.FileType.ProfilePhoto, {\n _: 'photo',\n id: this.obj.photoId,\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n source: {\n _: 'dialogPhoto',\n big: this.big,\n // will be looked into in MTQ-37\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } as any,\n })\n }\n}\n\nmemoizeGetters(ChatPhotoSize, ['fileId', 'uniqueFileId'])\nmakeInspectable(ChatPhotoSize, ['dcId', 'big'])\n\n/**\n * A chat photo\n */\nexport class ChatPhoto {\n constructor(\n readonly peer: tl.TypeInputPeer,\n readonly raw: tl.RawUserProfilePhoto | tl.RawChatPhoto,\n ) {}\n\n /**\n * Whether this photo is personal (i.e. you set it yourself for this peer)\n */\n get isPersonal(): boolean {\n return this.raw._ === 'userProfilePhoto' && this.raw.personal!\n }\n\n /** Chat photo file location in small resolution (160x160) */\n get small(): ChatPhotoSize {\n return new ChatPhotoSize(this.peer, this.raw, false)\n }\n\n /** Chat photo file location in big resolution (640x640) */\n get big(): ChatPhotoSize {\n return new ChatPhotoSize(this.peer, this.raw, true)\n }\n\n /**\n * Chat photo preview in *very* small resolution, if available\n */\n get thumb(): Uint8Array | null {\n if (!this.raw.strippedThumb) return null\n\n return strippedPhotoToJpg(this.raw.strippedThumb)\n }\n}\n\nmemoizeGetters(ChatPhoto, ['small', 'big', 'thumb'])\nmakeInspectable(ChatPhoto, [], ['thumb'])\n"]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InlineCallbackQuery = exports.CallbackQuery = void 0;
4
- const tl_runtime_1 = require("@mtcute/tl-runtime");
4
+ const platform_js_1 = require("../../../platform.js");
5
5
  const errors_js_1 = require("../../../types/errors.js");
6
6
  const index_js_1 = require("../../utils/index.js");
7
7
  const inline_utils_js_1 = require("../../utils/inline-utils.js");
@@ -52,7 +52,7 @@ class BaseCallbackQuery {
52
52
  get dataStr() {
53
53
  if (!this.raw.data)
54
54
  return null;
55
- return (0, tl_runtime_1.utf8Decode)(this.raw.data);
55
+ return (0, platform_js_1.getPlatform)().utf8Decode(this.raw.data);
56
56
  }
57
57
  /**
58
58
  * In case this message was from {@link InputInlineResultGame},