@swapkit/types 1.0.0-rc.36 → 1.0.0-rc.38
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 +1 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +61 -178
- package/dist/index.es.js +71 -185
- package/dist/index.es.js.map +1 -1
- package/package.json +5 -10
- package/src/abis/erc20.ts +57 -57
- package/src/abis/tcEthVault.ts +284 -284
- package/src/chainflip.ts +8 -8
- package/src/commonTypes.ts +40 -44
- package/src/index.ts +7 -8
- package/src/network.ts +138 -102
- package/src/thorchain.ts +8 -8
- package/src/transactions.ts +3 -3
- package/src/wallet.ts +13 -13
- package/src/errors/apiError.ts +0 -75
- package/src/errors/displayMessages.ts +0 -72
- package/src/errors/index.ts +0 -2
- package/src/errors/types.ts +0 -145
package/dist/index.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es.js","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 Polkadot = 'DOT',\n Chainflip = 'FLIP',\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 DOT = '////',\n ETH = \"m/44'/60'/0'/0\",\n FLIP = '////',\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 // Polkadot and related network derivation path is not number based\n DOT: [0, 0, 0, 0, 0],\n FLIP: [0, 0, 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 DOT = 10,\n ETH = 18,\n FLIP = 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 SubstrateChain = Chain.Polkadot | Chain.Chainflip;\n\nexport const SubstrateChainList: SubstrateChain[] = [Chain.Polkadot, Chain.Chainflip];\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 Chainflip = 'chainflip',\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 Polkadot = 'polkadot',\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 Chainflip = 'wss://mainnet-archive.chainflip.io',\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 Polkadot = 'wss://rpc.polkadot.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.Chainflip]: Chain.Chainflip,\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.Polkadot]: Chain.Polkadot,\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.Chainflip]: 'https://explorer.polkascan.io/polkadot',\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.Polkadot]: 'https://explorer.polkascan.io/polkadot',\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","SubstrateChainList","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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"}
|
|
1
|
+
{"version":3,"file":"index.es.js","sources":["../src/abis/erc20.ts","../src/abis/tcEthVault.ts","../src/commonTypes.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\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<T extends Chain> = {\n address: string;\n balance: any[];\n walletType: WalletOption;\n chain: T;\n [key: string]: any;\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: <T extends Chain>(params: AddChainWalletParams<T>) => void;\n config: ConnectConfig;\n rpcUrls: { [chain in Chain]?: string };\n apis: ApisType;\n};\n\nexport type Witness = {\n value: number;\n script: Buffer;\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 Chain {\n Arbitrum = \"ARB\",\n Avalanche = \"AVAX\",\n Binance = \"BNB\",\n BinanceSmartChain = \"BSC\",\n Bitcoin = \"BTC\",\n BitcoinCash = \"BCH\",\n Cosmos = \"GAIA\",\n Dash = \"DASH\",\n Dogecoin = \"DOGE\",\n Ethereum = \"ETH\",\n Kujira = \"KUJI\",\n Litecoin = \"LTC\",\n Maya = \"MAYA\",\n Optimism = \"OP\",\n Polkadot = \"DOT\",\n Chainflip = \"FLIP\",\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 DASH = \"m/44'/5'/0'/0\",\n DOGE = \"m/44'/3'/0'/0\",\n DOT = \"////\",\n ETH = \"m/44'/60'/0'/0\",\n FLIP = \"////\",\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 DASH: [44, 5, 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 // Polkadot and related network derivation path is not number based\n DOT: [0, 0, 0, 0, 0],\n FLIP: [0, 0, 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 DOT = 10,\n ETH = 18,\n FLIP = 18,\n GAIA = 6,\n KUJI = 6,\n LTC = 8,\n MATIC = 18,\n MAYA = 10,\n OP = 18,\n THOR = 8,\n ZEC = 8,\n}\n\nexport type SubstrateChain = Chain.Polkadot | Chain.Chainflip;\n\nexport const SubstrateChainList: SubstrateChain[] = [Chain.Polkadot, Chain.Chainflip];\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 EVMChains = [\n Chain.Ethereum,\n Chain.Avalanche,\n Chain.BinanceSmartChain,\n Chain.Arbitrum,\n Chain.Optimism,\n Chain.Polygon,\n] as const;\n/**\n * @deprecated\n * Use `EVMChains` instead\n */\nexport const EVMChainList = EVMChains;\n\nexport type UTXOChain =\n | Chain.Bitcoin\n | Chain.BitcoinCash\n | Chain.Dash\n | Chain.Dogecoin\n | Chain.Litecoin;\n\nexport const UTXOChains = [\n Chain.Bitcoin,\n Chain.BitcoinCash,\n Chain.Dash,\n Chain.Dogecoin,\n Chain.Litecoin,\n] as const;\n/**\n * @deprecated\n * Use `UTXOChains` instead\n */\nexport const UTXOChainList = UTXOChains;\n\nexport type CosmosChain =\n | Chain.Cosmos\n | Chain.THORChain\n | Chain.Binance\n | Chain.Maya\n | Chain.Kujira;\n\nexport const CosmosChains = [Chain.Cosmos, Chain.THORChain, Chain.Binance] as const;\n\n/**\n * @deprecated\n * Use `CosmosChains` instead\n */\nexport const CosmosChainList = CosmosChains;\n\nexport const TCSupportedChains = [\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] as const;\n\n/**\n * @deprecated\n * Use `TCSupportedChains` instead\n */\nexport const TCSupportedChainList = TCSupportedChains;\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 Chainflip = \"chainflip\",\n Cosmos = \"cosmoshub-4\",\n Dash = \"dash\",\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 Polkadot = \"polkadot\",\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 Chainflip = \"wss://mainnet-archive.chainflip.io\",\n Cosmos = \"https://node-router.thorswap.net/cosmos/rpc\",\n Dash = \"https://node-router.thorswap.net/dash\",\n Dogecoin = \"https://node-router.thorswap.net/dogecoin\",\n Ethereum = \"https://node-router.thorswap.net/ethereum\",\n Kujira = \"https://rpc-kujira.synergynodes.com/\",\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 Polkadot = \"wss://rpc.polkadot.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.Chainflip]: Chain.Chainflip,\n [ChainId.Cosmos]: Chain.Cosmos,\n [ChainId.Dash]: Chain.Dash,\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.Polkadot]: Chain.Polkadot,\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.Chainflip]: \"https://explorer.polkascan.io/polkadot\",\n [Chain.Cosmos]: \"https://cosmos.bigdipper.live\",\n [Chain.Dash]: \"https://blockchair.com/dash\",\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.Polkadot]: \"https://explorer.polkascan.io/polkadot\",\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","Chain","ContractAddress","DerivationPath","NetworkDerivationPath","BaseDecimal","SubstrateChainList","EVMChains","EVMChainList","UTXOChains","UTXOChainList","CosmosChains","CosmosChainList","TCSupportedChains","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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"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
"author": "swapkit-oss
|
|
2
|
+
"author": "swapkit-oss",
|
|
3
3
|
"description": "SwapKit Lib types",
|
|
4
4
|
"devDependencies": {
|
|
5
|
-
"
|
|
6
|
-
"vite": "5.0.12",
|
|
7
|
-
"@internal/config": "0.0.2-rc.0"
|
|
8
|
-
},
|
|
9
|
-
"eslintConfig": {
|
|
10
|
-
"extends": "../../../internal/eslint-config"
|
|
5
|
+
"vite": "5.1.3"
|
|
11
6
|
},
|
|
12
7
|
"exports": {
|
|
13
8
|
".": {
|
|
@@ -32,11 +27,11 @@
|
|
|
32
27
|
},
|
|
33
28
|
"type": "module",
|
|
34
29
|
"types": "./dist/index.d.ts",
|
|
35
|
-
"version": "1.0.0-rc.
|
|
30
|
+
"version": "1.0.0-rc.38",
|
|
36
31
|
"scripts": {
|
|
37
32
|
"build": "vite build",
|
|
38
|
-
"clean": "rm -rf dist vite.config.ts.*
|
|
39
|
-
"lint": "
|
|
33
|
+
"clean": "rm -rf dist vite.config.ts.* node_modules",
|
|
34
|
+
"lint": "biome check --apply ./src",
|
|
40
35
|
"test": "echo 'No tests yet'"
|
|
41
36
|
}
|
|
42
37
|
}
|
package/src/abis/erc20.ts
CHANGED
|
@@ -1,99 +1,99 @@
|
|
|
1
1
|
export const erc20ABI = [
|
|
2
|
-
{ inputs: [], stateMutability:
|
|
2
|
+
{ inputs: [], stateMutability: "nonpayable", type: "constructor" },
|
|
3
3
|
{
|
|
4
4
|
anonymous: false,
|
|
5
5
|
inputs: [
|
|
6
|
-
{ indexed: true, internalType:
|
|
7
|
-
{ indexed: true, internalType:
|
|
8
|
-
{ indexed: false, internalType:
|
|
6
|
+
{ indexed: true, internalType: "address", name: "owner", type: "address" },
|
|
7
|
+
{ indexed: true, internalType: "address", name: "spender", type: "address" },
|
|
8
|
+
{ indexed: false, internalType: "uint256", name: "value", type: "uint256" },
|
|
9
9
|
],
|
|
10
|
-
name:
|
|
11
|
-
type:
|
|
10
|
+
name: "Approval",
|
|
11
|
+
type: "event",
|
|
12
12
|
},
|
|
13
13
|
{
|
|
14
14
|
anonymous: false,
|
|
15
15
|
inputs: [
|
|
16
|
-
{ indexed: true, internalType:
|
|
17
|
-
{ indexed: true, internalType:
|
|
18
|
-
{ indexed: false, internalType:
|
|
16
|
+
{ indexed: true, internalType: "address", name: "from", type: "address" },
|
|
17
|
+
{ indexed: true, internalType: "address", name: "to", type: "address" },
|
|
18
|
+
{ indexed: false, internalType: "uint256", name: "value", type: "uint256" },
|
|
19
19
|
],
|
|
20
|
-
name:
|
|
21
|
-
type:
|
|
20
|
+
name: "Transfer",
|
|
21
|
+
type: "event",
|
|
22
22
|
},
|
|
23
23
|
{
|
|
24
24
|
inputs: [
|
|
25
|
-
{ internalType:
|
|
26
|
-
{ internalType:
|
|
25
|
+
{ internalType: "address", name: "", type: "address" },
|
|
26
|
+
{ internalType: "address", name: "", type: "address" },
|
|
27
27
|
],
|
|
28
|
-
name:
|
|
29
|
-
outputs: [{ internalType:
|
|
30
|
-
stateMutability:
|
|
31
|
-
type:
|
|
28
|
+
name: "allowance",
|
|
29
|
+
outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
|
|
30
|
+
stateMutability: "view",
|
|
31
|
+
type: "function",
|
|
32
32
|
},
|
|
33
33
|
{
|
|
34
34
|
inputs: [
|
|
35
|
-
{ internalType:
|
|
36
|
-
{ internalType:
|
|
35
|
+
{ internalType: "address", name: "spender", type: "address" },
|
|
36
|
+
{ internalType: "uint256", name: "value", type: "uint256" },
|
|
37
37
|
],
|
|
38
|
-
name:
|
|
39
|
-
outputs: [{ internalType:
|
|
40
|
-
stateMutability:
|
|
41
|
-
type:
|
|
38
|
+
name: "approve",
|
|
39
|
+
outputs: [{ internalType: "bool", name: "success", type: "bool" }],
|
|
40
|
+
stateMutability: "nonpayable",
|
|
41
|
+
type: "function",
|
|
42
42
|
},
|
|
43
43
|
{
|
|
44
|
-
inputs: [{ internalType:
|
|
45
|
-
name:
|
|
46
|
-
outputs: [{ internalType:
|
|
47
|
-
stateMutability:
|
|
48
|
-
type:
|
|
44
|
+
inputs: [{ internalType: "address", name: "", type: "address" }],
|
|
45
|
+
name: "balanceOf",
|
|
46
|
+
outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
|
|
47
|
+
stateMutability: "view",
|
|
48
|
+
type: "function",
|
|
49
49
|
},
|
|
50
50
|
{
|
|
51
51
|
inputs: [],
|
|
52
|
-
name:
|
|
53
|
-
outputs: [{ internalType:
|
|
54
|
-
stateMutability:
|
|
55
|
-
type:
|
|
52
|
+
name: "decimals",
|
|
53
|
+
outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
|
|
54
|
+
stateMutability: "view",
|
|
55
|
+
type: "function",
|
|
56
56
|
},
|
|
57
57
|
{
|
|
58
58
|
inputs: [],
|
|
59
|
-
name:
|
|
60
|
-
outputs: [{ internalType:
|
|
61
|
-
stateMutability:
|
|
62
|
-
type:
|
|
59
|
+
name: "name",
|
|
60
|
+
outputs: [{ internalType: "string", name: "", type: "string" }],
|
|
61
|
+
stateMutability: "view",
|
|
62
|
+
type: "function",
|
|
63
63
|
},
|
|
64
64
|
{
|
|
65
65
|
inputs: [],
|
|
66
|
-
name:
|
|
67
|
-
outputs: [{ internalType:
|
|
68
|
-
stateMutability:
|
|
69
|
-
type:
|
|
66
|
+
name: "symbol",
|
|
67
|
+
outputs: [{ internalType: "string", name: "", type: "string" }],
|
|
68
|
+
stateMutability: "view",
|
|
69
|
+
type: "function",
|
|
70
70
|
},
|
|
71
71
|
{
|
|
72
72
|
inputs: [],
|
|
73
|
-
name:
|
|
74
|
-
outputs: [{ internalType:
|
|
75
|
-
stateMutability:
|
|
76
|
-
type:
|
|
73
|
+
name: "totalSupply",
|
|
74
|
+
outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
|
|
75
|
+
stateMutability: "view",
|
|
76
|
+
type: "function",
|
|
77
77
|
},
|
|
78
78
|
{
|
|
79
79
|
inputs: [
|
|
80
|
-
{ internalType:
|
|
81
|
-
{ internalType:
|
|
80
|
+
{ internalType: "address", name: "to", type: "address" },
|
|
81
|
+
{ internalType: "uint256", name: "value", type: "uint256" },
|
|
82
82
|
],
|
|
83
|
-
name:
|
|
84
|
-
outputs: [{ internalType:
|
|
85
|
-
stateMutability:
|
|
86
|
-
type:
|
|
83
|
+
name: "transfer",
|
|
84
|
+
outputs: [{ internalType: "bool", name: "success", type: "bool" }],
|
|
85
|
+
stateMutability: "nonpayable",
|
|
86
|
+
type: "function",
|
|
87
87
|
},
|
|
88
88
|
{
|
|
89
89
|
inputs: [
|
|
90
|
-
{ internalType:
|
|
91
|
-
{ internalType:
|
|
92
|
-
{ internalType:
|
|
90
|
+
{ internalType: "address", name: "from", type: "address" },
|
|
91
|
+
{ internalType: "address", name: "to", type: "address" },
|
|
92
|
+
{ internalType: "uint256", name: "value", type: "uint256" },
|
|
93
93
|
],
|
|
94
|
-
name:
|
|
95
|
-
outputs: [{ internalType:
|
|
96
|
-
stateMutability:
|
|
97
|
-
type:
|
|
94
|
+
name: "transferFrom",
|
|
95
|
+
outputs: [{ internalType: "bool", name: "success", type: "bool" }],
|
|
96
|
+
stateMutability: "nonpayable",
|
|
97
|
+
type: "function",
|
|
98
98
|
},
|
|
99
99
|
];
|