package com.adealink.weparty.module.gift.viewmodel

import androidx.lifecycle.LiveData
import com.adealink.frame.base.Rlt
import com.adealink.frame.mvvm.livedata.ExtLiveData
import com.adealink.weparty.module.gift.data.GiftInfo


interface IGiftViewModel {

    val sendGiftRltLD: ExtLiveData<Rlt<Any>>
    val giftsLD: ExtLiveData<List<GiftInfo>>

    /**
     * 拉取礼物
     */
    fun getGifts(roomId: String, forceNet: Boolean = false)

    /**
     * 送礼
     * @param useCoinIfLess 如果钻石不足,则使用金币结算
     */
    fun sendGift(toUids: Set<String>, gift: GiftInfo, count: Int, useCoinIfLess: Boolean = true): LiveData<Rlt<Any>>

}