1
0
mirror of https://github.com/InsanusMokrassar/TelegramBotAPI.git synced 2024-06-03 00:15:27 +00:00
tgbotapi/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/chat/modify/SetChatPhoto.kt

26 lines
1.0 KiB
Kotlin
Raw Normal View History

2020-10-04 11:06:30 +00:00
package dev.inmo.tgbotapi.requests.chat.modify
2018-12-26 08:07:24 +00:00
2022-05-01 16:13:40 +00:00
import dev.inmo.tgbotapi.abstracts.types.ChatRequest
2020-10-04 11:06:30 +00:00
import dev.inmo.tgbotapi.requests.abstracts.MultipartFile
import dev.inmo.tgbotapi.requests.abstracts.MultipartRequest
import dev.inmo.tgbotapi.types.*
import dev.inmo.tgbotapi.utils.toJson
2018-12-26 08:07:24 +00:00
import kotlinx.serialization.*
2020-03-22 07:37:01 +00:00
import kotlinx.serialization.builtins.serializer
2018-12-26 08:07:24 +00:00
import kotlinx.serialization.json.JsonObject
@Serializable
data class SetChatPhoto (
@SerialName(chatIdField)
override val chatId: ChatIdentifier,
val photo: MultipartFile = throw IllegalArgumentException("Unfortunately, this type of objects can't be parsed automatically")
): ChatRequest, MultipartRequest<Boolean> {
override fun method(): String = "setChatPhoto"
2019-12-02 08:35:37 +00:00
override val resultDeserializer: DeserializationStrategy<Boolean>
2020-03-22 07:37:01 +00:00
get() = Boolean.serializer()
2021-02-06 05:53:30 +00:00
@Transient
2018-12-26 08:07:24 +00:00
override val mediaMap: Map<String, MultipartFile> = mapOf(photoField to photo)
2021-02-06 05:53:30 +00:00
@Transient
2019-04-13 02:15:25 +00:00
override val paramsJson: JsonObject = toJson(serializer())
2018-12-26 08:07:24 +00:00
}