@mtkruto/node 0.0.990 → 0.0.992

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 (254) hide show
  1. package/esm/1_utilities.d.ts +12 -0
  2. package/esm/1_utilities.js +12 -0
  3. package/esm/2_connection.d.ts +2 -0
  4. package/esm/2_connection.js +2 -0
  5. package/esm/2_tl.d.ts +10 -0
  6. package/esm/2_tl.js +10 -0
  7. package/esm/3_storage.d.ts +6 -0
  8. package/esm/3_storage.js +6 -0
  9. package/esm/3_transport.d.ts +4 -0
  10. package/esm/3_transport.js +4 -0
  11. package/esm/3_types.d.ts +35 -0
  12. package/esm/3_types.js +35 -0
  13. package/esm/{constants.d.ts → 4_constants.d.ts} +2 -2
  14. package/esm/{constants.js → 4_constants.js} +1 -1
  15. package/esm/5_client.d.ts +2 -0
  16. package/esm/5_client.js +2 -0
  17. package/esm/client/0_html.d.ts +1 -1
  18. package/esm/client/0_html.js +1 -1
  19. package/esm/client/0_message.d.ts +1 -2
  20. package/esm/client/0_message.js +7 -14
  21. package/esm/client/0_password.d.ts +2 -2
  22. package/esm/client/0_password.js +2 -4
  23. package/esm/client/0_utilities.d.ts +3 -5
  24. package/esm/client/0_utilities.js +3 -22
  25. package/esm/client/1_client_abstract.d.ts +2 -2
  26. package/esm/client/1_client_abstract.js +3 -3
  27. package/esm/client/2_client_plain.d.ts +3 -3
  28. package/esm/client/2_client_plain.js +13 -20
  29. package/esm/client/3_client.d.ts +43 -18
  30. package/esm/client/3_client.js +107 -46
  31. package/esm/connection/0_connection.d.ts +1 -1
  32. package/esm/connection/1_connection_web_socket.js +1 -1
  33. package/esm/mod.d.ts +7 -21
  34. package/esm/mod.js +7 -21
  35. package/esm/storage/0_storage.d.ts +4 -5
  36. package/esm/storage/0_storage.js +3 -8
  37. package/esm/storage/0_utilities.js +2 -2
  38. package/esm/storage/1_storage_local_storage.d.ts +1 -1
  39. package/esm/storage/1_storage_memory.d.ts +1 -1
  40. package/esm/storage/1_storage_session_storage.d.ts +1 -1
  41. package/esm/tl/0_tl_raw_reader.js +1 -1
  42. package/esm/tl/0_tl_raw_writer.js +1 -1
  43. package/esm/tl/1_tl_object.js +1 -1
  44. package/esm/tl/3_deserialize.js +1 -1
  45. package/esm/tl/3_utilities.d.ts +3 -0
  46. package/esm/tl/3_utilities.js +20 -0
  47. package/esm/tl/4_tl_writer.js +1 -1
  48. package/esm/transport/0_obfuscation.d.ts +2 -2
  49. package/esm/transport/0_obfuscation.js +1 -2
  50. package/esm/transport/0_transport.d.ts +1 -2
  51. package/esm/transport/1_transport_abridged.d.ts +1 -1
  52. package/esm/transport/1_transport_abridged.js +1 -1
  53. package/esm/transport/1_transport_intermediate.d.ts +1 -1
  54. package/esm/transport/1_transport_intermediate.js +1 -1
  55. package/esm/transport/2_transport_provider.d.ts +1 -1
  56. package/esm/transport/2_transport_provider.js +1 -1
  57. package/esm/types/!0_file_id.js +6 -9
  58. package/esm/types/!0_misc.d.ts +7 -0
  59. package/esm/types/!0_misc.js +1 -0
  60. package/esm/types/0_audio.d.ts +3 -3
  61. package/esm/types/0_audio.js +1 -1
  62. package/esm/types/0_chat_administrator_rights.d.ts +1 -1
  63. package/esm/types/0_chat_administrator_rights.js +1 -1
  64. package/esm/types/0_chat_photo.d.ts +3 -3
  65. package/esm/types/0_chat_photo.js +1 -1
  66. package/esm/types/0_color.d.ts +2 -0
  67. package/esm/types/0_color.js +16 -0
  68. package/esm/types/0_contact.d.ts +2 -2
  69. package/esm/types/0_dice.d.ts +1 -1
  70. package/esm/types/0_force_reply.d.ts +1 -1
  71. package/esm/types/0_force_reply.js +1 -1
  72. package/esm/types/0_location.d.ts +1 -1
  73. package/esm/types/0_location.js +1 -2
  74. package/esm/types/0_mask_position.d.ts +1 -1
  75. package/esm/types/0_message_entity.d.ts +5 -5
  76. package/esm/types/0_message_entity.js +1 -1
  77. package/esm/types/0_poll_option.d.ts +1 -1
  78. package/esm/types/0_reply_keyboard_remove.d.ts +1 -1
  79. package/esm/types/0_reply_keyboard_remove.js +2 -2
  80. package/esm/types/0_thumbnail.d.ts +2 -2
  81. package/esm/types/0_thumbnail.js +1 -1
  82. package/esm/types/0_venue.d.ts +1 -1
  83. package/esm/types/0_venue.js +1 -2
  84. package/esm/types/0_voice.d.ts +3 -3
  85. package/esm/types/0_web_app_info.d.ts +2 -2
  86. package/esm/types/1_animation.d.ts +3 -3
  87. package/esm/types/1_animation.js +1 -1
  88. package/esm/types/1_chat.d.ts +5 -4
  89. package/esm/types/1_chat.js +8 -9
  90. package/esm/types/1_document.d.ts +4 -4
  91. package/esm/types/1_document.js +1 -1
  92. package/esm/types/1_inline_keyboard_button.d.ts +4 -4
  93. package/esm/types/1_inline_keyboard_button.js +2 -2
  94. package/esm/types/1_keyboard_button.d.ts +8 -8
  95. package/esm/types/1_keyboard_button.js +2 -2
  96. package/esm/types/1_photo.d.ts +2 -2
  97. package/esm/types/1_photo.js +1 -1
  98. package/esm/types/1_poll.d.ts +8 -8
  99. package/esm/types/1_poll.js +1 -1
  100. package/esm/types/1_sticker.d.ts +3 -3
  101. package/esm/types/1_sticker.js +1 -2
  102. package/esm/types/1_user.d.ts +4 -3
  103. package/esm/types/1_user.js +4 -4
  104. package/esm/types/1_video.d.ts +3 -3
  105. package/esm/types/1_video.js +1 -1
  106. package/esm/types/1_video_note.d.ts +2 -2
  107. package/esm/types/1_video_note.js +1 -1
  108. package/esm/types/2_game.d.ts +3 -3
  109. package/esm/types/2_game.js +2 -3
  110. package/esm/types/2_inline_keyboard_markup.d.ts +2 -2
  111. package/esm/types/2_inline_keyboard_markup.js +1 -1
  112. package/esm/types/2_inline_query.d.ts +19 -0
  113. package/esm/types/2_inline_query.js +41 -0
  114. package/esm/types/2_reply_keyboard_markup.d.ts +2 -2
  115. package/esm/types/2_reply_keyboard_markup.js +1 -1
  116. package/esm/types/3_message.d.ts +23 -23
  117. package/esm/types/3_message.js +19 -18
  118. package/esm/types/4_callback_query.d.ts +14 -0
  119. package/esm/types/4_callback_query.js +24 -0
  120. package/esm/utilities/0_base64.js +1 -1
  121. package/esm/utilities/0_crypto.js +1 -1
  122. package/esm/utilities/0_queue.js +1 -1
  123. package/esm/utilities/1_auth.js +1 -1
  124. package/package.json +1 -1
  125. package/script/1_utilities.d.ts +12 -0
  126. package/script/1_utilities.js +28 -0
  127. package/script/2_connection.d.ts +2 -0
  128. package/script/2_connection.js +18 -0
  129. package/script/2_tl.d.ts +10 -0
  130. package/script/2_tl.js +40 -0
  131. package/script/3_storage.d.ts +6 -0
  132. package/script/3_storage.js +22 -0
  133. package/script/3_transport.d.ts +4 -0
  134. package/script/3_transport.js +20 -0
  135. package/script/3_types.d.ts +35 -0
  136. package/script/3_types.js +51 -0
  137. package/script/{constants.d.ts → 4_constants.d.ts} +2 -2
  138. package/script/{constants.js → 4_constants.js} +1 -1
  139. package/script/5_client.d.ts +2 -0
  140. package/script/5_client.js +18 -0
  141. package/script/client/0_html.d.ts +1 -1
  142. package/script/client/0_html.js +2 -2
  143. package/script/client/0_message.d.ts +1 -2
  144. package/script/client/0_message.js +32 -39
  145. package/script/client/0_password.d.ts +2 -2
  146. package/script/client/0_password.js +20 -22
  147. package/script/client/0_utilities.d.ts +3 -5
  148. package/script/client/0_utilities.js +24 -68
  149. package/script/client/1_client_abstract.d.ts +2 -2
  150. package/script/client/1_client_abstract.js +6 -6
  151. package/script/client/2_client_plain.d.ts +3 -3
  152. package/script/client/2_client_plain.js +45 -52
  153. package/script/client/3_client.d.ts +43 -18
  154. package/script/client/3_client.js +342 -305
  155. package/script/connection/0_connection.d.ts +1 -1
  156. package/script/connection/1_connection_web_socket.js +5 -5
  157. package/script/mod.d.ts +7 -21
  158. package/script/mod.js +17 -45
  159. package/script/storage/0_storage.d.ts +4 -5
  160. package/script/storage/0_storage.js +11 -39
  161. package/script/storage/0_utilities.js +6 -6
  162. package/script/storage/1_storage_local_storage.d.ts +1 -1
  163. package/script/storage/1_storage_memory.d.ts +1 -1
  164. package/script/storage/1_storage_session_storage.d.ts +1 -1
  165. package/script/tl/0_tl_raw_reader.js +6 -6
  166. package/script/tl/0_tl_raw_writer.js +7 -7
  167. package/script/tl/1_tl_object.js +3 -3
  168. package/script/tl/3_deserialize.js +2 -2
  169. package/script/tl/3_utilities.d.ts +3 -0
  170. package/script/tl/3_utilities.js +48 -0
  171. package/script/tl/4_tl_writer.js +2 -2
  172. package/script/transport/0_obfuscation.d.ts +2 -2
  173. package/script/transport/0_obfuscation.js +5 -6
  174. package/script/transport/0_transport.d.ts +1 -2
  175. package/script/transport/1_transport_abridged.d.ts +1 -1
  176. package/script/transport/1_transport_abridged.js +3 -3
  177. package/script/transport/1_transport_intermediate.d.ts +1 -1
  178. package/script/transport/1_transport_intermediate.js +3 -3
  179. package/script/transport/2_transport_provider.d.ts +1 -1
  180. package/script/transport/2_transport_provider.js +2 -2
  181. package/script/types/!0_file_id.js +24 -27
  182. package/script/types/!0_misc.d.ts +7 -0
  183. package/script/types/!0_misc.js +2 -0
  184. package/script/types/0_audio.d.ts +3 -3
  185. package/script/types/0_audio.js +2 -25
  186. package/script/types/0_chat_administrator_rights.d.ts +1 -1
  187. package/script/types/0_chat_administrator_rights.js +2 -25
  188. package/script/types/0_chat_photo.d.ts +3 -3
  189. package/script/types/0_chat_photo.js +2 -25
  190. package/script/types/0_color.d.ts +2 -0
  191. package/script/types/{!0_id_color.js → 0_color.js} +10 -10
  192. package/script/types/0_contact.d.ts +2 -2
  193. package/script/types/0_dice.d.ts +1 -1
  194. package/script/types/0_force_reply.d.ts +1 -1
  195. package/script/types/0_force_reply.js +2 -25
  196. package/script/types/0_location.d.ts +1 -1
  197. package/script/types/0_location.js +5 -29
  198. package/script/types/0_mask_position.d.ts +1 -1
  199. package/script/types/0_message_entity.d.ts +5 -5
  200. package/script/types/0_message_entity.js +39 -62
  201. package/script/types/0_poll_option.d.ts +1 -1
  202. package/script/types/0_reply_keyboard_remove.d.ts +1 -1
  203. package/script/types/0_reply_keyboard_remove.js +4 -27
  204. package/script/types/0_thumbnail.d.ts +2 -2
  205. package/script/types/0_thumbnail.js +2 -25
  206. package/script/types/0_venue.d.ts +1 -1
  207. package/script/types/0_venue.js +2 -26
  208. package/script/types/0_voice.d.ts +3 -3
  209. package/script/types/0_web_app_info.d.ts +2 -2
  210. package/script/types/1_animation.d.ts +3 -3
  211. package/script/types/1_animation.js +2 -25
  212. package/script/types/1_chat.d.ts +5 -4
  213. package/script/types/1_chat.js +20 -44
  214. package/script/types/1_document.d.ts +4 -4
  215. package/script/types/1_document.js +2 -25
  216. package/script/types/1_inline_keyboard_button.d.ts +4 -4
  217. package/script/types/1_inline_keyboard_button.js +19 -42
  218. package/script/types/1_keyboard_button.d.ts +8 -8
  219. package/script/types/1_keyboard_button.js +24 -47
  220. package/script/types/1_photo.d.ts +2 -2
  221. package/script/types/1_photo.js +4 -27
  222. package/script/types/1_poll.d.ts +8 -8
  223. package/script/types/1_poll.js +2 -2
  224. package/script/types/1_sticker.d.ts +3 -3
  225. package/script/types/1_sticker.js +6 -30
  226. package/script/types/1_user.d.ts +4 -3
  227. package/script/types/1_user.js +6 -29
  228. package/script/types/1_video.d.ts +3 -3
  229. package/script/types/1_video.js +2 -25
  230. package/script/types/1_video_note.d.ts +2 -2
  231. package/script/types/1_video_note.js +2 -25
  232. package/script/types/2_game.d.ts +3 -3
  233. package/script/types/2_game.js +6 -30
  234. package/script/types/2_inline_keyboard_markup.d.ts +2 -2
  235. package/script/types/2_inline_keyboard_markup.js +3 -26
  236. package/script/types/2_inline_query.d.ts +19 -0
  237. package/script/types/2_inline_query.js +45 -0
  238. package/script/types/2_reply_keyboard_markup.d.ts +2 -2
  239. package/script/types/2_reply_keyboard_markup.js +3 -26
  240. package/script/types/3_message.d.ts +23 -23
  241. package/script/types/3_message.js +97 -119
  242. package/script/types/4_callback_query.d.ts +14 -0
  243. package/script/types/4_callback_query.js +28 -0
  244. package/script/utilities/0_base64.js +3 -3
  245. package/script/utilities/0_crypto.js +3 -3
  246. package/script/utilities/0_queue.js +2 -2
  247. package/script/utilities/1_auth.js +5 -5
  248. package/esm/types/!0_id_color.d.ts +0 -1
  249. package/esm/types/!0_id_color.js +0 -16
  250. package/script/types/!0_id_color.d.ts +0 -1
  251. /package/esm/{deps.d.ts → 0_deps.d.ts} +0 -0
  252. /package/esm/{deps.js → 0_deps.js} +0 -0
  253. /package/script/{deps.d.ts → 0_deps.d.ts} +0 -0
  254. /package/script/{deps.js → 0_deps.js} +0 -0
