@sodax/sdk 0.0.1-rc.2 → 0.0.1-rc.20

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 (315) hide show
  1. package/README.md +166 -11
  2. package/dist/index.cjs +14914 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.d.cts +9031 -0
  5. package/dist/index.d.ts +9031 -10
  6. package/dist/index.mjs +14717 -0
  7. package/dist/index.mjs.map +1 -0
  8. package/package.json +31 -32
  9. package/dist/abis/asset-manager.abi.d.ts +0 -418
  10. package/dist/abis/asset-manager.abi.d.ts.map +0 -1
  11. package/dist/abis/asset-manager.abi.js +0 -542
  12. package/dist/abis/asset-manager.abi.js.map +0 -1
  13. package/dist/abis/connection.abi.d.ts +0 -72
  14. package/dist/abis/connection.abi.d.ts.map +0 -1
  15. package/dist/abis/connection.abi.js +0 -92
  16. package/dist/abis/connection.abi.js.map +0 -1
  17. package/dist/abis/erc20.abi.d.ts +0 -236
  18. package/dist/abis/erc20.abi.d.ts.map +0 -1
  19. package/dist/abis/erc20.abi.js +0 -311
  20. package/dist/abis/erc20.abi.js.map +0 -1
  21. package/dist/abis/index.d.ts +0 -10
  22. package/dist/abis/index.d.ts.map +0 -1
  23. package/dist/abis/index.js +0 -10
  24. package/dist/abis/index.js.map +0 -1
  25. package/dist/abis/intents.abi.d.ts +0 -901
  26. package/dist/abis/intents.abi.d.ts.map +0 -1
  27. package/dist/abis/intents.abi.js +0 -1158
  28. package/dist/abis/intents.abi.js.map +0 -1
  29. package/dist/abis/pool.abi.d.ts +0 -626
  30. package/dist/abis/pool.abi.d.ts.map +0 -1
  31. package/dist/abis/pool.abi.js +0 -812
  32. package/dist/abis/pool.abi.js.map +0 -1
  33. package/dist/abis/spokeAssetManager.abi.d.ts +0 -169
  34. package/dist/abis/spokeAssetManager.abi.d.ts.map +0 -1
  35. package/dist/abis/spokeAssetManager.abi.js +0 -217
  36. package/dist/abis/spokeAssetManager.abi.js.map +0 -1
  37. package/dist/abis/uiPoolData.abi.d.ts +0 -369
  38. package/dist/abis/uiPoolData.abi.d.ts.map +0 -1
  39. package/dist/abis/uiPoolData.abi.js +0 -476
  40. package/dist/abis/uiPoolData.abi.js.map +0 -1
  41. package/dist/abis/vaultToken.abi.d.ts +0 -816
  42. package/dist/abis/vaultToken.abi.d.ts.map +0 -1
  43. package/dist/abis/vaultToken.abi.js +0 -1062
  44. package/dist/abis/vaultToken.abi.js.map +0 -1
  45. package/dist/abis/walletFactory.abi.d.ts +0 -20
  46. package/dist/abis/walletFactory.abi.d.ts.map +0 -1
  47. package/dist/abis/walletFactory.abi.js +0 -27
  48. package/dist/abis/walletFactory.abi.js.map +0 -1
  49. package/dist/constants.d.ts +0 -565
  50. package/dist/constants.d.ts.map +0 -1
  51. package/dist/constants.js +0 -1196
  52. package/dist/constants.js.map +0 -1
  53. package/dist/constants.test.d.ts +0 -2
  54. package/dist/constants.test.d.ts.map +0 -1
  55. package/dist/constants.test.js +0 -128
  56. package/dist/constants.test.js.map +0 -1
  57. package/dist/entities/Providers.d.ts +0 -61
  58. package/dist/entities/Providers.d.ts.map +0 -1
  59. package/dist/entities/Providers.js +0 -51
  60. package/dist/entities/Providers.js.map +0 -1
  61. package/dist/entities/Sodax.d.ts +0 -23
  62. package/dist/entities/Sodax.d.ts.map +0 -1
  63. package/dist/entities/Sodax.js +0 -29
  64. package/dist/entities/Sodax.js.map +0 -1
  65. package/dist/entities/Sodax.test.d.ts +0 -2
  66. package/dist/entities/Sodax.test.d.ts.map +0 -1
  67. package/dist/entities/Sodax.test.js +0 -376
  68. package/dist/entities/Sodax.test.js.map +0 -1
  69. package/dist/entities/cosmos/CW20Token.d.ts +0 -39
  70. package/dist/entities/cosmos/CW20Token.d.ts.map +0 -1
  71. package/dist/entities/cosmos/CW20Token.js +0 -65
  72. package/dist/entities/cosmos/CW20Token.js.map +0 -1
  73. package/dist/entities/cosmos/CWSpokeProvider.d.ts +0 -91
  74. package/dist/entities/cosmos/CWSpokeProvider.d.ts.map +0 -1
  75. package/dist/entities/cosmos/CWSpokeProvider.js +0 -143
  76. package/dist/entities/cosmos/CWSpokeProvider.js.map +0 -1
  77. package/dist/entities/cosmos/CosmosWalletProvider.d.ts +0 -28
  78. package/dist/entities/cosmos/CosmosWalletProvider.d.ts.map +0 -1
  79. package/dist/entities/cosmos/CosmosWalletProvider.js +0 -102
  80. package/dist/entities/cosmos/CosmosWalletProvider.js.map +0 -1
  81. package/dist/entities/cosmos/InjectiveWalletProvider.d.ts +0 -25
  82. package/dist/entities/cosmos/InjectiveWalletProvider.d.ts.map +0 -1
  83. package/dist/entities/cosmos/InjectiveWalletProvider.js +0 -76
  84. package/dist/entities/cosmos/InjectiveWalletProvider.js.map +0 -1
  85. package/dist/entities/icon/HanaWalletConnector.d.ts +0 -36
  86. package/dist/entities/icon/HanaWalletConnector.d.ts.map +0 -1
  87. package/dist/entities/icon/HanaWalletConnector.js +0 -92
  88. package/dist/entities/icon/HanaWalletConnector.js.map +0 -1
  89. package/dist/entities/icon/IconSpokeProvider.d.ts +0 -8
  90. package/dist/entities/icon/IconSpokeProvider.d.ts.map +0 -1
  91. package/dist/entities/icon/IconSpokeProvider.js +0 -9
  92. package/dist/entities/icon/IconSpokeProvider.js.map +0 -1
  93. package/dist/entities/icon/IconWalletProvider.d.ts +0 -12
  94. package/dist/entities/icon/IconWalletProvider.d.ts.map +0 -1
  95. package/dist/entities/icon/IconWalletProvider.js +0 -34
  96. package/dist/entities/icon/IconWalletProvider.js.map +0 -1
  97. package/dist/entities/icon/index.d.ts +0 -5
  98. package/dist/entities/icon/index.d.ts.map +0 -1
  99. package/dist/entities/icon/index.js +0 -5
  100. package/dist/entities/icon/index.js.map +0 -1
  101. package/dist/entities/icon/utils.d.ts +0 -3
  102. package/dist/entities/icon/utils.d.ts.map +0 -1
  103. package/dist/entities/icon/utils.js +0 -4
  104. package/dist/entities/icon/utils.js.map +0 -1
  105. package/dist/entities/index.d.ts +0 -8
  106. package/dist/entities/index.d.ts.map +0 -1
  107. package/dist/entities/index.js +0 -8
  108. package/dist/entities/index.js.map +0 -1
  109. package/dist/entities/solana/Configs.d.ts +0 -10
  110. package/dist/entities/solana/Configs.d.ts.map +0 -1
  111. package/dist/entities/solana/Configs.js +0 -50
  112. package/dist/entities/solana/Configs.js.map +0 -1
  113. package/dist/entities/solana/SolanaSpokeProvider.d.ts +0 -9
  114. package/dist/entities/solana/SolanaSpokeProvider.d.ts.map +0 -1
  115. package/dist/entities/solana/SolanaSpokeProvider.js +0 -9
  116. package/dist/entities/solana/SolanaSpokeProvider.js.map +0 -1
  117. package/dist/entities/solana/SolanaWalletProvider.d.ts +0 -20
  118. package/dist/entities/solana/SolanaWalletProvider.d.ts.map +0 -1
  119. package/dist/entities/solana/SolanaWalletProvider.js +0 -53
  120. package/dist/entities/solana/SolanaWalletProvider.js.map +0 -1
  121. package/dist/entities/solana/index.d.ts +0 -4
  122. package/dist/entities/solana/index.d.ts.map +0 -1
  123. package/dist/entities/solana/index.js +0 -4
  124. package/dist/entities/solana/index.js.map +0 -1
  125. package/dist/entities/solana/pda/pda.d.ts +0 -45
  126. package/dist/entities/solana/pda/pda.d.ts.map +0 -1
  127. package/dist/entities/solana/pda/pda.js +0 -44
  128. package/dist/entities/solana/pda/pda.js.map +0 -1
  129. package/dist/entities/solana/types/asset_manager.d.ts +0 -919
  130. package/dist/entities/solana/types/asset_manager.d.ts.map +0 -1
  131. package/dist/entities/solana/types/asset_manager.js +0 -2
  132. package/dist/entities/solana/types/asset_manager.js.map +0 -1
  133. package/dist/entities/solana/types/connection.d.ts +0 -446
  134. package/dist/entities/solana/types/connection.d.ts.map +0 -1
  135. package/dist/entities/solana/types/connection.js +0 -2
  136. package/dist/entities/solana/types/connection.js.map +0 -1
  137. package/dist/entities/solana/types/rate_limit_contract.d.ts +0 -348
  138. package/dist/entities/solana/types/rate_limit_contract.d.ts.map +0 -1
  139. package/dist/entities/solana/types/rate_limit_contract.js +0 -2
  140. package/dist/entities/solana/types/rate_limit_contract.js.map +0 -1
  141. package/dist/entities/solana/utils/utils.d.ts +0 -6
  142. package/dist/entities/solana/utils/utils.d.ts.map +0 -1
  143. package/dist/entities/solana/utils/utils.js +0 -17
  144. package/dist/entities/solana/utils/utils.js.map +0 -1
  145. package/dist/entities/stellar/StellarSpokeProvider.d.ts +0 -24
  146. package/dist/entities/stellar/StellarSpokeProvider.d.ts.map +0 -1
  147. package/dist/entities/stellar/StellarSpokeProvider.js +0 -129
  148. package/dist/entities/stellar/StellarSpokeProvider.js.map +0 -1
  149. package/dist/entities/sui/SuiSpokeProvider.d.ts +0 -34
  150. package/dist/entities/sui/SuiSpokeProvider.d.ts.map +0 -1
  151. package/dist/entities/sui/SuiSpokeProvider.js +0 -143
  152. package/dist/entities/sui/SuiSpokeProvider.js.map +0 -1
  153. package/dist/entities/sui/SuiWalletProvider.d.ts +0 -15
  154. package/dist/entities/sui/SuiWalletProvider.d.ts.map +0 -1
  155. package/dist/entities/sui/SuiWalletProvider.js +0 -43
  156. package/dist/entities/sui/SuiWalletProvider.js.map +0 -1
  157. package/dist/errors.d.ts +0 -2
  158. package/dist/errors.d.ts.map +0 -1
  159. package/dist/errors.js +0 -2
  160. package/dist/errors.js.map +0 -1
  161. package/dist/guards.d.ts +0 -25
  162. package/dist/guards.d.ts.map +0 -1
  163. package/dist/guards.js +0 -110
  164. package/dist/guards.js.map +0 -1
  165. package/dist/index.d.ts.map +0 -1
  166. package/dist/index.js +0 -10
  167. package/dist/index.js.map +0 -1
  168. package/dist/interfaces.d.ts +0 -8
  169. package/dist/interfaces.d.ts.map +0 -1
  170. package/dist/interfaces.js +0 -2
  171. package/dist/interfaces.js.map +0 -1
  172. package/dist/services/hub/EvmAssetManagerService.d.ts +0 -60
  173. package/dist/services/hub/EvmAssetManagerService.d.ts.map +0 -1
  174. package/dist/services/hub/EvmAssetManagerService.js +0 -103
  175. package/dist/services/hub/EvmAssetManagerService.js.map +0 -1
  176. package/dist/services/hub/EvmVaultTokenService.d.ts +0 -81
  177. package/dist/services/hub/EvmVaultTokenService.d.ts.map +0 -1
  178. package/dist/services/hub/EvmVaultTokenService.js +0 -159
  179. package/dist/services/hub/EvmVaultTokenService.js.map +0 -1
  180. package/dist/services/hub/EvmWalletAbstraction.d.ts +0 -8
  181. package/dist/services/hub/EvmWalletAbstraction.d.ts.map +0 -1
  182. package/dist/services/hub/EvmWalletAbstraction.js +0 -14
  183. package/dist/services/hub/EvmWalletAbstraction.js.map +0 -1
  184. package/dist/services/hub/index.d.ts +0 -4
  185. package/dist/services/hub/index.d.ts.map +0 -1
  186. package/dist/services/hub/index.js +0 -4
  187. package/dist/services/hub/index.js.map +0 -1
  188. package/dist/services/index.d.ts +0 -7
  189. package/dist/services/index.d.ts.map +0 -1
  190. package/dist/services/index.js +0 -7
  191. package/dist/services/index.js.map +0 -1
  192. package/dist/services/intentRelay/IntentRelayApiService.d.ts +0 -111
  193. package/dist/services/intentRelay/IntentRelayApiService.d.ts.map +0 -1
  194. package/dist/services/intentRelay/IntentRelayApiService.js +0 -160
  195. package/dist/services/intentRelay/IntentRelayApiService.js.map +0 -1
  196. package/dist/services/intentRelay/IntentRelayApiService.test.d.ts +0 -2
  197. package/dist/services/intentRelay/IntentRelayApiService.test.d.ts.map +0 -1
  198. package/dist/services/intentRelay/IntentRelayApiService.test.js +0 -134
  199. package/dist/services/intentRelay/IntentRelayApiService.test.js.map +0 -1
  200. package/dist/services/intentRelay/index.d.ts +0 -2
  201. package/dist/services/intentRelay/index.d.ts.map +0 -1
  202. package/dist/services/intentRelay/index.js +0 -2
  203. package/dist/services/intentRelay/index.js.map +0 -1
  204. package/dist/services/moneyMarket/MoneyMarketService.d.ts +0 -321
  205. package/dist/services/moneyMarket/MoneyMarketService.d.ts.map +0 -1
  206. package/dist/services/moneyMarket/MoneyMarketService.js +0 -604
  207. package/dist/services/moneyMarket/MoneyMarketService.js.map +0 -1
  208. package/dist/services/moneyMarket/MoneyMarketService.test.d.ts +0 -2
  209. package/dist/services/moneyMarket/MoneyMarketService.test.d.ts.map +0 -1
  210. package/dist/services/moneyMarket/MoneyMarketService.test.js +0 -245
  211. package/dist/services/moneyMarket/MoneyMarketService.test.js.map +0 -1
  212. package/dist/services/moneyMarket/index.d.ts +0 -2
  213. package/dist/services/moneyMarket/index.d.ts.map +0 -1
  214. package/dist/services/moneyMarket/index.js +0 -2
  215. package/dist/services/moneyMarket/index.js.map +0 -1
  216. package/dist/services/shared/Erc20Service.d.ts +0 -41
  217. package/dist/services/shared/Erc20Service.d.ts.map +0 -1
  218. package/dist/services/shared/Erc20Service.js +0 -107
  219. package/dist/services/shared/Erc20Service.js.map +0 -1
  220. package/dist/services/shared/index.d.ts +0 -2
  221. package/dist/services/shared/index.d.ts.map +0 -1
  222. package/dist/services/shared/index.js +0 -2
  223. package/dist/services/shared/index.js.map +0 -1
  224. package/dist/services/solver/EvmSolverService.d.ts +0 -125
  225. package/dist/services/solver/EvmSolverService.d.ts.map +0 -1
  226. package/dist/services/solver/EvmSolverService.js +0 -166
  227. package/dist/services/solver/EvmSolverService.js.map +0 -1
  228. package/dist/services/solver/SolverApiService.d.ts +0 -40
  229. package/dist/services/solver/SolverApiService.d.ts.map +0 -1
  230. package/dist/services/solver/SolverApiService.js +0 -157
  231. package/dist/services/solver/SolverApiService.js.map +0 -1
  232. package/dist/services/solver/SolverApiService.test.d.ts +0 -2
  233. package/dist/services/solver/SolverApiService.test.d.ts.map +0 -1
  234. package/dist/services/solver/SolverApiService.test.js +0 -180
  235. package/dist/services/solver/SolverApiService.test.js.map +0 -1
  236. package/dist/services/solver/SolverService.d.ts +0 -194
  237. package/dist/services/solver/SolverService.d.ts.map +0 -1
  238. package/dist/services/solver/SolverService.js +0 -324
  239. package/dist/services/solver/SolverService.js.map +0 -1
  240. package/dist/services/solver/SolverService.test.d.ts +0 -2
  241. package/dist/services/solver/SolverService.test.d.ts.map +0 -1
  242. package/dist/services/solver/SolverService.test.js +0 -493
  243. package/dist/services/solver/SolverService.test.js.map +0 -1
  244. package/dist/services/solver/index.d.ts +0 -3
  245. package/dist/services/solver/index.d.ts.map +0 -1
  246. package/dist/services/solver/index.js +0 -3
  247. package/dist/services/solver/index.js.map +0 -1
  248. package/dist/services/spoke/CWSpokeService.d.ts +0 -67
  249. package/dist/services/spoke/CWSpokeService.d.ts.map +0 -1
  250. package/dist/services/spoke/CWSpokeService.js +0 -75
  251. package/dist/services/spoke/CWSpokeService.js.map +0 -1
  252. package/dist/services/spoke/EvmSpokeService.d.ts +0 -61
  253. package/dist/services/spoke/EvmSpokeService.d.ts.map +0 -1
  254. package/dist/services/spoke/EvmSpokeService.js +0 -118
  255. package/dist/services/spoke/EvmSpokeService.js.map +0 -1
  256. package/dist/services/spoke/IconSpokeService.d.ts +0 -55
  257. package/dist/services/spoke/IconSpokeService.d.ts.map +0 -1
  258. package/dist/services/spoke/IconSpokeService.js +0 -111
  259. package/dist/services/spoke/IconSpokeService.js.map +0 -1
  260. package/dist/services/spoke/SolanaSpokeService.d.ts +0 -45
  261. package/dist/services/spoke/SolanaSpokeService.d.ts.map +0 -1
  262. package/dist/services/spoke/SolanaSpokeService.js +0 -170
  263. package/dist/services/spoke/SolanaSpokeService.js.map +0 -1
  264. package/dist/services/spoke/SpokeService.d.ts +0 -33
  265. package/dist/services/spoke/SpokeService.d.ts.map +0 -1
  266. package/dist/services/spoke/SpokeService.js +0 -102
  267. package/dist/services/spoke/SpokeService.js.map +0 -1
  268. package/dist/services/spoke/StellarSpokeService.d.ts +0 -35
  269. package/dist/services/spoke/StellarSpokeService.d.ts.map +0 -1
  270. package/dist/services/spoke/StellarSpokeService.js +0 -39
  271. package/dist/services/spoke/StellarSpokeService.js.map +0 -1
  272. package/dist/services/spoke/SuiSpokeService.d.ts +0 -69
  273. package/dist/services/spoke/SuiSpokeService.d.ts.map +0 -1
  274. package/dist/services/spoke/SuiSpokeService.js +0 -74
  275. package/dist/services/spoke/SuiSpokeService.js.map +0 -1
  276. package/dist/services/spoke/index.d.ts +0 -3
  277. package/dist/services/spoke/index.d.ts.map +0 -1
  278. package/dist/services/spoke/index.js +0 -3
  279. package/dist/services/spoke/index.js.map +0 -1
  280. package/dist/tests/services/hub/EvmAssetManagerService.test.d.ts +0 -2
  281. package/dist/tests/services/hub/EvmAssetManagerService.test.d.ts.map +0 -1
  282. package/dist/tests/services/hub/EvmAssetManagerService.test.js +0 -123
  283. package/dist/tests/services/hub/EvmAssetManagerService.test.js.map +0 -1
  284. package/dist/tests/services/hub/EvmMoneyMarketService.test.d.ts +0 -2
  285. package/dist/tests/services/hub/EvmMoneyMarketService.test.d.ts.map +0 -1
  286. package/dist/tests/services/hub/EvmMoneyMarketService.test.js +0 -121
  287. package/dist/tests/services/hub/EvmMoneyMarketService.test.js.map +0 -1
  288. package/dist/tests/services/hub/EvmVaultTokenService.test.d.ts +0 -2
  289. package/dist/tests/services/hub/EvmVaultTokenService.test.d.ts.map +0 -1
  290. package/dist/tests/services/hub/EvmVaultTokenService.test.js +0 -98
  291. package/dist/tests/services/hub/EvmVaultTokenService.test.js.map +0 -1
  292. package/dist/tests/services/spoke/EvmSpokeService.test.d.ts +0 -2
  293. package/dist/tests/services/spoke/EvmSpokeService.test.d.ts.map +0 -1
  294. package/dist/tests/services/spoke/EvmSpokeService.test.js +0 -197
  295. package/dist/tests/services/spoke/EvmSpokeService.test.js.map +0 -1
  296. package/dist/types.d.ts +0 -395
  297. package/dist/types.d.ts.map +0 -1
  298. package/dist/types.js +0 -30
  299. package/dist/types.js.map +0 -1
  300. package/dist/utils/evm-utils.d.ts +0 -10
  301. package/dist/utils/evm-utils.d.ts.map +0 -1
  302. package/dist/utils/evm-utils.js +0 -15
  303. package/dist/utils/evm-utils.js.map +0 -1
  304. package/dist/utils/index.d.ts +0 -3
  305. package/dist/utils/index.d.ts.map +0 -1
  306. package/dist/utils/index.js +0 -3
  307. package/dist/utils/index.js.map +0 -1
  308. package/dist/utils/shared-utils.d.ts +0 -19
  309. package/dist/utils/shared-utils.d.ts.map +0 -1
  310. package/dist/utils/shared-utils.js +0 -66
  311. package/dist/utils/shared-utils.js.map +0 -1
  312. package/dist/utils/shared-utils.test.d.ts +0 -2
  313. package/dist/utils/shared-utils.test.d.ts.map +0 -1
  314. package/dist/utils/shared-utils.test.js +0 -63
  315. package/dist/utils/shared-utils.test.js.map +0 -1
