mirror of
https://github.com/InsanusMokrassar/TelegramBotAPI.git
synced 2024-06-01 23:45:25 +00:00
30 lines
978 B
Kotlin
30 lines
978 B
Kotlin
|
package dev.inmo.tgbotapi.requests
|
||
|
|
||
|
import dev.inmo.tgbotapi.abstracts.types.MessageAction
|
||
|
import dev.inmo.tgbotapi.abstracts.types.MessagesAction
|
||
|
import dev.inmo.tgbotapi.requests.abstracts.SimpleRequest
|
||
|
import dev.inmo.tgbotapi.types.*
|
||
|
import kotlinx.serialization.*
|
||
|
import kotlinx.serialization.builtins.serializer
|
||
|
|
||
|
@Serializable
|
||
|
data class DeleteMessages(
|
||
|
@SerialName(chatIdField)
|
||
|
override val chatId: ChatIdentifier,
|
||
|
@SerialName(messageIdsField)
|
||
|
override val messageIds: List<MessageId>
|
||
|
) : SimpleRequest<Boolean>, MessagesAction {
|
||
|
override fun method(): String = "deleteMessages"
|
||
|
|
||
|
init {
|
||
|
require(messageIds.size in deleteMessagesLimit) {
|
||
|
"Messages count for deleteMessages must be in $deleteMessagesLimit range"
|
||
|
}
|
||
|
}
|
||
|
|
||
|
override val resultDeserializer: DeserializationStrategy<Boolean>
|
||
|
get() = Boolean.serializer()
|
||
|
override val requestSerializer: SerializationStrategy<*>
|
||
|
get() = serializer()
|
||
|
}
|