package com.adealink.weparty.module.wallet

import androidx.fragment.app.FragmentManager
import androidx.lifecycle.ViewModelStoreOwner
import com.adealink.weparty.aab.IService
import com.adealink.weparty.module.wallet.data.Currency
import com.adealink.weparty.module.wallet.viewmodel.IWalletViewModel

interface IWalletService : IService<IWalletService> {

    fun init()

    fun getBalance(currency: Currency): Double

    fun fetchCurrency()

    fun queryAndHandleUnDealPurchases()

    fun getWalletViewModel(owner: ViewModelStoreOwner): IWalletViewModel?

    fun showRechargeDialog(fm: FragmentManager, currency: Currency)

}