@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
@@ -0,0 +1,366 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports._convertToTl = exports._2dToRows = exports._rowsTo2d = exports.findButton = exports.requestPeer = exports.userProfile = exports.webView = exports.urlAuth = exports.pay = exports.game = exports.switchInline = exports.callback = exports.url = exports.requestPoll = exports.requestGeo = exports.requestContact = exports.text = exports.forceReply = exports.hideReply = exports.reply = exports.inline = exports.builder = void 0;
4
+ const tl_1 = require("@mtcute/tl");
5
+ const platform_js_1 = require("../../../../platform.js");
6
+ const utils_js_1 = require("../../../../types/utils.js");
7
+ const peer_utils_js_1 = require("../../../utils/peer-utils.js");
8
+ const builder_js_1 = require("./builder.js");
9
+ /** Create a keyboard builder */
10
+ function builder(maxRowWidth) {
11
+ return new builder_js_1.BotKeyboardBuilder(maxRowWidth);
12
+ }
13
+ exports.builder = builder;
14
+ /**
15
+ * Create an inline keyboard markup
16
+ *
17
+ * @param buttons Two-dimensional array of buttons
18
+ */
19
+ function inline(buttons) {
20
+ return {
21
+ type: 'inline',
22
+ buttons,
23
+ };
24
+ }
25
+ exports.inline = inline;
26
+ /**
27
+ * Create a reply keyboard markup
28
+ *
29
+ * @param buttons Two-dimensional array of buttons
30
+ * @param params Additional parameters for the keyboard
31
+ */
32
+ function reply(buttons, params = {}) {
33
+ const ret = params;
34
+ ret.type = 'reply';
35
+ ret.buttons = buttons;
36
+ return ret;
37
+ }
38
+ exports.reply = reply;
39
+ /**
40
+ * Hide the previously sent reply keyboard
41
+ *
42
+ * @param selective
43
+ * Whether to remove the keyboard for specific users only. Targets:
44
+ * - users that are @mentioned in the text of the Message
45
+ * - in case this is a reply, sender of the original message
46
+ */
47
+ function hideReply(selective) {
48
+ return {
49
+ type: 'reply_hide',
50
+ selective,
51
+ };
52
+ }
53
+ exports.hideReply = hideReply;
54
+ /**
55
+ * Force the user to send a reply
56
+ */
57
+ function forceReply(params = {}) {
58
+ const ret = params;
59
+ ret.type = 'force_reply';
60
+ return ret;
61
+ }
62
+ exports.forceReply = forceReply;
63
+ /**
64
+ * Create a text-only keyboard button.
65
+ *
66
+ * Used for reply keyboards, not inline!
67
+ *
68
+ * @param text Button text
69
+ */
70
+ function text(text) {
71
+ return {
72
+ _: 'keyboardButton',
73
+ text,
74
+ };
75
+ }
76
+ exports.text = text;
77
+ /**
78
+ * Create a keyboard button requesting for user's contact.
79
+ * Available only for private chats.
80
+ *
81
+ * Used for reply keyboards, not inline!
82
+ *
83
+ * @param text Button text
84
+ */
85
+ function requestContact(text) {
86
+ return {
87
+ _: 'keyboardButtonRequestPhone',
88
+ text,
89
+ };
90
+ }
91
+ exports.requestContact = requestContact;
92
+ /**
93
+ * Create a keyboard button requesting for user's geo location.
94
+ * Available only for private chats.
95
+ *
96
+ * Used for reply keyboards, not inline!
97
+ *
98
+ * @param text Button text
99
+ */
100
+ function requestGeo(text) {
101
+ return {
102
+ _: 'keyboardButtonRequestGeoLocation',
103
+ text,
104
+ };
105
+ }
106
+ exports.requestGeo = requestGeo;
107
+ /**
108
+ * Create a keyboard button requesting the user to create and send a poll.
109
+ * Available only for private chats.
110
+ *
111
+ * Used for reply keyboards, not inline!
112
+ *
113
+ * @param text Button text
114
+ * @param quiz If set, only quiz polls can be sent
115
+ */
116
+ function requestPoll(text, quiz) {
117
+ return {
118
+ _: 'keyboardButtonRequestPoll',
119
+ text,
120
+ quiz,
121
+ };
122
+ }
123
+ exports.requestPoll = requestPoll;
124
+ /**
125
+ * Create a keyboard button with a link.
126
+ *
127
+ * Used for inline keyboards, not reply!
128
+ *
129
+ * @param text Button text
130
+ * @param url URL
131
+ */
132
+ function url(text, url) {
133
+ return {
134
+ _: 'keyboardButtonUrl',
135
+ text,
136
+ url,
137
+ };
138
+ }
139
+ exports.url = url;
140
+ /**
141
+ * Create a keyboard button with a link.
142
+ *
143
+ * Used for inline keyboards, not reply!
144
+ *
145
+ * @param text Button text
146
+ * @param data Callback data (1-64 bytes). String will be converted to `Buffer`
147
+ * @param requiresPassword
148
+ * Whether the user should verify their identity by entering 2FA password.
149
+ * See more: {@link tl.RawKeyboardButtonCallback#requiresPassword}
150
+ */
151
+ function callback(text, data, requiresPassword) {
152
+ return {
153
+ _: 'keyboardButtonCallback',
154
+ text,
155
+ requiresPassword,
156
+ data: typeof data === 'string' ? (0, platform_js_1.getPlatform)().utf8Encode(data) : data,
157
+ };
158
+ }
159
+ exports.callback = callback;
160
+ /**
161
+ * Button to force a user to switch to inline mode.
162
+ *
163
+ * Pressing the button will prompt the user to select
164
+ * one of their chats, open that chat and insert the bot‘s
165
+ * username and the specified inline query (if any) in the input field.
166
+ *
167
+ * Used for inline keyboards, not reply!
168
+ *
169
+ * @param text Button text
170
+ * @param query Inline query (can be empty or omitted)
171
+ * @param currentChat
172
+ * If set, pressing the button will insert the bot's username
173
+ * and the specified inline query in the current chat's input field
174
+ */
175
+ function switchInline(text, query = '', currentChat) {
176
+ return {
177
+ _: 'keyboardButtonSwitchInline',
178
+ samePeer: currentChat,
179
+ text,
180
+ query,
181
+ };
182
+ }
183
+ exports.switchInline = switchInline;
184
+ /**
185
+ * Button to start a game
186
+ *
187
+ * Used for inline keyboards, not reply!
188
+ *
189
+ * **Note**: This type of button must always be
190
+ * the first button in the first row. ID of the
191
+ * game is inferred from {@link InputMedia.game},
192
+ * thus this button should only be used with it.
193
+ */
194
+ function game(text) {
195
+ return { _: 'keyboardButtonGame', text };
196
+ }
197
+ exports.game = game;
198
+ /**
199
+ * Button to pay for a product.
200
+ *
201
+ * Used for inline keyboards, not reply!
202
+ *
203
+ * **Note**: This type of button must always be
204
+ * the first button in the first row. Related
205
+ * invoice is inferred from {@link InputMedia.invoice},
206
+ * thus this button should only be used with it.
207
+ */
208
+ function pay(text) {
209
+ return { _: 'keyboardButtonBuy', text };
210
+ }
211
+ exports.pay = pay;
212
+ /**
213
+ * Button to authorize a user
214
+ *
215
+ * Used for inline keyboards, not reply!
216
+ *
217
+ * @param text Button label
218
+ * @param url Authorization URL (see {@link tl.RawInputKeyboardButtonUrlAuth})
219
+ * @param params
220
+ */
221
+ function urlAuth(text, url, params = {}) {
222
+ return {
223
+ _: 'inputKeyboardButtonUrlAuth',
224
+ text,
225
+ url,
226
+ bot: params.bot ?? {
227
+ _: 'inputUserSelf',
228
+ },
229
+ fwdText: params.fwdText,
230
+ requestWriteAccess: params.requestWriteAccess,
231
+ };
232
+ }
233
+ exports.urlAuth = urlAuth;
234
+ /**
235
+ * Button to open webview
236
+ *
237
+ * Used for both inline keyboards and reply ones
238
+ *
239
+ * @param text Button label
240
+ * @param url WebView URL
241
+ */
242
+ function webView(text, url) {
243
+ return {
244
+ _: 'keyboardButtonWebView',
245
+ text,
246
+ url,
247
+ };
248
+ }
249
+ exports.webView = webView;
250
+ /**
251
+ * Button to open user profile
252
+ *
253
+ * @param text Text of the button
254
+ * @param user User to be opened (use {@link TelegramClient.resolvePeer})
255
+ */
256
+ function userProfile(text, user) {
257
+ return {
258
+ _: 'inputKeyboardButtonUserProfile',
259
+ text,
260
+ userId: (0, peer_utils_js_1.toInputUser)(user),
261
+ };
262
+ }
263
+ exports.userProfile = userProfile;
264
+ /**
265
+ * Button to request a peer from the user
266
+ *
267
+ * @param text Text of the button
268
+ * @param buttonId ID of the button that will later be passed to the service message
269
+ */
270
+ function requestPeer(text, buttonId, params) {
271
+ return {
272
+ _: 'keyboardButtonRequestPeer',
273
+ text,
274
+ buttonId,
275
+ peerType: params.peerType,
276
+ maxQuantity: params.count ?? 1,
277
+ };
278
+ }
279
+ exports.requestPeer = requestPeer;
280
+ /**
281
+ * Find a button in the keyboard by its text or by predicate
282
+ *
283
+ * @param buttons Two-dimensional array of buttons
284
+ * @param predicate Button text or predicate function
285
+ */
286
+ function findButton(buttons, predicate) {
287
+ if (typeof predicate === 'string') {
288
+ const text = predicate;
289
+ predicate = (btn) => {
290
+ return 'text' in btn && btn.text === text;
291
+ };
292
+ }
293
+ for (const row of buttons) {
294
+ for (const btn of row) {
295
+ if (predicate(btn)) {
296
+ return btn;
297
+ }
298
+ }
299
+ }
300
+ return null;
301
+ }
302
+ exports.findButton = findButton;
303
+ /** @internal */
304
+ function _rowsTo2d(rows) {
305
+ return rows.map((it) => it.buttons);
306
+ }
307
+ exports._rowsTo2d = _rowsTo2d;
308
+ /** @internal */
309
+ function _2dToRows(arr, inline) {
310
+ return arr.map((row) => {
311
+ if (!inline) {
312
+ // le cringe
313
+ row = row.map((btn) => btn._ === 'keyboardButtonWebView' ?
314
+ {
315
+ ...btn,
316
+ _: 'keyboardButtonSimpleWebView',
317
+ } :
318
+ btn);
319
+ }
320
+ return {
321
+ _: 'keyboardButtonRow',
322
+ buttons: row,
323
+ };
324
+ });
325
+ }
326
+ exports._2dToRows = _2dToRows;
327
+ /** @internal */
328
+ function _convertToTl(obj) {
329
+ if (!obj)
330
+ return obj;
331
+ if (tl_1.tl.isAnyReplyMarkup(obj))
332
+ return obj;
333
+ switch (obj.type) {
334
+ case 'reply':
335
+ return {
336
+ _: 'replyKeyboardMarkup',
337
+ resize: obj.resize,
338
+ singleUse: obj.singleUse,
339
+ selective: obj.selective,
340
+ persistent: obj.persistent,
341
+ placeholder: obj.placeholder,
342
+ rows: _2dToRows(obj.buttons, false),
343
+ };
344
+ case 'reply_hide':
345
+ return {
346
+ _: 'replyKeyboardHide',
347
+ selective: obj.selective,
348
+ };
349
+ case 'force_reply':
350
+ return {
351
+ _: 'replyKeyboardForceReply',
352
+ singleUse: obj.singleUse,
353
+ selective: obj.selective,
354
+ placeholder: obj.placeholder,
355
+ };
356
+ case 'inline':
357
+ return {
358
+ _: 'replyInlineMarkup',
359
+ rows: _2dToRows(obj.buttons, true),
360
+ };
361
+ default:
362
+ (0, utils_js_1.assertNever)(obj);
363
+ }
364
+ }
365
+ exports._convertToTl = _convertToTl;
366
+ //# sourceMappingURL=factories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factories.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/bots/keyboards/factories.ts"],"names":[],"mappings":"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","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { getPlatform } from '../../../../platform.js'\nimport { assertNever } from '../../../../types/utils.js'\nimport { toInputUser } from '../../../utils/peer-utils.js'\nimport { BotKeyboardBuilder } from './builder.js'\nimport {\n InlineKeyboardMarkup,\n ReplyKeyboardForceReply,\n ReplyKeyboardHide,\n ReplyKeyboardMarkup,\n ReplyMarkup,\n} from './types.js'\n\n/** Create a keyboard builder */\nexport function builder(maxRowWidth?: number | null): BotKeyboardBuilder {\n return new BotKeyboardBuilder(maxRowWidth)\n}\n\n/**\n * Create an inline keyboard markup\n *\n * @param buttons Two-dimensional array of buttons\n */\nexport function inline(buttons: tl.TypeKeyboardButton[][]): InlineKeyboardMarkup {\n return {\n type: 'inline',\n buttons,\n }\n}\n\n/**\n * Create a reply keyboard markup\n *\n * @param buttons Two-dimensional array of buttons\n * @param params Additional parameters for the keyboard\n */\nexport function reply(\n buttons: tl.TypeKeyboardButton[][],\n params: Omit<ReplyKeyboardMarkup, 'type' | 'buttons'> = {},\n): ReplyKeyboardMarkup {\n const ret = params as tl.Mutable<ReplyKeyboardMarkup>\n ret.type = 'reply'\n ret.buttons = buttons\n\n return ret\n}\n\n/**\n * Hide the previously sent reply keyboard\n *\n * @param selective\n * Whether to remove the keyboard for specific users only. Targets:\n * - users that are @mentioned in the text of the Message\n * - in case this is a reply, sender of the original message\n */\nexport function hideReply(selective?: boolean): ReplyKeyboardHide {\n return {\n type: 'reply_hide',\n selective,\n }\n}\n\n/**\n * Force the user to send a reply\n */\nexport function forceReply(params: Omit<ReplyKeyboardForceReply, 'type'> = {}): ReplyKeyboardForceReply {\n const ret = params as tl.Mutable<ReplyKeyboardForceReply>\n ret.type = 'force_reply'\n\n return ret\n}\n\n/**\n * Create a text-only keyboard button.\n *\n * Used for reply keyboards, not inline!\n *\n * @param text Button text\n */\nexport function text(text: string): tl.RawKeyboardButton {\n return {\n _: 'keyboardButton',\n text,\n }\n}\n\n/**\n * Create a keyboard button requesting for user's contact.\n * Available only for private chats.\n *\n * Used for reply keyboards, not inline!\n *\n * @param text Button text\n */\nexport function requestContact(text: string): tl.RawKeyboardButtonRequestPhone {\n return {\n _: 'keyboardButtonRequestPhone',\n text,\n }\n}\n\n/**\n * Create a keyboard button requesting for user's geo location.\n * Available only for private chats.\n *\n * Used for reply keyboards, not inline!\n *\n * @param text Button text\n */\nexport function requestGeo(text: string): tl.RawKeyboardButtonRequestGeoLocation {\n return {\n _: 'keyboardButtonRequestGeoLocation',\n text,\n }\n}\n\n/**\n * Create a keyboard button requesting the user to create and send a poll.\n * Available only for private chats.\n *\n * Used for reply keyboards, not inline!\n *\n * @param text Button text\n * @param quiz If set, only quiz polls can be sent\n */\nexport function requestPoll(text: string, quiz?: boolean): tl.RawKeyboardButtonRequestPoll {\n return {\n _: 'keyboardButtonRequestPoll',\n text,\n quiz,\n }\n}\n\n/**\n * Create a keyboard button with a link.\n *\n * Used for inline keyboards, not reply!\n *\n * @param text Button text\n * @param url URL\n */\nexport function url(text: string, url: string): tl.RawKeyboardButtonUrl {\n return {\n _: 'keyboardButtonUrl',\n text,\n url,\n }\n}\n\n/**\n * Create a keyboard button with a link.\n *\n * Used for inline keyboards, not reply!\n *\n * @param text Button text\n * @param data Callback data (1-64 bytes). String will be converted to `Buffer`\n * @param requiresPassword\n * Whether the user should verify their identity by entering 2FA password.\n * See more: {@link tl.RawKeyboardButtonCallback#requiresPassword}\n */\nexport function callback(\n text: string,\n data: string | Uint8Array,\n requiresPassword?: boolean,\n): tl.RawKeyboardButtonCallback {\n return {\n _: 'keyboardButtonCallback',\n text,\n requiresPassword,\n data: typeof data === 'string' ? getPlatform().utf8Encode(data) : data,\n }\n}\n\n/**\n * Button to force a user to switch to inline mode.\n *\n * Pressing the button will prompt the user to select\n * one of their chats, open that chat and insert the bot‘s\n * username and the specified inline query (if any) in the input field.\n *\n * Used for inline keyboards, not reply!\n *\n * @param text Button text\n * @param query Inline query (can be empty or omitted)\n * @param currentChat\n * If set, pressing the button will insert the bot's username\n * and the specified inline query in the current chat's input field\n */\nexport function switchInline(text: string, query = '', currentChat?: boolean): tl.RawKeyboardButtonSwitchInline {\n return {\n _: 'keyboardButtonSwitchInline',\n samePeer: currentChat,\n text,\n query,\n }\n}\n\n/**\n * Button to start a game\n *\n * Used for inline keyboards, not reply!\n *\n * **Note**: This type of button must always be\n * the first button in the first row. ID of the\n * game is inferred from {@link InputMedia.game},\n * thus this button should only be used with it.\n */\nexport function game(text: string): tl.RawKeyboardButtonGame {\n return { _: 'keyboardButtonGame', text }\n}\n\n/**\n * Button to pay for a product.\n *\n * Used for inline keyboards, not reply!\n *\n * **Note**: This type of button must always be\n * the first button in the first row. Related\n * invoice is inferred from {@link InputMedia.invoice},\n * thus this button should only be used with it.\n */\nexport function pay(text: string): tl.RawKeyboardButtonBuy {\n return { _: 'keyboardButtonBuy', text }\n}\n\n/**\n * Button to authorize a user\n *\n * Used for inline keyboards, not reply!\n *\n * @param text Button label\n * @param url Authorization URL (see {@link tl.RawInputKeyboardButtonUrlAuth})\n * @param params\n */\nexport function urlAuth(\n text: string,\n url: string,\n params: {\n /**\n * Button label when forwarded\n */\n fwdText?: string\n\n /**\n * Whether to request the permission for\n * your bot to send messages to the user\n */\n requestWriteAccess?: boolean\n\n /**\n * Bot, which will be used for user authorization.\n * `url` domain must be the same as the domain linked\n * with the bot.\n *\n * @default current bot\n */\n bot?: tl.TypeInputUser\n } = {},\n): tl.RawInputKeyboardButtonUrlAuth {\n return {\n _: 'inputKeyboardButtonUrlAuth',\n text,\n url,\n bot: params.bot ?? {\n _: 'inputUserSelf',\n },\n fwdText: params.fwdText,\n requestWriteAccess: params.requestWriteAccess,\n }\n}\n\n/**\n * Button to open webview\n *\n * Used for both inline keyboards and reply ones\n *\n * @param text Button label\n * @param url WebView URL\n */\nexport function webView(text: string, url: string): tl.RawKeyboardButtonWebView {\n return {\n _: 'keyboardButtonWebView',\n text,\n url,\n }\n}\n\n/**\n * Button to open user profile\n *\n * @param text Text of the button\n * @param user User to be opened (use {@link TelegramClient.resolvePeer})\n */\nexport function userProfile(text: string, user: tl.TypeInputPeer): tl.RawInputKeyboardButtonUserProfile {\n return {\n _: 'inputKeyboardButtonUserProfile',\n text,\n userId: toInputUser(user),\n }\n}\n\n/**\n * Button to request a peer from the user\n *\n * @param text Text of the button\n * @param buttonId ID of the button that will later be passed to the service message\n */\nexport function requestPeer(\n text: string,\n buttonId: number,\n params: {\n /**\n * Peer type, along with filters\n */\n peerType: tl.TypeRequestPeerType\n\n /**\n * Maximum number of peers to be selected\n *\n * @default 1\n */\n count?: number\n },\n): tl.RawKeyboardButtonRequestPeer {\n return {\n _: 'keyboardButtonRequestPeer',\n text,\n buttonId,\n peerType: params.peerType,\n maxQuantity: params.count ?? 1,\n }\n}\n\n/**\n * Find a button in the keyboard by its text or by predicate\n *\n * @param buttons Two-dimensional array of buttons\n * @param predicate Button text or predicate function\n */\nexport function findButton(\n buttons: tl.TypeKeyboardButton[][],\n predicate: string | ((btn: tl.TypeKeyboardButton) => boolean),\n): tl.TypeKeyboardButton | null {\n if (typeof predicate === 'string') {\n const text = predicate\n\n predicate = (btn) => {\n return 'text' in btn && btn.text === text\n }\n }\n\n for (const row of buttons) {\n for (const btn of row) {\n if (predicate(btn)) {\n return btn\n }\n }\n }\n\n return null\n}\n\n/** @internal */\nexport function _rowsTo2d(rows: tl.RawKeyboardButtonRow[]): tl.TypeKeyboardButton[][] {\n return rows.map((it) => it.buttons)\n}\n\n/** @internal */\nexport function _2dToRows(arr: tl.TypeKeyboardButton[][], inline: boolean): tl.RawKeyboardButtonRow[] {\n return arr.map((row) => {\n if (!inline) {\n // le cringe\n row = row.map((btn) =>\n btn._ === 'keyboardButtonWebView' ?\n {\n ...btn,\n _: 'keyboardButtonSimpleWebView',\n } :\n btn,\n )\n }\n\n return {\n _: 'keyboardButtonRow',\n buttons: row,\n }\n })\n}\n\n/** @internal */\nexport function _convertToTl(obj?: ReplyMarkup): tl.TypeReplyMarkup | undefined {\n if (!obj) return obj\n if (tl.isAnyReplyMarkup(obj)) return obj\n\n switch (obj.type) {\n case 'reply':\n return {\n _: 'replyKeyboardMarkup',\n resize: obj.resize,\n singleUse: obj.singleUse,\n selective: obj.selective,\n persistent: obj.persistent,\n placeholder: obj.placeholder,\n rows: _2dToRows(obj.buttons, false),\n }\n case 'reply_hide':\n return {\n _: 'replyKeyboardHide',\n selective: obj.selective,\n }\n case 'force_reply':\n return {\n _: 'replyKeyboardForceReply',\n singleUse: obj.singleUse,\n selective: obj.selective,\n placeholder: obj.placeholder,\n }\n case 'inline':\n return {\n _: 'replyInlineMarkup',\n rows: _2dToRows(obj.buttons, true),\n }\n default:\n assertNever(obj)\n }\n}\n"]}
@@ -0,0 +1,14 @@
1
+ export * from './types.js';
2
+ import * as BotKeyboard from './factories.js';
3
+ export {
4
+ /**
5
+ * Convenience methods wrapping TL
6
+ * objects creation for bot keyboard buttons.
7
+ *
8
+ * You can also use the type-discriminated objects directly.
9
+ *
10
+ * > **Note**: Button creation functions are intended to be used
11
+ * > with inline reply markup, unless stated otherwise
12
+ * > in the description.
13
+ */
14
+ BotKeyboard, };
@@ -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 __exportStar = (this && this.__exportStar) || function(m, exports) {
19
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
+ };
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.BotKeyboard = void 0;
30
+ __exportStar(require("./types.js"), exports);
31
+ const BotKeyboard = __importStar(require("./factories.js"));
32
+ exports.BotKeyboard = BotKeyboard;
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/bots/keyboards/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,4DAA6C;AAazC,kCAAW","sourcesContent":["export * from './types.js'\nimport * as BotKeyboard from './factories.js'\n\nexport {\n /**\n * Convenience methods wrapping TL\n * objects creation for bot keyboard buttons.\n *\n * You can also use the type-discriminated objects directly.\n *\n * > **Note**: Button creation functions are intended to be used\n * > with inline reply markup, unless stated otherwise\n * > in the description.\n */\n BotKeyboard,\n}\n"]}
@@ -0,0 +1,34 @@
1
+ import { tl } from '@mtcute/tl';
2
+ /**
3
+ * Reply keyboard markup
4
+ */
5
+ export interface ReplyKeyboardMarkup extends Omit<tl.RawReplyKeyboardMarkup, '_' | 'rows'> {
6
+ readonly type: 'reply';
7
+ /**
8
+ * Two-dimensional array of buttons
9
+ */
10
+ readonly buttons: tl.TypeKeyboardButton[][];
11
+ }
12
+ /**
13
+ * Hide previously sent bot keyboard
14
+ */
15
+ export interface ReplyKeyboardHide extends Omit<tl.RawReplyKeyboardHide, '_'> {
16
+ readonly type: 'reply_hide';
17
+ }
18
+ /**
19
+ * Force the user to send a reply
20
+ */
21
+ export interface ReplyKeyboardForceReply extends Omit<tl.RawReplyKeyboardForceReply, '_'> {
22
+ readonly type: 'force_reply';
23
+ }
24
+ /**
25
+ * Inline keyboard markup
26
+ */
27
+ export interface InlineKeyboardMarkup {
28
+ readonly type: 'inline';
29
+ /**
30
+ * Two-dimensional array of buttons
31
+ */
32
+ readonly buttons: tl.TypeKeyboardButton[][];
33
+ }
34
+ export type ReplyMarkup = ReplyKeyboardMarkup | ReplyKeyboardHide | ReplyKeyboardForceReply | InlineKeyboardMarkup | tl.TypeReplyMarkup;
@@ -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/bots/keyboards/types.ts"],"names":[],"mappings":"","sourcesContent":["import { tl } from '@mtcute/tl'\n\n/**\n * Reply keyboard markup\n */\nexport interface ReplyKeyboardMarkup extends Omit<tl.RawReplyKeyboardMarkup, '_' | 'rows'> {\n readonly type: 'reply'\n\n /**\n * Two-dimensional array of buttons\n */\n readonly buttons: tl.TypeKeyboardButton[][]\n}\n\n/**\n * Hide previously sent bot keyboard\n */\nexport interface ReplyKeyboardHide extends Omit<tl.RawReplyKeyboardHide, '_'> {\n readonly type: 'reply_hide'\n}\n\n/**\n * Force the user to send a reply\n */\nexport interface ReplyKeyboardForceReply extends Omit<tl.RawReplyKeyboardForceReply, '_'> {\n readonly type: 'force_reply'\n}\n\n/**\n * Inline keyboard markup\n */\nexport interface InlineKeyboardMarkup {\n readonly type: 'inline'\n\n /**\n * Two-dimensional array of buttons\n */\n readonly buttons: tl.TypeKeyboardButton[][]\n}\n\nexport type ReplyMarkup =\n | ReplyKeyboardMarkup\n | ReplyKeyboardHide\n | ReplyKeyboardForceReply\n | InlineKeyboardMarkup\n | tl.TypeReplyMarkup\n"]}
@@ -9,14 +9,16 @@ import { UploadedFile } from './uploaded-file.js';
9
9
  * Describes types that can be used in {@link TelegramClient.uploadFile}
