nyx-bot-client 0.0.2

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 (288) hide show
  1. package/.env.sample +4 -0
  2. package/.vscode/extensions.json +11 -0
  3. package/.vscode/settings.json +17 -0
  4. package/.zed/settings.json +20 -0
  5. package/@types/AcceptedGiftTypes.ts +26 -0
  6. package/@types/AffiliateInfo.ts +35 -0
  7. package/@types/Animation.ts +56 -0
  8. package/@types/Audio.ts +56 -0
  9. package/@types/BackgroundFill.ts +18 -0
  10. package/@types/BackgroundFillFreeformGradient.ts +16 -0
  11. package/@types/BackgroundFillGradient.ts +26 -0
  12. package/@types/BackgroundFillSolid.ts +16 -0
  13. package/@types/BackgroundType.ts +21 -0
  14. package/@types/BackgroundTypeChatTheme.ts +16 -0
  15. package/@types/BackgroundTypeFill.ts +23 -0
  16. package/@types/BackgroundTypePattern.ts +40 -0
  17. package/@types/BackgroundTypeWallpaper.ts +33 -0
  18. package/@types/Birthdate.ts +21 -0
  19. package/@types/BotCommand.ts +16 -0
  20. package/@types/BotCommandScope.ts +30 -0
  21. package/@types/BotCommandScopeAllChatAdministrators.ts +11 -0
  22. package/@types/BotCommandScopeAllGroupChats.ts +11 -0
  23. package/@types/BotCommandScopeAllPrivateChats.ts +11 -0
  24. package/@types/BotCommandScopeChat.ts +16 -0
  25. package/@types/BotCommandScopeChatAdministrators.ts +16 -0
  26. package/@types/BotCommandScopeChatMember.ts +21 -0
  27. package/@types/BotCommandScopeDefault.ts +12 -0
  28. package/@types/BotDescription.ts +11 -0
  29. package/@types/BotName.ts +11 -0
  30. package/@types/BotShortDescription.ts +11 -0
  31. package/@types/BusinessBotRights.ts +65 -0
  32. package/@types/BusinessConnection.ts +41 -0
  33. package/@types/BusinessIntro.ts +23 -0
  34. package/@types/BusinessLocation.ts +18 -0
  35. package/@types/BusinessMessagesDeleted.ts +24 -0
  36. package/@types/BusinessOpeningHours.ts +18 -0
  37. package/@types/BusinessOpeningHoursInterval.ts +18 -0
  38. package/@types/CallbackGame.ts +6 -0
  39. package/@types/CallbackQuery.ts +49 -0
  40. package/@types/Chat.ts +43 -0
  41. package/@types/ChatAdministratorRights.ts +84 -0
  42. package/@types/ChatBackground.ts +13 -0
  43. package/@types/ChatBoost.ts +29 -0
  44. package/@types/ChatBoostAdded.ts +11 -0
  45. package/@types/ChatBoostRemoved.ts +28 -0
  46. package/@types/ChatBoostSource.ts +18 -0
  47. package/@types/ChatBoostSourceGiftCode.ts +19 -0
  48. package/@types/ChatBoostSourceGiveaway.ts +35 -0
  49. package/@types/ChatBoostSourcePremium.ts +19 -0
  50. package/@types/ChatBoostUpdated.ts +18 -0
  51. package/@types/ChatFullInfo.ts +260 -0
  52. package/@types/ChatInviteLink.ts +66 -0
  53. package/@types/ChatJoinRequest.ts +42 -0
  54. package/@types/ChatLocation.ts +16 -0
  55. package/@types/ChatMember.ts +28 -0
  56. package/@types/ChatMemberAdministrator.ts +107 -0
  57. package/@types/ChatMemberBanned.ts +23 -0
  58. package/@types/ChatMemberLeft.ts +18 -0
  59. package/@types/ChatMemberMember.ts +23 -0
  60. package/@types/ChatMemberOwner.ts +28 -0
  61. package/@types/ChatMemberRestricted.ts +99 -0
  62. package/@types/ChatMemberUpdated.ts +49 -0
  63. package/@types/ChatPermissions.ts +78 -0
  64. package/@types/ChatPhoto.ts +30 -0
  65. package/@types/ChatShared.ts +36 -0
  66. package/@types/Checklist.ts +33 -0
  67. package/@types/ChecklistTask.ts +33 -0
  68. package/@types/ChecklistTasksAdded.ts +19 -0
  69. package/@types/ChecklistTasksDone.ts +24 -0
  70. package/@types/ChosenInlineResult.ts +34 -0
  71. package/@types/Contact.ts +33 -0
  72. package/@types/CopyTextButton.ts +11 -0
  73. package/@types/Dice.ts +17 -0
  74. package/@types/DirectMessagePriceChanged.ts +17 -0
  75. package/@types/Document.ts +41 -0
  76. package/@types/EncryptedCredentials.ts +23 -0
  77. package/@types/EncryptedPassportElement.ts +357 -0
  78. package/@types/ExternalReplyInfo.ts +159 -0
  79. package/@types/File.ts +33 -0
  80. package/@types/ForceReply.ts +26 -0
  81. package/@types/ForumTopic.ts +26 -0
  82. package/@types/ForumTopicClosed.ts +6 -0
  83. package/@types/ForumTopicCreated.ts +21 -0
  84. package/@types/ForumTopicEdited.ts +17 -0
  85. package/@types/ForumTopicReopened.ts +6 -0
  86. package/@types/Game.ts +41 -0
  87. package/@types/GameHighScore.ts +23 -0
  88. package/@types/GeneralForumTopicHidden.ts +7 -0
  89. package/@types/GeneralForumTopicUnhidden.ts +7 -0
  90. package/@types/Gift.ts +38 -0
  91. package/@types/GiftInfo.ts +52 -0
  92. package/@types/Gifts.ts +13 -0
  93. package/@types/Giveaway.ts +55 -0
  94. package/@types/GiveawayCompleted.ts +29 -0
  95. package/@types/GiveawayCreated.ts +11 -0
  96. package/@types/GiveawayWinners.ts +68 -0
  97. package/@types/InaccessibleMessage.ts +23 -0
  98. package/@types/InlineKeyboardButton.ts +88 -0
  99. package/@types/InlineKeyboardMarkup.ts +13 -0
  100. package/@types/InlineQuery.ts +41 -0
  101. package/@types/InlineQueryResult.ts +70 -0
  102. package/@types/InlineQueryResultArticle.ts +58 -0
  103. package/@types/InlineQueryResultAudio.ts +69 -0
  104. package/@types/InlineQueryResultCachedAudio.ts +55 -0
  105. package/@types/InlineQueryResultCachedDocument.ts +65 -0
  106. package/@types/InlineQueryResultCachedGif.ts +65 -0
  107. package/@types/InlineQueryResultCachedMpeg4Gif.ts +65 -0
  108. package/@types/InlineQueryResultCachedPhoto.ts +70 -0
  109. package/@types/InlineQueryResultCachedSticker.ts +34 -0
  110. package/@types/InlineQueryResultCachedVideo.ts +70 -0
  111. package/@types/InlineQueryResultCachedVoice.ts +60 -0
  112. package/@types/InlineQueryResultContact.ts +64 -0
  113. package/@types/InlineQueryResultDocument.ts +85 -0
  114. package/@types/InlineQueryResultGame.ts +29 -0
  115. package/@types/InlineQueryResultGif.ts +91 -0
  116. package/@types/InlineQueryResultLocation.ts +82 -0
  117. package/@types/InlineQueryResultMpeg4Gif.ts +91 -0
  118. package/@types/InlineQueryResultPhoto.ts +84 -0
  119. package/@types/InlineQueryResultVenue.ts +80 -0
  120. package/@types/InlineQueryResultVideo.ts +98 -0
  121. package/@types/InlineQueryResultVoice.ts +65 -0
  122. package/@types/InlineQueryResultsButton.ts +34 -0
  123. package/@types/InputChecklist.ts +39 -0
  124. package/@types/InputChecklistTask.ts +30 -0
  125. package/@types/InputContactMessageContent.ts +27 -0
  126. package/@types/InputFile.ts +10 -0
  127. package/@types/InputInvoiceMessageContent.ts +120 -0
  128. package/@types/InputLocationMessageContent.ts +39 -0
  129. package/@types/InputMedia.ts +24 -0
  130. package/@types/InputMediaAnimation.ts +68 -0
  131. package/@types/InputMediaAudio.ts +58 -0
  132. package/@types/InputMediaDocument.ts +49 -0
  133. package/@types/InputMediaPhoto.ts +45 -0
  134. package/@types/InputMediaVideo.ts +85 -0
  135. package/@types/InputMessageContent.ts +25 -0
  136. package/@types/InputPaidMedia.ts +11 -0
  137. package/@types/InputPaidMediaPhoto.ts +21 -0
  138. package/@types/InputPaidMediaVideo.ts +64 -0
  139. package/@types/InputPollOption.ts +25 -0
  140. package/@types/InputProfilePhoto.ts +10 -0
  141. package/@types/InputProfilePhotoAnimated.ts +23 -0
  142. package/@types/InputProfilePhotoStatic.ts +18 -0
  143. package/@types/InputSticker.ts +38 -0
  144. package/@types/InputStoryContent.ts +11 -0
  145. package/@types/InputStoryContentPhoto.ts +29 -0
  146. package/@types/InputStoryContentVideo.ts +49 -0
  147. package/@types/InputTextMessageContent.ts +28 -0
  148. package/@types/InputVenueMessageContent.ts +47 -0
  149. package/@types/Invoice.ts +35 -0
  150. package/@types/KeyboardButton.ts +61 -0
  151. package/@types/KeyboardButtonPollType.ts +13 -0
  152. package/@types/KeyboardButtonRequestChat.ts +68 -0
  153. package/@types/KeyboardButtonRequestUsers.ts +45 -0
  154. package/@types/LabeledPrice.ts +18 -0
  155. package/@types/LinkPreviewOptions.ts +32 -0
  156. package/@types/Location.ts +38 -0
  157. package/@types/LocationAddress.ts +26 -0
  158. package/@types/LoginUrl.ts +37 -0
  159. package/@types/MaskPosition.ts +28 -0
  160. package/@types/MaybeInaccessibleMessage.ts +8 -0
  161. package/@types/MenuButton.ts +20 -0
  162. package/@types/MenuButtonCommands.ts +11 -0
  163. package/@types/MenuButtonDefault.ts +11 -0
  164. package/@types/MenuButtonWebApp.ts +26 -0
  165. package/@types/Message.ts +608 -0
  166. package/@types/MessageAutoDeleteTimerChanged.ts +11 -0
  167. package/@types/MessageEntity.ts +109 -0
  168. package/@types/MessageId.ts +11 -0
  169. package/@types/MessageOrigin.ts +21 -0
  170. package/@types/MessageOriginChannel.ts +33 -0
  171. package/@types/MessageOriginChat.ts +28 -0
  172. package/@types/MessageOriginHiddenUser.ts +21 -0
  173. package/@types/MessageOriginUser.ts +23 -0
  174. package/@types/MessageReactionCountUpdated.ts +28 -0
  175. package/@types/MessageReactionUpdated.ts +43 -0
  176. package/@types/OrderInfo.ts +28 -0
  177. package/@types/OwnedGift.ts +11 -0
  178. package/@types/OwnedGiftRegular.ts +77 -0
  179. package/@types/OwnedGiftUnique.ts +57 -0
  180. package/@types/OwnedGifts.ts +23 -0
  181. package/@types/PaidMedia.ts +13 -0
  182. package/@types/PaidMediaInfo.ts +18 -0
  183. package/@types/PaidMediaPhoto.ts +18 -0
  184. package/@types/PaidMediaPreview.ts +26 -0
  185. package/@types/PaidMediaPurchased.ts +18 -0
  186. package/@types/PaidMediaVideo.ts +18 -0
  187. package/@types/PaidMessagePriceChanged.ts +16 -0
  188. package/@types/PassportData.ts +18 -0
  189. package/@types/PassportElementError.ts +37 -0
  190. package/@types/PassportElementErrorDataField.ts +39 -0
  191. package/@types/PassportElementErrorFile.ts +33 -0
  192. package/@types/PassportElementErrorFiles.ts +33 -0
  193. package/@types/PassportElementErrorFrontSide.ts +28 -0
  194. package/@types/PassportElementErrorReverseSide.ts +27 -0
  195. package/@types/PassportElementErrorSelfie.ts +28 -0
  196. package/@types/PassportElementErrorTranslationFile.ts +38 -0
  197. package/@types/PassportElementErrorTranslationFiles.ts +38 -0
  198. package/@types/PassportElementErrorUnspecified.ts +49 -0
  199. package/@types/PassportFile.ts +28 -0
  200. package/@types/PhotoSize.ts +32 -0
  201. package/@types/Poll.ts +81 -0
  202. package/@types/PollAnswer.ts +28 -0
  203. package/@types/PollOption.ts +24 -0
  204. package/@types/PreCheckoutQuery.ts +45 -0
  205. package/@types/ProximityAlertTriggered.ts +24 -0
  206. package/@types/ReactionCount.ts +18 -0
  207. package/@types/ReactionType.ts +18 -0
  208. package/@types/ReactionTypeCustomEmoji.ts +16 -0
  209. package/@types/ReactionTypeEmoji.ts +92 -0
  210. package/@types/ReactionTypePaid.ts +11 -0
  211. package/@types/RefundedPayment.ts +35 -0
  212. package/@types/ReplyKeyboardMarkup.ts +49 -0
  213. package/@types/ReplyKeyboardRemove.ts +25 -0
  214. package/@types/ReplyParameters.ts +48 -0
  215. package/@types/ResponseParameters.ts +19 -0
  216. package/@types/RevenueWithdrawalState.ts +13 -0
  217. package/@types/RevenueWithdrawalStateFailed.ts +11 -0
  218. package/@types/RevenueWithdrawalStatePending.ts +10 -0
  219. package/@types/RevenueWithdrawalStateSucceeded.ts +21 -0
  220. package/@types/SentWebAppMessage.ts +12 -0
  221. package/@types/SharedUser.ts +36 -0
  222. package/@types/ShippingAddress.ts +36 -0
  223. package/@types/ShippingOption.ts +23 -0
  224. package/@types/ShippingQuery.ts +28 -0
  225. package/@types/StarAmount.ts +17 -0
  226. package/@types/StarTransaction.ts +42 -0
  227. package/@types/StarTransactions.ts +13 -0
  228. package/@types/Sticker.ts +86 -0
  229. package/@types/StickerSet.ts +33 -0
  230. package/@types/Story.ts +18 -0
  231. package/@types/StoryArea.ts +18 -0
  232. package/@types/StoryAreaPosition.ts +36 -0
  233. package/@types/StoryAreaType.ts +24 -0
  234. package/@types/StoryAreaTypeLink.ts +16 -0
  235. package/@types/StoryAreaTypeLocation.ts +28 -0
  236. package/@types/StoryAreaTypeSuggestedReaction.ts +29 -0
  237. package/@types/StoryAreaTypeUniqueGift.ts +16 -0
  238. package/@types/StoryAreaTypeWeather.ts +26 -0
  239. package/@types/SuccessfulPayment.ts +60 -0
  240. package/@types/SwitchInlineQueryChosenChat.ts +33 -0
  241. package/@types/TextQuote.ts +30 -0
  242. package/@types/TransactionPartner.ts +31 -0
  243. package/@types/TransactionPartnerAffiliateProgram.ts +24 -0
  244. package/@types/TransactionPartnerChat.ts +21 -0
  245. package/@types/TransactionPartnerFragment.ts +18 -0
  246. package/@types/TransactionPartnerOther.ts +11 -0
  247. package/@types/TransactionPartnerTelegramAds.ts +11 -0
  248. package/@types/TransactionPartnerTelegramApi.ts +16 -0
  249. package/@types/TransactionPartnerUser.ts +70 -0
  250. package/@types/UniqueGift.ts +38 -0
  251. package/@types/UniqueGiftBackdrop.ts +23 -0
  252. package/@types/UniqueGiftBackdropColors.ts +26 -0
  253. package/@types/UniqueGiftInfo.ts +42 -0
  254. package/@types/UniqueGiftModel.ts +23 -0
  255. package/@types/UniqueGiftSymbol.ts +23 -0
  256. package/@types/Update.ts +177 -0
  257. package/@types/User.ts +74 -0
  258. package/@types/UserProfilePhotos.ts +18 -0
  259. package/@types/UsersShared.ts +19 -0
  260. package/@types/Venue.ts +48 -0
  261. package/@types/Video.ts +66 -0
  262. package/@types/VideoChatEnded.ts +11 -0
  263. package/@types/VideoChatParticipantsInvited.ts +13 -0
  264. package/@types/VideoChatScheduled.ts +11 -0
  265. package/@types/VideoChatStarted.ts +6 -0
  266. package/@types/VideoNote.ts +39 -0
  267. package/@types/Voice.ts +34 -0
  268. package/@types/WebAppData.ts +17 -0
  269. package/@types/WebAppInfo.ts +11 -0
  270. package/@types/WebhookInfo.ts +54 -0
  271. package/@types/WriteAccessAllowed.ts +23 -0
  272. package/@types/index.ts +395 -0
  273. package/@types/utils.ts +17 -0
  274. package/biome.json +58 -0
  275. package/bun.lock +105 -0
  276. package/cron/actions-server.ts +87 -0
  277. package/index.ts +9 -0
  278. package/nyx-client.ts +133 -0
  279. package/package.json +22 -0
  280. package/tsconfig.json +28 -0
  281. package/types.d.ts +35 -0
  282. package/utils/actions.ts +30 -0
  283. package/utils/api.ts +27 -0
  284. package/utils/enum.ts +5 -0
  285. package/utils/helpers.ts +71 -0
  286. package/utils/methods.ts +1943 -0
  287. package/utils/objects.ts +37 -0
  288. package/utils/table.ts +72 -0
