import type { TelegramBotUser, TelegramChat, TelegramChatFullInfo, TelegramChatMember, TelegramMessage, TelegramReactionType, TelegramUpdate } from './types.js'; export interface SendMessageOptions { parse_mode?: 'HTML' | 'Markdown' | 'MarkdownV2'; disable_web_page_preview?: boolean; disable_notification?: boolean; protect_content?: boolean; reply_to_message_id?: number; message_thread_id?: number; } export interface GetUpdatesOptions { offset?: number; limit?: number; timeout?: number; allowed_updates?: string[]; } export interface EditMessageTextChat { chat_id: number | string; message_id: number; inline_message_id?: never; } export interface EditMessageTextInline { inline_message_id: string; chat_id?: never; message_id?: never; } export type EditMessageTextTarget = EditMessageTextChat | EditMessageTextInline; export type BotReactionType = { type: 'emoji'; emoji: string; }; export type ChatId = number | string; export declare class TelegramBotClient { private token; login(credentials?: { token: string; }): Promise; private ensureAuth; private buildUrl; private sleep; private isAbort; private throwApiError; private parseJsonOrRetry; private call; private requestJson; private callMultipart; getMe(): Promise; getChat(chatId: ChatId): Promise; getChatMember(chatId: ChatId, userId: number): Promise; getChatMemberCount(chatId: ChatId): Promise; sendMessage(chatId: ChatId, text: string, options?: SendMessageOptions): Promise; sendPhoto(chatId: ChatId, photo: string, options?: { caption?: string; parse_mode?: SendMessageOptions['parse_mode']; }): Promise; sendDocument(chatId: ChatId, filePath: string, options?: { caption?: string; parse_mode?: SendMessageOptions['parse_mode']; signal?: AbortSignal; }): Promise; forwardMessage(chatId: ChatId, fromChatId: ChatId, messageId: number, options?: { disable_notification?: boolean; protect_content?: boolean; message_thread_id?: number; }): Promise; editMessageText(target: EditMessageTextTarget, text: string, options?: SendMessageOptions): Promise; deleteMessage(chatId: ChatId, messageId: number): Promise; setMessageReaction(chatId: ChatId, messageId: number, reaction: BotReactionType[], options?: { is_big?: boolean; }): Promise; setMessageReactionRaw(chatId: ChatId, messageId: number, reaction: TelegramReactionType[], options?: { is_big?: boolean; }): Promise; getUpdates(options?: GetUpdatesOptions, signal?: AbortSignal): Promise; deleteWebhook(options?: { drop_pending_updates?: boolean; }): Promise; setWebhook(url: string, options?: Record): Promise; resolveChatId(chat: ChatId): Promise; formatChat(chat: TelegramChat): { id: number; type: string; name: string; }; } //# sourceMappingURL=client.d.ts.map