#if UNITY_ANDROID

namespace Stove.StoveSDK
{
    using System.Collections.Generic;
    using UnityEngine;

    public class AuthUIInterface
    {
        static AndroidJavaObject wrapper = new AndroidJavaObject("com.stove.unity.AuthUIWrapper");

        public static void Login(string identifier)
        {
            wrapper.CallStatic("login", identifier);
        }

        public static void SetProviders(string list)
        {
            wrapper.CallStatic("setProviders", list);
        }

        public static void HandleResult(string result, string identifier)
        {
            wrapper.CallStatic("handleResult", result, identifier);
        }

        public static void Agree(string identifier)
        {
            wrapper.CallStatic("agree", identifier);
        }

        public static void AgreeForRegister(string identifier)
        {
            wrapper.CallStatic("agreeForRegister", identifier);
        }

        internal static void AgreeForRegisterProvider(string className, string identifier)
        {
            wrapper.CallStatic("agreeForRegisterProvider", className, identifier);
        }

        public static void Withdraw(string identifier)
        {
            wrapper.CallStatic("withdraw", identifier);
        }

        public static void Link(string identifier)
        {
            wrapper.CallStatic("link", identifier);
        }

        public static void ManageAccount(string identifier)
        {
            wrapper.CallStatic("manageAccount", identifier);
        }

        public static void ManageDevices(string identifier)
        {
            wrapper.CallStatic("manageDevices", identifier);
        }

        public static void VerifyIdentification(string identifier, bool compareIdentifier)
        {
            wrapper.CallStatic("verifyIdentification", identifier, compareIdentifier);
        }

        public static void SwitchAccount(string identifier)
        {
            wrapper.CallStatic("switchAccount", identifier);
        }

        public static string GetVersion()
        {
            return wrapper.CallStatic<string>("getVersion");
        }

    }
}

#endif