suspend fun TelegramBot.send(chatId: ChatIdentifier, animation: AnimationFile, text: String? = null, parseMode: ParseMode? = null, duration: Long? = null, width: Int? = null, height: Int? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<AnimationContent> suspend fun TelegramBot.send(chat: Chat, animation: AnimationFile, text: String? = null, parseMode: ParseMode? = null, duration: Long? = null, width: Int? = null, height: Int? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<AnimationContent> suspend fun TelegramBot.send(chatId: ChatIdentifier, animation: AnimationFile, entities: TextSourcesList, duration: Long? = null, width: Int? = null, height: Int? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<AnimationContent> suspend fun TelegramBot.send(chat: Chat, animation: AnimationFile, entities: TextSourcesList, duration: Long? = null, width: Int? = null, height: Int? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<AnimationContent> suspend fun TelegramBot.send(chatId: ChatIdentifier, audio: AudioFile, text: String? = null, parseMode: ParseMode? = null, title: String? = audio.title, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<AudioContent> suspend fun TelegramBot.send(chat: Chat, audio: AudioFile, text: String? = null, parseMode: ParseMode? = null, title: String? = audio.title, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<AudioContent> suspend fun TelegramBot.send(chatId: ChatIdentifier, document: DocumentFile, text: String? = null, parseMode: ParseMode? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null, disableContentTypeDetection: Boolean? = null): ContentMessage<DocumentContent> suspend fun TelegramBot.send(chat: Chat, document: DocumentFile, text: String? = null, parseMode: ParseMode? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null, disableContentTypeDetection: Boolean? = null): ContentMessage<DocumentContent> suspend fun TelegramBot.send(chatId: IdChatIdentifier, title: String, description: String, payload: String, providerToken: String, currency: Currency, prices: List<LabeledPrice>, maxTipAmount: Int? = null, suggestedTipAmounts: List<Int>? = null, startParameter: StartParameter? = null, providerData: String? = null, requireName: Boolean = false, requirePhoneNumber: Boolean = false, requireEmail: Boolean = false, requireShippingAddress: Boolean = false, shouldSendPhoneNumberToProvider: Boolean = false, shouldSendEmailToProvider: Boolean = false, priceDependOnShipAddress: Boolean = false, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: InlineKeyboardMarkup? = null): ContentMessage<InvoiceContent> suspend fun TelegramBot.send(user: CommonUser, title: String, description: String, payload: String, providerToken: String, currency: Currency, prices: List<LabeledPrice>, maxTipAmount: Int? = null, suggestedTipAmounts: List<Int>? = null, startParameter: StartParameter? = null, providerData: String? = null, requireName: Boolean = false, requirePhoneNumber: Boolean = false, requireEmail: Boolean = false, requireShippingAddress: Boolean = false, shouldSendPhoneNumberToProvider: Boolean = false, shouldSendEmailToProvider: Boolean = false, priceDependOnShipAddress: Boolean = false, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: InlineKeyboardMarkup? = null): ContentMessage<InvoiceContent> suspend fun TelegramBot.send(chatId: ChatIdentifier, question: String, options: List<String>, isAnonymous: Boolean = true, isClosed: Boolean = false, allowMultipleAnswers: Boolean = false, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> suspend fun TelegramBot.send(chatId: ChatIdentifier, poll: RegularPoll, isClosed: Boolean = false, question: String = poll.question, options: List<String> = poll.options.map { it.text }, isAnonymous: Boolean = poll.isAnonymous, allowMultipleAnswers: Boolean = poll.allowMultipleAnswers, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> suspend fun TelegramBot.send(chat: Chat, question: String, options: List<String>, isAnonymous: Boolean = true, isClosed: Boolean = false, allowMultipleAnswers: Boolean = false, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> suspend fun TelegramBot.send(chat: Chat, poll: RegularPoll, isClosed: Boolean = false, question: String = poll.question, options: List<String> = poll.options.map { it.text }, isAnonymous: Boolean = poll.isAnonymous, allowMultipleAnswers: Boolean = poll.allowMultipleAnswers, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> suspend fun TelegramBot.send(chatId: ChatIdentifier, question: String, options: List<String>, correctOptionId: Int, isAnonymous: Boolean = true, isClosed: Boolean = false, explanation: String? = null, parseMode: ParseMode? = null, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> suspend fun TelegramBot.send(chat: Chat, question: String, options: List<String>, correctOptionId: Int, isAnonymous: Boolean = true, isClosed: Boolean = false, explanation: String? = null, parseMode: ParseMode? = null, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> suspend fun TelegramBot.send(chatId: ChatIdentifier, isClosed: Boolean = false, quizPoll: QuizPoll, question: String = quizPoll.question, options: List<String> = quizPoll.options.map { it.text }, correctOptionId: Int = quizPoll.correctOptionId ?: error("Correct option ID must be provided by income QuizPoll or by developer"), isAnonymous: Boolean = quizPoll.isAnonymous, explanation: String? = null, parseMode: ParseMode? = null, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> suspend fun TelegramBot.send(chat: Chat, isClosed: Boolean = false, quizPoll: QuizPoll, question: String = quizPoll.question, options: List<String> = quizPoll.options.map { it.text }, correctOptionId: Int = quizPoll.correctOptionId ?: error("Correct option ID must be provided by income QuizPoll or by developer"), isAnonymous: Boolean = quizPoll.isAnonymous, explanation: String? = null, parseMode: ParseMode? = null, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> inline suspend fun TelegramBot.send(chatId: ChatIdentifier, question: String, options: List<String>, correctOptionId: Int, isAnonymous: Boolean = true, isClosed: Boolean = false, entities: TextSourcesList, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> inline suspend fun TelegramBot.send(chat: Chat, question: String, options: List<String>, correctOptionId: Int, isAnonymous: Boolean = true, isClosed: Boolean = false, entities: TextSourcesList, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> inline suspend fun TelegramBot.send(chatId: ChatIdentifier, isClosed: Boolean = false, quizPoll: QuizPoll, question: String = quizPoll.question, options: List<String> = quizPoll.options.map { it.text }, correctOptionId: Int = quizPoll.correctOptionId ?: error("Correct option ID must be provided by income QuizPoll or by developer"), isAnonymous: Boolean = quizPoll.isAnonymous, entities: TextSourcesList, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> inline suspend fun TelegramBot.send(chat: Chat, isClosed: Boolean = false, quizPoll: QuizPoll, question: String = quizPoll.question, options: List<String> = quizPoll.options.map { it.text }, correctOptionId: Int = quizPoll.correctOptionId ?: error("Correct option ID must be provided by income QuizPoll or by developer"), isAnonymous: Boolean = quizPoll.isAnonymous, entities: TextSourcesList, closeInfo: ScheduledCloseInfo? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<PollContent> suspend fun TelegramBot.send(chatId: ChatIdentifier, latitude: Double, longitude: Double, livePeriod: Seconds, horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<LocationContent> suspend fun TelegramBot.send(chatId: ChatIdentifier, location: Location, livePeriod: Seconds, horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<LocationContent> suspend fun TelegramBot.send(chat: Chat, latitude: Double, longitude: Double, livePeriod: Seconds, horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<LocationContent> suspend fun TelegramBot.send(chat: Chat, location: Location, livePeriod: Seconds, horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<LocationContent> suspend fun TelegramBot.send(chatId: ChatIdentifier, latitude: Double, longitude: Double, title: String, address: String, foursquareId: FoursquareId? = null, foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<VenueContent> suspend fun TelegramBot.send(chat: Chat, latitude: Double, longitude: Double, title: String, address: String, foursquareId: FoursquareId? = null, foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<VenueContent> suspend fun TelegramBot.send(chatId: ChatIdentifier, location: StaticLocation, title: String, address: String, foursquareId: FoursquareId? = null, foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<VenueContent> suspend fun TelegramBot.send(chat: Chat, location: StaticLocation, title: String, address: String, foursquareId: FoursquareId? = null, foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: KeyboardMarkup? = null): ContentMessage<VenueContent>