@mento-protocol/mento-sdk 3.2.3 → 3.2.4

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 (396) hide show
  1. package/dist/cache/routes.d.ts +13 -0
  2. package/dist/cache/routes.js +14089 -0
  3. package/dist/cache/tokens.d.ts +68 -0
  4. package/dist/cache/tokens.js +460 -0
  5. package/dist/core/abis/activePool.d.ts +2 -0
  6. package/dist/core/abis/activePool.js +14 -0
  7. package/dist/core/abis/addressesRegistry.d.ts +2 -0
  8. package/dist/core/abis/addressesRegistry.js +26 -0
  9. package/dist/core/abis/bipoolmanager.d.ts +34 -0
  10. package/dist/core/abis/bipoolmanager.js +72 -0
  11. package/dist/core/abis/borrowerOperations.d.ts +9 -0
  12. package/dist/core/abis/borrowerOperations.js +89 -0
  13. package/dist/core/abis/breakerbox.d.ts +13 -0
  14. package/dist/core/abis/breakerbox.js +8 -0
  15. package/dist/core/abis/broker.d.ts +2 -0
  16. package/dist/core/abis/broker.js +9 -0
  17. package/dist/core/abis/erc20.d.ts +9 -0
  18. package/dist/core/abis/erc20.js +21 -0
  19. package/dist/core/abis/fpmm.d.ts +270 -0
  20. package/dist/core/abis/fpmm.js +49 -0
  21. package/dist/core/abis/fpmmFactory.d.ts +85 -0
  22. package/dist/core/abis/fpmmFactory.js +26 -0
  23. package/dist/core/abis/hintHelpers.d.ts +2 -0
  24. package/dist/core/abis/hintHelpers.js +14 -0
  25. package/dist/core/abis/index.d.ts +22 -0
  26. package/dist/core/abis/index.js +38 -0
  27. package/dist/core/abis/liquidityStrategy.d.ts +132 -0
  28. package/dist/core/abis/liquidityStrategy.js +10 -0
  29. package/dist/core/abis/multiTroveGetter.d.ts +8 -0
  30. package/dist/core/abis/multiTroveGetter.js +15 -0
  31. package/dist/core/abis/priceFeed.d.ts +7 -0
  32. package/dist/core/abis/priceFeed.js +16 -0
  33. package/dist/core/abis/pricingmodule.d.ts +2 -0
  34. package/dist/core/abis/pricingmodule.js +6 -0
  35. package/dist/core/abis/reserve.d.ts +3 -0
  36. package/dist/core/abis/reserve.js +18 -0
  37. package/dist/core/abis/router.d.ts +521 -0
  38. package/dist/core/abis/router.js +45 -0
  39. package/dist/core/abis/sortedTroves.d.ts +2 -0
  40. package/dist/core/abis/sortedTroves.js +15 -0
  41. package/dist/core/abis/systemParams.d.ts +2 -0
  42. package/dist/core/abis/systemParams.js +14 -0
  43. package/dist/core/abis/troveManager.d.ts +2 -0
  44. package/dist/core/abis/troveManager.js +27 -0
  45. package/dist/core/abis/troveNFT.d.ts +2 -0
  46. package/dist/core/abis/troveNFT.js +9 -0
  47. package/dist/core/abis/virtualPool.d.ts +50 -0
  48. package/dist/core/abis/virtualPool.js +11 -0
  49. package/dist/core/abis/virtualPoolFactory.d.ts +59 -0
  50. package/dist/core/abis/virtualPoolFactory.js +17 -0
  51. package/dist/core/constants/addresses.d.ts +18 -0
  52. package/dist/core/constants/addresses.js +113 -0
  53. package/dist/core/constants/borrowConstants.d.ts +10 -0
  54. package/dist/core/constants/borrowConstants.js +16 -0
  55. package/dist/core/constants/borrowRegistries.d.ts +7 -0
  56. package/dist/core/constants/borrowRegistries.js +30 -0
  57. package/dist/core/constants/chainId.d.ts +7 -0
  58. package/dist/{cjs/enums → core/constants}/chainId.js +4 -1
  59. package/dist/core/constants/contractNames.d.ts +21 -0
  60. package/dist/core/constants/contractNames.js +24 -0
  61. package/dist/core/constants/index.d.ts +6 -0
  62. package/dist/core/constants/index.js +22 -0
  63. package/dist/core/errors/base.d.ts +8 -0
  64. package/dist/core/errors/base.js +17 -0
  65. package/dist/core/errors/index.d.ts +4 -0
  66. package/dist/{cjs/constants → core/errors}/index.js +4 -4
  67. package/dist/core/errors/oracle.d.ts +9 -0
  68. package/dist/core/errors/oracle.js +15 -0
  69. package/dist/core/errors/router.d.ts +14 -0
  70. package/dist/core/errors/router.js +24 -0
  71. package/dist/core/types/borrow.d.ts +87 -0
  72. package/dist/{cjs/interfaces/tradingLimitsConfig.js → core/types/borrow.js} +1 -0
  73. package/dist/core/types/contractAddresses.d.ts +42 -0
  74. package/dist/{cjs → core}/types/contractAddresses.js +1 -0
  75. package/dist/core/types/index.d.ts +10 -0
  76. package/dist/core/types/index.js +26 -0
  77. package/dist/core/types/liquidity.d.ts +194 -0
  78. package/dist/core/types/liquidity.js +3 -0
  79. package/dist/core/types/pool.d.ts +208 -0
  80. package/dist/core/types/pool.js +14 -0
  81. package/dist/core/types/provider.d.ts +45 -0
  82. package/dist/{cjs/interfaces/tradingLimitsState.js → core/types/provider.js} +1 -0
  83. package/dist/core/types/route.d.ts +62 -0
  84. package/dist/{cjs/interfaces/IChainClient.js → core/types/route.js} +1 -0
  85. package/dist/core/types/token.d.ts +21 -0
  86. package/dist/{cjs/interfaces/tradingLimit.js → core/types/token.js} +1 -0
  87. package/dist/core/types/tradingLimits.d.ts +91 -0
  88. package/dist/core/types/tradingLimits.js +3 -0
  89. package/dist/core/types/tradingMode.d.ts +24 -0
  90. package/dist/core/types/tradingMode.js +31 -0
  91. package/dist/core/types/transaction.d.ts +45 -0
  92. package/dist/core/types/transaction.js +3 -0
  93. package/dist/esm/cache/routes.js +14084 -0
  94. package/dist/esm/cache/tokens.js +452 -0
  95. package/dist/esm/core/abis/activePool.js +10 -0
  96. package/dist/esm/core/abis/addressesRegistry.js +22 -0
  97. package/dist/esm/core/abis/bipoolmanager.js +68 -0
  98. package/dist/esm/core/abis/borrowerOperations.js +85 -0
  99. package/dist/esm/core/abis/breakerbox.js +4 -0
  100. package/dist/esm/core/abis/broker.js +5 -0
  101. package/dist/esm/core/abis/erc20.js +17 -0
  102. package/dist/esm/core/abis/fpmm.js +45 -0
  103. package/dist/esm/core/abis/fpmmFactory.js +22 -0
  104. package/dist/esm/core/abis/hintHelpers.js +10 -0
  105. package/dist/esm/core/abis/index.js +21 -0
  106. package/dist/esm/core/abis/liquidityStrategy.js +6 -0
  107. package/dist/esm/core/abis/multiTroveGetter.js +11 -0
  108. package/dist/esm/core/abis/priceFeed.js +12 -0
  109. package/dist/esm/core/abis/pricingmodule.js +2 -0
  110. package/dist/esm/core/abis/reserve.js +14 -0
  111. package/dist/esm/core/abis/router.js +41 -0
  112. package/dist/esm/core/abis/sortedTroves.js +11 -0
  113. package/dist/esm/core/abis/systemParams.js +10 -0
  114. package/dist/esm/core/abis/troveManager.js +23 -0
  115. package/dist/esm/core/abis/troveNFT.js +5 -0
  116. package/dist/esm/core/abis/virtualPool.js +7 -0
  117. package/dist/esm/core/abis/virtualPoolFactory.js +13 -0
  118. package/dist/esm/core/constants/addresses.js +107 -0
  119. package/dist/esm/core/constants/borrowConstants.js +12 -0
  120. package/dist/esm/core/constants/borrowRegistries.js +25 -0
  121. package/dist/esm/{enums → core/constants}/chainId.js +2 -0
  122. package/dist/esm/core/constants/contractNames.js +20 -0
  123. package/dist/esm/core/constants/index.js +5 -0
  124. package/dist/esm/core/errors/base.js +12 -0
  125. package/dist/esm/core/errors/index.js +3 -0
  126. package/dist/esm/core/errors/oracle.js +10 -0
  127. package/dist/esm/core/errors/router.js +18 -0
  128. package/dist/esm/core/types/index.js +9 -0
  129. package/dist/esm/core/types/pool.js +10 -0
  130. package/dist/esm/core/types/tradingLimits.js +1 -0
  131. package/dist/esm/core/types/tradingMode.js +26 -0
  132. package/dist/esm/core/types/transaction.js +1 -0
  133. package/dist/esm/index.js +138 -6
  134. package/dist/esm/package.json +1 -0
  135. package/dist/esm/services/borrow/BorrowService.js +455 -0
  136. package/dist/esm/services/borrow/borrowHelpers.js +3 -0
  137. package/dist/esm/services/borrow/borrowMath.js +127 -0
  138. package/dist/esm/services/borrow/index.js +3 -0
  139. package/dist/esm/services/borrow/internal/borrowApprovalService.js +48 -0
  140. package/dist/esm/services/borrow/internal/borrowContextStore.js +35 -0
  141. package/dist/esm/services/borrow/internal/borrowErc20.js +38 -0
  142. package/dist/esm/services/borrow/internal/borrowHints.js +27 -0
  143. package/dist/esm/services/borrow/internal/borrowPositionParser.js +82 -0
  144. package/dist/esm/services/borrow/internal/borrowReadService.js +271 -0
  145. package/dist/esm/services/borrow/internal/borrowRegistryReader.js +108 -0
  146. package/dist/esm/services/borrow/internal/borrowTransactionService.js +271 -0
  147. package/dist/esm/services/borrow/internal/borrowTypes.js +1 -0
  148. package/dist/esm/services/borrow/internal/borrowValidation.js +89 -0
  149. package/dist/esm/services/index.js +8 -0
  150. package/dist/esm/services/liquidity/LiquidityService.js +163 -0
  151. package/dist/esm/services/liquidity/basicLiquidity.js +162 -0
  152. package/dist/esm/services/liquidity/index.js +1 -0
  153. package/dist/esm/services/liquidity/liquidityHelpers.js +95 -0
  154. package/dist/esm/services/liquidity/rebalance.js +59 -0
  155. package/dist/esm/services/liquidity/zapHelpers.js +120 -0
  156. package/dist/esm/services/liquidity/zapIn.js +112 -0
  157. package/dist/esm/services/liquidity/zapOut.js +248 -0
  158. package/dist/esm/services/pools/PoolService.js +204 -0
  159. package/dist/esm/services/pools/index.js +1 -0
  160. package/dist/esm/services/pools/poolDetails.js +209 -0
  161. package/dist/esm/services/pools/poolDiscovery.js +112 -0
  162. package/dist/esm/services/pools/rebalancePreview.js +181 -0
  163. package/dist/esm/services/quotes/QuoteService.js +85 -0
  164. package/dist/esm/services/quotes/index.js +1 -0
  165. package/dist/esm/services/routes/RouteService.js +268 -0
  166. package/dist/esm/services/routes/index.js +1 -0
  167. package/dist/esm/services/swap/SwapService.js +247 -0
  168. package/dist/esm/services/swap/index.js +1 -0
  169. package/dist/esm/services/tokens/index.js +1 -0
  170. package/dist/esm/services/tokens/tokenService.js +285 -0
  171. package/dist/esm/services/trading/TradingLimitsService.js +154 -0
  172. package/dist/esm/services/trading/TradingService.js +196 -0
  173. package/dist/esm/services/trading/index.js +2 -0
  174. package/dist/esm/utils/chainConfig.js +118 -0
  175. package/dist/esm/utils/costUtils.js +56 -0
  176. package/dist/esm/utils/deadline.js +22 -0
  177. package/dist/esm/utils/index.js +9 -0
  178. package/dist/esm/utils/multicall.js +47 -0
  179. package/dist/esm/utils/pathEncoder.js +69 -0
  180. package/dist/esm/utils/rateFeed.js +23 -0
  181. package/dist/esm/utils/retry.js +24 -0
  182. package/dist/esm/{routeUtils.js → utils/routeUtils.js} +115 -116
  183. package/dist/esm/utils/routes.js +2 -0
  184. package/dist/esm/utils/sortUtils.js +33 -0
  185. package/dist/esm/utils/tokens.js +2 -0
  186. package/dist/esm/utils/tradingLimits.js +163 -0
  187. package/dist/esm/utils/validation.js +30 -0
  188. package/dist/index.d.ts +101 -0
  189. package/dist/index.js +158 -0
  190. package/dist/services/borrow/BorrowService.d.ts +381 -0
  191. package/dist/services/borrow/BorrowService.js +460 -0
  192. package/dist/services/borrow/borrowHelpers.d.ts +4 -0
  193. package/dist/services/borrow/borrowHelpers.js +13 -0
  194. package/dist/services/borrow/borrowMath.d.ts +21 -0
  195. package/dist/services/borrow/borrowMath.js +137 -0
  196. package/dist/services/borrow/index.d.ts +4 -0
  197. package/dist/{cjs/interfaces → services/borrow}/index.js +4 -4
  198. package/dist/services/borrow/internal/borrowApprovalService.d.ts +14 -0
  199. package/dist/services/borrow/internal/borrowApprovalService.js +53 -0
  200. package/dist/services/borrow/internal/borrowContextStore.d.ts +11 -0
  201. package/dist/services/borrow/internal/borrowContextStore.js +40 -0
  202. package/dist/services/borrow/internal/borrowErc20.d.ts +5 -0
  203. package/dist/services/borrow/internal/borrowErc20.js +43 -0
  204. package/dist/services/borrow/internal/borrowHints.d.ts +7 -0
  205. package/dist/services/borrow/internal/borrowHints.js +31 -0
  206. package/dist/services/borrow/internal/borrowPositionParser.d.ts +4 -0
  207. package/dist/services/borrow/internal/borrowPositionParser.js +87 -0
  208. package/dist/services/borrow/internal/borrowReadService.d.ts +31 -0
  209. package/dist/services/borrow/internal/borrowReadService.js +276 -0
  210. package/dist/services/borrow/internal/borrowRegistryReader.d.ts +5 -0
  211. package/dist/services/borrow/internal/borrowRegistryReader.js +113 -0
  212. package/dist/services/borrow/internal/borrowTransactionService.d.ts +23 -0
  213. package/dist/services/borrow/internal/borrowTransactionService.js +276 -0
  214. package/dist/services/borrow/internal/borrowTypes.d.ts +15 -0
  215. package/dist/services/borrow/internal/borrowTypes.js +3 -0
  216. package/dist/services/borrow/internal/borrowValidation.d.ts +14 -0
  217. package/dist/services/borrow/internal/borrowValidation.js +104 -0
  218. package/dist/services/index.d.ts +9 -0
  219. package/dist/{cjs → services}/index.js +9 -7
  220. package/dist/services/liquidity/LiquidityService.d.ts +139 -0
  221. package/dist/services/liquidity/LiquidityService.js +168 -0
  222. package/dist/services/liquidity/basicLiquidity.d.ts +11 -0
  223. package/dist/services/liquidity/basicLiquidity.js +172 -0
  224. package/dist/services/liquidity/index.d.ts +2 -0
  225. package/dist/{cjs/types → services/liquidity}/index.js +2 -2
  226. package/dist/services/liquidity/liquidityHelpers.d.ts +19 -0
  227. package/dist/services/liquidity/liquidityHelpers.js +104 -0
  228. package/dist/services/liquidity/rebalance.d.ts +6 -0
  229. package/dist/services/liquidity/rebalance.js +64 -0
  230. package/dist/services/liquidity/zapHelpers.d.ts +66 -0
  231. package/dist/services/liquidity/zapHelpers.js +129 -0
  232. package/dist/services/liquidity/zapIn.d.ts +18 -0
  233. package/dist/services/liquidity/zapIn.js +119 -0
  234. package/dist/services/liquidity/zapOut.d.ts +9 -0
  235. package/dist/services/liquidity/zapOut.js +255 -0
  236. package/dist/services/pools/PoolService.d.ts +69 -0
  237. package/dist/services/pools/PoolService.js +209 -0
  238. package/dist/services/pools/index.d.ts +2 -0
  239. package/dist/{cjs/enums → services/pools}/index.js +2 -3
  240. package/dist/services/pools/poolDetails.d.ts +13 -0
  241. package/dist/services/pools/poolDetails.js +216 -0
  242. package/dist/services/pools/poolDiscovery.d.ts +12 -0
  243. package/dist/services/pools/poolDiscovery.js +117 -0
  244. package/dist/services/pools/rebalancePreview.d.ts +5 -0
  245. package/dist/services/pools/rebalancePreview.js +186 -0
  246. package/dist/services/quotes/QuoteService.d.ts +51 -0
  247. package/dist/services/quotes/QuoteService.js +91 -0
  248. package/dist/services/quotes/index.d.ts +2 -0
  249. package/dist/services/quotes/index.js +18 -0
  250. package/dist/services/routes/RouteService.d.ts +117 -0
  251. package/dist/services/routes/RouteService.js +306 -0
  252. package/dist/services/routes/index.d.ts +2 -0
  253. package/dist/services/routes/index.js +18 -0
  254. package/dist/services/swap/SwapService.d.ts +198 -0
  255. package/dist/services/swap/SwapService.js +252 -0
  256. package/dist/services/swap/index.d.ts +2 -0
  257. package/dist/services/swap/index.js +18 -0
  258. package/dist/services/tokens/index.d.ts +2 -0
  259. package/dist/services/tokens/index.js +18 -0
  260. package/dist/services/tokens/tokenService.d.ts +55 -0
  261. package/dist/services/tokens/tokenService.js +290 -0
  262. package/dist/services/trading/TradingLimitsService.d.ts +38 -0
  263. package/dist/services/trading/TradingLimitsService.js +159 -0
  264. package/dist/services/trading/TradingService.d.ts +113 -0
  265. package/dist/services/trading/TradingService.js +201 -0
  266. package/dist/services/trading/index.d.ts +3 -0
  267. package/dist/services/trading/index.js +19 -0
  268. package/dist/utils/chainConfig.d.ts +16 -0
  269. package/dist/utils/chainConfig.js +123 -0
  270. package/dist/utils/costUtils.d.ts +12 -0
  271. package/dist/utils/costUtils.js +60 -0
  272. package/dist/utils/deadline.d.ts +21 -0
  273. package/dist/utils/deadline.js +26 -0
  274. package/dist/utils/index.d.ts +10 -0
  275. package/dist/utils/index.js +26 -0
  276. package/dist/utils/multicall.d.ts +30 -0
  277. package/dist/utils/multicall.js +52 -0
  278. package/dist/utils/pathEncoder.d.ts +34 -0
  279. package/dist/utils/pathEncoder.js +73 -0
  280. package/dist/utils/rateFeed.d.ts +18 -0
  281. package/dist/utils/rateFeed.js +27 -0
  282. package/dist/utils/retry.d.ts +12 -0
  283. package/dist/utils/retry.js +28 -0
  284. package/dist/{esm → utils}/routeUtils.d.ts +84 -93
  285. package/dist/{cjs → utils}/routeUtils.js +123 -124
  286. package/dist/utils/routes.d.ts +3 -0
  287. package/dist/utils/routes.js +8 -0
  288. package/dist/utils/sortUtils.d.ts +24 -0
  289. package/dist/utils/sortUtils.js +39 -0
  290. package/dist/utils/tokens.d.ts +2 -0
  291. package/dist/utils/tokens.js +13 -0
  292. package/dist/utils/tradingLimits.d.ts +41 -0
  293. package/dist/utils/tradingLimits.js +171 -0
  294. package/dist/utils/validation.d.ts +19 -0
  295. package/dist/utils/validation.js +34 -0
  296. package/package.json +1 -1
  297. package/dist/cjs/ChainClient.d.ts +0 -9
  298. package/dist/cjs/ChainClient.js +0 -58
  299. package/dist/cjs/TestChainClient.d.ts +0 -7
  300. package/dist/cjs/TestChainClient.js +0 -41
  301. package/dist/cjs/constants/addresses.d.ts +0 -4
  302. package/dist/cjs/constants/addresses.js +0 -59
  303. package/dist/cjs/constants/currencies.d.ts +0 -5
  304. package/dist/cjs/constants/currencies.js +0 -29
  305. package/dist/cjs/constants/index.d.ts +0 -4
  306. package/dist/cjs/constants/tokens.11142220.d.ts +0 -2
  307. package/dist/cjs/constants/tokens.11142220.js +0 -128
  308. package/dist/cjs/constants/tokens.42220.d.ts +0 -2
  309. package/dist/cjs/constants/tokens.42220.js +0 -128
  310. package/dist/cjs/constants/tokens.d.ts +0 -65
  311. package/dist/cjs/constants/tokens.js +0 -170
  312. package/dist/cjs/constants/tradablePairs.11142220.d.ts +0 -2
  313. package/dist/cjs/constants/tradablePairs.11142220.js +0 -7391
  314. package/dist/cjs/constants/tradablePairs.42220.d.ts +0 -2
  315. package/dist/cjs/constants/tradablePairs.42220.js +0 -7391
  316. package/dist/cjs/constants/tradablePairs.d.ts +0 -16
  317. package/dist/cjs/constants/tradablePairs.js +0 -53
  318. package/dist/cjs/enums/chainId.d.ts +0 -4
  319. package/dist/cjs/enums/index.d.ts +0 -3
  320. package/dist/cjs/enums/proposalState.d.ts +0 -10
  321. package/dist/cjs/enums/proposalState.js +0 -14
  322. package/dist/cjs/enums/tradingMode.d.ts +0 -17
  323. package/dist/cjs/enums/tradingMode.js +0 -21
  324. package/dist/cjs/governance.d.ts +0 -62
  325. package/dist/cjs/governance.js +0 -151
  326. package/dist/cjs/index.d.ts +0 -7
  327. package/dist/cjs/interfaces/IChainClient.d.ts +0 -6
  328. package/dist/cjs/interfaces/index.d.ts +0 -4
  329. package/dist/cjs/interfaces/tradingLimit.d.ts +0 -7
  330. package/dist/cjs/interfaces/tradingLimitsConfig.d.ts +0 -10
  331. package/dist/cjs/interfaces/tradingLimitsState.d.ts +0 -9
  332. package/dist/cjs/limits.d.ts +0 -33
  333. package/dist/cjs/limits.js +0 -130
  334. package/dist/cjs/mento.d.ts +0 -287
  335. package/dist/cjs/mento.js +0 -699
  336. package/dist/cjs/routeUtils.d.ts +0 -304
  337. package/dist/cjs/types/contractAddressMap.d.ts +0 -4
  338. package/dist/cjs/types/contractAddressMap.js +0 -2
  339. package/dist/cjs/types/contractAddresses.d.ts +0 -23
  340. package/dist/cjs/types/index.d.ts +0 -2
  341. package/dist/cjs/utils.d.ts +0 -80
  342. package/dist/cjs/utils.js +0 -177
  343. package/dist/esm/ChainClient.d.ts +0 -9
  344. package/dist/esm/ChainClient.js +0 -54
  345. package/dist/esm/TestChainClient.d.ts +0 -7
  346. package/dist/esm/TestChainClient.js +0 -37
  347. package/dist/esm/constants/addresses.d.ts +0 -4
  348. package/dist/esm/constants/addresses.js +0 -55
  349. package/dist/esm/constants/currencies.d.ts +0 -5
  350. package/dist/esm/constants/currencies.js +0 -26
  351. package/dist/esm/constants/index.d.ts +0 -4
  352. package/dist/esm/constants/index.js +0 -4
  353. package/dist/esm/constants/tokens.11142220.d.ts +0 -2
  354. package/dist/esm/constants/tokens.11142220.js +0 -125
  355. package/dist/esm/constants/tokens.42220.d.ts +0 -2
  356. package/dist/esm/constants/tokens.42220.js +0 -125
  357. package/dist/esm/constants/tokens.d.ts +0 -65
  358. package/dist/esm/constants/tokens.js +0 -142
  359. package/dist/esm/constants/tradablePairs.11142220.d.ts +0 -2
  360. package/dist/esm/constants/tradablePairs.11142220.js +0 -7388
  361. package/dist/esm/constants/tradablePairs.42220.d.ts +0 -2
  362. package/dist/esm/constants/tradablePairs.42220.js +0 -7388
  363. package/dist/esm/constants/tradablePairs.d.ts +0 -16
  364. package/dist/esm/constants/tradablePairs.js +0 -26
  365. package/dist/esm/enums/chainId.d.ts +0 -4
  366. package/dist/esm/enums/index.d.ts +0 -3
  367. package/dist/esm/enums/index.js +0 -3
  368. package/dist/esm/enums/proposalState.d.ts +0 -10
  369. package/dist/esm/enums/proposalState.js +0 -11
  370. package/dist/esm/enums/tradingMode.d.ts +0 -17
  371. package/dist/esm/enums/tradingMode.js +0 -18
  372. package/dist/esm/governance.d.ts +0 -62
  373. package/dist/esm/governance.js +0 -147
  374. package/dist/esm/index.d.ts +0 -7
  375. package/dist/esm/interfaces/IChainClient.d.ts +0 -6
  376. package/dist/esm/interfaces/index.d.ts +0 -4
  377. package/dist/esm/interfaces/index.js +0 -4
  378. package/dist/esm/interfaces/tradingLimit.d.ts +0 -7
  379. package/dist/esm/interfaces/tradingLimitsConfig.d.ts +0 -10
  380. package/dist/esm/interfaces/tradingLimitsState.d.ts +0 -9
  381. package/dist/esm/limits.d.ts +0 -33
  382. package/dist/esm/limits.js +0 -123
  383. package/dist/esm/mento.d.ts +0 -287
  384. package/dist/esm/mento.js +0 -671
  385. package/dist/esm/types/contractAddressMap.d.ts +0 -4
  386. package/dist/esm/types/contractAddresses.d.ts +0 -23
  387. package/dist/esm/types/index.d.ts +0 -2
  388. package/dist/esm/types/index.js +0 -2
  389. package/dist/esm/utils.d.ts +0 -80
  390. package/dist/esm/utils.js +0 -162
  391. /package/dist/esm/{interfaces/IChainClient.js → core/types/borrow.js} +0 -0
  392. /package/dist/esm/{types → core/types}/contractAddresses.js +0 -0
  393. /package/dist/esm/{interfaces/tradingLimit.js → core/types/liquidity.js} +0 -0
  394. /package/dist/esm/{interfaces/tradingLimitsConfig.js → core/types/provider.js} +0 -0
  395. /package/dist/esm/{interfaces/tradingLimitsState.js → core/types/route.js} +0 -0
  396. /package/dist/esm/{types/contractAddressMap.js → core/types/token.js} +0 -0