10
10
  * method. Can be one of:
11
11
  * - `Uint8Array`/`Buffer`, which will be interpreted as raw file contents
12
- * - `File` (from the Web API)
12
+ * - `File`, `Blob` (from the Web API)
13
13
  * - `string`, which will be interpreted as file path (**non-browser only!**)
14
- * - `ReadStream` (for NodeJS, from the `fs` module)
14
+ * - `URL` (from the Web API, will be `fetch()`-ed; `file://` URLs are not available in browsers)
15
+ * - `ReadStream` (for Node.js/Bun, from the `fs` module)
16
+ * - `BunFile` (from `Bun.file()`)
15
17
  * - `ReadableStream` (Web API readable stream)
16
- * - `Readable` (NodeJS readable stream)
18
+ * - `Readable` (Node.js/Bun readable stream)
17
19
  * - `Response` (from `window.fetch`)
18
20
  */
19
- export type UploadFileLike = Uint8Array | File | string | ReadStream | ReadableStream<Uint8Array> | NodeJS.ReadableStream | Response;
21
+ export type UploadFileLike = URL | Uint8Array | File | Blob | string | ReadStream | ReadableStream<Uint8Array> | NodeJS.ReadableStream | Response;
20
22
  /**
21
23
  * Describes types that can be used as an input
22
24
  * to any methods that send media (like {@link TelegramClient.sendPhoto})
@@ -24,14 +26,15 @@ export type UploadFileLike = Uint8Array | File | string | ReadStream | ReadableS
24
26
  * Can be one of:
25
27
  * - `Buffer`, which will be interpreted as raw file contents
26
28
  * - `File` (from the Web API)
27
- * - `ReadStream` (for NodeJS, from the `fs` module)
29
+ * - `ReadStream` (for Node.js/Bun, from the `fs` module)
28
30
  * - `ReadableStream` (from the Web API, base readable stream)
29
- * - `Readable` (for NodeJS, base readable stream)
31
+ * - `Readable` (for Node.js/Bun, base readable stream)
30
32
  * - {@link UploadedFile} returned from {@link TelegramClient.uploadFile}
31
33
  * - `tl.TypeInputFile` and `tl.TypeInputMedia` TL objects
32
34
  * - `string` with a path to a local file prepended with `file:` (non-browser only) (e.g. `file:image.jpg`)
33
35
  * - `string` with a URL to remote files (e.g. `https://example.com/image.jpg`)
34
36
  * - `string` with TDLib and Bot API compatible File ID.
37
+ * - `URL` (from the Web API, will be `fetch()`-ed if needed; `file://` URLs are not available in browsers)
35
38
  * - `td.RawFullRemoteFileLocation` (parsed File ID)
36
39
  */
