package com.adealink.weparty.wallet.detail.data

import com.adealink.frame.network.data.PageReq
import com.adealink.weparty.commonui.recycleview.diffutil.BaseListItemData
import com.google.gson.annotations.GsonNullable
import com.google.gson.annotations.SerializedName


data class DetailReq(
    @SerializedName("type") val currency: Int,
    @SerializedName("page") val page: PageReq
)

data class DetailRes(
    @SerializedName("list") val list: List<WalletDetailData>,
    @GsonNullable
    @SerializedName("next") val next: String? = null
)

data class WalletDetailData(
    @SerializedName("id") val id: String
)

sealed class BaseWalletDetail : BaseListItemData

data class CoinDetailItemData(
    val data: WalletDetailData
) : BaseWalletDetail()


data class DiamondDetailItemData(
    val data: WalletDetailData
) : BaseWalletDetail()

data class BeanDetailItemData(
    val data: WalletDetailData
) : BaseWalletDetail()