@xbibzlibrary/telebibz 0.4.4 → 3.0.1
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/CHANGELOG.md +35 -138
- package/LICENSE +1 -1
- package/NOTICE.md +9 -4
- package/README.md +173 -242
- package/examples/01-quickstart.js +13 -0
- package/examples/02-menu-tombol.js +22 -0
- package/examples/03-wizard.js +29 -0
- package/examples/04-broadcast.js +25 -0
- package/examples/05-kirim-file.js +19 -0
- package/examples/06-menu.js +35 -0
- package/examples/07-inline-query.js +18 -0
- package/index.d.ts +81 -0
- package/index.js +42 -0
- package/lib/api.js +154 -0
- package/lib/broadcast.js +35 -0
- package/lib/composer.js +174 -0
- package/lib/context.js +190 -0
- package/lib/errors.js +35 -0
- package/lib/file.js +41 -0
- package/lib/inline-query.js +28 -0
- package/lib/keyboard.js +83 -0
- package/lib/logger.js +38 -0
- package/lib/menus.js +90 -0
- package/lib/net.js +115 -0
- package/lib/ratelimit.js +61 -0
- package/lib/runner.js +45 -0
- package/lib/session.js +36 -0
- package/lib/telebibz.js +190 -0
- package/lib/wizard.js +81 -0
- package/package.json +35 -97
- package/test/all.test.js +334 -0
- package/CODE_OF_CONDUCT.md +0 -37
- package/CONTRIBUTING.md +0 -59
- package/CONTRIBUTION_RULES.md +0 -41
- package/GOVERNANCE.md +0 -47
- package/README.id.md +0 -292
- package/README.zh-CN.md +0 -292
- package/RELEASE_AUTOMATION.md +0 -78
- package/RELEASE_POLICY.md +0 -32
- package/SECURITY.md +0 -47
- package/SHOWCASE.md +0 -29
- package/SUPPORT.md +0 -30
- package/assets/readme-preview.html +0 -75
- package/assets/telebibz-logo.png +0 -0
- package/assets/telebibz-readme-preview.png +0 -0
- package/bin/telebibz.mjs +0 -3
- package/dist/generated/api.d.ts +0 -13
- package/dist/generated/api.d.ts.map +0 -1
- package/dist/generated/api.js +0 -192
- package/dist/generated/api.js.map +0 -1
- package/dist/src/api/client.d.ts +0 -62
- package/dist/src/api/client.d.ts.map +0 -1
- package/dist/src/api/client.js +0 -104
- package/dist/src/api/client.js.map +0 -1
- package/dist/src/api/errors.d.ts +0 -45
- package/dist/src/api/errors.d.ts.map +0 -1
- package/dist/src/api/errors.js +0 -65
- package/dist/src/api/errors.js.map +0 -1
- package/dist/src/api/index.d.ts +0 -6
- package/dist/src/api/index.d.ts.map +0 -1
- package/dist/src/api/index.js +0 -6
- package/dist/src/api/index.js.map +0 -1
- package/dist/src/api/telegram-types/LICENSE +0 -21
- package/dist/src/api/telegram-types/api.d.ts +0 -22
- package/dist/src/api/telegram-types/checklist.d.ts +0 -72
- package/dist/src/api/telegram-types/inline.d.ts +0 -692
- package/dist/src/api/telegram-types/langs.d.ts +0 -193
- package/dist/src/api/telegram-types/manage.d.ts +0 -1144
- package/dist/src/api/telegram-types/markup.d.ts +0 -268
- package/dist/src/api/telegram-types/message.d.ts +0 -1537
- package/dist/src/api/telegram-types/methods.d.ts +0 -2870
- package/dist/src/api/telegram-types/mod.d.ts +0 -14
- package/dist/src/api/telegram-types/passport.d.ts +0 -163
- package/dist/src/api/telegram-types/payment.d.ts +0 -570
- package/dist/src/api/telegram-types/rich.d.ts +0 -1010
- package/dist/src/api/telegram-types/settings.d.ts +0 -120
- package/dist/src/api/telegram-types/story.d.ts +0 -89
- package/dist/src/api/telegram-types/update.d.ts +0 -84
- package/dist/src/api/telegram.d.ts +0 -7
- package/dist/src/api/telegram.d.ts.map +0 -1
- package/dist/src/api/telegram.js +0 -2
- package/dist/src/api/telegram.js.map +0 -1
- package/dist/src/api/transport.d.ts +0 -68
- package/dist/src/api/transport.d.ts.map +0 -1
- package/dist/src/api/transport.js +0 -264
- package/dist/src/api/transport.js.map +0 -1
- package/dist/src/api/types.d.ts +0 -466
- package/dist/src/api/types.d.ts.map +0 -1
- package/dist/src/api/types.js +0 -2
- package/dist/src/api/types.js.map +0 -1
- package/dist/src/branding/terminal.d.ts +0 -77
- package/dist/src/branding/terminal.d.ts.map +0 -1
- package/dist/src/branding/terminal.js +0 -328
- package/dist/src/branding/terminal.js.map +0 -1
- package/dist/src/broadcast/broadcast.d.ts +0 -50
- package/dist/src/broadcast/broadcast.d.ts.map +0 -1
- package/dist/src/broadcast/broadcast.js +0 -56
- package/dist/src/broadcast/broadcast.js.map +0 -1
- package/dist/src/cache/cache.d.ts +0 -34
- package/dist/src/cache/cache.d.ts.map +0 -1
- package/dist/src/cache/cache.js +0 -41
- package/dist/src/cache/cache.js.map +0 -1
- package/dist/src/cli.d.ts +0 -2
- package/dist/src/cli.d.ts.map +0 -1
- package/dist/src/cli.js +0 -84
- package/dist/src/cli.js.map +0 -1
- package/dist/src/context/context.d.ts +0 -124
- package/dist/src/context/context.d.ts.map +0 -1
- package/dist/src/context/context.js +0 -302
- package/dist/src/context/context.js.map +0 -1
- package/dist/src/core/bot.d.ts +0 -204
- package/dist/src/core/bot.d.ts.map +0 -1
- package/dist/src/core/bot.js +0 -506
- package/dist/src/core/bot.js.map +0 -1
- package/dist/src/core/events.d.ts +0 -75
- package/dist/src/core/events.d.ts.map +0 -1
- package/dist/src/core/events.js +0 -35
- package/dist/src/core/events.js.map +0 -1
- package/dist/src/core/webhook-reply.d.ts +0 -34
- package/dist/src/core/webhook-reply.d.ts.map +0 -1
- package/dist/src/core/webhook-reply.js +0 -37
- package/dist/src/core/webhook-reply.js.map +0 -1
- package/dist/src/index.d.ts +0 -24
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -24
- package/dist/src/index.js.map +0 -1
- package/dist/src/keyboard/index.d.ts +0 -46
- package/dist/src/keyboard/index.d.ts.map +0 -1
- package/dist/src/keyboard/index.js +0 -55
- package/dist/src/keyboard/index.js.map +0 -1
- package/dist/src/middleware/compose.d.ts +0 -5
- package/dist/src/middleware/compose.d.ts.map +0 -1
- package/dist/src/middleware/compose.js +0 -17
- package/dist/src/middleware/compose.js.map +0 -1
- package/dist/src/observability/logger.d.ts +0 -78
- package/dist/src/observability/logger.d.ts.map +0 -1
- package/dist/src/observability/logger.js +0 -285
- package/dist/src/observability/logger.js.map +0 -1
- package/dist/src/plugins/plugin.d.ts +0 -38
- package/dist/src/plugins/plugin.d.ts.map +0 -1
- package/dist/src/plugins/plugin.js +0 -59
- package/dist/src/plugins/plugin.js.map +0 -1
- package/dist/src/queue/queue.d.ts +0 -77
- package/dist/src/queue/queue.d.ts.map +0 -1
- package/dist/src/queue/queue.js +0 -213
- package/dist/src/queue/queue.js.map +0 -1
- package/dist/src/router/router.d.ts +0 -61
- package/dist/src/router/router.d.ts.map +0 -1
- package/dist/src/router/router.js +0 -183
- package/dist/src/router/router.js.map +0 -1
- package/dist/src/state/conversation.d.ts +0 -56
- package/dist/src/state/conversation.d.ts.map +0 -1
- package/dist/src/state/conversation.js +0 -133
- package/dist/src/state/conversation.js.map +0 -1
- package/dist/src/state/forms.d.ts +0 -34
- package/dist/src/state/forms.d.ts.map +0 -1
- package/dist/src/state/forms.js +0 -44
- package/dist/src/state/forms.js.map +0 -1
- package/dist/src/state/menu.d.ts +0 -78
- package/dist/src/state/menu.d.ts.map +0 -1
- package/dist/src/state/menu.js +0 -127
- package/dist/src/state/menu.js.map +0 -1
- package/dist/src/storage/storage.d.ts +0 -146
- package/dist/src/storage/storage.d.ts.map +0 -1
- package/dist/src/storage/storage.js +0 -195
- package/dist/src/storage/storage.js.map +0 -1
- package/dist/src/telegram-features.d.ts +0 -33
- package/dist/src/telegram-features.d.ts.map +0 -1
- package/dist/src/telegram-features.js +0 -71
- package/dist/src/telegram-features.js.map +0 -1
- package/dist/src/testing.d.ts +0 -24
- package/dist/src/testing.d.ts.map +0 -1
- package/dist/src/testing.js +0 -38
- package/dist/src/testing.js.map +0 -1
- package/dist/src/utils/concurrency.d.ts +0 -25
- package/dist/src/utils/concurrency.d.ts.map +0 -1
- package/dist/src/utils/concurrency.js +0 -52
- package/dist/src/utils/concurrency.js.map +0 -1
- package/dist/src/utils/files.d.ts +0 -45
- package/dist/src/utils/files.d.ts.map +0 -1
- package/dist/src/utils/files.js +0 -53
- package/dist/src/utils/files.js.map +0 -1
- package/dist/src/utils/text.d.ts +0 -39
- package/dist/src/utils/text.d.ts.map +0 -1
- package/dist/src/utils/text.js +0 -56
- package/dist/src/utils/text.js.map +0 -1
- package/dist/src/webhook/handler.d.ts +0 -19
- package/dist/src/webhook/handler.d.ts.map +0 -1
- package/dist/src/webhook/handler.js +0 -141
- package/dist/src/webhook/handler.js.map +0 -1
- package/dist-cjs/generated/api.js +0 -194
- package/dist-cjs/package.json +0 -3
- package/dist-cjs/src/api/client.js +0 -107
- package/dist-cjs/src/api/errors.js +0 -74
- package/dist-cjs/src/api/index.js +0 -21
- package/dist-cjs/src/api/telegram-types/LICENSE +0 -21
- package/dist-cjs/src/api/telegram-types/api.d.ts +0 -22
- package/dist-cjs/src/api/telegram-types/checklist.d.ts +0 -72
- package/dist-cjs/src/api/telegram-types/inline.d.ts +0 -692
- package/dist-cjs/src/api/telegram-types/langs.d.ts +0 -193
- package/dist-cjs/src/api/telegram-types/manage.d.ts +0 -1144
- package/dist-cjs/src/api/telegram-types/markup.d.ts +0 -268
- package/dist-cjs/src/api/telegram-types/message.d.ts +0 -1537
- package/dist-cjs/src/api/telegram-types/methods.d.ts +0 -2870
- package/dist-cjs/src/api/telegram-types/mod.d.ts +0 -14
- package/dist-cjs/src/api/telegram-types/passport.d.ts +0 -163
- package/dist-cjs/src/api/telegram-types/payment.d.ts +0 -570
- package/dist-cjs/src/api/telegram-types/rich.d.ts +0 -1010
- package/dist-cjs/src/api/telegram-types/settings.d.ts +0 -120
- package/dist-cjs/src/api/telegram-types/story.d.ts +0 -89
- package/dist-cjs/src/api/telegram-types/update.d.ts +0 -84
- package/dist-cjs/src/api/telegram.js +0 -2
- package/dist-cjs/src/api/transport.js +0 -267
- package/dist-cjs/src/api/types.js +0 -2
- package/dist-cjs/src/branding/terminal.js +0 -338
- package/dist-cjs/src/broadcast/broadcast.js +0 -58
- package/dist-cjs/src/cache/cache.js +0 -45
- package/dist-cjs/src/cli.js +0 -86
- package/dist-cjs/src/context/context.js +0 -305
- package/dist-cjs/src/core/bot.js +0 -510
- package/dist-cjs/src/core/events.js +0 -38
- package/dist-cjs/src/core/webhook-reply.js +0 -42
- package/dist-cjs/src/index.js +0 -47
- package/dist-cjs/src/keyboard/index.js +0 -61
- package/dist-cjs/src/middleware/compose.js +0 -20
- package/dist-cjs/src/observability/logger.js +0 -293
- package/dist-cjs/src/plugins/plugin.js +0 -63
- package/dist-cjs/src/queue/queue.js +0 -219
- package/dist-cjs/src/router/router.js +0 -186
- package/dist-cjs/src/state/conversation.js +0 -139
- package/dist-cjs/src/state/forms.js +0 -47
- package/dist-cjs/src/state/menu.js +0 -133
- package/dist-cjs/src/storage/storage.js +0 -202
- package/dist-cjs/src/telegram-features.js +0 -76
- package/dist-cjs/src/testing.js +0 -45
- package/dist-cjs/src/utils/concurrency.js +0 -57
- package/dist-cjs/src/utils/files.js +0 -58
- package/dist-cjs/src/utils/text.js +0 -63
- package/dist-cjs/src/webhook/handler.js +0 -144
- package/docs/API.id.md +0 -1935
- package/docs/API.md +0 -1969
- package/docs/API.zh-CN.md +0 -1929
- package/docs/GETTING_STARTED.id.md +0 -85
- package/docs/GETTING_STARTED.md +0 -85
- package/docs/GETTING_STARTED.zh-CN.md +0 -85
- package/docs/GITHUB_PACKAGES.id.md +0 -82
- package/docs/GITHUB_PACKAGES.md +0 -82
- package/docs/GITHUB_PACKAGES.zh-CN.md +0 -82
- package/docs/README.md +0 -48
- package/docs/STORAGE.id.md +0 -105
- package/docs/STORAGE.md +0 -105
- package/docs/STORAGE.zh-CN.md +0 -105
- package/examples/README.md +0 -37
- package/examples/files.ts +0 -35
- package/examples/minimal.ts +0 -12
- package/examples/tsconfig.json +0 -9
- package/examples/webhook.ts +0 -42
- package/examples/wizard-registration.ts +0 -42
package/dist/src/core/bot.d.ts
DELETED
|
@@ -1,204 +0,0 @@
|
|
|
1
|
-
import { ApiClient } from "../api/client.js";
|
|
2
|
-
import { type FetchTransportOptions, type Transport } from "../api/transport.js";
|
|
3
|
-
import type { BotCommand, BotCommandScope, ChatId, Update, User } from "../api/types.js";
|
|
4
|
-
import { Context } from "../context/context.js";
|
|
5
|
-
import { type Middleware } from "../middleware/compose.js";
|
|
6
|
-
import { Router, type RouterOptions, type UpdateFilter } from "../router/router.js";
|
|
7
|
-
import { EventBus, type EventMap } from "./events.js";
|
|
8
|
-
import { type Storage } from "../storage/storage.js";
|
|
9
|
-
import { PluginManager, type Plugin } from "../plugins/plugin.js";
|
|
10
|
-
import { Logger, type LoggerOptions } from "../observability/logger.js";
|
|
11
|
-
import { type Wizard } from "../state/conversation.js";
|
|
12
|
-
import { type BroadcastOptions, type BroadcastReport } from "../broadcast/broadcast.js";
|
|
13
|
-
import { type WebhookReplySink } from "./webhook-reply.js";
|
|
14
|
-
import type { DownloadedFile } from "../api/client.js";
|
|
15
|
-
import type { ContextOptions } from "../context/context.js";
|
|
16
|
-
/** Thrown when a single update exceeds `handlerTimeout`; the handler keeps running in the background. */
|
|
17
|
-
export declare class UpdateTimeoutError extends Error {
|
|
18
|
-
readonly name: string;
|
|
19
|
-
readonly updateId: number;
|
|
20
|
-
constructor(updateId: number, timeoutMs: number);
|
|
21
|
-
}
|
|
22
|
-
export type BotStatus = "created" | "initialized" | "starting" | "running" | "stopping" | "stopped" | "error";
|
|
23
|
-
export type BotContext<S extends object = Record<string, unknown>> = Context<S>;
|
|
24
|
-
export interface BotOptions<S extends object = Record<string, unknown>> {
|
|
25
|
-
token: string;
|
|
26
|
-
apiBaseUrl?: string;
|
|
27
|
-
transport?: Transport;
|
|
28
|
-
transportOptions?: Omit<FetchTransportOptions, "baseUrl">;
|
|
29
|
-
session?: Storage<string, S>;
|
|
30
|
-
services?: Record<string, unknown>;
|
|
31
|
-
polling?: {
|
|
32
|
-
timeout?: number;
|
|
33
|
-
limit?: number;
|
|
34
|
-
allowedUpdates?: string[];
|
|
35
|
-
retryDelayMs?: number;
|
|
36
|
-
maxRetryDelayMs?: number;
|
|
37
|
-
};
|
|
38
|
-
/**
|
|
39
|
-
* Update-processing tuning. Updates always run in parallel across chats
|
|
40
|
-
* while staying ordered within a single chat. `concurrency` caps how many
|
|
41
|
-
* updates may be processed at the same time (default `Infinity` — bursts of
|
|
42
|
-
* 1000+ messages are processed at once, with no artificial cooldown).
|
|
43
|
-
*/
|
|
44
|
-
updates?: {
|
|
45
|
-
concurrency?: number;
|
|
46
|
-
};
|
|
47
|
-
/**
|
|
48
|
-
* Per-update processing timeout in milliseconds (default `90000`, matching
|
|
49
|
-
* Telegraf; `Infinity` disables). On timeout the update error flow runs
|
|
50
|
-
* (`update:error`, `bot:error`, `catch()` boundary) and `handleUpdate()`
|
|
51
|
-
* rejects, while the handler keeps running to completion in the background.
|
|
52
|
-
*/
|
|
53
|
-
handlerTimeout?: number;
|
|
54
|
-
/** Custom `Context` subclass instantiated for every update (Telegraf's `contextType`). */
|
|
55
|
-
contextType?: new (options: ContextOptions<S>) => Context<S>;
|
|
56
|
-
router?: RouterOptions;
|
|
57
|
-
logger?: Logger | LoggerOptions;
|
|
58
|
-
branding?: boolean;
|
|
59
|
-
}
|
|
60
|
-
export interface HealthStatus {
|
|
61
|
-
status: BotStatus;
|
|
62
|
-
apiReachable: boolean;
|
|
63
|
-
bot?: User;
|
|
64
|
-
checkedAt: string;
|
|
65
|
-
error?: string;
|
|
66
|
-
}
|
|
67
|
-
export declare class Bot<S extends object = Record<string, unknown>> {
|
|
68
|
-
readonly api: ApiClient;
|
|
69
|
-
readonly router: Router<Context<S>>;
|
|
70
|
-
readonly events: EventBus<EventMap>;
|
|
71
|
-
readonly plugins: PluginManager<Context<S>>;
|
|
72
|
-
readonly session: Storage<string, S>;
|
|
73
|
-
readonly services: Record<string, unknown>;
|
|
74
|
-
readonly token: string;
|
|
75
|
-
readonly logger: Logger;
|
|
76
|
-
private readonly middlewares;
|
|
77
|
-
private readonly pollingOptions;
|
|
78
|
-
private statusValue;
|
|
79
|
-
private pollingAbort;
|
|
80
|
-
private offset;
|
|
81
|
-
private me?;
|
|
82
|
-
/** Caps how many updates run at once (default: unlimited). */
|
|
83
|
-
private readonly updateLimiter;
|
|
84
|
-
/** Per-update timeout in ms; `Infinity` disables. */
|
|
85
|
-
private readonly handlerTimeoutMs;
|
|
86
|
-
/** Context class instantiated per update (default `Context`). */
|
|
87
|
-
private readonly contextType;
|
|
88
|
-
/** Per-chat processing chains: parallel across chats, ordered within a chat. */
|
|
89
|
-
private readonly chatChains;
|
|
90
|
-
/**
|
|
91
|
-
* Identifies the update chain executing in the current async context so
|
|
92
|
-
* `stop()` called from inside a handler never deadlocks waiting on itself
|
|
93
|
-
* (Telegraf allows `bot.stop()` from within a handler).
|
|
94
|
-
*/
|
|
95
|
-
private readonly currentUpdateChain;
|
|
96
|
-
/** Memoized init so a burst of updates triggers exactly one getMe call. */
|
|
97
|
-
private initOnce;
|
|
98
|
-
private readonly brandingEnabled;
|
|
99
|
-
/** Branding effects run only on an interactive TTY; structured logs stay untouched otherwise. */
|
|
100
|
-
private readonly brandingActive;
|
|
101
|
-
private activeBanner;
|
|
102
|
-
private errorHandler?;
|
|
103
|
-
constructor(options: string | BotOptions<S>);
|
|
104
|
-
/** Startup info logs are demoted to debug while the branding sequence owns the terminal. */
|
|
105
|
-
private startupLog;
|
|
106
|
-
get status(): BotStatus;
|
|
107
|
-
get botInfo(): User | undefined;
|
|
108
|
-
use(...middleware: Middleware<Context<S>>[]): this;
|
|
109
|
-
command(name: string, handler: Middleware<Context<S>>): this;
|
|
110
|
-
callback(pattern: string | RegExp, handler: Middleware<Context<S>>): this;
|
|
111
|
-
/** Telegraf-style alias for `callback()`: registers a handler for callback-query button data. */
|
|
112
|
-
action(pattern: string | RegExp, handler: Middleware<Context<S>>): this;
|
|
113
|
-
onText(text: string, handler: Middleware<Context<S>>): this;
|
|
114
|
-
onRegex(expression: RegExp, handler: Middleware<Context<S>>): this;
|
|
115
|
-
/** Registers a handler for update types: `bot.on("message:photo", handler)` or `bot.on(["message:text", "callback_query:data"], handler)`. */
|
|
116
|
-
on(filter: UpdateFilter | UpdateFilter[], handler: Middleware<Context<S>>): this;
|
|
117
|
-
/** Registers a handler for exact text or a regular expression, mirroring familiar frameworks. */
|
|
118
|
-
hears(trigger: string | RegExp, handler: Middleware<Context<S>>): this;
|
|
119
|
-
/**
|
|
120
|
-
* Sets the error boundary for update handlers. When set, handler failures are
|
|
121
|
-
* passed here instead of rejecting `handleUpdate()` (webhooks answer 200).
|
|
122
|
-
*/
|
|
123
|
-
catch(handler: (error: unknown, ctx: Context<S>) => void | Promise<void>): this;
|
|
124
|
-
usePlugin(plugin: Plugin<Context<S>>): this;
|
|
125
|
-
/**
|
|
126
|
-
* Routes subsequent messages to the active Wizard step for the same chat/user.
|
|
127
|
-
* The application starts the wizard once with `wizard.run(ctx, key)`; this
|
|
128
|
-
* middleware keeps routing replies until the wizard is completed or cancelled.
|
|
129
|
-
*/
|
|
130
|
-
useWizard(wizard: Wizard<S>, options?: {
|
|
131
|
-
cancelCommand?: string;
|
|
132
|
-
}): this;
|
|
133
|
-
init(): Promise<this>;
|
|
134
|
-
start(options?: {
|
|
135
|
-
timeout?: number;
|
|
136
|
-
allowedUpdates?: string[];
|
|
137
|
-
dropPendingUpdates?: boolean;
|
|
138
|
-
}): Promise<void>;
|
|
139
|
-
launch(options?: {
|
|
140
|
-
mode: "polling";
|
|
141
|
-
timeout?: number;
|
|
142
|
-
allowedUpdates?: string[];
|
|
143
|
-
dropPendingUpdates?: boolean;
|
|
144
|
-
}): Promise<void>;
|
|
145
|
-
stop(): Promise<void>;
|
|
146
|
-
/** Waits (bounded by `handlerTimeout`) for updates that are still processing. */
|
|
147
|
-
private drainInFlightUpdates;
|
|
148
|
-
restart(): Promise<void>;
|
|
149
|
-
health(): Promise<HealthStatus>;
|
|
150
|
-
getMe(): Promise<User>;
|
|
151
|
-
setCommands(commands: BotCommand[], scope?: BotCommandScope, languageCode?: string): Promise<true>;
|
|
152
|
-
deleteCommands(scope?: BotCommandScope, languageCode?: string): Promise<true>;
|
|
153
|
-
/**
|
|
154
|
-
* Downloads a Telegram file by `file_id`: resolves it with `getFile`, then
|
|
155
|
-
* fetches the raw bytes via the transport's download endpoint. Pass
|
|
156
|
-
* `destination` to also persist the bytes to a local file path. The
|
|
157
|
-
* returned `url` is valid for at least one hour; Telegram caps downloads
|
|
158
|
-
* at 20 MB.
|
|
159
|
-
*/
|
|
160
|
-
downloadFile(fileId: string, options?: {
|
|
161
|
-
signal?: AbortSignal;
|
|
162
|
-
destination?: string;
|
|
163
|
-
}): Promise<DownloadedFile>;
|
|
164
|
-
/**
|
|
165
|
-
* Handles a single update. Updates for different chats run in parallel;
|
|
166
|
-
* updates for the same chat are processed strictly in arrival order so
|
|
167
|
-
* sessions, wizards, and conversations never interleave. Rejects for this
|
|
168
|
-
* update's failure (as before) without affecting other updates.
|
|
169
|
-
*
|
|
170
|
-
* `options.webhookReply` installs a Telegraf-style responder: the first
|
|
171
|
-
* outgoing API call during this update is answered through the webhook HTTP
|
|
172
|
-
* response instead of a separate request, and resolves with `true` because
|
|
173
|
-
* Telegram never sends the method result back to a webhook response.
|
|
174
|
-
*/
|
|
175
|
-
handleUpdate(update: Update, options?: {
|
|
176
|
-
webhookReply?: WebhookReplySink;
|
|
177
|
-
}): Promise<void>;
|
|
178
|
-
/** Rejects with `UpdateTimeoutError` after `timeoutMs` unless `promise` settles first; `timeoutMs <= 0` or a non-finite value disables the guard. */
|
|
179
|
-
private withTimeout;
|
|
180
|
-
/**
|
|
181
|
-
* Handles a whole batch of updates at once: every chat in the batch is
|
|
182
|
-
* processed immediately (parallel across chats, ordered per chat), so a
|
|
183
|
-
* burst of 1000 messages is not stuck behind one slow handler. Individual
|
|
184
|
-
* handler failures are logged, emitted as `update:error`, and passed to the
|
|
185
|
-
* `catch()` error boundary; they never reject this promise.
|
|
186
|
-
*/
|
|
187
|
-
handleUpdates(updates: readonly Update[]): Promise<void>;
|
|
188
|
-
/**
|
|
189
|
-
* Sends to many chats in parallel — built for broadcasts to 1000+ users.
|
|
190
|
-
* There is no proactive cooldown: every chat is attempted at once (up to
|
|
191
|
-
* `concurrency`). When Telegram answers 429, the send is retried
|
|
192
|
-
* automatically after exactly the `retry_after` delay Telegram ordered, so
|
|
193
|
-
* bursts deliver completely instead of failing.
|
|
194
|
-
*/
|
|
195
|
-
broadcast(chatIds: readonly ChatId[], send: (chatId: ChatId) => Promise<unknown>, options?: BroadcastOptions): Promise<BroadcastReport>;
|
|
196
|
-
/** Runs init() once even when many updates arrive concurrently; never claims a webhook reply slot. */
|
|
197
|
-
private ensureInitialized;
|
|
198
|
-
private processUpdate;
|
|
199
|
-
private runUpdate;
|
|
200
|
-
private conversationKey;
|
|
201
|
-
private waitForRetry;
|
|
202
|
-
private poll;
|
|
203
|
-
}
|
|
204
|
-
//# sourceMappingURL=bot.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../../../src/core/bot.ts"],"names":[],"mappings":"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"}
|