package com.gh.gamecenter.core.provider

import android.content.Context
import android.os.ParcelFileDescriptor
import androidx.appcompat.app.AppCompatActivity
import com.alibaba.android.arouter.facade.template.IProvider
import java.util.HashSet

interface IVpnProvider : IProvider {

    fun isVpnPermissionGranted(activity: AppCompatActivity): Boolean

    fun startVpn(
        activity: AppCompatActivity,
        packageNameSet: HashSet<String>,
        vpnStartedCallback: ((Boolean) -> Unit),
        pfdCreatedCallback: ((ParcelFileDescriptor?) -> Unit)
    )

    fun stopVpn(context: Context, pfd: ParcelFileDescriptor?)

}