@aracna/telegram-bot 1.9.13 → 2.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.
Files changed (173) hide show
  1. package/apis/telegram-api.d.ts +9 -0
  2. package/apis/telegram-api.js +55 -0
  3. package/apis/telegram-file-api.d.ts +7 -0
  4. package/apis/telegram-file-api.js +14 -0
  5. package/classes/client.d.ts +46 -0
  6. package/classes/client.js +409 -0
  7. package/definitions/constants.d.ts +10 -0
  8. package/definitions/constants.js +53 -1
  9. package/definitions/enums.d.ts +1 -20
  10. package/definitions/enums.js +2 -22
  11. package/definitions/interfaces.d.ts +91 -75
  12. package/definitions/interfaces.js +0 -1
  13. package/definitions/telegram-api-definitions.d.ts +12 -0
  14. package/definitions/telegram-api-definitions.js +2 -0
  15. package/definitions/types.d.ts +4 -3
  16. package/index.d.ts +656 -416
  17. package/index.js +236 -20
  18. package/loggers/class-logger.d.ts +2 -0
  19. package/loggers/{module.logger.js → class-logger.js} +2 -2
  20. package/package.json +13 -4
  21. package/requests/add-requests.d.ts +3 -0
  22. package/requests/add-requests.js +14 -0
  23. package/requests/answer-requests.d.ts +7 -0
  24. package/requests/answer-requests.js +23 -0
  25. package/requests/approve-requests.d.ts +3 -0
  26. package/requests/approve-requests.js +7 -0
  27. package/requests/ban-requests.d.ts +4 -0
  28. package/requests/ban-requests.js +11 -0
  29. package/requests/close-requests.d.ts +4 -0
  30. package/requests/close-requests.js +11 -0
  31. package/requests/copy-requests.d.ts +4 -0
  32. package/requests/copy-requests.js +11 -0
  33. package/requests/create-requests.d.ts +7 -0
  34. package/requests/create-requests.js +30 -0
  35. package/requests/decline-requests.d.ts +3 -0
  36. package/requests/decline-requests.js +7 -0
  37. package/requests/delete-requests.d.ts +10 -0
  38. package/requests/delete-requests.js +35 -0
  39. package/requests/download-requests.d.ts +3 -0
  40. package/requests/download-requests.js +29 -0
  41. package/requests/edit-requests.d.ts +12 -0
  42. package/requests/edit-requests.js +46 -0
  43. package/requests/export-requests.d.ts +3 -0
  44. package/requests/export-requests.js +7 -0
  45. package/requests/forward-requests.d.ts +4 -0
  46. package/requests/forward-requests.js +11 -0
  47. package/requests/get-requests.d.ts +23 -0
  48. package/requests/get-requests.js +92 -0
  49. package/requests/hide-requests.d.ts +3 -0
  50. package/requests/hide-requests.js +7 -0
  51. package/requests/leave-requests.d.ts +3 -0
  52. package/requests/leave-requests.js +7 -0
  53. package/requests/log-requests.d.ts +2 -0
  54. package/requests/log-requests.js +7 -0
  55. package/requests/pin-requests.d.ts +3 -0
  56. package/requests/pin-requests.js +7 -0
  57. package/requests/promote-requests.d.ts +3 -0
  58. package/requests/promote-requests.js +7 -0
  59. package/requests/refund-requests.d.ts +3 -0
  60. package/requests/refund-requests.js +7 -0
  61. package/requests/reopen-requests.d.ts +4 -0
  62. package/requests/reopen-requests.js +11 -0
  63. package/requests/replace-requests.d.ts +3 -0
  64. package/requests/replace-requests.js +14 -0
  65. package/requests/restrict-requests.d.ts +3 -0
  66. package/requests/restrict-requests.js +7 -0
  67. package/requests/revoke-requests.d.ts +3 -0
  68. package/requests/revoke-requests.js +7 -0
  69. package/requests/send-requests.d.ts +24 -0
  70. package/requests/send-requests.js +102 -0
  71. package/requests/set-requests.d.ts +24 -0
  72. package/requests/set-requests.js +95 -0
  73. package/requests/stop-requests.d.ts +4 -0
  74. package/requests/stop-requests.js +11 -0
  75. package/requests/unban-requests.d.ts +4 -0
  76. package/requests/unban-requests.js +11 -0
  77. package/requests/unhide-requests.d.ts +3 -0
  78. package/requests/unhide-requests.js +7 -0
  79. package/requests/unpin-requests.d.ts +6 -0
  80. package/requests/unpin-requests.js +19 -0
  81. package/requests/upload-requests.d.ts +3 -0
  82. package/requests/upload-requests.js +7 -0
  83. package/requests/webhook-requests.d.ts +6 -0
  84. package/requests/webhook-requests.js +20 -0
  85. package/utils/callback-query-utils.d.ts +3 -0
  86. package/utils/callback-query-utils.js +25 -0
  87. package/utils/command-utils.d.ts +5 -0
  88. package/utils/command-utils.js +28 -0
  89. package/utils/context-utils.d.ts +11 -0
  90. package/utils/context-utils.js +42 -0
  91. package/utils/html-utils.d.ts +2 -0
  92. package/utils/html-utils.js +18 -0
  93. package/utils/inline-keyboard-utils.d.ts +12 -0
  94. package/utils/inline-keyboard-utils.js +43 -0
  95. package/utils/reply-to-message-utils.d.ts +6 -0
  96. package/utils/reply-to-message-utils.js +36 -0
  97. package/utils/start-message-utils.d.ts +6 -0
  98. package/utils/start-message-utils.js +40 -0
  99. package/builders/button.builder.d.ts +0 -11
  100. package/builders/button.builder.js +0 -31
  101. package/childs/add.d.ts +0 -6
  102. package/childs/add.js +0 -10
  103. package/childs/answer.d.ts +0 -9
  104. package/childs/answer.js +0 -19
  105. package/childs/ban.d.ts +0 -6
  106. package/childs/ban.js +0 -10
  107. package/childs/create.d.ts +0 -6
  108. package/childs/create.js +0 -17
  109. package/childs/delete.d.ts +0 -8
  110. package/childs/delete.js +0 -19
  111. package/childs/download.d.ts +0 -8
  112. package/childs/download.js +0 -32
  113. package/childs/edit.d.ts +0 -10
  114. package/childs/edit.js +0 -22
  115. package/childs/export.d.ts +0 -5
  116. package/childs/export.js +0 -10
  117. package/childs/forward.d.ts +0 -6
  118. package/childs/forward.js +0 -15
  119. package/childs/get.d.ts +0 -15
  120. package/childs/get.js +0 -37
  121. package/childs/leave.d.ts +0 -5
  122. package/childs/leave.js +0 -10
  123. package/childs/pin.d.ts +0 -6
  124. package/childs/pin.js +0 -10
  125. package/childs/polling.d.ts +0 -9
  126. package/childs/polling.js +0 -34
  127. package/childs/privates/send.private.d.ts +0 -7
  128. package/childs/privates/send.private.js +0 -19
  129. package/childs/promote.d.ts +0 -6
  130. package/childs/promote.js +0 -10
  131. package/childs/restrict.d.ts +0 -6
  132. package/childs/restrict.js +0 -15
  133. package/childs/send.d.ts +0 -31
  134. package/childs/send.js +0 -130
  135. package/childs/set.d.ts +0 -17
  136. package/childs/set.js +0 -44
  137. package/childs/stop.d.ts +0 -7
  138. package/childs/stop.js +0 -13
  139. package/childs/unban.d.ts +0 -5
  140. package/childs/unban.js +0 -10
  141. package/childs/unpin.d.ts +0 -5
  142. package/childs/unpin.js +0 -10
  143. package/childs/upload.d.ts +0 -7
  144. package/childs/upload.js +0 -10
  145. package/childs/webhook.d.ts +0 -8
  146. package/childs/webhook.js +0 -22
  147. package/loggers/module.logger.d.ts +0 -2
  148. package/modules/api.d.ts +0 -5
  149. package/modules/api.js +0 -24
  150. package/modules/builder.d.ts +0 -4
  151. package/modules/builder.js +0 -8
  152. package/modules/child.d.ts +0 -5
  153. package/modules/child.js +0 -10
  154. package/modules/configuration.d.ts +0 -8
  155. package/modules/configuration.js +0 -10
  156. package/modules/dummy.d.ts +0 -9
  157. package/modules/dummy.js +0 -56
  158. package/modules/telegram.d.ts +0 -87
  159. package/modules/telegram.js +0 -358
  160. package/utils/callback.query.utils.d.ts +0 -5
  161. package/utils/callback.query.utils.js +0 -26
  162. package/utils/command.utils.d.ts +0 -7
  163. package/utils/command.utils.js +0 -29
  164. package/utils/context.utils.d.ts +0 -13
  165. package/utils/context.utils.js +0 -41
  166. package/utils/html.utils.d.ts +0 -5
  167. package/utils/html.utils.js +0 -20
  168. package/utils/inline.keyboard.utils.d.ts +0 -4
  169. package/utils/inline.keyboard.utils.js +0 -26
  170. package/utils/reply.to.message.utils.d.ts +0 -6
  171. package/utils/reply.to.message.utils.js +0 -27
  172. package/utils/start.utils.d.ts +0 -7
  173. package/utils/start.utils.js +0 -32