37
40
  export type InputFileLike = UploadFileLike | UploadedFile | tl.TypeInputFile | tl.TypeInputMedia | tdFileId.RawFullRemoteFileLocation;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/files/utils.ts"],"names":[],"mappings":"","sourcesContent":["/* eslint-disable no-restricted-imports */\nimport type { ReadStream } from 'fs'\n\nimport { tdFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { FileLocation } from './file-location.js'\nimport { UploadedFile } from './uploaded-file.js'\n\n/**\n * Describes types that can be used in {@link TelegramClient.uploadFile}\n * method. Can be one of:\n * - `Uint8Array`/`Buffer`, which will be interpreted as raw file contents\n * - `File` (from the Web API)\n * - `string`, which will be interpreted as file path (**non-browser only!**)\n * - `ReadStream` (for NodeJS, from the `fs` module)\n * - `ReadableStream` (Web API readable stream)\n * - `Readable` (NodeJS readable stream)\n * - `Response` (from `window.fetch`)\n */\nexport type UploadFileLike =\n | Uint8Array\n | File\n | string\n | ReadStream\n | ReadableStream<Uint8Array>\n | NodeJS.ReadableStream\n | Response\n\n/**\n * Describes types that can be used as an input\n * to any methods that send media (like {@link TelegramClient.sendPhoto})\n *\n * Can be one of:\n * - `Buffer`, which will be interpreted as raw file contents\n * - `File` (from the Web API)\n * - `ReadStream` (for NodeJS, from the `fs` module)\n * - `ReadableStream` (from the Web API, base readable stream)\n * - `Readable` (for NodeJS, base readable stream)\n * - {@link UploadedFile} returned from {@link TelegramClient.uploadFile}\n * - `tl.TypeInputFile` and `tl.TypeInputMedia` TL objects\n * - `string` with a path to a local file prepended with `file:` (non-browser only) (e.g. `file:image.jpg`)\n * - `string` with a URL to remote files (e.g. `https://example.com/image.jpg`)\n * - `string` with TDLib and Bot API compatible File ID.\n * - `td.RawFullRemoteFileLocation` (parsed File ID)\n */\nexport type InputFileLike =\n | UploadFileLike\n | UploadedFile\n | tl.TypeInputFile\n | tl.TypeInputMedia\n | tdFileId.RawFullRemoteFileLocation\n\n/**\n * File location which should be downloaded.\n * You can also provide TDLib and Bot API compatible File ID\n */\nexport type FileDownloadLocation = tl.TypeInputFileLocation | tl.TypeInputWebFileLocation | FileLocation | string\n\nexport interface FileDownloadParameters {\n /**\n * Total file size, if known.\n * Used to determine upload part size.\n * In some cases can be inferred from `file` automatically.\n */\n fileSize?: number\n\n /**\n * Download part size (in KB).\n * By default, automatically selected depending on the file size\n * (or 64, if not provided). Must not be bigger than 512,\n * must not be a fraction, and must be divisible by 4.\n */\n partSize?: number\n\n /**\n * DC id from which the file will be downloaded.\n *\n * If provided DC is not the one storing the file,\n * redirection will be handled automatically.\n */\n dcId?: number\n\n /**\n * Offset in bytes. Must be divisible by 4096 (4 KB).\n */\n offset?: number\n\n /**\n * Number of bytes to be downloaded.\n * By default, downloads the entire file\n */\n limit?: number\n\n /**\n * Function that will be called after some part has been downloaded.\n *\n * @param uploaded Number of bytes already downloaded\n * @param total Total file size (`Infinity` if not available)\n */\n progressCallback?: (downloaded: number, total: number) => void\n\n /**\n * Abort signal that can be used to cancel the download.\n */\n abortSignal?: AbortSignal\n}\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/files/utils.ts"],"names":[],"mappings":"","sourcesContent":["/* eslint-disable no-restricted-imports */\nimport type { ReadStream } from 'fs'\n\nimport { tdFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { FileLocation } from './file-location.js'\nimport { UploadedFile } from './uploaded-file.js'\n\n/**\n * Describes types that can be used in {@link TelegramClient.uploadFile}\n * method. Can be one of:\n * - `Uint8Array`/`Buffer`, which will be interpreted as raw file contents\n * - `File`, `Blob` (from the Web API)\n * - `string`, which will be interpreted as file path (**non-browser only!**)\n * - `URL` (from the Web API, will be `fetch()`-ed; `file://` URLs are not available in browsers)\n * - `ReadStream` (for Node.js/Bun, from the `fs` module)\n * - `BunFile` (from `Bun.file()`)\n * - `ReadableStream` (Web API readable stream)\n * - `Readable` (Node.js/Bun readable stream)\n * - `Response` (from `window.fetch`)\n */\nexport type UploadFileLike =\n | URL\n | Uint8Array\n | File\n | Blob\n | string\n | ReadStream\n | ReadableStream<Uint8Array>\n | NodeJS.ReadableStream\n | Response\n\n/**\n * Describes types that can be used as an input\n * to any methods that send media (like {@link TelegramClient.sendPhoto})\n *\n * Can be one of:\n * - `Buffer`, which will be interpreted as raw file contents\n * - `File` (from the Web API)\n * - `ReadStream` (for Node.js/Bun, from the `fs` module)\n * - `ReadableStream` (from the Web API, base readable stream)\n * - `Readable` (for Node.js/Bun, base readable stream)\n * - {@link UploadedFile} returned from {@link TelegramClient.uploadFile}\n * - `tl.TypeInputFile` and `tl.TypeInputMedia` TL objects\n * - `string` with a path to a local file prepended with `file:` (non-browser only) (e.g. `file:image.jpg`)\n * - `string` with a URL to remote files (e.g. `https://example.com/image.jpg`)\n * - `string` with TDLib and Bot API compatible File ID.\n * - `URL` (from the Web API, will be `fetch()`-ed if needed; `file://` URLs are not available in browsers)\n * - `td.RawFullRemoteFileLocation` (parsed File ID)\n */\nexport type InputFileLike =\n | UploadFileLike\n | UploadedFile\n | tl.TypeInputFile\n | tl.TypeInputMedia\n | tdFileId.RawFullRemoteFileLocation\n\n/**\n * File location which should be downloaded.\n * You can also provide TDLib and Bot API compatible File ID\n */\nexport type FileDownloadLocation = tl.TypeInputFileLocation | tl.TypeInputWebFileLocation | FileLocation | string\n\nexport interface FileDownloadParameters {\n /**\n * Total file size, if known.\n * Used to determine upload part size.\n * In some cases can be inferred from `file` automatically.\n */\n fileSize?: number\n\n /**\n * Download part size (in KB).\n * By default, automatically selected depending on the file size\n * (or 64, if not provided). Must not be bigger than 512,\n * must not be a fraction, and must be divisible by 4.\n */\n partSize?: number\n\n /**\n * DC id from which the file will be downloaded.\n *\n * If provided DC is not the one storing the file,\n * redirection will be handled automatically.\n */\n dcId?: number\n\n /**\n * Offset in bytes. Must be divisible by 4096 (4 KB).\n */\n offset?: number\n\n /**\n * Number of bytes to be downloaded.\n * By default, downloads the entire file\n */\n limit?: number\n\n /**\n * Function that will be called after some part has been downloaded.\n *\n * @param uploaded Number of bytes already downloaded\n * @param total Total file size (`Infinity` if not available)\n */\n progressCallback?: (downloaded: number, total: number) => void\n\n /**\n * Abort signal that can be used to cancel the download.\n */\n abortSignal?: AbortSignal\n}\n"]}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Document = exports.RawDocument = void 0;
4
4
  const file_id_1 = require("@mtcute/file-id");
5
+ const platform_js_1 = require("../../../platform.js");
5
6
  const index_js_1 = require("../../utils/index.js");
6
7
  const memoize_js_1 = require("../../utils/memoize.js");
7
8
  const index_js_2 = require("../files/index.js");
@@ -102,7 +103,7 @@ class RawDocument extends index_js_2.FileLocation {
102
103
  * representing this document.
103
104
  */
104
105
  get fileId() {
105
- return (0, file_id_1.toFileId)({
106
+ return (0, file_id_1.toFileId)((0, platform_js_1.getPlatform)(), {
106
107
  type: this._fileIdType(),
107
108
  dcId: this.raw.dcId,
108
109
  fileReference: this.raw.fileReference,
@@ -117,7 +118,7 @@ class RawDocument extends index_js_2.FileLocation {
117
118
  * Get a unique File ID representing this document.
118
119
  */
119
120
  get uniqueFileId() {
120
- return (0, file_id_1.toUniqueFileId)(file_id_1.tdFileId.FileType.Document, {
121
+ return (0, file_id_1.toUniqueFileId)((0, platform_js_1.getPlatform)(), file_id_1.tdFileId.FileType.Document, {
121
122
  _: 'common',
122
123
  id: this.raw.id,
123
124
  });
@@ -1 +1 @@
1
- {"version":3,"file":"document.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/media/document.ts"],"names":[],"mappings":"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","sourcesContent":["import { tdFileId as td, toFileId, toUniqueFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { FileLocation } from '../files/index.js'\nimport { Thumbnail } from './thumbnail.js'\n\n/**\n * A file that is represented as a document in MTProto.\n *\n * This also includes audios, videos, voices etc.\n */\nexport abstract class RawDocument extends FileLocation {\n /** Type of the media (for use in a tagged union) */\n abstract type: string\n\n constructor(readonly raw: tl.RawDocument) {\n super(\n {\n _: 'inputDocumentFileLocation',\n id: raw.id,\n fileReference: raw.fileReference,\n accessHash: raw.accessHash,\n thumbSize: '',\n },\n raw.size,\n raw.dcId,\n )\n this.raw = raw\n }\n\n /**\n * Original file name, extracted from the document\n * attributes.\n */\n get fileName(): string | null {\n const attr = this.raw.attributes.find((it) => it._ === 'documentAttributeFilename')\n\n return attr ? (attr as tl.RawDocumentAttributeFilename).fileName : null\n }\n\n /**\n * File MIME type, as defined by the sender.\n */\n get mimeType(): string {\n return this.raw.mimeType\n }\n\n /**\n * Date the document was sent\n */\n get date(): Date {\n return new Date(this.raw.date * 1000)\n }\n\n /**\n * Available thumbnails, if any.\n *\n * If there are no thumbnails, the array will be empty.\n */\n get thumbnails(): ReadonlyArray<Thumbnail> {\n const arr: Thumbnail[] = []\n\n this.raw.thumbs?.forEach((sz) => arr.push(new Thumbnail(this.raw, sz)))\n this.raw.videoThumbs?.forEach((sz) => arr.push(new Thumbnail(this.raw, sz)))\n\n return arr\n }\n\n /**\n * Get a thumbnail by its type.\n *\n * Thumbnail types are described in the\n * [Telegram docs](https://core.telegram.org/api/files#image-thumbnail-types),\n * and are also available as static members of {@link Thumbnail} for convenience.\n *\n * @param type Thumbnail type\n */\n getThumbnail(type: string): Thumbnail | null {\n return (\n this.thumbnails.find((it) => {\n if (it.raw._ === 'videoSizeEmojiMarkup' || it.raw._ === 'videoSizeStickerMarkup') {\n return false\n }\n\n return it.raw.type === type\n }) ?? null\n )\n }\n\n /**\n * Input document TL object generated from this object,\n * to be used with methods that use it\n */\n get inputDocument(): tl.TypeInputDocument {\n return {\n _: 'inputDocument',\n id: this.raw.id,\n accessHash: this.raw.accessHash,\n fileReference: this.raw.fileReference,\n }\n }\n\n /**\n * Input media TL object generated from this object,\n * to be used inside {@link InputMediaLike} and\n * {@link TelegramClient.sendMedia}\n */\n get inputMedia(): tl.TypeInputMedia {\n return {\n _: 'inputMediaDocument',\n id: this.inputDocument,\n }\n }\n\n protected _fileIdType(): td.FileType {\n return td.FileType.Document\n }\n\n /**\n * Get TDLib and Bot API compatible File ID\n * representing this document.\n */\n get fileId(): string {\n return toFileId({\n type: this._fileIdType(),\n dcId: this.raw.dcId,\n fileReference: this.raw.fileReference,\n location: {\n _: 'common',\n id: this.raw.id,\n accessHash: this.raw.accessHash,\n },\n })\n }\n\n /**\n * Get a unique File ID representing this document.\n */\n get uniqueFileId(): string {\n return toUniqueFileId(td.FileType.Document, {\n _: 'common',\n id: this.raw.id,\n })\n }\n}\n\n/**\n * A generic file.\n *\n * This does not include audios, videos, voices etc.\n * and only used for documents without any special\n * attributes.\n */\nexport class Document extends RawDocument {\n readonly type = 'document' as const\n}\n\nmemoizeGetters(Document, ['fileName', 'thumbnails', 'fileId', 'uniqueFileId'])\nmakeInspectable(Document, ['fileSize', 'dcId'], ['inputMedia', 'inputDocument'])\n"]}
1
+ {"version":3,"file":"document.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/media/document.ts"],"names":[],"mappings":"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","sourcesContent":["import { tdFileId as td, toFileId, toUniqueFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { getPlatform } from '../../../platform.js'\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { FileLocation } from '../files/index.js'\nimport { Thumbnail } from './thumbnail.js'\n\n/**\n * A file that is represented as a document in MTProto.\n *\n * This also includes audios, videos, voices etc.\n */\nexport abstract class RawDocument extends FileLocation {\n /** Type of the media (for use in a tagged union) */\n abstract type: string\n\n constructor(readonly raw: tl.RawDocument) {\n super(\n {\n _: 'inputDocumentFileLocation',\n id: raw.id,\n fileReference: raw.fileReference,\n accessHash: raw.accessHash,\n thumbSize: '',\n },\n raw.size,\n raw.dcId,\n )\n this.raw = raw\n }\n\n /**\n * Original file name, extracted from the document\n * attributes.\n */\n get fileName(): string | null {\n const attr = this.raw.attributes.find((it) => it._ === 'documentAttributeFilename')\n\n return attr ? (attr as tl.RawDocumentAttributeFilename).fileName : null\n }\n\n /**\n * File MIME type, as defined by the sender.\n */\n get mimeType(): string {\n return this.raw.mimeType\n }\n\n /**\n * Date the document was sent\n */\n get date(): Date {\n return new Date(this.raw.date * 1000)\n }\n\n /**\n * Available thumbnails, if any.\n *\n * If there are no thumbnails, the array will be empty.\n */\n get thumbnails(): ReadonlyArray<Thumbnail> {\n const arr: Thumbnail[] = []\n\n this.raw.thumbs?.forEach((sz) => arr.push(new Thumbnail(this.raw, sz)))\n this.raw.videoThumbs?.forEach((sz) => arr.push(new Thumbnail(this.raw, sz)))\n\n return arr\n }\n\n /**\n * Get a thumbnail by its type.\n *\n * Thumbnail types are described in the\n * [Telegram docs](https://core.telegram.org/api/files#image-thumbnail-types),\n * and are also available as static members of {@link Thumbnail} for convenience.\n *\n * @param type Thumbnail type\n */\n getThumbnail(type: string): Thumbnail | null {\n return (\n this.thumbnails.find((it) => {\n if (it.raw._ === 'videoSizeEmojiMarkup' || it.raw._ === 'videoSizeStickerMarkup') {\n return false\n }\n\n return it.raw.type === type\n }) ?? null\n )\n }\n\n /**\n * Input document TL object generated from this object,\n * to be used with methods that use it\n */\n get inputDocument(): tl.TypeInputDocument {\n return {\n _: 'inputDocument',\n id: this.raw.id,\n accessHash: this.raw.accessHash,\n fileReference: this.raw.fileReference,\n }\n }\n\n /**\n * Input media TL object generated from this object,\n * to be used inside {@link InputMediaLike} and\n * {@link TelegramClient.sendMedia}\n */\n get inputMedia(): tl.TypeInputMedia {\n return {\n _: 'inputMediaDocument',\n id: this.inputDocument,\n }\n }\n\n protected _fileIdType(): td.FileType {\n return td.FileType.Document\n }\n\n /**\n * Get TDLib and Bot API compatible File ID\n * representing this document.\n */\n get fileId(): string {\n return toFileId(getPlatform(), {\n type: this._fileIdType(),\n dcId: this.raw.dcId,\n fileReference: this.raw.fileReference,\n location: {\n _: 'common',\n id: this.raw.id,\n accessHash: this.raw.accessHash,\n },\n })\n }\n\n /**\n * Get a unique File ID representing this document.\n */\n get uniqueFileId(): string {\n return toUniqueFileId(getPlatform(), td.FileType.Document, {\n _: 'common',\n id: this.raw.id,\n })\n }\n}\n\n/**\n * A generic file.\n *\n * This does not include audios, videos, voices etc.\n * and only used for documents without any special\n * attributes.\n */\nexport class Document extends RawDocument {\n readonly type = 'document' as const\n}\n\nmemoizeGetters(Document, ['fileName', 'thumbnails', 'fileId', 'uniqueFileId'])\nmakeInspectable(Document, ['fileSize', 'dcId'], ['inputMedia', 'inputDocument'])\n"]}
@@ -3,7 +3,7 @@ export * from './contact.js';
3
3
  export * from './dice.js';
4
4
  export * from './document.js';
5
5
  export * from './game.js';
6
- export * from './input-media.js';
6
+ export * from './input-media/index.js';
7
7
  export * from './invoice.js';
8
8
  export * from './location.js';
9
9
  export * from './photo.js';
@@ -19,7 +19,7 @@ __exportStar(require("./contact.js"), exports);
19
19
  __exportStar(require("./dice.js"), exports);
20
20
  __exportStar(require("./document.js"), exports);
21
21
  __exportStar(require("./game.js"), exports);
22
- __exportStar(require("./input-media.js"), exports);
22
+ __exportStar(require("./input-media/index.js"), exports);
23
23
  __exportStar(require("./invoice.js"), exports);
24
24
  __exportStar(require("./location.js"), exports);
25
25
  __exportStar(require("./photo.js"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/media/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,+CAA4B;AAC5B,4CAAyB;AACzB,gDAA6B;AAC7B,4CAAyB;AACzB,mDAAgC;AAChC,+CAA4B;AAC5B,gDAA6B;AAC7B,6CAA0B;AAC1B,4CAAyB;AACzB,+CAA4B;AAC5B,6CAA0B;AAC1B,iDAA8B;AAC9B,6CAA0B;AAC1B,6CAA0B;AAC1B,6CAA0B;AAC1B,gDAA6B","sourcesContent":["export * from './audio.js'\nexport * from './contact.js'\nexport * from './dice.js'\nexport * from './document.js'\nexport * from './game.js'\nexport * from './input-media.js'\nexport * from './invoice.js'\nexport * from './location.js'\nexport * from './photo.js'\nexport * from './poll.js'\nexport * from './sticker.js'\nexport * from './story.js'\nexport * from './thumbnail.js'\nexport * from './venue.js'\nexport * from './video.js'\nexport * from './voice.js'\nexport * from './web-page.js'\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/media/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,+CAA4B;AAC5B,4CAAyB;AACzB,gDAA6B;AAC7B,4CAAyB;AACzB,yDAAsC;AACtC,+CAA4B;AAC5B,gDAA6B;AAC7B,6CAA0B;AAC1B,4CAAyB;AACzB,+CAA4B;AAC5B,6CAA0B;AAC1B,iDAA8B;AAC9B,6CAA0B;AAC1B,6CAA0B;AAC1B,6CAA0B;AAC1B,gDAA6B","sourcesContent":["export * from './audio.js'\nexport * from './contact.js'\nexport * from './dice.js'\nexport * from './document.js'\nexport * from './game.js'\nexport * from './input-media/index.js'\nexport * from './invoice.js'\nexport * from './location.js'\nexport * from './photo.js'\nexport * from './poll.js'\nexport * from './sticker.js'\nexport * from './story.js'\nexport * from './thumbnail.js'\nexport * from './venue.js'\nexport * from './video.js'\nexport * from './voice.js'\nexport * from './web-page.js'\n"]}