@mtkruto/node 0.160.0 → 0.170.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 (167) hide show
  1. package/esm/0_deps.d.ts +1 -1
  2. package/esm/0_deps.d.ts.map +1 -1
  3. package/esm/0_deps.js +1 -1
  4. package/esm/2_tl.d.ts +1 -0
  5. package/esm/2_tl.d.ts.map +1 -1
  6. package/esm/2_tl.js +1 -0
  7. package/esm/3_types.d.ts +3 -0
  8. package/esm/3_types.d.ts.map +1 -1
  9. package/esm/3_types.js +3 -0
  10. package/esm/client/0_markdown.d.ts.map +1 -1
  11. package/esm/client/0_params.d.ts +38 -4
  12. package/esm/client/0_params.d.ts.map +1 -1
  13. package/esm/client/0_secret_chat_state.d.ts +86 -0
  14. package/esm/client/0_secret_chat_state.d.ts.map +1 -0
  15. package/esm/client/0_secret_chat_state.js +129 -0
  16. package/esm/client/0_storage_operations.d.ts +1 -0
  17. package/esm/client/0_storage_operations.d.ts.map +1 -1
  18. package/esm/client/0_storage_operations.js +3 -0
  19. package/esm/client/1_client_generic.d.ts +86 -15
  20. package/esm/client/1_client_generic.d.ts.map +1 -1
  21. package/esm/client/2_client_encrypted.js +6 -6
  22. package/esm/client/2_file_manager.d.ts.map +1 -1
  23. package/esm/client/2_file_manager.js +26 -3
  24. package/esm/client/3_account_manager.js +3 -3
  25. package/esm/client/3_filters.d.ts +16 -7
  26. package/esm/client/3_filters.d.ts.map +1 -1
  27. package/esm/client/3_message_manager.d.ts +59 -20
  28. package/esm/client/3_message_manager.d.ts.map +1 -1
  29. package/esm/client/3_message_manager.js +6 -0
  30. package/esm/client/3_secret_chat_manager.d.ts +26 -0
  31. package/esm/client/3_secret_chat_manager.d.ts.map +1 -0
  32. package/esm/client/3_secret_chat_manager.js +770 -0
  33. package/esm/client/4_chat_manager.d.ts +2 -0
  34. package/esm/client/4_chat_manager.d.ts.map +1 -1
  35. package/esm/client/4_chat_manager.js +12 -0
  36. package/esm/client/4_poll_manager.js +2 -2
  37. package/esm/client/6_client.d.ts +87 -16
  38. package/esm/client/6_client.d.ts.map +1 -1
  39. package/esm/client/6_client.js +118 -18
  40. package/esm/client/6_client_dispatcher.d.ts +86 -15
  41. package/esm/client/6_client_dispatcher.d.ts.map +1 -1
  42. package/esm/client/6_client_dispatcher.js +107 -15
  43. package/esm/session/2_session_encrypted.js +5 -5
  44. package/esm/tl/1_secret_chats_api.d.ts +637 -0
  45. package/esm/tl/1_secret_chats_api.d.ts.map +1 -0
  46. package/esm/tl/1_secret_chats_api.js +849 -0
  47. package/esm/tl/1_tl_reader.js +3 -3
  48. package/esm/tl/2_secret_chats.d.ts +33 -0
  49. package/esm/tl/2_secret_chats.d.ts.map +1 -0
  50. package/esm/tl/2_secret_chats.js +53 -0
  51. package/esm/types/0_report_reason.d.ts +10 -0
  52. package/esm/types/0_report_reason.d.ts.map +1 -1
  53. package/esm/types/0_secret_chat.d.ts +66 -0
  54. package/esm/types/0_secret_chat.d.ts.map +1 -0
  55. package/esm/types/0_secret_chat.js +30 -0
  56. package/esm/types/0_secret_message_entity.d.ts +115 -0
  57. package/esm/types/0_secret_message_entity.d.ts.map +1 -0
  58. package/esm/types/0_secret_message_entity.js +174 -0
  59. package/esm/types/1_chat_p.d.ts +3 -3
  60. package/esm/types/1_chat_p.d.ts.map +1 -1
  61. package/esm/types/1_input_poll_media.d.ts +2 -2
  62. package/esm/types/1_sticker.d.ts +2 -1
  63. package/esm/types/1_sticker.d.ts.map +1 -1
  64. package/esm/types/1_sticker.js +23 -1
  65. package/esm/types/1_story_report_result.d.ts +3 -0
  66. package/esm/types/1_story_report_result.d.ts.map +1 -1
  67. package/esm/types/2_inactive_chat.d.ts +1 -1
  68. package/esm/types/2_inactive_chat.d.ts.map +1 -1
  69. package/esm/types/2_message_entity.d.ts +0 -3
  70. package/esm/types/2_message_entity.d.ts.map +1 -1
  71. package/esm/types/2_secret_message.d.ts +184 -0
  72. package/esm/types/2_secret_message.d.ts.map +1 -0
  73. package/esm/types/2_secret_message.js +341 -0
  74. package/esm/types/2_user.d.ts +1 -1
  75. package/esm/types/2_user.d.ts.map +1 -1
  76. package/esm/types/3_input_media.d.ts +2 -2
  77. package/esm/types/4_gift.d.ts +2 -2
  78. package/esm/types/4_gift.d.ts.map +1 -1
  79. package/esm/types/9_message.d.ts +8 -60
  80. package/esm/types/9_message.d.ts.map +1 -1
  81. package/esm/types/9_message.js +1 -0
  82. package/esm/types/B_update.d.ts +32 -41
  83. package/esm/types/B_update.d.ts.map +1 -1
  84. package/package.json +1 -1
  85. package/script/0_deps.d.ts +1 -1
  86. package/script/0_deps.d.ts.map +1 -1
  87. package/script/0_deps.js +2 -1
  88. package/script/2_tl.d.ts +1 -0
  89. package/script/2_tl.d.ts.map +1 -1
  90. package/script/2_tl.js +2 -1
  91. package/script/3_types.d.ts +3 -0
  92. package/script/3_types.d.ts.map +1 -1
  93. package/script/3_types.js +3 -0
  94. package/script/client/0_markdown.d.ts.map +1 -1
  95. package/script/client/0_params.d.ts +38 -4
  96. package/script/client/0_params.d.ts.map +1 -1
  97. package/script/client/0_secret_chat_state.d.ts +86 -0
  98. package/script/client/0_secret_chat_state.d.ts.map +1 -0
  99. package/script/client/0_secret_chat_state.js +133 -0
  100. package/script/client/0_storage_operations.d.ts +1 -0
  101. package/script/client/0_storage_operations.d.ts.map +1 -1
  102. package/script/client/0_storage_operations.js +3 -0
  103. package/script/client/1_client_generic.d.ts +86 -15
  104. package/script/client/1_client_generic.d.ts.map +1 -1
  105. package/script/client/2_client_encrypted.js +6 -6
  106. package/script/client/2_file_manager.d.ts.map +1 -1
  107. package/script/client/2_file_manager.js +25 -2
  108. package/script/client/3_account_manager.js +3 -3
  109. package/script/client/3_filters.d.ts +16 -7
  110. package/script/client/3_filters.d.ts.map +1 -1
  111. package/script/client/3_message_manager.d.ts +59 -20
  112. package/script/client/3_message_manager.d.ts.map +1 -1
  113. package/script/client/3_message_manager.js +6 -0
  114. package/script/client/3_secret_chat_manager.d.ts +26 -0
  115. package/script/client/3_secret_chat_manager.d.ts.map +1 -0
  116. package/script/client/3_secret_chat_manager.js +807 -0
  117. package/script/client/4_chat_manager.d.ts +2 -0
  118. package/script/client/4_chat_manager.d.ts.map +1 -1
  119. package/script/client/4_chat_manager.js +12 -0
  120. package/script/client/4_poll_manager.js +2 -2
  121. package/script/client/6_client.d.ts +87 -16
  122. package/script/client/6_client.d.ts.map +1 -1
  123. package/script/client/6_client.js +118 -18
  124. package/script/client/6_client_dispatcher.d.ts +86 -15
  125. package/script/client/6_client_dispatcher.d.ts.map +1 -1
  126. package/script/client/6_client_dispatcher.js +107 -15
  127. package/script/session/2_session_encrypted.js +5 -5
  128. package/script/tl/1_secret_chats_api.d.ts +637 -0
  129. package/script/tl/1_secret_chats_api.d.ts.map +1 -0
  130. package/script/tl/1_secret_chats_api.js +852 -0
  131. package/script/tl/1_tl_reader.js +3 -3
  132. package/script/tl/2_secret_chats.d.ts +33 -0
  133. package/script/tl/2_secret_chats.d.ts.map +1 -0
  134. package/script/tl/2_secret_chats.js +78 -0
  135. package/script/types/0_report_reason.d.ts +10 -0
  136. package/script/types/0_report_reason.d.ts.map +1 -1
  137. package/script/types/0_secret_chat.d.ts +66 -0
  138. package/script/types/0_secret_chat.d.ts.map +1 -0
  139. package/script/types/0_secret_chat.js +33 -0
  140. package/script/types/0_secret_message_entity.d.ts +115 -0
  141. package/script/types/0_secret_message_entity.d.ts.map +1 -0
  142. package/script/types/0_secret_message_entity.js +179 -0
  143. package/script/types/1_chat_p.d.ts +3 -3
  144. package/script/types/1_chat_p.d.ts.map +1 -1
  145. package/script/types/1_input_poll_media.d.ts +2 -2
  146. package/script/types/1_sticker.d.ts +2 -1
  147. package/script/types/1_sticker.d.ts.map +1 -1
  148. package/script/types/1_sticker.js +23 -0
  149. package/script/types/1_story_report_result.d.ts +3 -0
  150. package/script/types/1_story_report_result.d.ts.map +1 -1
  151. package/script/types/2_inactive_chat.d.ts +1 -1
  152. package/script/types/2_inactive_chat.d.ts.map +1 -1
  153. package/script/types/2_message_entity.d.ts +0 -3
  154. package/script/types/2_message_entity.d.ts.map +1 -1
  155. package/script/types/2_secret_message.d.ts +184 -0
  156. package/script/types/2_secret_message.d.ts.map +1 -0
  157. package/script/types/2_secret_message.js +344 -0
  158. package/script/types/2_user.d.ts +1 -1
  159. package/script/types/2_user.d.ts.map +1 -1
  160. package/script/types/3_input_media.d.ts +2 -2
  161. package/script/types/4_gift.d.ts +2 -2
  162. package/script/types/4_gift.d.ts.map +1 -1
  163. package/script/types/9_message.d.ts +8 -60
  164. package/script/types/9_message.d.ts.map +1 -1
  165. package/script/types/9_message.js +1 -0
  166. package/script/types/B_update.d.ts +32 -41
  167. package/script/types/B_update.d.ts.map +1 -1
