@mtcute/core 0.18.0-rc.5 → 0.18.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 (630) hide show
  1. package/client.d.cts +1 -0
  2. package/highlevel/base.d.cts +115 -0
  3. package/highlevel/base.test.d.cts +1 -0
  4. package/highlevel/client.d.cts +5045 -0
  5. package/highlevel/client.types.d.cts +61 -0
  6. package/highlevel/index.d.cts +4 -0
  7. package/highlevel/managers/app-config-manager.d.cts +11 -0
  8. package/highlevel/managers/timers.d.cts +10 -0
  9. package/highlevel/methods/_imports.d.cts +1 -0
  10. package/highlevel/methods/_init.d.cts +1 -0
  11. package/highlevel/methods/auth/check-password.d.cts +10 -0
  12. package/highlevel/methods/auth/get-password-hint.d.cts +7 -0
  13. package/highlevel/methods/auth/log-out.d.cts +17 -0
  14. package/highlevel/methods/auth/recover-password.d.cts +12 -0
  15. package/highlevel/methods/auth/resend-code.d.cts +16 -0
  16. package/highlevel/methods/auth/run.d.cts +16 -0
  17. package/highlevel/methods/auth/send-code.d.cts +18 -0
  18. package/highlevel/methods/auth/send-recovery-code.d.cts +7 -0
  19. package/highlevel/methods/auth/sign-in-bot.d.cts +10 -0
  20. package/highlevel/methods/auth/sign-in-qr.d.cts +33 -0
  21. package/highlevel/methods/auth/sign-in.d.cts +19 -0
  22. package/highlevel/methods/auth/start-test.d.cts +30 -0
  23. package/highlevel/methods/auth/start.d.cts +89 -0
  24. package/highlevel/methods/auth/utils.d.cts +9 -0
  25. package/highlevel/methods/bots/answer-callback-query.d.cts +41 -0
  26. package/highlevel/methods/bots/answer-inline-query.d.cts +88 -0
  27. package/highlevel/methods/bots/answer-pre-checkout-query.d.cts +12 -0
  28. package/highlevel/methods/bots/delete-my-commands.d.cts +22 -0
  29. package/highlevel/methods/bots/get-bot-info.d.cts +18 -0
  30. package/highlevel/methods/bots/get-bot-menu-button.d.cts +7 -0
  31. package/highlevel/methods/bots/get-callback-answer.d.cts +41 -0
  32. package/highlevel/methods/bots/get-game-high-scores.d.cts +17 -0
  33. package/highlevel/methods/bots/get-my-commands.d.cts +21 -0
  34. package/highlevel/methods/bots/normalize-command-scope.d.cts +5 -0
  35. package/highlevel/methods/bots/open-webview.d.cts +73 -0
  36. package/highlevel/methods/bots/prepare-inline-message.d.cts +32 -0
  37. package/highlevel/methods/bots/set-bot-info.d.cts +23 -0
  38. package/highlevel/methods/bots/set-bot-menu-button.d.cts +7 -0
  39. package/highlevel/methods/bots/set-game-score.d.cts +54 -0
  40. package/highlevel/methods/bots/set-my-commands.d.cts +26 -0
  41. package/highlevel/methods/bots/set-my-default-rights.d.cts +11 -0
  42. package/highlevel/methods/bots/toggle-emoji-status-permission.d.cts +11 -0
  43. package/highlevel/methods/chats/add-chat-members.d.cts +20 -0
  44. package/highlevel/methods/chats/archive-chats.d.cts +9 -0
  45. package/highlevel/methods/chats/ban-chat-member.d.cts +24 -0
  46. package/highlevel/methods/chats/batched-queries.d.cts +11 -0
  47. package/highlevel/methods/chats/create-channel.d.cts +17 -0
  48. package/highlevel/methods/chats/create-group.d.cts +33 -0
  49. package/highlevel/methods/chats/create-supergroup.d.cts +27 -0
  50. package/highlevel/methods/chats/delete-channel.d.cts +8 -0
  51. package/highlevel/methods/chats/delete-chat-photo.d.cts +10 -0
  52. package/highlevel/methods/chats/delete-group.d.cts +8 -0
  53. package/highlevel/methods/chats/delete-history.d.cts +22 -0
  54. package/highlevel/methods/chats/delete-user-history.d.cts +16 -0
  55. package/highlevel/methods/chats/edit-admin-rights.d.cts +16 -0
  56. package/highlevel/methods/chats/get-chat-event-log.d.cts +61 -0
  57. package/highlevel/methods/chats/get-chat-member.d.cts +15 -0
  58. package/highlevel/methods/chats/get-chat-members.d.cts +51 -0
  59. package/highlevel/methods/chats/get-chat-preview.d.cts +12 -0
  60. package/highlevel/methods/chats/get-chat.d.cts +11 -0
  61. package/highlevel/methods/chats/get-full-chat.d.cts +11 -0
  62. package/highlevel/methods/chats/get-full-user.d.cts +8 -0
  63. package/highlevel/methods/chats/get-nearby-chats.d.cts +9 -0
  64. package/highlevel/methods/chats/get-similar-channels.d.cts +12 -0
  65. package/highlevel/methods/chats/get-user.d.cts +8 -0
  66. package/highlevel/methods/chats/iter-chat-event-log.d.cts +26 -0
  67. package/highlevel/methods/chats/iter-chat-members.d.cts +22 -0
  68. package/highlevel/methods/chats/join-chat.d.cts +14 -0
  69. package/highlevel/methods/chats/kick-chat-member.d.cts +15 -0
  70. package/highlevel/methods/chats/leave-chat.d.cts +13 -0
  71. package/highlevel/methods/chats/mark-chat-unread.d.cts +8 -0
  72. package/highlevel/methods/chats/open-chat.d.cts +26 -0
  73. package/highlevel/methods/chats/reorder-usernames.d.cts +8 -0
  74. package/highlevel/methods/chats/restrict-chat-member.d.cts +28 -0
  75. package/highlevel/methods/chats/save-draft.d.cts +10 -0
  76. package/highlevel/methods/chats/set-chat-color.d.cts +38 -0
  77. package/highlevel/methods/chats/set-chat-default-permissions.d.cts +16 -0
  78. package/highlevel/methods/chats/set-chat-description.d.cts +11 -0
  79. package/highlevel/methods/chats/set-chat-photo.d.cts +20 -0
  80. package/highlevel/methods/chats/set-chat-title.d.cts +11 -0
  81. package/highlevel/methods/chats/set-chat-ttl.d.cts +9 -0
  82. package/highlevel/methods/chats/set-chat-username.d.cts +11 -0
  83. package/highlevel/methods/chats/set-slow-mode.d.cts +12 -0
  84. package/highlevel/methods/chats/toggle-content-protection.d.cts +9 -0
  85. package/highlevel/methods/chats/toggle-fragment-username.d.cts +20 -0
  86. package/highlevel/methods/chats/toggle-join-requests.d.cts +12 -0
  87. package/highlevel/methods/chats/toggle-join-to-send.d.cts +12 -0
  88. package/highlevel/methods/chats/unarchive-chats.d.cts +9 -0
  89. package/highlevel/methods/chats/unban-chat-member.d.cts +16 -0
  90. package/highlevel/methods/contacts/add-contact.d.cts +28 -0
  91. package/highlevel/methods/contacts/delete-contacts.d.cts +12 -0
  92. package/highlevel/methods/contacts/get-contacts.d.cts +6 -0
  93. package/highlevel/methods/contacts/import-contacts.d.cts +9 -0
  94. package/highlevel/methods/dialogs/create-folder.d.cts +13 -0
  95. package/highlevel/methods/dialogs/delete-folder.d.cts +8 -0
  96. package/highlevel/methods/dialogs/edit-folder.d.cts +18 -0
  97. package/highlevel/methods/dialogs/find-dialogs.d.cts +12 -0
  98. package/highlevel/methods/dialogs/find-folder.d.cts +19 -0
  99. package/highlevel/methods/dialogs/get-chatlist-preview.d.cts +8 -0
  100. package/highlevel/methods/dialogs/get-folders.d.cts +9 -0
  101. package/highlevel/methods/dialogs/get-peer-dialogs.d.cts +10 -0
  102. package/highlevel/methods/dialogs/iter-dialogs.d.cts +103 -0
  103. package/highlevel/methods/dialogs/join-chatlist.d.cts +15 -0
  104. package/highlevel/methods/dialogs/set-folders-order.d.cts +7 -0
  105. package/highlevel/methods/files/download-buffer.d.cts +11 -0
  106. package/highlevel/methods/files/download-file.d.cts +1 -0
  107. package/highlevel/methods/files/download-iterable.cjs +9 -7
  108. package/highlevel/methods/files/download-iterable.d.cts +10 -0
  109. package/highlevel/methods/files/download-iterable.js +9 -7
  110. package/highlevel/methods/files/download-node-stream.d.cts +1 -0
  111. package/highlevel/methods/files/download-stream.d.cts +9 -0
  112. package/highlevel/methods/files/normalize-file-to-document.d.cts +9 -0
  113. package/highlevel/methods/files/normalize-input-file.d.cts +13 -0
  114. package/highlevel/methods/files/normalize-input-media.d.cts +12 -0
  115. package/highlevel/methods/files/upload-file.d.cts +72 -0
  116. package/highlevel/methods/files/upload-media.d.cts +28 -0
  117. package/highlevel/methods/forums/create-forum-topic.d.cts +36 -0
  118. package/highlevel/methods/forums/delete-forum-topic-history.d.cts +15 -0
  119. package/highlevel/methods/forums/edit-forum-topic.d.cts +34 -0
  120. package/highlevel/methods/forums/get-forum-topics-by-id.d.cts +9 -0
  121. package/highlevel/methods/forums/get-forum-topics.d.cts +28 -0
  122. package/highlevel/methods/forums/iter-forum-topics.d.cts +20 -0
  123. package/highlevel/methods/forums/reorder-pinned-forum-topics.d.cts +19 -0
  124. package/highlevel/methods/forums/toggle-forum-topic-closed.d.cts +22 -0
  125. package/highlevel/methods/forums/toggle-forum-topic-pinned.d.cts +15 -0
  126. package/highlevel/methods/forums/toggle-forum.d.cts +11 -0
  127. package/highlevel/methods/forums/toggle-general-topic-hidden.d.cts +20 -0
  128. package/highlevel/methods/invite-links/create-invite-link.d.cts +38 -0
  129. package/highlevel/methods/invite-links/edit-invite-link.d.cts +36 -0
  130. package/highlevel/methods/invite-links/export-invite-link.d.cts +12 -0
  131. package/highlevel/methods/invite-links/get-invite-link-members.d.cts +45 -0
  132. package/highlevel/methods/invite-links/get-invite-link.d.cts +9 -0
  133. package/highlevel/methods/invite-links/get-invite-links.d.cts +39 -0
  134. package/highlevel/methods/invite-links/get-primary-invite-link.d.cts +8 -0
  135. package/highlevel/methods/invite-links/hide-all-join-requests.d.cts +13 -0
  136. package/highlevel/methods/invite-links/hide-join-request.d.cts +13 -0
  137. package/highlevel/methods/invite-links/iter-invite-link-members.d.cts +25 -0
  138. package/highlevel/methods/invite-links/iter-invite-links.d.cts +27 -0
  139. package/highlevel/methods/invite-links/revoke-invite-link.d.cts +13 -0
  140. package/highlevel/methods/messages/_business-connection.d.cts +8 -0
  141. package/highlevel/methods/messages/close-poll.d.cts +15 -0
  142. package/highlevel/methods/messages/delete-messages.d.cts +29 -0
  143. package/highlevel/methods/messages/delete-scheduled-messages.d.cts +9 -0
  144. package/highlevel/methods/messages/edit-inline-message.d.cts +51 -0
  145. package/highlevel/methods/messages/edit-message.d.cts +55 -0
  146. package/highlevel/methods/messages/find-in-update.d.cts +13 -0
  147. package/highlevel/methods/messages/forward-messages.d.cts +84 -0
  148. package/highlevel/methods/messages/get-all-scheduled-messages.d.cts +8 -0
  149. package/highlevel/methods/messages/get-available-effects.d.cts +6 -0
  150. package/highlevel/methods/messages/get-callback-query-message.d.cts +14 -0
  151. package/highlevel/methods/messages/get-discussion-message.d.cts +21 -0
  152. package/highlevel/methods/messages/get-fact-check.d.cts +11 -0
  153. package/highlevel/methods/messages/get-history.d.cts +59 -0
  154. package/highlevel/methods/messages/get-message-by-link.d.cts +6 -0
  155. package/highlevel/methods/messages/get-message-group.d.cts +9 -0
  156. package/highlevel/methods/messages/get-message-reactions.d.cts +28 -0
  157. package/highlevel/methods/messages/get-messages-unsafe.d.cts +19 -0
  158. package/highlevel/methods/messages/get-messages.d.cts +17 -0
  159. package/highlevel/methods/messages/get-reaction-users.d.cts +24 -0
  160. package/highlevel/methods/messages/get-reply-to.d.cts +10 -0
  161. package/highlevel/methods/messages/get-scheduled-messages.d.cts +13 -0
  162. package/highlevel/methods/messages/iter-history.d.cts +23 -0
  163. package/highlevel/methods/messages/iter-reaction-users.d.cts +26 -0
  164. package/highlevel/methods/messages/iter-search-global.d.cts +27 -0
  165. package/highlevel/methods/messages/iter-search-messages.d.cts +26 -0
  166. package/highlevel/methods/messages/pin-message.d.cts +21 -0
  167. package/highlevel/methods/messages/read-history.d.cts +24 -0
  168. package/highlevel/methods/messages/read-reactions.d.cts +14 -0
  169. package/highlevel/methods/messages/search-global.d.cts +51 -0
  170. package/highlevel/methods/messages/search-hashtag.d.cts +44 -0
  171. package/highlevel/methods/messages/search-messages.d.cts +93 -0
  172. package/highlevel/methods/messages/send-answer.d.cts +12 -0
  173. package/highlevel/methods/messages/send-comment.d.cts +39 -0
  174. package/highlevel/methods/messages/send-common.d.cts +122 -0
  175. package/highlevel/methods/messages/send-copy-group.d.cts +21 -0
  176. package/highlevel/methods/messages/send-copy.d.cts +32 -0
  177. package/highlevel/methods/messages/send-media-group.d.cts +35 -0
  178. package/highlevel/methods/messages/send-media.d.cts +48 -0
  179. package/highlevel/methods/messages/send-paid-reaction.d.cts +24 -0
  180. package/highlevel/methods/messages/send-quote.d.cts +33 -0
  181. package/highlevel/methods/messages/send-reaction.d.cts +21 -0
  182. package/highlevel/methods/messages/send-reply.d.cts +12 -0
  183. package/highlevel/methods/messages/send-scheduled.d.cts +14 -0
  184. package/highlevel/methods/messages/send-text.d.cts +31 -0
  185. package/highlevel/methods/messages/send-text.test.d.cts +1 -0
  186. package/highlevel/methods/messages/send-typing.d.cts +32 -0
  187. package/highlevel/methods/messages/send-vote.d.cts +15 -0
  188. package/highlevel/methods/messages/set-typing.d.cts +33 -0
  189. package/highlevel/methods/messages/translate-message.d.cts +11 -0
  190. package/highlevel/methods/messages/translate-text.d.cts +9 -0
  191. package/highlevel/methods/messages/unpin-all-messages.d.cts +18 -0
  192. package/highlevel/methods/messages/unpin-message.d.cts +12 -0
  193. package/highlevel/methods/misc/chain-id.d.cts +4 -0
  194. package/highlevel/methods/misc/get-collectible-info.d.cts +6 -0
  195. package/highlevel/methods/misc/init-takeout-session.d.cts +9 -0
  196. package/highlevel/methods/misc/normalize-privacy-rules.d.cts +8 -0
  197. package/highlevel/methods/misc/normalize-text.d.cts +5 -0
  198. package/highlevel/methods/misc/with-params.d.cts +10 -0
  199. package/highlevel/methods/password/change-cloud-password.d.cts +12 -0
  200. package/highlevel/methods/password/enable-cloud-password.d.cts +17 -0
  201. package/highlevel/methods/password/password-email.d.cts +15 -0
  202. package/highlevel/methods/password/remove-cloud-password.d.cts +7 -0
  203. package/highlevel/methods/premium/accept-star-gift.d.cts +16 -0
  204. package/highlevel/methods/premium/apply-boost.d.cts +8 -0
  205. package/highlevel/methods/premium/can-apply-boost.d.cts +29 -0
  206. package/highlevel/methods/premium/create-business-chat-link.d.cts +12 -0
  207. package/highlevel/methods/premium/edit-business-chat-link.d.cts +20 -0
  208. package/highlevel/methods/premium/get-boost-stats.d.cts +9 -0
  209. package/highlevel/methods/premium/get-boosts.d.cts +18 -0
  210. package/highlevel/methods/premium/get-business-chat-links.d.cts +6 -0
  211. package/highlevel/methods/premium/get-business-connection.d.cts +8 -0
  212. package/highlevel/methods/premium/get-my-boost-slots.d.cts +9 -0
  213. package/highlevel/methods/premium/get-star-gift-options.d.cts +6 -0
  214. package/highlevel/methods/premium/get-star-gifts.d.cts +22 -0
  215. package/highlevel/methods/premium/get-stars-transactions.d.cts +34 -0
  216. package/highlevel/methods/premium/iter-boosters.d.cts +24 -0
  217. package/highlevel/methods/premium/iter-star-gifts.d.cts +26 -0
  218. package/highlevel/methods/premium/iter-stars-transactions.d.cts +29 -0
  219. package/highlevel/methods/premium/send-star-gift.d.cts +35 -0
  220. package/highlevel/methods/premium/set-business-intro.d.cts +22 -0
  221. package/highlevel/methods/premium/set-business-work-hours.d.cts +18 -0
  222. package/highlevel/methods/stickers/_utils.d.cts +10 -0
  223. package/highlevel/methods/stickers/add-sticker-to-set.d.cts +21 -0
  224. package/highlevel/methods/stickers/create-sticker-set.d.cts +66 -0
  225. package/highlevel/methods/stickers/delete-sticker-from-set.d.cts +15 -0
  226. package/highlevel/methods/stickers/get-custom-emojis.d.cts +14 -0
  227. package/highlevel/methods/stickers/get-installed-stickers.d.cts +10 -0
  228. package/highlevel/methods/stickers/get-my-sticker-sets.d.cts +13 -0
  229. package/highlevel/methods/stickers/get-sticker-set.d.cts +8 -0
  230. package/highlevel/methods/stickers/move-sticker-in-set.d.cts +17 -0
  231. package/highlevel/methods/stickers/replace-sticker-in-set.d.cts +24 -0
  232. package/highlevel/methods/stickers/set-chat-sticker-set.d.cts +11 -0
  233. package/highlevel/methods/stickers/set-sticker-set-thumb.d.cts +20 -0
  234. package/highlevel/methods/stories/can-send-story.d.cts +13 -0
  235. package/highlevel/methods/stories/delete-stories.d.cts +20 -0
  236. package/highlevel/methods/stories/edit-story.d.cts +38 -0
  237. package/highlevel/methods/stories/find-in-update.d.cts +5 -0
  238. package/highlevel/methods/stories/get-all-stories.d.cts +15 -0
  239. package/highlevel/methods/stories/get-peer-stories.d.cts +8 -0
  240. package/highlevel/methods/stories/get-profile-stories.d.cts +25 -0
  241. package/highlevel/methods/stories/get-stories-by-id.d.cts +10 -0
  242. package/highlevel/methods/stories/get-stories-interactions.d.cts +9 -0
  243. package/highlevel/methods/stories/get-story-link.d.cts +11 -0
  244. package/highlevel/methods/stories/get-story-viewers.d.cts +33 -0
  245. package/highlevel/methods/stories/hide-my-stories-views.d.cts +21 -0
  246. package/highlevel/methods/stories/increment-stories-views.d.cts +13 -0
  247. package/highlevel/methods/stories/iter-all-stories.d.cts +16 -0
  248. package/highlevel/methods/stories/iter-profile-stories.d.cts +21 -0
  249. package/highlevel/methods/stories/iter-story-viewers.d.cts +22 -0
  250. package/highlevel/methods/stories/read-stories.d.cts +11 -0
  251. package/highlevel/methods/stories/send-story-reaction.d.cts +14 -0
  252. package/highlevel/methods/stories/send-story.d.cts +51 -0
  253. package/highlevel/methods/stories/toggle-peer-stories-archived.d.cts +8 -0
  254. package/highlevel/methods/stories/toggle-stories-pinned.d.cts +24 -0
  255. package/highlevel/methods/users/block-user.d.cts +8 -0
  256. package/highlevel/methods/users/delete-profile-photos.d.cts +9 -0
  257. package/highlevel/methods/users/edit-close-friends.d.cts +14 -0
  258. package/highlevel/methods/users/get-common-chats.d.cts +9 -0
  259. package/highlevel/methods/users/get-global-ttl.d.cts +5 -0
  260. package/highlevel/methods/users/get-me.d.cts +6 -0
  261. package/highlevel/methods/users/get-my-username.d.cts +8 -0
  262. package/highlevel/methods/users/get-profile-photo.d.cts +11 -0
  263. package/highlevel/methods/users/get-profile-photos.d.cts +22 -0
  264. package/highlevel/methods/users/get-users.d.cts +12 -0
  265. package/highlevel/methods/users/get-users.test.d.cts +1 -0
  266. package/highlevel/methods/users/is-peer-available.d.cts +20 -0
  267. package/highlevel/methods/users/iter-profile-photos.d.cts +23 -0
  268. package/highlevel/methods/users/resolve-peer-many.d.cts +26 -0
  269. package/highlevel/methods/users/resolve-peer.d.cts +20 -0
  270. package/highlevel/methods/users/resolve-peer.test.d.cts +1 -0
  271. package/highlevel/methods/users/set-emoji-status.d.cts +32 -0
  272. package/highlevel/methods/users/set-global-ttl.d.cts +8 -0
  273. package/highlevel/methods/users/set-my-birthday.d.cts +12 -0
  274. package/highlevel/methods/users/set-my-profile-photo.d.cts +16 -0
  275. package/highlevel/methods/users/set-my-username.d.cts +11 -0
  276. package/highlevel/methods/users/set-online.d.cts +19 -0
  277. package/highlevel/methods/users/unblock-user.d.cts +8 -0
  278. package/highlevel/methods/users/update-profile.d.cts +23 -0
  279. package/highlevel/methods.d.cts +291 -0
  280. package/highlevel/storage/index.d.cts +4 -0
  281. package/highlevel/storage/provider.d.cts +7 -0
  282. package/highlevel/storage/repository/peers.d.cts +44 -0
  283. package/highlevel/storage/repository/ref-messages.d.cts +20 -0
  284. package/highlevel/storage/service/current-user.d.cts +23 -0
  285. package/highlevel/storage/service/peers.d.cts +23 -0
  286. package/highlevel/storage/service/ref-messages.d.cts +15 -0
  287. package/highlevel/storage/service/updates.d.cts +16 -0
  288. package/highlevel/storage/storage.d.cts +27 -0
  289. package/highlevel/types/auth/index.d.cts +1 -0
  290. package/highlevel/types/auth/sent-code.d.cts +56 -0
  291. package/highlevel/types/bots/command-scope/index.d.cts +10 -0
  292. package/highlevel/types/bots/command-scope/inner.d.cts +54 -0
  293. package/highlevel/types/bots/game-high-score.d.cts +23 -0
  294. package/highlevel/types/bots/index.d.cts +6 -0
  295. package/highlevel/types/bots/inline-message/factories.d.cts +47 -0
  296. package/highlevel/types/bots/inline-message/index.d.cts +3 -0
  297. package/highlevel/types/bots/inline-message/types.d.cts +114 -0
  298. package/highlevel/types/bots/inline-result/factories.d.cts +97 -0
  299. package/highlevel/types/bots/inline-result/index.d.cts +3 -0
  300. package/highlevel/types/bots/inline-result/types.d.cts +417 -0
  301. package/highlevel/types/bots/keyboards/builder.d.cts +38 -0
  302. package/highlevel/types/bots/keyboards/builder.test.d.cts +1 -0
  303. package/highlevel/types/bots/keyboards/factories.d.cts +208 -0
  304. package/highlevel/types/bots/keyboards/index.d.cts +15 -0
  305. package/highlevel/types/bots/keyboards/keyboards.test.d.cts +1 -0
  306. package/highlevel/types/bots/keyboards/types.d.cts +34 -0
  307. package/highlevel/types/bots/webview.d.cts +114 -0
  308. package/highlevel/types/calls/discard-reason.d.cts +13 -0
  309. package/highlevel/types/calls/index.d.cts +1 -0
  310. package/highlevel/types/conversation.d.cts +210 -0
  311. package/highlevel/types/errors.d.cts +33 -0
  312. package/highlevel/types/files/file-location.d.cts +48 -0
  313. package/highlevel/types/files/index.d.cts +4 -0
  314. package/highlevel/types/files/uploaded-file.d.cts +24 -0
  315. package/highlevel/types/files/utils.d.cts +89 -0
  316. package/highlevel/types/files/web-document.d.cts +32 -0
  317. package/highlevel/types/index.d.cts +15 -0
  318. package/highlevel/types/media/audio.d.cts +31 -0
  319. package/highlevel/types/media/contact.d.cts +31 -0
  320. package/highlevel/types/media/dice.d.cts +155 -0
  321. package/highlevel/types/media/document-utils.d.cts +11 -0
  322. package/highlevel/types/media/document.d.cts +75 -0
  323. package/highlevel/types/media/extended-media.d.cts +20 -0
  324. package/highlevel/types/media/game.d.cts +38 -0
  325. package/highlevel/types/media/index.d.cts +19 -0
  326. package/highlevel/types/media/input-media/factories.d.cts +142 -0
  327. package/highlevel/types/media/input-media/index.d.cts +3 -0
  328. package/highlevel/types/media/input-media/types.d.cts +520 -0
  329. package/highlevel/types/media/invoice.d.cts +89 -0
  330. package/highlevel/types/media/location.d.cts +83 -0
  331. package/highlevel/types/media/paid-media.d.cts +33 -0
  332. package/highlevel/types/media/photo.d.cts +72 -0
  333. package/highlevel/types/media/poll.d.cts +110 -0
  334. package/highlevel/types/media/sticker.d.cts +123 -0
  335. package/highlevel/types/media/story.d.cts +33 -0
  336. package/highlevel/types/media/thumbnail.d.cts +70 -0
  337. package/highlevel/types/media/venue.d.cts +58 -0
  338. package/highlevel/types/media/video.d.cts +48 -0
  339. package/highlevel/types/media/voice.d.cts +23 -0
  340. package/highlevel/types/media/web-page.d.cts +151 -0
  341. package/highlevel/types/messages/dialog.d.cts +110 -0
  342. package/highlevel/types/messages/draft-message.d.cts +29 -0
  343. package/highlevel/types/messages/fact-check.d.cts +30 -0
  344. package/highlevel/types/messages/index.d.cts +14 -0
  345. package/highlevel/types/messages/input-message-id.d.cts +20 -0
  346. package/highlevel/types/messages/message-action.d.cts +420 -0
  347. package/highlevel/types/messages/message-effect.d.cts +20 -0
  348. package/highlevel/types/messages/message-entity.d.cts +89 -0
  349. package/highlevel/types/messages/message-forward.d.cts +39 -0
  350. package/highlevel/types/messages/message-media.d.cts +23 -0
  351. package/highlevel/types/messages/message-reactions.d.cts +31 -0
  352. package/highlevel/types/messages/message-replies.d.cts +42 -0
  353. package/highlevel/types/messages/message.d.cts +249 -0
  354. package/highlevel/types/messages/replied-message.d.cts +103 -0
  355. package/highlevel/types/messages/search-filters.d.cts +82 -0
  356. package/highlevel/types/misc/app-config.d.cts +887 -0
  357. package/highlevel/types/misc/collectible-info.d.cts +27 -0
  358. package/highlevel/types/misc/entities.d.cts +22 -0
  359. package/highlevel/types/misc/index.d.cts +6 -0
  360. package/highlevel/types/misc/input-privacy-rule/allow.d.cts +22 -0
  361. package/highlevel/types/misc/input-privacy-rule/bundle.d.cts +3 -0
  362. package/highlevel/types/misc/input-privacy-rule/disallow.d.cts +20 -0
  363. package/highlevel/types/misc/input-privacy-rule/index.d.cts +3 -0
  364. package/highlevel/types/misc/input-privacy-rule/types.d.cts +11 -0
  365. package/highlevel/types/misc/sticker-set.d.cts +154 -0
  366. package/highlevel/types/misc/takeout-session.d.cts +49 -0
  367. package/highlevel/types/peers/bot-info.d.cts +21 -0
  368. package/highlevel/types/peers/chat-colors.d.cts +25 -0
  369. package/highlevel/types/peers/chat-event/actions.d.cts +279 -0
  370. package/highlevel/types/peers/chat-event/filters.d.cts +10 -0
  371. package/highlevel/types/peers/chat-event/index.d.cts +27 -0
  372. package/highlevel/types/peers/chat-invite-link-member.d.cts +33 -0
  373. package/highlevel/types/peers/chat-invite-link.d.cts +72 -0
  374. package/highlevel/types/peers/chat-location.d.cts +17 -0
  375. package/highlevel/types/peers/chat-member.d.cts +86 -0
  376. package/highlevel/types/peers/chat-permissions.d.cts +127 -0
  377. package/highlevel/types/peers/chat-photo.d.cts +39 -0
  378. package/highlevel/types/peers/chat-preview.d.cts +55 -0
  379. package/highlevel/types/peers/chat.d.cts +250 -0
  380. package/highlevel/types/peers/chatlist-preview.d.cts +21 -0
  381. package/highlevel/types/peers/forum-topic.d.cts +96 -0
  382. package/highlevel/types/peers/full-chat.cjs +1 -1
  383. package/highlevel/types/peers/full-chat.d.cts +161 -0
  384. package/highlevel/types/peers/full-chat.js +1 -1
  385. package/highlevel/types/peers/full-user.d.cts +115 -0
  386. package/highlevel/types/peers/index.d.cts +19 -0
  387. package/highlevel/types/peers/index.d.ts +1 -0
  388. package/highlevel/types/peers/peer.d.cts +49 -0
  389. package/highlevel/types/peers/peers-index.d.cts +15 -0
  390. package/highlevel/types/peers/peers-index.test.d.cts +1 -0
  391. package/highlevel/types/peers/typing-status.d.cts +26 -0
  392. package/highlevel/types/peers/user.d.cts +268 -0
  393. package/highlevel/types/peers/user.test.d.cts +1 -0
  394. package/highlevel/types/premium/boost-slot.d.cts +37 -0
  395. package/highlevel/types/premium/boost-stats.d.cts +54 -0
  396. package/highlevel/types/premium/boost.d.cts +56 -0
  397. package/highlevel/types/premium/boost.d.ts +1 -2
  398. package/highlevel/types/premium/business-account.d.cts +19 -0
  399. package/highlevel/types/premium/business-chat-link.d.cts +19 -0
  400. package/highlevel/types/premium/business-connection.d.cts +23 -0
  401. package/highlevel/types/premium/business-intro.d.cts +22 -0
  402. package/highlevel/types/premium/business-location.d.cts +10 -0
  403. package/highlevel/types/premium/business-work-hours.d.cts +42 -0
  404. package/highlevel/types/premium/business-work-hours.test.d.cts +1 -0
  405. package/highlevel/types/premium/index.d.cts +12 -0
  406. package/highlevel/types/premium/index.d.ts +1 -0
  407. package/highlevel/types/premium/stars-gift.d.cts +68 -0
  408. package/highlevel/types/premium/stars-status.d.cts +16 -0
  409. package/highlevel/types/premium/stars-status.d.ts +1 -1
  410. package/highlevel/types/premium/stars-transaction.cjs +7 -3
  411. package/highlevel/types/premium/stars-transaction.d.cts +134 -0
  412. package/highlevel/types/premium/stars-transaction.d.ts +1 -1
  413. package/highlevel/types/premium/stars-transaction.js +7 -3
  414. package/highlevel/types/reactions/emoji-status.d.cts +12 -0
  415. package/highlevel/types/reactions/index.d.cts +4 -0
  416. package/highlevel/types/reactions/index.d.ts +2 -0
  417. package/highlevel/types/reactions/peer-reaction.d.cts +53 -0
  418. package/highlevel/types/reactions/reaction-count.d.cts +25 -0
  419. package/highlevel/types/reactions/types.d.cts +16 -0
  420. package/highlevel/types/stories/all-stories.d.cts +28 -0
  421. package/highlevel/types/stories/index.d.cts +7 -0
  422. package/highlevel/types/stories/interactive/base.d.cts +16 -0
  423. package/highlevel/types/stories/interactive/channel-post.d.cts +17 -0
  424. package/highlevel/types/stories/interactive/index.d.cts +12 -0
  425. package/highlevel/types/stories/interactive/input.d.cts +68 -0
  426. package/highlevel/types/stories/interactive/location.d.cts +15 -0
  427. package/highlevel/types/stories/interactive/reaction.d.cts +21 -0
  428. package/highlevel/types/stories/interactive/url.d.cts +11 -0
  429. package/highlevel/types/stories/interactive/venue.d.cts +28 -0
  430. package/highlevel/types/stories/interactive/weather.d.cts +15 -0
  431. package/highlevel/types/stories/peer-stories.d.cts +20 -0
  432. package/highlevel/types/stories/stealth-mode.d.cts +9 -0
  433. package/highlevel/types/stories/story-interactions.d.cts +34 -0
  434. package/highlevel/types/stories/story-viewer.d.cts +75 -0
  435. package/highlevel/types/stories/story.d.cts +79 -0
  436. package/highlevel/types/updates/bot-chat-join-request.d.cts +42 -0
  437. package/highlevel/types/updates/bot-reaction.d.cts +71 -0
  438. package/highlevel/types/updates/bot-stopped.d.cts +28 -0
  439. package/highlevel/types/updates/business-message.d.cts +18 -0
  440. package/highlevel/types/updates/callback-query.d.cts +95 -0
  441. package/highlevel/types/updates/chat-join-request.d.cts +30 -0
  442. package/highlevel/types/updates/chat-member-update.cjs +1 -0
  443. package/highlevel/types/updates/chat-member-update.d.cts +76 -0
  444. package/highlevel/types/updates/chat-member-update.js +1 -0
  445. package/highlevel/types/updates/chosen-inline-result.d.cts +50 -0
  446. package/highlevel/types/updates/delete-business-message-update.d.cts +21 -0
  447. package/highlevel/types/updates/delete-message-update.d.cts +16 -0
  448. package/highlevel/types/updates/delete-story-update.d.cts +18 -0
  449. package/highlevel/types/updates/history-read-update.d.cts +39 -0
  450. package/highlevel/types/updates/index.d.cts +107 -0
  451. package/highlevel/types/updates/inline-query.d.cts +42 -0
  452. package/highlevel/types/updates/parse-update.d.cts +4 -0
  453. package/highlevel/types/updates/poll-update.d.cts +39 -0
  454. package/highlevel/types/updates/poll-vote.d.cts +52 -0
  455. package/highlevel/types/updates/pre-checkout-query.d.cts +36 -0
  456. package/highlevel/types/updates/story-update.d.cts +22 -0
  457. package/highlevel/types/updates/user-status-update.d.cts +28 -0
  458. package/highlevel/types/updates/user-typing-update.d.cts +31 -0
  459. package/highlevel/types/utils.d.cts +12 -0
  460. package/highlevel/updates/index.d.cts +2 -0
  461. package/highlevel/updates/manager.d.cts +121 -0
  462. package/highlevel/updates/parsed.d.cts +26 -0
  463. package/highlevel/updates/types.d.cts +147 -0
  464. package/highlevel/updates/utils.d.cts +21 -0
  465. package/highlevel/utils/convert-file-id.d.cts +46 -0
  466. package/highlevel/utils/entities.d.cts +19 -0
  467. package/highlevel/utils/entities.test.d.cts +1 -0
  468. package/highlevel/utils/file-type.d.cts +2 -0
  469. package/highlevel/utils/file-type.test.d.cts +1 -0
  470. package/highlevel/utils/file-utils.d.cts +31 -0
  471. package/highlevel/utils/file-utils.test.d.cts +1 -0
  472. package/highlevel/utils/index.d.cts +11 -0
  473. package/highlevel/utils/inline-utils.d.cts +14 -0
  474. package/highlevel/utils/inline-utils.test.d.cts +1 -0
  475. package/highlevel/utils/inspectable.d.cts +9 -0
  476. package/highlevel/utils/inspectable.test.d.cts +1 -0
  477. package/highlevel/utils/memoize.d.cts +1 -0
  478. package/highlevel/utils/memoize.test.d.cts +1 -0
  479. package/highlevel/utils/misc-utils.d.cts +12 -0
  480. package/highlevel/utils/peer-utils.d.cts +11 -0
  481. package/highlevel/utils/peer-utils.test.d.cts +1 -0
  482. package/highlevel/utils/query-batcher.d.cts +49 -0
  483. package/highlevel/utils/query-batcher.test.d.cts +1 -0
  484. package/highlevel/utils/rps-meter.d.cts +9 -0
  485. package/highlevel/utils/stream-utils.d.cts +1 -0
  486. package/highlevel/utils/string-session.d.cts +16 -0
  487. package/highlevel/utils/string-session.test.d.cts +1 -0
  488. package/highlevel/utils/voice-utils.d.cts +14 -0
  489. package/highlevel/utils/voice-utils.test.d.cts +1 -0
  490. package/highlevel/worker/app-config.d.cts +9 -0
  491. package/highlevel/worker/errors.d.cts +8 -0
  492. package/highlevel/worker/index.d.cts +3 -0
  493. package/highlevel/worker/invoker.d.cts +18 -0
  494. package/highlevel/worker/port.d.cts +60 -0
  495. package/highlevel/worker/protocol.d.cts +57 -0
  496. package/highlevel/worker/storage.d.cts +39 -0
  497. package/highlevel/worker/worker.d.cts +15 -0
  498. package/index.cjs +8 -0
  499. package/index.d.cts +10 -0
  500. package/index.js +8 -0
  501. package/methods.d.cts +1 -0
  502. package/network/auth-key.d.cts +21 -0
  503. package/network/auth-key.test.d.cts +1 -0
  504. package/network/authorization.d.cts +9 -0
  505. package/network/client.d.cts +218 -0
  506. package/network/config-manager.d.cts +19 -0
  507. package/network/config-manager.test.d.cts +1 -0
  508. package/network/index.d.cts +6 -0
  509. package/network/middlewares/bundle.d.cts +3 -0
  510. package/network/middlewares/default.d.cts +8 -0
  511. package/network/middlewares/flood-waiter.d.cts +37 -0
  512. package/network/middlewares/index.d.cts +4 -0
  513. package/network/middlewares/index.d.ts +2 -0
  514. package/network/middlewares/internal-errors.d.cts +17 -0
  515. package/network/middlewares/on-error.d.cts +30 -0
  516. package/network/middlewares/on-method.d.cts +39 -0
  517. package/network/mtproto-session.d.cts +127 -0
  518. package/network/mtproxy/_fake-tls.d.cts +22 -0
  519. package/network/mtproxy/index.d.cts +42 -0
  520. package/network/multi-session-connection.cjs +25 -43
  521. package/network/multi-session-connection.d.cts +43 -0
  522. package/network/multi-session-connection.d.ts +5 -5
  523. package/network/multi-session-connection.js +25 -43
  524. package/network/network-manager.cjs +7 -20
  525. package/network/network-manager.d.cts +256 -0
  526. package/network/network-manager.js +7 -20
  527. package/network/persistent-connection.cjs +8 -0
  528. package/network/persistent-connection.d.cts +55 -0
  529. package/network/persistent-connection.d.ts +3 -1
  530. package/network/persistent-connection.js +8 -0
  531. package/network/server-salt.d.cts +12 -0
  532. package/network/session-connection.cjs +35 -18
  533. package/network/session-connection.d.cts +94 -0
  534. package/network/session-connection.d.ts +5 -3
  535. package/network/session-connection.js +35 -18
  536. package/network/transports/abstract.d.cts +47 -0
  537. package/network/transports/index.d.cts +3 -0
  538. package/network/transports/intermediate.d.cts +23 -0
  539. package/network/transports/intermediate.test.d.cts +1 -0
  540. package/network/transports/obfuscated.d.cts +23 -0
  541. package/network/transports/obfuscated.test.d.cts +1 -0
  542. package/package.json +13 -13
  543. package/storage/driver.d.cts +58 -0
  544. package/storage/index.d.cts +6 -0
  545. package/storage/memory/driver.d.cts +6 -0
  546. package/storage/memory/index.d.cts +22 -0
  547. package/storage/memory/memory.test.d.cts +1 -0
  548. package/storage/memory/repository/auth-keys.d.cts +19 -0
  549. package/storage/memory/repository/kv.d.cts +11 -0
  550. package/storage/memory/repository/peers.d.cts +18 -0
  551. package/storage/memory/repository/ref-messages.d.cts +16 -0
  552. package/storage/provider.d.cts +10 -0
  553. package/storage/repository/auth-keys.d.cts +41 -0
  554. package/storage/repository/index.d.cts +2 -0
  555. package/storage/repository/key-value.d.cts +10 -0
  556. package/storage/service/auth-keys.d.cts +9 -0
  557. package/storage/service/auth-keys.test.d.cts +1 -0
  558. package/storage/service/base.d.cts +19 -0
  559. package/storage/service/default-dcs.d.cts +10 -0
  560. package/storage/service/future-salts.d.cts +11 -0
  561. package/storage/service/updates.test.d.cts +1 -0
  562. package/storage/service/utils.test-utils.d.cts +2 -0
  563. package/storage/sqlite/driver.d.cts +24 -0
  564. package/storage/sqlite/index.d.cts +17 -0
  565. package/storage/sqlite/repository/auth-keys.d.cts +20 -0
  566. package/storage/sqlite/repository/kv.d.cts +14 -0
  567. package/storage/sqlite/repository/peers.d.cts +19 -0
  568. package/storage/sqlite/repository/ref-messages.d.cts +16 -0
  569. package/storage/sqlite/types.d.cts +18 -0
  570. package/storage/storage.d.cts +55 -0
  571. package/types/errors.d.cts +53 -0
  572. package/types/index.d.cts +4 -0
  573. package/types/peers.d.cts +4 -0
  574. package/types/platform.d.cts +15 -0
  575. package/types/utils.d.cts +9 -0
  576. package/utils/abort-signal.d.cts +1 -0
  577. package/utils/bigint-utils.d.cts +18 -0
  578. package/utils/bigint-utils.test.d.cts +1 -0
  579. package/utils/binary/asn1-parser.d.cts +17 -0
  580. package/utils/crypto/abstract.d.cts +29 -0
  581. package/utils/crypto/factorization.d.cts +6 -0
  582. package/utils/crypto/factorization.test.d.cts +1 -0
  583. package/utils/crypto/index.d.cts +6 -0
  584. package/utils/crypto/keys.d.cts +27 -0
  585. package/utils/crypto/keys.test.d.cts +1 -0
  586. package/utils/crypto/miller-rabin.d.cts +2 -0
  587. package/utils/crypto/miller-rabin.test.d.cts +1 -0
  588. package/utils/crypto/mtproto.d.cts +31 -0
  589. package/utils/crypto/mtproto.test.d.cts +1 -0
  590. package/utils/crypto/password.d.cts +29 -0
  591. package/utils/crypto/password.test.d.cts +1 -0
  592. package/utils/dcs.d.cts +18 -0
  593. package/utils/early-timer.d.cts +41 -0
  594. package/utils/error-reporting.d.cts +3 -0
  595. package/utils/function-utils.d.cts +22 -0
  596. package/utils/function-utils.test.d.cts +1 -0
  597. package/utils/index.d.cts +20 -0
  598. package/utils/linked-list.d.cts +21 -0
  599. package/utils/linked-list.test.d.cts +1 -0
  600. package/utils/links/bots.d.cts +72 -0
  601. package/utils/links/bots.test.d.cts +1 -0
  602. package/utils/links/bundle.d.cts +7 -0
  603. package/utils/links/calls.d.cts +17 -0
  604. package/utils/links/chat.d.cts +47 -0
  605. package/utils/links/chat.test.d.cts +1 -0
  606. package/utils/links/common.d.cts +31 -0
  607. package/utils/links/index.d.cts +2 -0
  608. package/utils/links/misc.d.cts +26 -0
  609. package/utils/links/misc.test.d.cts +1 -0
  610. package/utils/links/proxy.d.cts +18 -0
  611. package/utils/links/proxy.test.d.cts +1 -0
  612. package/utils/links/stickers.d.cts +10 -0
  613. package/utils/links/user.d.cts +28 -0
  614. package/utils/links/user.test.d.cts +1 -0
  615. package/utils/logger.d.cts +54 -0
  616. package/utils/logger.test.d.cts +1 -0
  617. package/utils/long-utils.d.cts +67 -0
  618. package/utils/long-utils.test.d.cts +1 -0
  619. package/utils/misc-utils.d.cts +2 -0
  620. package/utils/peer-utils.d.cts +29 -0
  621. package/utils/peer-utils.test.d.cts +1 -0
  622. package/utils/sorted-array.d.cts +17 -0
  623. package/utils/sorted-array.test.d.cts +1 -0
  624. package/utils/timers.d.cts +1 -0
  625. package/utils/tl-json.d.cts +13 -0
  626. package/utils/tl-json.test.d.cts +1 -0
  627. package/utils/type-assertions.d.cts +29 -0
  628. package/utils/type-assertions.test.d.cts +1 -0
  629. package/utils.d.cts +1 -0
  630. package/worker.d.cts +1 -0
