package com.adealink.weparty.module.account

import androidx.fragment.app.FragmentManager
import com.adealink.weparty.aab.IService

interface IAccountService : IService<IAccountService> {
    val uid: String

    val token: String
    fun showLoginDialog(fm: FragmentManager?)

    fun logout(toLogin: Boolean? = true)

    fun onTokenExpire()

    fun isLogin(): Boolean

    fun registerListener(l: ILoginListener)

    fun unregisterListener(l: ILoginListener)

    fun deleteAccount()

    /**
     * 是否新注册用户
     */
    fun isNewRegister(): Boolean

    fun refreshToken()

    fun checkRemoteVirtualAppConfig()

}