@@ -1,604 +0,0 @@
1
- import { encodeFunctionData } from 'viem';
2
- import { poolAbi } from '../../abis/pool.abi.js';
3
- import { DEFAULT_RELAYER_API_ENDPOINT, getHubAssetInfo, getMoneyMarketConfig, getSupportedMoneyMarketTokens, isConfiguredMoneyMarketConfig, isValidOriginalAssetAddress, isValidSpokeChainId, moneyMarketReserveAssets, SpokeService, relayTxAndWaitPacket, uiPoolDataAbi, SONIC_MAINNET_CHAIN_ID, DEFAULT_RELAY_TX_TIMEOUT, EvmSpokeProvider, isMoneyMarketSupportedToken, } from '../../index.js';
4
- import { calculateFeeAmount, encodeContractCalls } from '../../utils/index.js';
5
- import { EvmAssetManagerService, EvmVaultTokenService, EvmWalletAbstraction } from '../hub/index.js';
6
- import { Erc20Service } from '../shared/index.js';
7
- import invariant from 'tiny-invariant';
8
- export class MoneyMarketService {
9
- config;
10
- hubProvider;
11
- constructor(config, hubProvider, relayerApiEndpoint) {
12
- if (!config) {
13
- this.config = {
14
- ...getMoneyMarketConfig(SONIC_MAINNET_CHAIN_ID), // default to mainnet config
15
- partnerFee: undefined,
16
- relayerApiEndpoint: relayerApiEndpoint ?? DEFAULT_RELAYER_API_ENDPOINT,
17
- };
18
- }
19
- else if (isConfiguredMoneyMarketConfig(config)) {
20
- this.config = {
21
- ...config,
22
- partnerFee: config.partnerFee,
23
- relayerApiEndpoint: relayerApiEndpoint ?? DEFAULT_RELAYER_API_ENDPOINT,
24
- };
25
- }
26
- else {
27
- this.config = {
28
- ...getMoneyMarketConfig(hubProvider.chainConfig.chain.id), // default to mainnet config
29
- partnerFee: config.partnerFee,
30
- relayerApiEndpoint: relayerApiEndpoint ?? DEFAULT_RELAYER_API_ENDPOINT,
31
- };
32
- }
33
- this.hubProvider = hubProvider;
34
- }
35
- /**
36
- * Check whether assetManager contract is allowed to move the given payload amount
37
- * @param {MoneyMarketRepayParams | MoneyMarketSupplyParams} params - Money market params
38
- * @param {SpokeProvider} spokeProvider - The spoke provider
39
- * @return {Promise<Result<boolean>>} - valid = true, invalid = false
40
- */
41
- async isAllowanceValid(params, spokeProvider) {
42
- try {
43
- if (spokeProvider instanceof EvmSpokeProvider) {
44
- return Erc20Service.isAllowanceValid(params.token, params.amount, spokeProvider.walletProvider.getWalletAddress(), spokeProvider.chainConfig.addresses.assetManager, spokeProvider);
45
- }
46
- return {
47
- ok: true,
48
- value: true,
49
- };
50
- }
51
- catch (error) {
52
- return {
53
- ok: false,
54
- error: error,
55
- };
56
- }
57
- }
58
- /**
59
- * Approve ERC20 amount spending
60
- * @param token - ERC20 token address
61
- * @param amount - Amount to approve
62
- * @param address - Address to approve spending for
63
- * @param spokeProvider - Spoke provider
64
- */
65
- async approve(token, amount, address, spokeProvider) {
66
- try {
67
- if (spokeProvider instanceof EvmSpokeProvider) {
68
- return Erc20Service.approve(token, amount, address, spokeProvider);
69
- }
70
- return {
71
- ok: false,
72
- error: new Error('Approve only supported for EVM spoke chains'),
73
- };
74
- }
75
- catch (error) {
76
- return {
77
- ok: false,
78
- error: error,
79
- };
80
- }
81
- }
82
- /**
83
- * Supply tokens to the money market pool and submit the intent to the Solver API
84
- * @param params - The parameters for the supply transaction.
85
- * @param spokeProvider - The spoke provider.
86
- * @param timeout - The timeout in milliseconds for the transaction. Default is 20 seconds.
87
- * @returns [spokeTxHash, hubTxHash]
88
- */
89
- async supplyAndSubmit(params, spokeProvider, timeout = DEFAULT_RELAY_TX_TIMEOUT) {
90
- try {
91
- const txResult = await this.supply(params, spokeProvider);
92
- if (!txResult.ok) {
93
- return {
94
- ok: false,
95
- error: {
96
- code: 'SUPPLY_FAILED',
97
- error: txResult.error,
98
- },
99
- };
100
- }
101
- const packetResult = await relayTxAndWaitPacket(txResult.value, spokeProvider, this.config.relayerApiEndpoint, timeout);
102
- if (!packetResult.ok) {
103
- return packetResult;
104
- }
105
- return { ok: true, value: [txResult.value, packetResult.value.dst_tx_hash] };
106
- }
107
- catch (error) {
108
- return {
109
- ok: false,
110
- error: {
111
- code: 'UNKNOWN',
112
- error: error,
113
- },
114
- };
115
- }
116
- }
117
- /**
118
- * Supply tokens to the money market pool
119
- * NOTE: This method does not submit the intent to the Solver API
120
- * @param params - The parameters for the supply transaction.
121
- * @param spokeProvider - The spoke provider.
122
- * @param raw - Whether to return the raw transaction data.
123
- * @returns The transaction result.
124
- */
125
- async supply(params, spokeProvider, raw) {
126
- try {
127
- invariant(params.token.length > 0, 'Token is required');
128
- invariant(params.amount > 0n, 'Amount must be greater than 0');
129
- invariant(isMoneyMarketSupportedToken(spokeProvider.chainConfig.chain.id, params.token), `Unsupported spoke chain (${spokeProvider.chainConfig.chain.id}) token: ${params.token}`);
130
- const hubWallet = await EvmWalletAbstraction.getUserHubWalletAddress(spokeProvider.chainConfig.chain.id, spokeProvider.walletProvider.getWalletAddressBytes(), this.hubProvider);
131
- const data = this.supplyData(params.token, hubWallet, params.amount, spokeProvider.chainConfig.chain.id);
132
- const txResult = await SpokeService.deposit({
133
- from: spokeProvider.walletProvider.getWalletAddress(),
134
- to: hubWallet,
135
- token: params.token,
136
- amount: params.amount,
137
- data,
138
- }, spokeProvider, this.hubProvider, raw);
139
- return {
140
- ok: true,
141
- value: txResult,
142
- };
143
- }
144
- catch (error) {
145
- return {
146
- ok: false,
147
- error: {
148
- code: 'UNKNOWN',
149
- error,
150
- },
151
- };
152
- }
153
- }
154
- /**
155
- * Borrow tokens from the money market pool and submit the intent to the Solver API
156
- * @param params - The parameters for the borrow transaction.
157
- * @param spokeProvider - The spoke provider.
158
- * @param timeout - The timeout in milliseconds for the transaction. Default is 20 seconds.
159
- * @returns [spokeTxHash, hubTxHash]
160
- */
161
- async borrowAndSubmit(params, spokeProvider, timeout = DEFAULT_RELAY_TX_TIMEOUT) {
162
- try {
163
- const txResult = await this.borrow(params, spokeProvider);
164
- if (!txResult.ok) {
165
- return {
166
- ok: false,
167
- error: {
168
- code: 'BORROW_FAILED',
169
- error: txResult.error,
170
- },
171
- };
172
- }
173
- const packetResult = await relayTxAndWaitPacket(txResult.value, spokeProvider, this.config.relayerApiEndpoint, timeout);
174
- if (!packetResult.ok) {
175
- return packetResult;
176
- }
177
- return { ok: true, value: [txResult.value, packetResult.value.dst_tx_hash] };
178
- }
179
- catch (error) {
180
- return {
181
- ok: false,
182
- error: {
183
- code: 'UNKNOWN',
184
- error: error,
185
- },
186
- };
187
- }
188
- }
189
- /**
190
- * Borrow tokens from the money market pool
191
- * NOTE: This method does not submit the intent to the Solver API
192
- * @param params - The parameters for the borrow transaction.
193
- * @param spokeProvider - The spoke provider.
194
- * @param raw - Whether to return the raw transaction data.
195
- * @returns The transaction result (raw transaction data or transaction hash).
196
- */
197
- async borrow(params, spokeProvider, raw) {
198
- invariant(params.token.length > 0, 'Token is required');
199
- invariant(params.amount > 0n, 'Amount must be greater than 0');
200
- invariant(isMoneyMarketSupportedToken(spokeProvider.chainConfig.chain.id, params.token), `Unsupported spoke chain (${spokeProvider.chainConfig.chain.id}) token: ${params.token}`);
201
- const hubWallet = await EvmWalletAbstraction.getUserHubWalletAddress(spokeProvider.chainConfig.chain.id, spokeProvider.walletProvider.getWalletAddressBytes(), this.hubProvider);
202
- const data = this.borrowData(hubWallet, spokeProvider.walletProvider.getWalletAddressBytes(), params.token, params.amount, spokeProvider.chainConfig.chain.id);
203
- const txResult = await SpokeService.callWallet(hubWallet, data, spokeProvider, this.hubProvider, raw);
204
- return { ok: true, value: txResult };
205
- }
206
- /**
207
- * Withdraw tokens from the money market pool and submit the intent to the Solver API
208
- * @param params - The parameters for the withdraw transaction.
209
- * @param spokeProvider - The spoke provider.
210
- * @param timeout - The timeout in milliseconds for the transaction. Default is 20 seconds.
211
- * @returns [spokeTxHash, hubTxHash]
212
- */
213
- async withdrawAndSubmit(params, spokeProvider, timeout = DEFAULT_RELAY_TX_TIMEOUT) {
214
- try {
215
- const txResult = await this.withdraw(params, spokeProvider);
216
- if (!txResult.ok) {
217
- return {
218
- ok: false,
219
- error: {
220
- code: 'WITHDRAW_FAILED',
221
- error: txResult.error,
222
- },
223
- };
224
- }
225
- const packetResult = await relayTxAndWaitPacket(txResult.value, spokeProvider, this.config.relayerApiEndpoint, timeout);
226
- if (!packetResult.ok) {
227
- return packetResult;
228
- }
229
- return { ok: true, value: [txResult.value, packetResult.value.dst_tx_hash] };
230
- }
231
- catch (error) {
232
- return {
233
- ok: false,
234
- error: {
235
- code: 'UNKNOWN',
236
- error: error,
237
- },
238
- };
239
- }
240
- }
241
- /**
242
- * Withdraw tokens from the money market pool
243
- * NOTE: This method does not submit the intent to the Solver API
244
- * @param params - The parameters for the withdraw transaction.
245
- * @param spokeProvider - The spoke provider.
246
- * @param raw - Whether to return the raw transaction data.
247
- * @returns The transaction result (raw transaction data or transaction hash).
248
- */
249
- async withdraw(params, spokeProvider, raw) {
250
- invariant(params.token.length > 0, 'Token is required');
251
- invariant(params.amount > 0n, 'Amount must be greater than 0');
252
- invariant(isMoneyMarketSupportedToken(spokeProvider.chainConfig.chain.id, params.token), `Unsupported spoke chain (${spokeProvider.chainConfig.chain.id}) token: ${params.token}`);
253
- const hubWallet = await EvmWalletAbstraction.getUserHubWalletAddress(spokeProvider.chainConfig.chain.id, spokeProvider.walletProvider.getWalletAddressBytes(), this.hubProvider);
254
- const data = this.withdrawData(hubWallet, spokeProvider.walletProvider.getWalletAddressBytes(), params.token, params.amount, spokeProvider.chainConfig.chain.id);
255
- const txResult = await SpokeService.callWallet(hubWallet, data, spokeProvider, this.hubProvider, raw);
256
- return { ok: true, value: txResult };
257
- }
258
- /**
259
- * Repay tokens to the money market pool and submit the intent to the Solver API
260
- * @param params - The parameters for the repay transaction.
261
- * @param spokeProvider - The spoke provider.
262
- * @param timeout - The timeout in milliseconds for the transaction. Default is 20 seconds.
263
- * @returns [spokeTxHash, hubTxHash]
264
- */
265
- async repayAndSubmit(params, spokeProvider, timeout = DEFAULT_RELAY_TX_TIMEOUT) {
266
- try {
267
- const txResult = await this.repay(params, spokeProvider);
268
- if (!txResult.ok) {
269
- return {
270
- ok: false,
271
- error: {
272
- code: 'REPAY_FAILED',
273
- error: txResult.error,
274
- },
275
- };
276
- }
277
- const packetResult = await relayTxAndWaitPacket(txResult.value, spokeProvider, this.config.relayerApiEndpoint, timeout);
278
- if (!packetResult.ok) {
279
- return packetResult;
280
- }
281
- return { ok: true, value: [txResult.value, packetResult.value.dst_tx_hash] };
282
- }
283
- catch (error) {
284
- return {
285
- ok: false,
286
- error: {
287
- code: 'UNKNOWN',
288
- error: error,
289
- },
290
- };
291
- }
292
- }
293
- /**
294
- * Repay tokens to the money market pool
295
- * NOTE: This method does not submit the intent to the Solver API
296
- * @param params - The parameters for the repay transaction.
297
- * @param spokeProvider - The spoke provider.
298
- * @param raw - Whether to return the raw transaction data.
299
- * @returns The transaction result (raw transaction data or transaction hash).
300
- */
301
- async repay(params, spokeProvider, raw) {
302
- invariant(params.token.length > 0, 'Token is required');
303
- invariant(params.amount > 0n, 'Amount must be greater than 0');
304
- invariant(isMoneyMarketSupportedToken(spokeProvider.chainConfig.chain.id, params.token), `Unsupported spoke chain (${spokeProvider.chainConfig.chain.id}) token: ${params.token}`);
305
- const hubWallet = await EvmWalletAbstraction.getUserHubWalletAddress(spokeProvider.chainConfig.chain.id, spokeProvider.walletProvider.getWalletAddressBytes(), this.hubProvider);
306
- const data = this.repayData(params.token, hubWallet, params.amount, spokeProvider.chainConfig.chain.id);
307
- const txResult = await SpokeService.deposit({
308
- from: spokeProvider.walletProvider.getWalletAddress(),
309
- to: hubWallet,
310
- token: params.token,
311
- amount: params.amount,
312
- data,
313
- }, spokeProvider, this.hubProvider, raw);
314
- return { ok: true, value: txResult };
315
- }
316
- /**
317
- * Deposit tokens to the spoke chain and supply to the money market pool
318
- * @param token - The address of the token on spoke chain
319
- * @param to The user wallet address on the hub chain
320
- * @param amount The amount to deposit
321
- * @param spokeChainId The chain ID of the spoke chain
322
- * @returns The transaction result (raw transaction data or transaction hash).
323
- */
324
- supplyData(token, to, amount, spokeChainId) {
325
- const calls = [];
326
- const assetConfig = getHubAssetInfo(spokeChainId, token);
327
- invariant(assetConfig, `hub asset not found for spoke chain token (token): ${token}`);
328
- const assetAddress = assetConfig.asset;
329
- const vaultAddress = assetConfig.vault;
330
- const lendingPool = this.config.lendingPool;
331
- calls.push(Erc20Service.encodeApprove(assetAddress, vaultAddress, amount));
332
- calls.push(EvmVaultTokenService.encodeDeposit(vaultAddress, assetAddress, amount));
333
- const translatedAmount = EvmVaultTokenService.translateIncomingDecimals(assetConfig.decimal, amount);
334
- calls.push(Erc20Service.encodeApprove(vaultAddress, lendingPool, translatedAmount));
335
- calls.push(MoneyMarketService.encodeSupply({ asset: vaultAddress, amount: translatedAmount, onBehalfOf: to, referralCode: 0 }, lendingPool));
336
- return encodeContractCalls(calls);
337
- }
338
- /**
339
- * Borrow tokens from the money market pool
340
- * @param from The user wallet address on the hub chain
341
- * @param to The user wallet address on the spoke chain
342
- * @param token The address of the token to borrow
343
- * @param amount The amount to borrow in hub chain decimals
344
- * @param spokeChainId The chain ID of the spoke chain
345
- * @returns Transaction object
346
- */
347
- borrowData(from, to, token, amount, spokeChainId) {
348
- invariant(isValidSpokeChainId(spokeChainId), `Invalid spokeChainId: ${spokeChainId}`);
349
- invariant(isValidOriginalAssetAddress(spokeChainId, token), `Unsupported spoke chain (${spokeChainId}) token: ${token}`);
350
- const assetConfig = getHubAssetInfo(spokeChainId, token);
351
- invariant(assetConfig, `hub asset not found for spoke chain token (token): ${token}`);
352
- const assetAddress = assetConfig.asset;
353
- const vaultAddress = assetConfig.vault;
354
- const bnUSDVault = this.config.bnUSDVault;
355
- const bnUSD = this.config.bnUSD;
356
- const feeAmount = calculateFeeAmount(amount, this.config.partnerFee);
357
- const calls = [];
358
- if (bnUSDVault && bnUSD && bnUSDVault.toLowerCase() === vaultAddress.toLowerCase()) {
359
- calls.push(MoneyMarketService.encodeBorrow({ asset: bnUSD, amount: amount, interestRateMode: 2n, referralCode: 0, onBehalfOf: from }, this.config.lendingPool));
360
- calls.push(Erc20Service.encodeApprove(bnUSD, bnUSDVault, amount));
361
- calls.push(EvmVaultTokenService.encodeDeposit(bnUSDVault, bnUSD, amount));
362
- if (this.config.partnerFee && feeAmount) {
363
- calls.push(Erc20Service.encodeTansfer(bnUSDVault, this.config.partnerFee.address, feeAmount));
364
- }
365
- }
366
- else {
367
- calls.push(MoneyMarketService.encodeBorrow({ asset: vaultAddress, amount: amount, interestRateMode: 2n, referralCode: 0, onBehalfOf: from }, this.config.lendingPool));
368
- if (this.config.partnerFee && feeAmount) {
369
- calls.push(Erc20Service.encodeTansfer(vaultAddress, this.config.partnerFee.address, feeAmount));
370
- }
371
- }
372
- calls.push(EvmVaultTokenService.encodeWithdraw(vaultAddress, assetAddress, amount - feeAmount));
373
- const translatedAmountOut = EvmVaultTokenService.translateOutgoingDecimals(assetConfig.decimal, amount - feeAmount);
374
- calls.push(EvmAssetManagerService.encodeTransfer(assetAddress, to, translatedAmountOut, this.hubProvider.chainConfig.addresses.assetManager));
375
- return encodeContractCalls(calls);
376
- }
377
- /**
378
- * Withdraw tokens from the money market pool
379
- * @param from The user wallet address on the hub chain
380
- * @param to The user wallet address on the spoke chain
381
- * @param token The address of the token to borrow
382
- * @param amount The amount to borrow in hub chain decimals
383
- * @param spokeChainId The chain ID of the spoke chain
384
- * @returns Transaction object
385
- */
386
- withdrawData(from, to, token, amount, spokeChainId) {
387
- const calls = [];
388
- const assetConfig = getHubAssetInfo(spokeChainId, token);
389
- if (!assetConfig) {
390
- throw new Error('[withdrawData] Hub asset not found');
391
- }
392
- const assetAddress = assetConfig.asset;
393
- const vaultAddress = assetConfig.vault;
394
- if (!assetAddress || !vaultAddress) {
395
- throw new Error('Address not found');
396
- }
397
- calls.push(MoneyMarketService.encodeWithdraw({ asset: vaultAddress, amount: amount, to: from }, this.config.lendingPool));
398
- calls.push(EvmVaultTokenService.encodeWithdraw(vaultAddress, assetAddress, amount));
399
- const translatedAmountOut = EvmVaultTokenService.translateOutgoingDecimals(assetConfig.decimal, amount);
400
- calls.push(EvmAssetManagerService.encodeTransfer(assetAddress, to, translatedAmountOut, this.hubProvider.chainConfig.addresses.assetManager));
401
- return encodeContractCalls(calls);
402
- }
403
- /**
404
- * Repay tokens to the money market pool
405
- * @param token The address of the token to repay
406
- * @param to The user wallet address on the hub chain
407
- * @param amount The amount to repay
408
- * @param spokeChainId The chain ID of the spoke chain
409
- * @param moneyMarketConfig The money market config
410
- * @returns Transaction object
411
- */
412
- repayData(token, to, amount, spokeChainId) {
413
- const calls = [];
414
- const assetConfig = getHubAssetInfo(spokeChainId, token);
415
- if (!assetConfig) {
416
- throw new Error('[repayData] Hub asset not found');
417
- }
418
- const assetAddress = assetConfig.asset;
419
- const vaultAddress = assetConfig.vault;
420
- const bnUSDVault = this.config.bnUSDVault;
421
- const bnUSD = this.config.bnUSD;
422
- calls.push(Erc20Service.encodeApprove(assetAddress, vaultAddress, amount));
423
- calls.push(EvmVaultTokenService.encodeDeposit(vaultAddress, assetAddress, amount));
424
- const translatedAmount = EvmVaultTokenService.translateIncomingDecimals(assetConfig.decimal, amount);
425
- let repayToken = vaultAddress;
426
- if (bnUSDVault && bnUSD && bnUSDVault.toLowerCase() === vaultAddress.toLowerCase()) {
427
- repayToken = bnUSD;
428
- calls.push(EvmVaultTokenService.encodeWithdraw(bnUSDVault, bnUSD, translatedAmount));
429
- }
430
- calls.push(Erc20Service.encodeApprove(repayToken, this.config.lendingPool, translatedAmount));
431
- calls.push(MoneyMarketService.encodeRepay({ asset: repayToken, amount: translatedAmount, interestRateMode: 2n, onBehalfOf: to }, this.config.lendingPool));
432
- return encodeContractCalls(calls);
433
- }
434
- /**
435
- * Get the list of all reserves in the pool
436
- * @param uiPoolDataProvider - The address of the UI Pool Data Provider
437
- * @param poolAddressesProvider - The address of the Pool Addresses Provider
438
- * @returns Array of reserve addresses
439
- */
440
- async getReservesList(uiPoolDataProvider, poolAddressesProvider) {
441
- return this.hubProvider.publicClient.readContract({
442
- address: uiPoolDataProvider,
443
- abi: uiPoolDataAbi,
444
- functionName: 'getReservesList',
445
- args: [poolAddressesProvider],
446
- });
447
- }
448
- /**
449
- * Get detailed data for all reserves in the pool
450
- * @param uiPoolDataProvider - The address of the UI Pool Data Provider
451
- * @param poolAddressesProvider - The address of the Pool Addresses Provider
452
- * @returns Tuple containing array of reserve data and base currency info
453
- */
454
- async getReservesData(uiPoolDataProvider, poolAddressesProvider) {
455
- return this.hubProvider.publicClient.readContract({
456
- address: uiPoolDataProvider,
457
- abi: uiPoolDataAbi,
458
- functionName: 'getReservesData',
459
- args: [poolAddressesProvider],
460
- });
461
- }
462
- /**
463
- * Get user-specific reserve data
464
- * @param userAddress Address of the user
465
- * @param uiPoolDataProvider - The address of the UI Pool Data Provider
466
- * @param poolAddressesProvider - The address of the Pool Addresses Provider
467
- * @returns Tuple containing array of user reserve data and eMode category ID
468
- */
469
- async getUserReservesData(userAddress, uiPoolDataProvider, poolAddressesProvider) {
470
- return this.hubProvider.publicClient.readContract({
471
- address: uiPoolDataProvider,
472
- abi: uiPoolDataAbi,
473
- functionName: 'getUserReservesData',
474
- args: [poolAddressesProvider, userAddress],
475
- });
476
- }
477
- /**
478
- * Encodes a supply transaction for a money market pool.
479
- * @param {MoneyMarketEncodeWithdrawParams} params - The parameters for the supply transaction.
480
- * @param {Address} lendingPool - The address of the lending pool contract.
481
- * @returns {EvmContractCall} The encoded contract call.
482
- */
483
- static encodeSupply(params, lendingPool) {
484
- return {
485
- address: lendingPool,
486
- value: 0n,
487
- data: encodeFunctionData({
488
- abi: poolAbi,
489
- functionName: 'supply',
490
- args: [params.asset, params.amount, params.onBehalfOf, params.referralCode],
491
- }),
492
- };
493
- }
494
- /**
495
- * Encodes a withdraw transaction from a pool.
496
- * @param {MoneyMarketEncodeWithdrawParams} params - The parameters for the withdraw transaction.
497
- * @param {Address} params.asset - The address of the asset to withdraw.
498
- * @param {bigint} params.amount - The amount of the asset to withdraw.
499
- * @param {Address} params.to - The address that will receive the withdrawn assets.
500
- * @param {Address} lendingPool - The address of the lending pool contract.
501
- * @returns {EvmContractCall} The encoded contract call.
502
- */
503
- static encodeWithdraw(params, lendingPool) {
504
- return {
505
- address: lendingPool,
506
- value: 0n,
507
- data: encodeFunctionData({
508
- abi: poolAbi,
509
- functionName: 'withdraw',
510
- args: [params.asset, params.amount, params.to],
511
- }),
512
- };
513
- }
514
- /**
515
- * Encodes a borrow transaction from a pool.
516
- * @param {MoneyMarketEncodeBorrowParams} params - The parameters for the borrow transaction.
517
- * @param {Address} lendingPool - The address of the lending pool contract.
518
- * @returns {EvmContractCall} The encoded contract call.
519
- */
520
- static encodeBorrow(params, lendingPool) {
521
- return {
522
- address: lendingPool,
523
- value: 0n,
524
- data: encodeFunctionData({
525
- abi: poolAbi,
526
- functionName: 'borrow',
527
- args: [params.asset, params.amount, params.interestRateMode, params.referralCode, params.onBehalfOf],
528
- }),
529
- };
530
- }
531
- /**
532
- * Encodes a repay transaction for a pool.
533
- * @param {MoneyMarketEncodeRepayParams} params - The parameters for the repay transaction.
534
- * @param {Address} params.asset - The address of the borrowed asset to repay.
535
- * @param {bigint} params.amount - The amount to repay. Use type(uint256).max to repay the entire debt.
536
- * @param {number} params.interestRateMode - The interest rate mode (2 for Variable).
537
- * @param {Address} params.onBehalfOf - The address of the user who will get their debt reduced/removed.
538
- * @param {Address} lendingPool - The address of the lending pool contract.
539
- * @returns {EvmContractCall} The encoded contract call.
540
- */
541
- static encodeRepay(params, lendingPool) {
542
- return {
543
- address: lendingPool,
544
- value: 0n,
545
- data: encodeFunctionData({
546
- abi: poolAbi,
547
- functionName: 'repay',
548
- args: [params.asset, params.amount, params.interestRateMode, params.onBehalfOf],
549
- }),
550
- };
551
- }
552
- /**
553
- * Encodes a repayWithATokens transaction for a pool.
554
- * @param {MoneyMarketEncodeRepayWithATokensParams} params - The parameters for the repayWithATokens transaction.
555
- * @param {Address} lendingPool - The address of the lending pool contract.
556
- * @returns {EvmContractCall} The encoded contract call.
557
- */
558
- static encodeRepayWithATokens(params, lendingPool) {
559
- return {
560
- address: lendingPool,
561
- value: 0n,
562
- data: encodeFunctionData({
563
- abi: poolAbi,
564
- functionName: 'repayWithATokens',
565
- args: [params.asset, params.amount, params.interestRateMode],
566
- }),
567
- };
568
- }
569
- /**
570
- * Encodes a setUserUseReserveAsCollateral transaction.
571
- * @param asset - The address of the underlying asset to be used as collateral.
572
- * @param useAsCollateral - True to enable the asset as collateral, false to disable.
573
- * @param lendingPool - The address of lending pool contract
574
- * @returns The encoded contract call.
575
- */
576
- static encodeSetUserUseReserveAsCollateral(asset, useAsCollateral, lendingPool) {
577
- return {
578
- address: lendingPool,
579
- value: 0n,
580
- data: encodeFunctionData({
581
- abi: poolAbi,
582
- functionName: 'setUserUseReserveAsCollateral',
583
- args: [asset, useAsCollateral],
584
- }),
585
- };
586
- }
587
- /**
588
- * Get the list of all supported money market tokens (supply / borrow tokens) for a given spoke chain ID
589
- * @param chainId The chain ID
590
- * @returns Array of supported tokens
591
- */
592
- getSupportedTokens(chainId) {
593
- return getSupportedMoneyMarketTokens(chainId);
594
- }
595
- /**
596
- * Get the list of all supported money market reserves (supply / borrow reserves)
597
- * NOTE: reserve addresses are on the hub chain and can be of type vault, erc20, etc.
598
- * @returns Array of supported reserves
599
- */
600
- getSupportedReserves() {
601
- return [...moneyMarketReserveAssets];
602
- }
603
- }
604
- //# sourceMappingURL=MoneyMarketService.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MoneyMarketService.js","sourceRoot":"","sources":["../../../src/services/moneyMarket/MoneyMarketService.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=MoneyMarketService.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MoneyMarketService.test.d.ts","sourceRoot":"","sources":["../../../src/services/moneyMarket/MoneyMarketService.test.ts"],"names":[],"mappings":""}