package/childs/unban.d.ts DELETED
@@ -1,5 +0,0 @@
1
- import { FetchError } from '@aracna/core';
2
- import { Child } from '../modules/child';
3
- export declare class Unban extends Child {
4
- chatMember(chatID: number, userID: number): Promise<boolean | FetchError>;
5
- }
package/childs/unban.js DELETED
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Unban = void 0;
4
- const child_1 = require("../modules/child");
5
- class Unban extends child_1.Child {
6
- async chatMember(chatID, userID) {
7
- return this.telegram.api.post('unbanChatMember', { chat_id: chatID, user_id: userID });
8
- }
9
- }
10
- exports.Unban = Unban;
package/childs/unpin.d.ts DELETED
@@ -1,5 +0,0 @@
1
- import { FetchError } from '@aracna/core';
2
- import { Child } from '../modules/child';
3
- export declare class Unpin extends Child {
4
- chatMessage(chatID: number): Promise<boolean | FetchError>;
5
- }
package/childs/unpin.js DELETED
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Unpin = void 0;
4
- const child_1 = require("../modules/child");
5
- class Unpin extends child_1.Child {
6
- async chatMessage(chatID) {
7
- return this.telegram.api.post('unpinChatMessage', { chat_id: chatID });
8
- }
9
- }
10
- exports.Unpin = Unpin;
@@ -1,7 +0,0 @@
1
- import { FetchError } from '@aracna/core';
2
- import { File } from '@aracna/telegram-bot-types';
3
- import { InputFile } from '../definitions/types';
4
- import { Child } from '../modules/child';
5
- export declare class Upload extends Child {
6
- stickerFile(userID: number, format: string, sticker: InputFile): Promise<File | FetchError>;
7
- }
package/childs/upload.js DELETED
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Upload = void 0;
4
- const child_1 = require("../modules/child");
5
- class Upload extends child_1.Child {
6
- async stickerFile(userID, format, sticker) {
7
- return this.telegram.api.post('uploadStickerFile', { sticker: sticker, sticker_format: format, user_id: userID });
8
- }
9
- }
10
- exports.Upload = Upload;
@@ -1,8 +0,0 @@
1
- import { FetchError } from '@aracna/core';
2
- import { SetWebhook } from '@aracna/telegram-bot-types';
3
- import { Child } from '../modules/child';
4
- export declare class Webhook extends Child {
5
- delete(): Promise<boolean | FetchError>;
6
- set(route?: string, parameters?: Partial<SetWebhook>): Promise<boolean | FetchError>;
7
- url(route: string): string;
8
- }
package/childs/webhook.js DELETED
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Webhook = void 0;
4
- const enums_1 = require("../definitions/enums");
5
- const child_1 = require("../modules/child");
6
- class Webhook extends child_1.Child {
7
- async delete() {
8
- return this.telegram.api.post('deleteWebhook');
9
- }
10
- async set(route = '', parameters) {
11
- return this.telegram.api.post('setWebhook', {
12
- allowed_updates: Object.values(enums_1.UpdateType).map((v) => v.toLowerCase()),
13
- max_connections: 100,
14
- url: this.url(route),
15
- ...parameters
16
- });
17
- }
18
- url(route) {
19
- return 'https://' + this.telegram.hostname + ':' + this.telegram.port + '/' + route + 'bot' + this.telegram.token;
20
- }
21
- }
22
- exports.Webhook = Webhook;
@@ -1,2 +0,0 @@
1
- import { Logger } from '@aracna/core';
2
- export declare const ModuleLogger: Logger;
package/modules/api.d.ts DELETED
@@ -1,5 +0,0 @@
1
- import { FetchError, RequestMethod, RestAPI, RestApiConfig } from '@aracna/core';
2
- export declare class API extends RestAPI {
3
- post<V, W, X = undefined>(path: string, body?: W, config?: RestApiConfig<void>): Promise<V | FetchError<X>>;
4
- transformBody<V>(method: RequestMethod, path: string, body: V, config: RestApiConfig<void>): Promise<FormData>;
5
- }
package/modules/api.js DELETED
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.API = void 0;
4
- const core_1 = require("@aracna/core");
5
- class API extends core_1.RestAPI {
6
- async post(path, body, config) {
7
- let response;
8
- response = await this.post(path, body, config);
9
- if (response instanceof Error)
10
- return response;
11
- return response.data.result;
12
- }
13
- async transformBody(method, path, body, config) {
14
- switch (method) {
15
- case 'GET':
16
- case 'POST':
17
- await (0, core_1.useNodeFetch)(await (0, core_1.importNodeFetch)());
18
- return (0, core_1.serializeFormData)(typeof body === 'object' ? body : {});
19
- default:
20
- return (0, core_1.serializeFormData)({});
21
- }
22
- }
23
- }
24
- exports.API = API;
@@ -1,4 +0,0 @@
1
- import { ButtonBuilder } from '../builders/button.builder';
2
- export declare class Builder {
3
- button: ButtonBuilder;
4
- }
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Builder = void 0;
4
- const button_builder_1 = require("../builders/button.builder");
5
- class Builder {
6
- button = new button_builder_1.ButtonBuilder();
7
- }
8
- exports.Builder = Builder;
@@ -1,5 +0,0 @@
1
- import type { Telegram } from './telegram';
2
- export declare class Child {
3
- protected telegram: Telegram;
4
- constructor(telegram: Telegram);
5
- }
package/modules/child.js DELETED
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Child = void 0;
4
- class Child {
5
- telegram;
6
- constructor(telegram) {
7
- this.telegram = telegram;
8
- }
9
- }
10
- exports.Child = Child;
@@ -1,8 +0,0 @@
1
- import { ConfigurationAPI, ConfigurationDefault, ConfigurationHandler } from '../definitions/interfaces';
2
- declare class ConfigurationBuilder {
3
- api: ConfigurationAPI;
4
- default: ConfigurationDefault;
5
- handler: ConfigurationHandler;
6
- }
7
- export declare const Configuration: ConfigurationBuilder;
8
- export {};
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Configuration = void 0;
4
- const dummy_1 = require("./dummy");
5
- class ConfigurationBuilder {
6
- api = dummy_1.Dummy.configurationAPI;
7
- default = dummy_1.Dummy.configurationDefault;
8
- handler = dummy_1.Dummy.configurationHandler;
9
- }
10
- exports.Configuration = new ConfigurationBuilder();
@@ -1,9 +0,0 @@
1
- import { CallbackQueryBody, ConfigurationAPI, ConfigurationDefault, ConfigurationHandler, Handler, MessageBody } from '../definitions/interfaces';
2
- export declare class Dummy {
3
- static get callbackQueryBody(): CallbackQueryBody;
4
- static get configurationAPI(): ConfigurationAPI;
5
- static get configurationDefault(): ConfigurationDefault;
6
- static get configurationHandler(): ConfigurationHandler;
7
- static get handler(): Handler<any, any>;
8
- static get messageBody(): MessageBody;
9
- }
package/modules/dummy.js DELETED
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Dummy = void 0;
4
- const enums_1 = require("../definitions/enums");
5
- class Dummy {
6
- static get callbackQueryBody() {
7
- return {
8
- c: undefined,
9
- d: 0,
10
- t: ''
11
- };
12
- }
13
- static get configurationAPI() {
14
- return {
15
- post: {
16
- callback: {
17
- success: () => null
18
- }
19
- }
20
- };
21
- }
22
- static get configurationDefault() {
23
- return {
24
- buttons: {
25
- callback: async () => [],
26
- game: async () => [],
27
- login: async () => [],
28
- pay: async () => [],
29
- query: async () => [],
30
- queryCurrentChat: async () => [],
31
- text: async () => [],
32
- url: async () => []
33
- }
34
- };
35
- }
36
- static get configurationHandler() {
37
- return { send: { buttons: { empty: () => new Error() } } };
38
- }
39
- static get handler() {
40
- return {
41
- id: '',
42
- key: '',
43
- middleware: () => null,
44
- options: {
45
- deleteOnCallbackQuery: true,
46
- deleteOnMessageStart: true,
47
- deleteOnReply: true
48
- },
49
- type: enums_1.UpdateType.MESSAGE
50
- };
51
- }
52
- static get messageBody() {
53
- return { chatID: undefined, data: undefined, type: '' };
54
- }
55
- }
56
- exports.Dummy = Dummy;
@@ -1,87 +0,0 @@
1
- import { BotCommand, CallbackQuery, ChatJoinRequest, ChatMemberUpdated, ChosenInlineResult, InlineQuery, Message, Poll, PollAnswer, PreCheckoutQuery, ShippingQuery, Update } from '@aracna/telegram-bot-types';
2
- import { Add } from '../childs/add';
3
- import { Answer } from '../childs/answer';
4
- import { Ban } from '../childs/ban';
5
- import { Create } from '../childs/create';
6
- import { Delete } from '../childs/delete';
7
- import { Download } from '../childs/download';
8
- import { Edit } from '../childs/edit';
9
- import { Export } from '../childs/export';
10
- import { Forward } from '../childs/forward';
11
- import { Get } from '../childs/get';
12
- import { Leave } from '../childs/leave';
13
- import { Pin } from '../childs/pin';
14
- import { Polling } from '../childs/polling';
15
- import { Promote } from '../childs/promote';
16
- import { Restrict } from '../childs/restrict';
17
- import { Send } from '../childs/send';
18
- import { Set } from '../childs/set';
19
- import { Stop } from '../childs/stop';
20
- import { Unban } from '../childs/unban';
21
- import { Unpin } from '../childs/unpin';
22
- import { Upload } from '../childs/upload';
23
- import { Webhook } from '../childs/webhook';
24
- import { UpdateType } from '../definitions/enums';
25
- import { Handler, HandlerOptions, TelegramName } from '../definitions/interfaces';
26
- import { HandlerMiddleware } from '../definitions/types';
27
- import { API } from './api';
28
- import { Builder } from './builder';
29
- export declare class Telegram {
30
- /** INTERNAL */
31
- api: API;
32
- handlers: Handler[];
33
- hostname: string;
34
- id: number;
35
- name: TelegramName;
36
- port: number;
37
- token: string;
38
- username: string;
39
- /** BUILDERS */
40
- builder: Builder;
41
- /** CHILDS */
42
- add: Add;
43
- answer: Answer;
44
- create: Create;
45
- delete: Delete;
46
- download: Download;
47
- edit: Edit;
48
- export: Export;
49
- forward: Forward;
50
- get: Get;
51
- ban: Ban;
52
- leave: Leave;
53
- pin: Pin;
54
- polling: Polling;
55
- promote: Promote;
56
- restrict: Restrict;
57
- send: Send;
58
- set: Set;
59
- stop: Stop;
60
- unban: Unban;
61
- unpin: Unpin;
62
- upload: Upload;
63
- webhook: Webhook;
64
- constructor(token: string, hostname?: string, port?: number);
65
- on<T extends UpdateType, U extends HandlerOptions>(type: T, middleware: HandlerMiddleware<T>, key?: string, description?: string, options?: U): void;
66
- handle(update: Update): void;
67
- handleCallbackQuery(query: CallbackQuery): Handler;
68
- handleChannelPost(post: Message): Handler;
69
- handleChatJoinRequest(request: ChatJoinRequest): Handler;
70
- handleChatMember(member: ChatMemberUpdated): Handler;
71
- handleChosenInlineResult(result: ChosenInlineResult): Handler;
72
- handleDocument(document: Message): Handler;
73
- handleEditedChannelPost(post: Message): Handler;
74
- handleEditedMessage(message: Message): Handler;
75
- handleInlineQuery(query: InlineQuery): Handler;
76
- handleMessage(message: Message): Handler;
77
- handleMyChatMember(member: ChatMemberUpdated): Handler;
78
- handlePoll(poll: Poll): Handler;
79
- handlePollAnswer(answer: PollAnswer): Handler;
80
- handlePreCheckoutQuery(query: PreCheckoutQuery): Handler;
81
- handleReplyToMessage(reply: Message): Handler;
82
- handleShippingQuery(query: ShippingQuery): Handler;
83
- handleStart(start: Message): Handler;
84
- private findMatchingHandler;
85
- get commands(): BotCommand[];
86
- private get handlerIDs();
87
- }