@wrongstack/telegram 0.286.0 → 0.289.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -18
- package/dist/api-client.d.ts +119 -0
- package/dist/api-client.d.ts.map +1 -0
- package/dist/bot-queue.d.ts +27 -0
- package/dist/bot-queue.d.ts.map +1 -0
- package/dist/bot.d.ts +50 -67
- package/dist/bot.d.ts.map +1 -1
- package/dist/config-classifier.d.ts +64 -0
- package/dist/config-classifier.d.ts.map +1 -0
- package/dist/config.d.ts +45 -7
- package/dist/config.d.ts.map +1 -1
- package/dist/inbox-cursor-store.d.ts +54 -0
- package/dist/inbox-cursor-store.d.ts.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1254 -415
- package/dist/index.js.map +4 -4
- package/dist/offset-store.d.ts +40 -0
- package/dist/offset-store.d.ts.map +1 -0
- package/dist/outbound-queue.d.ts +52 -0
- package/dist/outbound-queue.d.ts.map +1 -0
- package/dist/security/outbound.d.ts +25 -0
- package/dist/security/outbound.d.ts.map +1 -0
- package/dist/slash-commands/index.d.ts +8 -2
- package/dist/slash-commands/index.d.ts.map +1 -1
- package/dist/tools/telegram-approve.d.ts +15 -3
- package/dist/tools/telegram-approve.d.ts.map +1 -1
- package/dist/tools/telegram-send.d.ts +6 -4
- package/dist/tools/telegram-send.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Offset file path for a bot token. The token itself never appears in the path.
|
|
3
|
+
* Uses the same hash convention as PollLock so both are discoverable together.
|
|
4
|
+
*/
|
|
5
|
+
export declare function offsetPathForToken(token: string, globalRoot?: string): string;
|
|
6
|
+
/**
|
|
7
|
+
* Typed offset-cursor persistence for Telegram bot polling.
|
|
8
|
+
*
|
|
9
|
+
* Writes are atomic (temp file + rename) so a crash mid-write never leaves a
|
|
10
|
+
* corrupt or incomplete file. Reads handle missing, empty, and malformed files
|
|
11
|
+
* transparently — the caller always gets a valid non-negative number or null.
|
|
12
|
+
*/
|
|
13
|
+
export interface OffsetStoreOptions {
|
|
14
|
+
/** Bot token — derives a token-scoped default path. Never persisted. */
|
|
15
|
+
token?: string | undefined;
|
|
16
|
+
/**
|
|
17
|
+
* Explicit file path override. Takes precedence over token derivation. An
|
|
18
|
+
* empty string is treated as "no path", which disables persistence.
|
|
19
|
+
*/
|
|
20
|
+
path?: string | undefined;
|
|
21
|
+
/** Base directory for token-scoped derivation (defaults to wstackGlobalRoot). */
|
|
22
|
+
globalRoot?: string | undefined;
|
|
23
|
+
}
|
|
24
|
+
export declare class OffsetStore {
|
|
25
|
+
private readonly path;
|
|
26
|
+
constructor(opts?: OffsetStoreOptions);
|
|
27
|
+
/** The derived path for diagnostics. */
|
|
28
|
+
get storePath(): string;
|
|
29
|
+
/**
|
|
30
|
+
* Read the persisted offset. Returns null when the file is missing, empty,
|
|
31
|
+
* or contains a value that is not a valid non-negative integer.
|
|
32
|
+
*/
|
|
33
|
+
read(): number | null;
|
|
34
|
+
/**
|
|
35
|
+
* Persist an offset value using an atomic write (temp file + rename).
|
|
36
|
+
* Creates the parent directory on first call.
|
|
37
|
+
*/
|
|
38
|
+
write(offset: number): void;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=offset-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"offset-store.d.ts","sourceRoot":"","sources":["../src/offset-store.ts"],"names":[],"mappings":"AAcA;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,SAAqB,GAAG,MAAM,CAGzF;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAE9B,YAAY,IAAI,GAAE,kBAAuB,EAQxC;IAED,wCAAwC;IACxC,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;;OAGG;IACH,IAAI,IAAI,MAAM,GAAG,IAAI,CA0BpB;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CA2B1B;CACF"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { Logger } from '@wrongstack/core';
|
|
2
|
+
export type OutboundKind = 'notification' | 'manual';
|
|
3
|
+
export interface OutboundEntry {
|
|
4
|
+
readonly chatId: string | number;
|
|
5
|
+
readonly text: string;
|
|
6
|
+
/** Manual = user-triggered (never dropped). Notification = best-effort. */
|
|
7
|
+
readonly kind: OutboundKind;
|
|
8
|
+
}
|
|
9
|
+
export interface OutboundQueueOptions {
|
|
10
|
+
/** Bound per chat; default 32. Older pending entries are dropped on overflow. */
|
|
11
|
+
readonly maxPerChat?: number | undefined;
|
|
12
|
+
/** Bound for the total concurrent API calls; default 4. */
|
|
13
|
+
readonly maxConcurrency?: number | undefined;
|
|
14
|
+
/**
|
|
15
|
+
* Producer of the actual HTTP call. The queue invokes this exactly once
|
|
16
|
+
* per dequeued entry and propagates the resolved value (or rejection) to
|
|
17
|
+
* the original enqueue caller. Keeping this as an injected function lets
|
|
18
|
+
* the queue own ordering/backpressure while tests swap a fake transport.
|
|
19
|
+
*/
|
|
20
|
+
readonly send: (chatId: string | number, text: string) => Promise<unknown>;
|
|
21
|
+
readonly log?: Logger | undefined;
|
|
22
|
+
}
|
|
23
|
+
export interface OutboundQueueStats {
|
|
24
|
+
readonly enqueued: number;
|
|
25
|
+
readonly sent: number;
|
|
26
|
+
readonly dropped: number;
|
|
27
|
+
readonly failed: number;
|
|
28
|
+
readonly inflight: number;
|
|
29
|
+
/** Accepted entries not yet settled, including the in-flight sends. */
|
|
30
|
+
readonly pending: number;
|
|
31
|
+
}
|
|
32
|
+
export declare class OutboundQueue {
|
|
33
|
+
#private;
|
|
34
|
+
constructor(opts: OutboundQueueOptions);
|
|
35
|
+
/**
|
|
36
|
+
* Enqueue an outbound send. For manual entries the returned promise
|
|
37
|
+
* resolves with the send result (or rejects with the send error / the
|
|
38
|
+
* overflow error). For notification entries the returned promise resolves
|
|
39
|
+
* as soon as the queue accepts the entry, so callers don't block;
|
|
40
|
+
* downstream drain failures are logged and counted but do not propagate.
|
|
41
|
+
*/
|
|
42
|
+
enqueue(entry: OutboundEntry): Promise<unknown>;
|
|
43
|
+
/** Stats snapshot for `/telegram-health` and the P3.1 metrics surface. */
|
|
44
|
+
stats(): OutboundQueueStats;
|
|
45
|
+
/**
|
|
46
|
+
* Stop accepting new entries. Returns a promise that resolves once all
|
|
47
|
+
* currently in-flight sends have settled and every per-chat lane is
|
|
48
|
+
* empty. Pending entries are rejected so their callers don't hang.
|
|
49
|
+
*/
|
|
50
|
+
stop(): Promise<void>;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=outbound-queue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outbound-queue.d.ts","sourceRoot":"","sources":["../src/outbound-queue.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG,QAAQ,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;CAC7B;AAaD,MAAM,WAAW,oBAAoB;IACnC,iFAAiF;IACjF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,2DAA2D;IAC3D,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3E,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,uEAAuE;IACvE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAWD,qBAAa,aAAa;;IAqBxB,YAAY,IAAI,EAAE,oBAAoB,EASrC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CA0D9C;IAED,0EAA0E;IAC1E,KAAK,IAAI,kBAAkB,CAW1B;IAED;;;;OAIG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAkB1B;CAyFF"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export type TelegramChatId = string | number;
|
|
2
|
+
/**
|
|
3
|
+
* Narrow capability for creating a Telegram approval request. Unlike the
|
|
4
|
+
* generic `net.outbound` capability, this must be granted explicitly to a
|
|
5
|
+
* subagent before its auto-permission approval tool becomes available.
|
|
6
|
+
*/
|
|
7
|
+
export declare const TELEGRAM_APPROVAL_CAPABILITY: 'net.outbound.telegram.approval';
|
|
8
|
+
export interface TelegramOutboundTargetPolicy {
|
|
9
|
+
/** Paired/default chat. It is always an allowed outbound target when set. */
|
|
10
|
+
getDefaultChatId(): TelegramChatId | undefined;
|
|
11
|
+
/** Additional explicitly trusted outbound targets, resolved at call time. */
|
|
12
|
+
getAllowedOutboundChatIds?(): readonly TelegramChatId[];
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Resolve an outbound target against the paired chat plus the explicit
|
|
16
|
+
* outbound allowlist. This must run before any Telegram API call.
|
|
17
|
+
*/
|
|
18
|
+
export declare function resolveTelegramOutboundTarget(requestedChatId: TelegramChatId | undefined, policy: TelegramOutboundTargetPolicy): TelegramChatId;
|
|
19
|
+
/**
|
|
20
|
+
* Scrub outbound text with the shared core credential detector, then retain
|
|
21
|
+
* Telegram's legacy flag/env redaction for labelled secrets the core patterns
|
|
22
|
+
* intentionally do not classify by value alone.
|
|
23
|
+
*/
|
|
24
|
+
export declare function scrubTelegramOutboundText(text: string): string;
|
|
25
|
+
//# sourceMappingURL=outbound.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outbound.d.ts","sourceRoot":"","sources":["../../src/security/outbound.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,CAAC;AAE7C;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,EAAG,gCAAyC,CAAC;AAEtF,MAAM,WAAW,4BAA4B;IAC3C,6EAA6E;IAC7E,gBAAgB,IAAI,cAAc,GAAG,SAAS,CAAC;IAC/C,6EAA6E;IAC7E,yBAAyB,CAAC,IAAI,SAAS,cAAc,EAAE,CAAC;CACzD;AASD;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,eAAe,EAAE,cAAc,GAAG,SAAS,EAC3C,MAAM,EAAE,4BAA4B,GACnC,cAAc,CA6BhB;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO9D"}
|
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import type { PluginAPI, SlashCommand } from '@wrongstack/core';
|
|
2
|
-
import type
|
|
2
|
+
import { type TelegramBot } from '../bot.js';
|
|
3
3
|
import type { TelegramPluginConfig } from '../config.js';
|
|
4
|
+
import { type TelegramOutboundTargetPolicy } from '../security/outbound.js';
|
|
5
|
+
import type { TelegramBotOutbound } from '../bot-queue.js';
|
|
4
6
|
export declare function tgHealthCommand(bot: TelegramBot, cfg: TelegramPluginConfig): SlashCommand;
|
|
5
|
-
|
|
7
|
+
interface TelegramSlashSendPolicy extends TelegramOutboundTargetPolicy {
|
|
8
|
+
getMaxMessageLength?(): number;
|
|
9
|
+
}
|
|
10
|
+
export declare function tgSendCommand(bot: TelegramBot, policyOrDefault: TelegramSlashSendPolicy | string | number | undefined, outbound?: TelegramBotOutbound): SlashCommand;
|
|
6
11
|
export declare function tgChatIdCommand(defaultChatId?: string | number): SlashCommand;
|
|
7
12
|
export declare function registerSlashCommands(api: PluginAPI, bot: TelegramBot, cfg: TelegramPluginConfig): string[];
|
|
13
|
+
export {};
|
|
8
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/slash-commands/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/slash-commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhE,OAAO,EAAE,KAAK,WAAW,EAAuB,MAAM,WAAW,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAGL,KAAK,4BAA4B,EAClC,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAM3D,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,oBAAoB,GAAG,YAAY,CA0BzF;AAMD,UAAU,uBAAwB,SAAQ,4BAA4B;IACpE,mBAAmB,CAAC,IAAI,MAAM,CAAC;CAChC;AAED,wBAAgB,aAAa,CAC3B,GAAG,EAAE,WAAW,EAChB,eAAe,EAAE,uBAAuB,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,EACtE,QAAQ,CAAC,EAAE,mBAAmB,GAC7B,YAAY,CAwDd;AAMD,wBAAgB,eAAe,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,YAAY,CAmB7E;AAMD,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,SAAS,EACd,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,oBAAoB,GACxB,MAAM,EAAE,CAYV"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { Tool } from '@wrongstack/core';
|
|
2
|
-
import type { Logger } from '@wrongstack/core';
|
|
1
|
+
import type { Logger, Tool } from '@wrongstack/core';
|
|
3
2
|
import type { TelegramBot } from '../bot.js';
|
|
3
|
+
import { type TelegramChatId } from '../security/outbound.js';
|
|
4
4
|
interface TelegramApproveInput {
|
|
5
5
|
/** Short label for what's being approved (≤ 60 chars). Shown as the prompt heading. */
|
|
6
6
|
prompt: string;
|
|
@@ -13,6 +13,11 @@ interface TelegramApproveInput {
|
|
|
13
13
|
}
|
|
14
14
|
interface TelegramApproveOutput {
|
|
15
15
|
approved: boolean;
|
|
16
|
+
/** Immutable Telegram user ID; absent for timeout, shutdown, or rejection. */
|
|
17
|
+
user_id?: number | undefined;
|
|
18
|
+
/** Human-readable username/first name; never used for authorization. */
|
|
19
|
+
display_name: string;
|
|
20
|
+
/** Backward-compatible alias for display_name. */
|
|
16
21
|
from: string;
|
|
17
22
|
prompt_message_id?: number | undefined;
|
|
18
23
|
}
|
|
@@ -34,7 +39,14 @@ interface TelegramApproveOutput {
|
|
|
34
39
|
*/
|
|
35
40
|
export declare function makeTelegramApproveTool(opts: {
|
|
36
41
|
bot: TelegramBot;
|
|
37
|
-
|
|
42
|
+
/** Paired/default target, resolved on every call for live config updates. */
|
|
43
|
+
getDefaultChatId(): TelegramChatId | undefined;
|
|
44
|
+
/** Additional trusted targets, resolved on every call for live config updates. */
|
|
45
|
+
getAllowedOutboundChatIds?(): readonly TelegramChatId[];
|
|
46
|
+
/** Immutable Telegram user IDs permitted to resolve an approval. */
|
|
47
|
+
getAllowedUserIds?(): readonly TelegramChatId[];
|
|
48
|
+
/** Group approvals stay denied unless both this and explicit user IDs are configured. */
|
|
49
|
+
allowGroupApprovals?: boolean | undefined;
|
|
38
50
|
maxMessageLength: number;
|
|
39
51
|
log: Logger;
|
|
40
52
|
}): Tool<TelegramApproveInput, TelegramApproveOutput>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram-approve.d.ts","sourceRoot":"","sources":["../../src/tools/telegram-approve.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"telegram-approve.d.ts","sourceRoot":"","sources":["../../src/tools/telegram-approve.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAC;AAEjC,UAAU,oBAAoB;IAC5B,uFAAuF;IACvF,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACtC,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,wEAAwE;IACxE,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,GAAG,EAAE,WAAW,CAAC;IACjB,6EAA6E;IAC7E,gBAAgB,IAAI,cAAc,GAAG,SAAS,CAAC;IAC/C,kFAAkF;IAClF,yBAAyB,CAAC,IAAI,SAAS,cAAc,EAAE,CAAC;IACxD,oEAAoE;IACpE,iBAAiB,CAAC,IAAI,SAAS,cAAc,EAAE,CAAC;IAChD,yFAAyF;IACzF,mBAAmB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1C,gBAAgB,EAAE,MAAM,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACb,GAAG,IAAI,CAAC,oBAAoB,EAAE,qBAAqB,CAAC,CA8GpD"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type { Logger } from '@wrongstack/core';
|
|
1
|
+
import { type Logger, type Tool } from '@wrongstack/core';
|
|
3
2
|
import type { TelegramBot } from '../bot.js';
|
|
3
|
+
import { type TelegramChatId } from '../security/outbound.js';
|
|
4
4
|
interface TelegramSendInput {
|
|
5
5
|
/** Chat or user ID to send the message to. Falls back to config.notifyChatId when omitted. */
|
|
6
6
|
chat_id?: string | number | undefined;
|
|
@@ -9,8 +9,10 @@ interface TelegramSendInput {
|
|
|
9
9
|
}
|
|
10
10
|
export declare function makeTelegramSendTool(opts: {
|
|
11
11
|
bot: TelegramBot;
|
|
12
|
-
/**
|
|
13
|
-
getDefaultChatId():
|
|
12
|
+
/** Paired/default target, resolved on every call for live config updates. */
|
|
13
|
+
getDefaultChatId(): TelegramChatId | undefined;
|
|
14
|
+
/** Additional trusted targets, resolved on every call for live config updates. */
|
|
15
|
+
getAllowedOutboundChatIds?(): readonly TelegramChatId[];
|
|
14
16
|
maxMessageLength: number;
|
|
15
17
|
log: Logger;
|
|
16
18
|
}): Tool<TelegramSendInput>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram-send.d.ts","sourceRoot":"","sources":["../../src/tools/telegram-send.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"telegram-send.d.ts","sourceRoot":"","sources":["../../src/tools/telegram-send.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,MAAM,EAAE,KAAK,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAC;AAGjC,UAAU,iBAAiB;IACzB,8FAA8F;IAC9F,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACtC,oBAAoB;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IACzC,GAAG,EAAE,WAAW,CAAC;IACjB,6EAA6E;IAC7E,gBAAgB,IAAI,cAAc,GAAG,SAAS,CAAC;IAC/C,kFAAkF;IAClF,yBAAyB,CAAC,IAAI,SAAS,cAAc,EAAE,CAAC;IACxD,gBAAgB,EAAE,MAAM,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACb,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAsD1B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wrongstack/telegram",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.289.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "WrongStack plugin — Telegram bridge: send messages, receive prompts, get notified.",
|
|
6
6
|
"repository": {
|
|
@@ -25,12 +25,12 @@
|
|
|
25
25
|
"dist"
|
|
26
26
|
],
|
|
27
27
|
"peerDependencies": {
|
|
28
|
-
"@wrongstack/core": "0.
|
|
28
|
+
"@wrongstack/core": "0.289.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@types/node": "^26.0.1",
|
|
32
32
|
"typescript": "^7.0.2",
|
|
33
|
-
"@wrongstack/core": "0.
|
|
33
|
+
"@wrongstack/core": "0.289.0"
|
|
34
34
|
},
|
|
35
35
|
"publishConfig": {
|
|
36
36
|
"access": "public"
|