@@ -0,0 +1,452 @@
1
+ // This file is auto-generated. Do not edit manually.
2
+ // Generated on 2026-04-16T14:26:59.057Z
3
+ /**
4
+ * Enum of all token symbols across all supported chains
5
+ */
6
+ export var TokenSymbol;
7
+ (function (TokenSymbol) {
8
+ TokenSymbol["AUDm"] = "AUDm";
9
+ TokenSymbol["AUSD"] = "AUSD";
10
+ TokenSymbol["BRLm"] = "BRLm";
11
+ TokenSymbol["CADm"] = "CADm";
12
+ TokenSymbol["CHFm"] = "CHFm";
13
+ TokenSymbol["COPm"] = "COPm";
14
+ TokenSymbol["EURm"] = "EURm";
15
+ TokenSymbol["GBPm"] = "GBPm";
16
+ TokenSymbol["GHSm"] = "GHSm";
17
+ TokenSymbol["JPYm"] = "JPYm";
18
+ TokenSymbol["KESm"] = "KESm";
19
+ TokenSymbol["NGNm"] = "NGNm";
20
+ TokenSymbol["PHPm"] = "PHPm";
21
+ TokenSymbol["USDC"] = "USDC";
22
+ TokenSymbol["USDT0"] = "USDT0";
23
+ TokenSymbol["USDm"] = "USDm";
24
+ TokenSymbol["USD_"] = "USD\u20AE";
25
+ TokenSymbol["XOFm"] = "XOFm";
26
+ TokenSymbol["ZARm"] = "ZARm";
27
+ TokenSymbol["axlEUROC"] = "axlEUROC";
28
+ TokenSymbol["axlUSDC"] = "axlUSDC";
29
+ })(TokenSymbol || (TokenSymbol = {}));
30
+ /**
31
+ * Cached tokens indexed by chain ID
32
+ */
33
+ export const cachedTokens = {
34
+ // Chain 143
35
+ 143: [
36
+ {
37
+ address: '0x39bb4E0a204412bB98e821d25e7d955e69d40Fd1',
38
+ symbol: TokenSymbol.GBPm,
39
+ name: 'Mento British Pound',
40
+ decimals: 18,
41
+ },
42
+ {
43
+ address: '0xBC69212B8E4d445b2307C9D32dD68E2A4Df00115',
44
+ symbol: TokenSymbol.USDm,
45
+ name: 'Mento Dollar',
46
+ decimals: 18,
47
+ },
48
+ {
49
+ address: '0x754704Bc059F8C67012fEd69BC8A327a5aafb603',
50
+ symbol: TokenSymbol.USDC,
51
+ name: 'USDC',
52
+ decimals: 6,
53
+ },
54
+ {
55
+ address: '0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a',
56
+ symbol: TokenSymbol.AUSD,
57
+ name: 'AUSD',
58
+ decimals: 6,
59
+ },
60
+ {
61
+ address: '0xe7cd86e13AC4309349F30B3435a9d337750fC82D',
62
+ symbol: TokenSymbol.USDT0,
63
+ name: 'USDT0',
64
+ decimals: 6,
65
+ },
66
+ {
67
+ address: '0x4D502d735B4C574B487Ed641ae87cEaE884731C7',
68
+ symbol: TokenSymbol.EURm,
69
+ name: 'Mento Euro',
70
+ decimals: 18,
71
+ }
72
+ ],
73
+ // Chain 10143
74
+ 10143: [
75
+ {
76
+ address: '0x04de554E875c9797dC4ceBd834A9e99fa8fD5Df9',
77
+ symbol: TokenSymbol.GBPm,
78
+ name: 'Mento British Pound',
79
+ decimals: 18,
80
+ },
81
+ {
82
+ address: '0x5eCc03111ad2A78F981A108759bc73BAE2AB31bc',
83
+ symbol: TokenSymbol.USDm,
84
+ name: 'Mento Dollar',
85
+ decimals: 18,
86
+ },
87
+ {
88
+ address: '0x534b2f3A21130d7a60830c2Df862319e593943A3',
89
+ symbol: TokenSymbol.USDC,
90
+ name: 'USDC',
91
+ decimals: 6,
92
+ },
93
+ {
94
+ address: '0x502E67D3fE9302A5e4Ec1CFCDdbD6F34F9B9484B',
95
+ symbol: TokenSymbol.AUSD,
96
+ name: 'Mento Mock AUSD',
97
+ decimals: 6,
98
+ },
99
+ {
100
+ address: '0xC304EE1876c32d1A194558B1000bE4842F960dF9',
101
+ symbol: TokenSymbol.USDT0,
102
+ name: 'Mento Mock USDT0',
103
+ decimals: 6,
104
+ },
105
+ {
106
+ address: '0x666D0a83cDbf3eC62bDb624d9bFcD8F6345Ba7D0',
107
+ symbol: TokenSymbol.EURm,
108
+ name: 'Mento Euro',
109
+ decimals: 18,
110
+ }
111
+ ],
112
+ // Chain 42220
113
+ 42220: [
114
+ {
115
+ address: '0xCCF663b1fF11028f0b19058d0f7B674004a40746',
116
+ symbol: TokenSymbol.GBPm,
117
+ name: 'Mento British Pound',
118
+ decimals: 18,
119
+ },
120
+ {
121
+ address: '0x765DE816845861e75A25fCA122bb6898B8B1282a',
122
+ symbol: TokenSymbol.USDm,
123
+ name: 'Mento Dollar',
124
+ decimals: 18,
125
+ },
126
+ {
127
+ address: '0xEB466342C4d449BC9f53A865D5Cb90586f405215',
128
+ symbol: TokenSymbol.axlUSDC,
129
+ name: 'Axelar Wrapped USDC',
130
+ decimals: 6,
131
+ },
132
+ {
133
+ address: '0xcebA9300f2b948710d2653dD7B07f33A8B32118C',
134
+ symbol: TokenSymbol.USDC,
135
+ name: 'USDC',
136
+ decimals: 6,
137
+ },
138
+ {
139
+ address: '0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e',
140
+ symbol: TokenSymbol.USD_,
141
+ name: 'Tether USD',
142
+ decimals: 6,
143
+ },
144
+ {
145
+ address: '0xD8763CBa276a3738E6DE85b4b3bF5FDed6D6cA73',
146
+ symbol: TokenSymbol.EURm,
147
+ name: 'Mento Euro',
148
+ decimals: 18,
149
+ },
150
+ {
151
+ address: '0x061cc5a2C863E0C1Cb404006D559dB18A34C762d',
152
+ symbol: TokenSymbol.axlEUROC,
153
+ name: 'Axelar Wrapped EUROC',
154
+ decimals: 6,
155
+ },
156
+ {
157
+ address: '0xfAeA5F3404bbA20D3cc2f8C4B0A888F55a3c7313',
158
+ symbol: TokenSymbol.GHSm,
159
+ name: 'Mento Ghanaian Cedi',
160
+ decimals: 18,
161
+ },
162
+ {
163
+ address: '0x4c35853A3B4e647fD266f4de678dCc8fEC410BF6',
164
+ symbol: TokenSymbol.ZARm,
165
+ name: 'Mento South African Rand',
166
+ decimals: 18,
167
+ },
168
+ {
169
+ address: '0x7175504C455076F15c04A2F90a8e352281F492F9',
170
+ symbol: TokenSymbol.AUDm,
171
+ name: 'Mento Australian Dollar',
172
+ decimals: 18,
173
+ },
174
+ {
175
+ address: '0xb55a79F398E759E43C95b979163f30eC87Ee131D',
176
+ symbol: TokenSymbol.CHFm,
177
+ name: 'Mento Swiss Franc',
178
+ decimals: 18,
179
+ },
180
+ {
181
+ address: '0xE2702Bd97ee33c88c8f6f92DA3B733608aa76F71',
182
+ symbol: TokenSymbol.NGNm,
183
+ name: 'Mento Nigerian Naira',
184
+ decimals: 18,
185
+ },
186
+ {
187
+ address: '0x456a3D042C0DbD3db53D5489e98dFb038553B0d0',
188
+ symbol: TokenSymbol.KESm,
189
+ name: 'Mento Kenyan Shilling',
190
+ decimals: 18,
191
+ },
192
+ {
193
+ address: '0xff4Ab19391af240c311c54200a492233052B6325',
194
+ symbol: TokenSymbol.CADm,
195
+ name: 'Mento Canadian Dollar',
196
+ decimals: 18,
197
+ },
198
+ {
199
+ address: '0x105d4A9306D2E55a71d2Eb95B81553AE1dC20d7B',
200
+ symbol: TokenSymbol.PHPm,
201
+ name: 'Mento Philippine Peso',
202
+ decimals: 18,
203
+ },
204
+ {
205
+ address: '0xc45eCF20f3CD864B32D9794d6f76814aE8892e20',
206
+ symbol: TokenSymbol.JPYm,
207
+ name: 'Mento Japanese Yen',
208
+ decimals: 18,
209
+ },
210
+ {
211
+ address: '0x8A567e2aE79CA692Bd748aB832081C45de4041eA',
212
+ symbol: TokenSymbol.COPm,
213
+ name: 'Mento Colombian Peso',
214
+ decimals: 18,
215
+ },
216
+ {
217
+ address: '0xe8537a3d056DA446677B9E9d6c5dB704EaAb4787',
218
+ symbol: TokenSymbol.BRLm,
219
+ name: 'Mento Brazilian Real',
220
+ decimals: 18,
221
+ },
222
+ {
223
+ address: '0x73F93dcc49cB8A239e2032663e9475dd5ef29A08',
224
+ symbol: TokenSymbol.XOFm,
225
+ name: 'Mento West African CFA franc',
226
+ decimals: 18,
227
+ }
228
+ ],
229
+ // Chain 11142220
230
+ 11142220: [
231
+ {
232
+ address: '0x85F5181Abdbf0e1814Fc4358582Ae07b8eBA3aF3',
233
+ symbol: TokenSymbol.GBPm,
234
+ name: 'Mento British Pound',
235
+ decimals: 18,
236
+ },
237
+ {
238
+ address: '0xdE9e4C3ce781b4bA68120d6261cbad65ce0aB00b',
239
+ symbol: TokenSymbol.USDm,
240
+ name: 'Mento Dollar',
241
+ decimals: 18,
242
+ },
243
+ {
244
+ address: '0x6285De9DA7C1d329C0451628638908915002d9d1',
245
+ symbol: TokenSymbol.axlUSDC,
246
+ name: 'Mento Mock axlUSDC',
247
+ decimals: 18,
248
+ },
249
+ {
250
+ address: '0x01C5C0122039549AD1493B8220cABEdD739BC44E',
251
+ symbol: TokenSymbol.USDC,
252
+ name: 'USDC',
253
+ decimals: 6,
254
+ },
255
+ {
256
+ address: '0xd077A400968890Eacc75cdc901F0356c943e4fDb',
257
+ symbol: TokenSymbol.USD_,
258
+ name: 'Tether USD',
259
+ decimals: 6,
260
+ },
261
+ {
262
+ address: '0xA99dC247d6b7B2E3ab48a1fEE101b83cD6aCd82a',
263
+ symbol: TokenSymbol.EURm,
264
+ name: 'Mento Euro',
265
+ decimals: 18,
266
+ },
267
+ {
268
+ address: '0x9883d788d40F1C7595a780ed881Ea833C7743B4B',
269
+ symbol: TokenSymbol.axlEUROC,
270
+ name: 'Mento Mock axlEUROC',
271
+ decimals: 18,
272
+ },
273
+ {
274
+ address: '0x0352976d940a2C3FBa0C3623198947Ee1d17869E',
275
+ symbol: TokenSymbol.PHPm,
276
+ name: 'Mento Philippine Peso',
277
+ decimals: 18,
278
+ },
279
+ {
280
+ address: '0x5505b70207aE3B826c1A7607F19F3Bf73444A082',
281
+ symbol: TokenSymbol.XOFm,
282
+ name: 'Mento West African CFA franc',
283
+ decimals: 18,
284
+ },
285
+ {
286
+ address: '0x5873Faeb42F3563dcD77F0fbbdA818E6d6DA3139',
287
+ symbol: TokenSymbol.AUDm,
288
+ name: 'Mento Australian Dollar',
289
+ decimals: 18,
290
+ },
291
+ {
292
+ address: '0xF151c9a13b78C84f93f50B8b3bC689fedc134F60',
293
+ symbol: TokenSymbol.CADm,
294
+ name: 'Mento Canadian Dollar',
295
+ decimals: 18,
296
+ },
297
+ {
298
+ address: '0x10CCfB235b0E1Ed394bACE4560C3ed016697687e',
299
+ symbol: TokenSymbol.ZARm,
300
+ name: 'Mento South African Rand',
301
+ decimals: 18,
302
+ },
303
+ {
304
+ address: '0x284E9b7B623eAE866914b7FA0eB720C2Bb3C2980',
305
+ symbol: TokenSymbol.CHFm,
306
+ name: 'Mento Swiss Franc',
307
+ decimals: 18,
308
+ },
309
+ {
310
+ address: '0x85Bee67D435A39f7467a8a9DE34a5B73D25Df426',
311
+ symbol: TokenSymbol.JPYm,
312
+ name: 'Mento Japanese Yen',
313
+ decimals: 18,
314
+ },
315
+ {
316
+ address: '0x5F8d55c3627d2dc0a2B4afa798f877242F382F67',
317
+ symbol: TokenSymbol.COPm,
318
+ name: 'Mento Colombian Peso',
319
+ decimals: 18,
320
+ },
321
+ {
322
+ address: '0x2294298942fdc79417DE9E0D740A4957E0e7783a',
323
+ symbol: TokenSymbol.BRLm,
324
+ name: 'Mento Brazilian Real',
325
+ decimals: 18,
326
+ },
327
+ {
328
+ address: '0x5e94B8C872bD47BC4255E60ECBF44D5E66e7401C',
329
+ symbol: TokenSymbol.GHSm,
330
+ name: 'Mento Ghanaian Cedi',
331
+ decimals: 18,
332
+ },
333
+ {
334
+ address: '0x3d5ae86F34E2a82771496D140daFAEf3789dF888',
335
+ symbol: TokenSymbol.NGNm,
336
+ name: 'Mento Nigerian Naira',
337
+ decimals: 18,
338
+ },
339
+ {
340
+ address: '0xC7e4635651E3e3Af82b61d3E23c159438daE3BbF',
341
+ symbol: TokenSymbol.KESm,
342
+ name: 'Mento Kenyan Shilling',
343
+ decimals: 18,
344
+ }
345
+ ],
346
+ };
347
+ /**
348
+ * Mapping of token addresses by chain ID and token symbol
349
+ * Useful for quickly looking up a token address by its symbol on a specific chain
350
+ */
351
+ export const TOKEN_ADDRESSES_BY_CHAIN = {
352
+ 143: {
353
+ [TokenSymbol.GBPm]: '0x39bb4E0a204412bB98e821d25e7d955e69d40Fd1',
354
+ [TokenSymbol.USDm]: '0xBC69212B8E4d445b2307C9D32dD68E2A4Df00115',
355
+ [TokenSymbol.USDC]: '0x754704Bc059F8C67012fEd69BC8A327a5aafb603',
356
+ [TokenSymbol.AUSD]: '0x00000000eFE302BEAA2b3e6e1b18d08D69a9012a',
357
+ [TokenSymbol.USDT0]: '0xe7cd86e13AC4309349F30B3435a9d337750fC82D',
358
+ [TokenSymbol.EURm]: '0x4D502d735B4C574B487Ed641ae87cEaE884731C7',
359
+ },
360
+ 10143: {
361
+ [TokenSymbol.GBPm]: '0x04de554E875c9797dC4ceBd834A9e99fa8fD5Df9',
362
+ [TokenSymbol.USDm]: '0x5eCc03111ad2A78F981A108759bc73BAE2AB31bc',
363
+ [TokenSymbol.USDC]: '0x534b2f3A21130d7a60830c2Df862319e593943A3',
364
+ [TokenSymbol.AUSD]: '0x502E67D3fE9302A5e4Ec1CFCDdbD6F34F9B9484B',
365
+ [TokenSymbol.USDT0]: '0xC304EE1876c32d1A194558B1000bE4842F960dF9',
366
+ [TokenSymbol.EURm]: '0x666D0a83cDbf3eC62bDb624d9bFcD8F6345Ba7D0',
367
+ },
368
+ 42220: {
369
+ [TokenSymbol.GBPm]: '0xCCF663b1fF11028f0b19058d0f7B674004a40746',
370
+ [TokenSymbol.USDm]: '0x765DE816845861e75A25fCA122bb6898B8B1282a',
371
+ [TokenSymbol.axlUSDC]: '0xEB466342C4d449BC9f53A865D5Cb90586f405215',
372
+ [TokenSymbol.USDC]: '0xcebA9300f2b948710d2653dD7B07f33A8B32118C',
373
+ [TokenSymbol.USD_]: '0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e',
374
+ [TokenSymbol.EURm]: '0xD8763CBa276a3738E6DE85b4b3bF5FDed6D6cA73',
375
+ [TokenSymbol.axlEUROC]: '0x061cc5a2C863E0C1Cb404006D559dB18A34C762d',
376
+ [TokenSymbol.GHSm]: '0xfAeA5F3404bbA20D3cc2f8C4B0A888F55a3c7313',
377
+ [TokenSymbol.ZARm]: '0x4c35853A3B4e647fD266f4de678dCc8fEC410BF6',
378
+ [TokenSymbol.AUDm]: '0x7175504C455076F15c04A2F90a8e352281F492F9',
379
+ [TokenSymbol.CHFm]: '0xb55a79F398E759E43C95b979163f30eC87Ee131D',
380
+ [TokenSymbol.NGNm]: '0xE2702Bd97ee33c88c8f6f92DA3B733608aa76F71',
381
+ [TokenSymbol.KESm]: '0x456a3D042C0DbD3db53D5489e98dFb038553B0d0',
382
+ [TokenSymbol.CADm]: '0xff4Ab19391af240c311c54200a492233052B6325',
383
+ [TokenSymbol.PHPm]: '0x105d4A9306D2E55a71d2Eb95B81553AE1dC20d7B',
384
+ [TokenSymbol.JPYm]: '0xc45eCF20f3CD864B32D9794d6f76814aE8892e20',
385
+ [TokenSymbol.COPm]: '0x8A567e2aE79CA692Bd748aB832081C45de4041eA',
386
+ [TokenSymbol.BRLm]: '0xe8537a3d056DA446677B9E9d6c5dB704EaAb4787',
387
+ [TokenSymbol.XOFm]: '0x73F93dcc49cB8A239e2032663e9475dd5ef29A08',
388
+ },
389
+ 11142220: {
390
+ [TokenSymbol.GBPm]: '0x85F5181Abdbf0e1814Fc4358582Ae07b8eBA3aF3',
391
+ [TokenSymbol.USDm]: '0xdE9e4C3ce781b4bA68120d6261cbad65ce0aB00b',
392
+ [TokenSymbol.axlUSDC]: '0x6285De9DA7C1d329C0451628638908915002d9d1',
393
+ [TokenSymbol.USDC]: '0x01C5C0122039549AD1493B8220cABEdD739BC44E',
394
+ [TokenSymbol.USD_]: '0xd077A400968890Eacc75cdc901F0356c943e4fDb',
395
+ [TokenSymbol.EURm]: '0xA99dC247d6b7B2E3ab48a1fEE101b83cD6aCd82a',
396
+ [TokenSymbol.axlEUROC]: '0x9883d788d40F1C7595a780ed881Ea833C7743B4B',
397
+ [TokenSymbol.PHPm]: '0x0352976d940a2C3FBa0C3623198947Ee1d17869E',
398
+ [TokenSymbol.XOFm]: '0x5505b70207aE3B826c1A7607F19F3Bf73444A082',
399
+ [TokenSymbol.AUDm]: '0x5873Faeb42F3563dcD77F0fbbdA818E6d6DA3139',
400
+ [TokenSymbol.CADm]: '0xF151c9a13b78C84f93f50B8b3bC689fedc134F60',
401
+ [TokenSymbol.ZARm]: '0x10CCfB235b0E1Ed394bACE4560C3ed016697687e',
402
+ [TokenSymbol.CHFm]: '0x284E9b7B623eAE866914b7FA0eB720C2Bb3C2980',
403
+ [TokenSymbol.JPYm]: '0x85Bee67D435A39f7467a8a9DE34a5B73D25Df426',
404
+ [TokenSymbol.COPm]: '0x5F8d55c3627d2dc0a2B4afa798f877242F382F67',
405
+ [TokenSymbol.BRLm]: '0x2294298942fdc79417DE9E0D740A4957E0e7783a',
406
+ [TokenSymbol.GHSm]: '0x5e94B8C872bD47BC4255E60ECBF44D5E66e7401C',
407
+ [TokenSymbol.NGNm]: '0x3d5ae86F34E2a82771496D140daFAEf3789dF888',
408
+ [TokenSymbol.KESm]: '0xC7e4635651E3e3Af82b61d3E23c159438daE3BbF',
409
+ },
410
+ };
411
+ /**
412
+ * Get cached tokens for a specific chain
413
+ * @param chainId - The chain ID
414
+ * @returns The cached tokens array, or empty array if not available
415
+ */
416
+ export function getCachedTokens(chainId) {
417
+ return cachedTokens[chainId] ?? [];
418
+ }
419
+ /**
420
+ * Get cached tokens synchronously for a specific chain
421
+ * @param chainId - The chain ID to get tokens for
422
+ * @returns The cached tokens array
423
+ * @throws Error if tokens are not available for the chain
424
+ */
425
+ export function getCachedTokensSync(chainId) {
426
+ const tokens = cachedTokens[chainId];
427
+ if (!tokens || tokens.length === 0) {
428
+ throw new Error(`No cached tokens available for chain ${chainId}`);
429
+ }
430
+ return tokens;
431
+ }
432
+ /**
433
+ * Get token address by chain ID and symbol
434
+ * @param chainId - The chain ID
435
+ * @param symbol - The token symbol
436
+ * @returns The token address or undefined if not found
437
+ */
438
+ export function getTokenAddress(chainId, symbol) {
439
+ return TOKEN_ADDRESSES_BY_CHAIN[chainId]?.[symbol];
440
+ }
441
+ /**
442
+ * Find a token by its symbol on a specific chain
443
+ * @param chainId - The chain ID
444
+ * @param symbol - The token symbol
445
+ * @returns The token object or undefined if not found
446
+ */
447
+ export function findTokenBySymbol(chainId, symbol) {
448
+ const tokens = cachedTokens[chainId];
449
+ if (!tokens)
450
+ return undefined;
451
+ return tokens.find((t) => t.symbol === symbol);
452
+ }
@@ -0,0 +1,10 @@
1
+ import { parseAbi } from 'viem';
2
+ export const ACTIVE_POOL_ABI = parseAbi([
3
+ 'function getCollBalance() view returns (uint256)',
4
+ 'function getBoldDebt() view returns (uint256)',
5
+ 'function aggWeightedDebtSum() view returns (uint256)',
6
+ 'function aggRecordedDebt() view returns (uint256)',
7
+ 'function calcPendingAggInterest() view returns (uint256)',
8
+ 'function hasBeenShutDown() view returns (bool)',
9
+ 'function shutdownTime() view returns (uint256)',
10
+ ]);
@@ -0,0 +1,22 @@
1
+ import { parseAbi } from 'viem';
2
+ export const ADDRESSES_REGISTRY_ABI = parseAbi([
3
+ 'function collToken() view returns (address)',
4
+ 'function borrowerOperations() view returns (address)',
5
+ 'function troveManager() view returns (address)',
6
+ 'function troveNFT() view returns (address)',
7
+ 'function metadataNFT() view returns (address)',
8
+ 'function stabilityPool() view returns (address)',
9
+ 'function priceFeed() view returns (address)',
10
+ 'function activePool() view returns (address)',
11
+ 'function defaultPool() view returns (address)',
12
+ 'function gasPoolAddress() view returns (address)',
13
+ 'function collSurplusPool() view returns (address)',
14
+ 'function sortedTroves() view returns (address)',
15
+ 'function interestRouter() view returns (address)',
16
+ 'function hintHelpers() view returns (address)',
17
+ 'function multiTroveGetter() view returns (address)',
18
+ 'function collateralRegistry() view returns (address)',
19
+ 'function boldToken() view returns (address)',
20
+ 'function gasToken() view returns (address)',
21
+ 'function liquidityStrategy() view returns (address)',
22
+ ]);
@@ -0,0 +1,68 @@
1
+ export const BIPOOL_MANAGER_ABI = [
2
+ {
3
+ name: 'getExchanges',
4
+ type: 'function',
5
+ stateMutability: 'view',
6
+ inputs: [],
7
+ outputs: [
8
+ {
9
+ name: 'exchanges',
10
+ type: 'tuple[]',
11
+ components: [
12
+ {
13
+ name: 'exchangeId',
14
+ type: 'bytes32',
15
+ },
16
+ {
17
+ name: 'assets',
18
+ type: 'address[]',
19
+ },
20
+ ],
21
+ },
22
+ ],
23
+ },
24
+ {
25
+ name: 'getPoolExchange',
26
+ type: 'function',
27
+ stateMutability: 'view',
28
+ inputs: [
29
+ {
30
+ name: 'exchangeId',
31
+ type: 'bytes32',
32
+ },
33
+ ],
34
+ outputs: [
35
+ {
36
+ name: 'exchange',
37
+ type: 'tuple',
38
+ components: [
39
+ { name: 'asset0', type: 'address' },
40
+ { name: 'asset1', type: 'address' },
41
+ { name: 'pricingModule', type: 'address' },
42
+ { name: 'bucket0', type: 'uint256' },
43
+ { name: 'bucket1', type: 'uint256' },
44
+ { name: 'lastBucketUpdate', type: 'uint256' },
45
+ {
46
+ name: 'config',
47
+ type: 'tuple',
48
+ components: [
49
+ {
50
+ name: 'spread',
51
+ type: 'tuple',
52
+ components: [{ name: 'value', type: 'uint256' }],
53
+ },
54
+ { name: 'referenceRateFeedID', type: 'address' },
55
+ { name: 'referenceRateResetFrequency', type: 'uint256' },
56
+ { name: 'minimumReports', type: 'uint256' },
57
+ {
58
+ name: 'stablePoolResetSize',
59
+ type: 'tuple',
60
+ components: [{ name: 'value', type: 'uint256' }],
61
+ },
62
+ ],
63
+ },
64
+ ],
65
+ },
66
+ ],
67
+ },
68
+ ];
@@ -0,0 +1,85 @@
1
+ import { parseAbi } from 'viem';
2
+ /**
3
+ * BorrowerOperations ABI for Bold protocol trove operations
4
+ *
5
+ * Note: `as any` is used because viem's parseAbi returns a complex readonly tuple type
6
+ * that can cause type verbosity. This doesn't compromise type safety - viem's
7
+ * readContract/writeContract still infer types correctly from the ABI at usage sites.
8
+ */
9
+ export const BORROWER_OPERATIONS_ABI = parseAbi([
10
+ // Core trove operations
11
+ 'function openTrove(address _owner, uint256 _ownerIndex, uint256 _ETHAmount, uint256 _boldAmount, uint256 _upperHint, uint256 _lowerHint, uint256 _annualInterestRate, uint256 _maxUpfrontFee, address _addManager, address _removeManager, address _receiver) returns (uint256)',
12
+ 'function openTroveAndJoinInterestBatchManager((address owner, uint256 ownerIndex, uint256 collAmount, uint256 boldAmount, uint256 upperHint, uint256 lowerHint, address interestBatchManager, uint256 maxUpfrontFee, address addManager, address removeManager, address receiver) _params) returns (uint256)',
13
+ 'function addColl(uint256 _troveId, uint256 _ETHAmount)',
14
+ 'function withdrawColl(uint256 _troveId, uint256 _amount)',
15
+ 'function withdrawBold(uint256 _troveId, uint256 _amount, uint256 _maxUpfrontFee)',
16
+ 'function repayBold(uint256 _troveId, uint256 _amount)',
17
+ 'function closeTrove(uint256 _troveId)',
18
+ 'function adjustTrove(uint256 _troveId, uint256 _collChange, bool _isCollIncrease, uint256 _debtChange, bool isDebtIncrease, uint256 _maxUpfrontFee)',
19
+ 'function adjustZombieTrove(uint256 _troveId, uint256 _collChange, bool _isCollIncrease, uint256 _boldChange, bool _isDebtIncrease, uint256 _upperHint, uint256 _lowerHint, uint256 _maxUpfrontFee)',
20
+ 'function adjustTroveInterestRate(uint256 _troveId, uint256 _newAnnualInterestRate, uint256 _upperHint, uint256 _lowerHint, uint256 _maxUpfrontFee)',
21
+ 'function applyPendingDebt(uint256 _troveId, uint256 _lowerHint, uint256 _upperHint)',
22
+ 'function claimCollateral()',
23
+ // Batch manager operations
24
+ 'function setInterestBatchManager(uint256 _troveId, address _newBatchManager, uint256 _upperHint, uint256 _lowerHint, uint256 _maxUpfrontFee)',
25
+ 'function removeFromBatch(uint256 _troveId, uint256 _newAnnualInterestRate, uint256 _upperHint, uint256 _lowerHint, uint256 _maxUpfrontFee)',
26
+ 'function switchBatchManager(uint256 _troveId, uint256 _removeUpperHint, uint256 _removeLowerHint, address _newBatchManager, uint256 _addUpperHint, uint256 _addLowerHint, uint256 _maxUpfrontFee)',
27
+ // Individual delegate
28
+ 'function setInterestIndividualDelegate(uint256 _troveId, address _delegate, uint128 _minInterestRate, uint128 _maxInterestRate, uint256 _newAnnualInterestRate, uint256 _upperHint, uint256 _lowerHint, uint256 _maxUpfrontFee, uint256 _minInterestRateChangePeriod)',
29
+ 'function removeInterestIndividualDelegate(uint256 _troveId)',
30
+ // View functions
31
+ 'function hasBeenShutDown() view returns (bool)',
32
+ 'function interestBatchManagerOf(uint256 _troveId) view returns (address)',
33
+ 'function getInterestBatchManager(address _account) view returns ((uint128 minInterestRate, uint128 maxInterestRate, uint256 minInterestRateChangePeriod))',
34
+ 'function checkBatchManagerExists(address _batchManager) view returns (bool)',
35
+ 'function getInterestIndividualDelegateOf(uint256 _troveId) view returns ((address account, uint128 minInterestRate, uint128 maxInterestRate, uint256 minInterestRateChangePeriod))',
36
+ // Inherited view functions from LiquityBase
37
+ 'function getEntireBranchDebt() view returns (uint256)',
38
+ 'function getEntireBranchColl() view returns (uint256)',
39
+ 'function systemParams() view returns (address)',
40
+ 'function CCR() view returns (uint256)',
41
+ 'function MCR() view returns (uint256)',
42
+ // Custom errors (BorrowerOperations.sol)
43
+ 'error IsShutDown()',
44
+ 'error TCRNotBelowSCR()',
45
+ 'error ZeroAdjustment()',
46
+ 'error NotOwnerNorInterestManager()',
47
+ 'error TroveInBatch()',
48
+ 'error TroveNotInBatch()',
49
+ 'error InterestNotInRange()',
50
+ 'error BatchInterestRateChangePeriodNotPassed()',
51
+ 'error DelegateInterestRateChangePeriodNotPassed()',
52
+ 'error TroveExists()',
53
+ 'error TroveNotOpen()',
54
+ 'error TroveNotActive()',
55
+ 'error TroveNotZombie()',
56
+ 'error TroveWithZeroDebt()',
57
+ 'error UpfrontFeeTooHigh()',
58
+ 'error ICRBelowMCR()',
59
+ 'error ICRBelowMCRPlusBCR()',
60
+ 'error RepaymentNotMatchingCollWithdrawal()',
61
+ 'error TCRBelowCCR()',
62
+ 'error DebtBelowMin()',
63
+ 'error CollWithdrawalTooHigh()',
64
+ 'error NotEnoughBoldBalance()',
65
+ 'error InterestRateTooLow()',
66
+ 'error InterestRateTooHigh()',
67
+ 'error InterestRateNotNew()',
68
+ 'error InvalidInterestBatchManager()',
69
+ 'error BatchManagerExists()',
70
+ 'error BatchManagerNotNew()',
71
+ 'error NewFeeNotLower()',
72
+ 'error CallerNotTroveManager()',
73
+ 'error CallerNotPriceFeed()',
74
+ 'error CallerNotSelf()',
75
+ 'error MinGeMax()',
76
+ 'error AnnualManagementFeeTooHigh()',
77
+ 'error MinInterestRateChangePeriodTooLow()',
78
+ 'error NewOracleFailureDetected()',
79
+ 'error BatchSharesRatioTooLow()',
80
+ // Custom errors (inherited from AddRemoveManagers)
81
+ 'error EmptyManager()',
82
+ 'error NotBorrower()',
83
+ 'error NotOwnerNorAddManager()',
84
+ 'error NotOwnerNorRemoveManager()',
85
+ ]);
@@ -0,0 +1,4 @@
1
+ import { parseAbi } from 'viem';
2
+ export const BREAKERBOX_ABI = parseAbi([
3
+ 'function getRateFeedTradingMode(address rateFeedID) view returns (uint8)',
4
+ ]);
@@ -0,0 +1,5 @@
1
+ import { parseAbi } from 'viem';
2
+ export const BROKER_ABI = parseAbi([
3
+ 'function tradingLimitsConfig(bytes32) view returns (uint32 timestep0, uint32 timestep1, int48 limit0, int48 limit1, int48 limitGlobal, uint8 flags)',
4
+ 'function tradingLimitsState(bytes32) view returns (uint32 lastUpdated0, uint32 lastUpdated1, int48 netflow0, int48 netflow1, int48 netflowGlobal)',
5
+ ]);
@@ -0,0 +1,17 @@
1
+ import { parseAbi } from 'viem';
2
+ /**
3
+ * ERC20 ABI for standard token operations
4
+ *
5
+ * Note: `as any` is used because viem's parseAbi returns a complex readonly tuple type
6
+ * that can cause type verbosity. This doesn't compromise type safety - viem's
7
+ * readContract/writeContract still infer types correctly from the ABI at usage sites.
8
+ */
9
+ export const ERC20_ABI = parseAbi([
10
+ 'function name() view returns (string)',
11
+ 'function symbol() view returns (string)',
12
+ 'function decimals() view returns (uint8)',
13
+ 'function totalSupply() view returns (uint256)',
14
+ 'function balanceOf(address) view returns (uint256)',
15
+ 'function approve(address spender, uint256 amount) returns (bool)',
16
+ 'function allowance(address owner, address spender) view returns (uint256)',
17
+ ]);