61 lines
2.1 KiB
JavaScript
61 lines
2.1 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.API_CONSTANTS = void 0;
|
|
const bot_js_1 = require("../bot.js");
|
|
const ALL_UPDATE_TYPES = [...bot_js_1.DEFAULT_UPDATE_TYPES, "chat_member"];
|
|
const ALL_CHAT_PERMISSIONS = {
|
|
can_send_messages: true,
|
|
can_send_audios: true,
|
|
can_send_documents: true,
|
|
can_send_photos: true,
|
|
can_send_videos: true,
|
|
can_send_video_notes: true,
|
|
can_send_voice_notes: true,
|
|
can_send_polls: true,
|
|
can_send_other_messages: true,
|
|
can_add_web_page_previews: true,
|
|
can_change_info: true,
|
|
can_invite_users: true,
|
|
can_pin_messages: true,
|
|
can_manage_topics: true,
|
|
};
|
|
/**
|
|
* Contains lists of constants which are useful when working with the Bot API.
|
|
*/
|
|
exports.API_CONSTANTS = Object.freeze({
|
|
/**
|
|
* List of all available update types. Useful if you want to receive all
|
|
* updates from the Bot API, rather than just those that are delivered by
|
|
* default.
|
|
*
|
|
* The main use case for this is when you want to receive `chat_member`
|
|
* updates, as they need to be enabled first. Use it like so:
|
|
*
|
|
* ```ts
|
|
* // Built-in polling:
|
|
* bot.start({ allowed_updates: ALL_UPDATE_TYPES });
|
|
* // grammY runner:
|
|
* run(bot, { runner: { fetch: { allowed_updates: ALL_UPDATE_TYPES } } });
|
|
* // Webhooks:
|
|
* await bot.api.setWebhook(url, { allowed_updates: ALL_UPDATE_TYPES });
|
|
* ```
|
|
*/
|
|
ALL_UPDATE_TYPES,
|
|
/**
|
|
* An object containing all available chat permissions. Useful if you want
|
|
* to lift restrictions from a user, as this action requires you to pass
|
|
* `true` for all permissions. Use it like so:
|
|
*
|
|
* ```ts
|
|
* // On `Bot`:
|
|
* await bot.api.restrictChatMember(chat_id, user_id, ALL_CHAT_PERMISSIONS);
|
|
* // On `Api`:
|
|
* await ctx.api.restrictChatMember(chat_id, user_id, ALL_CHAT_PERMISSIONS);
|
|
* // On `Context`:
|
|
* await ctx.restrictChatMember(user_id, ALL_CHAT_PERMISSIONS);
|
|
* await ctx.restrictAuthor(ALL_CHAT_PERMISSIONS);
|
|
* ```
|
|
*/
|
|
ALL_CHAT_PERMISSIONS,
|
|
});
|