26 lines
965 B
Kotlin
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)
|
|
}
|
|
}
|