Skip to content

Commit 04ddbd1

Browse files
authored
🤖 Merge PR DefinitelyTyped#73410 [node-telegram-bot-api] Added ReactionType and setMessageReaction method, added missing props to SendBasicOptions by @AlexSolari
1 parent 65fa021 commit 04ddbd1

File tree

2 files changed

+124
-0
lines changed

2 files changed

+124
-0
lines changed

types/node-telegram-bot-api/index.d.ts

Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,115 @@ declare namespace TelegramBot {
9292

9393
type ParseMode = "Markdown" | "MarkdownV2" | "HTML";
9494

95+
interface LinkPreviewOptions {
96+
is_disabled?: boolean;
97+
url?: string;
98+
prefer_small_media?: boolean;
99+
prefer_large_media?: boolean;
100+
show_above_text?: boolean;
101+
}
102+
103+
type ReactionType = ReactionTypeEmoji | ReactionTypeCustomEmoji;
104+
105+
interface AbstractReactionType {
106+
type: string;
107+
}
108+
109+
type TelegramEmoji =
110+
| "👍"
111+
| "👎"
112+
| "❤"
113+
| "🔥"
114+
| "🥰"
115+
| "👏"
116+
| "😁"
117+
| "🤔"
118+
| "🤯"
119+
| "😱"
120+
| "🤬"
121+
| "😢"
122+
| "🎉"
123+
| "🤩"
124+
| "🤮"
125+
| "💩"
126+
| "🙏"
127+
| "👌"
128+
| "🕊"
129+
| "🤡"
130+
| "🥱"
131+
| "🥴"
132+
| "😍"
133+
| "🐳"
134+
| "❤‍🔥"
135+
| "🌚"
136+
| "🌭"
137+
| "💯"
138+
| "🤣"
139+
| "⚡"
140+
| "🍌"
141+
| "🏆"
142+
| "💔"
143+
| "🤨"
144+
| "😐"
145+
| "🍓"
146+
| "🍾"
147+
| "💋"
148+
| "🖕"
149+
| "😈"
150+
| "😴"
151+
| "😭"
152+
| "🤓"
153+
| "👻"
154+
| "👨‍💻"
155+
| "👀"
156+
| "🎃"
157+
| "🙈"
158+
| "😇"
159+
| "😨"
160+
| "🤝"
161+
| "✍"
162+
| "🤗"
163+
| "🫡"
164+
| "🎅"
165+
| "🎄"
166+
| "☃"
167+
| "💅"
168+
| "🤪"
169+
| "🗿"
170+
| "🆒"
171+
| "💘"
172+
| "🙉"
173+
| "🦄"
174+
| "😘"
175+
| "💊"
176+
| "🙊"
177+
| "😎"
178+
| "👾"
179+
| "🤷‍♂"
180+
| "🤷"
181+
| "🤷‍♀"
182+
| "😡";
183+
184+
interface ReactionTypeEmoji extends AbstractReactionType {
185+
type: "emoji";
186+
emoji: TelegramEmoji;
187+
}
188+
189+
interface ReactionTypeCustomEmoji extends AbstractReactionType {
190+
type: "custom_emoji";
191+
custom_emoji_id: string;
192+
}
193+
194+
interface ReplyParameters {
195+
message_id: number;
196+
chat_id?: ChatId;
197+
allow_sending_without_reply?: boolean;
198+
quote?: string;
199+
quote_parse_mode?: ParseMode;
200+
quote_entities?: MessageEntity[];
201+
quote_position?: number;
202+
}
203+
95204
/// METHODS OPTIONS ///
96205
interface PollingOptions {
97206
interval?: string | number | undefined;
@@ -150,7 +259,9 @@ declare namespace TelegramBot {
150259
reply_to_message_id?: number | undefined;
151260
reply_markup?: InlineKeyboardMarkup | ReplyKeyboardMarkup | ReplyKeyboardRemove | ForceReply | undefined;
152261
protect_content?: boolean | undefined;
262+
reply_parameters?: ReplyParameters;
153263
allow_sending_without_reply?: boolean | undefined;
264+
link_preview_options?: LinkPreviewOptions;
154265
}
155266

156267
interface SendMessageOptions extends SendBasicOptions {
@@ -1728,6 +1839,15 @@ declare class TelegramBot extends TelegramBotEventEmitter<TelegramBot.TelegramEv
17281839
options?: TelegramBot.SendChatActionOptions,
17291840
): Promise<boolean>;
17301841

1842+
setMessageReaction(
1843+
chatId: TelegramBot.ChatId,
1844+
messageId: number,
1845+
form: {
1846+
reaction?: TelegramBot.ReactionType[];
1847+
is_big?: boolean;
1848+
},
1849+
): Promise<boolean>;
1850+
17311851
banChatMember(
17321852
chatId: TelegramBot.ChatId,
17331853
userId: number,

types/node-telegram-bot-api/node-telegram-bot-api-tests.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ MyTelegramBot.sendMessage(1234, "test-ReplyKeyboardMarkup-no-placeholder", {
6767
],
6868
},
6969
});
70+
MyTelegramBot.sendMessage(1234, "test-text", { reply_parameters: { message_id: 4321 } });
7071
MyTelegramBot.sendMessage(1234, "test-text", { disable_web_page_preview: true, allow_sending_without_reply: true });
7172
const res: TelegramBot.InlineQueryResultArticle = {
7273
id: "1",
@@ -501,3 +502,6 @@ MyTelegramBot.addStickerToSet(1234, "custom_sticker", "sticker_path", "emoji", "
501502
MyTelegramBot.setStickerPositionInSet("sticker_on_position_one", 2);
502503
MyTelegramBot.deleteStickerFromSet("sticker_on_position_one");
503504
MyTelegramBot.setStickerSetThumb(1234, "my_set_thumb", "thumb_file");
505+
MyTelegramBot.setMessageReaction(1234, 1234, {
506+
reaction: [{ type: "emoji", emoji: "👍" }],
507+
});

0 commit comments

Comments
 (0)