@betswirl/sdk-core
Version:
VanillaJS library for Betswirl protocol
1,645 lines (1,642 loc) • 1.21 MB
TypeScript
import * as viem from 'viem';
import { Chain, Hex, Abi, ContractFunctionName, Address, ContractEventName, Log, Hash, EncodeAbiParametersReturnType, erc20Abi, TransactionReceipt, PublicClient, Account, CallReturnType, WalletClient } from 'viem';
import * as abitype from 'abitype';
import * as viem_chains from 'viem/chains';
import { Chain as Chain$1 } from 'viem/chains';
import { EncodeAbiParametersReturnType as EncodeAbiParametersReturnType$1 } from 'viem/_types/utils/abi/encodeAbiParameters';
import { ApolloError, ApolloCache, DefaultOptions } from '@apollo/client/core/index.js';
import * as _apollo_client_core from '@apollo/client/core';
import * as viem__types_actions_siwe_verifySiweMessage from 'viem/_types/actions/siwe/verifySiweMessage';
import * as viem__types_utils_ccip from 'viem/_types/utils/ccip';
declare const bankAbi: readonly [{
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "treasuryAddress";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "teamWalletAddress";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "wrappedGasToken";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "maxCallGas_";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
readonly type: "constructor";
}, {
readonly inputs: readonly [];
readonly name: "AccessDenied";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidAddress";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidParam";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidValue";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "TokenExists";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "TokenHasPendingBets";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "TokenNotExists";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "TokenNotPaused";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint16";
readonly name: "splitSum";
readonly type: "uint16";
}];
readonly name: "WrongHouseEdgeSplit";
readonly type: "error";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "bool";
readonly name: "added";
readonly type: "bool";
}];
readonly name: "AddToken";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "address";
readonly name: "affiliate";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "affiliateAmount";
readonly type: "uint256";
}];
readonly name: "AffiliateRevenuesDistribution";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "bank";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "dividend";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "treasury";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "team";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "affiliate";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "address";
readonly name: "affiliateAddress";
readonly type: "address";
}];
readonly name: "AllocateHouseEdgeAmount";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "newBalance";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "amount";
readonly type: "uint256";
}];
readonly name: "CashIn";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "amount";
readonly type: "uint256";
}];
readonly name: "Deposit";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "newBalance";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "profit";
readonly type: "uint256";
}];
readonly name: "Payout";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "treasuryAmount";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "teamAmount";
readonly type: "uint256";
}];
readonly name: "ProtocolRevenuesDistribution";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}, {
readonly indexed: true;
readonly internalType: "bytes32";
readonly name: "previousAdminRole";
readonly type: "bytes32";
}, {
readonly indexed: true;
readonly internalType: "bytes32";
readonly name: "newAdminRole";
readonly type: "bytes32";
}];
readonly name: "RoleAdminChanged";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "account";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "sender";
readonly type: "address";
}];
readonly name: "RoleGranted";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "account";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "sender";
readonly type: "address";
}];
readonly name: "RoleRevoked";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "bool";
readonly name: "allowed";
readonly type: "bool";
}];
readonly name: "SetAllowedToken";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "previousBalanceRisk";
readonly type: "uint16";
}, {
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "balanceRisk";
readonly type: "uint16";
}];
readonly name: "SetBalanceRisk";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "previousMaxCallGas";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "maxCallGas";
readonly type: "uint256";
}];
readonly name: "SetMaxCallGas";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "bool";
readonly name: "paused";
readonly type: "bool";
}];
readonly name: "SetPausedToken";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "address";
readonly name: "previousTeamWallet";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "address";
readonly name: "teamWallet";
readonly type: "address";
}];
readonly name: "SetTeamWallet";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "bank";
readonly type: "uint16";
}, {
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "dividend";
readonly type: "uint16";
}, {
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "affiliate";
readonly type: "uint16";
}, {
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "treasury";
readonly type: "uint16";
}, {
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "team";
readonly type: "uint16";
}];
readonly name: "SetTokenHouseEdgeSplit";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "address";
readonly name: "previousBankrollProvider";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "address";
readonly name: "bankrollProvider";
readonly type: "address";
}];
readonly name: "TokenBankrollProviderTransferAccepted";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "address";
readonly name: "newBankrollProvider";
readonly type: "address";
}];
readonly name: "TokenBankrollProviderTransferStarted";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "amount";
readonly type: "uint256";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "to";
readonly type: "address";
}];
readonly name: "Withdraw";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "amount";
readonly type: "uint256";
}];
readonly name: "WithdrawDividend";
readonly type: "event";
}, {
readonly inputs: readonly [];
readonly name: "DEFAULT_ADMIN_ROLE";
readonly outputs: readonly [{
readonly internalType: "bytes32";
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "DIVIDEND_MANAGER_ROLE";
readonly outputs: readonly [{
readonly internalType: "bytes32";
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "GAME_ROLE";
readonly outputs: readonly [{
readonly internalType: "bytes32";
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "TREASURY_WALLET";
readonly outputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "WRAPPED";
readonly outputs: readonly [{
readonly internalType: "contract IWrapped";
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}];
readonly name: "acceptTokenBankrollProviderTransfer";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly internalType: "bool";
readonly name: "added";
readonly type: "bool";
}];
readonly name: "addToken";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly name: "affiliateAmounts";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "tokenAddress";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "amount";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "fees";
readonly type: "uint256";
}, {
readonly internalType: "address";
readonly name: "affiliate";
readonly type: "address";
}];
readonly name: "cashIn";
readonly outputs: readonly [];
readonly stateMutability: "payable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "amount";
readonly type: "uint256";
}];
readonly name: "deposit";
readonly outputs: readonly [];
readonly stateMutability: "payable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}];
readonly name: "getBalance";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}];
readonly name: "getBankrollProvider";
readonly outputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "tokenAddress";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "multiplier";
readonly type: "uint256";
}];
readonly name: "getBetRequirements";
readonly outputs: readonly [{
readonly internalType: "bool";
readonly name: "isAllowedToken";
readonly type: "bool";
}, {
readonly internalType: "uint256";
readonly name: "maxBetAmount";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "maxBetCount";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "multiplier";
readonly type: "uint256";
}];
readonly name: "getMaxBetAmount";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "multiplier";
readonly type: "uint256";
}];
readonly name: "getMaxBetCount";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}];
readonly name: "getRoleAdmin";
readonly outputs: readonly [{
readonly internalType: "bytes32";
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}, {
readonly internalType: "uint256";
readonly name: "index";
readonly type: "uint256";
}];
readonly name: "getRoleMember";
readonly outputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}];
readonly name: "getRoleMemberCount";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getTokens";
readonly outputs: readonly [{
readonly components: readonly [{
readonly internalType: "uint8";
readonly name: "decimals";
readonly type: "uint8";
}, {
readonly internalType: "address";
readonly name: "tokenAddress";
readonly type: "address";
}, {
readonly internalType: "string";
readonly name: "name";
readonly type: "string";
}, {
readonly internalType: "string";
readonly name: "symbol";
readonly type: "string";
}, {
readonly components: readonly [{
readonly internalType: "bool";
readonly name: "allowed";
readonly type: "bool";
}, {
readonly internalType: "bool";
readonly name: "paused";
readonly type: "bool";
}, {
readonly internalType: "uint16";
readonly name: "balanceRisk";
readonly type: "uint16";
}, {
readonly internalType: "address";
readonly name: "bankrollProvider";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "pendingBankrollProvider";
readonly type: "address";
}, {
readonly components: readonly [{
readonly internalType: "uint16";
readonly name: "bank";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "dividend";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "affiliate";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "treasury";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "team";
readonly type: "uint16";
}, {
readonly internalType: "uint256";
readonly name: "dividendAmount";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "affiliateAmount";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "treasuryAmount";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "teamAmount";
readonly type: "uint256";
}];
readonly internalType: "struct IBankAdmin.HouseEdgeSplitAndAllocation";
readonly name: "houseEdgeSplitAndAllocation";
readonly type: "tuple";
}];
readonly internalType: "struct IBankAdmin.Token";
readonly name: "token";
readonly type: "tuple";
}];
readonly internalType: "struct IBankAdmin.TokenMetadata[]";
readonly name: "";
readonly type: "tuple[]";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}, {
readonly internalType: "address";
readonly name: "account";
readonly type: "address";
}];
readonly name: "grantRole";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}, {
readonly internalType: "address";
readonly name: "account";
readonly type: "address";
}];
readonly name: "hasRole";
readonly outputs: readonly [{
readonly internalType: "bool";
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "maxCallGas";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "user";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "profit";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "fees";
readonly type: "uint256";
}, {
readonly internalType: "address";
readonly name: "affiliate";
readonly type: "address";
}];
readonly name: "payout";
readonly outputs: readonly [];
readonly stateMutability: "payable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}, {
readonly internalType: "address";
readonly name: "account";
readonly type: "address";
}];
readonly name: "renounceRole";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "role";
readonly type: "bytes32";
}, {
readonly internalType: "address";
readonly name: "account";
readonly type: "address";
}];
readonly name: "revokeRole";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly internalType: "bool";
readonly name: "allowed";
readonly type: "bool";
}];
readonly name: "setAllowedToken";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly internalType: "uint16";
readonly name: "balanceRisk";
readonly type: "uint16";
}];
readonly name: "setBalanceRisk";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly internalType: "uint16";
readonly name: "bank";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "dividend";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "affiliate";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "treasury";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "team";
readonly type: "uint16";
}];
readonly name: "setHouseEdgeSplit";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "maxCallGas_";
readonly type: "uint256";
}];
readonly name: "setMaxCallGas";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly internalType: "bool";
readonly name: "paused";
readonly type: "bool";
}];
readonly name: "setPausedToken";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "teamWallet_";
readonly type: "address";
}];
readonly name: "setTeamWallet";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "to";
readonly type: "address";
}];
readonly name: "setTokenBankrollProviderTransfer";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes4";
readonly name: "interfaceId";
readonly type: "bytes4";
}];
readonly name: "supportsInterface";
readonly outputs: readonly [{
readonly internalType: "bool";
readonly name: "";
readonly type: "bool";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "teamWallet";
readonly outputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly name: "tokens";
readonly outputs: readonly [{
readonly internalType: "bool";
readonly name: "allowed";
readonly type: "bool";
}, {
readonly internalType: "bool";
readonly name: "paused";
readonly type: "bool";
}, {
readonly internalType: "uint16";
readonly name: "balanceRisk";
readonly type: "uint16";
}, {
readonly internalType: "address";
readonly name: "bankrollProvider";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "pendingBankrollProvider";
readonly type: "address";
}, {
readonly components: readonly [{
readonly internalType: "uint16";
readonly name: "bank";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "dividend";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "affiliate";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "treasury";
readonly type: "uint16";
}, {
readonly internalType: "uint16";
readonly name: "team";
readonly type: "uint16";
}, {
readonly internalType: "uint256";
readonly name: "dividendAmount";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "affiliateAmount";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "treasuryAmount";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "teamAmount";
readonly type: "uint256";
}];
readonly internalType: "struct IBankAdmin.HouseEdgeSplitAndAllocation";
readonly name: "houseEdgeSplitAndAllocation";
readonly type: "tuple";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly internalType: "uint256";
readonly name: "amount";
readonly type: "uint256";
}];
readonly name: "withdraw";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "tokenAddress";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "to";
readonly type: "address";
}];
readonly name: "withdrawAffiliateRevenues";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "tokenAddress";
readonly type: "address";
}];
readonly name: "withdrawDividend";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "withdrawDividends";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "tokenAddress";
readonly type: "address";
}];
readonly name: "withdrawProtocolRevenues";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}];
declare const coinTossAbi: readonly [{
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "bankAddress";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "chainlinkCoordinatorAddress";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "chainlinkWrapperAddress";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "wrappedGasToken";
readonly type: "address";
}, {
readonly internalType: "uint64";
readonly name: "refundTime_";
readonly type: "uint64";
}, {
readonly internalType: "uint256";
readonly name: "maxCallGas_";
readonly type: "uint256";
}];
readonly stateMutability: "nonpayable";
readonly type: "constructor";
}, {
readonly inputs: readonly [];
readonly name: "AccessDenied";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "maxBetCount";
readonly type: "uint256";
}];
readonly name: "BetCountTooHigh";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ForbiddenToken";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "HouseEdgeTooHigh";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "HouseEdgeTooLow";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidAddress";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidMaxCallGas";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidParam";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidVRFSubId";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "NotFulfilled";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "NotPendingBet";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "have";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "want";
readonly type: "address";
}];
readonly name: "OnlyCoordinatorCanFulfill";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "have";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "owner";
readonly type: "address";
}, {
readonly internalType: "address";
readonly name: "coordinator";
readonly type: "address";
}];
readonly name: "OnlyOwnerOrCoordinator";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "TokenHasPendingBets";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "minBetAmount";
readonly type: "uint256";
}];
readonly name: "UnderMinBetAmount";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "minBetCount";
readonly type: "uint256";
}];
readonly name: "UnderMinBetCount";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "WrongGasValueToCoverVRFFee";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "ZeroAddress";
readonly type: "error";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "id";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "address";
readonly name: "user";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "amount";
readonly type: "uint256";
}];
readonly name: "BetRefunded";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "address";
readonly name: "vrfCoordinator";
readonly type: "address";
}];
readonly name: "CoordinatorSet";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "amount";
readonly type: "uint256";
}];
readonly name: "DistributeTokenVRFFees";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "from";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "to";
readonly type: "address";
}];
readonly name: "OwnershipTransferRequested";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "from";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "to";
readonly type: "address";
}];
readonly name: "OwnershipTransferred";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "address";
readonly name: "account";
readonly type: "address";
}];
readonly name: "Paused";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "id";
readonly type: "uint256";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "receiver";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "amount";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "chargedVRFCost";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "bool";
readonly name: "face";
readonly type: "bool";
}, {
readonly indexed: false;
readonly internalType: "address";
readonly name: "affiliate";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint32";
readonly name: "betCount";
readonly type: "uint32";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "stopGain";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "stopLoss";
readonly type: "uint256";
}];
readonly name: "PlaceBet";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "id";
readonly type: "uint256";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "receiver";
readonly type: "address";
}, {
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "totalBetAmount";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "bool";
readonly name: "face";
readonly type: "bool";
}, {
readonly indexed: false;
readonly internalType: "bool[]";
readonly name: "rolled";
readonly type: "bool[]";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "payout";
readonly type: "uint256";
}];
readonly name: "Roll";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "address";
readonly name: "affiliate";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "previousHouseEdge";
readonly type: "uint16";
}, {
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "houseEdge";
readonly type: "uint16";
}];
readonly name: "SetAffiliateHouseEdge";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "requestConfirmations";
readonly type: "uint16";
}, {
readonly indexed: false;
readonly internalType: "bytes32";
readonly name: "keyHash";
readonly type: "bytes32";
}, {
readonly indexed: false;
readonly internalType: "contract IVRFV2PlusWrapperCustom";
readonly name: "chainlinkWrapper";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint32";
readonly name: "VRFCallbackGasExtraBet";
readonly type: "uint32";
}, {
readonly indexed: false;
readonly internalType: "bool";
readonly name: "nativePayment";
readonly type: "bool";
}];
readonly name: "SetChainlinkConfig";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "previousHouseEdge";
readonly type: "uint16";
}, {
readonly indexed: false;
readonly internalType: "uint16";
readonly name: "houseEdge";
readonly type: "uint16";
}];
readonly name: "SetHouseEdge";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "previousMaxCallGas";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "maxCallGas";
readonly type: "uint256";
}];
readonly name: "SetMaxCallGas";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint64";
readonly name: "previousRefundTime";
readonly type: "uint64";
}, {
readonly indexed: false;
readonly internalType: "uint64";
readonly name: "refundTime";
readonly type: "uint64";
}];
readonly name: "SetRefundTime";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint32";
readonly name: "previousCallbackGasBase";
readonly type: "uint32";
}, {
readonly indexed: false;
readonly internalType: "uint32";
readonly name: "callbackGasBase";
readonly type: "uint32";
}];
readonly name: "SetVRFCallbackGasBase";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "address";
readonly name: "token";
readonly type: "address";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "previousSubId";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "subId";
readonly type: "uint256";
}];
readonly name: "SetVRFSubId";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "address";
readonly name: "account";
readonly type: "address";
}];
readonly name: "Unpaused";
readonly type: "event";
}, {