package com.gh.gamecenter.entity

import android.os.Parcelable
import com.gh.gamecenter.common.entity.LinkEntity
import com.gh.gamecenter.feature.entity.GameEntity
import com.google.gson.annotations.SerializedName
import kotlinx.parcelize.Parcelize


@Parcelize
class SpecialCatalogEntity(
    @SerializedName("_id")
    var id: String = "",
    var type: String = "",
    var link: SpecialLink = SpecialLink(),
    var image: Image = Image(),
    var data: List<Banner> = emptyList()
) : Parcelable {

    @Parcelize
    class Banner(
        @SerializedName("_id")
        var id: String = "",
        var title: String = "",
        var image: String = "",
        var link: LinkEntity = LinkEntity()
    ) : Parcelable

    @Parcelize
    class SpecialLink(
        @SerializedName("_id")
        var id: String = "",
        var data: List<GameEntity> = emptyList()
    ) : LinkEntity(), Parcelable

    @Parcelize
    class Image(
        var url: String = "",
        var title: String = ""
    ) : Parcelable
}