using Knoks.Api.Client; using Newtonsoft.Json; using System; using System.Collections; using System.Collections.Generic; using System.Net.Http; using System.Threading.Tasks; namespace Knoks.Api.Client.Invoker { public static class ApiInvoker { public static async Task> InvokeCreateUser(this ApiClient apiClient, CreateUserArgs args) { return await apiClient.Request($"General/NewUser", args); } public static async Task> InvokeSignInUser(this ApiClient apiClient, string username, string password) { return await apiClient.AuthorizeApiUser(username, password); } //public static async Task> InvokeGetUserAccounts(this ApiClient apiClient) //{ // return await apiClient.Request($"Account/UserAccounts"); //} public static async Task> InvokeCreateOperator(this ApiClient apiClient, CreateOperatorArgs args) { return await apiClient.Request("General/Operator", args); } public static async Task> InvokeFreeTokensCreditTransaction(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/FreeTokensCredit", args); } public static async Task> InvokeDeposit(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/Deposit", args); } public static async Task> InvokeWithdraw(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/Withdraw", args); } public static async Task> InvokePublishKnok(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/PublishKnok", args); } public static async Task> InvokeKnokerWinsToken(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/KnokerWinsToken", args); } public static async Task> InvokePlatformWinsToken(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/PlatformWinsToken", args); } public static async Task> InvokeUserBuyExposure(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/UserBuyExposure", args); } public static async Task> InvokeUserBuyKnok(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/UserBuyKnok", args); } public static async Task> InvokeUserRefundToken(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/UserRefundToken", args); } public static async Task> InvokeUserBuySideBet(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/UserBuySideBet", args); } public static async Task> InvokeUserWinsSideBet(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/UserWinsSideBet", args); } public static async Task> InvokePlatformLooseSideBet(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/PlatformLooseSideBet", args); } public static async Task> InvokeUserReceiveToken(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/UserReceiveToken", args); } public static async Task> InvokeUserUpgradeToGold(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/UserUpgradeToGold", args); } public static async Task> InvokeAffiliateCommision(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/AffiliateCommision", args); } public static async Task> InvokeFreeTokensReturn(this ApiClient apiClient, AddAccountTransactionArgs args) { return await apiClient.Request("BackOffice/FreeTokensReturn", args); } //public static async Task> InvokeSignInOperator(this ApiClient apiClient, string operatorName, string operatorPassword) //{ // return await apiClient.AuthorizeApiOperate(operatorName, operatorPassword); //} public static async Task> InvokeUserAccounts(this ApiClient apiClient) { return await apiClient.Request("Account/UserAccounts"); } public static async Task>> InvokeCountries(this ApiClient apiClient, string countryCode2 = null) { return await apiClient.Request>($"General/Countries/{countryCode2}"); } public static async Task> InvokeTokenRefresh(this ApiClient apiClient) { return await apiClient.Request("Token/Refresh"); } public static async Task>> InvokeTokenHeartbit(this ApiClient apiClient) { return await apiClient.Request>("Token/Heartbit"); } } }