@@ -18,7 +18,7 @@
18
18
  * along with this program. If not, see <https://www.gnu.org/licenses/>.
19
19
  */
20
20
  import { type MaybePromise } from "../1_utilities.js";
21
- import { Api } from "../2_tl.js";
21
+ import { Api, SecretChats } from "../2_tl.js";
22
22
  import { type MaskPosition } from "./0_mask_position.js";
23
23
  import { type Thumbnail } from "./0_thumbnail.js";
24
24
  /** A sticker. */
@@ -58,4 +58,5 @@ export interface Sticker {
58
58
  export type StickerSetNameGetter = (inputStickerSet: Api.inputStickerSetID) => MaybePromise<string | undefined>;
59
59
  export declare function constructSticker(document: Api.document, fileId: string, fileUniqueId: string, getStickerSetName: StickerSetNameGetter, customEmojiId?: string): Promise<Sticker>;
60
60
  export declare function constructSticker2(document: Api.document, fileId: string, fileUniqueId: string, setName: string | undefined, customEmojiId?: string): Sticker;
61
+ export declare function constructSticker3(document: SecretChats.decryptedMessageMediaExternalDocument | SecretChats.decryptedMessageMediaDocument46 | SecretChats.decryptedMessageMediaDocument, fileId: string, fileUniqueId: string): Sticker;
61
62
  //# sourceMappingURL=1_sticker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"1_sticker.d.ts","sourceRoot":"","sources":["../../src/types/1_sticker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAyB,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAsB,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEtE,iBAAiB;AACjB,MAAM,WAAW,OAAO;IACtB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,YAAY,EAAE,MAAM,CAAC;IACrB,kMAAkM;IAClM,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,aAAa,CAAC;IACzC,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,sFAAsF;IACtF,UAAU,EAAE,OAAO,CAAC;IACpB,2GAA2G;IAC3G,OAAO,EAAE,OAAO,CAAC;IACjB,oDAAoD;IACpD,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,IAAI,CAAC;IACxB,sEAAsE;IACtE,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,uEAAuE;IACvE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4MAA4M;IAC5M,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,gBAAgB;AAChB,MAAM,MAAM,oBAAoB,GAAG,CAAC,eAAe,EAAE,GAAG,CAAC,iBAAiB,KAAK,YAAY,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;AAEhH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,aAAa,SAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAKlL;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,aAAa,SAAK,GAAG,OAAO,CAuBxJ"}
1
+ {"version":3,"file":"1_sticker.d.ts","sourceRoot":"","sources":["../../src/types/1_sticker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAyB,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAsB,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEtE,iBAAiB;AACjB,MAAM,WAAW,OAAO;IACtB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,YAAY,EAAE,MAAM,CAAC;IACrB,kMAAkM;IAClM,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,aAAa,CAAC;IACzC,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,sFAAsF;IACtF,UAAU,EAAE,OAAO,CAAC;IACpB,2GAA2G;IAC3G,OAAO,EAAE,OAAO,CAAC;IACjB,oDAAoD;IACpD,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,IAAI,CAAC;IACxB,sEAAsE;IACtE,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,uEAAuE;IACvE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4MAA4M;IAC5M,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,gBAAgB;AAChB,MAAM,MAAM,oBAAoB,GAAG,CAAC,eAAe,EAAE,GAAG,CAAC,iBAAiB,KAAK,YAAY,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;AAEhH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,aAAa,SAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAKlL;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,aAAa,SAAK,GAAG,OAAO,CAuBxJ;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,qCAAqC,GAAG,WAAW,CAAC,+BAA+B,GAAG,WAAW,CAAC,6BAA6B,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAsBtO"}
@@ -21,6 +21,7 @@
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.constructSticker = constructSticker;
23
23
  exports.constructSticker2 = constructSticker2;
24
+ exports.constructSticker3 = constructSticker3;
24
25
  const _1_utilities_js_1 = require("../1_utilities.js");
25
26
  const _2_tl_js_1 = require("../2_tl.js");
26
27
  const _0_mask_position_js_1 = require("./0_mask_position.js");
@@ -53,3 +54,25 @@ function constructSticker2(document, fileId, fileUniqueId, setName, customEmojiI
53
54
  fileSize: Number(document.size),
54
55
  });
55
56
  }
