tgbotapi/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/ChosenInlineResult/RawChosenInlineResult.kt

26 lines
965 B
Kotlin

package com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.ChosenInlineResult
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.ChosenInlineResult
import kotlinx.serialization.*
@Serializable
internal data class RawChosenInlineResult(
@SerialName(resultIdField)
val resultId: InlineQueryIdentifier, //chosen temporary, can be changed
@SerialName(fromField)
val user: User,
@SerialName(queryField)
val query: String,
@SerialName(locationField)
val location: Location? = null,
@SerialName(inlineMessageIdField)
val inlineMessageId: InlineMessageIdentifier? = null
) {
val asChosenInlineResult: ChosenInlineResult by lazy {
location ?.let {
LocationChosenInlineResult(resultId, user, location, inlineMessageId, query)
} ?: BaseChosenInlineResult(resultId, user, inlineMessageId, query)
}
}