/** * Telegram Bot API constants * @module helpers/constants */ /** * Dice emoji constants for sendDice method * These are the only valid emoji values accepted by Telegram Bot API * * @see https://core.telegram.org/bots/api#senddice * * @example * ```typescript * await bot.sendDice({ * chat_id: 123, * emoji: DiceEmoji.BASKETBALL * }); * ``` */ export declare const DiceEmoji: { /** 🎲 Regular dice (1-6) */ readonly DICE: "🎲"; /** 🎯 Darts (1-6) */ readonly DARTS: "🎯"; /** 🏀 Basketball (1-5) */ readonly BASKETBALL: "🏀"; /** ⚽ Football/Soccer (1-5) */ readonly FOOTBALL: "⚽"; /** 🎰 Slot machine (1-64 combinations) */ readonly SLOT_MACHINE: "🎰"; /** 🎳 Bowling (1-6) */ readonly BOWLING: "🎳"; }; export type DiceEmoji = typeof DiceEmoji[keyof typeof DiceEmoji]; /** * Media type constants matching Telegram Message object fields * Use these to access media in Message objects * * @see https://core.telegram.org/bots/api#message * * @example * ```typescript * const fileId = message[MediaType.PHOTO]?.[0]?.file_id; * ``` */ export declare const MediaType: { /** Photo message - Message.photo */ readonly PHOTO: "photo"; /** Video message - Message.video */ readonly VIDEO: "video"; /** Audio message - Message.audio */ readonly AUDIO: "audio"; /** Voice message - Message.voice */ readonly VOICE: "voice"; /** Document message - Message.document */ readonly DOCUMENT: "document"; /** Sticker message - Message.sticker */ readonly STICKER: "sticker"; /** Video note message - Message.video_note */ readonly VIDEO_NOTE: "video_note"; /** Animation/GIF message - Message.animation */ readonly ANIMATION: "animation"; }; export type MediaType = typeof MediaType[keyof typeof MediaType]; /** * Parse mode constants for message formatting * * @see https://core.telegram.org/bots/api#formatting-options * * @example * ```typescript * await bot.sendMessage({ * chat_id: 123, * text: 'Bold text', * parse_mode: ParseMode.HTML * }); * ``` */ export declare const ParseMode: { /** HTML formatting */ readonly HTML: "HTML"; /** Legacy Markdown formatting */ readonly MARKDOWN: "Markdown"; /** MarkdownV2 formatting (recommended) */ readonly MARKDOWN_V2: "MarkdownV2"; }; export type ParseMode = typeof ParseMode[keyof typeof ParseMode]; /** * Chat type constants * * @see https://core.telegram.org/bots/api#chat * * @example * ```typescript * if (message.chat.type === ChatType.PRIVATE) { * // Handle private chat * } * ``` */ export declare const ChatType: { /** Private chat with user */ readonly PRIVATE: "private"; /** Group chat */ readonly GROUP: "group"; /** Supergroup chat */ readonly SUPERGROUP: "supergroup"; /** Channel */ readonly CHANNEL: "channel"; }; export type ChatType = typeof ChatType[keyof typeof ChatType]; /** @deprecated Use DiceEmoji instead */ export declare const DiceTypes: { /** 🎲 Regular dice (1-6) */ readonly DICE: "🎲"; /** 🎯 Darts (1-6) */ readonly DARTS: "🎯"; /** 🏀 Basketball (1-5) */ readonly BASKETBALL: "🏀"; /** ⚽ Football/Soccer (1-5) */ readonly FOOTBALL: "⚽"; /** 🎰 Slot machine (1-64 combinations) */ readonly SLOT_MACHINE: "🎰"; /** 🎳 Bowling (1-6) */ readonly BOWLING: "🎳"; }; /** @deprecated Use MediaType instead */ export declare const MediaTypes: { /** Photo message - Message.photo */ readonly PHOTO: "photo"; /** Video message - Message.video */ readonly VIDEO: "video"; /** Audio message - Message.audio */ readonly AUDIO: "audio"; /** Voice message - Message.voice */ readonly VOICE: "voice"; /** Document message - Message.document */ readonly DOCUMENT: "document"; /** Sticker message - Message.sticker */ readonly STICKER: "sticker"; /** Video note message - Message.video_note */ readonly VIDEO_NOTE: "video_note"; /** Animation/GIF message - Message.animation */ readonly ANIMATION: "animation"; };