57
+ function constructSticker3(document, fileId, fileUniqueId) {
58
+ const stickerAttribute = document.attributes.find((v) => _2_tl_js_1.SecretChats.is("documentAttributeSticker", v));
59
+ const imageSizeAttribute = document.attributes.find((v) => _2_tl_js_1.SecretChats.is("documentAttributeImageSize", v));
60
+ const videoAttribute = document.attributes.find((v) => _2_tl_js_1.SecretChats.is("documentAttributeVideo", v));
61
+ return (0, _1_utilities_js_1.cleanObject)({
62
+ fileId,
63
+ fileUniqueId,
64
+ type: "regular",
65
+ width: imageSizeAttribute ? imageSizeAttribute.w : videoAttribute ? videoAttribute.w : 512,
66
+ height: imageSizeAttribute ? imageSizeAttribute.h : videoAttribute ? videoAttribute.h : 512,
67
+ isAnimated: document.mime_type === "application/x-tgsticker",
68
+ isVideo: document.mime_type === "video/webm",
69
+ thumbnails: [],
70
+ emoji: stickerAttribute.alt || undefined,
71
+ setName: _2_tl_js_1.Api.is("inputStickerSetShortName", stickerAttribute.stickerset) ? stickerAttribute.stickerset.short_name : undefined,
72
+ premiumAnimation: undefined, // TODO
73
+ maskPosition: undefined,
74
+ customEmojiId: undefined,
75
+ needsRepainting: undefined,
76
+ fileSize: Number(document.size),
77
+ });
78
+ }
@@ -19,16 +19,19 @@
19
19
  */