@@ -0,0 +1,417 @@
1
+ import { tl } from '@mtcute/tl';
2
+ import { InputInlineMessage } from '../inline-message/types.js';
3
+ export interface BaseInputInlineResult {
4
+ /**
5
+ * Unique ID of the result
6
+ */
7
+ id: string;
8
+ /**
9
+ * Message to send when the result is selected.
10
+ *
11
+ * By default, is automatically generated,
12
+ * and details about how it is generated can be found
13
+ * in subclasses' description
14
+ */
15
+ message?: InputInlineMessage;
16
+ }
17
+ /**
18
+ * Inline result containing an article.
19
+ *
20
+ * If `message` is not provided, a {@link InputInlineMessageText} is created
21
+ * with web preview enabled and text generated as follows:
22
+ * ```
23
+ * {{#if url}}
24
+ * <a href="{{url}}"><b>{{title}}</b></a>
25
+ * {{else}}
26
+ * <b>{{title}}</b>
27
+ * {{/if}}
28
+ * {{#if description}}
29
+ * {{description}}
30
+ * {{/if}}
31
+ * ```
32
+ * > Handlebars syntax is used. HTML tags are used to signify entities,
33
+ * > but in fact raw TL entity objects are created
34
+ */
35
+ export interface InputInlineResultArticle extends BaseInputInlineResult {
36
+ type: 'article';
37
+ /**
38
+ * Title of the result (must not be empty)
39
+ */
40
+ title: string;
41
+ /**
42
+ * Description of the result
43
+ */
44
+ description?: string;
45
+ /**
46
+ * URL of the article
47
+ */
48
+ url?: string;
49
+ /**
50
+ * Whether to prevent article URL from
51
+ * displaying by the client
52
+ *
53
+ * @default `false`
54
+ */
55
+ hideUrl?: boolean;
56
+ /**
57
+ * Article thumbnail URL (must be jpeg).
58
+ */
59
+ thumb?: string | tl.RawInputWebDocument;
60
+ }
61
+ /**
62
+ * Inline result containing an animation (silent mp4 or gif).
63
+ *
64
+ * If `message` is not provided, {@link InputInlineMessageMedia} is used
65
+ * with empty caption
66
+ */
67
+ export interface InputInlineResultGif extends BaseInputInlineResult {
68
+ type: 'gif';
69
+ /**
70
+ * The animation itself.
71
+ *
72
+ * Can be a URL, a TDLib and Bot API compatible File ID,
73
+ * or a TL object representing either of them.
74
+ */
75
+ media: string | tl.RawInputWebDocument | tl.RawInputDocument;
76
+ /**
77
+ * Media MIME type, only applicable to URLs.
78
+ *
79
+ * Usually unnecessary, since Telegram automatically infers it.
80
+ *
81
+ * @default `video/mp4`
82
+ */
83
+ mime?: string;
84
+ /**
85
+ * Title of the result
86
+ */
87
+ title?: string;
88
+ /**
89
+ * Title of the result
90
+ */
91
+ description?: string;
92
+ /**
93
+ * Animation thumbnail URL, only applicable in case `media` is a URL
94
+ *
95
+ * @default `media`
96
+ */
97
+ thumb?: string | tl.RawInputWebDocument;
98
+ /**
99
+ * Thumbnail MIME type
100
+ *
101
+ * @default `image/jpeg`
102
+ */
103
+ thumbMime?: string;
104
+ /**
105
+ * Width of the animation in pixels
106
+ */
107
+ width?: number;
108
+ /**
109
+ * Height of the animation in pixels
110
+ */
111
+ height?: number;
112
+ /**
113
+ * Duration of the animation in seconds
114
+ */
115
+ duration?: number;
116
+ }
117
+ /**
118
+ * Inline result containing a video (only MP4)
119
+ *
120
+ * If `message` is not provided, {@link InputInlineMessageMedia} is used
121
+ * with empty caption for non-embed videos, {@link InputInlineMessageText}
122
+ * is used with text containing the URL for embed videos.
123
+ */
124
+ export interface InputInlineResultVideo extends BaseInputInlineResult {
125
+ type: 'video';
126
+ /**
127
+ * The video itself, or a page containing an embedded video
128
+ *
129
+ * Can be a URL, a TDLib and Bot API compatible File ID,
130
+ * or a TL object representing either of them.
131
+ */
132
+ media: string | tl.RawInputWebDocument | tl.RawInputDocument;
133
+ /**
134
+ * In case `media` is a URL, whether that URL is a link
135
+ * to an embedded video player.
136
+ */
137
+ isEmbed?: boolean;
138
+ /**
139
+ * Title of the result
140
+ */
141
+ title: string;
142
+ /**
143
+ * Description of the result
144
+ */
145
+ description?: string;
146
+ /**
147
+ * Video thumbnail URL (must be jpeg), only applicable in case `media` is a URL.
148
+ *
149
+ * Must be provided explicitly if this is a video loaded by URL.
150
+ *
151
+ * @default `media`
152
+ */
153
+ thumb?: string | tl.RawInputWebDocument;
154
+ /**
155
+ * Width of the video in pixels
156
+ */
157
+ width?: number;
158
+ /**
159
+ * Height of the video in pixels
160
+ */
161
+ height?: number;
162
+ /**
163
+ * Duration of the video in seconds
164
+ */
165
+ duration?: number;
166
+ }
167
+ /**
168
+ * Inline result containing an audio file
169
+ *
170
+ * If `message` is not provided, {@link InputInlineMessageMedia} is used
171
+ * with empty caption.
172
+ */
173
+ export interface InputInlineResultAudio extends BaseInputInlineResult {
174
+ type: 'audio';
175
+ /**
176
+ * The audio itself
177
+ *
178
+ * Can be a URL, a TDLib and Bot API compatible File ID,
179
+ * or a TL object representing either of them.
180
+ */
181
+ media: string | tl.RawInputWebDocument | tl.RawInputDocument;
182
+ /**
183
+ * MIME type of the audio file
184
+ *
185
+ * Usually unnecessary, since Telegram infers it automatically.
186
+ *
187
+ * @default `audio/mpeg`
188
+ */
189
+ mime?: string;
190
+ /**
191
+ * Title of the audio track
192
+ */
193
+ title: string;
194
+ /**
195
+ * Performer of the audio track
196
+ */
197
+ performer?: string;
198
+ /**
199
+ * Duration of the audio in seconds
200
+ */
201
+ duration?: number;
202
+ }
203
+ /**
204
+ * Inline result containing a voice note
205
+ *
206
+ * If `message` is not provided, {@link InputInlineMessageMedia} is used
207
+ * with empty caption.
208
+ */
209
+ export interface InputInlineResultVoice extends BaseInputInlineResult {
210
+ type: 'voice';
211
+ /**
212
+ * The voice itself (.ogg, preferably encoded with OPUS)
213
+ *
214
+ * Can be a URL, a TDLib and Bot API compatible File ID,
215
+ * or a TL object representing either of them.
216
+ */
217
+ media: string | tl.RawInputWebDocument | tl.RawInputDocument;
218
+ /**
219
+ * Title of the result
220
+ */
221
+ title: string;
222
+ /**
223
+ * Duration of the voice note in seconds
224
+ */
225
+ duration?: number;
226
+ }
227
+ /**
228
+ * Inline result containing a photo
229
+ *
230
+ * If `message` is not provided, {@link InputInlineMessageMedia} is used
231
+ * with empty caption.
232
+ */
233
+ export interface InputInlineResultPhoto extends BaseInputInlineResult {
234
+ type: 'photo';
235
+ /**
236
+ * The photo itself
237
+ *
238
+ * Can be a URL, a TDLib and Bot API compatible File ID,
239
+ * or a TL object representing either of them.
240
+ */
241
+ media: string | tl.RawInputWebDocument | tl.RawInputPhoto;
242
+ /**
243
+ * Title of the result
244
+ */
245
+ title?: string;
246
+ /**
247
+ * Description of the result
248
+ */
249
+ description?: string;
250
+ /**
251
+ * Width of the photo in pixels
252
+ */
253
+ width?: number;
254
+ /**
255
+ * Height of the photo in pixels
256
+ */
257
+ height?: number;
258
+ /**
259
+ * Photo thumbnail URL (must be jpeg), only applicable in case `media` is a URL
260
+ *
261
+ * @default `media`
262
+ */
263
+ thumb?: string | tl.RawInputWebDocument;
264
+ }
265
+ /**
266
+ * Inline result containing a sticker
267
+ *
268
+ * If `message` is not provided, {@link InputInlineMessageMedia} is used.
269
+ */
270
+ export interface InputInlineResultSticker extends BaseInputInlineResult {
271
+ type: 'sticker';
272
+ /**
273
+ * The sticker itself. Can't be a URL.
274
+ */
275
+ media: string | tl.RawInputDocument;
276
+ }
277
+ /**
278
+ * Inline result containing a document
279
+ *
280
+ * If `message` is not provided, {@link InputInlineMessageMedia} is used
281
+ * with empty caption.
282
+ */
283
+ export interface InputInlineResultFile extends BaseInputInlineResult {
284
+ type: 'file';
285
+ /**
286
+ * The file itself. When using URL, only PDF and ZIP are supported.
287
+ *
288
+ * Can be a URL, a TDLib and Bot API compatible File ID,
289
+ * or a TL object representing either of them.
290
+ */
291
+ media: string | tl.RawInputWebDocument | tl.RawInputDocument;
292
+ /**
293
+ * MIME type of the file.
294
+ *
295
+ * Due to some Telegram limitation, you can only send
296
+ * PDF and ZIP files from URL
297
+ * (`application/pdf` and `application/zip` MIMEs respectively).
298
+ *
299
+ * Must be provided if `media` is a URL
300
+ */
301
+ mime?: string;
302
+ /**
303
+ * Title of the result
304
+ */
305
+ title: string;
306
+ /**
307
+ * Description of the result
308
+ */
309
+ description?: string;
310
+ /**
311
+ * Photo thumbnail URL (must be jpeg), only applicable in case `media` is a URL
312
+ *
313
+ * @default `media`
314
+ */
315
+ thumb?: string | tl.RawInputWebDocument;
316
+ }
317
+ /**
318
+ * Inline result containing a geolocation.
319
+ *
320
+ * If `message` is not passed, a {@link InputInlineMessageGeo} is
321
+ * used, with the `latitude` and `longitude` parameters set
322
+ * accordingly
323
+ */
324
+ export interface InputInlineResultGeo extends BaseInputInlineResult {
325
+ type: 'geo';
326
+ /**
327
+ * Title of the result
328
+ */
329
+ title: string;
330
+ /**
331
+ * Latitude of the geolocation
332
+ */
333
+ latitude: number;
334
+ /**
335
+ * Longitude of the geolocation
336
+ */
337
+ longitude: number;
338
+ /**
339
+ * Location thumbnail URL (must be jpeg).
340
+ *
341
+ * By default, Telegram generates one based on
342
+ * the location set by `latitude` and `longitude`
343
+ */
344
+ thumb?: string | tl.RawInputWebDocument;
345
+ }
346
+ /**
347
+ * Inline result containing a venue.
348
+ *
349
+ * If `message` is not passed, {@link BotInlineMessage.venue} is used with
350
+ * given `latitude` and `longitude` were passed.
351
+ * If they weren't passed either, an error is thrown.
352
+ */
353
+ export interface InputInlineResultVenue extends BaseInputInlineResult {
354
+ type: 'venue';
355
+ /**
356
+ * Title of the venue
357
+ */
358
+ title: string;
359
+ /**
360
+ * Address of the venue
361
+ */
362
+ address: string;
363
+ /**
364
+ * Latitude of the geolocation
365
+ */
366
+ latitude?: number;
367
+ /**
368
+ * Longitude of the geolocation
369
+ */
370
+ longitude?: number;
371
+ /**
372
+ * Venue thumbnail URL (must be jpeg).
373
+ *
374
+ * By default, Telegram generates one based on
375
+ * the location in the `message`
376
+ */
377
+ thumb?: string | tl.RawInputWebDocument;
378
+ }
379
+ /**
380
+ * Inline result containing a game.
381
+ *
382
+ * If `message` is not passed, {@link InputInlineMessageGame} is used.
383
+ *
384
+ * Note that `message` can only be {@link InputInlineMessageGame}
385
+ */
386
+ export interface InputInlineResultGame extends BaseInputInlineResult {
387
+ type: 'game';
388
+ /**
389
+ * Short name of the game
390
+ */
391
+ shortName: string;
392
+ }
393
+ /**
394
+ * Inline result containing a contact.
395
+ *
396
+ * If `message` is not passed, {@link InputInlineMessageContact} is used.
397
+ */
398
+ export interface InputInlineResultContact extends BaseInputInlineResult {
399
+ type: 'contact';
400
+ /**
401
+ * First name of the contact
402
+ */
403
+ firstName: string;
404
+ /**
405
+ * Last name of the contact
406
+ */
407
+ lastName?: string;
408
+ /**
409
+ * Phone number of the contact
410
+ */
411
+ phone: string;
412
+ /**
413
+ * Contact thumbnail URL (i.e. their avatar) (must be jpeg)
414
+ */
415
+ thumb?: string | tl.RawInputWebDocument;
416
+ }
417
+ export type InputInlineResult = InputInlineResultArticle | InputInlineResultGif | InputInlineResultVideo | InputInlineResultAudio | InputInlineResultVoice | InputInlineResultPhoto | InputInlineResultSticker | InputInlineResultFile | InputInlineResultGeo | InputInlineResultVenue | InputInlineResultGame | InputInlineResultContact;
@@ -0,0 +1,38 @@
1
+ import { tl } from '@mtcute/tl';
2
+ import { InlineKeyboardMarkup, ReplyKeyboardMarkup } from './types.js';
3
+ export type ButtonLike = tl.TypeKeyboardButton | false | null | undefined | void;
4
+ /**
5
+ * Builder for bot keyboards
6
+ */
7
+ export declare class BotKeyboardBuilder {
8
+ readonly maxRowWidth: number | null;
9
+ private _buttons;
10
+ constructor(maxRowWidth?: number | null);
11
+ /**
12
+ * Add buttons, wrapping them once {@link maxRowWidth} is reached
13
+ *
14
+ * @param buttons Buttons to add
15
+ */
16
+ push(...buttons: (ButtonLike | (() => ButtonLike))[]): this;
17
+ /**
18
+ * Add a row of buttons. Will not be wrapped.
19
+ *
20
+ * @param row Row or a function that will populate it
21
+ */
22
+ row(row: ButtonLike[] | ((arr: ButtonLike[]) => void)): this;
23
+ /**
24
+ * Append a button to the last row, wrapping if needed.
25
+ *
26
+ * @param btn Button to add
27
+ * @param force Whether to forcefully add the button (i.e. do not wrap)
28
+ */
29
+ append(btn: ButtonLike | (() => ButtonLike), force?: boolean): this;
30
+ /**
31
+ * Return contents of this builder as an inline keyboard
32
+ */
33
+ asInline(): InlineKeyboardMarkup;
34
+ /**
35
+ * Return contents of this builder as a reply keyboard
36
+ */
37
+ asReply(params?: Omit<ReplyKeyboardMarkup, 'type' | 'buttons'>): ReplyKeyboardMarkup;
38
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,208 @@
1
+ import { InlineKeyboardMarkup, ReplyKeyboardForceReply, ReplyKeyboardHide, ReplyKeyboardMarkup, ReplyMarkup } from './types.js';
2
+ import { tl } from '@mtcute/tl';
3
+ import { BotKeyboardBuilder } from './builder.js';
4
+ /** Create a keyboard builder */
5
+ export declare function builder(maxRowWidth?: number | null): BotKeyboardBuilder;
6
+ /**
7
+ * Create an inline keyboard markup
8
+ *
9
+ * @param buttons Two-dimensional array of buttons
10
+ */
11
+ export declare function inline(buttons: tl.TypeKeyboardButton[][]): InlineKeyboardMarkup;
12
+ /**
13
+ * Create a reply keyboard markup
14
+ *
15
+ * @param buttons Two-dimensional array of buttons
16
+ * @param params Additional parameters for the keyboard
17
+ */
18
+ export declare function reply(buttons: tl.TypeKeyboardButton[][], params?: Omit<ReplyKeyboardMarkup, 'type' | 'buttons'>): ReplyKeyboardMarkup;
19
+ /**
20
+ * Hide the previously sent reply keyboard
21
+ *
22
+ * @param selective
23
+ * Whether to remove the keyboard for specific users only. Targets:
24
+ * - users that are @mentioned in the text of the Message
25
+ * - in case this is a reply, sender of the original message
26
+ */
27
+ export declare function hideReply(selective?: boolean): ReplyKeyboardHide;
28
+ /**
29
+ * Force the user to send a reply
30
+ */
31
+ export declare function forceReply(params?: Omit<ReplyKeyboardForceReply, 'type'>): ReplyKeyboardForceReply;
32
+ /**
33
+ * Create a text-only keyboard button.
34
+ *
35
+ * Used for reply keyboards, not inline!
36
+ *
37
+ * @param text Button text
38
+ */
39
+ export declare function text(text: string): tl.RawKeyboardButton;
40
+ /**
41
+ * Create a keyboard button requesting for user's contact.
42
+ * Available only for private chats.
43
+ *
44
+ * Used for reply keyboards, not inline!
45
+ *
46
+ * @param text Button text
47
+ */
48
+ export declare function requestContact(text: string): tl.RawKeyboardButtonRequestPhone;
49
+ /**
50
+ * Create a keyboard button requesting for user's geo location.
51
+ * Available only for private chats.
52
+ *
53
+ * Used for reply keyboards, not inline!
54
+ *
55
+ * @param text Button text
56
+ */
57
+ export declare function requestGeo(text: string): tl.RawKeyboardButtonRequestGeoLocation;
58
+ /**
59
+ * Create a keyboard button requesting the user to create and send a poll.
60
+ * Available only for private chats.
61
+ *
62
+ * Used for reply keyboards, not inline!
63
+ *
64
+ * @param text Button text
65
+ * @param quiz If set, only quiz polls can be sent
66
+ */
67
+ export declare function requestPoll(text: string, quiz?: boolean): tl.RawKeyboardButtonRequestPoll;
68
+ /**
69
+ * Create a keyboard button with a link.
70
+ *
71
+ * Used for inline keyboards, not reply!
72
+ *
73
+ * @param text Button text
74
+ * @param url URL
75
+ */
76
+ export declare function url(text: string, url: string): tl.RawKeyboardButtonUrl;
77
+ /**
78
+ * Create a keyboard button with a link.
79
+ *
80
+ * Used for inline keyboards, not reply!
81
+ *
82
+ * @param text Button text
83
+ * @param data Callback data (1-64 bytes). String will be converted to `Buffer`
84
+ * @param requiresPassword
85
+ * Whether the user should verify their identity by entering 2FA password.
86
+ * See more: {@link tl.RawKeyboardButtonCallback#requiresPassword}
87
+ */
88
+ export declare function callback(text: string, data: string | Uint8Array, requiresPassword?: boolean): tl.RawKeyboardButtonCallback;
89
+ /**
90
+ * Button to force a user to switch to inline mode.
91
+ *
92
+ * Pressing the button will prompt the user to select
93
+ * one of their chats, open that chat and insert the bot‘s
94
+ * username and the specified inline query (if any) in the input field.
95
+ *
96
+ * Used for inline keyboards, not reply!
97
+ *
98
+ * @param text Button text
99
+ * @param query Inline query (can be empty or omitted)
100
+ * @param currentChat
101
+ * If set, pressing the button will insert the bot's username
102
+ * and the specified inline query in the current chat's input field
103
+ */
104
+ export declare function switchInline(text: string, query?: string, currentChat?: boolean): tl.RawKeyboardButtonSwitchInline;
105
+ /**
106
+ * Button to start a game
107
+ *
108
+ * Used for inline keyboards, not reply!
109
+ *
110
+ * **Note**: This type of button must always be
111
+ * the first button in the first row. ID of the
112
+ * game is inferred from {@link InputMedia.game},
113
+ * thus this button should only be used with it.
114
+ */
115
+ export declare function game(text: string): tl.RawKeyboardButtonGame;
116
+ /**
117
+ * Button to pay for a product.
118
+ *
119
+ * Used for inline keyboards, not reply!
120
+ *
121
+ * **Note**: This type of button must always be
122
+ * the first button in the first row. Related
123
+ * invoice is inferred from {@link InputMedia.invoice},
124
+ * thus this button should only be used with it.
125
+ */
126
+ export declare function pay(text: string): tl.RawKeyboardButtonBuy;
127
+ /**
128
+ * Button to authorize a user
129
+ *
130
+ * Used for inline keyboards, not reply!
131
+ *
132
+ * @param text Button label
133
+ * @param url Authorization URL (see {@link tl.RawInputKeyboardButtonUrlAuth})
134
+ * @param params
135
+ */
136
+ export declare function urlAuth(text: string, url: string, params?: {
137
+ /**
138
+ * Button label when forwarded
139
+ */
140
+ fwdText?: string;
141
+ /**
142
+ * Whether to request the permission for
143
+ * your bot to send messages to the user
144
+ */
145
+ requestWriteAccess?: boolean;
146
+ /**
147
+ * Bot, which will be used for user authorization.
148
+ * `url` domain must be the same as the domain linked
149
+ * with the bot.
150
+ *
151
+ * @default current bot
152
+ */
153
+ bot?: tl.TypeInputUser;
154
+ }): tl.RawInputKeyboardButtonUrlAuth;
155
+ /**
156
+ * Button to open webview
157
+ *
158
+ * Used for both inline keyboards and reply ones
159
+ *
160
+ * @param text Button label
161
+ * @param url WebView URL
162
+ */
163
+ export declare function webView(text: string, url: string): tl.RawKeyboardButtonWebView;
164
+ /**
165
+ * Button to open user profile
166
+ *
167
+ * @param text Text of the button
168
+ * @param user User to be opened (use {@link TelegramClient.resolvePeer})
169
+ */
170
+ export declare function userProfile(text: string, user: tl.TypeInputPeer): tl.RawInputKeyboardButtonUserProfile;
171
+ /**
172
+ * Button to request a peer from the user
173
+ *
174
+ * @param text Text of the button
175
+ * @param buttonId ID of the button that will later be passed to the service message
176
+ */
177
+ export declare function requestPeer(text: string, buttonId: number, params: {
178
+ /**
179
+ * Peer type, along with filters
180
+ */
181
+ peerType: tl.TypeRequestPeerType;
182
+ /**
183
+ * Maximum number of peers to be selected
184
+ *
185
+ * @default 1
186
+ */
187
+ count?: number;
188
+ }): tl.RawKeyboardButtonRequestPeer;
189
+ /**
190
+ * Button to copy text to the user's clipboard
191
+ */
192
+ export declare function copy(params: {
193
+ text: string;
194
+ copyText?: string;
195
+ }): tl.RawKeyboardButtonCopy;
196
+ /**
197
+ * Find a button in the keyboard by its text or by predicate
198
+ *
199
+ * @param buttons Two-dimensional array of buttons
200
+ * @param predicate Button text or predicate function
201
+ */
202
+ export declare function findButton(buttons: tl.TypeKeyboardButton[][], predicate: string | ((btn: tl.TypeKeyboardButton) => boolean)): tl.TypeKeyboardButton | null;
203
+ /** @internal */
204
+ export declare function _rowsTo2d(rows: tl.RawKeyboardButtonRow[]): tl.TypeKeyboardButton[][];
205
+ /** @internal */
206
+ export declare function _2dToRows(arr: tl.TypeKeyboardButton[][], inline: boolean): tl.RawKeyboardButtonRow[];
207
+ /** @internal */
208
+ export declare function _convertToTl(obj?: ReplyMarkup): tl.TypeReplyMarkup | undefined;
@@ -0,0 +1,15 @@
1
+ import * as BotKeyboard from './factories.js';
2
+ export * from './builder.js';
3
+ export * from './types.js';
4
+ export {
5
+ /**
6
+ * Convenience methods wrapping TL
7
+ * objects creation for bot keyboard buttons.
8
+ *
9
+ * You can also use the type-discriminated objects directly.
10
+ *
11
+ * > **Note**: Button creation functions are intended to be used
12
+ * > with inline reply markup, unless stated otherwise
13
+ * > in the description.
14
+ */
15
+ BotKeyboard, };