@swapkit/types 1.0.0-rc.33 → 1.0.0-rc.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +7 -4
- package/dist/index.es.js +30 -29
- package/dist/index.es.js.map +1 -1
- package/package.json +1 -1
- package/src/errors/displayMessages.ts +2 -1
- package/src/errors/types.ts +1 -0
- package/src/thorchain.ts +0 -4
- package/src/wallet.ts +6 -0
package/dist/index.cjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";var H=Object.defineProperty;var D=(e,a,n)=>a in e?H(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n;var s=(e,a,n)=>(D(e,typeof a!="symbol"?a+"":a,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const R=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"success",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"success",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"success",type:"bool"}],stateMutability:"nonpayable",type:"function"}],v=[{inputs:[{internalType:"address",name:"rune",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferAllowance",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOut",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!1,internalType:"address",name:"target",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"address",name:"finalAsset",type:"address"},{indexed:!1,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amountOutMin",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOutAndCall",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],indexed:!1,internalType:"struct THORChain_Router.Coin[]",name:"coins",type:"tuple[]"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"VaultTransfer",type:"event"},{inputs:[],name:"RUNE",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address payable",name:"vault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"deposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address payable",name:"vault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"},{internalType:"uint256",name:"expiration",type:"uint256"}],name:"depositWithExpiry",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address payable",name:"asgard",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct THORChain_Router.Coin[]",name:"coins",type:"tuple[]"},{internalType:"string",name:"memo",type:"string"}],name:"returnVaultAssets",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address",name:"newVault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferAllowance",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address payable",name:"to",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOut",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address payable",name:"aggregator",type:"address"},{internalType:"address",name:"finalToken",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOutAndCall",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"vault",type:"address"},{internalType:"address",name:"token",type:"address"}],name:"vaultAllowance",outputs:[{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"}],M=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferAllowance",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOut",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!1,internalType:"address",name:"target",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"address",name:"finalAsset",type:"address"},{indexed:!1,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amountOutMin",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOutAndCall",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],indexed:!1,internalType:"struct AvaxRouter.Coin[]",name:"coins",type:"tuple[]"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"VaultTransfer",type:"event"},{inputs:[{internalType:"address payable",name:"vault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"deposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address payable",name:"vault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"},{internalType:"uint256",name:"expiration",type:"uint256"}],name:"depositWithExpiry",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address payable",name:"asgard",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct AvaxRouter.Coin[]",name:"coins",type:"tuple[]"},{internalType:"string",name:"memo",type:"string"}],name:"returnVaultAssets",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address",name:"newVault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferAllowance",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address payable",name:"to",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOut",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address payable",name:"target",type:"address"},{internalType:"address",name:"finalToken",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOutAndCall",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"vault",type:"address"},{internalType:"address",name:"token",type:"address"}],name:"vaultAllowance",outputs:[{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"}],G=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferAllowance",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOut",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!1,internalType:"address",name:"target",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"address",name:"finalAsset",type:"address"},{indexed:!1,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amountOutMin",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOutAndCall",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],indexed:!1,internalType:"struct THORChain_Router.Coin[]",name:"coins",type:"tuple[]"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"VaultTransfer",type:"event"},{inputs:[{internalType:"address payable",name:"vault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"},{internalType:"uint256",name:"expiration",type:"uint256"}],name:"depositWithExpiry",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address payable",name:"asgard",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct THORChain_Router.Coin[]",name:"coins",type:"tuple[]"},{internalType:"string",name:"memo",type:"string"}],name:"returnVaultAssets",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address",name:"newVault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferAllowance",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address payable",name:"to",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOut",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address payable",name:"target",type:"address"},{internalType:"address",name:"finalToken",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOutAndCall",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"vault",type:"address"},{internalType:"address",name:"token",type:"address"}],name:"vaultAllowance",outputs:[{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"}];var S=(e=>(e.TC_SUPPORTED_TO_TC_SUPPORTED="TC-TC",e.TC_SUPPORTED_TO_ETH="TC-ERC20",e.TC_SUPPORTED_TO_AVAX="TC-ARC20",e.TC_SUPPORTED_TO_BSC="TC-BEP20",e.ETH_TO_TC_SUPPORTED="ERC20-TC",e.ETH_TO_ETH="ERC20-ERC20",e.ETH_TO_AVAX="ERC20-ARC20",e.ETH_TO_BSC="ERC20-BEP20",e.AVAX_TO_TC_SUPPORTED="ARC20-TC",e.AVAX_TO_ETH="ARC20-ERC20",e.AVAX_TO_AVAX="ARC20-ARC20",e.AVAX_TO_BSC="ARC20-BEP20",e.BSC_TO_TC_SUPPORTED="BEP20-TC",e.BSC_TO_ETH="BEP20-ERC20",e.BSC_TO_AVAX="BEP20-ARC20",e.BSC_TO_BSC="BEP20-BEP20",e))(S||{});const U=["ERC20-ERC20","ARC20-ARC20","BEP20-BEP20"],w=["ERC20-TC","ERC20-ARC20","ERC20-BEP20","ARC20-TC","ARC20-ERC20","ARC20-BEP20","BEP20-TC","BEP20-ERC20","BEP20-ARC20"],F=["TC-TC","TC-ERC20","TC-ARC20","TC-BEP20"];var T=(e=>(e.VALIDATION_ERROR="VALIDATION_ERROR",e.REQUEST_PARAMETER_ERROR="REQUEST_PARAMETER_ERROR",e.RESPONSE_PARSING_ERROR="RESPONSE_PARSING_ERROR",e.UNSUPPORTED="UNSUPPORTED",e.NOT_IMPLEMENTED="NOT_IMPLEMENTED",e.INCOMPATIBLE_ASSETS_OPERATIONS="INCOMPATIBLE_ASSETS_OPERATIONS",e.SERVICE_UNAVAILABLE="SERVICE_UNAVAILABLE",e.DOWN_FOR_MAINTENANCE="DOWN_FOR_MAINTENANCE",e.MISSING_INBOUND_INFO="MISSING_INBOUND_INFO",e.QUOTE_FETCHING_ERROR="QUOTE_FETCHING_ERROR",e.AIRDROP_ERROR="AIRDROP_ERROR",e.UNHANDLED_ERROR="UNHANDLED_ERROR",e))(T||{}),_=(e=>(e.HEALTH_CONTROLLER="1000",e.LIQUIDITY_CONTROLLER="1001",e.PROVIDER_CONTROLLER="1002",e.QUOTE_CONTROLLER="1003",e.SWAP_CONTROLLER="1004",e.UTIL_CONTROLLER="1005",e.AIRDROP_CONTROLLER="1006",e.PROVIDER="2000",e.ASSET="2001",e.TOKEN_LIST="2002",e.QUOTE="2100",e.QUOTE_TXN_DETAILS="2101",e.THORCHAIN_PROVIDER="3000",e.UNISWAPV2_ETH_PROVIDER="3001",e.UNISWAPV3_ETH_PROVIDER="3002",e.SUSHISWAP_ETH_PROVIDER="3003",e.PANCAKESWAP_BSC_PROVIDER="3004",e.PANCAKESWAP_ETH_PROVIDER="3005",e.ONEINCH_ETH_PROVIDER="3006",e.ONEINCH_BSC_PROVIDER="3007",e.ONEINCH_AVAX_PROVIDER="3008",e.ZEROX_ETH_PROVIDER="3009",e.WOOFI_AVAX_PROVIDER="3010",e.PANGOLIN_AVAX_PROVIDER="3011",e.TRADERJOE_AVAX_PROVIDER="3012",e.KYBER_ETH_PROVIDER="3013",e.KYBER_AVAX_PROVIDER="3014",e.WOOFI_BSC_PROVIDER="3015",e.STARGATE_PROVIDER="3016",e.PROVIDER_UTIL="4000",e.TXN_DETAILS="5000",e.AIRDROP_UTIL="6000",e))(_||{}),t=(e=>(e.INVALID_INPUT_PARAMETERS="1000",e.UNKNOWN_PROVIDERS="1001",e.CANNOT_FIND_INBOUND_ADDRESS="1002",e.NO_INBOUND_ADDRESSES="1003",e.CHAIN_HALTED_OR_UNSUPPORTED="1004",e.MISSING_INPUT_PARAMETER="1005",e.INVALID_TYPE_GENERIC="1100",e.INVALID_NUMBER_STRING="1101",e.INVALID_NUMBER="1102",e.INVALID_BOOLEAN="1103",e.INVALID_OBJECT="1104",e.INVALID_ARRAY="1105",e.SELL_AMOUNT_MUST_BE_POSITIVE_INTEGER="2000",e.SELL_BUY_ASSETS_ARE_THE_SAME="2001",e.MISSING_SOURCE_ADDRESS_FOR_SYNTH="2002",e.AFF_ADDRESS_AND_BPS_OR_NEITHER="2003",e.AFF_ADDRESS_TOO_LONG="2004",e.AFF_BPS_INTEGER_MAX_500="2005",e.SOURCE_ADDRESS_INVALID_FOR_SELL_CHAIN="2006",e.DESTINATION_ADDRESS_INVALID_FOR_BUY_CHAIN="2007",e.PREFERRED_PROVIDER_NOT_SUPPORTED="2008",e.DESTINATION_ADDRESS_SMART_CONTRACT="2009",e.BUY_AMOUNT_MUST_BE_POSITIVE_INTEGER="2010",e.SOURCE_ADDRESS_SMART_CONTRACT="2011",e.INVALID_PROVIDER="2100",e.MISSING_CROSS_CHAIN_PROVIDER="2101",e.MISSING_AVAX_PROVIDER="2102",e.MISSING_BSC_PROVIDER="2103",e.MISSING_ETH_PROVIDER="2104",e.INVALID_PROVIDER_FOR_SWAP_OUT="2105",e.MISSING_ARB_PROVIDER="2106",e.INVALID_CHAIN="2200",e.INVALID_ASSET="2201",e.INVALID_ASSET_IDENTIFIER="2202",e.UNSUPPORTED_CHAIN="2204",e.UNSUPPORTED_ASSET="2203",e.UNSUPPORTED_ASSET_FOR_SWAPOUT="2205",e.INVALID_SOURCE_ADDRESS="2300",e.INVALID_DESTINATION_ADDRESS="2301",e.THORNODE_QUOTE_GENERIC_ERROR="3000",e.NOT_ENOUGH_SYNTH_BALANCE="3001",e.SYNTH_MINTING_CAP_REACHED="3002",e.INVALID_QUOTE_MODE="4000",e.NO_QUOTES="4001",e.SERVICE_UNAVAILABLE_GENERIC="5000",e.MISSING_GAS_DATA_GENERIC="5100",e.MISSING_TOKEN_INFO_GENERIC="5200",e.CANT_FIND_TOKEN_LIST="5201",e.NO_PRICE="5202",e.PRICE_IS_STALE="5203",e.ADDRESS_NOT_WHITELISTED="6000",e.ADDRESS_ALREADY_CLAIMED="6001",e.TEMPORARY_ERROR="9999",e))(t||{});const X={[t.INVALID_INPUT_PARAMETERS]:"Invalid input parameters: {0}.",[t.UNKNOWN_PROVIDERS]:"Unknown providers: {0}.",[t.CANNOT_FIND_INBOUND_ADDRESS]:"Cannot find inbound address.",[t.NO_INBOUND_ADDRESSES]:"No inbound addresses.",[t.CHAIN_HALTED_OR_UNSUPPORTED]:"Chain {0} halted or unsupported.",[t.MISSING_INPUT_PARAMETER]:"Missing input parameter: {0}.",[t.INVALID_TYPE_GENERIC]:"Invalid type",[t.INVALID_NUMBER_STRING]:"Invalid number string.",[t.INVALID_NUMBER]:"Invalid number.",[t.INVALID_BOOLEAN]:"Invalid boolean.",[t.INVALID_OBJECT]:"Invalid object.",[t.INVALID_ARRAY]:"Invalid array.",[t.SELL_AMOUNT_MUST_BE_POSITIVE_INTEGER]:"Sell amount must be a positive integer.",[t.SELL_BUY_ASSETS_ARE_THE_SAME]:"Sell and buy assets are the same.",[t.MISSING_SOURCE_ADDRESS_FOR_SYNTH]:"Source address is required for synth quote.",[t.AFF_ADDRESS_AND_BPS_OR_NEITHER]:"Must provide affiliateAddress and affiliateBasisPoints params, or neither.",[t.AFF_ADDRESS_TOO_LONG]:"affiliateAddress too long: 3 characters max.",[t.AFF_BPS_INTEGER_MAX_500]:"affiliateBasisPoints must be an integer between 0 and 100.",[t.SOURCE_ADDRESS_INVALID_FOR_SELL_CHAIN]:"Source address {0} invalid for sell chain.",[t.DESTINATION_ADDRESS_INVALID_FOR_BUY_CHAIN]:"Destination address {0} invalid for buy chain.",[t.PREFERRED_PROVIDER_NOT_SUPPORTED]:"Preferred provider not supported.",[t.SOURCE_ADDRESS_SMART_CONTRACT]:"Source address is a smart contract.",[t.DESTINATION_ADDRESS_SMART_CONTRACT]:"Destination address is a smart contract.",[t.BUY_AMOUNT_MUST_BE_POSITIVE_INTEGER]:"Buy amount must be a positive integer.",[t.INVALID_PROVIDER]:"Invalid provider {0}.",[t.MISSING_CROSS_CHAIN_PROVIDER]:"Missing cross-chain provider.",[t.MISSING_AVAX_PROVIDER]:"Missing AVAX provider.",[t.MISSING_BSC_PROVIDER]:"Missing BSC provider.",[t.MISSING_ETH_PROVIDER]:"Missing ETH provider.",[t.MISSING_ARB_PROVIDER]:"Missing ARB provider.",[t.INVALID_PROVIDER_FOR_SWAP_OUT]:"Invalid provider for swap out.",[t.INVALID_CHAIN]:"Invalid chain {0}.",[t.INVALID_ASSET]:"Invalid asset {0}.",[t.UNSUPPORTED_CHAIN]:"Unsupported chain {0}.",[t.UNSUPPORTED_ASSET]:"Unsupported asset {0}.",[t.UNSUPPORTED_ASSET_FOR_SWAPOUT]:"Unsupported asset {0} for swap out.",[t.THORNODE_QUOTE_GENERIC_ERROR]:"ThorNode quote generic error.",[t.INVALID_SOURCE_ADDRESS]:"Invalid source address {0}",[t.INVALID_DESTINATION_ADDRESS]:"Invalid destination address {0}",[t.NOT_ENOUGH_SYNTH_BALANCE]:"Source address doesn't have enough synth balance for this quote.",[t.SYNTH_MINTING_CAP_REACHED]:"Synth minting cap reached.",[t.INVALID_QUOTE_MODE]:"Invalid quote mode.",[t.NO_QUOTES]:"No quotes to service this request.",[t.SERVICE_UNAVAILABLE_GENERIC]:"Service unavailable.",[t.MISSING_GAS_DATA_GENERIC]:"Missing gas data.",[t.MISSING_TOKEN_INFO_GENERIC]:"Missing token info.",[t.CANT_FIND_TOKEN_LIST]:"Can't find tokenlist {0}.",[t.NO_PRICE]:"No price for asset {0}.",[t.PRICE_IS_STALE]:"Price is stale for asset {0}.",[t.ADDRESS_NOT_WHITELISTED]:"Address {0} not whitelisted for airdrop.",[t.ADDRESS_ALREADY_CLAIMED]:"Address {0} already claimed the airdrop."},o=(e,a)=>{let n=X[e];if(!n)return"";for(let r=0;r<a.length;r++)n=(n==null?void 0:n.replace(`{${r}}`,a[r]))??"";return n};class l extends Error{constructor({status:n,revision:r,module:P,code:y,message:V,type:B,options:{shouldLog:b,shouldThrow:x,shouldTrace:L}={shouldLog:!0,shouldThrow:!0,shouldTrace:!0},displayMessageParams:u}){const I=V||o(y,u||[])||"";super(I);s(this,"status");s(this,"revision");s(this,"type");s(this,"module");s(this,"code");s(this,"message");s(this,"display");s(this,"stack");s(this,"options");s(this,"displayMessageParams");this.status=n,this.revision=r||"NO_REVISION",this.module=P,this.message=I,this.display=o(y,u||[]),this.code=y,this.type=B||T.UNHANDLED_ERROR,this.options={shouldLog:b||!0,shouldTrace:L||!0,shouldThrow:x||!1},this.displayMessageParams=u||[],this.options.shouldTrace&&Error.captureStackTrace(this)}static fromErrorInfo(n){return new l(n)}toErrorInfo(){return{...this,identifier:this.identifier}}get identifier(){return`${this.revision}-${this.type||"NO_TYPE"}-${this.module}-${this.code}`}get displayMessage(){return o(this.code,this.displayMessageParams||[])}handle(){const n=`[${this.identifier}]: ${this.message}`;if(this.options.shouldLog&&console.error(n,`
|
|
2
|
-
`,this.stack||""),this.options.shouldThrow)throw Error(n,{cause:this.stack});return this.toErrorInfo()}}var
|
|
1
|
+
"use strict";var H=Object.defineProperty;var v=(e,a,n)=>a in e?H(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n;var s=(e,a,n)=>(v(e,typeof a!="symbol"?a+"":a,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const D=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"success",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"success",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"success",type:"bool"}],stateMutability:"nonpayable",type:"function"}],R=[{inputs:[{internalType:"address",name:"rune",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferAllowance",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOut",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!1,internalType:"address",name:"target",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"address",name:"finalAsset",type:"address"},{indexed:!1,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amountOutMin",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOutAndCall",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],indexed:!1,internalType:"struct THORChain_Router.Coin[]",name:"coins",type:"tuple[]"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"VaultTransfer",type:"event"},{inputs:[],name:"RUNE",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address payable",name:"vault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"deposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address payable",name:"vault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"},{internalType:"uint256",name:"expiration",type:"uint256"}],name:"depositWithExpiry",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address payable",name:"asgard",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct THORChain_Router.Coin[]",name:"coins",type:"tuple[]"},{internalType:"string",name:"memo",type:"string"}],name:"returnVaultAssets",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address",name:"newVault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferAllowance",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address payable",name:"to",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOut",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address payable",name:"aggregator",type:"address"},{internalType:"address",name:"finalToken",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOutAndCall",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"vault",type:"address"},{internalType:"address",name:"token",type:"address"}],name:"vaultAllowance",outputs:[{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"}],M=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferAllowance",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOut",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!1,internalType:"address",name:"target",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"address",name:"finalAsset",type:"address"},{indexed:!1,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amountOutMin",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOutAndCall",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],indexed:!1,internalType:"struct AvaxRouter.Coin[]",name:"coins",type:"tuple[]"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"VaultTransfer",type:"event"},{inputs:[{internalType:"address payable",name:"vault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"deposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address payable",name:"vault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"},{internalType:"uint256",name:"expiration",type:"uint256"}],name:"depositWithExpiry",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address payable",name:"asgard",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct AvaxRouter.Coin[]",name:"coins",type:"tuple[]"},{internalType:"string",name:"memo",type:"string"}],name:"returnVaultAssets",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address",name:"newVault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferAllowance",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address payable",name:"to",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOut",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address payable",name:"target",type:"address"},{internalType:"address",name:"finalToken",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOutAndCall",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"vault",type:"address"},{internalType:"address",name:"token",type:"address"}],name:"vaultAllowance",outputs:[{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"}],G=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferAllowance",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOut",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"vault",type:"address"},{indexed:!1,internalType:"address",name:"target",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"address",name:"finalAsset",type:"address"},{indexed:!1,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amountOutMin",type:"uint256"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"TransferOutAndCall",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldVault",type:"address"},{indexed:!0,internalType:"address",name:"newVault",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],indexed:!1,internalType:"struct THORChain_Router.Coin[]",name:"coins",type:"tuple[]"},{indexed:!1,internalType:"string",name:"memo",type:"string"}],name:"VaultTransfer",type:"event"},{inputs:[{internalType:"address payable",name:"vault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"},{internalType:"uint256",name:"expiration",type:"uint256"}],name:"depositWithExpiry",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address payable",name:"asgard",type:"address"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct THORChain_Router.Coin[]",name:"coins",type:"tuple[]"},{internalType:"string",name:"memo",type:"string"}],name:"returnVaultAssets",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"router",type:"address"},{internalType:"address",name:"newVault",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferAllowance",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address payable",name:"to",type:"address"},{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOut",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address payable",name:"target",type:"address"},{internalType:"address",name:"finalToken",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"string",name:"memo",type:"string"}],name:"transferOutAndCall",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"vault",type:"address"},{internalType:"address",name:"token",type:"address"}],name:"vaultAllowance",outputs:[{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"}];var _=(e=>(e.TC_SUPPORTED_TO_TC_SUPPORTED="TC-TC",e.TC_SUPPORTED_TO_ETH="TC-ERC20",e.TC_SUPPORTED_TO_AVAX="TC-ARC20",e.TC_SUPPORTED_TO_BSC="TC-BEP20",e.ETH_TO_TC_SUPPORTED="ERC20-TC",e.ETH_TO_ETH="ERC20-ERC20",e.ETH_TO_AVAX="ERC20-ARC20",e.ETH_TO_BSC="ERC20-BEP20",e.AVAX_TO_TC_SUPPORTED="ARC20-TC",e.AVAX_TO_ETH="ARC20-ERC20",e.AVAX_TO_AVAX="ARC20-ARC20",e.AVAX_TO_BSC="ARC20-BEP20",e.BSC_TO_TC_SUPPORTED="BEP20-TC",e.BSC_TO_ETH="BEP20-ERC20",e.BSC_TO_AVAX="BEP20-ARC20",e.BSC_TO_BSC="BEP20-BEP20",e))(_||{});const U=["ERC20-ERC20","ARC20-ARC20","BEP20-BEP20"],w=["ERC20-TC","ERC20-ARC20","ERC20-BEP20","ARC20-TC","ARC20-ERC20","ARC20-BEP20","BEP20-TC","BEP20-ERC20","BEP20-ARC20"],F=["TC-TC","TC-ERC20","TC-ARC20","TC-BEP20"];var T=(e=>(e.VALIDATION_ERROR="VALIDATION_ERROR",e.REQUEST_PARAMETER_ERROR="REQUEST_PARAMETER_ERROR",e.RESPONSE_PARSING_ERROR="RESPONSE_PARSING_ERROR",e.UNSUPPORTED="UNSUPPORTED",e.NOT_IMPLEMENTED="NOT_IMPLEMENTED",e.INCOMPATIBLE_ASSETS_OPERATIONS="INCOMPATIBLE_ASSETS_OPERATIONS",e.SERVICE_UNAVAILABLE="SERVICE_UNAVAILABLE",e.DOWN_FOR_MAINTENANCE="DOWN_FOR_MAINTENANCE",e.MISSING_INBOUND_INFO="MISSING_INBOUND_INFO",e.QUOTE_FETCHING_ERROR="QUOTE_FETCHING_ERROR",e.AIRDROP_ERROR="AIRDROP_ERROR",e.UNHANDLED_ERROR="UNHANDLED_ERROR",e))(T||{}),S=(e=>(e.HEALTH_CONTROLLER="1000",e.LIQUIDITY_CONTROLLER="1001",e.PROVIDER_CONTROLLER="1002",e.QUOTE_CONTROLLER="1003",e.SWAP_CONTROLLER="1004",e.UTIL_CONTROLLER="1005",e.AIRDROP_CONTROLLER="1006",e.PROVIDER="2000",e.ASSET="2001",e.TOKEN_LIST="2002",e.QUOTE="2100",e.QUOTE_TXN_DETAILS="2101",e.THORCHAIN_PROVIDER="3000",e.UNISWAPV2_ETH_PROVIDER="3001",e.UNISWAPV3_ETH_PROVIDER="3002",e.SUSHISWAP_ETH_PROVIDER="3003",e.PANCAKESWAP_BSC_PROVIDER="3004",e.PANCAKESWAP_ETH_PROVIDER="3005",e.ONEINCH_ETH_PROVIDER="3006",e.ONEINCH_BSC_PROVIDER="3007",e.ONEINCH_AVAX_PROVIDER="3008",e.ZEROX_ETH_PROVIDER="3009",e.WOOFI_AVAX_PROVIDER="3010",e.PANGOLIN_AVAX_PROVIDER="3011",e.TRADERJOE_AVAX_PROVIDER="3012",e.KYBER_ETH_PROVIDER="3013",e.KYBER_AVAX_PROVIDER="3014",e.WOOFI_BSC_PROVIDER="3015",e.STARGATE_PROVIDER="3016",e.PROVIDER_UTIL="4000",e.TXN_DETAILS="5000",e.AIRDROP_UTIL="6000",e))(S||{}),t=(e=>(e.INVALID_INPUT_PARAMETERS="1000",e.UNKNOWN_PROVIDERS="1001",e.CANNOT_FIND_INBOUND_ADDRESS="1002",e.NO_INBOUND_ADDRESSES="1003",e.CHAIN_HALTED_OR_UNSUPPORTED="1004",e.MISSING_INPUT_PARAMETER="1005",e.INVALID_TYPE_GENERIC="1100",e.INVALID_NUMBER_STRING="1101",e.INVALID_NUMBER="1102",e.INVALID_BOOLEAN="1103",e.INVALID_OBJECT="1104",e.INVALID_ARRAY="1105",e.SELL_AMOUNT_MUST_BE_POSITIVE_INTEGER="2000",e.SELL_BUY_ASSETS_ARE_THE_SAME="2001",e.MISSING_SOURCE_ADDRESS_FOR_SYNTH="2002",e.AFF_ADDRESS_AND_BPS_OR_NEITHER="2003",e.AFF_ADDRESS_TOO_LONG="2004",e.AFF_BPS_INTEGER_MAX_500="2005",e.SOURCE_ADDRESS_INVALID_FOR_SELL_CHAIN="2006",e.DESTINATION_ADDRESS_INVALID_FOR_BUY_CHAIN="2007",e.PREFERRED_PROVIDER_NOT_SUPPORTED="2008",e.DESTINATION_ADDRESS_SMART_CONTRACT="2009",e.BUY_AMOUNT_MUST_BE_POSITIVE_INTEGER="2010",e.SOURCE_ADDRESS_SMART_CONTRACT="2011",e.SWAP_AMOUNT_TOO_LOW="2012",e.INVALID_PROVIDER="2100",e.MISSING_CROSS_CHAIN_PROVIDER="2101",e.MISSING_AVAX_PROVIDER="2102",e.MISSING_BSC_PROVIDER="2103",e.MISSING_ETH_PROVIDER="2104",e.INVALID_PROVIDER_FOR_SWAP_OUT="2105",e.MISSING_ARB_PROVIDER="2106",e.INVALID_CHAIN="2200",e.INVALID_ASSET="2201",e.INVALID_ASSET_IDENTIFIER="2202",e.UNSUPPORTED_CHAIN="2204",e.UNSUPPORTED_ASSET="2203",e.UNSUPPORTED_ASSET_FOR_SWAPOUT="2205",e.INVALID_SOURCE_ADDRESS="2300",e.INVALID_DESTINATION_ADDRESS="2301",e.THORNODE_QUOTE_GENERIC_ERROR="3000",e.NOT_ENOUGH_SYNTH_BALANCE="3001",e.SYNTH_MINTING_CAP_REACHED="3002",e.INVALID_QUOTE_MODE="4000",e.NO_QUOTES="4001",e.SERVICE_UNAVAILABLE_GENERIC="5000",e.MISSING_GAS_DATA_GENERIC="5100",e.MISSING_TOKEN_INFO_GENERIC="5200",e.CANT_FIND_TOKEN_LIST="5201",e.NO_PRICE="5202",e.PRICE_IS_STALE="5203",e.ADDRESS_NOT_WHITELISTED="6000",e.ADDRESS_ALREADY_CLAIMED="6001",e.TEMPORARY_ERROR="9999",e))(t||{});const X={[t.INVALID_INPUT_PARAMETERS]:"Invalid input parameters: {0}.",[t.UNKNOWN_PROVIDERS]:"Unknown providers: {0}.",[t.CANNOT_FIND_INBOUND_ADDRESS]:"Cannot find inbound address.",[t.NO_INBOUND_ADDRESSES]:"No inbound addresses.",[t.CHAIN_HALTED_OR_UNSUPPORTED]:"Chain {0} halted or unsupported.",[t.MISSING_INPUT_PARAMETER]:"Missing input parameter: {0}.",[t.INVALID_TYPE_GENERIC]:"Invalid type",[t.INVALID_NUMBER_STRING]:"Invalid number string.",[t.INVALID_NUMBER]:"Invalid number.",[t.INVALID_BOOLEAN]:"Invalid boolean.",[t.INVALID_OBJECT]:"Invalid object.",[t.INVALID_ARRAY]:"Invalid array.",[t.SELL_AMOUNT_MUST_BE_POSITIVE_INTEGER]:"Sell amount must be a positive integer.",[t.SELL_BUY_ASSETS_ARE_THE_SAME]:"Sell and buy assets are the same.",[t.MISSING_SOURCE_ADDRESS_FOR_SYNTH]:"Source address is required for synth quote.",[t.AFF_ADDRESS_AND_BPS_OR_NEITHER]:"Must provide affiliateAddress and affiliateBasisPoints params, or neither.",[t.AFF_ADDRESS_TOO_LONG]:"affiliateAddress too long: 4 characters max.",[t.AFF_BPS_INTEGER_MAX_500]:"affiliateBasisPoints must be an integer between 0 and 100.",[t.SOURCE_ADDRESS_INVALID_FOR_SELL_CHAIN]:"Source address {0} invalid for sell chain.",[t.DESTINATION_ADDRESS_INVALID_FOR_BUY_CHAIN]:"Destination address {0} invalid for buy chain.",[t.PREFERRED_PROVIDER_NOT_SUPPORTED]:"Preferred provider not supported.",[t.SOURCE_ADDRESS_SMART_CONTRACT]:"Source address is a smart contract.",[t.SWAP_AMOUNT_TOO_LOW]:"Swap amount too low for this pair.",[t.DESTINATION_ADDRESS_SMART_CONTRACT]:"Destination address is a smart contract.",[t.BUY_AMOUNT_MUST_BE_POSITIVE_INTEGER]:"Buy amount must be a positive integer.",[t.INVALID_PROVIDER]:"Invalid provider {0}.",[t.MISSING_CROSS_CHAIN_PROVIDER]:"Missing cross-chain provider.",[t.MISSING_AVAX_PROVIDER]:"Missing AVAX provider.",[t.MISSING_BSC_PROVIDER]:"Missing BSC provider.",[t.MISSING_ETH_PROVIDER]:"Missing ETH provider.",[t.MISSING_ARB_PROVIDER]:"Missing ARB provider.",[t.INVALID_PROVIDER_FOR_SWAP_OUT]:"Invalid provider for swap out.",[t.INVALID_CHAIN]:"Invalid chain {0}.",[t.INVALID_ASSET]:"Invalid asset {0}.",[t.UNSUPPORTED_CHAIN]:"Unsupported chain {0}.",[t.UNSUPPORTED_ASSET]:"Unsupported asset {0}.",[t.UNSUPPORTED_ASSET_FOR_SWAPOUT]:"Unsupported asset {0} for swap out.",[t.THORNODE_QUOTE_GENERIC_ERROR]:"ThorNode quote generic error.",[t.INVALID_SOURCE_ADDRESS]:"Invalid source address {0}",[t.INVALID_DESTINATION_ADDRESS]:"Invalid destination address {0}",[t.NOT_ENOUGH_SYNTH_BALANCE]:"Source address doesn't have enough synth balance for this quote.",[t.SYNTH_MINTING_CAP_REACHED]:"Synth minting cap reached.",[t.INVALID_QUOTE_MODE]:"Invalid quote mode.",[t.NO_QUOTES]:"No quotes to service this request.",[t.SERVICE_UNAVAILABLE_GENERIC]:"Service unavailable.",[t.MISSING_GAS_DATA_GENERIC]:"Missing gas data.",[t.MISSING_TOKEN_INFO_GENERIC]:"Missing token info.",[t.CANT_FIND_TOKEN_LIST]:"Can't find tokenlist {0}.",[t.NO_PRICE]:"No price for asset {0}.",[t.PRICE_IS_STALE]:"Price is stale for asset {0}.",[t.ADDRESS_NOT_WHITELISTED]:"Address {0} not whitelisted for airdrop.",[t.ADDRESS_ALREADY_CLAIMED]:"Address {0} already claimed the airdrop."},o=(e,a)=>{let n=X[e];if(!n)return"";for(let i=0;i<a.length;i++)n=(n==null?void 0:n.replace(`{${i}}`,a[i]))??"";return n};class l extends Error{constructor({status:n,revision:i,module:g,code:y,message:V,type:B,options:{shouldLog:b,shouldThrow:x,shouldTrace:L}={shouldLog:!0,shouldThrow:!0,shouldTrace:!0},displayMessageParams:u}){const I=V||o(y,u||[])||"";super(I);s(this,"status");s(this,"revision");s(this,"type");s(this,"module");s(this,"code");s(this,"message");s(this,"display");s(this,"stack");s(this,"options");s(this,"displayMessageParams");this.status=n,this.revision=i||"NO_REVISION",this.module=g,this.message=I,this.display=o(y,u||[]),this.code=y,this.type=B||T.UNHANDLED_ERROR,this.options={shouldLog:b||!0,shouldTrace:L||!0,shouldThrow:x||!1},this.displayMessageParams=u||[],this.options.shouldTrace&&Error.captureStackTrace(this)}static fromErrorInfo(n){return new l(n)}toErrorInfo(){return{...this,identifier:this.identifier}}get identifier(){return`${this.revision}-${this.type||"NO_TYPE"}-${this.module}-${this.code}`}get displayMessage(){return o(this.code,this.displayMessageParams||[])}handle(){const n=`[${this.identifier}]: ${this.message}`;if(this.options.shouldLog&&console.error(n,`
|
|
2
|
+
`,this.stack||""),this.options.shouldThrow)throw Error(n,{cause:this.stack});return this.toErrorInfo()}}var r=(e=>(e.Arbitrum="ARB",e.Avalanche="AVAX",e.Binance="BNB",e.BinanceSmartChain="BSC",e.Bitcoin="BTC",e.BitcoinCash="BCH",e.Cosmos="GAIA",e.Dogecoin="DOGE",e.Ethereum="ETH",e.Kujira="KUJI",e.Litecoin="LTC",e.Maya="MAYA",e.Optimism="OP",e.Polygon="MATIC",e.THORChain="THOR",e))(r||{}),N=(e=>(e.ARB="0x0000000000000000000000000000000000000000",e.AVAX="0x0000000000000000000000000000000000000000",e.ETH="0x0000000000000000000000000000000000000000",e.BSC="0x0000000000000000000000000000000000000000",e.MATIC="0x0000000000000000000000000000000000001010",e.OP="0x4200000000000000000000000000000000000042",e))(N||{}),E=(e=>(e.ARB="m/44'/60'/0'/0",e.AVAX="m/44'/60'/0'/0",e.BCH="m/44'/145'/0'/0",e.BNB="m/44'/714'/0'/0",e.BSC="m/44'/60'/0'/0",e.BTC="m/84'/0'/0'/0",e.DOGE="m/44'/3'/0'/0",e.ETH="m/44'/60'/0'/0",e.GAIA="m/44'/118'/0'/0",e.KUJI="m/44'/118'/0'/0",e.LTC="m/84'/2'/0'/0",e.MATIC="m/44'/60'/0'/0",e.MAYA="m/44'/931'/0'/0",e.OP="m/44'/60'/0'/0",e.THOR="m/44'/931'/0'/0",e))(E||{});const K={ARB:[44,60,0,0,0],AVAX:[44,60,0,0,0],BCH:[44,145,0,0,0],BNB:[44,714,0,0,0],BSC:[44,60,0,0,0],BTC:[84,0,0,0,0],DOGE:[44,3,0,0,0],ETH:[44,60,0,0,0],GAIA:[44,118,0,0,0],KUJI:[44,118,0,0,0],LTC:[84,2,0,0,0],MATIC:[44,60,0,0,0],MAYA:[44,931,0,0,0],OP:[44,60,0,0,0],THOR:[44,931,0,0,0]};var c=(e=>(e[e.ARB=18]="ARB",e[e.AVAX=18]="AVAX",e[e.BCH=8]="BCH",e[e.BNB=8]="BNB",e[e.BSC=18]="BSC",e[e.BTC=8]="BTC",e[e.DASH=8]="DASH",e[e.DOGE=8]="DOGE",e[e.ETH=18]="ETH",e[e.GAIA=6]="GAIA",e[e.KUJI=6]="KUJI",e[e.LTC=8]="LTC",e[e.MATIC=18]="MATIC",e[e.MAYA=10]="MAYA",e[e.OP=18]="OP",e[e.THOR=8]="THOR",e))(c||{});const W=["ETH","AVAX","BSC","ARB","OP","MATIC"],k=["BTC","BCH","DOGE","LTC"],Y=["GAIA","THOR","BNB"],j=["AVAX","BNB","BSC","BTC","BCH","GAIA","DOGE","ETH","LTC","THOR"];var p=(e=>(e.Arbitrum="42161",e.ArbitrumHex="0xa4b1",e.Avalanche="43114",e.AvalancheHex="0xa86a",e.Binance="Binance-Chain-Tigris",e.BinanceSmartChain="56",e.BinanceSmartChainHex="0x38",e.Bitcoin="bitcoin",e.BitcoinCash="bitcoincash",e.Cosmos="cosmoshub-4",e.Dogecoin="dogecoin",e.Kujira="kaiyo-1",e.Ethereum="1",e.EthereumHex="0x1",e.Litecoin="litecoin",e.Maya="mayachain-mainnet-v1",e.MayaStagenet="mayachain-stagenet-v1",e.Optimism="10",e.OptimismHex="0xa",e.Polygon="137",e.PolygonHex="0x89",e.THORChain="thorchain-mainnet-v1",e.THORChainStagenet="thorchain-stagenet-v2",e))(p||{}),m=(e=>(e.Arbitrum="https://arb1.arbitrum.io/rpc",e.Avalanche="https://node-router.thorswap.net/avalanche-c",e.Binance="",e.BinanceSmartChain="https://bsc-dataseed.binance.org",e.Bitcoin="https://node-router.thorswap.net/bitcoin",e.BitcoinCash="https://node-router.thorswap.net/bitcoin-cash",e.Cosmos="https://node-router.thorswap.net/cosmos/rpc",e.Kujira="https://rpc-kujira.synergynodes.com/",e.Dogecoin="https://node-router.thorswap.net/dogecoin",e.Ethereum="https://node-router.thorswap.net/ethereum",e.Litecoin="https://node-router.thorswap.net/litecoin",e.Maya="https://tendermint.mayachain.info",e.MayaStagenet="https://stagenet.tendermint.mayachain.info",e.Optimism="https://mainnet.optimism.io",e.Polygon="https://polygon-rpc.com",e.THORChain="https://rpc.thorswap.net",e.THORChainStagenet="https://stagenet-rpc.ninerealms.com",e))(m||{}),f=(e=>(e.Cosmos="https://node-router.thorswap.net/cosmos/rest",e.Kujira="https://lcd-kujira.synergynodes.com/",e.MayanodeMainnet="https://mayanode.mayachain.info",e.MayanodeStagenet="https://stagenet.mayanode.mayachain.info",e.ThornodeMainnet="https://thornode.thorswap.net",e.ThornodeStagenet="https://stagenet-thornode.ninerealms.com",e.ThorswapApi="https://api.thorswap.net",e.ThorswapStatic="https://static.thorswap.net",e))(f||{});const d=Object.values(r),J=Object.keys(r),A=d.reduce((e,a)=>{const n=J.find(i=>r[i]===a);return n&&(e[a]=n),e},{}),$=d.reduce((e,a)=>(e[a]=p[A[a]],e),{}),q=d.reduce((e,a)=>(e[a]=m[A[a]],e),{}),Z=d.reduce((e,a)=>{const n=`${A[a]}Hex`;return e[a]=p[n],e},{}),z={"0xa4b1":"ARB",42161:"ARB","0xa86a":"AVAX",43114:"AVAX","0x38":"BSC",56:"BSC","Binance-Chain-Tigris":"BNB",bitcoincash:"BCH",bitcoin:"BTC","cosmoshub-4":"GAIA",dogecoin:"DOGE","0x1":"ETH","kaiyo-1":"KUJI",1:"ETH",litecoin:"LTC","mayachain-stagenet-v1":"MAYA","mayachain-mainnet-v1":"MAYA","0xa":"OP",10:"OP","0x89":"MATIC",137:"MATIC","thorchain-stagenet-v2":"THOR","thorchain-mainnet-v1":"THOR"},Q={ARB:"https://arbiscan.io",AVAX:"https://snowtrace.io",BSC:"https://bscscan.com",BNB:"https://explorer.binance.org",BCH:"https://www.blockchair.com/bitcoin-cash",BTC:"https://blockchair.com/bitcoin",GAIA:"https://cosmos.bigdipper.live",DOGE:"https://blockchair.com/dogecoin",KUJI:"https://finder.kujira.network/kaiyo-1",ETH:"https://etherscan.io",LTC:"https://blockchair.com/litecoin",MAYA:"https://www.mayascan.org",OP:"https://optimistic.etherscan.io",MATIC:"https://polygonscan.com",THOR:"https://runescan.io"};var C=(e=>(e.BOND="BOND",e.DEPOSIT="+",e.LEAVE="LEAVE",e.THORNAME_REGISTER="~",e.UNBOND="UNBOND",e.WITHDRAW="-",e.OPEN_LOAN="$+",e.CLOSE_LOAN="$-",e))(C||{}),h=(e=>(e.Average="average",e.Fast="fast",e.Fastest="fastest",e))(h||{}),O=(e=>(e.KEYSTORE="KEYSTORE",e.KEEPKEY="KEEPKEY",e.XDEFI="XDEFI",e.METAMASK="METAMASK",e.COINBASE_WEB="COINBASE_WEB",e.TREZOR="TREZOR",e.TRUSTWALLET_WEB="TRUSTWALLET_WEB",e.LEDGER="LEDGER",e.KEPLR="KEPLR",e.OKX="OKX",e.OKX_MOBILE="OKX_MOBILE",e.BRAVE="BRAVE",e.WALLETCONNECT="WALLETCONNECT",e))(O||{}),P=(e=>(e[e.NoError=36864]="NoError",e[e.LockedDevice=21781]="LockedDevice",e[e.TC_NotFound=65535]="TC_NotFound",e))(P||{});exports.AGG_SWAP=U;exports.ApiError=l;exports.ApiUrl=f;exports.BaseDecimal=c;exports.Chain=r;exports.ChainId=p;exports.ChainIdToChain=z;exports.ChainToChainId=$;exports.ChainToExplorerUrl=Q;exports.ChainToHexChainId=Z;exports.ChainToRPC=q;exports.ContractAddress=N;exports.CosmosChainList=Y;exports.DerivationPath=E;exports.ERROR_CODE=t;exports.ERROR_MODULE=S;exports.ERROR_TYPE=T;exports.EVMChainList=W;exports.FeeOption=h;exports.LedgerErrorCode=P;exports.MemoType=C;exports.NetworkDerivationPath=K;exports.QuoteMode=_;exports.RPCUrl=m;exports.SWAP_IN=w;exports.SWAP_OUT=F;exports.TCAvalancheDepositABI=M;exports.TCBscDepositABI=G;exports.TCEthereumVaultAbi=R;exports.TCSupportedChainList=j;exports.UTXOChainList=k;exports.WalletOption=O;exports.erc20ABI=D;
|
|
3
3
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/abis/erc20.ts","../src/abis/tcEthVault.ts","../src/commonTypes.ts","../src/errors/types.ts","../src/errors/displayMessages.ts","../src/errors/apiError.ts","../src/network.ts","../src/thorchain.ts","../src/transactions.ts","../src/wallet.ts"],"sourcesContent":["export const erc20ABI = [\n { inputs: [], stateMutability: 'nonpayable', type: 'constructor' },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'owner', type: 'address' },\n { indexed: true, internalType: 'address', name: 'spender', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'value', type: 'uint256' },\n ],\n name: 'Approval',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'from', type: 'address' },\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'value', type: 'uint256' },\n ],\n name: 'Transfer',\n type: 'event',\n },\n {\n inputs: [\n { internalType: 'address', name: '', type: 'address' },\n { internalType: 'address', name: '', type: 'address' },\n ],\n name: 'allowance',\n outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'spender', type: 'address' },\n { internalType: 'uint256', name: 'value', type: 'uint256' },\n ],\n name: 'approve',\n outputs: [{ internalType: 'bool', name: 'success', type: 'bool' }],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [{ internalType: 'address', name: '', type: 'address' }],\n name: 'balanceOf',\n outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'decimals',\n outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'name',\n outputs: [{ internalType: 'string', name: '', type: 'string' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'symbol',\n outputs: [{ internalType: 'string', name: '', type: 'string' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'totalSupply',\n outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'to', type: 'address' },\n { internalType: 'uint256', name: 'value', type: 'uint256' },\n ],\n name: 'transfer',\n outputs: [{ internalType: 'bool', name: 'success', type: 'bool' }],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'from', type: 'address' },\n { internalType: 'address', name: 'to', type: 'address' },\n { internalType: 'uint256', name: 'value', type: 'uint256' },\n ],\n name: 'transferFrom',\n outputs: [{ internalType: 'bool', name: 'success', type: 'bool' }],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n];\n","export const TCEthereumVaultAbi = [\n {\n inputs: [{ internalType: 'address', name: 'rune', type: 'address' }],\n stateMutability: 'nonpayable',\n type: 'constructor',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: true, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'Deposit',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferAllowance',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOut',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'target', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'address', name: 'finalAsset', type: 'address' },\n { indexed: false, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOutAndCall',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n indexed: false,\n internalType: 'struct THORChain_Router.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'VaultTransfer',\n type: 'event',\n },\n {\n inputs: [],\n name: 'RUNE',\n outputs: [{ internalType: 'address', name: '', type: 'address' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'deposit',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n { internalType: 'uint256', name: 'expiration', type: 'uint256' },\n ],\n name: 'depositWithExpiry',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address payable', name: 'asgard', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n internalType: 'struct THORChain_Router.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'returnVaultAssets',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address', name: 'newVault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferAllowance',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'to', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOut',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'aggregator', type: 'address' },\n { internalType: 'address', name: 'finalToken', type: 'address' },\n { internalType: 'address', name: 'to', type: 'address' },\n { internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOutAndCall',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'token', type: 'address' },\n ],\n name: 'vaultAllowance',\n outputs: [{ internalType: 'uint256', name: 'amount', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n];\n\nexport const TCAvalancheDepositABI = [\n { inputs: [], stateMutability: 'nonpayable', type: 'constructor' },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: true, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'Deposit',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferAllowance',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOut',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'target', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'address', name: 'finalAsset', type: 'address' },\n { indexed: false, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOutAndCall',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n indexed: false,\n internalType: 'struct AvaxRouter.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'VaultTransfer',\n type: 'event',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'deposit',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n { internalType: 'uint256', name: 'expiration', type: 'uint256' },\n ],\n name: 'depositWithExpiry',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address payable', name: 'asgard', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n internalType: 'struct AvaxRouter.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'returnVaultAssets',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address', name: 'newVault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferAllowance',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'to', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOut',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'target', type: 'address' },\n { internalType: 'address', name: 'finalToken', type: 'address' },\n { internalType: 'address', name: 'to', type: 'address' },\n { internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOutAndCall',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'token', type: 'address' },\n ],\n name: 'vaultAllowance',\n outputs: [{ internalType: 'uint256', name: 'amount', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n];\n\nexport const TCBscDepositABI = [\n { inputs: [], stateMutability: 'nonpayable', type: 'constructor' },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: true, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'Deposit',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferAllowance',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOut',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'target', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'address', name: 'finalAsset', type: 'address' },\n { indexed: false, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOutAndCall',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n indexed: false,\n internalType: 'struct THORChain_Router.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'VaultTransfer',\n type: 'event',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n { internalType: 'uint256', name: 'expiration', type: 'uint256' },\n ],\n name: 'depositWithExpiry',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address payable', name: 'asgard', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n internalType: 'struct THORChain_Router.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'returnVaultAssets',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address', name: 'newVault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferAllowance',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'to', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOut',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'target', type: 'address' },\n { internalType: 'address', name: 'finalToken', type: 'address' },\n { internalType: 'address', name: 'to', type: 'address' },\n { internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOutAndCall',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'token', type: 'address' },\n ],\n name: 'vaultAllowance',\n outputs: [{ internalType: 'uint256', name: 'amount', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n];\n","import type { Chain, CosmosChain, EVMChain, UTXOChain } from './network.ts';\nimport type { WalletOption } from './wallet.ts';\n\ntype ConnectMethodNames =\n | 'connectEVMWallet'\n | 'connectKeplr'\n | 'connectKeystore'\n | 'connectKeepkey'\n | 'connectLedger'\n | 'connectOkx'\n | 'connectTrezor'\n | 'connectWalletconnect'\n | 'connectXDEFI';\n\ntype ChainWallet = {\n address: string;\n balance: any[];\n walletType: WalletOption;\n};\n\nexport type ConnectConfig = {\n stagenet?: boolean;\n /**\n * @required\n */\n thorswapApiKey?: string;\n /**\n * @required for AVAX & BSC\n */\n covalentApiKey?: string;\n /**\n * @required for ETH\n */\n ethplorerApiKey?: string;\n /**\n * @required for BTC, BCH, LTC, DOGE\n */\n blockchairApiKey?: string;\n /**\n * @deprecated - use blockchairApiKey instead\n */\n utxoApiKey?: string;\n /**\n * @required for Walletconnect\n */\n walletConnectProjectId?: string;\n /**\n * @optional for Trezor config\n */\n trezorManifest?: {\n email: string;\n appUrl: string;\n };\n /**\n * @optional for KeepKey config\n */\n keepkeyConfig?: {\n apiKey: string;\n pairingInfo: {\n name: string;\n imageUrl: string;\n basePath: string;\n url: string;\n };\n };\n};\n\nexport type AddChainWalletParams = {\n chain: Chain;\n wallet: ChainWallet;\n walletMethods: any;\n};\n\nexport type Witness = {\n value: number;\n script: Buffer;\n};\n\ntype ApisType = { [key in UTXOChain]?: string | any } & {\n [key in EVMChain]?: string | any;\n} & {\n [key in CosmosChain]?: string;\n};\n\nexport type ConnectWalletParams = {\n addChain: (params: AddChainWalletParams) => void;\n config: ConnectConfig;\n rpcUrls: { [chain in Chain]?: string };\n apis: ApisType;\n};\n\nexport type ExtendParams<WalletConnectMethodNames = ''> = {\n excludedChains?: Chain[];\n config?: ConnectConfig;\n rpcUrls?: { [chain in Chain]?: string };\n apis?: ApisType;\n wallets: {\n connectMethodName: ConnectMethodNames | WalletConnectMethodNames;\n connect: (params: ConnectWalletParams) => (...params: any) => Promise<any>;\n }[];\n};\n\nexport enum QuoteMode {\n TC_SUPPORTED_TO_TC_SUPPORTED = 'TC-TC',\n TC_SUPPORTED_TO_ETH = 'TC-ERC20',\n TC_SUPPORTED_TO_AVAX = 'TC-ARC20',\n TC_SUPPORTED_TO_BSC = 'TC-BEP20',\n ETH_TO_TC_SUPPORTED = 'ERC20-TC',\n ETH_TO_ETH = 'ERC20-ERC20',\n ETH_TO_AVAX = 'ERC20-ARC20',\n ETH_TO_BSC = 'ERC20-BEP20',\n AVAX_TO_TC_SUPPORTED = 'ARC20-TC',\n AVAX_TO_ETH = 'ARC20-ERC20',\n AVAX_TO_AVAX = 'ARC20-ARC20',\n AVAX_TO_BSC = 'ARC20-BEP20',\n BSC_TO_TC_SUPPORTED = 'BEP20-TC',\n BSC_TO_ETH = 'BEP20-ERC20',\n BSC_TO_AVAX = 'BEP20-ARC20',\n BSC_TO_BSC = 'BEP20-BEP20',\n}\n\nexport type Asset = {\n chain: Chain;\n symbol: string;\n ticker: string;\n synth?: boolean;\n};\n\nexport const AGG_SWAP = [QuoteMode.ETH_TO_ETH, QuoteMode.AVAX_TO_AVAX, QuoteMode.BSC_TO_BSC];\n\nexport const SWAP_IN = [\n QuoteMode.ETH_TO_TC_SUPPORTED,\n QuoteMode.ETH_TO_AVAX,\n QuoteMode.ETH_TO_BSC,\n QuoteMode.AVAX_TO_TC_SUPPORTED,\n QuoteMode.AVAX_TO_ETH,\n QuoteMode.AVAX_TO_BSC,\n QuoteMode.BSC_TO_TC_SUPPORTED,\n QuoteMode.BSC_TO_ETH,\n QuoteMode.BSC_TO_AVAX,\n];\n\nexport const SWAP_OUT = [\n QuoteMode.TC_SUPPORTED_TO_TC_SUPPORTED,\n QuoteMode.TC_SUPPORTED_TO_ETH,\n QuoteMode.TC_SUPPORTED_TO_AVAX,\n QuoteMode.TC_SUPPORTED_TO_BSC,\n];\n","export enum ERROR_TYPE {\n VALIDATION_ERROR = 'VALIDATION_ERROR',\n REQUEST_PARAMETER_ERROR = 'REQUEST_PARAMETER_ERROR',\n RESPONSE_PARSING_ERROR = 'RESPONSE_PARSING_ERROR',\n UNSUPPORTED = 'UNSUPPORTED',\n NOT_IMPLEMENTED = 'NOT_IMPLEMENTED',\n INCOMPATIBLE_ASSETS_OPERATIONS = 'INCOMPATIBLE_ASSETS_OPERATIONS',\n SERVICE_UNAVAILABLE = 'SERVICE_UNAVAILABLE',\n DOWN_FOR_MAINTENANCE = 'DOWN_FOR_MAINTENANCE',\n MISSING_INBOUND_INFO = 'MISSING_INBOUND_INFO',\n QUOTE_FETCHING_ERROR = 'QUOTE_FETCHING_ERROR',\n AIRDROP_ERROR = 'AIRDROP_ERROR',\n UNHANDLED_ERROR = 'UNHANDLED_ERROR',\n}\n\nexport enum ERROR_MODULE {\n // Controllers\n HEALTH_CONTROLLER = '1000',\n LIQUIDITY_CONTROLLER = '1001',\n PROVIDER_CONTROLLER = '1002',\n QUOTE_CONTROLLER = '1003',\n SWAP_CONTROLLER = '1004',\n UTIL_CONTROLLER = '1005',\n AIRDROP_CONTROLLER = '1006',\n // Entities\n PROVIDER = '2000',\n ASSET = '2001',\n TOKEN_LIST = '2002',\n // Quote entities\n QUOTE = '2100',\n QUOTE_TXN_DETAILS = '2101',\n // Providers\n THORCHAIN_PROVIDER = '3000',\n UNISWAPV2_ETH_PROVIDER = '3001',\n UNISWAPV3_ETH_PROVIDER = '3002',\n SUSHISWAP_ETH_PROVIDER = '3003',\n PANCAKESWAP_BSC_PROVIDER = '3004',\n PANCAKESWAP_ETH_PROVIDER = '3005',\n ONEINCH_ETH_PROVIDER = '3006',\n ONEINCH_BSC_PROVIDER = '3007',\n ONEINCH_AVAX_PROVIDER = '3008',\n ZEROX_ETH_PROVIDER = '3009',\n WOOFI_AVAX_PROVIDER = '3010',\n PANGOLIN_AVAX_PROVIDER = '3011',\n TRADERJOE_AVAX_PROVIDER = '3012',\n KYBER_ETH_PROVIDER = '3013',\n KYBER_AVAX_PROVIDER = '3014',\n WOOFI_BSC_PROVIDER = '3015',\n STARGATE_PROVIDER = '3016',\n // Utilities\n PROVIDER_UTIL = '4000',\n // Aggregator\n TXN_DETAILS = '5000',\n // AirDrop\n AIRDROP_UTIL = '6000',\n}\n\nexport enum ERROR_CODE {\n // 10xx - Generic\n INVALID_INPUT_PARAMETERS = '1000',\n UNKNOWN_PROVIDERS = '1001',\n CANNOT_FIND_INBOUND_ADDRESS = '1002',\n NO_INBOUND_ADDRESSES = '1003',\n CHAIN_HALTED_OR_UNSUPPORTED = '1004',\n MISSING_INPUT_PARAMETER = '1005',\n // 11xx - Type error\n INVALID_TYPE_GENERIC = '1100',\n INVALID_NUMBER_STRING = '1101',\n INVALID_NUMBER = '1102',\n INVALID_BOOLEAN = '1103',\n INVALID_OBJECT = '1104',\n INVALID_ARRAY = '1105',\n // 20xx - Quote request parameters\n SELL_AMOUNT_MUST_BE_POSITIVE_INTEGER = '2000',\n SELL_BUY_ASSETS_ARE_THE_SAME = '2001',\n MISSING_SOURCE_ADDRESS_FOR_SYNTH = '2002',\n AFF_ADDRESS_AND_BPS_OR_NEITHER = '2003',\n AFF_ADDRESS_TOO_LONG = '2004',\n AFF_BPS_INTEGER_MAX_500 = '2005',\n SOURCE_ADDRESS_INVALID_FOR_SELL_CHAIN = '2006',\n DESTINATION_ADDRESS_INVALID_FOR_BUY_CHAIN = '2007',\n PREFERRED_PROVIDER_NOT_SUPPORTED = '2008',\n DESTINATION_ADDRESS_SMART_CONTRACT = '2009',\n BUY_AMOUNT_MUST_BE_POSITIVE_INTEGER = '2010',\n SOURCE_ADDRESS_SMART_CONTRACT = '2011',\n // 21xx - Quote request providers issue\n INVALID_PROVIDER = '2100',\n MISSING_CROSS_CHAIN_PROVIDER = '2101',\n MISSING_AVAX_PROVIDER = '2102',\n MISSING_BSC_PROVIDER = '2103',\n MISSING_ETH_PROVIDER = '2104',\n INVALID_PROVIDER_FOR_SWAP_OUT = '2105',\n MISSING_ARB_PROVIDER = '2106',\n // 22xx - Quote request assets issue\n INVALID_CHAIN = '2200',\n INVALID_ASSET = '2201',\n INVALID_ASSET_IDENTIFIER = '2202',\n UNSUPPORTED_CHAIN = '2204',\n UNSUPPORTED_ASSET = '2203',\n UNSUPPORTED_ASSET_FOR_SWAPOUT = '2205',\n // 23xx - Invalid addresses\n INVALID_SOURCE_ADDRESS = '2300',\n INVALID_DESTINATION_ADDRESS = '2301',\n // 30xx - Thorchain\n THORNODE_QUOTE_GENERIC_ERROR = '3000',\n NOT_ENOUGH_SYNTH_BALANCE = '3001',\n SYNTH_MINTING_CAP_REACHED = '3002',\n // 40xx - Code logic error (not the client's fault)\n INVALID_QUOTE_MODE = '4000',\n NO_QUOTES = '4001',\n // 50xx - Service unavailable\n SERVICE_UNAVAILABLE_GENERIC = '5000',\n // 51xx - Missing gas data\n MISSING_GAS_DATA_GENERIC = '5100',\n // 52xx - Missing token info\n MISSING_TOKEN_INFO_GENERIC = '5200',\n CANT_FIND_TOKEN_LIST = '5201',\n NO_PRICE = '5202',\n PRICE_IS_STALE = '5203',\n // 60xx - Airdrop\n ADDRESS_NOT_WHITELISTED = '6000',\n ADDRESS_ALREADY_CLAIMED = '6001',\n // 90xx - Unhandled\n TEMPORARY_ERROR = '9999', // use only when waiting for a PR to be merged\n}\n\nexport type ErrorInfo = {\n status: number;\n revision: string;\n type?: ERROR_TYPE;\n module: ERROR_MODULE;\n code: ERROR_CODE;\n message?: string | undefined;\n stack?: string;\n identifier?: string;\n options?: ApiErrorOptions;\n displayMessageParams?: string[];\n};\n\nexport type ApiErrorOptions = {\n shouldLog?: boolean;\n shouldTrace?: boolean;\n shouldThrow?: boolean;\n};\n","import { ERROR_CODE } from './types.ts';\n\nexport const ERROR_DISPLAY_MESSAGES: Record<string, string> = {\n [ERROR_CODE.INVALID_INPUT_PARAMETERS]: 'Invalid input parameters: {0}.',\n [ERROR_CODE.UNKNOWN_PROVIDERS]: 'Unknown providers: {0}.',\n [ERROR_CODE.CANNOT_FIND_INBOUND_ADDRESS]: 'Cannot find inbound address.',\n [ERROR_CODE.NO_INBOUND_ADDRESSES]: 'No inbound addresses.',\n [ERROR_CODE.CHAIN_HALTED_OR_UNSUPPORTED]: 'Chain {0} halted or unsupported.',\n [ERROR_CODE.MISSING_INPUT_PARAMETER]: 'Missing input parameter: {0}.',\n [ERROR_CODE.INVALID_TYPE_GENERIC]: 'Invalid type',\n [ERROR_CODE.INVALID_NUMBER_STRING]: 'Invalid number string.',\n [ERROR_CODE.INVALID_NUMBER]: 'Invalid number.',\n [ERROR_CODE.INVALID_BOOLEAN]: 'Invalid boolean.',\n [ERROR_CODE.INVALID_OBJECT]: 'Invalid object.',\n [ERROR_CODE.INVALID_ARRAY]: 'Invalid array.',\n [ERROR_CODE.SELL_AMOUNT_MUST_BE_POSITIVE_INTEGER]: 'Sell amount must be a positive integer.',\n [ERROR_CODE.SELL_BUY_ASSETS_ARE_THE_SAME]: 'Sell and buy assets are the same.',\n [ERROR_CODE.MISSING_SOURCE_ADDRESS_FOR_SYNTH]: 'Source address is required for synth quote.',\n [ERROR_CODE.AFF_ADDRESS_AND_BPS_OR_NEITHER]:\n 'Must provide affiliateAddress and affiliateBasisPoints params, or neither.',\n [ERROR_CODE.AFF_ADDRESS_TOO_LONG]: 'affiliateAddress too long: 3 characters max.',\n [ERROR_CODE.AFF_BPS_INTEGER_MAX_500]:\n 'affiliateBasisPoints must be an integer between 0 and 100.',\n [ERROR_CODE.SOURCE_ADDRESS_INVALID_FOR_SELL_CHAIN]: 'Source address {0} invalid for sell chain.',\n [ERROR_CODE.DESTINATION_ADDRESS_INVALID_FOR_BUY_CHAIN]:\n 'Destination address {0} invalid for buy chain.',\n [ERROR_CODE.PREFERRED_PROVIDER_NOT_SUPPORTED]: 'Preferred provider not supported.',\n [ERROR_CODE.SOURCE_ADDRESS_SMART_CONTRACT]: 'Source address is a smart contract.',\n [ERROR_CODE.DESTINATION_ADDRESS_SMART_CONTRACT]: 'Destination address is a smart contract.',\n [ERROR_CODE.BUY_AMOUNT_MUST_BE_POSITIVE_INTEGER]: 'Buy amount must be a positive integer.',\n [ERROR_CODE.INVALID_PROVIDER]: 'Invalid provider {0}.',\n [ERROR_CODE.MISSING_CROSS_CHAIN_PROVIDER]: 'Missing cross-chain provider.',\n [ERROR_CODE.MISSING_AVAX_PROVIDER]: 'Missing AVAX provider.',\n [ERROR_CODE.MISSING_BSC_PROVIDER]: 'Missing BSC provider.',\n [ERROR_CODE.MISSING_ETH_PROVIDER]: 'Missing ETH provider.',\n [ERROR_CODE.MISSING_ARB_PROVIDER]: 'Missing ARB provider.',\n [ERROR_CODE.INVALID_PROVIDER_FOR_SWAP_OUT]: 'Invalid provider for swap out.',\n [ERROR_CODE.INVALID_CHAIN]: 'Invalid chain {0}.',\n [ERROR_CODE.INVALID_ASSET]: 'Invalid asset {0}.',\n [ERROR_CODE.UNSUPPORTED_CHAIN]: 'Unsupported chain {0}.',\n [ERROR_CODE.UNSUPPORTED_ASSET]: 'Unsupported asset {0}.',\n [ERROR_CODE.UNSUPPORTED_ASSET_FOR_SWAPOUT]: 'Unsupported asset {0} for swap out.',\n [ERROR_CODE.THORNODE_QUOTE_GENERIC_ERROR]: 'ThorNode quote generic error.',\n [ERROR_CODE.INVALID_SOURCE_ADDRESS]: 'Invalid source address {0}',\n [ERROR_CODE.INVALID_DESTINATION_ADDRESS]: 'Invalid destination address {0}',\n [ERROR_CODE.NOT_ENOUGH_SYNTH_BALANCE]:\n \"Source address doesn't have enough synth balance for this quote.\",\n [ERROR_CODE.SYNTH_MINTING_CAP_REACHED]: 'Synth minting cap reached.',\n [ERROR_CODE.INVALID_QUOTE_MODE]: 'Invalid quote mode.',\n [ERROR_CODE.NO_QUOTES]: 'No quotes to service this request.',\n [ERROR_CODE.SERVICE_UNAVAILABLE_GENERIC]: 'Service unavailable.',\n [ERROR_CODE.MISSING_GAS_DATA_GENERIC]: 'Missing gas data.',\n [ERROR_CODE.MISSING_TOKEN_INFO_GENERIC]: 'Missing token info.',\n [ERROR_CODE.CANT_FIND_TOKEN_LIST]: \"Can't find tokenlist {0}.\",\n [ERROR_CODE.NO_PRICE]: 'No price for asset {0}.',\n [ERROR_CODE.PRICE_IS_STALE]: 'Price is stale for asset {0}.',\n [ERROR_CODE.ADDRESS_NOT_WHITELISTED]: 'Address {0} not whitelisted for airdrop.',\n [ERROR_CODE.ADDRESS_ALREADY_CLAIMED]: 'Address {0} already claimed the airdrop.',\n};\n\nexport const getDisplayMessage = (code: ERROR_CODE, displayMessageParams: string[]) => {\n let displayMessage = ERROR_DISPLAY_MESSAGES[code];\n\n if (!displayMessage) return '';\n\n for (let i = 0; i < displayMessageParams.length; i++) {\n displayMessage = displayMessage?.replace(`{${i}}`, displayMessageParams[i]) ?? '';\n }\n\n return displayMessage;\n};\n","import { getDisplayMessage } from './displayMessages.ts';\nimport type { ApiErrorOptions, ERROR_CODE, ERROR_MODULE, ErrorInfo } from './types.ts';\nimport { ERROR_TYPE } from './types.ts';\n\nexport class ApiError extends Error {\n public readonly status: number;\n public readonly revision: string;\n public readonly type?: ERROR_TYPE;\n public readonly module: ERROR_MODULE;\n public readonly code: ERROR_CODE;\n public readonly message: string;\n public readonly display: string;\n public readonly stack?: string;\n public readonly options: ApiErrorOptions;\n public readonly displayMessageParams?: string[];\n\n constructor({\n status,\n revision,\n module,\n code,\n message,\n type,\n options: { shouldLog, shouldThrow, shouldTrace } = {\n shouldLog: true,\n shouldThrow: true,\n shouldTrace: true,\n },\n displayMessageParams,\n }: ErrorInfo) {\n const safeMessage = message || getDisplayMessage(code, displayMessageParams || []) || '';\n super(safeMessage);\n\n this.status = status;\n this.revision = revision || 'NO_REVISION';\n this.module = module;\n this.message = safeMessage;\n this.display = getDisplayMessage(code, displayMessageParams || []);\n this.code = code;\n this.type = type || ERROR_TYPE.UNHANDLED_ERROR;\n this.options = {\n shouldLog: shouldLog || true,\n shouldTrace: shouldTrace || true,\n shouldThrow: shouldThrow || false,\n };\n this.displayMessageParams = displayMessageParams || [];\n\n if (this.options.shouldTrace) Error.captureStackTrace(this);\n }\n\n public static fromErrorInfo(errorInfo: ErrorInfo): ApiError {\n return new ApiError(errorInfo);\n }\n\n public toErrorInfo(): ErrorInfo {\n return { ...this, identifier: this.identifier };\n }\n\n public get identifier(): string {\n return `${this.revision}-${this.type || 'NO_TYPE'}-${this.module}-${this.code}`;\n }\n\n public get displayMessage(): string {\n return getDisplayMessage(this.code, this.displayMessageParams || []);\n }\n\n public handle() {\n const message = `[${this.identifier}]: ${this.message}`;\n\n if (this.options.shouldLog) console.error(message, '\\n', this.stack || '');\n if (this.options.shouldThrow) throw Error(message, { cause: this.stack });\n\n return this.toErrorInfo();\n }\n}\n","export enum Chain {\n Arbitrum = 'ARB',\n Avalanche = 'AVAX',\n Binance = 'BNB',\n BinanceSmartChain = 'BSC',\n Bitcoin = 'BTC',\n BitcoinCash = 'BCH',\n Cosmos = 'GAIA',\n Dogecoin = 'DOGE',\n Ethereum = 'ETH',\n Kujira = 'KUJI',\n Litecoin = 'LTC',\n Maya = 'MAYA',\n Optimism = 'OP',\n Polygon = 'MATIC',\n THORChain = 'THOR',\n}\ntype ChainNameType = keyof typeof Chain;\n\nexport enum ContractAddress {\n ARB = '0x0000000000000000000000000000000000000000',\n AVAX = '0x0000000000000000000000000000000000000000',\n ETH = '0x0000000000000000000000000000000000000000',\n BSC = '0x0000000000000000000000000000000000000000',\n MATIC = '0x0000000000000000000000000000000000001010',\n OP = '0x4200000000000000000000000000000000000042',\n}\n\nexport enum DerivationPath {\n ARB = \"m/44'/60'/0'/0\",\n AVAX = \"m/44'/60'/0'/0\",\n BCH = \"m/44'/145'/0'/0\",\n BNB = \"m/44'/714'/0'/0\",\n BSC = \"m/44'/60'/0'/0\",\n BTC = \"m/84'/0'/0'/0\",\n DOGE = \"m/44'/3'/0'/0\",\n ETH = \"m/44'/60'/0'/0\",\n GAIA = \"m/44'/118'/0'/0\",\n KUJI = \"m/44'/118'/0'/0\",\n LTC = \"m/84'/2'/0'/0\",\n MATIC = \"m/44'/60'/0'/0\",\n MAYA = \"m/44'/931'/0'/0\",\n OP = \"m/44'/60'/0'/0\",\n THOR = \"m/44'/931'/0'/0\",\n}\n\nexport type DerivationPathArray = [number, number, number, number, number];\n\nexport const NetworkDerivationPath: Record<Chain, DerivationPathArray> = {\n ARB: [44, 60, 0, 0, 0],\n AVAX: [44, 60, 0, 0, 0],\n BCH: [44, 145, 0, 0, 0],\n BNB: [44, 714, 0, 0, 0],\n BSC: [44, 60, 0, 0, 0],\n BTC: [84, 0, 0, 0, 0],\n DOGE: [44, 3, 0, 0, 0],\n ETH: [44, 60, 0, 0, 0],\n GAIA: [44, 118, 0, 0, 0],\n KUJI: [44, 118, 0, 0, 0],\n LTC: [84, 2, 0, 0, 0],\n MATIC: [44, 60, 0, 0, 0],\n MAYA: [44, 931, 0, 0, 0],\n OP: [44, 60, 0, 0, 0],\n THOR: [44, 931, 0, 0, 0],\n};\n\nexport enum BaseDecimal {\n ARB = 18,\n AVAX = 18,\n BCH = 8,\n BNB = 8,\n BSC = 18,\n BTC = 8,\n DASH = 8,\n DOGE = 8,\n ETH = 18,\n GAIA = 6,\n KUJI = 6,\n LTC = 8,\n MATIC = 18,\n MAYA = 10,\n OP = 18,\n THOR = 8,\n}\n\nexport type EVMChain =\n | Chain.Ethereum\n | Chain.Avalanche\n | Chain.BinanceSmartChain\n | Chain.Arbitrum\n | Chain.Optimism\n | Chain.Polygon;\n\nexport const EVMChainList: EVMChain[] = [\n Chain.Ethereum,\n Chain.Avalanche,\n Chain.BinanceSmartChain,\n Chain.Arbitrum,\n Chain.Optimism,\n Chain.Polygon,\n];\n\nexport type UTXOChain = Chain.Bitcoin | Chain.BitcoinCash | Chain.Dogecoin | Chain.Litecoin;\n\nexport const UTXOChainList: UTXOChain[] = [\n Chain.Bitcoin,\n Chain.BitcoinCash,\n Chain.Dogecoin,\n Chain.Litecoin,\n];\n\nexport type CosmosChain =\n | Chain.Cosmos\n | Chain.THORChain\n | Chain.Binance\n | Chain.Maya\n | Chain.Kujira;\n\nexport const CosmosChainList: CosmosChain[] = [Chain.Cosmos, Chain.THORChain, Chain.Binance];\n\nexport const TCSupportedChainList = [\n Chain.Avalanche,\n Chain.Binance,\n Chain.BinanceSmartChain,\n Chain.Bitcoin,\n Chain.BitcoinCash,\n Chain.Cosmos,\n Chain.Dogecoin,\n Chain.Ethereum,\n Chain.Litecoin,\n Chain.THORChain,\n];\n\nexport enum ChainId {\n Arbitrum = '42161',\n ArbitrumHex = '0xa4b1',\n Avalanche = '43114',\n AvalancheHex = '0xa86a',\n Binance = 'Binance-Chain-Tigris',\n BinanceSmartChain = '56',\n BinanceSmartChainHex = '0x38',\n Bitcoin = 'bitcoin',\n BitcoinCash = 'bitcoincash',\n Cosmos = 'cosmoshub-4',\n Dogecoin = 'dogecoin',\n Kujira = 'kaiyo-1',\n Ethereum = '1',\n EthereumHex = '0x1',\n Litecoin = 'litecoin',\n Maya = 'mayachain-mainnet-v1',\n MayaStagenet = 'mayachain-stagenet-v1',\n Optimism = '10',\n OptimismHex = '0xa',\n Polygon = '137',\n PolygonHex = '0x89',\n THORChain = 'thorchain-mainnet-v1',\n THORChainStagenet = 'thorchain-stagenet-v2',\n}\n\nexport enum RPCUrl {\n Arbitrum = 'https://arb1.arbitrum.io/rpc',\n Avalanche = 'https://node-router.thorswap.net/avalanche-c',\n Binance = '',\n BinanceSmartChain = 'https://bsc-dataseed.binance.org',\n Bitcoin = 'https://node-router.thorswap.net/bitcoin',\n BitcoinCash = 'https://node-router.thorswap.net/bitcoin-cash',\n Cosmos = 'https://node-router.thorswap.net/cosmos/rpc',\n Kujira = 'https://rpc-kujira.synergynodes.com/',\n Dogecoin = 'https://node-router.thorswap.net/dogecoin',\n Ethereum = 'https://node-router.thorswap.net/ethereum',\n Litecoin = 'https://node-router.thorswap.net/litecoin',\n Maya = 'https://tendermint.mayachain.info',\n MayaStagenet = 'https://stagenet.tendermint.mayachain.info',\n Optimism = 'https://mainnet.optimism.io',\n Polygon = 'https://polygon-rpc.com',\n THORChain = 'https://rpc.thorswap.net',\n THORChainStagenet = 'https://stagenet-rpc.ninerealms.com',\n}\n\nexport enum ApiUrl {\n Cosmos = 'https://node-router.thorswap.net/cosmos/rest',\n Kujira = 'https://lcd-kujira.synergynodes.com/',\n MayanodeMainnet = 'https://mayanode.mayachain.info',\n MayanodeStagenet = 'https://stagenet.mayanode.mayachain.info',\n ThornodeMainnet = 'https://thornode.thorswap.net',\n ThornodeStagenet = 'https://stagenet-thornode.ninerealms.com',\n ThorswapApi = 'https://api.thorswap.net',\n ThorswapStatic = 'https://static.thorswap.net',\n}\n\nconst chains = Object.values(Chain) as Chain[];\nconst chainNames = Object.keys(Chain) as ChainNameType[];\n\nconst ChainToChainName = chains.reduce(\n (acc, chain) => {\n const chainName = chainNames.find((key) => Chain[key as ChainNameType] === chain);\n\n if (chainName) acc[chain] = chainName;\n\n return acc;\n },\n {} as { [key in Chain]: ChainNameType },\n);\n\nexport const ChainToChainId = chains.reduce(\n (acc, chain) => {\n acc[chain] = ChainId[ChainToChainName[chain]];\n return acc;\n },\n {} as { [key in Chain]: ChainId },\n);\n\nexport const ChainToRPC = chains.reduce(\n (acc, chain) => {\n acc[chain] = RPCUrl[ChainToChainName[chain]];\n return acc;\n },\n {} as { [key in Chain]: RPCUrl },\n);\n\nexport const ChainToHexChainId = chains.reduce(\n (acc, chain) => {\n const chainString = `${ChainToChainName[chain]}Hex` as keyof typeof ChainId;\n\n acc[chain] = ChainId[chainString];\n return acc;\n },\n {} as { [key in Chain]: ChainId },\n);\n\nexport const ChainIdToChain: Record<ChainId, Chain> = {\n [ChainId.ArbitrumHex]: Chain.Arbitrum,\n [ChainId.Arbitrum]: Chain.Arbitrum,\n [ChainId.AvalancheHex]: Chain.Avalanche,\n [ChainId.Avalanche]: Chain.Avalanche,\n [ChainId.BinanceSmartChainHex]: Chain.BinanceSmartChain,\n [ChainId.BinanceSmartChain]: Chain.BinanceSmartChain,\n [ChainId.Binance]: Chain.Binance,\n [ChainId.BitcoinCash]: Chain.BitcoinCash,\n [ChainId.Bitcoin]: Chain.Bitcoin,\n [ChainId.Cosmos]: Chain.Cosmos,\n [ChainId.Dogecoin]: Chain.Dogecoin,\n [ChainId.EthereumHex]: Chain.Ethereum,\n [ChainId.Kujira]: Chain.Kujira,\n [ChainId.Ethereum]: Chain.Ethereum,\n [ChainId.Litecoin]: Chain.Litecoin,\n [ChainId.MayaStagenet]: Chain.Maya,\n [ChainId.Maya]: Chain.Maya,\n [ChainId.OptimismHex]: Chain.Optimism,\n [ChainId.Optimism]: Chain.Optimism,\n [ChainId.PolygonHex]: Chain.Polygon,\n [ChainId.Polygon]: Chain.Polygon,\n [ChainId.THORChainStagenet]: Chain.THORChain,\n [ChainId.THORChain]: Chain.THORChain,\n};\n\nexport const ChainToExplorerUrl: Record<Chain, string> = {\n [Chain.Arbitrum]: 'https://arbiscan.io',\n [Chain.Avalanche]: 'https://snowtrace.io',\n [Chain.BinanceSmartChain]: 'https://bscscan.com',\n [Chain.Binance]: 'https://explorer.binance.org',\n [Chain.BitcoinCash]: 'https://www.blockchair.com/bitcoin-cash',\n [Chain.Bitcoin]: 'https://blockchair.com/bitcoin',\n [Chain.Cosmos]: 'https://cosmos.bigdipper.live',\n [Chain.Dogecoin]: 'https://blockchair.com/dogecoin',\n [Chain.Kujira]: 'https://finder.kujira.network/kaiyo-1',\n [Chain.Ethereum]: 'https://etherscan.io',\n [Chain.Litecoin]: 'https://blockchair.com/litecoin',\n [Chain.Maya]: 'https://www.mayascan.org',\n [Chain.Optimism]: 'https://optimistic.etherscan.io',\n [Chain.Polygon]: 'https://polygonscan.com',\n [Chain.THORChain]: 'https://runescan.io',\n};\n","export type GetAddressAndPubKeyResponse = {\n bech32_address: string;\n compressed_pk: any;\n error_message: string;\n return_code: number;\n};\n\nexport type Signature = {\n pub_key: {\n type: string;\n value: string;\n };\n sequence: string;\n signature: string;\n};\n\nexport enum ErrorCode {\n NoError = 0x9000,\n}\n\nexport enum MemoType {\n BOND = 'BOND',\n DEPOSIT = '+',\n LEAVE = 'LEAVE',\n THORNAME_REGISTER = '~',\n UNBOND = 'UNBOND',\n WITHDRAW = '-',\n OPEN_LOAN = '$+',\n CLOSE_LOAN = '$-',\n}\n","export enum FeeOption {\n Average = 'average',\n Fast = 'fast',\n Fastest = 'fastest',\n}\n\nexport type WalletTxParams = {\n feeOptionKey?: FeeOption;\n from?: string;\n memo?: string; // optional memo to pass\n recipient: string;\n};\n\nexport type EVMTxBaseParams<T = bigint> = {\n to?: string;\n from?: string;\n nonce?: number;\n gasLimit?: T;\n data?: string;\n value?: T;\n chainId?: T;\n};\n","export enum WalletOption {\n 'KEYSTORE' = 'KEYSTORE',\n 'KEEPKEY' = 'KEEPKEY',\n 'XDEFI' = 'XDEFI',\n 'METAMASK' = 'METAMASK',\n 'COINBASE_WEB' = 'COINBASE_WEB',\n 'TREZOR' = 'TREZOR',\n 'TRUSTWALLET_WEB' = 'TRUSTWALLET_WEB',\n 'LEDGER' = 'LEDGER',\n 'KEPLR' = 'KEPLR',\n 'OKX' = 'OKX',\n 'OKX_MOBILE' = 'OKX_MOBILE',\n 'BRAVE' = 'BRAVE',\n 'WALLETCONNECT' = 'WALLETCONNECT',\n}\n\nexport type EVMWalletOptions =\n | WalletOption.BRAVE\n | WalletOption.OKX_MOBILE\n | WalletOption.METAMASK\n | WalletOption.TRUSTWALLET_WEB\n | WalletOption.COINBASE_WEB;\n"],"names":["erc20ABI","TCEthereumVaultAbi","TCAvalancheDepositABI","TCBscDepositABI","QuoteMode","AGG_SWAP","SWAP_IN","SWAP_OUT","ERROR_TYPE","ERROR_MODULE","ERROR_CODE","ERROR_DISPLAY_MESSAGES","getDisplayMessage","code","displayMessageParams","displayMessage","i","ApiError","status","revision","module","message","type","shouldLog","shouldThrow","shouldTrace","safeMessage","__publicField","errorInfo","Chain","ContractAddress","DerivationPath","NetworkDerivationPath","BaseDecimal","EVMChainList","UTXOChainList","CosmosChainList","TCSupportedChainList","ChainId","RPCUrl","ApiUrl","chains","chainNames","ChainToChainName","acc","chain","chainName","key","ChainToChainId","ChainToRPC","ChainToHexChainId","chainString","ChainIdToChain","ChainToExplorerUrl","ErrorCode","MemoType","FeeOption","WalletOption"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/abis/erc20.ts","../src/abis/tcEthVault.ts","../src/commonTypes.ts","../src/errors/types.ts","../src/errors/displayMessages.ts","../src/errors/apiError.ts","../src/network.ts","../src/thorchain.ts","../src/transactions.ts","../src/wallet.ts"],"sourcesContent":["export const erc20ABI = [\n { inputs: [], stateMutability: 'nonpayable', type: 'constructor' },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'owner', type: 'address' },\n { indexed: true, internalType: 'address', name: 'spender', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'value', type: 'uint256' },\n ],\n name: 'Approval',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'from', type: 'address' },\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'value', type: 'uint256' },\n ],\n name: 'Transfer',\n type: 'event',\n },\n {\n inputs: [\n { internalType: 'address', name: '', type: 'address' },\n { internalType: 'address', name: '', type: 'address' },\n ],\n name: 'allowance',\n outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'spender', type: 'address' },\n { internalType: 'uint256', name: 'value', type: 'uint256' },\n ],\n name: 'approve',\n outputs: [{ internalType: 'bool', name: 'success', type: 'bool' }],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [{ internalType: 'address', name: '', type: 'address' }],\n name: 'balanceOf',\n outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'decimals',\n outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'name',\n outputs: [{ internalType: 'string', name: '', type: 'string' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'symbol',\n outputs: [{ internalType: 'string', name: '', type: 'string' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'totalSupply',\n outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'to', type: 'address' },\n { internalType: 'uint256', name: 'value', type: 'uint256' },\n ],\n name: 'transfer',\n outputs: [{ internalType: 'bool', name: 'success', type: 'bool' }],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'from', type: 'address' },\n { internalType: 'address', name: 'to', type: 'address' },\n { internalType: 'uint256', name: 'value', type: 'uint256' },\n ],\n name: 'transferFrom',\n outputs: [{ internalType: 'bool', name: 'success', type: 'bool' }],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n];\n","export const TCEthereumVaultAbi = [\n {\n inputs: [{ internalType: 'address', name: 'rune', type: 'address' }],\n stateMutability: 'nonpayable',\n type: 'constructor',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: true, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'Deposit',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferAllowance',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOut',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'target', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'address', name: 'finalAsset', type: 'address' },\n { indexed: false, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOutAndCall',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n indexed: false,\n internalType: 'struct THORChain_Router.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'VaultTransfer',\n type: 'event',\n },\n {\n inputs: [],\n name: 'RUNE',\n outputs: [{ internalType: 'address', name: '', type: 'address' }],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'deposit',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n { internalType: 'uint256', name: 'expiration', type: 'uint256' },\n ],\n name: 'depositWithExpiry',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address payable', name: 'asgard', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n internalType: 'struct THORChain_Router.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'returnVaultAssets',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address', name: 'newVault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferAllowance',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'to', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOut',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'aggregator', type: 'address' },\n { internalType: 'address', name: 'finalToken', type: 'address' },\n { internalType: 'address', name: 'to', type: 'address' },\n { internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOutAndCall',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'token', type: 'address' },\n ],\n name: 'vaultAllowance',\n outputs: [{ internalType: 'uint256', name: 'amount', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n];\n\nexport const TCAvalancheDepositABI = [\n { inputs: [], stateMutability: 'nonpayable', type: 'constructor' },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: true, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'Deposit',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferAllowance',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOut',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'target', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'address', name: 'finalAsset', type: 'address' },\n { indexed: false, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOutAndCall',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n indexed: false,\n internalType: 'struct AvaxRouter.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'VaultTransfer',\n type: 'event',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'deposit',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n { internalType: 'uint256', name: 'expiration', type: 'uint256' },\n ],\n name: 'depositWithExpiry',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address payable', name: 'asgard', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n internalType: 'struct AvaxRouter.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'returnVaultAssets',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address', name: 'newVault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferAllowance',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'to', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOut',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'target', type: 'address' },\n { internalType: 'address', name: 'finalToken', type: 'address' },\n { internalType: 'address', name: 'to', type: 'address' },\n { internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOutAndCall',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'token', type: 'address' },\n ],\n name: 'vaultAllowance',\n outputs: [{ internalType: 'uint256', name: 'amount', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n];\n\nexport const TCBscDepositABI = [\n { inputs: [], stateMutability: 'nonpayable', type: 'constructor' },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: true, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'Deposit',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferAllowance',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'address', name: 'asset', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOut',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'vault', type: 'address' },\n { indexed: false, internalType: 'address', name: 'target', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },\n { indexed: false, internalType: 'address', name: 'finalAsset', type: 'address' },\n { indexed: false, internalType: 'address', name: 'to', type: 'address' },\n { indexed: false, internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'TransferOutAndCall',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: 'address', name: 'oldVault', type: 'address' },\n { indexed: true, internalType: 'address', name: 'newVault', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n indexed: false,\n internalType: 'struct THORChain_Router.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { indexed: false, internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'VaultTransfer',\n type: 'event',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n { internalType: 'uint256', name: 'expiration', type: 'uint256' },\n ],\n name: 'depositWithExpiry',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address payable', name: 'asgard', type: 'address' },\n {\n components: [\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n ],\n internalType: 'struct THORChain_Router.Coin[]',\n name: 'coins',\n type: 'tuple[]',\n },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'returnVaultAssets',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'router', type: 'address' },\n { internalType: 'address', name: 'newVault', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferAllowance',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'to', type: 'address' },\n { internalType: 'address', name: 'asset', type: 'address' },\n { internalType: 'uint256', name: 'amount', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOut',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address payable', name: 'target', type: 'address' },\n { internalType: 'address', name: 'finalToken', type: 'address' },\n { internalType: 'address', name: 'to', type: 'address' },\n { internalType: 'uint256', name: 'amountOutMin', type: 'uint256' },\n { internalType: 'string', name: 'memo', type: 'string' },\n ],\n name: 'transferOutAndCall',\n outputs: [],\n stateMutability: 'payable',\n type: 'function',\n },\n {\n inputs: [\n { internalType: 'address', name: 'vault', type: 'address' },\n { internalType: 'address', name: 'token', type: 'address' },\n ],\n name: 'vaultAllowance',\n outputs: [{ internalType: 'uint256', name: 'amount', type: 'uint256' }],\n stateMutability: 'view',\n type: 'function',\n },\n];\n","import type { Chain, CosmosChain, EVMChain, UTXOChain } from './network.ts';\nimport type { WalletOption } from './wallet.ts';\n\ntype ConnectMethodNames =\n | 'connectEVMWallet'\n | 'connectKeplr'\n | 'connectKeystore'\n | 'connectKeepkey'\n | 'connectLedger'\n | 'connectOkx'\n | 'connectTrezor'\n | 'connectWalletconnect'\n | 'connectXDEFI';\n\ntype ChainWallet = {\n address: string;\n balance: any[];\n walletType: WalletOption;\n};\n\nexport type ConnectConfig = {\n stagenet?: boolean;\n /**\n * @required\n */\n thorswapApiKey?: string;\n /**\n * @required for AVAX & BSC\n */\n covalentApiKey?: string;\n /**\n * @required for ETH\n */\n ethplorerApiKey?: string;\n /**\n * @required for BTC, BCH, LTC, DOGE\n */\n blockchairApiKey?: string;\n /**\n * @deprecated - use blockchairApiKey instead\n */\n utxoApiKey?: string;\n /**\n * @required for Walletconnect\n */\n walletConnectProjectId?: string;\n /**\n * @optional for Trezor config\n */\n trezorManifest?: {\n email: string;\n appUrl: string;\n };\n /**\n * @optional for KeepKey config\n */\n keepkeyConfig?: {\n apiKey: string;\n pairingInfo: {\n name: string;\n imageUrl: string;\n basePath: string;\n url: string;\n };\n };\n};\n\nexport type AddChainWalletParams = {\n chain: Chain;\n wallet: ChainWallet;\n walletMethods: any;\n};\n\nexport type Witness = {\n value: number;\n script: Buffer;\n};\n\ntype ApisType = { [key in UTXOChain]?: string | any } & {\n [key in EVMChain]?: string | any;\n} & {\n [key in CosmosChain]?: string;\n};\n\nexport type ConnectWalletParams = {\n addChain: (params: AddChainWalletParams) => void;\n config: ConnectConfig;\n rpcUrls: { [chain in Chain]?: string };\n apis: ApisType;\n};\n\nexport type ExtendParams<WalletConnectMethodNames = ''> = {\n excludedChains?: Chain[];\n config?: ConnectConfig;\n rpcUrls?: { [chain in Chain]?: string };\n apis?: ApisType;\n wallets: {\n connectMethodName: ConnectMethodNames | WalletConnectMethodNames;\n connect: (params: ConnectWalletParams) => (...params: any) => Promise<any>;\n }[];\n};\n\nexport enum QuoteMode {\n TC_SUPPORTED_TO_TC_SUPPORTED = 'TC-TC',\n TC_SUPPORTED_TO_ETH = 'TC-ERC20',\n TC_SUPPORTED_TO_AVAX = 'TC-ARC20',\n TC_SUPPORTED_TO_BSC = 'TC-BEP20',\n ETH_TO_TC_SUPPORTED = 'ERC20-TC',\n ETH_TO_ETH = 'ERC20-ERC20',\n ETH_TO_AVAX = 'ERC20-ARC20',\n ETH_TO_BSC = 'ERC20-BEP20',\n AVAX_TO_TC_SUPPORTED = 'ARC20-TC',\n AVAX_TO_ETH = 'ARC20-ERC20',\n AVAX_TO_AVAX = 'ARC20-ARC20',\n AVAX_TO_BSC = 'ARC20-BEP20',\n BSC_TO_TC_SUPPORTED = 'BEP20-TC',\n BSC_TO_ETH = 'BEP20-ERC20',\n BSC_TO_AVAX = 'BEP20-ARC20',\n BSC_TO_BSC = 'BEP20-BEP20',\n}\n\nexport type Asset = {\n chain: Chain;\n symbol: string;\n ticker: string;\n synth?: boolean;\n};\n\nexport const AGG_SWAP = [QuoteMode.ETH_TO_ETH, QuoteMode.AVAX_TO_AVAX, QuoteMode.BSC_TO_BSC];\n\nexport const SWAP_IN = [\n QuoteMode.ETH_TO_TC_SUPPORTED,\n QuoteMode.ETH_TO_AVAX,\n QuoteMode.ETH_TO_BSC,\n QuoteMode.AVAX_TO_TC_SUPPORTED,\n QuoteMode.AVAX_TO_ETH,\n QuoteMode.AVAX_TO_BSC,\n QuoteMode.BSC_TO_TC_SUPPORTED,\n QuoteMode.BSC_TO_ETH,\n QuoteMode.BSC_TO_AVAX,\n];\n\nexport const SWAP_OUT = [\n QuoteMode.TC_SUPPORTED_TO_TC_SUPPORTED,\n QuoteMode.TC_SUPPORTED_TO_ETH,\n QuoteMode.TC_SUPPORTED_TO_AVAX,\n QuoteMode.TC_SUPPORTED_TO_BSC,\n];\n","export enum ERROR_TYPE {\n VALIDATION_ERROR = 'VALIDATION_ERROR',\n REQUEST_PARAMETER_ERROR = 'REQUEST_PARAMETER_ERROR',\n RESPONSE_PARSING_ERROR = 'RESPONSE_PARSING_ERROR',\n UNSUPPORTED = 'UNSUPPORTED',\n NOT_IMPLEMENTED = 'NOT_IMPLEMENTED',\n INCOMPATIBLE_ASSETS_OPERATIONS = 'INCOMPATIBLE_ASSETS_OPERATIONS',\n SERVICE_UNAVAILABLE = 'SERVICE_UNAVAILABLE',\n DOWN_FOR_MAINTENANCE = 'DOWN_FOR_MAINTENANCE',\n MISSING_INBOUND_INFO = 'MISSING_INBOUND_INFO',\n QUOTE_FETCHING_ERROR = 'QUOTE_FETCHING_ERROR',\n AIRDROP_ERROR = 'AIRDROP_ERROR',\n UNHANDLED_ERROR = 'UNHANDLED_ERROR',\n}\n\nexport enum ERROR_MODULE {\n // Controllers\n HEALTH_CONTROLLER = '1000',\n LIQUIDITY_CONTROLLER = '1001',\n PROVIDER_CONTROLLER = '1002',\n QUOTE_CONTROLLER = '1003',\n SWAP_CONTROLLER = '1004',\n UTIL_CONTROLLER = '1005',\n AIRDROP_CONTROLLER = '1006',\n // Entities\n PROVIDER = '2000',\n ASSET = '2001',\n TOKEN_LIST = '2002',\n // Quote entities\n QUOTE = '2100',\n QUOTE_TXN_DETAILS = '2101',\n // Providers\n THORCHAIN_PROVIDER = '3000',\n UNISWAPV2_ETH_PROVIDER = '3001',\n UNISWAPV3_ETH_PROVIDER = '3002',\n SUSHISWAP_ETH_PROVIDER = '3003',\n PANCAKESWAP_BSC_PROVIDER = '3004',\n PANCAKESWAP_ETH_PROVIDER = '3005',\n ONEINCH_ETH_PROVIDER = '3006',\n ONEINCH_BSC_PROVIDER = '3007',\n ONEINCH_AVAX_PROVIDER = '3008',\n ZEROX_ETH_PROVIDER = '3009',\n WOOFI_AVAX_PROVIDER = '3010',\n PANGOLIN_AVAX_PROVIDER = '3011',\n TRADERJOE_AVAX_PROVIDER = '3012',\n KYBER_ETH_PROVIDER = '3013',\n KYBER_AVAX_PROVIDER = '3014',\n WOOFI_BSC_PROVIDER = '3015',\n STARGATE_PROVIDER = '3016',\n // Utilities\n PROVIDER_UTIL = '4000',\n // Aggregator\n TXN_DETAILS = '5000',\n // AirDrop\n AIRDROP_UTIL = '6000',\n}\n\nexport enum ERROR_CODE {\n // 10xx - Generic\n INVALID_INPUT_PARAMETERS = '1000',\n UNKNOWN_PROVIDERS = '1001',\n CANNOT_FIND_INBOUND_ADDRESS = '1002',\n NO_INBOUND_ADDRESSES = '1003',\n CHAIN_HALTED_OR_UNSUPPORTED = '1004',\n MISSING_INPUT_PARAMETER = '1005',\n // 11xx - Type error\n INVALID_TYPE_GENERIC = '1100',\n INVALID_NUMBER_STRING = '1101',\n INVALID_NUMBER = '1102',\n INVALID_BOOLEAN = '1103',\n INVALID_OBJECT = '1104',\n INVALID_ARRAY = '1105',\n // 20xx - Quote request parameters\n SELL_AMOUNT_MUST_BE_POSITIVE_INTEGER = '2000',\n SELL_BUY_ASSETS_ARE_THE_SAME = '2001',\n MISSING_SOURCE_ADDRESS_FOR_SYNTH = '2002',\n AFF_ADDRESS_AND_BPS_OR_NEITHER = '2003',\n AFF_ADDRESS_TOO_LONG = '2004',\n AFF_BPS_INTEGER_MAX_500 = '2005',\n SOURCE_ADDRESS_INVALID_FOR_SELL_CHAIN = '2006',\n DESTINATION_ADDRESS_INVALID_FOR_BUY_CHAIN = '2007',\n PREFERRED_PROVIDER_NOT_SUPPORTED = '2008',\n DESTINATION_ADDRESS_SMART_CONTRACT = '2009',\n BUY_AMOUNT_MUST_BE_POSITIVE_INTEGER = '2010',\n SOURCE_ADDRESS_SMART_CONTRACT = '2011',\n SWAP_AMOUNT_TOO_LOW = '2012',\n // 21xx - Quote request providers issue\n INVALID_PROVIDER = '2100',\n MISSING_CROSS_CHAIN_PROVIDER = '2101',\n MISSING_AVAX_PROVIDER = '2102',\n MISSING_BSC_PROVIDER = '2103',\n MISSING_ETH_PROVIDER = '2104',\n INVALID_PROVIDER_FOR_SWAP_OUT = '2105',\n MISSING_ARB_PROVIDER = '2106',\n // 22xx - Quote request assets issue\n INVALID_CHAIN = '2200',\n INVALID_ASSET = '2201',\n INVALID_ASSET_IDENTIFIER = '2202',\n UNSUPPORTED_CHAIN = '2204',\n UNSUPPORTED_ASSET = '2203',\n UNSUPPORTED_ASSET_FOR_SWAPOUT = '2205',\n // 23xx - Invalid addresses\n INVALID_SOURCE_ADDRESS = '2300',\n INVALID_DESTINATION_ADDRESS = '2301',\n // 30xx - Thorchain\n THORNODE_QUOTE_GENERIC_ERROR = '3000',\n NOT_ENOUGH_SYNTH_BALANCE = '3001',\n SYNTH_MINTING_CAP_REACHED = '3002',\n // 40xx - Code logic error (not the client's fault)\n INVALID_QUOTE_MODE = '4000',\n NO_QUOTES = '4001',\n // 50xx - Service unavailable\n SERVICE_UNAVAILABLE_GENERIC = '5000',\n // 51xx - Missing gas data\n MISSING_GAS_DATA_GENERIC = '5100',\n // 52xx - Missing token info\n MISSING_TOKEN_INFO_GENERIC = '5200',\n CANT_FIND_TOKEN_LIST = '5201',\n NO_PRICE = '5202',\n PRICE_IS_STALE = '5203',\n // 60xx - Airdrop\n ADDRESS_NOT_WHITELISTED = '6000',\n ADDRESS_ALREADY_CLAIMED = '6001',\n // 90xx - Unhandled\n TEMPORARY_ERROR = '9999', // use only when waiting for a PR to be merged\n}\n\nexport type ErrorInfo = {\n status: number;\n revision: string;\n type?: ERROR_TYPE;\n module: ERROR_MODULE;\n code: ERROR_CODE;\n message?: string | undefined;\n stack?: string;\n identifier?: string;\n options?: ApiErrorOptions;\n displayMessageParams?: string[];\n};\n\nexport type ApiErrorOptions = {\n shouldLog?: boolean;\n shouldTrace?: boolean;\n shouldThrow?: boolean;\n};\n","import { ERROR_CODE } from './types.ts';\n\nexport const ERROR_DISPLAY_MESSAGES: Record<string, string> = {\n [ERROR_CODE.INVALID_INPUT_PARAMETERS]: 'Invalid input parameters: {0}.',\n [ERROR_CODE.UNKNOWN_PROVIDERS]: 'Unknown providers: {0}.',\n [ERROR_CODE.CANNOT_FIND_INBOUND_ADDRESS]: 'Cannot find inbound address.',\n [ERROR_CODE.NO_INBOUND_ADDRESSES]: 'No inbound addresses.',\n [ERROR_CODE.CHAIN_HALTED_OR_UNSUPPORTED]: 'Chain {0} halted or unsupported.',\n [ERROR_CODE.MISSING_INPUT_PARAMETER]: 'Missing input parameter: {0}.',\n [ERROR_CODE.INVALID_TYPE_GENERIC]: 'Invalid type',\n [ERROR_CODE.INVALID_NUMBER_STRING]: 'Invalid number string.',\n [ERROR_CODE.INVALID_NUMBER]: 'Invalid number.',\n [ERROR_CODE.INVALID_BOOLEAN]: 'Invalid boolean.',\n [ERROR_CODE.INVALID_OBJECT]: 'Invalid object.',\n [ERROR_CODE.INVALID_ARRAY]: 'Invalid array.',\n [ERROR_CODE.SELL_AMOUNT_MUST_BE_POSITIVE_INTEGER]: 'Sell amount must be a positive integer.',\n [ERROR_CODE.SELL_BUY_ASSETS_ARE_THE_SAME]: 'Sell and buy assets are the same.',\n [ERROR_CODE.MISSING_SOURCE_ADDRESS_FOR_SYNTH]: 'Source address is required for synth quote.',\n [ERROR_CODE.AFF_ADDRESS_AND_BPS_OR_NEITHER]:\n 'Must provide affiliateAddress and affiliateBasisPoints params, or neither.',\n [ERROR_CODE.AFF_ADDRESS_TOO_LONG]: 'affiliateAddress too long: 4 characters max.',\n [ERROR_CODE.AFF_BPS_INTEGER_MAX_500]:\n 'affiliateBasisPoints must be an integer between 0 and 100.',\n [ERROR_CODE.SOURCE_ADDRESS_INVALID_FOR_SELL_CHAIN]: 'Source address {0} invalid for sell chain.',\n [ERROR_CODE.DESTINATION_ADDRESS_INVALID_FOR_BUY_CHAIN]:\n 'Destination address {0} invalid for buy chain.',\n [ERROR_CODE.PREFERRED_PROVIDER_NOT_SUPPORTED]: 'Preferred provider not supported.',\n [ERROR_CODE.SOURCE_ADDRESS_SMART_CONTRACT]: 'Source address is a smart contract.',\n [ERROR_CODE.SWAP_AMOUNT_TOO_LOW]: 'Swap amount too low for this pair.',\n [ERROR_CODE.DESTINATION_ADDRESS_SMART_CONTRACT]: 'Destination address is a smart contract.',\n [ERROR_CODE.BUY_AMOUNT_MUST_BE_POSITIVE_INTEGER]: 'Buy amount must be a positive integer.',\n [ERROR_CODE.INVALID_PROVIDER]: 'Invalid provider {0}.',\n [ERROR_CODE.MISSING_CROSS_CHAIN_PROVIDER]: 'Missing cross-chain provider.',\n [ERROR_CODE.MISSING_AVAX_PROVIDER]: 'Missing AVAX provider.',\n [ERROR_CODE.MISSING_BSC_PROVIDER]: 'Missing BSC provider.',\n [ERROR_CODE.MISSING_ETH_PROVIDER]: 'Missing ETH provider.',\n [ERROR_CODE.MISSING_ARB_PROVIDER]: 'Missing ARB provider.',\n [ERROR_CODE.INVALID_PROVIDER_FOR_SWAP_OUT]: 'Invalid provider for swap out.',\n [ERROR_CODE.INVALID_CHAIN]: 'Invalid chain {0}.',\n [ERROR_CODE.INVALID_ASSET]: 'Invalid asset {0}.',\n [ERROR_CODE.UNSUPPORTED_CHAIN]: 'Unsupported chain {0}.',\n [ERROR_CODE.UNSUPPORTED_ASSET]: 'Unsupported asset {0}.',\n [ERROR_CODE.UNSUPPORTED_ASSET_FOR_SWAPOUT]: 'Unsupported asset {0} for swap out.',\n [ERROR_CODE.THORNODE_QUOTE_GENERIC_ERROR]: 'ThorNode quote generic error.',\n [ERROR_CODE.INVALID_SOURCE_ADDRESS]: 'Invalid source address {0}',\n [ERROR_CODE.INVALID_DESTINATION_ADDRESS]: 'Invalid destination address {0}',\n [ERROR_CODE.NOT_ENOUGH_SYNTH_BALANCE]:\n \"Source address doesn't have enough synth balance for this quote.\",\n [ERROR_CODE.SYNTH_MINTING_CAP_REACHED]: 'Synth minting cap reached.',\n [ERROR_CODE.INVALID_QUOTE_MODE]: 'Invalid quote mode.',\n [ERROR_CODE.NO_QUOTES]: 'No quotes to service this request.',\n [ERROR_CODE.SERVICE_UNAVAILABLE_GENERIC]: 'Service unavailable.',\n [ERROR_CODE.MISSING_GAS_DATA_GENERIC]: 'Missing gas data.',\n [ERROR_CODE.MISSING_TOKEN_INFO_GENERIC]: 'Missing token info.',\n [ERROR_CODE.CANT_FIND_TOKEN_LIST]: \"Can't find tokenlist {0}.\",\n [ERROR_CODE.NO_PRICE]: 'No price for asset {0}.',\n [ERROR_CODE.PRICE_IS_STALE]: 'Price is stale for asset {0}.',\n [ERROR_CODE.ADDRESS_NOT_WHITELISTED]: 'Address {0} not whitelisted for airdrop.',\n [ERROR_CODE.ADDRESS_ALREADY_CLAIMED]: 'Address {0} already claimed the airdrop.',\n};\n\nexport const getDisplayMessage = (code: ERROR_CODE, displayMessageParams: string[]) => {\n let displayMessage = ERROR_DISPLAY_MESSAGES[code];\n\n if (!displayMessage) return '';\n\n for (let i = 0; i < displayMessageParams.length; i++) {\n displayMessage = displayMessage?.replace(`{${i}}`, displayMessageParams[i]) ?? '';\n }\n\n return displayMessage;\n};\n","import { getDisplayMessage } from './displayMessages.ts';\nimport type { ApiErrorOptions, ERROR_CODE, ERROR_MODULE, ErrorInfo } from './types.ts';\nimport { ERROR_TYPE } from './types.ts';\n\nexport class ApiError extends Error {\n public readonly status: number;\n public readonly revision: string;\n public readonly type?: ERROR_TYPE;\n public readonly module: ERROR_MODULE;\n public readonly code: ERROR_CODE;\n public readonly message: string;\n public readonly display: string;\n public readonly stack?: string;\n public readonly options: ApiErrorOptions;\n public readonly displayMessageParams?: string[];\n\n constructor({\n status,\n revision,\n module,\n code,\n message,\n type,\n options: { shouldLog, shouldThrow, shouldTrace } = {\n shouldLog: true,\n shouldThrow: true,\n shouldTrace: true,\n },\n displayMessageParams,\n }: ErrorInfo) {\n const safeMessage = message || getDisplayMessage(code, displayMessageParams || []) || '';\n super(safeMessage);\n\n this.status = status;\n this.revision = revision || 'NO_REVISION';\n this.module = module;\n this.message = safeMessage;\n this.display = getDisplayMessage(code, displayMessageParams || []);\n this.code = code;\n this.type = type || ERROR_TYPE.UNHANDLED_ERROR;\n this.options = {\n shouldLog: shouldLog || true,\n shouldTrace: shouldTrace || true,\n shouldThrow: shouldThrow || false,\n };\n this.displayMessageParams = displayMessageParams || [];\n\n if (this.options.shouldTrace) Error.captureStackTrace(this);\n }\n\n public static fromErrorInfo(errorInfo: ErrorInfo): ApiError {\n return new ApiError(errorInfo);\n }\n\n public toErrorInfo(): ErrorInfo {\n return { ...this, identifier: this.identifier };\n }\n\n public get identifier(): string {\n return `${this.revision}-${this.type || 'NO_TYPE'}-${this.module}-${this.code}`;\n }\n\n public get displayMessage(): string {\n return getDisplayMessage(this.code, this.displayMessageParams || []);\n }\n\n public handle() {\n const message = `[${this.identifier}]: ${this.message}`;\n\n if (this.options.shouldLog) console.error(message, '\\n', this.stack || '');\n if (this.options.shouldThrow) throw Error(message, { cause: this.stack });\n\n return this.toErrorInfo();\n }\n}\n","export enum Chain {\n Arbitrum = 'ARB',\n Avalanche = 'AVAX',\n Binance = 'BNB',\n BinanceSmartChain = 'BSC',\n Bitcoin = 'BTC',\n BitcoinCash = 'BCH',\n Cosmos = 'GAIA',\n Dogecoin = 'DOGE',\n Ethereum = 'ETH',\n Kujira = 'KUJI',\n Litecoin = 'LTC',\n Maya = 'MAYA',\n Optimism = 'OP',\n Polygon = 'MATIC',\n THORChain = 'THOR',\n}\ntype ChainNameType = keyof typeof Chain;\n\nexport enum ContractAddress {\n ARB = '0x0000000000000000000000000000000000000000',\n AVAX = '0x0000000000000000000000000000000000000000',\n ETH = '0x0000000000000000000000000000000000000000',\n BSC = '0x0000000000000000000000000000000000000000',\n MATIC = '0x0000000000000000000000000000000000001010',\n OP = '0x4200000000000000000000000000000000000042',\n}\n\nexport enum DerivationPath {\n ARB = \"m/44'/60'/0'/0\",\n AVAX = \"m/44'/60'/0'/0\",\n BCH = \"m/44'/145'/0'/0\",\n BNB = \"m/44'/714'/0'/0\",\n BSC = \"m/44'/60'/0'/0\",\n BTC = \"m/84'/0'/0'/0\",\n DOGE = \"m/44'/3'/0'/0\",\n ETH = \"m/44'/60'/0'/0\",\n GAIA = \"m/44'/118'/0'/0\",\n KUJI = \"m/44'/118'/0'/0\",\n LTC = \"m/84'/2'/0'/0\",\n MATIC = \"m/44'/60'/0'/0\",\n MAYA = \"m/44'/931'/0'/0\",\n OP = \"m/44'/60'/0'/0\",\n THOR = \"m/44'/931'/0'/0\",\n}\n\nexport type DerivationPathArray = [number, number, number, number, number];\n\nexport const NetworkDerivationPath: Record<Chain, DerivationPathArray> = {\n ARB: [44, 60, 0, 0, 0],\n AVAX: [44, 60, 0, 0, 0],\n BCH: [44, 145, 0, 0, 0],\n BNB: [44, 714, 0, 0, 0],\n BSC: [44, 60, 0, 0, 0],\n BTC: [84, 0, 0, 0, 0],\n DOGE: [44, 3, 0, 0, 0],\n ETH: [44, 60, 0, 0, 0],\n GAIA: [44, 118, 0, 0, 0],\n KUJI: [44, 118, 0, 0, 0],\n LTC: [84, 2, 0, 0, 0],\n MATIC: [44, 60, 0, 0, 0],\n MAYA: [44, 931, 0, 0, 0],\n OP: [44, 60, 0, 0, 0],\n THOR: [44, 931, 0, 0, 0],\n};\n\nexport enum BaseDecimal {\n ARB = 18,\n AVAX = 18,\n BCH = 8,\n BNB = 8,\n BSC = 18,\n BTC = 8,\n DASH = 8,\n DOGE = 8,\n ETH = 18,\n GAIA = 6,\n KUJI = 6,\n LTC = 8,\n MATIC = 18,\n MAYA = 10,\n OP = 18,\n THOR = 8,\n}\n\nexport type EVMChain =\n | Chain.Ethereum\n | Chain.Avalanche\n | Chain.BinanceSmartChain\n | Chain.Arbitrum\n | Chain.Optimism\n | Chain.Polygon;\n\nexport const EVMChainList: EVMChain[] = [\n Chain.Ethereum,\n Chain.Avalanche,\n Chain.BinanceSmartChain,\n Chain.Arbitrum,\n Chain.Optimism,\n Chain.Polygon,\n];\n\nexport type UTXOChain = Chain.Bitcoin | Chain.BitcoinCash | Chain.Dogecoin | Chain.Litecoin;\n\nexport const UTXOChainList: UTXOChain[] = [\n Chain.Bitcoin,\n Chain.BitcoinCash,\n Chain.Dogecoin,\n Chain.Litecoin,\n];\n\nexport type CosmosChain =\n | Chain.Cosmos\n | Chain.THORChain\n | Chain.Binance\n | Chain.Maya\n | Chain.Kujira;\n\nexport const CosmosChainList: CosmosChain[] = [Chain.Cosmos, Chain.THORChain, Chain.Binance];\n\nexport const TCSupportedChainList = [\n Chain.Avalanche,\n Chain.Binance,\n Chain.BinanceSmartChain,\n Chain.Bitcoin,\n Chain.BitcoinCash,\n Chain.Cosmos,\n Chain.Dogecoin,\n Chain.Ethereum,\n Chain.Litecoin,\n Chain.THORChain,\n];\n\nexport enum ChainId {\n Arbitrum = '42161',\n ArbitrumHex = '0xa4b1',\n Avalanche = '43114',\n AvalancheHex = '0xa86a',\n Binance = 'Binance-Chain-Tigris',\n BinanceSmartChain = '56',\n BinanceSmartChainHex = '0x38',\n Bitcoin = 'bitcoin',\n BitcoinCash = 'bitcoincash',\n Cosmos = 'cosmoshub-4',\n Dogecoin = 'dogecoin',\n Kujira = 'kaiyo-1',\n Ethereum = '1',\n EthereumHex = '0x1',\n Litecoin = 'litecoin',\n Maya = 'mayachain-mainnet-v1',\n MayaStagenet = 'mayachain-stagenet-v1',\n Optimism = '10',\n OptimismHex = '0xa',\n Polygon = '137',\n PolygonHex = '0x89',\n THORChain = 'thorchain-mainnet-v1',\n THORChainStagenet = 'thorchain-stagenet-v2',\n}\n\nexport enum RPCUrl {\n Arbitrum = 'https://arb1.arbitrum.io/rpc',\n Avalanche = 'https://node-router.thorswap.net/avalanche-c',\n Binance = '',\n BinanceSmartChain = 'https://bsc-dataseed.binance.org',\n Bitcoin = 'https://node-router.thorswap.net/bitcoin',\n BitcoinCash = 'https://node-router.thorswap.net/bitcoin-cash',\n Cosmos = 'https://node-router.thorswap.net/cosmos/rpc',\n Kujira = 'https://rpc-kujira.synergynodes.com/',\n Dogecoin = 'https://node-router.thorswap.net/dogecoin',\n Ethereum = 'https://node-router.thorswap.net/ethereum',\n Litecoin = 'https://node-router.thorswap.net/litecoin',\n Maya = 'https://tendermint.mayachain.info',\n MayaStagenet = 'https://stagenet.tendermint.mayachain.info',\n Optimism = 'https://mainnet.optimism.io',\n Polygon = 'https://polygon-rpc.com',\n THORChain = 'https://rpc.thorswap.net',\n THORChainStagenet = 'https://stagenet-rpc.ninerealms.com',\n}\n\nexport enum ApiUrl {\n Cosmos = 'https://node-router.thorswap.net/cosmos/rest',\n Kujira = 'https://lcd-kujira.synergynodes.com/',\n MayanodeMainnet = 'https://mayanode.mayachain.info',\n MayanodeStagenet = 'https://stagenet.mayanode.mayachain.info',\n ThornodeMainnet = 'https://thornode.thorswap.net',\n ThornodeStagenet = 'https://stagenet-thornode.ninerealms.com',\n ThorswapApi = 'https://api.thorswap.net',\n ThorswapStatic = 'https://static.thorswap.net',\n}\n\nconst chains = Object.values(Chain) as Chain[];\nconst chainNames = Object.keys(Chain) as ChainNameType[];\n\nconst ChainToChainName = chains.reduce(\n (acc, chain) => {\n const chainName = chainNames.find((key) => Chain[key as ChainNameType] === chain);\n\n if (chainName) acc[chain] = chainName;\n\n return acc;\n },\n {} as { [key in Chain]: ChainNameType },\n);\n\nexport const ChainToChainId = chains.reduce(\n (acc, chain) => {\n acc[chain] = ChainId[ChainToChainName[chain]];\n return acc;\n },\n {} as { [key in Chain]: ChainId },\n);\n\nexport const ChainToRPC = chains.reduce(\n (acc, chain) => {\n acc[chain] = RPCUrl[ChainToChainName[chain]];\n return acc;\n },\n {} as { [key in Chain]: RPCUrl },\n);\n\nexport const ChainToHexChainId = chains.reduce(\n (acc, chain) => {\n const chainString = `${ChainToChainName[chain]}Hex` as keyof typeof ChainId;\n\n acc[chain] = ChainId[chainString];\n return acc;\n },\n {} as { [key in Chain]: ChainId },\n);\n\nexport const ChainIdToChain: Record<ChainId, Chain> = {\n [ChainId.ArbitrumHex]: Chain.Arbitrum,\n [ChainId.Arbitrum]: Chain.Arbitrum,\n [ChainId.AvalancheHex]: Chain.Avalanche,\n [ChainId.Avalanche]: Chain.Avalanche,\n [ChainId.BinanceSmartChainHex]: Chain.BinanceSmartChain,\n [ChainId.BinanceSmartChain]: Chain.BinanceSmartChain,\n [ChainId.Binance]: Chain.Binance,\n [ChainId.BitcoinCash]: Chain.BitcoinCash,\n [ChainId.Bitcoin]: Chain.Bitcoin,\n [ChainId.Cosmos]: Chain.Cosmos,\n [ChainId.Dogecoin]: Chain.Dogecoin,\n [ChainId.EthereumHex]: Chain.Ethereum,\n [ChainId.Kujira]: Chain.Kujira,\n [ChainId.Ethereum]: Chain.Ethereum,\n [ChainId.Litecoin]: Chain.Litecoin,\n [ChainId.MayaStagenet]: Chain.Maya,\n [ChainId.Maya]: Chain.Maya,\n [ChainId.OptimismHex]: Chain.Optimism,\n [ChainId.Optimism]: Chain.Optimism,\n [ChainId.PolygonHex]: Chain.Polygon,\n [ChainId.Polygon]: Chain.Polygon,\n [ChainId.THORChainStagenet]: Chain.THORChain,\n [ChainId.THORChain]: Chain.THORChain,\n};\n\nexport const ChainToExplorerUrl: Record<Chain, string> = {\n [Chain.Arbitrum]: 'https://arbiscan.io',\n [Chain.Avalanche]: 'https://snowtrace.io',\n [Chain.BinanceSmartChain]: 'https://bscscan.com',\n [Chain.Binance]: 'https://explorer.binance.org',\n [Chain.BitcoinCash]: 'https://www.blockchair.com/bitcoin-cash',\n [Chain.Bitcoin]: 'https://blockchair.com/bitcoin',\n [Chain.Cosmos]: 'https://cosmos.bigdipper.live',\n [Chain.Dogecoin]: 'https://blockchair.com/dogecoin',\n [Chain.Kujira]: 'https://finder.kujira.network/kaiyo-1',\n [Chain.Ethereum]: 'https://etherscan.io',\n [Chain.Litecoin]: 'https://blockchair.com/litecoin',\n [Chain.Maya]: 'https://www.mayascan.org',\n [Chain.Optimism]: 'https://optimistic.etherscan.io',\n [Chain.Polygon]: 'https://polygonscan.com',\n [Chain.THORChain]: 'https://runescan.io',\n};\n","export type GetAddressAndPubKeyResponse = {\n bech32_address: string;\n compressed_pk: any;\n error_message: string;\n return_code: number;\n};\n\nexport type Signature = {\n pub_key: {\n type: string;\n value: string;\n };\n sequence: string;\n signature: string;\n};\n\nexport enum MemoType {\n BOND = 'BOND',\n DEPOSIT = '+',\n LEAVE = 'LEAVE',\n THORNAME_REGISTER = '~',\n UNBOND = 'UNBOND',\n WITHDRAW = '-',\n OPEN_LOAN = '$+',\n CLOSE_LOAN = '$-',\n}\n","export enum FeeOption {\n Average = 'average',\n Fast = 'fast',\n Fastest = 'fastest',\n}\n\nexport type WalletTxParams = {\n feeOptionKey?: FeeOption;\n from?: string;\n memo?: string; // optional memo to pass\n recipient: string;\n};\n\nexport type EVMTxBaseParams<T = bigint> = {\n to?: string;\n from?: string;\n nonce?: number;\n gasLimit?: T;\n data?: string;\n value?: T;\n chainId?: T;\n};\n","export enum WalletOption {\n 'KEYSTORE' = 'KEYSTORE',\n 'KEEPKEY' = 'KEEPKEY',\n 'XDEFI' = 'XDEFI',\n 'METAMASK' = 'METAMASK',\n 'COINBASE_WEB' = 'COINBASE_WEB',\n 'TREZOR' = 'TREZOR',\n 'TRUSTWALLET_WEB' = 'TRUSTWALLET_WEB',\n 'LEDGER' = 'LEDGER',\n 'KEPLR' = 'KEPLR',\n 'OKX' = 'OKX',\n 'OKX_MOBILE' = 'OKX_MOBILE',\n 'BRAVE' = 'BRAVE',\n 'WALLETCONNECT' = 'WALLETCONNECT',\n}\n\nexport type EVMWalletOptions =\n | WalletOption.BRAVE\n | WalletOption.OKX_MOBILE\n | WalletOption.METAMASK\n | WalletOption.TRUSTWALLET_WEB\n | WalletOption.COINBASE_WEB;\n\nexport enum LedgerErrorCode {\n NoError = 0x9000,\n LockedDevice = 0x5515,\n TC_NotFound = 65535,\n}\n"],"names":["erc20ABI","TCEthereumVaultAbi","TCAvalancheDepositABI","TCBscDepositABI","QuoteMode","AGG_SWAP","SWAP_IN","SWAP_OUT","ERROR_TYPE","ERROR_MODULE","ERROR_CODE","ERROR_DISPLAY_MESSAGES","getDisplayMessage","code","displayMessageParams","displayMessage","ApiError","status","revision","module","message","type","shouldLog","shouldThrow","shouldTrace","safeMessage","__publicField","errorInfo","Chain","ContractAddress","DerivationPath","NetworkDerivationPath","BaseDecimal","EVMChainList","UTXOChainList","CosmosChainList","TCSupportedChainList","ChainId","RPCUrl","ApiUrl","chains","chainNames","ChainToChainName","acc","chain","chainName","key","ChainToChainId","ChainToRPC","ChainToHexChainId","chainString","ChainIdToChain","ChainToExplorerUrl","MemoType","FeeOption","WalletOption","LedgerErrorCode"],"mappings":"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"}
|