@@ -0,0 +1,8 @@
1
+ import type { InaccessibleMessage, Message } from "./";
2
+
3
+ /**
4
+ * ## MaybeInaccessibleMessage
5
+ * This object describes a message that can be inaccessible to the bot. It can be one of
6
+ * @see https://core.telegram.org/bots/api#maybeinaccessiblemessage
7
+ * */
8
+ export type MaybeInaccessibleMessage = Message | InaccessibleMessage;
@@ -0,0 +1,20 @@
1
+ import type {
2
+ MenuButtonCommands,
3
+ MenuButtonDefault,
4
+ MenuButtonWebApp,
5
+ } from "./";
6
+
7
+ /**
8
+ * ## MenuButton
9
+ * This object describes the bot's menu button in a private chat. It should be one of
10
+ * - MenuButtonCommands
11
+ * - MenuButtonWebApp
12
+ * - MenuButtonDefault
13
+ * @see https://core.telegram.org/bots/api#menubutton
14
+ * If a menu button other than MenuButtonDefault is set for a private chat, then it is applied in the chat. Otherwise
15
+ * the default menu button is applied. By default, the menu button opens the list of bot commands.
16
+ */
17
+ export type MenuButton =
18
+ | MenuButtonCommands
19
+ | MenuButtonWebApp
20
+ | MenuButtonDefault;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * ## MenuButtonCommands
3
+ * epresents a menu button, which opens the bot's list of commands.
4
+ * @see https://core.telegram.org/bots/api#menubuttoncommands
5
+ */
6
+ export type MenuButtonCommands = {
7
+ /**
8
+ * Type of the button, must be commands
9
+ */
10
+ type: "commands";
11
+ };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * ## MenuButtonDefault
3
+ * Describes that no specific value for the menu button was set.
4
+ * @see https://core.telegram.org/bots/api#menubuttondefault
5
+ */
6
+ export type MenuButtonDefault = {
7
+ /**
8
+ * Type of the button, must be default
9
+ */
10
+ type: "default";
11
+ };
@@ -0,0 +1,26 @@
1
+ import type { WebAppInfo } from "./";
2
+
3
+ /**
4
+ * ## MenuButtonWebApp
5
+ * Represents a menu button, which launches a Web App.
6
+ * @see https://core.telegram.org/bots/api#menubuttonwebapp
7
+ */
8
+ export type MenuButtonWebApp = {
9
+ /**
10
+ * Type of the button, must be web_app
11
+ */
12
+ type: "web_app";
13
+
14
+ /**
15
+ * Text on the button
16
+ */
17
+ text: string;
18
+
19
+ /**
20
+ * Description of the Web App that will be launched when the user presses the button. The Web App will be able to send
21
+ * an arbitrary message on behalf of the user using the method answerWebAppQuery. Alternatively, a `t.me` link to a
22
+ * Web App of the bot can be specified in the object instead of the Web App's URL, in which case the Web App will be
23
+ * opened as if the user pressed the link.
24
+ */
25
+ web_app: WebAppInfo;
26
+ };
@@ -0,0 +1,608 @@
1
+ import type {
2
+ Animation,
3
+ Audio,
4
+ Chat,
5
+ ChatBackground,
6
+ ChatBoostAdded,
7
+ ChatShared,
8
+ Checklist,
9
+ ChecklistTasksAdded,
10
+ ChecklistTasksDone,
11
+ Contact,
12
+ Dice,
13
+ DirectMessagePriceChanged,
14
+ Document,
15
+ ExternalReplyInfo,
16
+ ForumTopicClosed,
17
+ ForumTopicCreated,
18
+ ForumTopicEdited,
19
+ ForumTopicReopened,
20
+ Game,
21
+ GeneralForumTopicHidden,
22
+ GeneralForumTopicUnhidden,
23
+ GiftInfo,
24
+ Giveaway,
25
+ GiveawayCompleted,
26
+ GiveawayCreated,
27
+ GiveawayWinners,
28
+ InlineKeyboardMarkup,
29
+ Invoice,
30
+ LinkPreviewOptions,
31
+ Location,
32
+ MaybeInaccessibleMessage,
33
+ MessageAutoDeleteTimerChanged,
34
+ MessageEntity,
35
+ MessageOrigin,
36
+ PaidMediaInfo,
37
+ PaidMessagePriceChanged,
38
+ PassportData,
39
+ PhotoSize,
40
+ Poll,
41
+ ProximityAlertTriggered,
42
+ RefundedPayment,
43
+ Sticker,
44
+ Story,
45
+ SuccessfulPayment,
46
+ TextQuote,
47
+ UniqueGiftInfo,
48
+ User,
49
+ UsersShared,
50
+ Venue,
51
+ Video,
52
+ VideoChatEnded,
53
+ VideoChatParticipantsInvited,
54
+ VideoChatScheduled,
55
+ VideoChatStarted,
56
+ VideoNote,
57
+ Voice,
58
+ WebAppData,
59
+ WriteAccessAllowed,
60
+ } from "./";
61
+
62
+ /**
63
+ * ## Message
64
+ * This object represents a message.
65
+ * @see https://core.telegram.org/bots/api#message
66
+ */
67
+ export type Message = {
68
+ /**
69
+ * Unique message identifier inside this chat
70
+ */
71
+ message_id: number;
72
+
73
+ /**
74
+ * Optional. Unique identifier of a message thread to which the message belongs; for supergroups only
75
+ */
76
+ message_thread_id?: number;
77
+
78
+ /**
79
+ * Optional. Sender of the message; may be empty for messages sent to channels. For backward compatibility, if the
80
+ * message was sent on behalf of a chat, the field contains a fake sender user in non-channel chats
81
+ */
82
+ from?: User;
83
+
84
+ /**
85
+ * Optional. Sender of the message when sent on behalf of a chat. For example, the supergroup itself for messages
86
+ * sent by its anonymous administrators or a linked channel for messages automatically forwarded to the channel's
87
+ * discussion group. For backward compatibility, if the message was sent on behalf of a chat, the field from contains
88
+ * a fake sender user in non-channel chats.
89
+ */
90
+ sender_chat?: Chat;
91
+
92
+ /**
93
+ * Optional. If the sender of the message boosted the chat, the number of boosts added by the user
94
+ */
95
+ sender_boost_count?: number;
96
+
97
+ /**
98
+ * Optional. The bot that actually sent the message on behalf of the business account. Available only for outgoing
99
+ * messages sent on behalf of the connected business account.
100
+ */
101
+ sender_business_bot?: User;
102
+
103
+ /**
104
+ * Date the message was sent in Unix time. It is always a positive number, representing a valid date.
105
+ */
106
+ date: number;
107
+
108
+ /**
109
+ * Optional. Unique identifier of the business connection from which the message was received. If non-empty, the
110
+ * message belongs to a chat of the corresponding business account that is independent from any potential bot chat
111
+ * which might share the same identifier.
112
+ */
113
+ business_connection_id?: string;
114
+
115
+ /**
116
+ * Chat the message belongs to
117
+ */
118
+ chat: Chat;
119
+
120
+ /**
121
+ * Optional. Information about the original message for forwarded messages
122
+ */
123
+ forward_origin?: MessageOrigin;
124
+
125
+ /**
126
+ * Optional. True, if the message is sent to a forum topic
127
+ */
128
+ is_topic_message?: boolean;
129
+
130
+ /**
131
+ * Optional. True, if the message is a channel post that was automatically forwarded to the connected discussion group
132
+ */
133
+ is_automatic_forward?: boolean;
134
+
135
+ /**
136
+ * Optional. For replies in the same chat and message thread, the original message. Note that the Message object in
137
+ * this field will not contain further reply_to_message fields even if it itself is a reply.
138
+ */
139
+ reply_to_message?: Message;
140
+
141
+ /**
142
+ * Optional. Information about the message that is being replied to, which may come from another chat or forum topic
143
+ */
144
+ external_reply?: ExternalReplyInfo;
145
+
146
+ /**
147
+ * Optional. For replies that quote part of the original message, the quoted part of the message
148
+ */
149
+ quote?: TextQuote;
150
+
151
+ /**
152
+ * Optional. For replies to a story, the original story
153
+ */
154
+ reply_to_story?: Story;
155
+
156
+ /**
157
+ * Optional. Bot through which the message was sent
158
+ */
159
+ via_bot?: User;
160
+
161
+ /**
162
+ * Optional. Date the message was last edited in Unix time
163
+ */
164
+ edit_date?: number;
165
+
166
+ /**
167
+ * Optional. True, if the message can't be forwarded
168
+ */
169
+ has_protected_content?: boolean;
170
+
171
+ /**
172
+ * Optional. True, if the message was sent by an implicit action, for example, as an away or a greeting business
173
+ * message, or as a scheduled message
174
+ */
175
+ is_from_offline?: boolean;
176
+
177
+ /**
178
+ * Optional. The unique identifier of a media message group this message belongs to
179
+ */
180
+ media_group_id?: string;
181
+
182
+ /**
183
+ * Optional. Signature of the post author for messages in channels, or the custom title of an anonymous group
184
+ * administrator
185
+ */
186
+ author_signature?: string;
187
+
188
+ /**
189
+ * Optional. The number of Telegram Stars that were paid by the sender of the message to send it
190
+ */
191
+ paid_star_count?: number;
192
+
193
+ /**
194
+ * Optional. For text messages, the actual UTF-8 text of the message
195
+ */
196
+ text?: string;
197
+
198
+ /**
199
+ * Optional. For text messages, special entities like usernames, URLs, bot commands, etc. that appear in the text
200
+ */
201
+ entities?: MessageEntity[];
202
+
203
+ /**
204
+ * Optional. Options used for link preview generation for the message, if it is a text message and link preview
205
+ * options were changed
206
+ */
207
+ link_preview_options?: LinkPreviewOptions;
208
+
209
+ /**
210
+ * Optional. Unique identifier of the message effect added to the message
211
+ */
212
+ effect_id?: string;
213
+
214
+ /**
215
+ * Optional. Message is an animation, information about the animation. For backward compatibility, when this field is
216
+ * set, the document field will also be set
217
+ */
218
+ animation?: Animation;
219
+
220
+ /**
221
+ * Optional. Message is an audio file, information about the file
222
+ */
223
+ audio?: Audio;
224
+
225
+ /**
226
+ * Optional. Message is a general file, information about the file
227
+ */
228
+ document?: Document;
229
+
230
+ /**
231
+ * Optional. Message contains paid media; information about the paid media
232
+ */
233
+ paid_media?: PaidMediaInfo;
234
+
235
+ /**
236
+ * Optional. Message is a photo, available sizes of the photo
237
+ */
238
+ photo?: PhotoSize[];
239
+
240
+ /**
241
+ * Optional. Message is a sticker, information about the sticker
242
+ */
243
+ sticker?: Sticker;
244
+
245
+ /**
246
+ * Optional. Message is a forwarded story
247
+ */
248
+ story?: Story;
249
+
250
+ /**
251
+ * Optional. Message is a video, information about the video
252
+ */
253
+ video?: Video;
254
+
255
+ /**
256
+ * Optional. Message is a video note, information about the video message
257
+ */
258
+ video_note?: VideoNote;
259
+
260
+ /**
261
+ * Optional. Message is a voice message, information about the file
262
+ */
263
+ voice?: Voice;
264
+
265
+ /**
266
+ * Optional. Caption for the animation, audio, document, paid media, photo, video or voice
267
+ */
268
+ caption?: string;
269
+
270
+ /**
271
+ * Optional. For messages with a caption, special entities like usernames, URLs, bot commands, etc. that appear in the
272
+ * caption
273
+ */
274
+ caption_entities?: MessageEntity[];
275
+
276
+ /**
277
+ * Optional. True, if the caption must be shown above the message media
278
+ */
279
+ show_caption_above_media?: boolean;
280
+
281
+ /**
282
+ * Optional. True, if the message media is covered by a spoiler animation
283
+ */
284
+ has_media_spoiler?: boolean;
285
+
286
+ /**
287
+ * Optional. Optional. Message is a checklist
288
+ */
289
+ checklist?: Checklist;
290
+
291
+ /**
292
+ * Optional. Message is a shared contact, information about the contact
293
+ */
294
+ contact?: Contact;
295
+
296
+ /**
297
+ * Optional. Message is a dice with random value
298
+ */
299
+ dice?: Dice;
300
+
301
+ /**
302
+ * Optional. Message is a game, information about the game. [More about games](https://core.telegram.org/bots/api#games)
303
+ */
304
+ game?: Game;
305
+
306
+ /**
307
+ * Optional. Message is a native poll, information about the poll
308
+ */
309
+ poll?: Poll;
310
+
311
+ /**
312
+ * Optional. Message is a venue, information about the venue. For backward compatibility, when this field is set, the
313
+ * location field will also be set
314
+ */
315
+ venue?: Venue;
316
+
317
+ /**
318
+ * Optional. Message is a shared location, information about the location
319
+ */
320
+ location?: Location;
321
+
322
+ /**
323
+ * Optional. New members that were added to the group or supergroup and information about them (the bot itself may be
324
+ * one of these members)
325
+ */
326
+ new_chat_members?: User[];
327
+
328
+ /**
329
+ * Optional. A member was removed from the group, information about them (this member may be the bot itself)
330
+ */
331
+ left_chat_member?: User;
332
+
333
+ /**
334
+ * Optional. A chat title was changed to this value
335
+ */
336
+ new_chat_title?: string;
337
+
338
+ /**
339
+ * Optional. A chat photo was change to this value
340
+ */
341
+ new_chat_photo?: PhotoSize[];
342
+
343
+ /**
344
+ * Optional. Service message: the chat photo was deleted
345
+ */
346
+ delete_chat_photo?: boolean;
347
+
348
+ /**
349
+ * Optional. Service message: the group has been created
350
+ */
351
+ group_chat_created?: boolean;
352
+
353
+ /**
354
+ * Optional. Service message: the supergroup has been created. This field can't be received in a message coming
355
+ * through updates, because bot can't be a member of a supergroup when it is created. It can only be found in
356
+ * reply_to_message if someone replies to a very first message in a directly created supergroup.
357
+ */
358
+ supergroup_chat_created?: boolean;
359
+
360
+ /**
361
+ * Optional. Service message: the channel has been created. This field can't be received in a message coming through
362
+ * updates, because bot can't be a member of a channel when it is created. It can only be found in reply_to_message
363
+ * if someone replies to a very first message in a channel.
364
+ */
365
+ channel_chat_created?: boolean;
366
+
367
+ /**
368
+ * Optional. Service message: auto-delete timer settings changed in the chat
369
+ */
370
+ message_auto_delete_timer_changed?: MessageAutoDeleteTimerChanged;
371
+
372
+ /**
373
+ * Optional. The group has been migrated to a supergroup with the specified identifier. This number may have more
374
+ * than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it.
375
+ * But it has at most 52 significant bits, so a signed 64-bit integer or double-precision float type are safe for
376
+ * storing this identifier.
377
+ */
378
+ migrate_to_chat_id?: number;
379
+
380
+ /**
381
+ * Optional. The supergroup has been migrated from a group with the specified identifier. This number may have more
382
+ * than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it.
383
+ * But it has at most 52 significant bits, so a signed 64-bit integer or double-precision float type are safe for
384
+ * storing this identifier.
385
+ */
386
+ migrate_from_chat_id?: number;
387
+
388
+ /**
389
+ * Optional. Specified message was pinned. Note that the Message object in this field will not contain further
390
+ * reply_to_message fields even if it itself is a reply.
391
+ */
392
+ pinned_message?: MaybeInaccessibleMessage;
393
+
394
+ /**
395
+ * Optional. Message is an invoice for a payment, information about the invoice. [More about payments](https://core.telegram.org/bots/api#payments)
396
+ */
397
+ invoice?: Invoice;
398
+
399
+ /**
400
+ * Optional. Message is a service message about a successful payment, information about the payment. [More about payments](https://core.telegram.org/bots/api#payments)
401
+ */
402
+ successful_payment?: SuccessfulPayment;
403
+
404
+ /**
405
+ * Optional. Message is a service message about a refunded payment, information about the payment. [More about payments](https://core.telegram.org/bots/api#payments)
406
+ */
407
+ refunded_payment?: RefundedPayment;
408
+
409
+ /**
410
+ * Optional. Service message: users were shared with the bot
411
+ */
412
+ users_shared?: UsersShared;
413
+
414
+ /**
415
+ * Optional. Service message: a chat was shared with the bot
416
+ */
417
+ chat_shared?: ChatShared;
418
+
419
+ /**
420
+ * Optional. Service message: a regular gift was sent or received
421
+ */
422
+ gift?: GiftInfo;
423
+
424
+ /**
425
+ * Optional. Service message: a unique gift was sent or received
426
+ */
427
+ unique_gift?: UniqueGiftInfo;
428
+
429
+ /**
430
+ * Optional. The domain name of the website on which the user has logged in. [More about Telegram Login](https://core.telegram.org/widgets/login)
431
+ */
432
+ connected_website?: string;
433
+
434
+ /**
435
+ * Optional. Service message: the user allowed the bot to write messages after adding it to the attachment or side
436
+ * menu, launching a Web App from a link, or accepting an explicit request from a Web App sent by the method
437
+ * requestWriteAccess
438
+ */
439
+ write_access_allowed?: WriteAccessAllowed;
440
+
441
+ /**
442
+ * Optional. Telegram Passport data
443
+ */
444
+ passport_data?: PassportData;
445
+
446
+ /**
447
+ * Optional. Service message. A user in the chat triggered another user's proximity alert while sharing
448
+ * Live Location.
449
+ */
450
+ proximity_alert_triggered?: ProximityAlertTriggered;
451
+
452
+ /**
453
+ * Optional. Service message: user boosted the chat
454
+ */
455
+ boost_added?: ChatBoostAdded;
456
+
457
+ /**
458
+ * Optional. Service message: chat background set
459
+ */
460
+ chat_background_set?: ChatBackground;
461
+
462
+ /**
463
+ * Optional. Service message: some tasks in a checklist were marked as done or not done
464
+ */
465
+ checklist_tasks_done?: ChecklistTasksDone;
466
+
467
+ /**
468
+ * Optional. Service message: tasks were added to a checklist
469
+ */
470
+ checklist_tasks_added?: ChecklistTasksAdded;
471
+
472
+ /**
473
+ * Optional. Service message: the price for paid messages in the corresponding
474
+ * direct messages chat of a channel has changed
475
+ */
476
+ direct_message_price_changed?: DirectMessagePriceChanged;
477
+
478
+ /**
479
+ * Optional. Service message: forum topic created
480
+ */
481
+ forum_topic_created?: ForumTopicCreated;
482
+
483
+ /**
484
+ * Optional. Service message: forum topic edited
485
+ */
486
+ forum_topic_edited?: ForumTopicEdited;
487
+
488
+ /**
489
+ * Optional. Service message: forum topic closed
490
+ */
491
+ forum_topic_closed?: ForumTopicClosed;
492
+
493
+ /**
494
+ * Optional. Service message: forum topic reopened
495
+ */
496
+ forum_topic_reopened?: ForumTopicReopened;
497
+
498
+ /**
499
+ * Optional. Service message: the 'General' forum topic hidden
500
+ */
501
+ general_forum_topic_hidden?: GeneralForumTopicHidden;
502
+
503
+ /**
504
+ * Optional. Service message: the 'General' forum topic unhidden
505
+ */
506
+ general_forum_topic_unhidden?: GeneralForumTopicUnhidden;
507
+
508
+ /**
509
+ * Optional. Service message: a scheduled giveaway was created
510
+ */
511
+ giveaway_created?: GiveawayCreated;
512
+
513
+ /**
514
+ * Optional. The message is a scheduled giveaway message
515
+ */
516
+ giveaway?: Giveaway;
517
+
518
+ /**
519
+ * Optional. A giveaway with public winners was completed
520
+ */
521
+ giveaway_winners?: GiveawayWinners;
522
+
523
+ /**
524
+ * Optional. Service message: a giveaway without public winners was completed
525
+ */
526
+ giveaway_completed?: GiveawayCompleted;
527
+
528
+ /**
529
+ * Optional. Service message: the price for paid messages has changed in the chat
530
+ */
531
+ paid_message_price_changed?: PaidMessagePriceChanged;
532
+
533
+ /**
534
+ * Optional. Service message: video chat scheduled
535
+ */
536
+ video_chat_scheduled?: VideoChatScheduled;
537
+
538
+ /**
539
+ * Optional. Service message: video chat started
540
+ */
541
+ video_chat_started?: VideoChatStarted;
542
+
543
+ /**
544
+ * Optional. Service message: video chat ended
545
+ */
546
+ video_chat_ended?: VideoChatEnded;
547
+
548
+ /**
549
+ * Optional. Service message: new participants invited to a video chat
550
+ */
551
+ video_chat_participants_invited?: VideoChatParticipantsInvited;
552
+
553
+ /**
554
+ * Optional. Service message: data sent by a Web App
555
+ */
556
+ web_app_data?: WebAppData;
557
+
558
+ /**
559
+ * Optional. Inline keyboard attached to the message. `login_url` buttons are represented as ordinary `url` buttons.
560
+ */
561
+ reply_markup?: InlineKeyboardMarkup;
562
+ };
563
+
564
+ export const messageTypes = [
565
+ "text",
566
+ "animation",
567
+ "audio",
568
+ "contact",
569
+ "dice",
570
+ "document",
571
+ "game",
572
+ "invoice",
573
+ "location",
574
+ "passport_data",
575
+ "photo",
576
+ "pinned_message",
577
+ "poll",
578
+ "sticker",
579
+ "video",
580
+ "video_note",
581
+ "voice",
582
+ "successful_payment",
583
+ "refunded_payment",
584
+ "migrate_from_chat_id",
585
+ "migrate_to_chat_id",
586
+ "new_chat_members",
587
+ "new_chat_photo",
588
+ "new_chat_title",
589
+ "left_chat_member",
590
+ "delete_chat_photo",
591
+ "group_chat_created",
592
+ "supergroup_chat_created",
593
+ "channel_chat_created",
594
+ "message_auto_delete_timer_changed",
595
+ "video_chat_scheduled",
596
+ "video_chat_started",
597
+ "video_chat_ended",
598
+ "video_chat_participants_invited",
599
+ "web_app_data",
600
+ ] as const;
601
+
602
+ /**
603
+ * All message types such as `message:text`, `message:audio`, `message:new_chat_members` etc.
604
+ */
605
+ export type MessageTypes = {
606
+ [P in (typeof messageTypes)[number] as `message:${P}`]: Message &
607
+ Required<Pick<Message, P>>;
608
+ };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * ## MessageAutoDeleteTimerChanged
3
+ * This object represents a service message about a change in auto-delete timer settings.
4
+ * @see https://core.telegram.org/bots/api#messageautodeletetimerchanged
5
+ */
6
+ export type MessageAutoDeleteTimerChanged = {
7
+ /**
8
+ * New auto-delete time for messages in the chat; in seconds
9
+ */
10
+ message_auto_delete_time: number;
11
+ };