@@ -1,10 +1,10 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { Thumbnail } from "./0_thumbnail.js";
3
3
  /** This object represents an audio file to be treated as music by the Telegram clients. */
4
4
  export interface Audio {
5
5
  /** Identifier for this file, which can be used to download or reuse the file */
6
6
  fileId: string;
7
- /** Unique identifier for this file, which is supposed to be the same over time and for different bots. Can't be used to download or reuse the file. */
7
+ /** Unique identifier for this file, which is supposed to be the same over time and for different users and bots. Can't be used to download or reuse the file. */
8
8
  fileUniqueId: string;
9
9
  /** Duration of the audio in seconds as defined by sender */
10
10
  duration: number;
@@ -14,7 +14,7 @@ export interface Audio {
14
14
  title?: string;
15
15
  /** MIME type of the file as defined by sender */
16
16
  mimeType: string;
17
- /** File size in bytes. It can be bigger than 2^31 and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a signed 64-bit integer or double-precision float type are safe for storing this value. */
17
+ /** File size in bytes */
18
18
  fileSize: number;
19
19
  /** Thumbnail of the album cover to which the music file belongs */
20
20
  thumbnails: Thumbnail[];
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { constructThumbnail } from "./0_thumbnail.js";
3
3
  export function constructAudio(document, audioAttribute, fileId, fileUniqueId) {
4
4
  return {
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  /** Represents the rights of an administrator in a chat. */
3
3
  export interface ChatAdministratorRights {
4
4
  /** True, if the user's presence in the chat is hidden */
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  export function constructChatAdministratorRights(rights_) {
3
3
  const rights = {
4
4
  isAnonymous: rights_.anonymous || false,
@@ -1,13 +1,13 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  export declare namespace ChatPhoto {
3
3
  interface Base {
4
4
  /** File identifier of small (160x160) chat photo. This file_id can be used only for photo download and only for as long as the photo is not changed. */
5
5
  smallFileId: string;
6
- /** Unique file identifier of small (160x160) chat photo, which is supposed to be the same over time and for different bots. Can't be used to download or reuse the file. */
6
+ /** Unique file identifier of small (160x160) chat photo, which is supposed to be the same over time and for different users and bots. Can't be used to download or reuse the file. */
7
7
  smallFileUniqueId: string;
8
8
  /** File identifier of big (640x640) chat photo. This file_id can be used only for photo download and only for as long as the photo is not changed. */
9
9
  bigFileId: string;
10
- /** Unique file identifier of big (640x640) chat photo, which is supposed to be the same over time and for different bots. Can't be used to download or reuse the file. */
10
+ /** Unique file identifier of big (640x640) chat photo, which is supposed to be the same over time and for different users and bots. Can't be used to download or reuse the file. */
11
11
  bigFileUniqueId: string;
12
12
  /** True, if an [animated profile picture](https://core.telegram.org/api/files#animated-profile-pictures) is available for the user */
13
13
  hasVideo: boolean;
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { FileID, FileType, FileUniqueID, FileUniqueType, ThumbnailSource } from "./!0_file_id.js";
3
3
  export function constructChatPhoto(photo, chatId, chatAccessHash) {
4
4
  const smallFileId = new FileID(null, null, FileType.ChatPhoto, photo.dcId, {
@@ -0,0 +1,2 @@
1
+ export type Color = "red" | "orange" | "violet" | "green" | "cyan" | "blue" | "pink";
2
+ export declare function getColor(id: number): Color;
@@ -0,0 +1,16 @@
1
+ const colors = [
2
+ "red",
3
+ "orange",
4
+ "violet",
5
+ "green",
6
+ "cyan",
7
+ "blue",
8
+ "pink",
9
+ ];
10
+ export function getColor(id) {
11
+ id = Number(String(id).replaceAll("-100", "-"));
12
+ if (id < 0) {
13
+ id = -id;
14
+ }
15
+ return colors[id % 7];
16
+ }
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  /** This object represents a phone contact. */
3
3
  export interface Contact {
4
4
  /** Contact's phone number */
@@ -7,7 +7,7 @@ export interface Contact {
7
7
  firstName: string;
8
8
  /** Contact's last name */
9
9
  lastName?: string;
10
- /** Contact's user identifier in Telegram. This number may have more than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a 64-bit integer or double-precision float type are safe for storing this identifier. */
10
+ /** Contact's user identifier in Telegram */
11
11
  userId?: number;
12
12
  /** Additional data about the contact in the form of a [vCard](https://en.wikipedia.org/wiki/VCard) */
13
13
  vcard?: string;
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  /** This object represents an animated emoji that displays a random value. */
3
3
  export interface Dice {
4
4
  /** Emoji on which the dice throw animation is based */
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  /** Upon receiving a message with this object, Telegram clients will display a reply interface to the user (act as if the user has selected the bot's message and tapped 'Reply'). This can be extremely useful if you want to create user-friendly step-by-step interfaces without having to sacrifice privacy mode. */
3
3
  export interface ForceReply {
4
4
  /** Shows reply interface to the user, as if they manually selected the bot's message and tapped 'Reply' */
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  export function constructForceReply(replyMarkup_) {
3
3
  const replyMarkup = { forceReply: true };
4
4
  if (replyMarkup_.placeholder) {
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  /** This object represents a point on the map. */
3
3
  export interface Location {
4
4
  /** Latitude as defined by sender */
@@ -1,5 +1,4 @@
1
- import { as } from "../tl/1_tl_object.js";
2
- import * as types from "../tl/2_types.js";
1
+ import { as, types } from "../2_tl.js";
3
2
  export function constructLocation(geo_) {
4
3
  if (geo_ instanceof types.MessageMediaGeo) {
5
4
  const geo = geo_.geo[as](types.GeoPoint);
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  /** This object describes the position on faces where a mask should be placed by default. */
3
3
  export interface MaskPosition {
4
4
  /** The part of the face relative to which the mask should be placed. One of "forehead", "eyes", "mouth", or "chin". */
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  export type MessageEntityType = "mention" | "hashtag" | "bot_command" | "url" | "email" | "bold" | "italic" | "code" | "pre" | "text_link" | "text_mention" | "cashtag" | "phone_number" | "underline" | "strikethrough" | "blockquote" | "bank_card" | "spoiler" | "custom_emoji";
3
3
  export declare namespace MessageEntity {
4
4
  interface Base {
@@ -31,7 +31,7 @@ export declare namespace MessageEntity {
31
31
  }
32
32
  interface Pre extends Base {
33
33
  type: "pre";
34
- /** For pre only, the programming language of the entity text */
34
+ /** For "pre" only, the programming language of the entity text */
35
35
  language: string;
36
36
  }
37
37
  interface Code extends Base {
@@ -39,12 +39,12 @@ export declare namespace MessageEntity {
39
39
  }
40
40
  interface TextLink extends Base {
41
41
  type: "text_link";
42
- /** For text_link only, URL that will be opened after user taps on the text */
42
+ /** For "text_link" only, URL that will be opened after user taps on the text */
43
43
  url: string;
44
44
  }
45
45
  interface TextMention extends Base {
46
46
  type: "text_mention";
47
- /** For text_mention only, the ID of the mentioned user */
47
+ /** For "text_mention" only, the ID of the mentioned user */
48
48
  userId: number;
49
49
  }
50
50
  interface Cashtag extends Base {
@@ -70,7 +70,7 @@ export declare namespace MessageEntity {
70
70
  }
71
71
  interface CustomEmoji extends Base {
72
72
  type: "custom_emoji";
73
- /** For custom_emoji only, unique identifier of the custom emoji */
73
+ /** For "custom_emoji" only, unique identifier of the custom emoji */
74
74
  customEmojiId: string;
75
75
  }
76
76
  }
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  export function constructMessageEntity(obj) {
3
3
  if (obj instanceof types.MessageEntityMention) {
4
4
  return { type: "mention", offset: obj.offset, length: obj.length };
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  export interface PollOption {
3
3
  /** Option text, 1-100 characters */
4
4
  text: string;
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  /** Upon receiving a message with this object, Telegram clients will remove the current custom keyboard and display the default letter-keyboard. By default, custom keyboards are displayed until a new keyboard is sent by a bot. An exception is made for one-time keyboards that are hidden immediately after the user presses a button. */
3
3
  export interface ReplyKeyboardRemove {
4
4
  /** Requests clients to remove the custom keyboard (user will not be able to summon this keyboard; if you want to hide the keyboard from sight but keep it accessible, use _one_time_keyboard_ in `ReplyKeyboardMarkup`) */
@@ -1,5 +1,5 @@
1
- import { cleanObject } from "../utilities/0_object.js";
2
- import * as types from "../tl/2_types.js";
1
+ import { cleanObject } from "../1_utilities.js";
2
+ import { types } from "../2_tl.js";
3
3
  export function constructReplyKeyboardRemove(replyMarkup_) {
4
4
  return cleanObject({ removeKeyboard: true, selective: replyMarkup_.selective });
5
5
  }
@@ -1,9 +1,9 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  /** This object represents thumbnail of a file or a sticker. */
3
3
  export interface Thumbnail {
4
4
  /** Identifier for this file, which can be used to download or reuse the file */
5
5
  fileId: string;
6
- /** Unique identifier for this file, which is supposed to be the same over time and for different bots. Can't be used to download or reuse the file. */
6
+ /** Unique identifier for this file, which is supposed to be the same over time and for different users and bots. Can't be used to download or reuse the file. */
7
7
  fileUniqueId: string;
8
8
  /** Photo width */
9
9
  width: number;
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { FileID, FileType, FileUniqueID, FileUniqueType, ThumbnailSource } from "./!0_file_id.js";
3
3
  export function constructThumbnail(size, file) {
4
4
  const fileType = file instanceof types.Photo ? FileType.Photo : FileType.Document;
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { Location } from "./0_location.js";
3
3
  /** */
4
4
  export interface Venue {
@@ -1,5 +1,4 @@
1
- import { as } from "../tl/1_tl_object.js";
2
- import * as types from "../tl/2_types.js";
1
+ import { as, types } from "../2_tl.js";
3
2
  export function constructVenue(media_) {
4
3
  const geo = media_.geo[as](types.GeoPoint);
5
4
  return {
@@ -1,15 +1,15 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  /** This object represents a voice note. */
3
3
  export interface Voice {
4
4
  /** Identifier for this file, which can be used to download or reuse the file */
5
5
  fileId: string;
6
- /** Unique identifier for this file, which is supposed to be the same over time and for different bots. Can't be used to download or reuse the file. */
6
+ /** Unique identifier for this file, which is supposed to be the same over time and for different users and bots. Can't be used to download or reuse the file. */
7
7
  fileUniqueId: string;
8
8
  /** Duration of the audio in seconds as defined by sender */
9
9
  duration: number;
10
10
  /** MIME type of the file as defined by sender */
11
11
  mimeType: string;
12
- /** File size in bytes. It can be bigger than 2^31 and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a signed 64-bit integer or double-precision float type are safe for storing this value. */
12
+ /** File size in bytes */
13
13
  fileSize: number;
14
14
  }
15
15
  export declare function constructVoice(document: types.Document, audioAttributes: types.DocumentAttributeAudio, fileId: string, fileUniqueId: string): Voice;
@@ -1,6 +1,6 @@
1
- /** Describes a [Web App](https://core.telegram.org/bots/webapps). */
1
+ /** Describes a Web App */
2
2
  export interface WebAppInfo {
3
- /** An HTTPS URL of a Web App to be opened with additional data as specified in [Initializing Web Apps](https://core.telegram.org/bots/webapps#initializing-web-apps) */
3
+ /** An HTTPS URL of a Web App to be opened with additional data */
4
4
  url: string;
5
5
  }
6
6
  export declare function constructWebAppInfo(url: string): WebAppInfo;
@@ -1,10 +1,10 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { Thumbnail } from "./0_thumbnail.js";
3
3
  /** This object represents an animation file (GIF or H.264/MPEG-4 AVC video without sound). */
4
4
  export interface Animation {
5
5
  /** Identifier for this file, which can be used to download or reuse the file */
6
6
  fileId: string;
7
- /** Unique identifier for this file, which is supposed to be the same over time and for different bots. Can't be used to download or reuse the file. */
7
+ /** Unique identifier for this file, which is supposed to be the same over time and for different users and bots. Can't be used to download or reuse the file. */
8
8
  fileUniqueId: string;
9
9
  /** Video width as defined by sender */
10
10
  width: number;
@@ -18,7 +18,7 @@ export interface Animation {
18
18
  fileName?: string;
19
19
  /** MIME type of the file as defined by sender */
20
20
  mimeType: string;
21
- /** File size in bytes. It can be bigger than 2^31 and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a signed 64-bit integer or double-precision float type are safe for storing this value. */
21
+ /** File size in bytes */
22
22
  fileSize: number;
23
23
  }
24
24
  export declare function constructAnimation(document: types.Document, videoAttribute: types.DocumentAttributeVideo | undefined, fileAttribute: types.DocumentAttributeFilename | undefined, fileId: string, fileUniqueId: string): Animation;
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { constructThumbnail } from "./0_thumbnail.js";
3
3
  export function constructAnimation(document, videoAttribute, fileAttribute, fileId, fileUniqueId) {
4
4
  return {
@@ -1,4 +1,5 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
+ import { Color } from "./0_color.js";
2
3
  import { ChatPhoto } from "./0_chat_photo.js";
3
4
  export declare enum ChatType {
4
5
  Private = "private",
@@ -8,11 +9,11 @@ export declare enum ChatType {
8
9
  }
9
10
  export declare namespace Chat {
10
11
  interface Base {
11
- /** Type of chat, can be either private”, group”, supergroup or channel */
12
+ /** Type of chat, can be either "private", "group", "supergroup" or "channel" */
12
13
  type: ChatType;
13
- /** Unique identifier for this chat. This number may have more than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a signed 64-bit integer or double-precision float type are safe for storing this identifier. */
14
+ /** Unique identifier for this chat */
14
15
  id: number;
15
- idColor: string;
16
+ color: Color;
16
17
  /** Chat photo. */
17
18
  photo?: ChatPhoto;
18
19
  }
@@ -1,8 +1,7 @@
1
- import { ZERO_CHANNEL_ID } from "../constants.js";
2
- import { UNREACHABLE } from "../utilities/0_control.js";
3
- import { cleanObject } from "../utilities/0_object.js";
4
- import * as types from "../tl/2_types.js";
5
- import { getIdColor } from "./!0_id_color.js";
1
+ import { cleanObject, UNREACHABLE } from "../1_utilities.js";
2
+ import { types } from "../2_tl.js";
3
+ import { ZERO_CHANNEL_ID } from "../4_constants.js";
4
+ import { getColor } from "./0_color.js";
6
5
  import { constructChatPhoto } from "./0_chat_photo.js";
7
6
  export var ChatType;
8
7
  (function (ChatType) {
@@ -18,7 +17,7 @@ export function constructChat(chat) {
18
17
  type: ChatType.Private,
19
18
  isBot: chat.bot || false,
20
19
  id,
21
- idColor: getIdColor(id),
20
+ color: getColor(id),
22
21
  firstName: chat.firstName || "",
23
22
  lastName: chat.lastName,
24
23
  isScam: chat.scam || false,
@@ -40,7 +39,7 @@ export function constructChat(chat) {
40
39
  const chat_ = {
41
40
  type: ChatType.Group,
42
41
  id,
43
- idColor: getIdColor(id),
42
+ color: getColor(id),
44
43
  title: chat.title,
45
44
  isCreator: chat.creator || false,
46
45
  };
@@ -56,7 +55,7 @@ export function constructChat(chat) {
56
55
  if (chat.megagroup) {
57
56
  chat_ = {
58
57
  id,
59
- idColor: getIdColor(id),
58
+ color: getColor(id),
60
59
  type: ChatType.Supergroup,
61
60
  title,
62
61
  isScam,
@@ -70,7 +69,7 @@ export function constructChat(chat) {
70
69
  const id = ZERO_CHANNEL_ID + -Number(chat.id);
71
70
  chat_ = {
72
71
  id,
73
- idColor: getIdColor(id),
72
+ color: getColor(id),
74
73
  type: ChatType.Channel,
75
74
  title,
76
75
  isScam,
@@ -1,10 +1,10 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { Thumbnail } from "./0_thumbnail.js";
3
- /** This object represents a general file (as opposed to [photos](https://corefork.telegram.org/bots/api#photosize), [voice messages](https://corefork.telegram.org/bots/api#voice) and [audio files](https://corefork.telegram.org/bots/api#audio)). */
3
+ /** This object represents a general file (as opposed to photos, voice messages and audio files). */
4
4
  export interface Document {
5
5
  /** Identifier for this file, which can be used to download or reuse the file */
6
6
  fileId: string;
7
- /** Unique identifier for this file, which is supposed to be the same over time and for different bots. Can't be used to download or reuse the file. */
7
+ /** Unique identifier for this file, which is supposed to be the same over time and for different users and bots. Can't be used to download or reuse the file. */
8
8
  fileUniqueId: string;
9
9
  /** Document thumbnail as defined by sender */
10
10
  thumbnails: Thumbnail[];
@@ -12,7 +12,7 @@ export interface Document {
12
12
  fileName: string;
13
13
  /** MIME type of the file as defined by sender */
14
14
  mimeType: string;
15
- /** File size in bytes. It can be bigger than 2^31 and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a signed 64-bit integer or double-precision float type are safe for storing this value. */
15
+ /** File size in bytes */
16
16
  fileSize: number;
17
17
  }
18
18
  export declare function constructDocument(document: types.Document, fileNameAttribute: types.DocumentAttributeFilename, fileId: string, fileUniqueId: string): Document;
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { constructThumbnail } from "./0_thumbnail.js";
3
3
  export function constructDocument(document, fileNameAttribute, fileId, fileUniqueId) {
4
4
  return {
@@ -1,5 +1,5 @@
1
- import { MaybePromise } from "../utilities/0_types.js";
2
- import * as types from "../tl/2_types.js";
1
+ import { MaybePromise } from "../1_utilities.js";
2
+ import { types } from "../2_tl.js";
3
3
  import { WebAppInfo } from "./0_web_app_info.js";
4
4
  import { LoginUrl } from "./0_login_url.js";
5
5
  export declare namespace InlineKeyboardButton {
@@ -16,7 +16,7 @@ export declare namespace InlineKeyboardButton {
16
16
  callbackData: string;
17
17
  }
18
18
  interface WebApp extends Base {
19
- /** Description of the [Web App](https://core.telegram.org/bots/webapps) that will be launched when the user presses the button. The Web App will be able to send an arbitrary message on behalf of the user using the method answerWebAppQuery. Available only in private chats between a user and the bot. */
19
+ /** Description of the Web App that will be launched when the user presses the button. The Web App will be able to send an arbitrary message on behalf of the user using the method answerWebAppQuery. Available only in private chats between a user and the bot. */
20
20
  webApp: WebAppInfo;
21
21
  }
22
22
  interface Login extends Base {
@@ -35,7 +35,7 @@ export declare namespace InlineKeyboardButton {
35
35
  callbackGame: Record<never, never>;
36
36
  }
37
37
  interface Pay extends Base {
38
- /** Specify True, to send a [Pay button](https://core.telegram.org/bots/api#payments). */
38
+ /** Specify True to send a Pay button */
39
39
  pay: boolean;
40
40
  }
41
41
  }
@@ -1,5 +1,5 @@
1
- import { UNREACHABLE } from "../utilities/0_control.js";
2
- import * as types from "../tl/2_types.js";
1
+ import { UNREACHABLE } from "../1_utilities.js";
2
+ import { types } from "../2_tl.js";
3
3
  import { constructWebAppInfo } from "./0_web_app_info.js";
4
4
  export function constructInlineKeyboardButton(button_) {
5
5
  if (button_ instanceof types.KeyboardButtonURL) {
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { ChatAdministratorRights } from "./0_chat_administrator_rights.js";
3
3
  import { KeyboardButtonPollType } from "./0_keyboard_button_poll_type.js";
4
4
  import { WebAppInfo } from "./0_web_app_info.js";
@@ -7,11 +7,11 @@ export declare namespace KeyboardButton {
7
7
  /** Text of the button. If none of the optional fields are used, it will be sent as a message when the button is pressed */
8
8
  text: string;
9
9
  }
10
- /** This object defines the criteria used to request a suitable user. The identifier of the selected user will be shared with the bot when the corresponding button is pressed. [More about requesting users](https://core.telegram.org/bots/features#chat-and-user-selection) */
10
+ /** This object defines the criteria used to request a suitable user. The identifier of the selected user will be shared with the bot when the corresponding button is pressed. */
11
11
  interface RequestUser extends Text {
12
- /** If specified, pressing the button will open a list of suitable users. Tapping on any user will send their identifier to the bot in a user_shared service message. Available in private chats only. */
12
+ /** If specified, pressing the button will open a list of suitable users. Tapping on any user will send their identifier to the bot in a "user_shared" service message. Available in private chats only. */
13
13
  requestUser: {
14
- /** Signed 32-bit identifier of the request, which will be received back in the [UserShared](https://core.telegram.org/bots/api#usershared) object. Must be unique within the message */
14
+ /** Signed 32-bit identifier of the request */
15
15
  requestId: number;
16
16
  /** Pass True to request a bot, pass False to request a regular user. If not specified, no additional restrictions are applied. */
17
17
  userIsBot?: boolean;
@@ -19,11 +19,11 @@ export declare namespace KeyboardButton {
19
19
  userIsPremium?: boolean;
20
20
  };
21
21
  }
22
- /** This object defines the criteria used to request a suitable chat. The identifier of the selected chat will be shared with the bot when the corresponding button is pressed. [More about requesting chats](https://core.telegram.org/bots/features#chat-and-user-selection) */
22
+ /** This object defines the criteria used to request a suitable chat. The identifier of the selected chat will be shared with the bot when the corresponding button is pressed. */
23
23
  interface RequestChat extends Text {
24
- /** If specified, pressing the button will open a list of suitable chats. Tapping on a chat will send its identifier to the bot in a chat_shared service message. Available in private chats only. */
24
+ /** If specified, pressing the button will open a list of suitable chats. Tapping on a chat will send its identifier to the bot in a "chat_shared" service message. Available in private chats only. */
25
25
  requestChat: {
26
- /** Signed 32-bit identifier of the request, which will be received back in the [ChatShared](https://core.telegram.org/bots/api#chatshared) object. Must be unique within the message */
26
+ /** Signed 32-bit identifier of the request */
27
27
  requestId: number;
28
28
  /** Pass True to request a channel chat, pass False to request a group or a supergroup chat. */
29
29
  chatIsChannel: boolean;
@@ -54,7 +54,7 @@ export declare namespace KeyboardButton {
54
54
  requestPoll: KeyboardButtonPollType;
55
55
  }
56
56
  interface WebApp extends Text {
57
- /** If specified, the described [Web App](https://core.telegram.org/bots/webapps) will be launched when the button is pressed. The Web App will be able to send a web_app_data service message. Available in private chats only. */
57
+ /** If specified, the described Web App will be launched when the button is pressed. The Web App will be able to send a "web_app_data" service message. Available in private chats only. */
58
58
  webApp: WebAppInfo;
59
59
  }
60
60
  }
@@ -1,5 +1,5 @@
1
- import { UNREACHABLE } from "../utilities/0_control.js";
2
- import * as types from "../tl/2_types.js";
1
+ import { UNREACHABLE } from "../1_utilities.js";
2
+ import { types } from "../2_tl.js";
3
3
  import { chatAdministratorRightsToTlObject, constructChatAdministratorRights } from "./0_chat_administrator_rights.js";
4
4
  export function constructKeyboardButton(button_) {
5
5
  if (button_ instanceof types.KeyboardButton) {
@@ -1,10 +1,10 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { Thumbnail } from "./0_thumbnail.js";
3
3
  /** This object represents a photo. */
4
4
  export interface Photo {
5
5
  /** Identifier for this file, which can be used to download or reuse the file */
6
6
  fileId: string;
7
- /** Unique identifier for this file, which is supposed to be the same over time and for different bots. Can't be used to download or reuse the file. */
7
+ /** Unique identifier for this file, which is supposed to be the same over time and for different users and bots. Can't be used to download or reuse the file. */
8
8
  fileUniqueId: string;
9
9
  /** Photo width */
10
10
  width: number;
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { FileID, FileType, FileUniqueID, FileUniqueType, ThumbnailSource } from "./!0_file_id.js";
3
3
  import { constructThumbnail } from "./0_thumbnail.js";
4
4
  export function constructPhoto(photo) {
@@ -1,4 +1,4 @@
1
- import * as types from "../tl/2_types.js";
1
+ import { types } from "../2_tl.js";
2
2
  import { MessageEntity } from "./0_message_entity.js";
3
3
  import { PollOption } from "./0_poll_option.js";
4
4
  export interface Poll {
@@ -14,19 +14,19 @@ export interface Poll {
14
14
  isClosed: boolean;
15
15
  /** True, if the poll is anonymous */
16
16
  isAnonymous: boolean;
17
- /** Poll type, currently can be regular or quiz */
17
+ /** Poll type, currently can be "regular" or "quiz" */
18
18
  type: "regular" | "quiz";
19
19
  /** True, if the poll allows multiple answers */
20
20
  allowMultipleAnswers?: boolean;
21
- /** Optional. 0-based identifier of the correct answer option. Available only for polls in the quiz mode, which are closed, or was sent (not forwarded) by the bot or to the private chat with the bot. */
22
- correctOptionId?: number;
23
- /** Optional. Text that is shown when a user chooses an incorrect answer or taps on the lamp icon in a quiz-style poll, 0-200 characters */
21
+ /** Index of the correct answer in `options`. Available only for polls in the quiz mode, which are closed, or was sent (not forwarded) by the bot or to the private chat with the bot. */
22
+ correctOptionIndex?: number;
23
+ /** Text that is shown when a user chooses an incorrect answer or taps on the lamp icon in a quiz-style poll, 0-200 characters */
24
24
  explanation?: string;
25
- /** Optional. Special entities like usernames, URLs, bot commands, etc. that appear in the explanation */
25
+ /** Special entities like usernames, URLs, bot commands, etc. that appear in the explanation */
26
26
  explanationEntities?: MessageEntity[];
27
- /** Optional. Amount of time in seconds the poll will be active after creation */
27
+ /** Amount of time in seconds the poll will be active after creation */
28
28
  openPeriod?: number;
29
- /** Optional. Point in time (Unix timestamp) when the poll will be automatically closed */
29
+ /** Point in time (Unix timestamp) when the poll will be automatically closed */
30
30
  closeDate?: Date;
31
31
  }
32
32
  export declare function constructPoll(media_: types.MessageMediaPoll): Poll;
@@ -1,4 +1,4 @@
1
- import { cleanObject } from "../utilities/0_object.js";
1
+ import { cleanObject } from "../1_utilities.js";
2
2
  import { constructMessageEntity } from "./0_message_entity.js";
3
3
  import { constructPollOption } from "./0_poll_option.js";
4
4
  export function constructPoll(media_) {
@@ -1,12 +1,12 @@
1
- import * as types from "../tl/2_types.js";
2
- import { MaybePromise } from "../utilities/0_types.js";
1
+ import { MaybePromise } from "../1_utilities.js";
2
+ import { types } from "../2_tl.js";
3
3
  import { Thumbnail } from "./0_thumbnail.js";
4
4
  import { MaskPosition } from "./0_mask_position.js";
5
5
  /** This object represents a sticker. */
6
6
  export interface Sticker {
7
7
  /** Identifier for this file, which can be used to download or reuse the file */
8
8
  fileId: string;
9
- /** Unique identifier for this file, which is supposed to be the same over time and for different bots. Can't be used to download or reuse the file. */
9
+ /** Unique identifier for this file, which is supposed to be the same over time and for different users and bots. Can't be used to download or reuse the file. */
10
10
  fileUniqueId: string;
11
11
  /** Type of the sticker, currently one of "regular", "mask", "custom_emoji". The type of the sticker is independent from its format, which is determined by the fields is_animated and is_video. */
12
12
  type: "regular" | "mask" | "custom_emoji";
@@ -1,5 +1,4 @@
1
- import { as } from "../tl/1_tl_object.js";
2
- import * as types from "../tl/2_types.js";
1
+ import { as, types } from "../2_tl.js";
3
2
  import { constructThumbnail } from "./0_thumbnail.js";
4
3
  import { constructMaskPosition } from "./0_mask_position.js";
5
4
  export async function constructSticker(document, fileId, fileUniqueId, getStickerSetName) {