@mtcute/dispatcher 0.16.0 → 0.16.9
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.
- package/README.md +2 -2
- package/callback-data-builder.test.d.ts +1 -0
- package/{esm/context → context}/business-message.d.ts +17 -17
- package/{esm/context → context}/callback-query.d.ts +4 -4
- package/{cjs/context → context}/chat-join-request.d.ts +1 -1
- package/{esm/context → context}/chosen-inline-result.d.ts +1 -1
- package/{esm/context → context}/inline-query.d.ts +2 -2
- package/{cjs/context → context}/message.d.ts +3 -3
- package/context/parse.d.ts +13 -0
- package/{esm/context → context}/pre-checkout-query.d.ts +1 -1
- package/{cjs/dispatcher.d.ts → dispatcher.d.ts} +2 -2
- package/{cjs/filters → filters}/bots.d.ts +13 -23
- package/filters/bots.test.d.ts +1 -0
- package/{esm/filters → filters}/chat.d.ts +2 -2
- package/filters/logic.test.d.ts +1 -0
- package/filters/message.d.ts +214 -0
- package/{cjs/filters → filters}/state.d.ts +1 -1
- package/{esm/filters → filters}/text.d.ts +5 -5
- package/{esm/filters → filters}/user.d.ts +1 -1
- package/{esm/handler.d.ts → handler.d.ts} +1 -1
- package/index.cjs +2510 -0
- package/index.d.ts +8 -1
- package/index.js +2505 -1
- package/package.json +28 -24
- package/{esm/state → state}/repository.d.ts +6 -6
- package/{esm/state → state}/service.d.ts +3 -2
- package/{cjs/state → state}/update-state.d.ts +1 -1
- package/{esm/wizard.d.ts → wizard.d.ts} +4 -4
- package/cjs/callback-data-builder.js +0 -139
- package/cjs/callback-data-builder.js.map +0 -1
- package/cjs/context/base.js +0 -3
- package/cjs/context/base.js.map +0 -1
- package/cjs/context/business-message.d.ts +0 -60
- package/cjs/context/business-message.js +0 -146
- package/cjs/context/business-message.js.map +0 -1
- package/cjs/context/callback-query.d.ts +0 -62
- package/cjs/context/callback-query.js +0 -109
- package/cjs/context/callback-query.js.map +0 -1
- package/cjs/context/chat-join-request.js +0 -35
- package/cjs/context/chat-join-request.js.map +0 -1
- package/cjs/context/chosen-inline-result.d.ts +0 -22
- package/cjs/context/chosen-inline-result.js +0 -36
- package/cjs/context/chosen-inline-result.js.map +0 -1
- package/cjs/context/index.js +0 -25
- package/cjs/context/index.js.map +0 -1
- package/cjs/context/inline-query.d.ts +0 -15
- package/cjs/context/inline-query.js +0 -23
- package/cjs/context/inline-query.js.map +0 -1
- package/cjs/context/message.js +0 -171
- package/cjs/context/message.js.map +0 -1
- package/cjs/context/parse.d.ts +0 -13
- package/cjs/context/parse.js +0 -43
- package/cjs/context/parse.js.map +0 -1
- package/cjs/context/pre-checkout-query.d.ts +0 -17
- package/cjs/context/pre-checkout-query.js +0 -27
- package/cjs/context/pre-checkout-query.js.map +0 -1
- package/cjs/context/scene-transition.js +0 -52
- package/cjs/context/scene-transition.js.map +0 -1
- package/cjs/dispatcher.js +0 -905
- package/cjs/dispatcher.js.map +0 -1
- package/cjs/filters/bots.js +0 -133
- package/cjs/filters/bots.js.map +0 -1
- package/cjs/filters/bundle.js +0 -27
- package/cjs/filters/bundle.js.map +0 -1
- package/cjs/filters/chat.d.ts +0 -27
- package/cjs/filters/chat.js +0 -55
- package/cjs/filters/chat.js.map +0 -1
- package/cjs/filters/group.js +0 -72
- package/cjs/filters/group.js.map +0 -1
- package/cjs/filters/index.js +0 -29
- package/cjs/filters/index.js.map +0 -1
- package/cjs/filters/logic.js +0 -114
- package/cjs/filters/logic.js.map +0 -1
- package/cjs/filters/message.d.ts +0 -332
- package/cjs/filters/message.js +0 -179
- package/cjs/filters/message.js.map +0 -1
- package/cjs/filters/state.js +0 -32
- package/cjs/filters/state.js.map +0 -1
- package/cjs/filters/text.d.ts +0 -64
- package/cjs/filters/text.js +0 -135
- package/cjs/filters/text.js.map +0 -1
- package/cjs/filters/types.js +0 -6
- package/cjs/filters/types.js.map +0 -1
- package/cjs/filters/updates.js +0 -40
- package/cjs/filters/updates.js.map +0 -1
- package/cjs/filters/user.d.ts +0 -24
- package/cjs/filters/user.js +0 -78
- package/cjs/filters/user.js.map +0 -1
- package/cjs/handler.d.ts +0 -41
- package/cjs/handler.js +0 -4
- package/cjs/handler.js.map +0 -1
- package/cjs/index.js +0 -31
- package/cjs/index.js.map +0 -1
- package/cjs/package.json +0 -3
- package/cjs/propagation.js +0 -27
- package/cjs/propagation.js.map +0 -1
- package/cjs/state/index.js +0 -22
- package/cjs/state/index.js.map +0 -1
- package/cjs/state/key.js +0 -43
- package/cjs/state/key.js.map +0 -1
- package/cjs/state/provider.js +0 -3
- package/cjs/state/provider.js.map +0 -1
- package/cjs/state/providers/index.js +0 -19
- package/cjs/state/providers/index.js.map +0 -1
- package/cjs/state/providers/memory.js +0 -81
- package/cjs/state/providers/memory.js.map +0 -1
- package/cjs/state/providers/sqlite.js +0 -100
- package/cjs/state/providers/sqlite.js.map +0 -1
- package/cjs/state/repository.d.ts +0 -62
- package/cjs/state/repository.js +0 -3
- package/cjs/state/repository.js.map +0 -1
- package/cjs/state/service.d.ts +0 -19
- package/cjs/state/service.js +0 -70
- package/cjs/state/service.js.map +0 -1
- package/cjs/state/update-state.js +0 -220
- package/cjs/state/update-state.js.map +0 -1
- package/cjs/wizard.d.ts +0 -64
- package/cjs/wizard.js +0 -103
- package/cjs/wizard.js.map +0 -1
- package/esm/callback-data-builder.d.ts +0 -49
- package/esm/callback-data-builder.js +0 -135
- package/esm/callback-data-builder.js.map +0 -1
- package/esm/context/base.d.ts +0 -9
- package/esm/context/base.js +0 -2
- package/esm/context/base.js.map +0 -1
- package/esm/context/business-message.js +0 -142
- package/esm/context/business-message.js.map +0 -1
- package/esm/context/callback-query.js +0 -103
- package/esm/context/callback-query.js.map +0 -1
- package/esm/context/chat-join-request.d.ts +0 -17
- package/esm/context/chat-join-request.js +0 -31
- package/esm/context/chat-join-request.js.map +0 -1
- package/esm/context/chosen-inline-result.js +0 -32
- package/esm/context/chosen-inline-result.js.map +0 -1
- package/esm/context/index.d.ts +0 -9
- package/esm/context/index.js +0 -9
- package/esm/context/index.js.map +0 -1
- package/esm/context/inline-query.js +0 -19
- package/esm/context/inline-query.js.map +0 -1
- package/esm/context/message.d.ts +0 -76
- package/esm/context/message.js +0 -167
- package/esm/context/message.js.map +0 -1
- package/esm/context/parse.d.ts +0 -13
- package/esm/context/parse.js +0 -39
- package/esm/context/parse.js.map +0 -1
- package/esm/context/pre-checkout-query.js +0 -23
- package/esm/context/pre-checkout-query.js.map +0 -1
- package/esm/context/scene-transition.d.ts +0 -24
- package/esm/context/scene-transition.js +0 -48
- package/esm/context/scene-transition.js.map +0 -1
- package/esm/dispatcher.d.ts +0 -880
- package/esm/dispatcher.js +0 -901
- package/esm/dispatcher.js.map +0 -1
- package/esm/filters/bots.d.ts +0 -74
- package/esm/filters/bots.js +0 -129
- package/esm/filters/bots.js.map +0 -1
- package/esm/filters/bundle.d.ts +0 -10
- package/esm/filters/bundle.js +0 -11
- package/esm/filters/bundle.js.map +0 -1
- package/esm/filters/chat.js +0 -50
- package/esm/filters/chat.js.map +0 -1
- package/esm/filters/group.d.ts +0 -26
- package/esm/filters/group.js +0 -67
- package/esm/filters/group.js.map +0 -1
- package/esm/filters/index.d.ts +0 -4
- package/esm/filters/index.js +0 -3
- package/esm/filters/index.js.map +0 -1
- package/esm/filters/logic.d.ts +0 -29
- package/esm/filters/logic.js +0 -107
- package/esm/filters/logic.js.map +0 -1
- package/esm/filters/message.d.ts +0 -332
- package/esm/filters/message.js +0 -156
- package/esm/filters/message.js.map +0 -1
- package/esm/filters/state.d.ts +0 -15
- package/esm/filters/state.js +0 -27
- package/esm/filters/state.js.map +0 -1
- package/esm/filters/text.js +0 -127
- package/esm/filters/text.js.map +0 -1
- package/esm/filters/types.d.ts +0 -91
- package/esm/filters/types.js +0 -5
- package/esm/filters/types.js.map +0 -1
- package/esm/filters/updates.d.ts +0 -39
- package/esm/filters/updates.js +0 -34
- package/esm/filters/updates.js.map +0 -1
- package/esm/filters/user.js +0 -72
- package/esm/filters/user.js.map +0 -1
- package/esm/handler.js +0 -3
- package/esm/handler.js.map +0 -1
- package/esm/index.d.ts +0 -8
- package/esm/index.js +0 -9
- package/esm/index.js.map +0 -1
- package/esm/propagation.d.ts +0 -22
- package/esm/propagation.js +0 -24
- package/esm/propagation.js.map +0 -1
- package/esm/state/index.d.ts +0 -5
- package/esm/state/index.js +0 -6
- package/esm/state/index.js.map +0 -1
- package/esm/state/key.d.ts +0 -24
- package/esm/state/key.js +0 -39
- package/esm/state/key.js.map +0 -1
- package/esm/state/provider.d.ts +0 -5
- package/esm/state/provider.js +0 -2
- package/esm/state/provider.js.map +0 -1
- package/esm/state/providers/index.d.ts +0 -2
- package/esm/state/providers/index.js +0 -3
- package/esm/state/providers/index.js.map +0 -1
- package/esm/state/providers/memory.d.ts +0 -29
- package/esm/state/providers/memory.js +0 -77
- package/esm/state/providers/memory.js.map +0 -1
- package/esm/state/providers/sqlite.d.ts +0 -28
- package/esm/state/providers/sqlite.js +0 -96
- package/esm/state/providers/sqlite.js.map +0 -1
- package/esm/state/repository.js +0 -2
- package/esm/state/repository.js.map +0 -1
- package/esm/state/service.js +0 -66
- package/esm/state/service.js.map +0 -1
- package/esm/state/update-state.d.ts +0 -151
- package/esm/state/update-state.js +0 -215
- package/esm/state/update-state.js.map +0 -1
- package/esm/wizard.js +0 -99
- package/esm/wizard.js.map +0 -1
- /package/{cjs/callback-data-builder.d.ts → callback-data-builder.d.ts} +0 -0
- /package/{cjs/context → context}/base.d.ts +0 -0
- /package/{cjs/context → context}/index.d.ts +0 -0
- /package/{cjs/context → context}/scene-transition.d.ts +0 -0
- /package/{cjs/filters → filters}/bundle.d.ts +0 -0
- /package/{cjs/filters → filters}/group.d.ts +0 -0
- /package/{cjs/filters → filters}/index.d.ts +0 -0
- /package/{cjs/filters → filters}/logic.d.ts +0 -0
- /package/{cjs/filters → filters}/types.d.ts +0 -0
- /package/{cjs/filters → filters}/updates.d.ts +0 -0
- /package/{cjs/index.d.ts → index.d.cts} +0 -0
- /package/{cjs/propagation.d.ts → propagation.d.ts} +0 -0
- /package/{cjs/state → state}/index.d.ts +0 -0
- /package/{cjs/state → state}/key.d.ts +0 -0
- /package/{cjs/state → state}/provider.d.ts +0 -0
- /package/{cjs/state → state}/providers/index.d.ts +0 -0
- /package/{cjs/state → state}/providers/memory.d.ts +0 -0
- /package/{cjs/state → state}/providers/sqlite.d.ts +0 -0
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @mtcute/dispatcher
|
|
2
2
|
|
|
3
|
-
📖 [API Reference](https://ref.mtcute.dev/modules/_mtcute_dispatcher.html)
|
|
3
|
+
📖 [API Reference](https://ref.mtcute.dev/modules/_mtcute_dispatcher.html)
|
|
4
4
|
🧐 [Guide](https://mtcute.dev/guide/dispatcher/intro.html)
|
|
5
5
|
|
|
6
6
|
Dispatcher and bot framework based on @mtcute/core.
|
|
@@ -23,4 +23,4 @@ const dp = Dispatcher.for(tg)
|
|
|
23
23
|
dp.onNewMessage(async (msg) => {
|
|
24
24
|
await msg.replyText('Hello world!')
|
|
25
25
|
})
|
|
26
|
-
```
|
|
26
|
+
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Message, OmitInputMessageId, ParametersSkip1, Sticker, BusinessMessage } from '@mtcute/core';
|
|
2
2
|
import { TelegramClient } from '@mtcute/core/client.js';
|
|
3
3
|
import { DeleteMessagesParams, ForwardMessageOptions, SendCopyGroupParams, SendCopyParams } from '@mtcute/core/methods.js';
|
|
4
4
|
import { UpdateContext } from './base.js';
|
|
@@ -13,7 +13,7 @@ import { UpdateContext } from './base.js';
|
|
|
13
13
|
*/
|
|
14
14
|
export declare class BusinessMessageContext extends BusinessMessage implements UpdateContext<BusinessMessage> {
|
|
15
15
|
readonly client: TelegramClient;
|
|
16
|
-
readonly _name
|
|
16
|
+
readonly _name: "new_business_message";
|
|
17
17
|
/**
|
|
18
18
|
* List of messages in the message group.
|
|
19
19
|
*
|
|
@@ -24,37 +24,37 @@ export declare class BusinessMessageContext extends BusinessMessage implements U
|
|
|
24
24
|
readonly isMessageGroup: boolean;
|
|
25
25
|
constructor(client: TelegramClient, message: BusinessMessage | BusinessMessage[]);
|
|
26
26
|
/** Get all custom emojis contained in this message (message group), if any */
|
|
27
|
-
getCustomEmojis(): Promise<
|
|
27
|
+
getCustomEmojis(): Promise<Sticker[]>;
|
|
28
28
|
/** Send a text message to the same chat (and topic, if applicable) as a given message */
|
|
29
|
-
answerText(...params: ParametersSkip1<TelegramClient['answerText']>): Promise<
|
|
29
|
+
answerText(...params: ParametersSkip1<TelegramClient['answerText']>): Promise<Message>;
|
|
30
30
|
/** Send a media to the same chat (and topic, if applicable) as a given message */
|
|
31
|
-
answerMedia(...params: ParametersSkip1<TelegramClient['answerMedia']>): Promise<
|
|
31
|
+
answerMedia(...params: ParametersSkip1<TelegramClient['answerMedia']>): Promise<Message>;
|
|
32
32
|
/** Send a media group to the same chat (and topic, if applicable) as a given message */
|
|
33
|
-
answerMediaGroup(...params: ParametersSkip1<TelegramClient['answerMediaGroup']>): Promise<
|
|
33
|
+
answerMediaGroup(...params: ParametersSkip1<TelegramClient['answerMediaGroup']>): Promise<Message[]>;
|
|
34
34
|
/** Send a text message in reply to this message */
|
|
35
|
-
replyText(...params: ParametersSkip1<TelegramClient['replyText']>): Promise<
|
|
35
|
+
replyText(...params: ParametersSkip1<TelegramClient['replyText']>): Promise<Message>;
|
|
36
36
|
/** Send a media in reply to this message */
|
|
37
|
-
replyMedia(...params: ParametersSkip1<TelegramClient['replyMedia']>): Promise<
|
|
37
|
+
replyMedia(...params: ParametersSkip1<TelegramClient['replyMedia']>): Promise<Message>;
|
|
38
38
|
/** Send a media group in reply to this message */
|
|
39
|
-
replyMediaGroup(...params: ParametersSkip1<TelegramClient['replyMediaGroup']>): Promise<
|
|
39
|
+
replyMediaGroup(...params: ParametersSkip1<TelegramClient['replyMediaGroup']>): Promise<Message[]>;
|
|
40
40
|
/** Send a text message in reply to this message */
|
|
41
|
-
quoteWithText(params: Parameters<TelegramClient['quoteWithText']>[1]): Promise<
|
|
41
|
+
quoteWithText(params: Parameters<TelegramClient['quoteWithText']>[1]): Promise<Message>;
|
|
42
42
|
/** Send a media in reply to this message */
|
|
43
|
-
quoteWithMedia(params: Parameters<TelegramClient['quoteWithMedia']>[1]): Promise<
|
|
43
|
+
quoteWithMedia(params: Parameters<TelegramClient['quoteWithMedia']>[1]): Promise<Message>;
|
|
44
44
|
/** Send a media group in reply to this message */
|
|
45
|
-
quoteWithMediaGroup(params: Parameters<TelegramClient['quoteWithMediaGroup']>[1]): Promise<
|
|
45
|
+
quoteWithMediaGroup(params: Parameters<TelegramClient['quoteWithMediaGroup']>[1]): Promise<Message[]>;
|
|
46
46
|
/** Delete this message (message group) */
|
|
47
47
|
delete(params?: DeleteMessagesParams): Promise<void>;
|
|
48
48
|
/** Pin this message */
|
|
49
|
-
pin(params?: OmitInputMessageId<Parameters<TelegramClient['pinMessage']>[0]>): Promise<
|
|
49
|
+
pin(params?: OmitInputMessageId<Parameters<TelegramClient['pinMessage']>[0]>): Promise<Message | null>;
|
|
50
50
|
/** Unpin this message */
|
|
51
51
|
unpin(): Promise<void>;
|
|
52
52
|
/** Edit this message */
|
|
53
|
-
edit(params: OmitInputMessageId<Parameters<TelegramClient['editMessage']>[0]>): Promise<
|
|
53
|
+
edit(params: OmitInputMessageId<Parameters<TelegramClient['editMessage']>[0]>): Promise<Message>;
|
|
54
54
|
/** Forward this message (message group) */
|
|
55
|
-
forwardTo(params: ForwardMessageOptions): Promise<
|
|
55
|
+
forwardTo(params: ForwardMessageOptions): Promise<Message[]>;
|
|
56
56
|
/** Send a copy of this message (message group) */
|
|
57
|
-
copy(params: SendCopyParams & SendCopyGroupParams): Promise<
|
|
57
|
+
copy(params: SendCopyParams & SendCopyGroupParams): Promise<Message | Message[]>;
|
|
58
58
|
/** React to this message */
|
|
59
|
-
react(params: OmitInputMessageId<Parameters<TelegramClient['sendReaction']>[0]>): Promise<
|
|
59
|
+
react(params: OmitInputMessageId<Parameters<TelegramClient['sendReaction']>[0]>): Promise<Message | null>;
|
|
60
60
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MaybePromise, Message, BusinessCallbackQuery, CallbackQuery, InlineCallbackQuery } from '@mtcute/core';
|
|
2
2
|
import { TelegramClient } from '@mtcute/core/client.js';
|
|
3
3
|
import { UpdateContext } from './base.js';
|
|
4
4
|
/**
|
|
@@ -8,7 +8,7 @@ import { UpdateContext } from './base.js';
|
|
|
8
8
|
*/
|
|
9
9
|
export declare class CallbackQueryContext extends CallbackQuery implements UpdateContext<CallbackQuery> {
|
|
10
10
|
readonly client: TelegramClient;
|
|
11
|
-
readonly _name
|
|
11
|
+
readonly _name: "callback_query";
|
|
12
12
|
constructor(client: TelegramClient, query: CallbackQuery);
|
|
13
13
|
/** Answer to this callback query */
|
|
14
14
|
answer(params: Parameters<TelegramClient['answerCallbackQuery']>[1]): Promise<void>;
|
|
@@ -35,7 +35,7 @@ export declare class CallbackQueryContext extends CallbackQuery implements Updat
|
|
|
35
35
|
*/
|
|
36
36
|
export declare class InlineCallbackQueryContext extends InlineCallbackQuery implements UpdateContext<InlineCallbackQuery> {
|
|
37
37
|
readonly client: TelegramClient;
|
|
38
|
-
readonly _name
|
|
38
|
+
readonly _name: "inline_callback_query";
|
|
39
39
|
constructor(client: TelegramClient, query: InlineCallbackQuery);
|
|
40
40
|
/** Answer to this callback query */
|
|
41
41
|
answer(params: Parameters<TelegramClient['answerCallbackQuery']>[1]): Promise<void>;
|
|
@@ -51,7 +51,7 @@ export declare class InlineCallbackQueryContext extends InlineCallbackQuery impl
|
|
|
51
51
|
*/
|
|
52
52
|
export declare class BusinessCallbackQueryContext extends BusinessCallbackQuery implements UpdateContext<BusinessCallbackQuery> {
|
|
53
53
|
readonly client: TelegramClient;
|
|
54
|
-
readonly _name
|
|
54
|
+
readonly _name: "business_callback_query";
|
|
55
55
|
constructor(client: TelegramClient, query: BusinessCallbackQuery);
|
|
56
56
|
/** Answer to this callback query */
|
|
57
57
|
answer(params: Parameters<TelegramClient['answerCallbackQuery']>[1]): Promise<void>;
|
|
@@ -8,7 +8,7 @@ import { UpdateContext } from './base.js';
|
|
|
8
8
|
*/
|
|
9
9
|
export declare class ChatJoinRequestUpdateContext extends BotChatJoinRequestUpdate implements UpdateContext<BotChatJoinRequestUpdate> {
|
|
10
10
|
readonly client: TelegramClient;
|
|
11
|
-
readonly _name
|
|
11
|
+
readonly _name: "bot_chat_join_request";
|
|
12
12
|
constructor(client: TelegramClient, update: BotChatJoinRequestUpdate);
|
|
13
13
|
/** Approve the request */
|
|
14
14
|
approve(): Promise<void>;
|
|
@@ -11,7 +11,7 @@ import { UpdateContext } from './base.js';
|
|
|
11
11
|
*/
|
|
12
12
|
export declare class ChosenInlineResultContext extends ChosenInlineResult implements UpdateContext<ChosenInlineResult> {
|
|
13
13
|
readonly client: TelegramClient;
|
|
14
|
-
readonly _name
|
|
14
|
+
readonly _name: "chosen_inline_result";
|
|
15
15
|
constructor(client: TelegramClient, result: ChosenInlineResult);
|
|
16
16
|
/**
|
|
17
17
|
* Edit the message that was sent when this inline result that was chosen.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ParametersSkip1, InlineQuery } from '@mtcute/core';
|
|
2
2
|
import { TelegramClient } from '@mtcute/core/client.js';
|
|
3
3
|
import { UpdateContext } from './base.js';
|
|
4
4
|
/**
|
|
@@ -8,7 +8,7 @@ import { UpdateContext } from './base.js';
|
|
|
8
8
|
*/
|
|
9
9
|
export declare class InlineQueryContext extends InlineQuery implements UpdateContext<InlineQuery> {
|
|
10
10
|
readonly client: TelegramClient;
|
|
11
|
-
readonly _name
|
|
11
|
+
readonly _name: "inline_query";
|
|
12
12
|
constructor(client: TelegramClient, query: InlineQuery);
|
|
13
13
|
/** Answer to this inline query */
|
|
14
14
|
answer(...params: ParametersSkip1<TelegramClient['answerInlineQuery']>): Promise<void>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { OmitInputMessageId, ParametersSkip1, Peer, Sticker, Message } from '@mtcute/core';
|
|
2
2
|
import { TelegramClient } from '@mtcute/core/client.js';
|
|
3
3
|
import { DeleteMessagesParams, ForwardMessageOptions, SendCopyGroupParams, SendCopyParams } from '@mtcute/core/methods.js';
|
|
4
4
|
import { UpdateContext } from './base.js';
|
|
@@ -13,7 +13,7 @@ import { UpdateContext } from './base.js';
|
|
|
13
13
|
*/
|
|
14
14
|
export declare class MessageContext extends Message implements UpdateContext<Message> {
|
|
15
15
|
readonly client: TelegramClient;
|
|
16
|
-
readonly _name
|
|
16
|
+
readonly _name: "new_message";
|
|
17
17
|
/**
|
|
18
18
|
* List of messages in the message group.
|
|
19
19
|
*
|
|
@@ -34,7 +34,7 @@ export declare class MessageContext extends Message implements UpdateContext<Mes
|
|
|
34
34
|
/** If this is a channel post, get its automatic forward in the discussion group */
|
|
35
35
|
getDiscussionMessage(): Promise<Message | null>;
|
|
36
36
|
/** Get all custom emojis contained in this message (message group), if any */
|
|
37
|
-
getCustomEmojis(): Promise<
|
|
37
|
+
getCustomEmojis(): Promise<Sticker[]>;
|
|
38
38
|
/** Send a text message to the same chat (and topic, if applicable) as a given message */
|
|
39
39
|
answerText(...params: ParametersSkip1<TelegramClient['answerText']>): Promise<Message>;
|
|
40
40
|
/** Send a media to the same chat (and topic, if applicable) as a given message */
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BotReactionCountUpdate, BotReactionUpdate, BotStoppedUpdate, BusinessConnection, ChatJoinRequestUpdate, ChatMemberUpdate, DeleteBusinessMessageUpdate, DeleteMessageUpdate, DeleteStoryUpdate, HistoryReadUpdate, ParsedUpdate, PollUpdate, PollVoteUpdate, StoryUpdate, UserStatusUpdate, UserTypingUpdate } from '@mtcute/core';
|
|
2
|
+
import { TelegramClient } from '@mtcute/core/client.js';
|
|
3
|
+
import { UpdateContextDistributed } from './base.js';
|
|
4
|
+
import { BusinessMessageContext } from './business-message.js';
|
|
5
|
+
import { BusinessCallbackQueryContext, CallbackQueryContext, InlineCallbackQueryContext } from './callback-query.js';
|
|
6
|
+
import { ChatJoinRequestUpdateContext } from './chat-join-request.js';
|
|
7
|
+
import { ChosenInlineResultContext } from './chosen-inline-result.js';
|
|
8
|
+
import { InlineQueryContext } from './inline-query.js';
|
|
9
|
+
import { MessageContext } from './message.js';
|
|
10
|
+
import { PreCheckoutQueryContext } from './pre-checkout-query.js';
|
|
11
|
+
export type UpdateContextType = MessageContext | InlineQueryContext | ChosenInlineResultContext | CallbackQueryContext | InlineCallbackQueryContext | BusinessCallbackQueryContext | ChatJoinRequestUpdateContext | PreCheckoutQueryContext | BusinessMessageContext | UpdateContextDistributed<DeleteMessageUpdate | ChatMemberUpdate | PollUpdate | PollVoteUpdate | UserStatusUpdate | UserTypingUpdate | HistoryReadUpdate | BotStoppedUpdate | ChatJoinRequestUpdate | StoryUpdate | DeleteStoryUpdate | BotReactionUpdate | BotReactionCountUpdate | BusinessConnection | DeleteBusinessMessageUpdate>;
|
|
12
|
+
/** @internal */
|
|
13
|
+
export declare function _parsedUpdateToContext(client: TelegramClient, update: ParsedUpdate): UpdateContextType;
|
|
@@ -8,7 +8,7 @@ import { UpdateContext } from './base.js';
|
|
|
8
8
|
*/
|
|
9
9
|
export declare class PreCheckoutQueryContext extends PreCheckoutQuery implements UpdateContext<PreCheckoutQuery> {
|
|
10
10
|
readonly client: TelegramClient;
|
|
11
|
-
readonly _name
|
|
11
|
+
readonly _name: "pre_checkout_query";
|
|
12
12
|
constructor(client: TelegramClient, query: PreCheckoutQuery);
|
|
13
13
|
/** Approve the query */
|
|
14
14
|
approve(): Promise<void>;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { BotReactionCountUpdate, BotReactionUpdate, BotStoppedUpdate, BusinessConnection, ChatJoinRequestUpdate, ChatMemberUpdate, DeleteBusinessMessageUpdate, DeleteMessageUpdate, DeleteStoryUpdate, HistoryReadUpdate, MaybePromise, ParsedUpdate, PeersIndex, PollUpdate, PollVoteUpdate, StoryUpdate,
|
|
1
|
+
import { BotReactionCountUpdate, BotReactionUpdate, BotStoppedUpdate, BusinessConnection, ChatJoinRequestUpdate, ChatMemberUpdate, DeleteBusinessMessageUpdate, DeleteMessageUpdate, DeleteStoryUpdate, HistoryReadUpdate, MaybePromise, ParsedUpdate, PeersIndex, PollUpdate, PollVoteUpdate, StoryUpdate, UserStatusUpdate, UserTypingUpdate, tl } from '@mtcute/core';
|
|
2
2
|
import { TelegramClient } from '@mtcute/core/client.js';
|
|
3
3
|
import { UpdateContext } from './context/base.js';
|
|
4
4
|
import { BusinessMessageContext } from './context/business-message.js';
|
|
5
5
|
import { BusinessCallbackQueryContext, CallbackQueryContext, ChatJoinRequestUpdateContext, ChosenInlineResultContext, InlineCallbackQueryContext, InlineQueryContext, MessageContext, PreCheckoutQueryContext } from './context/index.js';
|
|
6
6
|
import { SceneTransitionContext } from './context/scene-transition.js';
|
|
7
|
-
import {
|
|
7
|
+
import { UpdateFilter, filters } from './filters/index.js';
|
|
8
8
|
import { BotChatJoinRequestHandler, BotReactionCountUpdateHandler, BotReactionUpdateHandler, BotStoppedHandler, BusinessCallbackQueryHandler, BusinessConnectionUpdateHandler, BusinessMessageGroupHandler, CallbackQueryHandler, ChatJoinRequestHandler, ChatMemberUpdateHandler, ChosenInlineResultHandler, DeleteBusinessMessageHandler, DeleteMessageHandler, DeleteStoryHandler, EditBusinessMessageHandler, EditMessageHandler, HistoryReadHandler, InlineCallbackQueryHandler, InlineQueryHandler, MessageGroupHandler, NewBusinessMessageHandler, NewMessageHandler, PollUpdateHandler, PollVoteHandler, PreCheckoutQueryHandler, RawUpdateHandler, StoryUpdateHandler, UpdateHandler, UserStatusUpdateHandler, UserTypingHandler } from './handler.js';
|
|
9
9
|
import { PropagationAction } from './propagation.js';
|
|
10
10
|
import { IStateStorageProvider, StateKeyDelegate, UpdateState } from './state/index.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { MaybeArray } from '@mtcute/core';
|
|
1
|
+
import { Chat, MaybeArray } from '@mtcute/core';
|
|
2
2
|
import { BusinessMessageContext } from '../context/business-message.js';
|
|
3
3
|
import { MessageContext } from '../context/message.js';
|
|
4
|
-
import { UpdateFilter } from './types.js';
|
|
4
|
+
import { Modify, UpdateFilter } from './types.js';
|
|
5
5
|
/**
|
|
6
6
|
* Filter messages that call the given command(s)..
|
|
7
7
|
*
|
|
@@ -18,40 +18,30 @@ import { UpdateFilter } from './types.js';
|
|
|
18
18
|
* Can be `null` to disable prefixes altogether
|
|
19
19
|
* @param caseSensitive
|
|
20
20
|
*/
|
|
21
|
-
export declare
|
|
22
|
-
prefixes?: MaybeArray<string> | null
|
|
23
|
-
caseSensitive?: boolean
|
|
24
|
-
})
|
|
21
|
+
export declare function command(commands: MaybeArray<string | RegExp>, { prefixes, caseSensitive, }?: {
|
|
22
|
+
prefixes?: MaybeArray<string> | null;
|
|
23
|
+
caseSensitive?: boolean;
|
|
24
|
+
}): UpdateFilter<MessageContext | BusinessMessageContext, {
|
|
25
25
|
command: string[];
|
|
26
26
|
}>;
|
|
27
27
|
/**
|
|
28
28
|
* Shorthand filter that matches /start commands sent to bot's
|
|
29
29
|
* private messages.
|
|
30
30
|
*/
|
|
31
|
-
export declare const start: UpdateFilter<{
|
|
32
|
-
chat:
|
|
33
|
-
|
|
34
|
-
chat: import("./types.js").Modify<import("@mtcute/core").Chat, {
|
|
35
|
-
chatType: "private";
|
|
31
|
+
export declare const start: UpdateFilter<MessageContext | BusinessMessageContext, {
|
|
32
|
+
chat: Modify<Chat, {
|
|
33
|
+
chatType: 'private';
|
|
36
34
|
}>;
|
|
37
|
-
} & import("./types.js").EmptyObject & {
|
|
38
35
|
command: string[];
|
|
39
|
-
}
|
|
36
|
+
}>;
|
|
40
37
|
/**
|
|
41
38
|
* Shorthand filter that matches /start commands
|
|
42
39
|
* sent in groups (i.e. using `?startgroup` parameter).
|
|
43
40
|
*/
|
|
44
|
-
export declare const startGroup: UpdateFilter<{
|
|
45
|
-
chat:
|
|
46
|
-
|
|
47
|
-
chat: import("./types.js").Modify<import("@mtcute/core").Chat, {
|
|
48
|
-
chatType: "supergroup";
|
|
49
|
-
}>;
|
|
50
|
-
} & import("./types.js").EmptyObject) | ({
|
|
51
|
-
chat: import("./types.js").Modify<import("@mtcute/core").Chat, {
|
|
52
|
-
chatType: "group";
|
|
41
|
+
export declare const startGroup: UpdateFilter<MessageContext | BusinessMessageContext, {
|
|
42
|
+
chat: Modify<Chat, {
|
|
43
|
+
chatType: 'group' | 'supergroup';
|
|
53
44
|
}>;
|
|
54
|
-
} & import("./types.js").EmptyObject)) & {
|
|
55
45
|
command: string[];
|
|
56
46
|
}, never>;
|
|
57
47
|
/**
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -4,9 +4,9 @@ import { EmptyObject, Modify, UpdateFilter } from './types.js';
|
|
|
4
4
|
/**
|
|
5
5
|
* Filter updates by type of the chat where they happened
|
|
6
6
|
*/
|
|
7
|
-
export declare
|
|
7
|
+
export declare function chat<T extends ChatType, Obj extends {
|
|
8
8
|
chat: Chat;
|
|
9
|
-
}>(type: T)
|
|
9
|
+
}>(type: T): UpdateFilter<Obj, {
|
|
10
10
|
chat: Modify<Chat, {
|
|
11
11
|
chatType: T;
|
|
12
12
|
}>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { Audio, Contact, Dice, Document, Game, Invoice, LiveLocation, Location, MaybeArray, Message, MessageAction, MessageMediaType, Peer, Photo, Poll, RepliedMessageInfo, RepliedMessageOrigin, Sticker, StickerSourceType, StickerType, User, Venue, Video, Voice, WebPage, _RepliedMessageAssertionsByOrigin, RawDocument } from '@mtcute/core';
|
|
2
|
+
import { BusinessMessageContext } from '../context/business-message.js';
|
|
3
|
+
import { MessageContext } from '../index.js';
|
|
4
|
+
import { Modify, UpdateFilter } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Filter incoming messages.
|
|
7
|
+
*
|
|
8
|
+
* Messages sent to yourself (i.e. Saved Messages) are also "incoming"
|
|
9
|
+
*/
|
|
10
|
+
export declare const incoming: UpdateFilter<Message, {
|
|
11
|
+
isOutgoing: false;
|
|
12
|
+
}>;
|
|
13
|
+
/**
|
|
14
|
+
* Filter outgoing messages.
|
|
15
|
+
*
|
|
16
|
+
* Messages sent to yourself (i.e. Saved Messages) are **not** "outgoing"
|
|
17
|
+
*/
|
|
18
|
+
export declare const outgoing: UpdateFilter<Message, {
|
|
19
|
+
isOutgoing: true;
|
|
20
|
+
}>;
|
|
21
|
+
/**
|
|
22
|
+
* Filter for scheduled messages
|
|
23
|
+
*/
|
|
24
|
+
export declare const scheduled: UpdateFilter<Message, {
|
|
25
|
+
isScheduled: true;
|
|
26
|
+
}>;
|
|
27
|
+
/**
|
|
28
|
+
* Filter messages that are replies to some other message
|
|
29
|
+
*/
|
|
30
|
+
export declare const reply: UpdateFilter<Message, {
|
|
31
|
+
replyToMessage: RepliedMessageInfo;
|
|
32
|
+
}>;
|
|
33
|
+
/**
|
|
34
|
+
* Filter messages that are replies with the given origin type
|
|
35
|
+
*/
|
|
36
|
+
export declare function replyOrigin<T extends RepliedMessageOrigin>(origin: T): UpdateFilter<Message, {
|
|
37
|
+
replyToMessage: Modify<RepliedMessageInfo, _RepliedMessageAssertionsByOrigin[T] & {
|
|
38
|
+
origin: T;
|
|
39
|
+
}>;
|
|
40
|
+
}>;
|
|
41
|
+
/**
|
|
42
|
+
* Filter messages containing some media
|
|
43
|
+
*/
|
|
44
|
+
export declare const media: UpdateFilter<Message, {
|
|
45
|
+
media: Exclude<Message['media'], null>;
|
|
46
|
+
}>;
|
|
47
|
+
/**
|
|
48
|
+
* Filter messages containing media of given type
|
|
49
|
+
*/
|
|
50
|
+
export declare function mediaOf<T extends MessageMediaType>(type: T): UpdateFilter<Message, {
|
|
51
|
+
media: Extract<Message['media'], {
|
|
52
|
+
type: T;
|
|
53
|
+
}>;
|
|
54
|
+
}>;
|
|
55
|
+
/** Filter messages containing a photo */
|
|
56
|
+
export declare const photo: UpdateFilter<Message, {
|
|
57
|
+
media: Photo;
|
|
58
|
+
}>;
|
|
59
|
+
/** Filter messages containing a dice */
|
|
60
|
+
export declare const dice: UpdateFilter<Message, {
|
|
61
|
+
media: Dice;
|
|
62
|
+
}>;
|
|
63
|
+
/** Filter messages containing a contact */
|
|
64
|
+
export declare const contact: UpdateFilter<Message, {
|
|
65
|
+
media: Contact;
|
|
66
|
+
}>;
|
|
67
|
+
/** Filter messages containing an audio file */
|
|
68
|
+
export declare const audio: UpdateFilter<Message, {
|
|
69
|
+
media: Audio;
|
|
70
|
+
}>;
|
|
71
|
+
/** Filter messages containing a voice message (audio-only) */
|
|
72
|
+
export declare const voice: UpdateFilter<Message, {
|
|
73
|
+
media: Voice;
|
|
74
|
+
}>;
|
|
75
|
+
/** Filter messages containing a sticker */
|
|
76
|
+
export declare const sticker: UpdateFilter<Message, {
|
|
77
|
+
media: Sticker;
|
|
78
|
+
}>;
|
|
79
|
+
/** Filter messages containing a document (a file) */
|
|
80
|
+
export declare const document: UpdateFilter<Message, {
|
|
81
|
+
media: Document;
|
|
82
|
+
}>;
|
|
83
|
+
/** Filter messages containing any video (videos, round messages and animations) */
|
|
84
|
+
export declare const anyVideo: UpdateFilter<Message, {
|
|
85
|
+
media: Video;
|
|
86
|
+
}>;
|
|
87
|
+
/** Filter messages containing a static location */
|
|
88
|
+
export declare const location: UpdateFilter<Message, {
|
|
89
|
+
media: Location;
|
|
90
|
+
}>;
|
|
91
|
+
/** Filter messages containing a live location */
|
|
92
|
+
export declare const liveLocation: UpdateFilter<Message, {
|
|
93
|
+
media: LiveLocation;
|
|
94
|
+
}>;
|
|
95
|
+
/** Filter messages containing a game */
|
|
96
|
+
export declare const game: UpdateFilter<Message, {
|
|
97
|
+
media: Game;
|
|
98
|
+
}>;
|
|
99
|
+
/** Filter messages containing a web page */
|
|
100
|
+
export declare const webpage: UpdateFilter<Message, {
|
|
101
|
+
media: WebPage;
|
|
102
|
+
}>;
|
|
103
|
+
/** Filter messages containing a venue */
|
|
104
|
+
export declare const venue: UpdateFilter<Message, {
|
|
105
|
+
media: Venue;
|
|
106
|
+
}>;
|
|
107
|
+
/** Filter messages containing a poll */
|
|
108
|
+
export declare const poll: UpdateFilter<Message, {
|
|
109
|
+
media: Poll;
|
|
110
|
+
}>;
|
|
111
|
+
/** Filter messages containing an invoice */
|
|
112
|
+
export declare const invoice: UpdateFilter<Message, {
|
|
113
|
+
media: Invoice;
|
|
114
|
+
}>;
|
|
115
|
+
/**
|
|
116
|
+
* Filter messages containing any location (live or static).
|
|
117
|
+
*/
|
|
118
|
+
export declare const anyLocation: UpdateFilter<Message, {
|
|
119
|
+
media: Location;
|
|
120
|
+
}>;
|
|
121
|
+
/**
|
|
122
|
+
* Filter messages containing a document
|
|
123
|
+
*
|
|
124
|
+
* This will also match media like audio, video, voice
|
|
125
|
+
* that also use Documents
|
|
126
|
+
*/
|
|
127
|
+
export declare const anyDocument: UpdateFilter<Message, {
|
|
128
|
+
media: RawDocument;
|
|
129
|
+
}>;
|
|
130
|
+
/**
|
|
131
|
+
* Filter messages containing a simple video.
|
|
132
|
+
*
|
|
133
|
+
* This does not include round messages and animations
|
|
134
|
+
*/
|
|
135
|
+
export declare const video: UpdateFilter<Message, {
|
|
136
|
+
media: Modify<Video, {
|
|
137
|
+
isRound: false;
|
|
138
|
+
isAnimation: false;
|
|
139
|
+
}>;
|
|
140
|
+
}>;
|
|
141
|
+
/**
|
|
142
|
+
* Filter messages containing an animation.
|
|
143
|
+
*
|
|
144
|
+
* > **Note**: Legacy GIFs (i.e. documents with `image/gif` MIME)
|
|
145
|
+
* > are also considered animations.
|
|
146
|
+
*/
|
|
147
|
+
export declare const animation: UpdateFilter<Message, {
|
|
148
|
+
media: Modify<Video, {
|
|
149
|
+
isRound: false;
|
|
150
|
+
isAnimation: true;
|
|
151
|
+
}>;
|
|
152
|
+
}>;
|
|
153
|
+
/**
|
|
154
|
+
* Filter messages containing a round message (aka video note).
|
|
155
|
+
*/
|
|
156
|
+
export declare const roundMessage: UpdateFilter<Message, {
|
|
157
|
+
media: Modify<Video, {
|
|
158
|
+
isRound: true;
|
|
159
|
+
isAnimation: false;
|
|
160
|
+
}>;
|
|
161
|
+
}>;
|
|
162
|
+
/**
|
|
163
|
+
* Filter messages containing a sticker by its type
|
|
164
|
+
*/
|
|
165
|
+
export declare function stickerByType(type: StickerType): UpdateFilter<Message, {
|
|
166
|
+
media: Sticker;
|
|
167
|
+
}>;
|
|
168
|
+
/**
|
|
169
|
+
* Filter messages containing a sticker by its source file type
|
|
170
|
+
*/
|
|
171
|
+
export declare function stickerBySourceType(type: StickerSourceType): UpdateFilter<Message, {
|
|
172
|
+
media: Sticker;
|
|
173
|
+
}>;
|
|
174
|
+
/**
|
|
175
|
+
* Filter text-only messages non-service messages
|
|
176
|
+
*/
|
|
177
|
+
export declare const text: UpdateFilter<Message, {
|
|
178
|
+
media: null;
|
|
179
|
+
isService: false;
|
|
180
|
+
}>;
|
|
181
|
+
/**
|
|
182
|
+
* Filter service messages
|
|
183
|
+
*/
|
|
184
|
+
export declare const service: UpdateFilter<Message, {
|
|
185
|
+
isService: true;
|
|
186
|
+
}>;
|
|
187
|
+
/**
|
|
188
|
+
* Filter service messages by action type
|
|
189
|
+
*/
|
|
190
|
+
export declare function action<T extends Exclude<MessageAction, null>['type']>(type: MaybeArray<T>): UpdateFilter<Message, {
|
|
191
|
+
action: Extract<MessageAction, {
|
|
192
|
+
type: T;
|
|
193
|
+
}>;
|
|
194
|
+
sender: T extends 'user_joined_link' | 'user_removed' | 'history_cleared' | 'contact_joined' | 'bot_allowed' ? User : Peer;
|
|
195
|
+
}>;
|
|
196
|
+
export declare function sender<T extends Message['sender']['type']>(type: T): UpdateFilter<Message, {
|
|
197
|
+
sender: Extract<Message['sender'], {
|
|
198
|
+
type: T;
|
|
199
|
+
}>;
|
|
200
|
+
}>;
|
|
201
|
+
/**
|
|
202
|
+
* Filter that matches messages that are replies to some other message that can be fetched
|
|
203
|
+
* (i.e. not `private` origin, and has not been deleted)
|
|
204
|
+
*
|
|
205
|
+
* Optionally, you can pass a filter that will be applied to the replied message.
|
|
206
|
+
*/
|
|
207
|
+
export declare function replyTo<Mod, State extends object>(filter?: UpdateFilter<Message, Mod, State>): UpdateFilter<MessageContext | BusinessMessageContext, {
|
|
208
|
+
getReplyTo: () => Promise<Message & Mod>;
|
|
209
|
+
}, State>;
|
|
210
|
+
/**
|
|
211
|
+
* Middleware-like filter that will fetch the sender of the message
|
|
212
|
+
* and make it available to further filters, as well as the handler itself.
|
|
213
|
+
*/
|
|
214
|
+
export declare function withCompleteSender<Mod, State extends object>(filter?: UpdateFilter<MessageContext, Mod, State>): UpdateFilter<MessageContext, Mod, State>;
|
|
@@ -12,4 +12,4 @@ export declare const stateEmpty: UpdateFilter<any>;
|
|
|
12
12
|
*
|
|
13
13
|
* @param predicate State predicate
|
|
14
14
|
*/
|
|
15
|
-
export declare
|
|
15
|
+
export declare function state<T extends object>(predicate: (state: T) => MaybePromise<boolean>): UpdateFilter<any, {}, T>;
|
|
@@ -14,7 +14,7 @@ type UpdatesWithText = UpdateContextDistributed<Message | BusinessMessage | Inli
|
|
|
14
14
|
*
|
|
15
15
|
* @param regex Regex to be matched
|
|
16
16
|
*/
|
|
17
|
-
export declare
|
|
17
|
+
export declare function regex(regex: RegExp): UpdateFilter<UpdatesWithText, {
|
|
18
18
|
match: RegExpMatchArray;
|
|
19
19
|
}>;
|
|
20
20
|
/**
|
|
@@ -27,7 +27,7 @@ export declare const regex: (regex: RegExp) => UpdateFilter<UpdatesWithText, {
|
|
|
27
27
|
* @param str String to be matched
|
|
28
28
|
* @param ignoreCase Whether string case should be ignored
|
|
29
29
|
*/
|
|
30
|
-
export declare
|
|
30
|
+
export declare function equals(str: string, ignoreCase?: boolean): UpdateFilter<UpdatesWithText>;
|
|
31
31
|
/**
|
|
32
32
|
* Filter objects which contain the text given (as a substring)
|
|
33
33
|
* - for `Message`, `Message.text` is used
|
|
@@ -38,7 +38,7 @@ export declare const equals: (str: string, ignoreCase?: boolean) => UpdateFilter
|
|
|
38
38
|
* @param str Substring to be matched
|
|
39
39
|
* @param ignoreCase Whether string case should be ignored
|
|
40
40
|
*/
|
|
41
|
-
export declare
|
|
41
|
+
export declare function contains(str: string, ignoreCase?: boolean): UpdateFilter<UpdatesWithText>;
|
|
42
42
|
/**
|
|
43
43
|
* Filter objects which contain the text starting with a given string
|
|
44
44
|
* - for `Message`, `Message.text` is used
|
|
@@ -49,7 +49,7 @@ export declare const contains: (str: string, ignoreCase?: boolean) => UpdateFilt
|
|
|
49
49
|
* @param str Substring to be matched
|
|
50
50
|
* @param ignoreCase Whether string case should be ignored
|
|
51
51
|
*/
|
|
52
|
-
export declare
|
|
52
|
+
export declare function startsWith(str: string, ignoreCase?: boolean): UpdateFilter<UpdatesWithText>;
|
|
53
53
|
/**
|
|
54
54
|
* Filter objects which contain the text ending with a given string
|
|
55
55
|
* - for `Message`, `Message.text` is used
|
|
@@ -60,5 +60,5 @@ export declare const startsWith: (str: string, ignoreCase?: boolean) => UpdateFi
|
|
|
60
60
|
* @param str Substring to be matched
|
|
61
61
|
* @param ignoreCase Whether string case should be ignored
|
|
62
62
|
*/
|
|
63
|
-
export declare
|
|
63
|
+
export declare function endsWith(str: string, ignoreCase?: boolean): UpdateFilter<UpdatesWithText>;
|
|
64
64
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BotChatJoinRequestUpdate, BusinessCallbackQuery, BusinessMessage, CallbackQuery, ChatMemberUpdate, ChosenInlineResult, DeleteStoryUpdate, HistoryReadUpdate, InlineCallbackQuery, InlineQuery, MaybeArray, Message, PollVoteUpdate, StoryUpdate,
|
|
1
|
+
import { BotChatJoinRequestUpdate, BusinessCallbackQuery, BusinessMessage, CallbackQuery, ChatMemberUpdate, ChosenInlineResult, DeleteStoryUpdate, HistoryReadUpdate, InlineCallbackQuery, InlineQuery, MaybeArray, Message, PollVoteUpdate, StoryUpdate, UserStatusUpdate, UserTypingUpdate, User } from '@mtcute/core';
|
|
2
2
|
import { UpdateContextDistributed } from '../context/base.js';
|
|
3
3
|
import { UpdateFilter } from './types.js';
|
|
4
4
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BotReactionCountUpdate, BotReactionUpdate, BotStoppedUpdate, BusinessConnection, ChatJoinRequestUpdate, ChatMemberUpdate, DeleteBusinessMessageUpdate, DeleteMessageUpdate, DeleteStoryUpdate, HistoryReadUpdate, MaybePromise, PeersIndex, PollUpdate, PollVoteUpdate, StoryUpdate,
|
|
1
|
+
import { BotReactionCountUpdate, BotReactionUpdate, BotStoppedUpdate, BusinessConnection, ChatJoinRequestUpdate, ChatMemberUpdate, DeleteBusinessMessageUpdate, DeleteMessageUpdate, DeleteStoryUpdate, HistoryReadUpdate, MaybePromise, PeersIndex, PollUpdate, PollVoteUpdate, StoryUpdate, UserStatusUpdate, UserTypingUpdate, tl } from '@mtcute/core';
|
|
2
2
|
import { TelegramClient } from '@mtcute/core/client.js';
|
|
3
3
|
import { UpdateContext } from './context/base.js';
|
|
4
4
|
import { BusinessCallbackQueryContext, BusinessMessageContext, CallbackQueryContext, ChatJoinRequestUpdateContext, ChosenInlineResultContext, InlineCallbackQueryContext, InlineQueryContext, MessageContext, PreCheckoutQueryContext } from './context/index.js';
|