tgbotapi/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/payments/ShippingOption.kt

24 lines
671 B
Kotlin

package dev.inmo.tgbotapi.types.payments
import dev.inmo.tgbotapi.types.*
import dev.inmo.tgbotapi.types.payments.abstracts.Priced
import dev.inmo.tgbotapi.utils.RiskFeature
import kotlinx.serialization.*
import kotlinx.serialization.builtins.ListSerializer
@Serializable
data class ShippingOption(
@SerialName(idField)
val id: ShippingOptionId,
@SerialName(titleField)
val title: String,
@Serializable(LabeledPricesSerializer::class)
@SerialName(pricesField)
override val prices: List<LabeledPrice>
) : Priced
@RiskFeature
object LabeledPricesSerializer : KSerializer<List<LabeledPrice>> by ListSerializer(
LabeledPrice.serializer()
)