All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.stormbit.vksdk.objects.models.ProfileInfo.kt Maven / Gradle / Ivy

The newest version!
package com.github.stormbit.vksdk.objects.models

import com.github.stormbit.vksdk.utils.EnumIntSerializer
import com.github.stormbit.vksdk.utils.IntEnum
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable

@Serializable
data class ProfileInfo(
    @SerialName("id") val id: Int,
    @SerialName("bdate") val bdate: String,
    @SerialName("bdate_visibility") val bdateVisibility: BDateVisibility,
    @SerialName("city") val city: Community.City,
    @SerialName("country") val country: Community.Country,
    @SerialName("first_name") val firstName: String,
    @SerialName("home_town") val homeTown: String,
    @SerialName("last_name") val lastName: String,
    @SerialName("maiden_name") val maidenName: String? = null,
    @SerialName("phone") val phone: String,
    @SerialName("relation") val relation: User.RelationStatus,
    @SerialName("relation_partner") val relationPartner: User.RelationPartner? = null,
    @SerialName("relation_requests") val relationRequests: List? = null,
    @SerialName("screen_name") val screenName: String,
    @SerialName("sex") val sex: User.Sex,
    @SerialName("status") val status: String
) {
    @Serializable(with = BDateVisibility.Companion::class)
    enum class BDateVisibility(override val value: Int) : IntEnum {
        SHOW_BDATE(1),
        ONLY_MONTH_AND_DAY(2),
        DONT_SHOW(0);

        companion object : EnumIntSerializer(BDateVisibility::class, values())
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy