@dzapio/sdk 2.0.7 → 2.0.8

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.
Files changed (221) hide show
  1. package/dist/api/index.d.ts +2 -1
  2. package/dist/index.js +1 -1
  3. package/dist/index.m.js +1 -1
  4. package/dist/index.umd.js +1 -1
  5. package/dist/types/zap/broadcast.d.ts +15 -0
  6. package/package.json +1 -1
  7. package/dist/examples/chain-utils.d.ts +0 -1
  8. package/dist/examples/chain-utils.js +0 -20
  9. package/dist/examples/permit-utils.d.ts +0 -1
  10. package/dist/examples/permit-utils.js +0 -90
  11. package/dist/examples/token-utils.d.ts +0 -1
  12. package/dist/examples/token-utils.js +0 -41
  13. package/dist/examples/trade-operations.d.ts +0 -1
  14. package/dist/examples/trade-operations.js +0 -89
  15. package/dist/examples/zap-operations.d.ts +0 -1
  16. package/dist/examples/zap-operations.js +0 -69
  17. package/dist/src/api/index.d.ts +0 -27
  18. package/dist/src/api/index.js +0 -146
  19. package/dist/src/artifacts/ERC20Permit.d.ts +0 -374
  20. package/dist/src/artifacts/ERC20Permit.js +0 -469
  21. package/dist/src/artifacts/Permit2.d.ts +0 -700
  22. package/dist/src/artifacts/Permit2.js +0 -904
  23. package/dist/src/artifacts/Permit2Proxy.d.ts +0 -416
  24. package/dist/src/artifacts/Permit2Proxy.js +0 -206
  25. package/dist/src/artifacts/default/DZapCoreAbi.d.ts +0 -2
  26. package/dist/src/artifacts/default/DZapCoreAbi.js +0 -3079
  27. package/dist/src/artifacts/default/DZapCoreV2Abi.d.ts +0 -2
  28. package/dist/src/artifacts/default/DZapCoreV2Abi.js +0 -3719
  29. package/dist/src/artifacts/default/DZapDcaAbi.d.ts +0 -2
  30. package/dist/src/artifacts/default/DZapDcaAbi.js +0 -1829
  31. package/dist/src/artifacts/default/Permit2Abi.d.ts +0 -700
  32. package/dist/src/artifacts/default/Permit2Abi.js +0 -904
  33. package/dist/src/artifacts/default/erc20Abi.d.ts +0 -165
  34. package/dist/src/artifacts/default/erc20Abi.js +0 -220
  35. package/dist/src/artifacts/default/index.d.ts +0 -6
  36. package/dist/src/artifacts/default/index.js +0 -13
  37. package/dist/src/artifacts/index.d.ts +0 -2
  38. package/dist/src/artifacts/index.js +0 -9
  39. package/dist/src/artifacts/staging/DZapCoreSwapAbi.d.ts +0 -2
  40. package/dist/src/artifacts/staging/DZapCoreSwapAbi.js +0 -3079
  41. package/dist/src/artifacts/staging/index.d.ts +0 -2
  42. package/dist/src/artifacts/staging/index.js +0 -5
  43. package/dist/src/axios/baseClient.d.ts +0 -2
  44. package/dist/src/axios/baseClient.js +0 -7
  45. package/dist/src/axios/index.d.ts +0 -8
  46. package/dist/src/axios/index.js +0 -34
  47. package/dist/src/chains/definitions/arthera.d.ts +0 -35
  48. package/dist/src/chains/definitions/arthera.js +0 -28
  49. package/dist/src/chains/definitions/fiveIre.d.ts +0 -35
  50. package/dist/src/chains/definitions/fiveIre.js +0 -28
  51. package/dist/src/chains/definitions/hyperEvm.d.ts +0 -35
  52. package/dist/src/chains/definitions/hyperEvm.js +0 -26
  53. package/dist/src/chains/definitions/hyperliquid.d.ts +0 -35
  54. package/dist/src/chains/definitions/hyperliquid.js +0 -26
  55. package/dist/src/chains/definitions/stable.d.ts +0 -36
  56. package/dist/src/chains/definitions/stable.js +0 -31
  57. package/dist/src/chains/index.d.ts +0 -179
  58. package/dist/src/chains/index.js +0 -24
  59. package/dist/src/config/index.d.ts +0 -36
  60. package/dist/src/config/index.js +0 -59
  61. package/dist/src/constants/address.d.ts +0 -13
  62. package/dist/src/constants/address.js +0 -29
  63. package/dist/src/constants/approval.d.ts +0 -7
  64. package/dist/src/constants/approval.js +0 -17
  65. package/dist/src/constants/axios.d.ts +0 -2
  66. package/dist/src/constants/axios.js +0 -5
  67. package/dist/src/constants/chains.d.ts +0 -31
  68. package/dist/src/constants/chains.js +0 -34
  69. package/dist/src/constants/contract.d.ts +0 -6
  70. package/dist/src/constants/contract.js +0 -18
  71. package/dist/src/constants/erc20.d.ts +0 -25
  72. package/dist/src/constants/erc20.js +0 -28
  73. package/dist/src/constants/httpMethods.d.ts +0 -2
  74. package/dist/src/constants/httpMethods.js +0 -5
  75. package/dist/src/constants/index.d.ts +0 -48
  76. package/dist/src/constants/index.js +0 -53
  77. package/dist/src/constants/permit.d.ts +0 -29
  78. package/dist/src/constants/permit.js +0 -33
  79. package/dist/src/constants/permit2.d.ts +0 -2
  80. package/dist/src/constants/permit2.js +0 -5
  81. package/dist/src/constants/rpc.d.ts +0 -2
  82. package/dist/src/constants/rpc.js +0 -5
  83. package/dist/src/constants/urlConstants.d.ts +0 -15
  84. package/dist/src/constants/urlConstants.js +0 -18
  85. package/dist/src/dZapClient/index.d.ts +0 -1015
  86. package/dist/src/dZapClient/index.js +0 -255
  87. package/dist/src/enums/index.d.ts +0 -46
  88. package/dist/src/enums/index.js +0 -57
  89. package/dist/src/index.d.ts +0 -17
  90. package/dist/src/index.js +0 -48
  91. package/dist/src/service/cache/cacheProvider.d.ts +0 -10
  92. package/dist/src/service/cache/cacheProvider.js +0 -72
  93. package/dist/src/service/cache/constant.d.ts +0 -2
  94. package/dist/src/service/cache/constant.js +0 -6
  95. package/dist/src/service/price/index.d.ts +0 -16
  96. package/dist/src/service/price/index.js +0 -80
  97. package/dist/src/service/price/provider/coingecko/config.d.ts +0 -6
  98. package/dist/src/service/price/provider/coingecko/config.js +0 -9
  99. package/dist/src/service/price/provider/coingecko/index.d.ts +0 -9
  100. package/dist/src/service/price/provider/coingecko/index.js +0 -66
  101. package/dist/src/service/price/provider/defiLlama/config.d.ts +0 -3
  102. package/dist/src/service/price/provider/defiLlama/config.js +0 -6
  103. package/dist/src/service/price/provider/defiLlama/index.d.ts +0 -9
  104. package/dist/src/service/price/provider/defiLlama/index.js +0 -60
  105. package/dist/src/service/price/provider/defiLlama/types.d.ts +0 -11
  106. package/dist/src/service/price/provider/defiLlama/types.js +0 -2
  107. package/dist/src/service/price/provider/dzap/index.d.ts +0 -6
  108. package/dist/src/service/price/provider/dzap/index.js +0 -22
  109. package/dist/src/service/price/types/IPriceProvider.d.ts +0 -14
  110. package/dist/src/service/price/types/IPriceProvider.js +0 -8
  111. package/dist/src/transactionHandlers/generic.d.ts +0 -24
  112. package/dist/src/transactionHandlers/generic.js +0 -48
  113. package/dist/src/transactionHandlers/permit.d.ts +0 -61
  114. package/dist/src/transactionHandlers/permit.js +0 -177
  115. package/dist/src/transactionHandlers/trade.d.ts +0 -24
  116. package/dist/src/transactionHandlers/trade.js +0 -263
  117. package/dist/src/transactionHandlers/zap.d.ts +0 -37
  118. package/dist/src/transactionHandlers/zap.js +0 -135
  119. package/dist/src/types/axiosClient.d.ts +0 -6
  120. package/dist/src/types/axiosClient.js +0 -2
  121. package/dist/src/types/btc.d.ts +0 -45
  122. package/dist/src/types/btc.js +0 -2
  123. package/dist/src/types/chains.d.ts +0 -3
  124. package/dist/src/types/chains.js +0 -2
  125. package/dist/src/types/contract.d.ts +0 -14
  126. package/dist/src/types/contract.js +0 -2
  127. package/dist/src/types/eip-2612.d.ts +0 -24
  128. package/dist/src/types/eip-2612.js +0 -58
  129. package/dist/src/types/index.d.ts +0 -489
  130. package/dist/src/types/index.js +0 -8
  131. package/dist/src/types/permit.d.ts +0 -191
  132. package/dist/src/types/permit.js +0 -54
  133. package/dist/src/types/wallet.d.ts +0 -2
  134. package/dist/src/types/wallet.js +0 -2
  135. package/dist/src/types/zap/build.d.ts +0 -44
  136. package/dist/src/types/zap/build.js +0 -2
  137. package/dist/src/types/zap/index.d.ts +0 -34
  138. package/dist/src/types/zap/index.js +0 -23
  139. package/dist/src/types/zap/path.d.ts +0 -33
  140. package/dist/src/types/zap/path.js +0 -2
  141. package/dist/src/types/zap/pool.d.ts +0 -39
  142. package/dist/src/types/zap/pool.js +0 -2
  143. package/dist/src/types/zap/position.d.ts +0 -27
  144. package/dist/src/types/zap/position.js +0 -2
  145. package/dist/src/types/zap/quote.d.ts +0 -7
  146. package/dist/src/types/zap/quote.js +0 -2
  147. package/dist/src/types/zap/status.d.ts +0 -28
  148. package/dist/src/types/zap/status.js +0 -2
  149. package/dist/src/types/zap/step.d.ts +0 -23
  150. package/dist/src/types/zap/step.js +0 -2
  151. package/dist/src/utils/amount.d.ts +0 -82
  152. package/dist/src/utils/amount.js +0 -71
  153. package/dist/src/utils/axios.d.ts +0 -13
  154. package/dist/src/utils/axios.js +0 -42
  155. package/dist/src/utils/date.d.ts +0 -1
  156. package/dist/src/utils/date.js +0 -8
  157. package/dist/src/utils/decoder/swap/abis.d.ts +0 -643
  158. package/dist/src/utils/decoder/swap/abis.js +0 -831
  159. package/dist/src/utils/decoder/swap/inputDataDecoder.d.ts +0 -14
  160. package/dist/src/utils/decoder/swap/inputDataDecoder.js +0 -124
  161. package/dist/src/utils/eip-2612/eip2612Permit.d.ts +0 -23
  162. package/dist/src/utils/eip-2612/eip2612Permit.js +0 -121
  163. package/dist/src/utils/eip-5792/batchApproveTokens.d.ts +0 -21
  164. package/dist/src/utils/eip-5792/batchApproveTokens.js +0 -49
  165. package/dist/src/utils/eip-5792/index.d.ts +0 -3
  166. package/dist/src/utils/eip-5792/index.js +0 -9
  167. package/dist/src/utils/eip-5792/isBatchTxnSupportedByWallet.d.ts +0 -6
  168. package/dist/src/utils/eip-5792/isBatchTxnSupportedByWallet.js +0 -22
  169. package/dist/src/utils/eip-5792/sendBatchCalls.d.ts +0 -10
  170. package/dist/src/utils/eip-5792/sendBatchCalls.js +0 -25
  171. package/dist/src/utils/eip-5792/waitForBatchTransactionReceipt.d.ts +0 -4
  172. package/dist/src/utils/eip-5792/waitForBatchTransactionReceipt.js +0 -26
  173. package/dist/src/utils/encodeApproveCall.d.ts +0 -6
  174. package/dist/src/utils/encodeApproveCall.js +0 -13
  175. package/dist/src/utils/erc20.d.ts +0 -65
  176. package/dist/src/utils/erc20.js +0 -153
  177. package/dist/src/utils/errors.d.ts +0 -17
  178. package/dist/src/utils/errors.js +0 -78
  179. package/dist/src/utils/index.d.ts +0 -4566
  180. package/dist/src/utils/index.js +0 -196
  181. package/dist/src/utils/multicall.d.ts +0 -14
  182. package/dist/src/utils/multicall.js +0 -25
  183. package/dist/src/utils/permit2/domain.d.ts +0 -2
  184. package/dist/src/utils/permit2/domain.js +0 -11
  185. package/dist/src/utils/permit2/index.d.ts +0 -4
  186. package/dist/src/utils/permit2/index.js +0 -97
  187. package/dist/src/utils/permit2/nonce.d.ts +0 -15
  188. package/dist/src/utils/permit2/nonce.js +0 -61
  189. package/dist/src/utils/permit2/permitData.d.ts +0 -23
  190. package/dist/src/utils/permit2/permitData.js +0 -85
  191. package/dist/src/utils/permit2/values.d.ts +0 -54
  192. package/dist/src/utils/permit2/values.js +0 -88
  193. package/dist/src/utils/permit2/witnessData.d.ts +0 -4
  194. package/dist/src/utils/permit2/witnessData.js +0 -48
  195. package/dist/src/utils/signIntent/custom.d.ts +0 -11
  196. package/dist/src/utils/signIntent/custom.js +0 -31
  197. package/dist/src/utils/signIntent/gasless.d.ts +0 -12
  198. package/dist/src/utils/signIntent/gasless.js +0 -101
  199. package/dist/src/utils/signTypedData.d.ts +0 -11
  200. package/dist/src/utils/signTypedData.js +0 -21
  201. package/dist/src/utils/tokens.d.ts +0 -8
  202. package/dist/src/utils/tokens.js +0 -73
  203. package/dist/src/utils/updateQuotes.d.ts +0 -3
  204. package/dist/src/utils/updateQuotes.js +0 -69
  205. package/dist/src/zap/constants/index.d.ts +0 -2
  206. package/dist/src/zap/constants/index.js +0 -18
  207. package/dist/src/zap/constants/path.d.ts +0 -8
  208. package/dist/src/zap/constants/path.js +0 -11
  209. package/dist/src/zap/constants/step.d.ts +0 -3
  210. package/dist/src/zap/constants/step.js +0 -6
  211. package/dist/src/zap/constants/urls.d.ts +0 -13
  212. package/dist/src/zap/constants/urls.js +0 -16
  213. package/dist/test/build.test.d.ts +0 -1
  214. package/dist/test/build.test.js +0 -65
  215. package/dist/test/permit/permit2Nonce.test.d.ts +0 -2
  216. package/dist/test/permit/permit2Nonce.test.js +0 -96
  217. package/dist/test/quotes.test.d.ts +0 -1
  218. package/dist/test/quotes.test.js +0 -59
  219. package/dist/test/status.test.d.ts +0 -1
  220. package/dist/test/status.test.js +0 -37
  221. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -1,255 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const axios_1 = require("axios");
4
- const api_1 = require("../api");
5
- const config_1 = require("../config");
6
- const constants_1 = require("../constants");
7
- const approval_1 = require("../constants/approval");
8
- const permit_1 = require("../constants/permit");
9
- const enums_1 = require("../enums");
10
- const price_1 = require("../service/price");
11
- const generic_1 = require("../transactionHandlers/generic");
12
- const permit_2 = require("../transactionHandlers/permit");
13
- const trade_1 = require("../transactionHandlers/trade");
14
- const zap_1 = require("../transactionHandlers/zap");
15
- const utils_1 = require("../utils");
16
- const eip_5792_1 = require("../utils/eip-5792");
17
- const erc20_1 = require("../utils/erc20");
18
- const tokens_1 = require("../utils/tokens");
19
- const updateQuotes_1 = require("../utils/updateQuotes");
20
- class DZapClient {
21
- constructor() {
22
- this.cancelTokenSource = null;
23
- this.priceService = new price_1.PriceService();
24
- }
25
- static getInstance(apiKey, rpcUrlsByChainId) {
26
- if (!DZapClient.instance) {
27
- DZapClient.instance = new DZapClient();
28
- }
29
- if (apiKey) {
30
- config_1.config.setApiKey(apiKey);
31
- }
32
- if (rpcUrlsByChainId) {
33
- config_1.config.setRpcUrlsByChainId(rpcUrlsByChainId);
34
- }
35
- return DZapClient.instance;
36
- }
37
- static async getChainConfig() {
38
- if (!DZapClient.chainConfig) {
39
- const data = await (0, api_1.fetchAllSupportedChains)();
40
- const chains = {};
41
- data.forEach((chain) => {
42
- if (!chains[chain.chainId]) {
43
- chains[chain.chainId] = chain;
44
- }
45
- });
46
- DZapClient.chainConfig = chains;
47
- }
48
- return DZapClient.chainConfig;
49
- }
50
- static getDZapAbi(service, version) {
51
- return (0, utils_1.getDZapAbi)(service, version);
52
- }
53
- async getTradeQuotes(request) {
54
- const quotes = await (0, api_1.fetchTradeQuotes)(request);
55
- const chainConfig = await DZapClient.getChainConfig();
56
- if (chainConfig === null) {
57
- return quotes;
58
- }
59
- return (0, updateQuotes_1.updateQuotes)(quotes, request, this.priceService, chainConfig);
60
- }
61
- async buildTradeTxn(request) {
62
- return await (0, api_1.fetchTradeBuildTxnData)(request);
63
- }
64
- getTradeTxnStatus({ txHash, txIds, chainId, }) {
65
- return (0, api_1.fetchStatus)({ txHash, txIds, chainId });
66
- }
67
- getAllSupportedChains() {
68
- return (0, api_1.fetchAllSupportedChains)();
69
- }
70
- async getAllTokens(chainId, source, account) {
71
- try {
72
- const [tokensResult, chainConfigResult] = await Promise.allSettled([(0, api_1.fetchAllTokens)(chainId, source, account), DZapClient.getChainConfig()]);
73
- const tokens = tokensResult.status === 'fulfilled' ? tokensResult.value : {};
74
- const chainConfig = chainConfigResult.status === 'fulfilled' ? chainConfigResult.value : null;
75
- if (!chainConfig)
76
- return tokens;
77
- return await (0, tokens_1.updateTokenListPrices)(tokens, chainId, chainConfig, this.priceService);
78
- }
79
- catch (error) {
80
- console.error('Error fetching or updating tokens:', error);
81
- return {};
82
- }
83
- }
84
- async getTokenDetails(tokenAddress, chainId, account, includeBalance, includePrice) {
85
- return await (0, api_1.fetchTokenDetails)(tokenAddress, chainId, account, includeBalance, includePrice);
86
- }
87
- async getTokensDetails(tokenAddresses, chainId, account, includeBalance, includePrice) {
88
- return await (0, api_1.fetchTokenDetails)(tokenAddresses, chainId, account, includeBalance, includePrice);
89
- }
90
- async getTokenPrices(tokenAddresses, chainId) {
91
- const chainConfig = await DZapClient.getChainConfig();
92
- return await this.priceService.getPrices({ chainId, tokenAddresses, chainConfig });
93
- }
94
- async trade({ request, signer, txnData, batchTransaction = false, rpcUrls, }) {
95
- var _a;
96
- const chainConfig = await DZapClient.getChainConfig();
97
- return await trade_1.default.buildAndSendTransaction({
98
- request,
99
- signer,
100
- txnData,
101
- batchTransaction,
102
- multicallAddress: (_a = chainConfig === null || chainConfig === void 0 ? void 0 : chainConfig[request.fromChain]) === null || _a === void 0 ? void 0 : _a.multicallAddress,
103
- rpcUrls,
104
- });
105
- }
106
- async tradeGasless({ request, signer, txnData, }) {
107
- const spender = (await this.getDZapContractAddress({ chainId: request.fromChain, service: constants_1.Services.trade }));
108
- return await trade_1.default.buildGaslessTxAndSignPermit({
109
- request,
110
- signer,
111
- rpcUrls: config_1.config.getRpcUrlsByChainId(request.fromChain),
112
- spender,
113
- txnData,
114
- });
115
- }
116
- async sendTransaction({ chainId, signer, txnData }) {
117
- return await generic_1.default.sendTransaction(Object.assign({ signer,
118
- chainId }, txnData));
119
- }
120
- async waitForBatchTransactionReceipt({ walletClient, batchHash }) {
121
- return await (0, eip_5792_1.waitForBatchTransactionReceipt)(walletClient, batchHash);
122
- }
123
- async decodeTxnData({ data, service, chainId }) {
124
- const publicClient = (0, utils_1.getPublicClient)({ chainId, rpcUrls: config_1.config.getRpcUrlsByChainId(chainId) });
125
- const [chainConfig, transactionData] = await Promise.all([
126
- DZapClient.getChainConfig(),
127
- publicClient.getTransaction({
128
- hash: data.transactionHash,
129
- }),
130
- ]);
131
- if (chainConfig === null || (chainConfig === null || chainConfig === void 0 ? void 0 : chainConfig[chainId]) == null) {
132
- throw new Error('Chains config not found');
133
- }
134
- return (0, utils_1.handleDecodeTxnData)(transactionData, data, service, chainConfig[chainId]);
135
- }
136
- async calculatePoints(request) {
137
- return await (0, api_1.fetchCalculatedPoints)(request);
138
- }
139
- async getDZapContractAddress({ chainId, service }) {
140
- const chainConfig = await DZapClient.getChainConfig();
141
- if (!chainConfig[chainId].isEnabled || !chainConfig) {
142
- throw new Error('Chains config not found');
143
- }
144
- const chainData = chainConfig[chainId];
145
- if (!(chainData === null || chainData === void 0 ? void 0 : chainData.contracts)) {
146
- throw new Error(`No contracts found for chain: ${chainId}`);
147
- }
148
- const contractMap = {
149
- [constants_1.Services.trade]: chainData.contracts.router,
150
- [constants_1.Services.dca]: chainData.contracts.dca,
151
- [constants_1.Services.zap]: chainData.contracts.zap,
152
- };
153
- const contractAddress = contractMap[service];
154
- if (!contractAddress) {
155
- throw new Error(`Contract not found for service "${service}" on chain: ${chainId}`);
156
- }
157
- return contractAddress;
158
- }
159
- async getAllowance({ chainId, sender, tokens, service, rpcUrls, spender, mode = approval_1.ApprovalModes.AutoPermit, }) {
160
- var _a;
161
- const chainConfig = await DZapClient.getChainConfig();
162
- const spenderAddress = spender || (await this.getDZapContractAddress({ chainId, service }));
163
- const multicallAddress = (_a = chainConfig === null || chainConfig === void 0 ? void 0 : chainConfig[chainId]) === null || _a === void 0 ? void 0 : _a.multicallAddress;
164
- return await (0, erc20_1.getAllowance)({
165
- chainId,
166
- sender,
167
- tokens,
168
- rpcUrls: rpcUrls || config_1.config.getRpcUrlsByChainId(chainId),
169
- mode,
170
- spender: spenderAddress,
171
- multicallAddress,
172
- });
173
- }
174
- async approve({ chainId, signer, tokens, approvalTxnCallback, service, mode = approval_1.ApprovalModes.AutoPermit, rpcUrls, spender, }) {
175
- const spenderAddress = spender || (await this.getDZapContractAddress({ chainId, service }));
176
- return await (0, erc20_1.approveToken)({
177
- chainId,
178
- signer,
179
- rpcUrls: rpcUrls || config_1.config.getRpcUrlsByChainId(chainId),
180
- tokens,
181
- approvalTxnCallback,
182
- mode,
183
- spender: spenderAddress,
184
- });
185
- }
186
- async sign(params) {
187
- var _a;
188
- const { service, chainId } = params;
189
- const spenderAddress = (params === null || params === void 0 ? void 0 : params.spender) || (await this.getDZapContractAddress({ chainId, service }));
190
- const chainConfig = await DZapClient.getChainConfig();
191
- const permitType = (params === null || params === void 0 ? void 0 : params.permitType) || permit_1.PermitTypes.AutoPermit;
192
- const request = Object.assign(Object.assign({}, params), { rpcUrls: (params === null || params === void 0 ? void 0 : params.rpcUrls) || config_1.config.getRpcUrlsByChainId(chainId), permitType, spender: spenderAddress, gasless: false, contractVersion: ((_a = chainConfig[chainId]) === null || _a === void 0 ? void 0 : _a.version) || enums_1.ContractVersion.v1 });
193
- return await permit_2.default.signPermit(request);
194
- }
195
- async zap({ request, steps, signer }) {
196
- return await zap_1.default.zap({
197
- request,
198
- steps,
199
- signer,
200
- });
201
- }
202
- async buildZapTxn(request) {
203
- if (this.cancelTokenSource) {
204
- this.cancelTokenSource.cancel('Cancelled due to new request');
205
- }
206
- this.cancelTokenSource = axios_1.default.CancelToken.source();
207
- const route = (await (0, api_1.fetchZapBuildTxnData)(request, this.cancelTokenSource.token)).data;
208
- return route;
209
- }
210
- async getZapQuote(request) {
211
- if (this.cancelTokenSource) {
212
- this.cancelTokenSource.cancel('Cancelled due to new request');
213
- }
214
- this.cancelTokenSource = axios_1.default.CancelToken.source();
215
- const route = (await (0, api_1.fetchZapQuote)(request, this.cancelTokenSource.token)).data;
216
- return route;
217
- }
218
- async getZapTxnStatus(request) {
219
- const status = (await (0, api_1.fetchZapTxnStatus)(request)).data;
220
- return status;
221
- }
222
- async getBalances(chainId, account) {
223
- const balanceData = await (0, api_1.fetchBalances)(chainId, account);
224
- return balanceData.result;
225
- }
226
- async sendBatchCalls({ walletClient, calls }) {
227
- return await (0, eip_5792_1.sendBatchCalls)(walletClient, calls);
228
- }
229
- async getZapPositions(request) {
230
- return (await (0, api_1.fetchZapPositions)(request)).data;
231
- }
232
- async getZapPools(request) {
233
- return (await (0, api_1.fetchZapPools)(request)).data;
234
- }
235
- async getZapPoolDetails(request) {
236
- return (await (0, api_1.fetchZapPoolDetails)(request)).data;
237
- }
238
- async getZapChains() {
239
- return (await (0, api_1.fetchZapChains)()).data;
240
- }
241
- async getZapProviders() {
242
- return (await (0, api_1.fetchZapProviders)()).data;
243
- }
244
- async broadcastTradeTx(request) {
245
- return await (0, api_1.broadcastTradeTx)(request);
246
- }
247
- async broadcastZapTx(request) {
248
- return await (0, api_1.broadcastZapTx)(request);
249
- }
250
- }
251
- DZapClient.chainConfig = null;
252
- DZapClient.getOtherAbi = (name) => {
253
- return (0, utils_1.getOtherAbis)(name);
254
- };
255
- exports.default = DZapClient;
@@ -1,46 +0,0 @@
1
- export declare enum AppEnv {
2
- 'production' = "production",
3
- 'development' = "development"
4
- }
5
- export declare enum ZapPermitType {
6
- PERMIT = 0,
7
- PERMIT2 = 1
8
- }
9
- export declare enum DZapPermitMode {
10
- PERMIT = 0,
11
- PERMIT2_APPROVE = 1,
12
- PERMIT2_WITNESS_TRANSFER = 2,
13
- BATCH_PERMIT2_WITNESS_TRANSFER = 3
14
- }
15
- export declare enum DZapV1PermitMode {
16
- PERMIT = 0,
17
- PERMIT2_TRANSFER_FROM = 1,
18
- PERMIT2_APPROVE = 2
19
- }
20
- export declare enum ContractVersion {
21
- v1 = "v1",
22
- v2 = "v2"
23
- }
24
- export declare enum TxnStatus {
25
- mining = "mining",
26
- success = "success",
27
- rejected = "rejected",
28
- error = "error",
29
- reverted = "reverted",
30
- pendingWalletConfirmation = "pendingWalletConfirmation",
31
- partialSuccess = "partialSuccess"
32
- }
33
- export declare enum Versions {
34
- V1 = "v1",
35
- V1_2 = "v1.2",
36
- V2 = "v2"
37
- }
38
- export declare enum StatusCodes {
39
- UserRejectedRequest = 4001,
40
- Success = 200,
41
- FunctionNotFound = 32771,
42
- Error = 500,
43
- WalletRPCFailure = 429,
44
- SimulationFailure = 417,
45
- ContractExecutionError = -500
46
- }
@@ -1,57 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StatusCodes = exports.Versions = exports.TxnStatus = exports.ContractVersion = exports.DZapV1PermitMode = exports.DZapPermitMode = exports.ZapPermitType = exports.AppEnv = void 0;
4
- var AppEnv;
5
- (function (AppEnv) {
6
- AppEnv["production"] = "production";
7
- AppEnv["development"] = "development";
8
- })(AppEnv || (exports.AppEnv = AppEnv = {}));
9
- var ZapPermitType;
10
- (function (ZapPermitType) {
11
- ZapPermitType[ZapPermitType["PERMIT"] = 0] = "PERMIT";
12
- ZapPermitType[ZapPermitType["PERMIT2"] = 1] = "PERMIT2";
13
- })(ZapPermitType || (exports.ZapPermitType = ZapPermitType = {}));
14
- var DZapPermitMode;
15
- (function (DZapPermitMode) {
16
- DZapPermitMode[DZapPermitMode["PERMIT"] = 0] = "PERMIT";
17
- DZapPermitMode[DZapPermitMode["PERMIT2_APPROVE"] = 1] = "PERMIT2_APPROVE";
18
- DZapPermitMode[DZapPermitMode["PERMIT2_WITNESS_TRANSFER"] = 2] = "PERMIT2_WITNESS_TRANSFER";
19
- DZapPermitMode[DZapPermitMode["BATCH_PERMIT2_WITNESS_TRANSFER"] = 3] = "BATCH_PERMIT2_WITNESS_TRANSFER";
20
- })(DZapPermitMode || (exports.DZapPermitMode = DZapPermitMode = {}));
21
- var DZapV1PermitMode;
22
- (function (DZapV1PermitMode) {
23
- DZapV1PermitMode[DZapV1PermitMode["PERMIT"] = 0] = "PERMIT";
24
- DZapV1PermitMode[DZapV1PermitMode["PERMIT2_TRANSFER_FROM"] = 1] = "PERMIT2_TRANSFER_FROM";
25
- DZapV1PermitMode[DZapV1PermitMode["PERMIT2_APPROVE"] = 2] = "PERMIT2_APPROVE";
26
- })(DZapV1PermitMode || (exports.DZapV1PermitMode = DZapV1PermitMode = {}));
27
- var ContractVersion;
28
- (function (ContractVersion) {
29
- ContractVersion["v1"] = "v1";
30
- ContractVersion["v2"] = "v2";
31
- })(ContractVersion || (exports.ContractVersion = ContractVersion = {}));
32
- var TxnStatus;
33
- (function (TxnStatus) {
34
- TxnStatus["mining"] = "mining";
35
- TxnStatus["success"] = "success";
36
- TxnStatus["rejected"] = "rejected";
37
- TxnStatus["error"] = "error";
38
- TxnStatus["reverted"] = "reverted";
39
- TxnStatus["pendingWalletConfirmation"] = "pendingWalletConfirmation";
40
- TxnStatus["partialSuccess"] = "partialSuccess";
41
- })(TxnStatus || (exports.TxnStatus = TxnStatus = {}));
42
- var Versions;
43
- (function (Versions) {
44
- Versions["V1"] = "v1";
45
- Versions["V1_2"] = "v1.2";
46
- Versions["V2"] = "v2";
47
- })(Versions || (exports.Versions = Versions = {}));
48
- var StatusCodes;
49
- (function (StatusCodes) {
50
- StatusCodes[StatusCodes["UserRejectedRequest"] = 4001] = "UserRejectedRequest";
51
- StatusCodes[StatusCodes["Success"] = 200] = "Success";
52
- StatusCodes[StatusCodes["FunctionNotFound"] = 32771] = "FunctionNotFound";
53
- StatusCodes[StatusCodes["Error"] = 500] = "Error";
54
- StatusCodes[StatusCodes["WalletRPCFailure"] = 429] = "WalletRPCFailure";
55
- StatusCodes[StatusCodes["SimulationFailure"] = 417] = "SimulationFailure";
56
- StatusCodes[StatusCodes["ContractExecutionError"] = -500] = "ContractExecutionError";
57
- })(StatusCodes || (exports.StatusCodes = StatusCodes = {}));
@@ -1,17 +0,0 @@
1
- import { OtherAbis, QuoteFilters, Services, STATUS } from './constants';
2
- import { ApprovalModes } from './constants/approval';
3
- import { erc20Functions } from './constants/erc20';
4
- import { PermitTypes } from './constants/permit';
5
- import { SignatureExpiryInSecs } from './constants/permit2';
6
- import DZapClient from './dZapClient';
7
- import { DZapPermitMode, StatusCodes, TxnStatus } from './enums';
8
- import { ApiRpcResponse, ApprovalMode, BatchPermitCallbackParams, BtcTxData, Chain, ChainData, contractErrorActions, ContractErrorResponse, DZapTransactionResponse, EvmTxData, Fee, FeeDetails, GaslessTradeBuildTxnResponse, HexString, ParamQuotes, PermitMode, ProviderDetails, QuoteFilter, SignatureCallbackParams, SignPermitResponse, SinglePermitCallbackParams, SvmTxData, SwapInfo, Token, TokenInfo, TokenPermitData, TokenResponse, TradeBuildTxnRequest, TradeBuildTxnRequestData, TradeBuildTxnResponse, TradeGasBuildTxnResponse, TradePath, TradeQuotesRequest, TradeQuotesRequestData, TradeQuotesResponse, TradeStatusResponse, TradeStep } from './types';
9
- import { PsbtInput, PsbtOutput } from './types/btc';
10
- import { ZapIntegratorConfig, ZapStatusResponse } from './types/zap';
11
- import { getTokensPairKey } from './utils';
12
- import { SwapInputDataDecoder } from './utils/decoder/swap/inputDataDecoder';
13
- import { checkEIP2612PermitSupport } from './utils/eip-2612/eip2612Permit';
14
- import { formatToken } from './utils/tokens';
15
- export * from './types/zap';
16
- export * from './zap/constants';
17
- export { ApiRpcResponse, ApprovalMode, ApprovalModes, BatchPermitCallbackParams, BtcTxData, Chain, ChainData, checkEIP2612PermitSupport, contractErrorActions, ContractErrorResponse, DZapClient, DZapPermitMode, DZapTransactionResponse, erc20Functions, EvmTxData, Fee, FeeDetails, formatToken, GaslessTradeBuildTxnResponse, getTokensPairKey, HexString, OtherAbis, ParamQuotes, PermitMode, PermitTypes, ProviderDetails, PsbtInput, PsbtOutput, QuoteFilter, QuoteFilters, Services, SignatureCallbackParams, SignatureExpiryInSecs, SignPermitResponse, SinglePermitCallbackParams, STATUS, StatusCodes, SvmTxData, SwapInfo, SwapInputDataDecoder, Token, TokenInfo, TokenPermitData, TokenResponse, TradeBuildTxnRequest, TradeBuildTxnRequestData, TradeBuildTxnResponse, TradeGasBuildTxnResponse, TradePath, TradeQuotesRequest, TradeQuotesRequestData, TradeQuotesResponse, TradeStatusResponse, TradeStep, TxnStatus, ZapIntegratorConfig, ZapStatusResponse, };
package/dist/src/index.js DELETED
@@ -1,48 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.TxnStatus = exports.SwapInputDataDecoder = exports.StatusCodes = exports.STATUS = exports.SignatureExpiryInSecs = exports.Services = exports.QuoteFilters = exports.PermitTypes = exports.OtherAbis = exports.getTokensPairKey = exports.formatToken = exports.erc20Functions = exports.DZapPermitMode = exports.DZapClient = exports.contractErrorActions = exports.checkEIP2612PermitSupport = exports.ApprovalModes = void 0;
18
- const constants_1 = require("./constants");
19
- Object.defineProperty(exports, "OtherAbis", { enumerable: true, get: function () { return constants_1.OtherAbis; } });
20
- Object.defineProperty(exports, "QuoteFilters", { enumerable: true, get: function () { return constants_1.QuoteFilters; } });
21
- Object.defineProperty(exports, "Services", { enumerable: true, get: function () { return constants_1.Services; } });
22
- Object.defineProperty(exports, "STATUS", { enumerable: true, get: function () { return constants_1.STATUS; } });
23
- const approval_1 = require("./constants/approval");
24
- Object.defineProperty(exports, "ApprovalModes", { enumerable: true, get: function () { return approval_1.ApprovalModes; } });
25
- const erc20_1 = require("./constants/erc20");
26
- Object.defineProperty(exports, "erc20Functions", { enumerable: true, get: function () { return erc20_1.erc20Functions; } });
27
- const permit_1 = require("./constants/permit");
28
- Object.defineProperty(exports, "PermitTypes", { enumerable: true, get: function () { return permit_1.PermitTypes; } });
29
- const permit2_1 = require("./constants/permit2");
30
- Object.defineProperty(exports, "SignatureExpiryInSecs", { enumerable: true, get: function () { return permit2_1.SignatureExpiryInSecs; } });
31
- const dZapClient_1 = require("./dZapClient");
32
- exports.DZapClient = dZapClient_1.default;
33
- const enums_1 = require("./enums");
34
- Object.defineProperty(exports, "DZapPermitMode", { enumerable: true, get: function () { return enums_1.DZapPermitMode; } });
35
- Object.defineProperty(exports, "StatusCodes", { enumerable: true, get: function () { return enums_1.StatusCodes; } });
36
- Object.defineProperty(exports, "TxnStatus", { enumerable: true, get: function () { return enums_1.TxnStatus; } });
37
- const types_1 = require("./types");
38
- Object.defineProperty(exports, "contractErrorActions", { enumerable: true, get: function () { return types_1.contractErrorActions; } });
39
- const utils_1 = require("./utils");
40
- Object.defineProperty(exports, "getTokensPairKey", { enumerable: true, get: function () { return utils_1.getTokensPairKey; } });
41
- const inputDataDecoder_1 = require("./utils/decoder/swap/inputDataDecoder");
42
- Object.defineProperty(exports, "SwapInputDataDecoder", { enumerable: true, get: function () { return inputDataDecoder_1.SwapInputDataDecoder; } });
43
- const eip2612Permit_1 = require("./utils/eip-2612/eip2612Permit");
44
- Object.defineProperty(exports, "checkEIP2612PermitSupport", { enumerable: true, get: function () { return eip2612Permit_1.checkEIP2612PermitSupport; } });
45
- const tokens_1 = require("./utils/tokens");
46
- Object.defineProperty(exports, "formatToken", { enumerable: true, get: function () { return tokens_1.formatToken; } });
47
- __exportStar(require("./types/zap"), exports);
48
- __exportStar(require("./zap/constants"), exports);
@@ -1,10 +0,0 @@
1
- export declare class CacheProvider {
2
- private static _instance;
3
- private readonly client;
4
- private constructor();
5
- static get instance(): CacheProvider;
6
- static set<T>(key: string, value: T, ttl?: number): void;
7
- static get<T>(key: string): T | undefined;
8
- static delete(key: string): number;
9
- static flush(): void;
10
- }
@@ -1,72 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CacheProvider = void 0;
4
- const isNode = typeof process !== 'undefined' && process.versions && process.versions.node;
5
- let Cache = null;
6
- if (isNode) {
7
- try {
8
- Cache = require('node-cache');
9
- }
10
- catch (error) {
11
- Cache = null;
12
- }
13
- }
14
- class InMemoryCache {
15
- constructor() {
16
- this.cache = new Map();
17
- }
18
- set(key, value, ttl) {
19
- const expiry = ttl ? Date.now() + ttl * 1000 : undefined;
20
- this.cache.set(key, { value, expiry });
21
- }
22
- get(key) {
23
- const item = this.cache.get(key);
24
- if (!item)
25
- return undefined;
26
- if (item.expiry && Date.now() > item.expiry) {
27
- this.cache.delete(key);
28
- return undefined;
29
- }
30
- return item.value;
31
- }
32
- del(key) {
33
- return this.cache.delete(key) ? 1 : 0;
34
- }
35
- flushAll() {
36
- this.cache.clear();
37
- }
38
- }
39
- class CacheProvider {
40
- constructor() {
41
- if (isNode && Cache) {
42
- this.client = new Cache({
43
- checkperiod: 10,
44
- deleteOnExpire: true,
45
- });
46
- }
47
- else {
48
- this.client = new InMemoryCache();
49
- }
50
- }
51
- static get instance() {
52
- if (!CacheProvider._instance) {
53
- CacheProvider._instance = new CacheProvider();
54
- }
55
- return CacheProvider._instance;
56
- }
57
- static set(key, value, ttl) {
58
- if (value == null)
59
- return;
60
- this.instance.client.set(key, value, ttl !== null && ttl !== void 0 ? ttl : 0);
61
- }
62
- static get(key) {
63
- return this.instance.client.get(key);
64
- }
65
- static delete(key) {
66
- return this.instance.client.del(key);
67
- }
68
- static flush() {
69
- this.instance.client.flushAll();
70
- }
71
- }
72
- exports.CacheProvider = CacheProvider;
@@ -1,2 +0,0 @@
1
- export declare const TOKENS_PRICE_EXPIRY: number;
2
- export declare const getTokensPriceCacheKey: (chainId: number) => string;
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTokensPriceCacheKey = exports.TOKENS_PRICE_EXPIRY = void 0;
4
- exports.TOKENS_PRICE_EXPIRY = 15 * 60;
5
- const getTokensPriceCacheKey = (chainId) => `tokenPrices_${chainId}`;
6
- exports.getTokensPriceCacheKey = getTokensPriceCacheKey;
@@ -1,16 +0,0 @@
1
- import { ChainData } from '../../types';
2
- import { PriceProvider } from './types/IPriceProvider';
3
- export declare class PriceService {
4
- private providers;
5
- constructor();
6
- private initailizeProviders;
7
- getPrices({ chainId, tokenAddresses, chainConfig, allowedSources, notAllowSources, }: {
8
- chainId: number;
9
- tokenAddresses: string[];
10
- chainConfig: ChainData | null;
11
- allowedSources?: PriceProvider[];
12
- notAllowSources?: PriceProvider[];
13
- }): Promise<Record<string, string | null>>;
14
- private getValidProviders;
15
- private updateTokensPrice;
16
- }
@@ -1,80 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PriceService = void 0;
4
- const cacheProvider_1 = require("../cache/cacheProvider");
5
- const constant_1 = require("../cache/constant");
6
- const coingecko_1 = require("./provider/coingecko");
7
- const defiLlama_1 = require("./provider/defiLlama");
8
- const dzap_1 = require("./provider/dzap");
9
- const IPriceProvider_1 = require("./types/IPriceProvider");
10
- class PriceService {
11
- constructor() {
12
- this.providers = this.initailizeProviders();
13
- }
14
- initailizeProviders() {
15
- return new Map([
16
- [IPriceProvider_1.priceProviders.dZap, new dzap_1.DZapPriceProvider()],
17
- [IPriceProvider_1.priceProviders.defiLlama, new defiLlama_1.DefiLlamaPriceProvider()],
18
- [IPriceProvider_1.priceProviders.coingecko, new coingecko_1.CoingeckoPriceProvider()],
19
- ]);
20
- }
21
- async getPrices({ chainId, tokenAddresses, chainConfig, allowedSources, notAllowSources = [], }) {
22
- if (!tokenAddresses || tokenAddresses.length === 0) {
23
- return {};
24
- }
25
- const validProviders = this.getValidProviders({ allowedSources, notAllowSources, chainConfig });
26
- if (validProviders.length === 0) {
27
- return {};
28
- }
29
- const cacheKey = (0, constant_1.getTokensPriceCacheKey)(chainId);
30
- const cachedPrices = cacheProvider_1.CacheProvider.get(cacheKey) || {};
31
- const tokenWithPrice = {};
32
- const result = {};
33
- tokenAddresses.forEach((token) => {
34
- if (!(cachedPrices === null || cachedPrices === void 0 ? void 0 : cachedPrices[token])) {
35
- result[token] = null;
36
- }
37
- });
38
- for (const provider of validProviders) {
39
- const tokens = Object.keys(result).filter((token) => result[token] === null);
40
- if (tokens.length === 0)
41
- break;
42
- const fetchedPrices = await provider.fetchPrices(chainId, tokens, chainConfig);
43
- this.updateTokensPrice(fetchedPrices, result);
44
- }
45
- const remainingTokens = [];
46
- for (const [token, price] of Object.entries(result)) {
47
- if (price === null) {
48
- remainingTokens.push(token);
49
- }
50
- else {
51
- tokenWithPrice[token] = price;
52
- }
53
- }
54
- if (Object.keys(tokenWithPrice).length > 0) {
55
- cacheProvider_1.CacheProvider.set(cacheKey, Object.assign(Object.assign({}, cachedPrices), tokenWithPrice), constant_1.TOKENS_PRICE_EXPIRY);
56
- }
57
- return Object.assign(Object.assign({}, cachedPrices), result);
58
- }
59
- getValidProviders({ allowedSources, notAllowSources, chainConfig, }) {
60
- return Array.from(this.providers.values()).filter((provider) => {
61
- var _a, _b;
62
- const isInAllowedSources = (_a = allowedSources === null || allowedSources === void 0 ? void 0 : allowedSources.includes(provider.id)) !== null && _a !== void 0 ? _a : true;
63
- const isInNotAllowedSources = (_b = notAllowSources === null || notAllowSources === void 0 ? void 0 : notAllowSources.includes(provider.id)) !== null && _b !== void 0 ? _b : false;
64
- const isAllowed = allowedSources ? isInAllowedSources && !isInNotAllowedSources : !isInNotAllowedSources;
65
- if (provider.requiresChainConfig && !chainConfig) {
66
- console.error(`Provider ${provider.id} requires chainConfig but none was provided.`);
67
- return false;
68
- }
69
- return isAllowed;
70
- });
71
- }
72
- updateTokensPrice(fetchedPrices, finalPrices) {
73
- Object.entries(fetchedPrices).forEach(([token, price]) => {
74
- if (price !== null) {
75
- finalPrices[token] = price;
76
- }
77
- });
78
- }
79
- }
80
- exports.PriceService = PriceService;
@@ -1,6 +0,0 @@
1
- export declare const coingeckoConfig: {
2
- urls: {
3
- nativeTokenPrice: (chainKey: string) => string;
4
- ecr20TokenPrice: (contractAddress: string, chainKey: string) => string;
5
- };
6
- };
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.coingeckoConfig = void 0;
4
- exports.coingeckoConfig = {
5
- urls: {
6
- nativeTokenPrice: (chainKey) => `https://api.coingecko.com/api/v3/simple/price?ids=${chainKey}&vs_currencies=usd&include_last_updated_at=true`,
7
- ecr20TokenPrice: (contractAddress, chainKey) => `https://api.coingecko.com/api/v3/simple/token_price/${chainKey}?contract_addresses=${contractAddress}&vs_currencies=usd&include_last_updated_at=true`,
8
- },
9
- };
@@ -1,9 +0,0 @@
1
- import { ChainData } from '../../../../types';
2
- import { IPriceProvider } from '../../types/IPriceProvider';
3
- export declare class CoingeckoPriceProvider implements IPriceProvider {
4
- id: "coingecko";
5
- requiresChainConfig: boolean;
6
- private fetchNativePrice;
7
- private fetchERC20Prices;
8
- fetchPrices: (chainId: number, tokenAddresses: string[], chainConfig: ChainData) => Promise<Record<string, string | null>>;
9
- }