package dev.inmo.tgbotapi.types.message.content.media import dev.inmo.tgbotapi.requests.abstracts.Request import dev.inmo.tgbotapi.requests.send.media.SendSticker import dev.inmo.tgbotapi.types.ChatIdentifier import dev.inmo.tgbotapi.types.InputMedia.InputMediaDocument import dev.inmo.tgbotapi.types.MessageIdentifier import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.files.Sticker import dev.inmo.tgbotapi.types.message.abstracts.ContentMessage import dev.inmo.tgbotapi.types.message.content.abstracts.MediaContent import kotlinx.serialization.Serializable @Serializable data class StickerContent( override val media: Sticker ) : MediaContent { override fun createResend( chatId: ChatIdentifier, disableNotification: Boolean, protectContent: Boolean, replyToMessageId: MessageIdentifier?, allowSendingWithoutReply: Boolean?, replyMarkup: KeyboardMarkup? ): Request> = SendSticker( chatId, media.fileId, disableNotification, protectContent, replyToMessageId, allowSendingWithoutReply, replyMarkup ) override fun asInputMedia(): InputMediaDocument = InputMediaDocument( media.fileId, null, thumb = media.thumb ?.fileId ) }