20
20
  import type { Api } from "../2_tl.js";
21
21
  import { type StoryReportOption } from "./0_story_report_option.js";
22
+ /** @unlisted */
22
23
  export interface StoryReportResultOptionRequired {
23
24
  type: "optionRequired";
24
25
  title: string;
25
26
  options: StoryReportOption[];
26
27
  }
28
+ /** @unlisted */
27
29
  export interface StoryReportResultTextRequired {
28
30
  type: "textRequired";
29
31
  option: string;
30
32
  isOptional: boolean;
31
33
  }
34
+ /** @unlisted */
32
35
  export interface StoryReportResultReported {
33
36
  type: "reported";
34
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"1_story_report_result.d.ts","sourceRoot":"","sources":["../../src/types/1_story_report_result.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAA8B,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEhG,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,MAAM,MAAM,iBAAiB,GAAG,+BAA+B,GAAG,6BAA6B,GAAG,yBAAyB,CAAC;AAE5H,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,GAAG,CAAC,YAAY,GAAG,iBAAiB,CAclF"}
1
+ {"version":3,"file":"1_story_report_result.d.ts","sourceRoot":"","sources":["../../src/types/1_story_report_result.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAA8B,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEhG,gBAAgB;AAChB,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B;AAED,gBAAgB;AAChB,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,gBAAgB;AAChB,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,MAAM,MAAM,iBAAiB,GAAG,+BAA+B,GAAG,6BAA6B,GAAG,yBAAyB,CAAC;AAE5H,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,GAAG,CAAC,YAAY,GAAG,iBAAiB,CAclF"}
@@ -21,7 +21,7 @@ import { Api } from "../2_tl.js";
21
21
  import { type ChatP } from "./1_chat_p.js";
22
22
  /** An inactive chat. */
23
23
  export interface InactiveChat {
24
- /** The time which the chat was last active. */
24
+ /** The time when the chat was last active. */
25
25
  lastActivity: number;
26
26
  /** The chat that has been marked as inactive. */
27
27
  chat: ChatP;
@@ -1 +1 @@
1
- {"version":3,"file":"2_inactive_chat.d.ts","sourceRoot":"","sources":["../../src/types/2_inactive_chat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,KAAK,KAAK,EAAkB,MAAM,eAAe,CAAC;AAE3D,wBAAwB;AACxB,MAAM,WAAW,YAAY;IAC3B,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,iDAAiD;IACjD,IAAI,EAAE,KAAK,CAAC;CACb;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,GAAG,YAAY,CASzF"}
1
+ {"version":3,"file":"2_inactive_chat.d.ts","sourceRoot":"","sources":["../../src/types/2_inactive_chat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,KAAK,KAAK,EAAkB,MAAM,eAAe,CAAC;AAE3D,wBAAwB;AACxB,MAAM,WAAW,YAAY;IAC3B,8CAA8C;IAC9C,YAAY,EAAE,MAAM,CAAC;IACrB,iDAAiD;IACjD,IAAI,EAAE,KAAK,CAAC;CACb;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,GAAG,YAAY,CASzF"}
@@ -20,10 +20,7 @@
20
20
  import { Api } from "../2_tl.js";
21
21
  import type { PeerGetter } from "./1_chat_p.js";
22
22
  /** @unlisted */
23
- export type MessageEntityType = "mention" | "hashtag" | "botCommand" | "url" | "email" | "bold" | "italic" | "code" | "pre" | "textLink" | "textMention" | "cashtag" | "phoneNumber" | "underline" | "strikethrough" | "blockquote" | "bankCard" | "spoiler" | "customEmoji" | "dateTime";
24
- /** @unlisted */
25
23
  export interface _MessageEntityBase {
26
- type: MessageEntityType;
27
24
  offset: number;
28
25
  length: number;
29
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"2_message_entity.d.ts","sourceRoot":"","sources":["../../src/types/2_message_entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"2_message_entity.d.ts","sourceRoot":"","sources":["../../src/types/2_message_entity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,184 @@
1
+ /**
2
+ * MTKruto - Cross-runtime JavaScript library for building Telegram clients
3
+ * Copyright (C) 2023-2026 Roj <https://roj.im/>
4
+ *
5
+ * This file is part of MTKruto.
6
+ *
7
+ * This program is free software: you can redistribute it and/or modify
8
+ * it under the terms of the GNU Lesser General Public License as published by
9
+ * the Free Software Foundation, either version 3 of the License, or
10
+ * (at your option) any later version.
11
+ *
12
+ * This program is distributed in the hope that it will be useful,
13
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ * GNU Lesser General Public License for more details.
16
+ *
17
+ * You should have received a copy of the GNU Lesser General Public License
18
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
19
+ */
20
+ import { Api, SecretChats } from "../2_tl.js";
21
+ import type { Contact } from "./0_contact.js";
22
+ import type { Location } from "./0_location.js";
23
+ import { type SecretMessageEntity } from "./0_secret_message_entity.js";
24
+ import type { Voice } from "./0_voice.js";
25
+ import type { Animation } from "./1_animation.js";
26
+ import type { Audio } from "./1_audio.js";
27
+ import type { Document } from "./1_document.js";
28
+ import type { Photo } from "./1_photo.js";
29
+ import { type Sticker } from "./1_sticker.js";
30
+ import type { Venue } from "./1_venue.js";
31
+ import type { VideoNote } from "./1_video_note.js";
32
+ import type { Video } from "./1_video.js";
33
+ /** @unlisted */
34
+ export interface _SecretMessageBase {
35
+ /** The identifier of the secret chat that the message belongs to. */
36
+ chatId: number;
37
+ /** The message's identifier. */
38
+ id: string;
39
+ /** The identifier of the message that this message replies to. */
40
+ replyToMessageId?: string;
41
+ /** Whether the message was sent silently. */
42
+ isSilent: boolean;
43
+ /** The message's time-to-live. */
44
+ ttl: number;
45
+ /** The name of the inline bot that was used to send the message. */
46
+ viaBot?: string;
47
+ }
48
+ export interface _SecretMessageMediaBase extends _SecretMessageBase {
49
+ /** The message's media group ID. */
50
+ mediaGroupId?: string;
51
+ /** The message's caption. */
52
+ caption: string;
53
+ /** The entities of the message's caption. */
54
+ entities: SecretMessageEntity[];
55
+ /** Information required for downloading the file. */
56
+ fileInformation: string;
57
+ }
58
+ /**
59
+ * A secret text message.
60
+ * @unlisted
61
+ */
62
+ export interface SecretMessageText extends _SecretMessageBase {
63
+ type: "text";
64
+ /** The message's text. */
65
+ text: string;
66
+ /** The entities of the message's text. */
67
+ entities: SecretMessageEntity[];
68
+ }
69
+ /**
70
+ * A secret message sharing a location.
71
+ * @unlisted
72
+ */
73
+ export interface SecretMessageLocation extends _SecretMessageBase {
74
+ type: "location";
75
+ /** The location. */
76
+ location: Location;
77
+ }
78
+ /**
79
+ * A secret message sharing a contact.
80
+ * @unlisted
81
+ */
82
+ export interface SecretMessageContact extends _SecretMessageBase {
83
+ type: "contact";
84
+ /** The contact. */
85
+ contact: Contact;
86
+ }
87
+ /**
88
+ * A secret message sharing a venue.
89
+ * @unlisted
90
+ */
91
+ export interface SecretMessageVenue extends _SecretMessageBase {
92
+ type: "venue";
93
+ /** The venue. */
94
+ venue: Venue;
95
+ }
96
+ /**
97
+ * A secret message sharing a web page.
98
+ * @unlisted
99
+ */
100
+ export interface SecretMessageWebPage extends _SecretMessageBase {
101
+ type: "webPage";
102
+ /** The URL of the web page. */
103
+ url: string;
104
+ /** The message's caption. */
105
+ caption: string;
106
+ /** The entities of the message's caption. */
107
+ entities: SecretMessageEntity[];
108
+ }
109
+ /**
110
+ * A secret message sharing a photo.
111
+ * @unlisted
112
+ */
113
+ export interface SecretMessagePhoto extends _SecretMessageMediaBase {
114
+ type: "photo";
115
+ /** The photo included in the message. */
116
+ photo: Photo;
117
+ }
118
+ /**
119
+ * A secret message sharing a video.
120
+ * @unlisted
121
+ */
122
+ export interface SecretMessageVideo extends _SecretMessageMediaBase {
123
+ type: "video";
124
+ /** The video included in the message. */
125
+ video: Video;
126
+ }
127
+ /**
128
+ * A secret message sharing a video note.
129
+ * @unlisted
130
+ */
131
+ export interface SecretMessageVideoNote extends _SecretMessageMediaBase {
132
+ type: "videoNote";
133
+ /** The video note included in the message. */
134
+ videoNote: VideoNote;
135
+ }
136
+ /**
137
+ * A secret message sharing an audio.
138
+ * @unlisted
139
+ */
140
+ export interface SecretMessageAudio extends _SecretMessageMediaBase {
141
+ type: "audio";
142
+ /** The audio included in the message. */
143
+ audio: Audio;
144
+ }
145
+ /**
146
+ * A secret message sharing a document.
147
+ * @unlisted
148
+ */
149
+ export interface SecretMessageDocument extends _SecretMessageMediaBase {
150
+ type: "document";
151
+ /** The document included in the message. */
152
+ document: Document;
153
+ }
154
+ /**
155
+ * A secret message sharing a sticker.
156
+ * @unlisted
157
+ */
158
+ export interface SecretMessageSticker extends _SecretMessageBase {
159
+ type: "sticker";
160
+ /** The sticker included in the message. */
161
+ sticker: Sticker;
162
+ }
163
+ /**
164
+ * A secret message sharing an animation.
165
+ * @unlisted
166
+ */
167
+ export interface SecretMessageAnimation extends _SecretMessageMediaBase {
168
+ type: "animation";
169
+ /** The animation included in the message. */
170
+ animation: Animation;
171
+ }
172
+ /**
173
+ * A secret message sharing a voice.
174
+ * @unlisted
175
+ */
176
+ export interface SecretMessageVoice extends _SecretMessageMediaBase {
177
+ type: "voice";
178
+ /** The voice included in the message. */
179
+ voice: Voice;
180
+ }
181
+ /** Any type of secret message. */
182
+ export type SecretMessage = SecretMessageText | SecretMessageLocation | SecretMessageContact | SecretMessageVenue | SecretMessageWebPage | SecretMessagePhoto | SecretMessageVideo | SecretMessageVideoNote | SecretMessageAudio | SecretMessageDocument | SecretMessageSticker | SecretMessageAnimation | SecretMessageVoice;
183
+ export declare function constructSecretMessage(chatId: number, message: SecretChats.decryptedMessage, encryptedMessage: Api.EncryptedMessage): SecretMessage;
184
+ //# sourceMappingURL=2_secret_message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"2_secret_message.d.ts","sourceRoot":"","sources":["../../src/types/2_secret_message.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,344 @@
1
+ "use strict";
2
+ /**
3
+ * MTKruto - Cross-runtime JavaScript library for building Telegram clients
4
+ * Copyright (C) 2023-2026 Roj <https://roj.im/>
5
+ *
6
+ * This file is part of MTKruto.
7
+ *
8
+ * This program is free software: you can redistribute it and/or modify
9
+ * it under the terms of the GNU Lesser General Public License as published by
10
+ * the Free Software Foundation, either version 3 of the License, or
11
+ * (at your option) any later version.
12
+ *
13
+ * This program is distributed in the hope that it will be useful,
14
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ * GNU Lesser General Public License for more details.
17
+ *
18
+ * You should have received a copy of the GNU Lesser General Public License
19
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
20
+ */
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.constructSecretMessage = constructSecretMessage;
23
+ const _0_deps_js_1 = require("../0_deps.js");
24
+ const _1_utilities_js_1 = require("../1_utilities.js");
25
+ const _2_tl_js_1 = require("../2_tl.js");
26
+ const _file_id_js_1 = require("./_file_id.js");
27
+ const _0_secret_message_entity_js_1 = require("./0_secret_message_entity.js");
28
+ const _1_sticker_js_1 = require("./1_sticker.js");
29
+ function constructSecretMessage(chatId, message, encryptedMessage) {
30
+ const isSilent = !!message.silent;
31
+ const id = String(message.random_id);
32
+ const text = message.message;
33
+ const entities = (message.entities ?? []).map(_0_secret_message_entity_js_1.constructSecretMessageEntity).filter((v) => v !== null);
34
+ const mediaGroupId = message.grouped_id ? String(message.grouped_id) : undefined;
35
+ const replyToMessageId = message.reply_to_random_id ? String(message.reply_to_random_id) : undefined;
36
+ const ttl = message.ttl;
37
+ const viaBot = message.via_bot_name;
38
+ const messageBase = { chatId, id, isSilent, replyToMessageId, ttl, viaBot };
39
+ let fileInformation = "";
40
+ if (message.media && "key" in message.media && "iv" in message.media) {
41
+ fileInformation = `0${(0, _0_deps_js_1.encodeHex)(message.media.key)}${(0, _0_deps_js_1.encodeHex)(message.media.iv)}${message.media.size}`;
42
+ }
43
+ function getFileIds(type) {
44
+ let fileId_;
45
+ if (_2_tl_js_1.SecretChats.is("decryptedMessageMediaExternalDocument", message.media)) {
46
+ fileId_ = {
47
+ type,
48
+ dcId: message.media.dc_id,
49
+ location: {
50
+ type: "common",
51
+ id: message.media.id,
52
+ accessHash: message.media.access_hash,
53
+ },
54
+ };
55
+ }
56
+ else {
57
+ const file = _2_tl_js_1.Api.as("encryptedFile", _2_tl_js_1.Api.as("encryptedMessage", encryptedMessage).file);
58
+ fileId_ = {
59
+ type: _file_id_js_1.FileType.Encrypted,
60
+ dcId: file.dc_id,
61
+ location: {
62
+ type: "common",
63
+ id: file.id,
64
+ accessHash: file.access_hash,
65
+ },
66
+ };
67
+ }
68
+ const fileId = (0, _file_id_js_1.serializeFileId)(fileId_);
69
+ const fileUniqueId = (0, _file_id_js_1.toUniqueFileId)(fileId_);
70
+ return { fileId, fileUniqueId };
71
+ }
72
+ if (message.media) {
73
+ switch (message.media._) {
74
+ case "decryptedMessageMediaGeoPoint": {
75
+ const location = { latitude: message.media.lat, longitude: message.media.long };
76
+ return (0, _1_utilities_js_1.cleanObject)({
77
+ type: "location",
78
+ ...messageBase,
79
+ location,
80
+ });
81
+ }
82
+ case "decryptedMessageMediaContact": {
83
+ const contact = (0, _1_utilities_js_1.cleanObject)({ firstName: message.media.first_name, lastName: message.media.last_name || undefined, phoneNumber: message.media.phone_number, userId: message.media.user_id });
84
+ return (0, _1_utilities_js_1.cleanObject)({
85
+ type: "contact",
86
+ ...messageBase,
87
+ contact,
88
+ });
89
+ }
90
+ case "decryptedMessageMediaPhoto": {
91
+ const file = _2_tl_js_1.Api.as("encryptedFile", _2_tl_js_1.Api.as("encryptedMessage", encryptedMessage).file);
92
+ const fileId_ = {
93
+ type: _file_id_js_1.FileType.Encrypted,
94
+ dcId: file.dc_id,
95
+ location: {
96
+ type: "photo",
97
+ id: file.id,
98
+ accessHash: file.access_hash,
99
+ source: {
100
+ type: _file_id_js_1.PhotoSourceType.Thumbnail,
101
+ fileType: _file_id_js_1.FileType.EncryptedThumbnail,
102
+ thumbnailType: "t".charCodeAt(0),
103
+ },
104
+ },
105
+ };
106
+ const fileId = (0, _file_id_js_1.serializeFileId)(fileId_);
107
+ const fileUniqueId = (0, _file_id_js_1.toUniqueFileId)(fileId_);
108
+ const photo = {
109
+ fileId,
110
+ fileUniqueId,
111
+ width: message.media.w,
112
+ height: message.media.h,
113
+ fileSize: message.media.size,
114
+ thumbnails: [],
115
+ };
116
+ return (0, _1_utilities_js_1.cleanObject)({
117
+ type: "photo",
118
+ ...messageBase,
119
+ photo,
120
+ mediaGroupId,
121
+ caption: text,
122
+ entities,
123
+ fileInformation,
124
+ });
125
+ }
126
+ case "decryptedMessageMediaAudio": {
127
+ const { fileId, fileUniqueId } = getFileIds(_file_id_js_1.FileType.Audio);
128
+ const audio = (0, _1_utilities_js_1.cleanObject)({
129
+ fileId,
130
+ fileUniqueId,
131
+ duration: message.media.duration,
132
+ mimeType: message.media.mime_type,
133
+ fileSize: message.media.size,
134
+ thumbnails: [],
135
+ });
136
+ return (0, _1_utilities_js_1.cleanObject)({
137
+ type: "audio",
138
+ ...messageBase,
139
+ audio,
140
+ mediaGroupId,
141
+ caption: text,
142
+ entities,
143
+ fileInformation,
144
+ });
145
+ }
146
+ case "decryptedMessageMediaDocument8": {
147
+ const { fileId, fileUniqueId } = getFileIds(_file_id_js_1.FileType.Document);
148
+ const document = (0, _1_utilities_js_1.cleanObject)({
149
+ fileId,
150
+ fileUniqueId,
151
+ thumbnails: [],
152
+ fileName: message.media.file_name,
153
+ mimeType: message.media.mime_type,
154
+ fileSize: message.media.size,
155
+ });
156
+ return (0, _1_utilities_js_1.cleanObject)({
157
+ type: "document",
158
+ ...messageBase,
159
+ document,
160
+ mediaGroupId,
161
+ caption: text,
162
+ entities,
163
+ fileInformation,
164
+ });
165
+ }
166
+ case "decryptedMessageMediaExternalDocument":
167
+ case "decryptedMessageMediaDocument46":
168
+ case "decryptedMessageMediaDocument": {
169
+ const animated = message.media.attributes.find((v) => _2_tl_js_1.SecretChats.is("documentAttributeAnimated", v));
170
+ const audio = message.media.attributes.find((v) => _2_tl_js_1.SecretChats.is("documentAttributeAudio", v));
171
+ const fileName = message.media.attributes.find((v) => _2_tl_js_1.SecretChats.is("documentAttributeFilename", v));
172
+ const sticker = message.media.attributes.find((v) => _2_tl_js_1.SecretChats.is("documentAttributeSticker", v));
173
+ const video = message.media.attributes.find((v) => _2_tl_js_1.SecretChats.is("documentAttributeVideo", v));
174
+ if (sticker) {
175
+ const { fileId, fileUniqueId } = getFileIds(_file_id_js_1.FileType.Sticker);
176
+ const sticker = (0, _1_sticker_js_1.constructSticker3)(message.media, fileId, fileUniqueId);
177
+ return (0, _1_utilities_js_1.cleanObject)({
178
+ type: "sticker",
179
+ ...messageBase,
180
+ sticker,
181
+ });
182
+ }
183
+ else if (animated) {
184
+ const { fileId, fileUniqueId } = getFileIds(_file_id_js_1.FileType.Animation);
185
+ const animation = {
186
+ fileId,
187
+ fileUniqueId,
188
+ width: video?.w ?? 0,
189
+ height: video?.h ?? 0,
190
+ duration: video?.duration ?? 0,
191
+ thumbnails: [],
192
+ fileName: fileName?.file_name,
193
+ mimeType: message.media.mime_type,
194
+ fileSize: Number(message.media.size),
195
+ };
196
+ return (0, _1_utilities_js_1.cleanObject)({
197
+ type: "animation",
198
+ ...messageBase,
199
+ animation,
200
+ mediaGroupId,
201
+ caption: text,
202
+ entities,
203
+ fileInformation,
204
+ });
205
+ }
206
+ else if (video) {
207
+ if (video.round_message) {
208
+ const { fileId, fileUniqueId } = getFileIds(_file_id_js_1.FileType.VideoNote);
209
+ const videoNote = {
210
+ fileId,
211
+ fileUniqueId,
212
+ length: video.w,
213
+ duration: video.duration,
214
+ thumbnails: [],
215
+ fileName: fileName?.file_name,
216
+ fileSize: Number(message.media.size),
217
+ };
218
+ return (0, _1_utilities_js_1.cleanObject)({
219
+ type: "videoNote",
220
+ ...messageBase,
221
+ videoNote,
222
+ mediaGroupId,
223
+ caption: text,
224
+ entities,
225
+ fileInformation,
226
+ });
227
+ }
228
+ else {
229
+ const { fileId, fileUniqueId } = getFileIds(_file_id_js_1.FileType.Video);
230
+ const video_ = {
231
+ fileId,
232
+ fileUniqueId,
233
+ width: video.w,
234
+ height: video.h,
235
+ duration: video.duration,
236
+ thumbnails: [],
237
+ fileName: fileName?.file_name,
238
+ mimeType: message.media.mime_type,
239
+ fileSize: Number(message.media.size),
240
+ };
241
+ return (0, _1_utilities_js_1.cleanObject)({
242
+ type: "video",
243
+ ...messageBase,
244
+ video: video_,
245
+ mediaGroupId,
246
+ caption: text,
247
+ entities,
248
+ fileInformation,
249
+ });
250
+ }
251
+ }
252
+ else if (audio) {
253
+ if (audio.voice) {
254
+ const { fileId, fileUniqueId } = getFileIds(_file_id_js_1.FileType.Audio);
255
+ const voice = {
256
+ fileId,
257
+ fileUniqueId,
258
+ duration: audio.duration,
259
+ mimeType: message.media.mime_type,
260
+ fileSize: Number(message.media.size),
261
+ };
262
+ return (0, _1_utilities_js_1.cleanObject)({
263
+ type: "voice",
264
+ ...messageBase,
265
+ voice,
266
+ mediaGroupId,
267
+ caption: text,
268
+ entities,
269
+ fileInformation,
270
+ });
271
+ }
272
+ else {
273
+ const { fileId, fileUniqueId } = getFileIds(_file_id_js_1.FileType.Audio);
274
+ const audio_ = {
275
+ fileId,
276
+ fileUniqueId,
277
+ duration: audio.duration,
278
+ performer: audio.performer,
279
+ title: audio.title,
280
+ mimeType: message.media.mime_type,
281
+ fileSize: Number(message.media.size),
282
+ thumbnails: [],
283
+ };
284
+ return (0, _1_utilities_js_1.cleanObject)({
285
+ type: "audio",
286
+ ...messageBase,
287
+ audio: audio_,
288
+ mediaGroupId,
289
+ caption: text,
290
+ entities,
291
+ fileInformation,
292
+ });
293
+ }
294
+ }
295
+ else {
296
+ const { fileId, fileUniqueId } = getFileIds(_file_id_js_1.FileType.Document);
297
+ const document = {
298
+ fileId,
299
+ fileUniqueId,
300
+ thumbnails: [],
301
+ fileName: fileName?.file_name ?? "unknown",
302
+ mimeType: message.media.mime_type,
303
+ fileSize: Number(message.media.size),
304
+ };
305
+ return (0, _1_utilities_js_1.cleanObject)({
306
+ type: "document",
307
+ ...messageBase,
308
+ document,
309
+ mediaGroupId,
310
+ caption: text,
311
+ entities,
312
+ fileInformation,
313
+ });
314
+ }
315
+ }
316
+ case "decryptedMessageMediaVideo":
317
+ break;
318
+ case "decryptedMessageMediaVenue": {
319
+ const venue = (0, _1_utilities_js_1.cleanObject)({ title: message.media.title, address: message.media.address, location: { latitude: message.media.lat, longitude: message.media.long }, foursquareId: message.media.venue_id || undefined });
320
+ return (0, _1_utilities_js_1.cleanObject)({
321
+ type: "venue",
322
+ ...messageBase,
323
+ venue,
324
+ });
325
+ }
326
+ case "decryptedMessageMediaWebPage": {
327
+ const url = message.media.url;
328
+ return (0, _1_utilities_js_1.cleanObject)({
329
+ type: "webPage",
330
+ ...messageBase,
331
+ url,
332
+ caption: text,
333
+ entities,
334
+ });
335
+ }
336
+ }
337
+ }
338
+ return (0, _1_utilities_js_1.cleanObject)({
339
+ type: "text",
340
+ ...messageBase,
341
+ text,
342
+ entities,
343
+ });
344
+ }