@gearbox-protocol/sdk 15.0.0-next.2 → 15.0.0-pyth.1

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 (789) hide show
  1. package/README.md +2 -0
  2. package/dist/cjs/abi/IWithdrawalCompressorV311.js +315 -0
  3. package/dist/cjs/abi/compressors/liquidationCompressor.js +237 -0
  4. package/dist/cjs/abi/compressors/rwaCompressor.js +207 -0
  5. package/dist/cjs/abi/compressors/subcompressors/liquidation/midasLiquidationSubcompressor.js +124 -0
  6. package/dist/cjs/abi/compressors/subcompressors/liquidation/securitizeLiquidationSubcompressor.js +124 -0
  7. package/dist/cjs/abi/compressors/subcompressors/rwa/onDemandRWAUnderlyingSubcompressor.js +60 -0
  8. package/dist/cjs/abi/compressors/subcompressors/rwa/securitizeRWAFactorySubcompressor.js +80 -0
  9. package/dist/cjs/abi/compressors/subcompressors/{infinifiWithdrawalSubcompressor.js → withdrawal/infinifiWithdrawalSubcompressor.js} +2 -1
  10. package/dist/cjs/abi/compressors/subcompressors/{kelpLRTWithdrawalSubcompressor.js → withdrawal/kelpLRTWithdrawalSubcompressor.js} +2 -1
  11. package/dist/cjs/abi/compressors/subcompressors/{mellowWithdrawalSubcompressor.js → withdrawal/mellowWithdrawalSubcompressor.js} +132 -3
  12. package/dist/cjs/abi/compressors/subcompressors/{midasWithdrawalSubcompressor.js → withdrawal/midasWithdrawalSubcompressor.js} +136 -3
  13. package/dist/cjs/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.js +320 -0
  14. package/dist/cjs/abi/compressors/subcompressors/{upshiftWithdrawalSubcompressor.js → withdrawal/upshiftWithdrawalSubcompressor.js} +2 -1
  15. package/dist/cjs/abi/compressors/withdrawalCompressor.js +252 -4
  16. package/dist/cjs/abi/errors.js +133 -2
  17. package/dist/cjs/abi/helpers/redemptionLogger.js +160 -0
  18. package/dist/cjs/abi/iDefaultAccountFactoryV3.js +194 -0
  19. package/dist/cjs/abi/iDegenNFTV2.js +282 -0
  20. package/dist/cjs/abi/iERC20Zapper.js +33 -0
  21. package/dist/cjs/abi/iETHZapper.js +30 -0
  22. package/dist/cjs/abi/router/midasWorker.js +4 -4
  23. package/dist/cjs/abi/router/securitizeOnrampWorker.js +541 -0
  24. package/dist/cjs/abi/rwa/iDSRegistryService.js +414 -0
  25. package/dist/cjs/abi/rwa/iDSToken.js +1958 -0
  26. package/dist/cjs/abi/{kyc/iKYCCompressor.js → rwa/iRWACompressor.js} +13 -13
  27. package/dist/cjs/abi/{kyc/iKYCFactory.js → rwa/iRWAFactory.js} +6 -6
  28. package/dist/cjs/abi/{kyc/iKYCUnderlying.js → rwa/iRWAUnderlying.js} +7 -7
  29. package/dist/cjs/abi/{kyc/iSecuritizeKYCFactory.js → rwa/iSecuritizeRWAFactory.js} +59 -12
  30. package/dist/cjs/{plugins/apy/apy-cache.js → common-utils/axios-cache/AxiosCache.js} +31 -20
  31. package/dist/cjs/common-utils/axios-cache/index.js +22 -0
  32. package/dist/cjs/common-utils/charts/token-data.js +1 -1
  33. package/dist/cjs/common-utils/index.js +2 -0
  34. package/dist/cjs/common-utils/test-utils/index.js +139 -0
  35. package/dist/cjs/common-utils/utils/apy/bonus-apy-from-points.js +28 -0
  36. package/dist/cjs/common-utils/utils/apy/calculate-borrow-rate-from-utilization.js +59 -0
  37. package/dist/cjs/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.js +32 -0
  38. package/dist/cjs/common-utils/utils/apy/calculate-earnings.js +59 -0
  39. package/dist/cjs/common-utils/utils/apy/calculate-earnings.spec.js +62 -0
  40. package/dist/cjs/common-utils/utils/apy/calculate-effective-borrow-rate.js +35 -0
  41. package/dist/cjs/common-utils/utils/apy/calculate-safe-borrow-rate.js +55 -0
  42. package/dist/cjs/common-utils/utils/apy/calculate-safe-borrow-rate.spec.js +39 -0
  43. package/dist/cjs/common-utils/utils/apy/get-complex-apy-list.js +45 -0
  44. package/dist/cjs/common-utils/utils/apy/get-rate-with-fee.js +31 -0
  45. package/dist/cjs/common-utils/utils/apy/get-safe-base-borrow-rate.js +38 -0
  46. package/dist/cjs/common-utils/utils/apy/get-single-quota-borrow-rate.js +33 -0
  47. package/dist/cjs/common-utils/utils/apy/index.js +40 -0
  48. package/dist/cjs/common-utils/utils/apy/max-apy-formula.js +40 -0
  49. package/dist/cjs/common-utils/utils/constants.js +34 -0
  50. package/dist/cjs/common-utils/utils/creditAccount/quota-utils.js +1 -0
  51. package/dist/cjs/common-utils/utils/index.js +9 -1
  52. package/dist/cjs/common-utils/utils/strategies/assets/assets.js +30 -0
  53. package/dist/cjs/common-utils/utils/strategies/assets/index.js +22 -0
  54. package/dist/cjs/common-utils/utils/strategies/availability/check-boolean.js +33 -0
  55. package/dist/cjs/common-utils/utils/strategies/availability/check-degen-nft.js +35 -0
  56. package/dist/cjs/common-utils/utils/strategies/availability/index.js +24 -0
  57. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.js +62 -0
  58. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.js +109 -0
  59. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +66 -0
  60. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +37 -0
  61. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +52 -0
  62. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.js +75 -0
  63. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.js +93 -0
  64. package/dist/cjs/common-utils/utils/strategies/credit-managers/index.js +32 -0
  65. package/dist/cjs/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.js +31 -0
  66. package/dist/cjs/common-utils/utils/strategies/eligibility/index.js +24 -0
  67. package/dist/cjs/common-utils/utils/strategies/eligibility/is-strategy-eligible.js +46 -0
  68. package/dist/cjs/common-utils/utils/strategies/eligibility/is-strategy-released.js +31 -0
  69. package/dist/cjs/common-utils/utils/strategies/index.js +44 -0
  70. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-loss-coefficient.js +31 -0
  71. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.js +45 -0
  72. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.js +63 -0
  73. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.js +330 -0
  74. package/dist/cjs/common-utils/utils/strategies/leverage/get-collateral-by-debt.js +34 -0
  75. package/dist/cjs/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.js +30 -0
  76. package/dist/cjs/common-utils/utils/strategies/leverage/get-factor-from-leverage.js +31 -0
  77. package/dist/cjs/common-utils/utils/strategies/leverage/get-leverage-from-factor.js +31 -0
  78. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-debt.js +85 -0
  79. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-debt.spec.js +227 -0
  80. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.js +33 -0
  81. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.js +23 -0
  82. package/dist/cjs/common-utils/utils/strategies/leverage/index.js +40 -0
  83. package/dist/cjs/common-utils/utils/strategies/leverage/max-leverage-threshold.js +42 -0
  84. package/dist/cjs/common-utils/utils/strategies/leverage/max-leverage.js +35 -0
  85. package/dist/cjs/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.js +39 -0
  86. package/dist/cjs/common-utils/utils/strategies/lists/get-available-strategies.js +47 -0
  87. package/dist/cjs/common-utils/utils/strategies/lists/get-disabled-strategies.js +48 -0
  88. package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +60 -0
  89. package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list.js +38 -0
  90. package/dist/cjs/common-utils/utils/strategies/lists/index.js +26 -0
  91. package/dist/cjs/common-utils/utils/strategies/points/get-complex-points-list.js +38 -0
  92. package/dist/cjs/common-utils/utils/strategies/points/get-points-info.js +43 -0
  93. package/dist/cjs/common-utils/utils/strategies/points/get-points-rates.js +33 -0
  94. package/dist/cjs/common-utils/utils/strategies/points/get-strategy-points.js +81 -0
  95. package/dist/cjs/common-utils/utils/strategies/points/index.js +28 -0
  96. package/dist/cjs/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.js +22 -0
  97. package/dist/cjs/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.js +64 -0
  98. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-apy.js +112 -0
  99. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.js +183 -0
  100. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-points.js +74 -0
  101. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.js +131 -0
  102. package/dist/cjs/common-utils/utils/strategies/strategy-info/cm-availability-condition.js +64 -0
  103. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +410 -0
  104. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.js +274 -0
  105. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +130 -0
  106. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info.js +74 -0
  107. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.js +96 -0
  108. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.js +108 -0
  109. package/dist/cjs/common-utils/utils/strategies/strategy-info/index.js +40 -0
  110. package/dist/cjs/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.js +33 -0
  111. package/dist/cjs/common-utils/utils/strategies/strategy-state/index.js +22 -0
  112. package/dist/cjs/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +38 -0
  113. package/dist/cjs/common-utils/utils/strategies/tokens/add-amount-in-target.js +41 -0
  114. package/dist/cjs/common-utils/utils/strategies/tokens/add-amount-in-target.spec.js +38 -0
  115. package/dist/cjs/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.js +35 -0
  116. package/dist/cjs/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.js +42 -0
  117. package/dist/cjs/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.js +32 -0
  118. package/dist/cjs/common-utils/utils/strategies/tokens/get-native-token-address.js +31 -0
  119. package/dist/cjs/common-utils/utils/strategies/tokens/index.js +44 -0
  120. package/dist/cjs/common-utils/utils/strategies/tokens/is-activated-token.js +36 -0
  121. package/dist/cjs/common-utils/utils/strategies/tokens/is-apy-with-points-exception.js +36 -0
  122. package/dist/cjs/common-utils/utils/strategies/tokens/is-collateral-token.js +59 -0
  123. package/dist/cjs/common-utils/utils/strategies/tokens/is-collateral-token.spec.js +135 -0
  124. package/dist/cjs/common-utils/utils/strategies/tokens/is-forbidden-token.js +33 -0
  125. package/dist/cjs/common-utils/utils/strategies/tokens/is-obtainable-token.js +42 -0
  126. package/dist/cjs/common-utils/utils/strategies/tokens/is-obtainable-token.spec.js +162 -0
  127. package/dist/cjs/common-utils/utils/strategies/tokens/is-usable-token.js +32 -0
  128. package/dist/cjs/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.js +51 -0
  129. package/dist/cjs/common-utils/utils/strategies/tokens/wrap-token-address.js +33 -0
  130. package/dist/cjs/common-utils/utils/strategies/tokens/wrap-token-address.spec.js +13 -0
  131. package/dist/cjs/common-utils/utils/strategies/types/chains.js +16 -0
  132. package/dist/cjs/common-utils/utils/strategies/types/credit-manager-data-legacy.js +16 -0
  133. package/dist/cjs/common-utils/utils/strategies/types/curator-filter.js +16 -0
  134. package/dist/cjs/common-utils/utils/strategies/types/index.js +44 -0
  135. package/dist/cjs/common-utils/utils/strategies/types/legacy-strategy-data-source.js +62 -0
  136. package/dist/cjs/common-utils/utils/strategies/types/points-slices.js +16 -0
  137. package/dist/cjs/common-utils/utils/strategies/types/sdk-state.js +16 -0
  138. package/dist/cjs/common-utils/utils/strategies/types/strategies-cm-list.js +16 -0
  139. package/dist/cjs/common-utils/utils/strategies/types/strategy-data-source.js +16 -0
  140. package/dist/cjs/common-utils/utils/strategies/types/strategy-data.js +16 -0
  141. package/dist/cjs/common-utils/utils/strategies/types/strategy-earnings.js +16 -0
  142. package/dist/cjs/common-utils/utils/strategies/types/strategy.js +16 -0
  143. package/dist/cjs/common-utils/utils/strategies/types/targetable.js +16 -0
  144. package/dist/cjs/common-utils/utils/strategies/types.js +22 -0
  145. package/dist/cjs/common-utils/utils/validation/index.js +42 -0
  146. package/dist/cjs/common-utils/utils/validation/is-zero-balance.js +30 -0
  147. package/dist/cjs/common-utils/utils/validation/validate-balance.js +47 -0
  148. package/dist/cjs/common-utils/utils/validation/validate-balance.spec.js +52 -0
  149. package/dist/cjs/common-utils/utils/validation/validate-balances.js +44 -0
  150. package/dist/cjs/common-utils/utils/validation/validate-balances.spec.js +37 -0
  151. package/dist/cjs/common-utils/utils/validation/validate-credit-manager.js +34 -0
  152. package/dist/cjs/common-utils/utils/validation/validate-credit-manager.spec.js +36 -0
  153. package/dist/cjs/common-utils/utils/validation/validate-hf.js +38 -0
  154. package/dist/cjs/common-utils/utils/validation/validate-hf.spec.js +24 -0
  155. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-quota-status.js +37 -0
  156. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.js +43 -0
  157. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-status.js +76 -0
  158. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-status.spec.js +98 -0
  159. package/dist/cjs/common-utils/utils/validation/validate-open-account.js +41 -0
  160. package/dist/cjs/common-utils/utils/validation/validate-open-account.spec.js +54 -0
  161. package/dist/cjs/common-utils/utils/validation/validate-quota.js +49 -0
  162. package/dist/cjs/common-utils/utils/validation/validate-quota.spec.js +79 -0
  163. package/dist/cjs/common-utils/utils/validation/validate-token-to-obtain.js +42 -0
  164. package/dist/cjs/common-utils/utils/validation/validate-token-to-obtain.spec.js +35 -0
  165. package/dist/cjs/common-utils/utils/validation/validation-types.js +16 -0
  166. package/dist/cjs/dev/AccountOpener.js +6 -7
  167. package/dist/cjs/dev/abi.js +207 -0
  168. package/dist/cjs/dev/claimDSToken.js +208 -0
  169. package/dist/cjs/dev/claimFromFaucet.js +21 -17
  170. package/dist/cjs/dev/createAnvilClient.js +38 -5
  171. package/dist/cjs/dev/index.js +4 -0
  172. package/dist/cjs/dev/isOutOfSyncError.js +3 -1
  173. package/dist/cjs/dev/isTransientError.js +3 -1
  174. package/dist/cjs/history/assembleOperations.js +18 -4
  175. package/dist/cjs/history/classifyMulticallOperations.js +20 -4
  176. package/dist/cjs/history/errors.js +12 -2
  177. package/dist/cjs/history/extractTransfers.js +23 -3
  178. package/dist/cjs/history/parseCreditAccountTransaction.js +3 -1
  179. package/dist/cjs/history/toLegacyOperation.js +1 -1
  180. package/dist/cjs/permissionless/bindings/bytecode-repository.js +9 -10
  181. package/dist/cjs/permissionless/bindings/factory/rate-keeper-factory.js +35 -0
  182. package/dist/cjs/permissionless/bindings/governance/governor.js +10 -0
  183. package/dist/cjs/permissionless/bindings/instance-manager.js +5 -0
  184. package/dist/cjs/permissionless/bindings/market-configurator.js +40 -1
  185. package/dist/cjs/permissionless/bindings/pricefeeds/curve-twap.js +2 -2
  186. package/dist/cjs/permissionless/deployment/addresses.js +1 -0
  187. package/dist/cjs/permissionless/utils/create2.js +2 -2
  188. package/dist/cjs/permissionless/utils/price-update/get-updatable-feeds.js +2 -9
  189. package/dist/cjs/plugins/adapters/abi/actionAbi.js +17 -7
  190. package/dist/cjs/plugins/adapters/abi/conctructorAbi.js +17 -2
  191. package/dist/cjs/plugins/adapters/abi/index.js +2 -0
  192. package/dist/cjs/plugins/adapters/abi/securitize/iBaseOnRamp.js +351 -0
  193. package/dist/cjs/plugins/adapters/abi/securitize/iMidasGatewayAdapter.js +354 -0
  194. package/dist/cjs/{abi/kyc/iDSToken.js → plugins/adapters/abi/securitize/iSecuritizeOnRamp.js} +26 -24
  195. package/dist/cjs/plugins/adapters/abi/securitize/iSecuritizeOnRampAdapter.js +98 -0
  196. package/dist/cjs/plugins/adapters/abi/securitize/iSecuritizeRedemptionGateway.js +149 -0
  197. package/dist/cjs/plugins/adapters/abi/securitize/iSecuritizeRedemptionGatewayAdapter.js +179 -0
  198. package/dist/cjs/plugins/adapters/abi/securitize/index.js +32 -0
  199. package/dist/cjs/plugins/adapters/contracts/MidasGatewayAdapterContract.js +93 -0
  200. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +47 -21
  201. package/dist/cjs/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +71 -0
  202. package/dist/cjs/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +79 -0
  203. package/dist/cjs/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +68 -0
  204. package/dist/cjs/plugins/adapters/contracts/index.js +8 -0
  205. package/dist/cjs/plugins/adapters/createAdapter.js +12 -0
  206. package/dist/cjs/plugins/adapters/types.js +4 -0
  207. package/dist/cjs/plugins/apy/ApyPlugin.js +69 -4
  208. package/dist/cjs/plugins/apy/index.js +0 -2
  209. package/dist/cjs/plugins/apy/strategy-data-source.js +195 -0
  210. package/dist/cjs/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +3 -2
  211. package/dist/cjs/plugins/remote-configs/CustomConfigSource.js +41 -0
  212. package/dist/cjs/plugins/remote-configs/RemoteConfigSource.js +56 -0
  213. package/dist/cjs/plugins/remote-configs/RemoteConfigsPlugin.js +186 -0
  214. package/dist/cjs/plugins/remote-configs/index.js +28 -0
  215. package/dist/cjs/plugins/remote-configs/package.json +1 -0
  216. package/dist/cjs/plugins/remote-configs/types.js +16 -0
  217. package/dist/cjs/rewards/rewards/api.js +4 -2
  218. package/dist/cjs/rewards/rewards/merkl-api.js +9 -3
  219. package/dist/cjs/sdk/MultichainSDK.js +0 -23
  220. package/dist/cjs/sdk/OnchainSDK.js +18 -24
  221. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +189 -81
  222. package/dist/cjs/sdk/base/TokensMeta.js +6 -6
  223. package/dist/cjs/sdk/base/token-types.js +11 -11
  224. package/dist/cjs/sdk/chain/chains.js +18 -18
  225. package/dist/cjs/sdk/constants/address-provider.js +3 -3
  226. package/dist/cjs/sdk/constants/math.js +3 -0
  227. package/dist/cjs/sdk/market/MarketSuite.js +65 -5
  228. package/dist/cjs/sdk/market/ZapperRegister.js +5 -3
  229. package/dist/cjs/sdk/market/credit/CreditSuite.js +81 -9
  230. package/dist/cjs/sdk/market/index.js +5 -3
  231. package/dist/cjs/sdk/market/pool/PoolSuite.js +66 -2
  232. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +23 -3
  233. package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +1 -4
  234. package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +3 -27
  235. package/dist/cjs/sdk/market/pricefeeds/index.js +0 -2
  236. package/dist/cjs/sdk/market/pricefeeds/updates/index.js +0 -7
  237. package/dist/cjs/sdk/market/{kyc/KYCRegistry.js → rwa/RWARegistry.js} +48 -48
  238. package/dist/cjs/sdk/market/{kyc → rwa}/index.js +6 -6
  239. package/dist/cjs/sdk/market/rwa/securitize/SecuritizeDegenNFT.js +41 -0
  240. package/dist/cjs/sdk/market/{kyc/securitize/SecuritizeKYCFactory.js → rwa/securitize/SecuritizeRWAFactory.js} +42 -24
  241. package/dist/cjs/sdk/market/{kyc → rwa}/securitize/constants.js +3 -3
  242. package/dist/cjs/sdk/market/{kyc → rwa}/securitize/index.js +2 -2
  243. package/dist/cjs/sdk/market/rwa/securitize/types.js +36 -0
  244. package/dist/cjs/sdk/market/{kyc → rwa}/types.js +6 -6
  245. package/dist/cjs/sdk/market/zapper/IERC20ZapperContract.js +98 -0
  246. package/dist/cjs/sdk/market/zapper/IETHZapperContract.js +89 -0
  247. package/dist/cjs/sdk/market/zapper/Zapper.js +47 -0
  248. package/dist/cjs/sdk/market/zapper/createZapper.js +45 -0
  249. package/dist/cjs/sdk/market/zapper/index.js +28 -0
  250. package/dist/cjs/sdk/options.js +5 -7
  251. package/dist/cjs/sdk/pools/PoolService.js +84 -86
  252. package/dist/cjs/sdk/utils/viem/simulateWithPriceUpdates.js +1 -1
  253. package/dist/esm/abi/IWithdrawalCompressorV311.js +291 -0
  254. package/dist/esm/abi/compressors/liquidationCompressor.js +213 -0
  255. package/dist/esm/abi/compressors/rwaCompressor.js +183 -0
  256. package/dist/esm/abi/compressors/subcompressors/liquidation/midasLiquidationSubcompressor.js +100 -0
  257. package/dist/esm/abi/compressors/subcompressors/liquidation/securitizeLiquidationSubcompressor.js +100 -0
  258. package/dist/esm/abi/compressors/subcompressors/rwa/onDemandRWAUnderlyingSubcompressor.js +36 -0
  259. package/dist/esm/abi/compressors/subcompressors/rwa/securitizeRWAFactorySubcompressor.js +56 -0
  260. package/dist/esm/abi/compressors/subcompressors/{infinifiWithdrawalSubcompressor.js → withdrawal/infinifiWithdrawalSubcompressor.js} +2 -1
  261. package/dist/esm/abi/compressors/subcompressors/{kelpLRTWithdrawalSubcompressor.js → withdrawal/kelpLRTWithdrawalSubcompressor.js} +2 -1
  262. package/dist/esm/abi/compressors/subcompressors/{mellowWithdrawalSubcompressor.js → withdrawal/mellowWithdrawalSubcompressor.js} +132 -3
  263. package/dist/esm/abi/compressors/subcompressors/{midasWithdrawalSubcompressor.js → withdrawal/midasWithdrawalSubcompressor.js} +136 -3
  264. package/dist/esm/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.js +296 -0
  265. package/dist/esm/abi/compressors/subcompressors/{upshiftWithdrawalSubcompressor.js → withdrawal/upshiftWithdrawalSubcompressor.js} +2 -1
  266. package/dist/esm/abi/compressors/withdrawalCompressor.js +252 -4
  267. package/dist/esm/abi/errors.js +130 -1
  268. package/dist/esm/abi/helpers/redemptionLogger.js +136 -0
  269. package/dist/esm/abi/iDefaultAccountFactoryV3.js +170 -0
  270. package/dist/esm/abi/iDegenNFTV2.js +258 -0
  271. package/dist/esm/abi/iERC20Zapper.js +9 -0
  272. package/dist/esm/abi/iETHZapper.js +6 -0
  273. package/dist/esm/abi/router/midasWorker.js +4 -4
  274. package/dist/esm/abi/router/securitizeOnrampWorker.js +517 -0
  275. package/dist/esm/abi/rwa/iDSRegistryService.js +390 -0
  276. package/dist/esm/abi/rwa/iDSToken.js +1934 -0
  277. package/dist/esm/abi/{kyc/iKYCCompressor.js → rwa/iRWACompressor.js} +9 -9
  278. package/dist/esm/abi/{kyc/iKYCFactory.js → rwa/iRWAFactory.js} +2 -2
  279. package/dist/esm/abi/{kyc/iKYCUnderlying.js → rwa/iRWAUnderlying.js} +3 -3
  280. package/dist/esm/abi/{kyc/iSecuritizeKYCFactory.js → rwa/iSecuritizeRWAFactory.js} +55 -8
  281. package/dist/esm/{plugins/apy/apy-cache.js → common-utils/axios-cache/AxiosCache.js} +27 -16
  282. package/dist/esm/common-utils/axios-cache/index.js +1 -0
  283. package/dist/esm/common-utils/charts/token-data.js +1 -1
  284. package/dist/esm/common-utils/index.js +1 -0
  285. package/dist/esm/common-utils/test-utils/index.js +104 -0
  286. package/dist/esm/common-utils/utils/apy/bonus-apy-from-points.js +4 -0
  287. package/dist/esm/common-utils/utils/apy/calculate-borrow-rate-from-utilization.js +35 -0
  288. package/dist/esm/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.js +31 -0
  289. package/dist/esm/common-utils/utils/apy/calculate-earnings.js +35 -0
  290. package/dist/esm/common-utils/utils/apy/calculate-earnings.spec.js +65 -0
  291. package/dist/esm/common-utils/utils/apy/calculate-effective-borrow-rate.js +11 -0
  292. package/dist/esm/common-utils/utils/apy/calculate-safe-borrow-rate.js +34 -0
  293. package/dist/esm/common-utils/utils/apy/calculate-safe-borrow-rate.spec.js +38 -0
  294. package/dist/esm/common-utils/utils/apy/get-complex-apy-list.js +21 -0
  295. package/dist/esm/common-utils/utils/apy/get-rate-with-fee.js +7 -0
  296. package/dist/esm/common-utils/utils/apy/get-safe-base-borrow-rate.js +16 -0
  297. package/dist/esm/common-utils/utils/apy/get-single-quota-borrow-rate.js +9 -0
  298. package/dist/esm/common-utils/utils/apy/index.js +10 -0
  299. package/dist/esm/common-utils/utils/apy/max-apy-formula.js +16 -0
  300. package/dist/esm/common-utils/utils/constants.js +8 -0
  301. package/dist/esm/common-utils/utils/creditAccount/quota-utils.js +1 -0
  302. package/dist/esm/common-utils/utils/index.js +4 -0
  303. package/dist/esm/common-utils/utils/strategies/assets/assets.js +6 -0
  304. package/dist/esm/common-utils/utils/strategies/assets/index.js +1 -0
  305. package/dist/esm/common-utils/utils/strategies/availability/check-boolean.js +9 -0
  306. package/dist/esm/common-utils/utils/strategies/availability/check-degen-nft.js +11 -0
  307. package/dist/esm/common-utils/utils/strategies/availability/index.js +2 -0
  308. package/dist/esm/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.js +38 -0
  309. package/dist/esm/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.js +115 -0
  310. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +42 -0
  311. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +13 -0
  312. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +28 -0
  313. package/dist/esm/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.js +51 -0
  314. package/dist/esm/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.js +96 -0
  315. package/dist/esm/common-utils/utils/strategies/credit-managers/index.js +6 -0
  316. package/dist/esm/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.js +7 -0
  317. package/dist/esm/common-utils/utils/strategies/eligibility/index.js +2 -0
  318. package/dist/esm/common-utils/utils/strategies/eligibility/is-strategy-eligible.js +22 -0
  319. package/dist/esm/common-utils/utils/strategies/eligibility/is-strategy-released.js +7 -0
  320. package/dist/esm/common-utils/utils/strategies/index.js +12 -0
  321. package/dist/esm/common-utils/utils/strategies/leverage/calculate-loss-coefficient.js +7 -0
  322. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.js +21 -0
  323. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.js +42 -0
  324. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.js +332 -0
  325. package/dist/esm/common-utils/utils/strategies/leverage/get-collateral-by-debt.js +10 -0
  326. package/dist/esm/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.js +29 -0
  327. package/dist/esm/common-utils/utils/strategies/leverage/get-factor-from-leverage.js +7 -0
  328. package/dist/esm/common-utils/utils/strategies/leverage/get-leverage-from-factor.js +7 -0
  329. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-debt.js +61 -0
  330. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-debt.spec.js +226 -0
  331. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.js +9 -0
  332. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.js +22 -0
  333. package/dist/esm/common-utils/utils/strategies/leverage/index.js +10 -0
  334. package/dist/esm/common-utils/utils/strategies/leverage/max-leverage-threshold.js +18 -0
  335. package/dist/esm/common-utils/utils/strategies/leverage/max-leverage.js +11 -0
  336. package/dist/esm/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.js +15 -0
  337. package/dist/esm/common-utils/utils/strategies/lists/get-available-strategies.js +23 -0
  338. package/dist/esm/common-utils/utils/strategies/lists/get-disabled-strategies.js +24 -0
  339. package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +36 -0
  340. package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list.js +14 -0
  341. package/dist/esm/common-utils/utils/strategies/lists/index.js +3 -0
  342. package/dist/esm/common-utils/utils/strategies/points/get-complex-points-list.js +14 -0
  343. package/dist/esm/common-utils/utils/strategies/points/get-points-info.js +19 -0
  344. package/dist/esm/common-utils/utils/strategies/points/get-points-rates.js +9 -0
  345. package/dist/esm/common-utils/utils/strategies/points/get-strategy-points.js +57 -0
  346. package/dist/esm/common-utils/utils/strategies/points/index.js +4 -0
  347. package/dist/esm/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.js +1 -0
  348. package/dist/esm/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.js +43 -0
  349. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-apy.js +88 -0
  350. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.js +187 -0
  351. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-points.js +54 -0
  352. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.js +139 -0
  353. package/dist/esm/common-utils/utils/strategies/strategy-info/cm-availability-condition.js +40 -0
  354. package/dist/esm/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +389 -0
  355. package/dist/esm/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.js +278 -0
  356. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +106 -0
  357. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info.js +50 -0
  358. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.js +79 -0
  359. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.js +84 -0
  360. package/dist/esm/common-utils/utils/strategies/strategy-info/index.js +10 -0
  361. package/dist/esm/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.js +9 -0
  362. package/dist/esm/common-utils/utils/strategies/strategy-state/index.js +1 -0
  363. package/dist/esm/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +14 -0
  364. package/dist/esm/common-utils/utils/strategies/tokens/add-amount-in-target.js +17 -0
  365. package/dist/esm/common-utils/utils/strategies/tokens/add-amount-in-target.spec.js +41 -0
  366. package/dist/esm/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.js +11 -0
  367. package/dist/esm/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.js +18 -0
  368. package/dist/esm/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.js +36 -0
  369. package/dist/esm/common-utils/utils/strategies/tokens/get-native-token-address.js +7 -0
  370. package/dist/esm/common-utils/utils/strategies/tokens/index.js +12 -0
  371. package/dist/esm/common-utils/utils/strategies/tokens/is-activated-token.js +12 -0
  372. package/dist/esm/common-utils/utils/strategies/tokens/is-apy-with-points-exception.js +11 -0
  373. package/dist/esm/common-utils/utils/strategies/tokens/is-collateral-token.js +35 -0
  374. package/dist/esm/common-utils/utils/strategies/tokens/is-collateral-token.spec.js +137 -0
  375. package/dist/esm/common-utils/utils/strategies/tokens/is-forbidden-token.js +9 -0
  376. package/dist/esm/common-utils/utils/strategies/tokens/is-obtainable-token.js +18 -0
  377. package/dist/esm/common-utils/utils/strategies/tokens/is-obtainable-token.spec.js +161 -0
  378. package/dist/esm/common-utils/utils/strategies/tokens/is-usable-token.js +8 -0
  379. package/dist/esm/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.js +27 -0
  380. package/dist/esm/common-utils/utils/strategies/tokens/wrap-token-address.js +9 -0
  381. package/dist/esm/common-utils/utils/strategies/tokens/wrap-token-address.spec.js +12 -0
  382. package/dist/esm/common-utils/utils/strategies/types/chains.js +0 -0
  383. package/dist/esm/common-utils/utils/strategies/types/credit-manager-data-legacy.js +0 -0
  384. package/dist/esm/common-utils/utils/strategies/types/curator-filter.js +0 -0
  385. package/dist/esm/common-utils/utils/strategies/types/index.js +12 -0
  386. package/dist/esm/common-utils/utils/strategies/types/legacy-strategy-data-source.js +38 -0
  387. package/dist/esm/common-utils/utils/strategies/types/points-slices.js +0 -0
  388. package/dist/esm/common-utils/utils/strategies/types/sdk-state.js +0 -0
  389. package/dist/esm/common-utils/utils/strategies/types/strategies-cm-list.js +0 -0
  390. package/dist/esm/common-utils/utils/strategies/types/strategy-data-source.js +0 -0
  391. package/dist/esm/common-utils/utils/strategies/types/strategy-data.js +0 -0
  392. package/dist/esm/common-utils/utils/strategies/types/strategy-earnings.js +0 -0
  393. package/dist/esm/common-utils/utils/strategies/types/strategy.js +0 -0
  394. package/dist/esm/common-utils/utils/strategies/types/targetable.js +0 -0
  395. package/dist/esm/common-utils/utils/strategies/types.js +1 -0
  396. package/dist/esm/common-utils/utils/validation/index.js +11 -0
  397. package/dist/esm/common-utils/utils/validation/is-zero-balance.js +6 -0
  398. package/dist/esm/common-utils/utils/validation/validate-balance.js +23 -0
  399. package/dist/esm/common-utils/utils/validation/validate-balance.spec.js +51 -0
  400. package/dist/esm/common-utils/utils/validation/validate-balances.js +20 -0
  401. package/dist/esm/common-utils/utils/validation/validate-balances.spec.js +36 -0
  402. package/dist/esm/common-utils/utils/validation/validate-credit-manager.js +10 -0
  403. package/dist/esm/common-utils/utils/validation/validate-credit-manager.spec.js +35 -0
  404. package/dist/esm/common-utils/utils/validation/validate-hf.js +13 -0
  405. package/dist/esm/common-utils/utils/validation/validate-hf.spec.js +23 -0
  406. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-quota-status.js +13 -0
  407. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.js +46 -0
  408. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-status.js +54 -0
  409. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-status.spec.js +102 -0
  410. package/dist/esm/common-utils/utils/validation/validate-open-account.js +17 -0
  411. package/dist/esm/common-utils/utils/validation/validate-open-account.spec.js +56 -0
  412. package/dist/esm/common-utils/utils/validation/validate-quota.js +25 -0
  413. package/dist/esm/common-utils/utils/validation/validate-quota.spec.js +83 -0
  414. package/dist/esm/common-utils/utils/validation/validate-token-to-obtain.js +18 -0
  415. package/dist/esm/common-utils/utils/validation/validate-token-to-obtain.spec.js +34 -0
  416. package/dist/esm/common-utils/utils/validation/validation-types.js +0 -0
  417. package/dist/esm/dev/AccountOpener.js +6 -7
  418. package/dist/esm/dev/abi.js +205 -0
  419. package/dist/esm/dev/claimDSToken.js +187 -0
  420. package/dist/esm/dev/claimFromFaucet.js +18 -16
  421. package/dist/esm/dev/createAnvilClient.js +35 -6
  422. package/dist/esm/dev/index.js +2 -0
  423. package/dist/esm/dev/isOutOfSyncError.js +3 -1
  424. package/dist/esm/dev/isTransientError.js +3 -1
  425. package/dist/esm/history/assembleOperations.js +18 -4
  426. package/dist/esm/history/classifyMulticallOperations.js +25 -5
  427. package/dist/esm/history/errors.js +10 -1
  428. package/dist/esm/history/extractTransfers.js +23 -3
  429. package/dist/esm/history/parseCreditAccountTransaction.js +3 -1
  430. package/dist/esm/history/toLegacyOperation.js +1 -1
  431. package/dist/esm/permissionless/bindings/bytecode-repository.js +9 -10
  432. package/dist/esm/permissionless/bindings/factory/rate-keeper-factory.js +11 -0
  433. package/dist/esm/permissionless/bindings/governance/governor.js +10 -0
  434. package/dist/esm/permissionless/bindings/instance-manager.js +5 -0
  435. package/dist/esm/permissionless/bindings/market-configurator.js +40 -1
  436. package/dist/esm/permissionless/bindings/pricefeeds/curve-twap.js +2 -2
  437. package/dist/esm/permissionless/deployment/addresses.js +1 -0
  438. package/dist/esm/permissionless/utils/create2.js +1 -1
  439. package/dist/esm/permissionless/utils/price-update/get-updatable-feeds.js +2 -10
  440. package/dist/esm/plugins/adapters/abi/actionAbi.js +17 -7
  441. package/dist/esm/plugins/adapters/abi/conctructorAbi.js +17 -2
  442. package/dist/esm/plugins/adapters/abi/index.js +1 -0
  443. package/dist/esm/plugins/adapters/abi/securitize/iBaseOnRamp.js +327 -0
  444. package/dist/esm/plugins/adapters/abi/securitize/iMidasGatewayAdapter.js +330 -0
  445. package/dist/esm/plugins/adapters/abi/securitize/iSecuritizeOnRamp.js +49 -0
  446. package/dist/esm/plugins/adapters/abi/securitize/iSecuritizeOnRampAdapter.js +74 -0
  447. package/dist/esm/plugins/adapters/abi/securitize/iSecuritizeRedemptionGateway.js +125 -0
  448. package/dist/esm/plugins/adapters/abi/securitize/iSecuritizeRedemptionGatewayAdapter.js +155 -0
  449. package/dist/esm/plugins/adapters/abi/securitize/index.js +6 -0
  450. package/dist/esm/plugins/adapters/contracts/MidasGatewayAdapterContract.js +71 -0
  451. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +47 -21
  452. package/dist/esm/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +49 -0
  453. package/dist/esm/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +57 -0
  454. package/dist/esm/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +46 -0
  455. package/dist/esm/plugins/adapters/contracts/index.js +4 -0
  456. package/dist/esm/plugins/adapters/createAdapter.js +12 -0
  457. package/dist/esm/plugins/adapters/types.js +4 -0
  458. package/dist/esm/plugins/apy/ApyPlugin.js +74 -4
  459. package/dist/esm/plugins/apy/index.js +0 -1
  460. package/dist/esm/plugins/apy/strategy-data-source.js +178 -0
  461. package/dist/esm/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +3 -2
  462. package/dist/esm/plugins/remote-configs/CustomConfigSource.js +17 -0
  463. package/dist/esm/plugins/remote-configs/RemoteConfigSource.js +32 -0
  464. package/dist/esm/plugins/remote-configs/RemoteConfigsPlugin.js +165 -0
  465. package/dist/esm/plugins/remote-configs/index.js +4 -0
  466. package/dist/esm/plugins/remote-configs/package.json +1 -0
  467. package/dist/esm/plugins/remote-configs/types.js +0 -0
  468. package/dist/esm/rewards/rewards/api.js +4 -2
  469. package/dist/esm/rewards/rewards/merkl-api.js +9 -3
  470. package/dist/esm/sdk/MultichainSDK.js +0 -23
  471. package/dist/esm/sdk/OnchainSDK.js +19 -25
  472. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +189 -81
  473. package/dist/esm/sdk/base/TokensMeta.js +6 -6
  474. package/dist/esm/sdk/base/token-types.js +7 -7
  475. package/dist/esm/sdk/chain/chains.js +18 -18
  476. package/dist/esm/sdk/constants/address-provider.js +2 -2
  477. package/dist/esm/sdk/constants/math.js +2 -0
  478. package/dist/esm/sdk/market/MarketSuite.js +65 -5
  479. package/dist/esm/sdk/market/ZapperRegister.js +5 -3
  480. package/dist/esm/sdk/market/credit/CreditSuite.js +81 -9
  481. package/dist/esm/sdk/market/index.js +2 -1
  482. package/dist/esm/sdk/market/pool/PoolSuite.js +66 -2
  483. package/dist/esm/sdk/market/pool/PoolV310Contract.js +23 -3
  484. package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +2 -5
  485. package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +4 -28
  486. package/dist/esm/sdk/market/pricefeeds/index.js +0 -2
  487. package/dist/esm/sdk/market/pricefeeds/updates/index.js +0 -4
  488. package/dist/esm/sdk/market/{kyc/KYCRegistry.js → rwa/RWARegistry.js} +50 -50
  489. package/dist/esm/sdk/market/{kyc → rwa}/index.js +1 -1
  490. package/dist/esm/sdk/market/rwa/securitize/SecuritizeDegenNFT.js +17 -0
  491. package/dist/esm/sdk/market/{kyc/securitize/SecuritizeKYCFactory.js → rwa/securitize/SecuritizeRWAFactory.js} +41 -21
  492. package/dist/esm/sdk/market/rwa/securitize/constants.js +4 -0
  493. package/dist/esm/sdk/market/{kyc → rwa}/securitize/index.js +1 -1
  494. package/dist/esm/sdk/market/rwa/securitize/types.js +12 -0
  495. package/dist/esm/sdk/market/rwa/types.js +9 -0
  496. package/dist/esm/sdk/market/zapper/IERC20ZapperContract.js +74 -0
  497. package/dist/esm/sdk/market/zapper/IETHZapperContract.js +65 -0
  498. package/dist/esm/sdk/market/zapper/Zapper.js +23 -0
  499. package/dist/esm/sdk/market/zapper/createZapper.js +21 -0
  500. package/dist/esm/sdk/market/zapper/index.js +4 -0
  501. package/dist/esm/sdk/options.js +6 -11
  502. package/dist/esm/sdk/pools/PoolService.js +90 -88
  503. package/dist/esm/sdk/utils/viem/simulateWithPriceUpdates.js +1 -1
  504. package/dist/types/abi/IWithdrawalCompressorV311.d.ts +327 -0
  505. package/dist/types/abi/compressors/liquidationCompressor.d.ts +297 -0
  506. package/dist/types/abi/compressors/rwaCompressor.d.ts +236 -0
  507. package/dist/types/abi/compressors/subcompressors/liquidation/midasLiquidationSubcompressor.d.ts +146 -0
  508. package/dist/types/abi/compressors/subcompressors/liquidation/securitizeLiquidationSubcompressor.d.ts +146 -0
  509. package/dist/types/abi/compressors/subcompressors/rwa/onDemandRWAUnderlyingSubcompressor.d.ts +49 -0
  510. package/dist/types/abi/compressors/subcompressors/rwa/securitizeRWAFactorySubcompressor.d.ts +85 -0
  511. package/dist/types/abi/compressors/subcompressors/{infinifiWithdrawalSubcompressor.d.ts → withdrawal/infinifiWithdrawalSubcompressor.d.ts} +4 -0
  512. package/dist/types/abi/compressors/subcompressors/{kelpLRTWithdrawalSubcompressor.d.ts → withdrawal/kelpLRTWithdrawalSubcompressor.d.ts} +4 -0
  513. package/dist/types/abi/compressors/subcompressors/{mellowWithdrawalSubcompressor.d.ts → withdrawal/mellowWithdrawalSubcompressor.d.ts} +202 -0
  514. package/dist/types/abi/compressors/subcompressors/{midasWithdrawalSubcompressor.d.ts → withdrawal/midasWithdrawalSubcompressor.d.ts} +218 -0
  515. package/dist/types/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.d.ts +438 -0
  516. package/dist/types/abi/compressors/subcompressors/{upshiftWithdrawalSubcompressor.d.ts → withdrawal/upshiftWithdrawalSubcompressor.d.ts} +4 -0
  517. package/dist/types/abi/compressors/withdrawalCompressor.d.ts +383 -0
  518. package/dist/types/abi/errors.d.ts +186 -0
  519. package/dist/types/abi/helpers/redemptionLogger.d.ts +167 -0
  520. package/dist/types/abi/iDefaultAccountFactoryV3.d.ts +177 -0
  521. package/dist/types/abi/iDegenNFTV2.d.ts +369 -0
  522. package/dist/types/abi/iERC20Zapper.d.ts +313 -0
  523. package/dist/types/abi/iETHZapper.d.ts +153 -0
  524. package/dist/types/abi/router/midasWorker.d.ts +4 -4
  525. package/dist/types/abi/router/securitizeOnrampWorker.d.ts +726 -0
  526. package/dist/types/abi/rwa/iDSRegistryService.d.ts +401 -0
  527. package/dist/types/abi/rwa/iDSToken.d.ts +1500 -0
  528. package/dist/types/abi/{kyc/iKYCCompressor.d.ts → rwa/iRWACompressor.d.ts} +8 -8
  529. package/dist/types/abi/{kyc/iKYCFactory.d.ts → rwa/iRWAFactory.d.ts} +1 -1
  530. package/dist/types/abi/{kyc/iKYCUnderlying.d.ts → rwa/iRWAUnderlying.d.ts} +2 -2
  531. package/dist/types/abi/{kyc/iSecuritizeKYCFactory.d.ts → rwa/iSecuritizeRWAFactory.d.ts} +79 -7
  532. package/dist/types/{plugins/apy/apy-cache.d.ts → common-utils/axios-cache/AxiosCache.d.ts} +6 -7
  533. package/dist/types/common-utils/axios-cache/index.d.ts +1 -0
  534. package/dist/types/common-utils/charts/token-data.d.ts +25 -1
  535. package/dist/types/common-utils/index.d.ts +1 -0
  536. package/dist/types/common-utils/static/strategy.d.ts +6 -1
  537. package/dist/types/common-utils/test-utils/index.d.ts +16 -0
  538. package/dist/types/common-utils/utils/apy/bonus-apy-from-points.d.ts +4 -0
  539. package/dist/types/common-utils/utils/apy/calculate-borrow-rate-from-utilization.d.ts +2 -0
  540. package/dist/types/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.d.ts +1 -0
  541. package/dist/types/common-utils/utils/apy/calculate-earnings.d.ts +16 -0
  542. package/dist/types/common-utils/utils/apy/calculate-earnings.spec.d.ts +1 -0
  543. package/dist/types/common-utils/utils/apy/calculate-effective-borrow-rate.d.ts +6 -0
  544. package/dist/types/common-utils/utils/apy/calculate-safe-borrow-rate.d.ts +11 -0
  545. package/dist/types/common-utils/utils/apy/calculate-safe-borrow-rate.spec.d.ts +1 -0
  546. package/dist/types/common-utils/utils/apy/get-complex-apy-list.d.ts +5 -0
  547. package/dist/types/common-utils/utils/apy/get-rate-with-fee.d.ts +7 -0
  548. package/dist/types/common-utils/utils/apy/get-safe-base-borrow-rate.d.ts +4 -0
  549. package/dist/types/common-utils/utils/apy/get-single-quota-borrow-rate.d.ts +9 -0
  550. package/dist/types/common-utils/utils/apy/index.d.ts +10 -0
  551. package/dist/types/common-utils/utils/apy/max-apy-formula.d.ts +6 -0
  552. package/dist/types/common-utils/utils/constants.d.ts +4 -0
  553. package/dist/types/common-utils/utils/creditAccount/calc-health-factor.d.ts +1 -1
  554. package/dist/types/common-utils/utils/creditAccount/calc-overall-apy.d.ts +1 -1
  555. package/dist/types/common-utils/utils/creditAccount/calc-quota-borrow-rate.d.ts +1 -1
  556. package/dist/types/common-utils/utils/creditAccount/quota-utils.d.ts +3 -2
  557. package/dist/types/common-utils/utils/index.d.ts +4 -0
  558. package/dist/types/common-utils/utils/strategies/assets/assets.d.ts +3 -0
  559. package/dist/types/common-utils/utils/strategies/assets/index.d.ts +1 -0
  560. package/dist/types/common-utils/utils/strategies/availability/check-boolean.d.ts +1 -0
  561. package/dist/types/common-utils/utils/strategies/availability/check-degen-nft.d.ts +5 -0
  562. package/dist/types/common-utils/utils/strategies/availability/index.d.ts +2 -0
  563. package/dist/types/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.d.ts +19 -0
  564. package/dist/types/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.d.ts +1 -0
  565. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.d.ts +7 -0
  566. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.d.ts +2 -0
  567. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.d.ts +8 -0
  568. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +13 -0
  569. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.d.ts +1 -0
  570. package/dist/types/common-utils/utils/strategies/credit-managers/index.d.ts +6 -0
  571. package/dist/types/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.d.ts +2 -0
  572. package/dist/types/common-utils/utils/strategies/eligibility/index.d.ts +2 -0
  573. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-eligible.d.ts +8 -0
  574. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-released.d.ts +1 -0
  575. package/dist/types/common-utils/utils/strategies/index.d.ts +12 -0
  576. package/dist/types/common-utils/utils/strategies/leverage/calculate-loss-coefficient.d.ts +1 -0
  577. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.d.ts +12 -0
  578. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.d.ts +11 -0
  579. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.d.ts +1 -0
  580. package/dist/types/common-utils/utils/strategies/leverage/get-collateral-by-debt.d.ts +2 -0
  581. package/dist/types/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.d.ts +1 -0
  582. package/dist/types/common-utils/utils/strategies/leverage/get-factor-from-leverage.d.ts +4 -0
  583. package/dist/types/common-utils/utils/strategies/leverage/get-leverage-from-factor.d.ts +2 -0
  584. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-debt.d.ts +21 -0
  585. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-debt.spec.d.ts +1 -0
  586. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.d.ts +4 -0
  587. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.d.ts +1 -0
  588. package/dist/types/common-utils/utils/strategies/leverage/index.d.ts +10 -0
  589. package/dist/types/common-utils/utils/strategies/leverage/max-leverage-threshold.d.ts +5 -0
  590. package/dist/types/common-utils/utils/strategies/leverage/max-leverage.d.ts +9 -0
  591. package/dist/types/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.d.ts +7 -0
  592. package/dist/types/common-utils/utils/strategies/lists/get-available-strategies.d.ts +5 -0
  593. package/dist/types/common-utils/utils/strategies/lists/get-disabled-strategies.d.ts +5 -0
  594. package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list-core.d.ts +9 -0
  595. package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list.d.ts +2 -0
  596. package/dist/types/common-utils/utils/strategies/lists/index.d.ts +3 -0
  597. package/dist/types/common-utils/utils/strategies/points/get-complex-points-list.d.ts +3 -0
  598. package/dist/types/common-utils/utils/strategies/points/get-points-info.d.ts +8 -0
  599. package/dist/types/common-utils/utils/strategies/points/get-points-rates.d.ts +2 -0
  600. package/dist/types/common-utils/utils/strategies/points/get-strategy-points.d.ts +21 -0
  601. package/dist/types/common-utils/utils/strategies/points/index.d.ts +4 -0
  602. package/dist/types/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.d.ts +1 -0
  603. package/dist/types/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.d.ts +28 -0
  604. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +27 -0
  605. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.d.ts +1 -0
  606. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +22 -0
  607. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.d.ts +1 -0
  608. package/dist/types/common-utils/utils/strategies/strategy-info/cm-availability-condition.d.ts +3 -0
  609. package/dist/types/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.d.ts +19 -0
  610. package/dist/types/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.d.ts +1 -0
  611. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-info-core.d.ts +16 -0
  612. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-info.d.ts +2 -0
  613. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.d.ts +15 -0
  614. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.d.ts +29 -0
  615. package/dist/types/common-utils/utils/strategies/strategy-info/index.d.ts +10 -0
  616. package/dist/types/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.d.ts +2 -0
  617. package/dist/types/common-utils/utils/strategies/strategy-info/types.d.ts +109 -0
  618. package/dist/types/common-utils/utils/strategies/strategy-state/index.d.ts +1 -0
  619. package/dist/types/common-utils/utils/strategies/strategy-state/is-strategy-disabled.d.ts +3 -0
  620. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +6 -0
  621. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.spec.d.ts +1 -0
  622. package/dist/types/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.d.ts +6 -0
  623. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +12 -0
  624. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.d.ts +1 -0
  625. package/dist/types/common-utils/utils/strategies/tokens/get-native-token-address.d.ts +1 -0
  626. package/dist/types/common-utils/utils/strategies/tokens/index.d.ts +12 -0
  627. package/dist/types/common-utils/utils/strategies/tokens/is-activated-token.d.ts +6 -0
  628. package/dist/types/common-utils/utils/strategies/tokens/is-apy-with-points-exception.d.ts +3 -0
  629. package/dist/types/common-utils/utils/strategies/tokens/is-collateral-token.d.ts +15 -0
  630. package/dist/types/common-utils/utils/strategies/tokens/is-collateral-token.spec.d.ts +1 -0
  631. package/dist/types/common-utils/utils/strategies/tokens/is-forbidden-token.d.ts +6 -0
  632. package/dist/types/common-utils/utils/strategies/tokens/is-obtainable-token.d.ts +8 -0
  633. package/dist/types/common-utils/utils/strategies/tokens/is-obtainable-token.spec.d.ts +1 -0
  634. package/dist/types/common-utils/utils/strategies/tokens/is-usable-token.d.ts +2 -0
  635. package/dist/types/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.d.ts +17 -0
  636. package/dist/types/common-utils/utils/strategies/tokens/wrap-token-address.d.ts +2 -0
  637. package/dist/types/common-utils/utils/strategies/tokens/wrap-token-address.spec.d.ts +1 -0
  638. package/dist/types/common-utils/utils/strategies/types/chains.d.ts +2 -0
  639. package/dist/types/common-utils/utils/strategies/types/credit-manager-data-legacy.d.ts +31 -0
  640. package/dist/types/common-utils/utils/strategies/types/curator-filter.d.ts +2 -0
  641. package/dist/types/common-utils/utils/strategies/types/index.d.ts +12 -0
  642. package/dist/types/common-utils/utils/strategies/types/legacy-strategy-data-source.d.ts +4 -0
  643. package/dist/types/common-utils/utils/strategies/types/points-slices.d.ts +20 -0
  644. package/dist/types/common-utils/utils/strategies/types/sdk-state.d.ts +14 -0
  645. package/dist/types/common-utils/utils/strategies/types/strategies-cm-list.d.ts +5 -0
  646. package/dist/types/common-utils/utils/strategies/types/strategy-data-source.d.ts +19 -0
  647. package/dist/types/common-utils/utils/strategies/types/strategy-data.d.ts +16 -0
  648. package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +43 -0
  649. package/dist/types/common-utils/utils/strategies/types/strategy.d.ts +16 -0
  650. package/dist/types/common-utils/utils/strategies/types/targetable.d.ts +6 -0
  651. package/dist/types/common-utils/utils/strategies/types.d.ts +1 -0
  652. package/dist/types/common-utils/utils/validation/index.d.ts +11 -0
  653. package/dist/types/common-utils/utils/validation/is-zero-balance.d.ts +1 -0
  654. package/dist/types/common-utils/utils/validation/validate-balance.d.ts +22 -0
  655. package/dist/types/common-utils/utils/validation/validate-balance.spec.d.ts +1 -0
  656. package/dist/types/common-utils/utils/validation/validate-balances.d.ts +9 -0
  657. package/dist/types/common-utils/utils/validation/validate-balances.spec.d.ts +1 -0
  658. package/dist/types/common-utils/utils/validation/validate-credit-manager.d.ts +10 -0
  659. package/dist/types/common-utils/utils/validation/validate-credit-manager.spec.d.ts +1 -0
  660. package/dist/types/common-utils/utils/validation/validate-hf.d.ts +9 -0
  661. package/dist/types/common-utils/utils/validation/validate-hf.spec.d.ts +1 -0
  662. package/dist/types/common-utils/utils/validation/validate-open-account-pool-quota-status.d.ts +7 -0
  663. package/dist/types/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.d.ts +1 -0
  664. package/dist/types/common-utils/utils/validation/validate-open-account-pool-status.d.ts +23 -0
  665. package/dist/types/common-utils/utils/validation/validate-open-account-pool-status.spec.d.ts +1 -0
  666. package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +21 -0
  667. package/dist/types/common-utils/utils/validation/validate-open-account.spec.d.ts +1 -0
  668. package/dist/types/common-utils/utils/validation/validate-quota.d.ts +20 -0
  669. package/dist/types/common-utils/utils/validation/validate-quota.spec.d.ts +1 -0
  670. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.d.ts +13 -0
  671. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.spec.d.ts +1 -0
  672. package/dist/types/common-utils/utils/validation/validation-types.d.ts +14 -0
  673. package/dist/types/dev/RevolverTransport.d.ts +4 -4
  674. package/dist/types/dev/abi.d.ts +179 -0
  675. package/dist/types/dev/claimDSToken.d.ts +34 -0
  676. package/dist/types/dev/claimFromFaucet.d.ts +2 -1
  677. package/dist/types/dev/createAnvilClient.d.ts +28 -1
  678. package/dist/types/dev/index.d.ts +2 -0
  679. package/dist/types/history/assembleOperations.d.ts +2 -0
  680. package/dist/types/history/classifyMulticallOperations.d.ts +2 -0
  681. package/dist/types/history/errors.d.ts +3 -0
  682. package/dist/types/history/extractTransfers.d.ts +21 -1
  683. package/dist/types/history/types.d.ts +8 -2
  684. package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +383 -0
  685. package/dist/types/{abi/kyc/iDSRegistryService.d.ts → permissionless/bindings/factory/rate-keeper-factory.d.ts} +96 -108
  686. package/dist/types/permissionless/bindings/governance/governor.d.ts +2 -0
  687. package/dist/types/permissionless/bindings/market-configurator.d.ts +9 -1
  688. package/dist/types/permissionless/bindings/types.d.ts +1 -0
  689. package/dist/types/permissionless/deployment/addresses.d.ts +2 -1
  690. package/dist/types/plugins/adapters/abi/actionAbi.d.ts +1 -1
  691. package/dist/types/plugins/adapters/abi/index.d.ts +1 -0
  692. package/dist/types/plugins/adapters/abi/securitize/iBaseOnRamp.d.ts +255 -0
  693. package/dist/types/plugins/adapters/abi/securitize/iMidasGatewayAdapter.d.ts +555 -0
  694. package/dist/types/{abi/kyc/iDSToken.d.ts → plugins/adapters/abi/securitize/iSecuritizeOnRamp.d.ts} +31 -31
  695. package/dist/types/plugins/adapters/abi/securitize/iSecuritizeOnRampAdapter.d.ts +107 -0
  696. package/dist/types/plugins/adapters/abi/securitize/iSecuritizeRedemptionGateway.d.ts +183 -0
  697. package/dist/types/plugins/adapters/abi/securitize/iSecuritizeRedemptionGatewayAdapter.d.ts +251 -0
  698. package/dist/types/plugins/adapters/abi/securitize/index.d.ts +6 -0
  699. package/dist/types/plugins/adapters/contracts/MidasGatewayAdapterContract.d.ts +1138 -0
  700. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +8 -5
  701. package/dist/types/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +450 -0
  702. package/dist/types/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +458 -0
  703. package/dist/types/plugins/adapters/contracts/SecuritizeSwapAdapterContract.d.ts +24 -0
  704. package/dist/types/plugins/adapters/contracts/index.d.ts +4 -0
  705. package/dist/types/plugins/adapters/types.d.ts +5 -1
  706. package/dist/types/plugins/apy/ApyPlugin.d.ts +8 -1
  707. package/dist/types/plugins/apy/index.d.ts +0 -1
  708. package/dist/types/plugins/apy/strategy-data-source.d.ts +16 -0
  709. package/dist/types/plugins/apy/types.d.ts +18 -1
  710. package/dist/types/plugins/delayed-withdrawal/types.d.ts +10 -2
  711. package/dist/types/plugins/remote-configs/CustomConfigSource.d.ts +13 -0
  712. package/dist/types/plugins/remote-configs/RemoteConfigSource.d.ts +31 -0
  713. package/dist/types/plugins/remote-configs/RemoteConfigsPlugin.d.ts +24 -0
  714. package/dist/types/plugins/remote-configs/index.d.ts +4 -0
  715. package/dist/types/plugins/remote-configs/types.d.ts +24 -0
  716. package/dist/types/rewards/rewards/api.d.ts +2 -1
  717. package/dist/types/rewards/rewards/merkl-api.d.ts +2 -1
  718. package/dist/types/sdk/MultichainSDK.d.ts +1 -9
  719. package/dist/types/sdk/OnchainSDK.d.ts +6 -14
  720. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +26 -23
  721. package/dist/types/sdk/accounts/types.d.ts +61 -47
  722. package/dist/types/sdk/base/TokensMeta.d.ts +5 -5
  723. package/dist/types/sdk/base/token-types.d.ts +17 -17
  724. package/dist/types/sdk/base/types.d.ts +11 -2
  725. package/dist/types/sdk/chain/chains.d.ts +3 -3
  726. package/dist/types/sdk/constants/address-provider.d.ts +1 -1
  727. package/dist/types/sdk/constants/math.d.ts +1 -0
  728. package/dist/types/sdk/market/MarketSuite.d.ts +72 -3
  729. package/dist/types/sdk/market/ZapperRegister.d.ts +4 -4
  730. package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +2 -1
  731. package/dist/types/sdk/market/credit/CreditSuite.d.ts +86 -6
  732. package/dist/types/sdk/market/credit/createCreditFacade.d.ts +2 -2
  733. package/dist/types/sdk/market/credit/types.d.ts +134 -6
  734. package/dist/types/sdk/market/index.d.ts +2 -1
  735. package/dist/types/sdk/market/pool/PoolSuite.d.ts +79 -4
  736. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +16 -5
  737. package/dist/types/sdk/market/pool/createPool.d.ts +2 -2
  738. package/dist/types/sdk/market/pool/types.d.ts +117 -4
  739. package/dist/types/sdk/market/pricefeeds/PriceFeedsRegister.d.ts +2 -6
  740. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +2 -25
  741. package/dist/types/sdk/market/pricefeeds/index.d.ts +1 -1
  742. package/dist/types/sdk/market/pricefeeds/updates/index.d.ts +0 -2
  743. package/dist/types/sdk/market/rwa/RWARegistry.d.ts +52 -0
  744. package/dist/types/sdk/market/{kyc → rwa}/index.d.ts +1 -1
  745. package/dist/types/sdk/market/rwa/securitize/SecuritizeDegenNFT.d.ts +412 -0
  746. package/dist/types/sdk/market/{kyc/securitize/SecuritizeKYCFactory.d.ts → rwa/securitize/SecuritizeRWAFactory.d.ts} +95 -22
  747. package/dist/types/sdk/market/rwa/securitize/constants.d.ts +1 -0
  748. package/dist/types/sdk/market/{kyc → rwa}/securitize/index.d.ts +1 -1
  749. package/dist/types/sdk/market/{kyc → rwa}/securitize/types.d.ts +48 -33
  750. package/dist/types/sdk/market/{kyc → rwa}/types.d.ts +48 -48
  751. package/dist/types/sdk/market/types.d.ts +1 -1
  752. package/dist/types/sdk/market/zapper/IERC20ZapperContract.d.ts +350 -0
  753. package/dist/types/sdk/market/zapper/IETHZapperContract.d.ts +186 -0
  754. package/dist/types/sdk/market/zapper/Zapper.d.ts +13 -0
  755. package/dist/types/sdk/market/zapper/createZapper.d.ts +6 -0
  756. package/dist/types/sdk/market/zapper/index.d.ts +4 -0
  757. package/dist/types/sdk/options.d.ts +1 -7
  758. package/dist/types/sdk/pools/PoolService.d.ts +3 -3
  759. package/dist/types/sdk/pools/types.d.ts +33 -9
  760. package/dist/types/sdk/types/state-human.d.ts +2 -2
  761. package/dist/types/sdk/types/state.d.ts +3 -3
  762. package/package.json +24 -16
  763. package/dist/cjs/abi/kyc/iDSRegistryService.js +0 -149
  764. package/dist/cjs/sdk/market/pricefeeds/updates/PythAccumulatorUpdateData.js +0 -192
  765. package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +0 -186
  766. package/dist/cjs/sdk/market/pricefeeds/updates/fetchPythPayloads.js +0 -135
  767. package/dist/esm/abi/kyc/iDSRegistryService.js +0 -125
  768. package/dist/esm/abi/kyc/iDSToken.js +0 -47
  769. package/dist/esm/sdk/market/kyc/securitize/constants.js +0 -4
  770. package/dist/esm/sdk/market/kyc/types.js +0 -9
  771. package/dist/esm/sdk/market/pricefeeds/updates/PythAccumulatorUpdateData.js +0 -164
  772. package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +0 -161
  773. package/dist/esm/sdk/market/pricefeeds/updates/fetchPythPayloads.js +0 -115
  774. package/dist/types/sdk/market/kyc/KYCRegistry.d.ts +0 -52
  775. package/dist/types/sdk/market/kyc/securitize/constants.d.ts +0 -1
  776. package/dist/types/sdk/market/pricefeeds/updates/PythAccumulatorUpdateData.d.ts +0 -40
  777. package/dist/types/sdk/market/pricefeeds/updates/PythUpdater.d.ts +0 -31
  778. package/dist/types/sdk/market/pricefeeds/updates/fetchPythPayloads.d.ts +0 -45
  779. /package/dist/cjs/abi/compressors/subcompressors/{mellowFlexibleDepositSubcompressor.js → withdrawal/mellowFlexibleDepositSubcompressor.js} +0 -0
  780. /package/dist/cjs/abi/compressors/subcompressors/{mellowFlexibleRedeemSubcompressor.js → withdrawal/mellowFlexibleRedeemSubcompressor.js} +0 -0
  781. /package/dist/cjs/abi/{kyc → rwa}/iSecuritizeDegenNFT.js +0 -0
  782. /package/dist/cjs/{sdk/market/kyc/securitize → common-utils/utils/strategies/strategy-info}/types.js +0 -0
  783. /package/dist/esm/abi/compressors/subcompressors/{mellowFlexibleDepositSubcompressor.js → withdrawal/mellowFlexibleDepositSubcompressor.js} +0 -0
  784. /package/dist/esm/abi/compressors/subcompressors/{mellowFlexibleRedeemSubcompressor.js → withdrawal/mellowFlexibleRedeemSubcompressor.js} +0 -0
  785. /package/dist/esm/abi/{kyc → rwa}/iSecuritizeDegenNFT.js +0 -0
  786. /package/dist/esm/{sdk/market/kyc/securitize → common-utils/utils/strategies/strategy-info}/types.js +0 -0
  787. /package/dist/types/abi/compressors/subcompressors/{mellowFlexibleDepositSubcompressor.d.ts → withdrawal/mellowFlexibleDepositSubcompressor.d.ts} +0 -0
  788. /package/dist/types/abi/compressors/subcompressors/{mellowFlexibleRedeemSubcompressor.d.ts → withdrawal/mellowFlexibleRedeemSubcompressor.d.ts} +0 -0
  789. /package/dist/types/abi/{kyc → rwa}/iSecuritizeDegenNFT.d.ts +0 -0
@@ -1,4 +1,4 @@
1
- const iKYCCompressorAbi = [
1
+ const iRWACompressorAbi = [
2
2
  {
3
3
  type: "function",
4
4
  name: "contractType",
@@ -8,7 +8,7 @@ const iKYCCompressorAbi = [
8
8
  },
9
9
  {
10
10
  type: "function",
11
- name: "getKYCInvestorData",
11
+ name: "getRWAInvestorData",
12
12
  inputs: [
13
13
  { name: "investor", type: "address", internalType: "address" },
14
14
  { name: "factories", type: "address[]", internalType: "address[]" }
@@ -17,12 +17,12 @@ const iKYCCompressorAbi = [
17
17
  {
18
18
  name: "",
19
19
  type: "tuple[]",
20
- internalType: "struct IKYCCompressor.KYCInvestorData[]",
20
+ internalType: "struct IRWACompressor.RWAInvestorData[]",
21
21
  components: [
22
22
  {
23
23
  name: "creditAccounts",
24
24
  type: "tuple[]",
25
- internalType: "struct IKYCCompressor.KYCCreditAccountData[]",
25
+ internalType: "struct IRWACompressor.RWACreditAccountData[]",
26
26
  components: [
27
27
  {
28
28
  name: "creditAccount",
@@ -42,7 +42,7 @@ const iKYCCompressorAbi = [
42
42
  },
43
43
  {
44
44
  type: "function",
45
- name: "getKYCMarketsData",
45
+ name: "getRWAMarketsData",
46
46
  inputs: [
47
47
  { name: "configurators", type: "address[]", internalType: "address[]" },
48
48
  { name: "factories", type: "address[]", internalType: "address[]" }
@@ -51,7 +51,7 @@ const iKYCCompressorAbi = [
51
51
  {
52
52
  name: "",
53
53
  type: "tuple[]",
54
- internalType: "struct IKYCCompressor.KYCUnderlyingData[]",
54
+ internalType: "struct IRWACompressor.RWAUnderlyingData[]",
55
55
  components: [
56
56
  {
57
57
  name: "baseParams",
@@ -80,7 +80,7 @@ const iKYCCompressorAbi = [
80
80
  {
81
81
  name: "",
82
82
  type: "tuple[]",
83
- internalType: "struct IKYCCompressor.KYCFactoryData[]",
83
+ internalType: "struct IRWACompressor.RWAFactoryData[]",
84
84
  components: [
85
85
  {
86
86
  name: "baseParams",
@@ -156,7 +156,7 @@ const iKYCCompressorAbi = [
156
156
  },
157
157
  {
158
158
  type: "error",
159
- name: "InvalidKYCFactoryException",
159
+ name: "InvalidRWAFactoryException",
160
160
  inputs: [{ name: "factory", type: "address", internalType: "address" }]
161
161
  },
162
162
  {
@@ -168,5 +168,5 @@ const iKYCCompressorAbi = [
168
168
  }
169
169
  ];
170
170
  export {
171
- iKYCCompressorAbi
171
+ iRWACompressorAbi
172
172
  };
@@ -1,4 +1,4 @@
1
- const iKYCFactoryAbi = [
1
+ const iRWAFactoryAbi = [
2
2
  {
3
3
  type: "function",
4
4
  name: "contractType",
@@ -94,5 +94,5 @@ const iKYCFactoryAbi = [
94
94
  }
95
95
  ];
96
96
  export {
97
- iKYCFactoryAbi
97
+ iRWAFactoryAbi
98
98
  };
@@ -1,4 +1,4 @@
1
- const iKYCUnderlyingAbi = [
1
+ const iRWAUnderlyingAbi = [
2
2
  {
3
3
  type: "function",
4
4
  name: "allowance",
@@ -368,10 +368,10 @@ const iKYCUnderlyingAbi = [
368
368
  },
369
369
  {
370
370
  type: "error",
371
- name: "InvalidKYCFactoryException",
371
+ name: "InvalidRWAFactoryException",
372
372
  inputs: [{ name: "factory", type: "address", internalType: "address" }]
373
373
  }
374
374
  ];
375
375
  export {
376
- iKYCUnderlyingAbi
376
+ iRWAUnderlyingAbi
377
377
  };
@@ -1,4 +1,4 @@
1
- const iSecuritizeKYCFactoryAbi = [
1
+ const iSecuritizeRWAFactoryAbi = [
2
2
  {
3
3
  type: "function",
4
4
  name: "contractType",
@@ -165,7 +165,28 @@ const iSecuritizeKYCFactoryAbi = [
165
165
  },
166
166
  {
167
167
  type: "function",
168
- name: "setFrozenStatus",
168
+ name: "setAllCreditAccountsFrozenStatus",
169
+ inputs: [
170
+ { name: "creditManager", type: "address", internalType: "address" },
171
+ { name: "investor", type: "address", internalType: "address" },
172
+ { name: "frozen", type: "bool", internalType: "bool" }
173
+ ],
174
+ outputs: [],
175
+ stateMutability: "nonpayable"
176
+ },
177
+ {
178
+ type: "function",
179
+ name: "setAllCreditAccountsFrozenStatus",
180
+ inputs: [
181
+ { name: "investor", type: "address", internalType: "address" },
182
+ { name: "frozen", type: "bool", internalType: "bool" }
183
+ ],
184
+ outputs: [],
185
+ stateMutability: "nonpayable"
186
+ },
187
+ {
188
+ type: "function",
189
+ name: "setCreditAccountFrozenStatus",
169
190
  inputs: [
170
191
  { name: "creditAccount", type: "address", internalType: "address" },
171
192
  { name: "frozen", type: "bool", internalType: "bool" }
@@ -175,10 +196,31 @@ const iSecuritizeKYCFactoryAbi = [
175
196
  },
176
197
  {
177
198
  type: "function",
178
- name: "setInvestor",
199
+ name: "transferAllCreditAccounts",
200
+ inputs: [
201
+ { name: "investor", type: "address", internalType: "address" },
202
+ { name: "newInvestor", type: "address", internalType: "address" }
203
+ ],
204
+ outputs: [],
205
+ stateMutability: "nonpayable"
206
+ },
207
+ {
208
+ type: "function",
209
+ name: "transferAllCreditAccounts",
210
+ inputs: [
211
+ { name: "creditManager", type: "address", internalType: "address" },
212
+ { name: "investor", type: "address", internalType: "address" },
213
+ { name: "newInvestor", type: "address", internalType: "address" }
214
+ ],
215
+ outputs: [],
216
+ stateMutability: "nonpayable"
217
+ },
218
+ {
219
+ type: "function",
220
+ name: "transferCreditAccount",
179
221
  inputs: [
180
222
  { name: "creditAccount", type: "address", internalType: "address" },
181
- { name: "investor", type: "address", internalType: "address" }
223
+ { name: "newInvestor", type: "address", internalType: "address" }
182
224
  ],
183
225
  outputs: [],
184
226
  stateMutability: "nonpayable"
@@ -192,7 +234,7 @@ const iSecuritizeKYCFactoryAbi = [
192
234
  },
193
235
  {
194
236
  type: "event",
195
- name: "CreateWallet",
237
+ name: "OpenRWACreditAccount",
196
238
  inputs: [
197
239
  {
198
240
  name: "creditAccount",
@@ -217,7 +259,7 @@ const iSecuritizeKYCFactoryAbi = [
217
259
  },
218
260
  {
219
261
  type: "event",
220
- name: "SetFrozenStatus",
262
+ name: "SetCreditAccountFrozenStatus",
221
263
  inputs: [
222
264
  {
223
265
  name: "creditAccount",
@@ -231,7 +273,7 @@ const iSecuritizeKYCFactoryAbi = [
231
273
  },
232
274
  {
233
275
  type: "event",
234
- name: "SetInvestor",
276
+ name: "TransferCreditAccount",
235
277
  inputs: [
236
278
  {
237
279
  name: "creditAccount",
@@ -281,6 +323,11 @@ const iSecuritizeKYCFactoryAbi = [
281
323
  name: "InvalidUnderlyingTokenException",
282
324
  inputs: [{ name: "underlying", type: "address", internalType: "address" }]
283
325
  },
326
+ {
327
+ type: "error",
328
+ name: "TooManyCreditAccountsException",
329
+ inputs: [{ name: "investor", type: "address", internalType: "address" }]
330
+ },
284
331
  {
285
332
  type: "error",
286
333
  name: "UnknownCreditAccountException",
@@ -291,5 +338,5 @@ const iSecuritizeKYCFactoryAbi = [
291
338
  { type: "error", name: "ZeroAddressException", inputs: [] }
292
339
  ];
293
340
  export {
294
- iSecuritizeKYCFactoryAbi
341
+ iSecuritizeRWAFactoryAbi
295
342
  };
@@ -1,42 +1,49 @@
1
1
  import axios from "axios";
2
- class ApyOutputCache {
2
+ class AxiosCache {
3
3
  static #instances = /* @__PURE__ */ new Map();
4
4
  #url;
5
5
  #ttlMs;
6
6
  #cache;
7
7
  #pending;
8
8
  #logger;
9
- constructor(url, ttlMs, logger) {
9
+ #getLogMeta;
10
+ constructor(url, ttlMs, logger, getLogMeta) {
10
11
  this.#url = url;
11
12
  this.#ttlMs = ttlMs;
12
13
  this.#logger = logger;
14
+ this.#getLogMeta = getLogMeta;
13
15
  }
14
16
  /**
15
17
  * Returns a shared cache instance for the given URL.
16
18
  * The same instance is reused across all callers with identical URL.
17
19
  */
18
- static get(url, ttlMs, logger) {
19
- let instance = ApyOutputCache.#instances.get(url);
20
+ static get(url, ttlMs, logger, getLogMeta) {
21
+ let instance = AxiosCache.#instances.get(url);
20
22
  if (!instance) {
21
- instance = new ApyOutputCache(url, ttlMs, logger);
22
- ApyOutputCache.#instances.set(url, instance);
23
+ instance = new AxiosCache(url, ttlMs, logger, getLogMeta);
24
+ AxiosCache.#instances.set(url, instance);
23
25
  }
24
26
  if (logger) {
25
27
  instance.#logger = logger;
26
28
  }
29
+ if (getLogMeta) {
30
+ instance.#getLogMeta = getLogMeta;
31
+ }
27
32
  return instance;
28
33
  }
29
34
  /**
30
- * Returns cached Output if fresh, otherwise fetches from the network.
35
+ * Returns cached data if fresh, otherwise fetches from the network.
31
36
  * Concurrent calls are de-duplicated.
32
37
  */
33
38
  async fetch() {
34
39
  if (this.#cache && Date.now() - this.#cache.fetchedAt < this.#ttlMs) {
35
- this.#logger?.debug("apy cache: TTL still valid, returning cached data");
40
+ this.#logger?.debug(
41
+ "axios cache: TTL still valid, returning cached data"
42
+ );
36
43
  return this.#cache.data;
37
44
  }
38
45
  if (this.#pending) {
39
- this.#logger?.debug("apy cache: request in flight, waiting");
46
+ this.#logger?.debug("axios cache: request in flight, waiting");
40
47
  return this.#pending;
41
48
  }
42
49
  this.#pending = this.#doFetch();
@@ -58,29 +65,33 @@ class ApyOutputCache {
58
65
  });
59
66
  if (response.status === 304 && this.#cache) {
60
67
  this.#cache.fetchedAt = Date.now();
61
- this.#logger?.debug("apy cache: 304 Not Modified, extended TTL");
68
+ this.#logger?.debug("axios cache: 304 Not Modified, extended TTL");
62
69
  return this.#cache.data;
63
70
  }
64
- const etag = response.headers["etag"];
71
+ const etag = response.headers.etag;
65
72
  this.#cache = {
66
73
  data: response.data,
67
74
  etag,
68
75
  fetchedAt: Date.now()
69
76
  };
77
+ const meta = this.#getLogMeta?.(response.data);
70
78
  this.#logger?.debug(
71
- `apy cache: fetched fresh data (timestamp: ${response.data.timestamp})`
79
+ `axios cache: fetched fresh data${meta ? ` (${meta})` : ""}`
72
80
  );
73
81
  return response.data;
74
82
  } catch (e) {
75
- this.#logger?.error(e, "apy cache: fetch failed");
76
- return this.#cache?.data;
83
+ this.#logger?.error(e, "axios cache: fetch failed");
84
+ if (this.#cache) {
85
+ return this.#cache.data;
86
+ }
87
+ throw e;
77
88
  }
78
89
  }
79
90
  /** Evicts all cached entries. Mainly useful for tests. */
80
91
  static clearAll() {
81
- ApyOutputCache.#instances.clear();
92
+ AxiosCache.#instances.clear();
82
93
  }
83
94
  }
84
95
  export {
85
- ApyOutputCache
96
+ AxiosCache
86
97
  };
@@ -0,0 +1 @@
1
+ export * from "./AxiosCache.js";
@@ -55,7 +55,7 @@ class TokenData {
55
55
  this.symbol = payload.symbol;
56
56
  this.name = payload.name;
57
57
  this.decimals = payload.decimals;
58
- this.icon = TokenData.getTokenIcon(payload.symbol);
58
+ this.icon = payload.icon ?? TokenData.getTokenIcon(payload.symbol);
59
59
  this.isPhantom = payload.isPhantom ?? false;
60
60
  }
61
61
  static getTokenIcon(symbol) {
@@ -1,3 +1,4 @@
1
+ export * from "./axios-cache/index.js";
1
2
  export * from "./charts/index.js";
2
3
  export * from "./static/index.js";
3
4
  export * from "./utils/index.js";
@@ -0,0 +1,104 @@
1
+ import { TokenData } from "../charts/token-data.js";
2
+ const mockToken1 = "0x1111111111111111111111111111111111111111";
3
+ const mockToken2 = "0x2222222222222222222222222222222222222222";
4
+ const mockUnderlyingToken = "0x9999999999999999999999999999999999999999";
5
+ const mockNativeTokenAddress = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
6
+ const mockWrappedNativeTokenAddress = "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2";
7
+ const mockCMAddress = "0xbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
8
+ function buildQuota(overrides) {
9
+ return {
10
+ rate: 0n,
11
+ quotaIncreaseFee: 0n,
12
+ totalQuoted: 0n,
13
+ limit: 0n,
14
+ isActive: true,
15
+ ...overrides
16
+ };
17
+ }
18
+ function buildPool(overrides = {}) {
19
+ const address = overrides.address ?? "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
20
+ return {
21
+ address,
22
+ expectedLiquidity: 0n,
23
+ availableLiquidity: 0n,
24
+ interestModel: {
25
+ interestModel: "0x0000000000000000000000000000000000000000",
26
+ U_1: 0n,
27
+ U_2: 0n,
28
+ R_base: 0n,
29
+ R_slope1: 0n,
30
+ R_slope2: 0n,
31
+ R_slope3: 0n,
32
+ version: 0,
33
+ isBorrowingMoreU2Forbidden: false
34
+ },
35
+ totalDebtLimit: 0n,
36
+ totalBorrowed: 0n,
37
+ ...overrides
38
+ };
39
+ }
40
+ function buildCreditManager(overrides = {}) {
41
+ const address = overrides.address ?? "0xbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
42
+ const pool = overrides.pool ?? "0xcccccccccccccccccccccccccccccccccccccccc";
43
+ const underlyingToken = overrides.underlyingToken ?? mockUnderlyingToken;
44
+ const quotas = overrides.quotas ?? {};
45
+ return {
46
+ address,
47
+ name: overrides.name ?? "",
48
+ underlyingToken,
49
+ pool,
50
+ isPaused: overrides.isPaused ?? false,
51
+ collateralTokens: overrides.collateralTokens ?? [],
52
+ forbiddenTokens: overrides.forbiddenTokens ?? {},
53
+ supportedTokens: overrides.supportedTokens ?? {},
54
+ quotas,
55
+ liquidationThresholds: overrides.liquidationThresholds ?? {},
56
+ maxDebt: overrides.maxDebt ?? 0n,
57
+ minDebt: overrides.minDebt ?? 0n,
58
+ availableToBorrow: overrides.availableToBorrow ?? 0n,
59
+ totalDebt: overrides.totalDebt ?? 0n,
60
+ totalDebtLimit: overrides.totalDebtLimit ?? -1n,
61
+ feeInterest: overrides.feeInterest ?? 0,
62
+ baseBorrowRate: overrides.baseBorrowRate ?? 0,
63
+ maxEnabledTokensLength: overrides.maxEnabledTokensLength ?? 0,
64
+ chainId: overrides.chainId ?? 1,
65
+ isDegenMode: overrides.isDegenMode ?? false,
66
+ degenNFT: overrides.degenNFT ?? "0x0000000000000000000000000000000000000000",
67
+ isQuoted: overrides.isQuoted ?? (() => false),
68
+ isForbidden: overrides.isForbidden ?? (() => false),
69
+ ...overrides
70
+ };
71
+ }
72
+ function buildTokenData(address, symbol, decimals = 18, isPhantom = false) {
73
+ return new TokenData({
74
+ addr: address,
75
+ symbol,
76
+ name: symbol,
77
+ decimals,
78
+ isPhantom
79
+ });
80
+ }
81
+ const mockTokenData = {
82
+ [mockToken1]: buildTokenData(mockToken1, "T1"),
83
+ [mockToken2]: buildTokenData(mockToken2, "T2"),
84
+ [mockUnderlyingToken]: buildTokenData(mockUnderlyingToken, "UNDER")
85
+ };
86
+ const mockPrices = {
87
+ [mockToken1]: 300000000n,
88
+ [mockToken2]: 200000000n,
89
+ [mockUnderlyingToken]: 100000000n
90
+ };
91
+ export {
92
+ buildCreditManager,
93
+ buildPool,
94
+ buildQuota,
95
+ buildTokenData,
96
+ mockCMAddress,
97
+ mockNativeTokenAddress,
98
+ mockPrices,
99
+ mockToken1,
100
+ mockToken2,
101
+ mockTokenData,
102
+ mockUnderlyingToken,
103
+ mockWrappedNativeTokenAddress
104
+ };
@@ -0,0 +1,4 @@
1
+ const BONUS_APY_FROM_POINTS = {};
2
+ export {
3
+ BONUS_APY_FROM_POINTS
4
+ };
@@ -0,0 +1,35 @@
1
+ import { PERCENTAGE_FACTOR } from "../../../sdk/constants/math.js";
2
+ function calculateBorrowRateFromUtilization(util, model, extraPrecision = 1n) {
3
+ const {
4
+ U_1: U_1_r,
5
+ U_2: U_2_r,
6
+ R_base: R_base_r,
7
+ R_slope1: R_slope1_r,
8
+ R_slope2: R_slope2_r,
9
+ R_slope3: R_slope3_r
10
+ } = model;
11
+ const U_1 = U_1_r * extraPrecision;
12
+ const U_2 = U_2_r * extraPrecision;
13
+ const R_base = R_base_r * extraPrecision;
14
+ const R_slope1 = R_slope1_r * extraPrecision;
15
+ const R_slope2 = R_slope2_r * extraPrecision;
16
+ const R_slope3 = R_slope3_r * extraPrecision;
17
+ const ONE = PERCENTAGE_FACTOR * extraPrecision;
18
+ if (util === 0n) {
19
+ return R_base;
20
+ }
21
+ if (util <= U_1) {
22
+ if (U_1 === 0n) return R_base;
23
+ const rate2 = R_base + R_slope1 * util / U_1;
24
+ return rate2;
25
+ }
26
+ if (util > U_1 && util <= U_2) {
27
+ const rate2 = R_base + R_slope1 + R_slope2 * (util - U_1) / (U_2 - U_1);
28
+ return rate2;
29
+ }
30
+ const rate = R_base + R_slope1 + R_slope2 + R_slope3 * (util - U_2) / (ONE - U_2);
31
+ return rate;
32
+ }
33
+ export {
34
+ calculateBorrowRateFromUtilization
35
+ };
@@ -0,0 +1,31 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { calculateBorrowRateFromUtilization } from "./calculate-borrow-rate-from-utilization.js";
3
+ describe("calculateBorrowRateFromUtilization", () => {
4
+ const model = {
5
+ U_1: 30n,
6
+ U_2: 80n,
7
+ R_base: 100n,
8
+ R_slope1: 200n,
9
+ R_slope2: 300n,
10
+ R_slope3: 400n,
11
+ interestModel: "0x1",
12
+ isBorrowingMoreU2Forbidden: false,
13
+ version: 3
14
+ };
15
+ it("returns base rate when util is zero", () => {
16
+ expect(calculateBorrowRateFromUtilization(0n, model)).toBe(100n);
17
+ });
18
+ it("uses first segment when util <= U1", () => {
19
+ expect(calculateBorrowRateFromUtilization(15n, model)).toBe(200n);
20
+ });
21
+ it("uses second segment when U1 < util <= U2", () => {
22
+ expect(calculateBorrowRateFromUtilization(50n, model)).toBe(420n);
23
+ });
24
+ it("uses third segment when util > U2", () => {
25
+ expect(calculateBorrowRateFromUtilization(90n, model)).toBe(600n);
26
+ });
27
+ it("supports extraPrecision scaling", () => {
28
+ const scaled = calculateBorrowRateFromUtilization(3000n, model, 100n);
29
+ expect(scaled).toBe(30000n);
30
+ });
31
+ });
@@ -0,0 +1,35 @@
1
+ import { PERCENTAGE_FACTOR_1KK } from "../../../sdk/constants/math.js";
2
+ import { PriceUtils } from "../../utils/price-math.js";
3
+ function calculateEarnings({
4
+ overallAPYBigInt,
5
+ targetAmount,
6
+ targetToken,
7
+ tokensList,
8
+ prices
9
+ }) {
10
+ if (overallAPYBigInt === void 0 || overallAPYBigInt === null)
11
+ return {
12
+ earnings: null,
13
+ earningsUSD: null
14
+ };
15
+ if (targetAmount === void 0 || targetAmount <= 0n)
16
+ return {
17
+ earnings: null,
18
+ earningsUSD: null
19
+ };
20
+ const earnings = overallAPYBigInt * targetAmount / PERCENTAGE_FACTOR_1KK;
21
+ const targetPrice = prices[targetToken] || 0n;
22
+ const targetDecimals = tokensList[targetToken]?.decimals || 18;
23
+ const earningsUSD = PriceUtils.calcTotalPrice(
24
+ targetPrice,
25
+ earnings,
26
+ targetDecimals
27
+ );
28
+ return {
29
+ earnings,
30
+ earningsUSD
31
+ };
32
+ }
33
+ export {
34
+ calculateEarnings
35
+ };
@@ -0,0 +1,65 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { PERCENTAGE_FACTOR_1KK } from "../../../sdk/constants/math.js";
3
+ import { toBN } from "../../../sdk/utils/formatter.js";
4
+ import {
5
+ mockPrices,
6
+ mockToken1,
7
+ mockTokenData
8
+ } from "../../test-utils/index.js";
9
+ import { calculateEarnings } from "./calculate-earnings.js";
10
+ describe("calculateEarnings", () => {
11
+ const targetToken = mockToken1;
12
+ const tokensList = mockTokenData;
13
+ const prices = mockPrices;
14
+ const targetAmount = toBN("100", 18);
15
+ const baseArgs = {
16
+ overallAPYBigInt: 1n,
17
+ targetAmount,
18
+ targetToken,
19
+ tokensList,
20
+ prices
21
+ };
22
+ it("returns null earnings when overallAPYBigInt is undefined", () => {
23
+ expect(
24
+ calculateEarnings({
25
+ ...baseArgs,
26
+ overallAPYBigInt: void 0
27
+ })
28
+ ).toEqual({ earnings: null, earningsUSD: null });
29
+ expect(
30
+ calculateEarnings({
31
+ ...baseArgs,
32
+ overallAPYBigInt: null
33
+ })
34
+ ).toEqual({ earnings: null, earningsUSD: null });
35
+ });
36
+ it("returns null earnings when targetAmount is missing or non-positive", () => {
37
+ expect(
38
+ calculateEarnings({
39
+ ...baseArgs,
40
+ targetAmount: void 0
41
+ })
42
+ ).toEqual({ earnings: null, earningsUSD: null });
43
+ expect(
44
+ calculateEarnings({
45
+ ...baseArgs,
46
+ targetAmount: 0n
47
+ })
48
+ ).toEqual({ earnings: null, earningsUSD: null });
49
+ });
50
+ it("calculates earnings and earningsUSD", () => {
51
+ const overallAPYBigInt = 2n * BigInt(PERCENTAGE_FACTOR_1KK);
52
+ const result = calculateEarnings({
53
+ ...baseArgs,
54
+ overallAPYBigInt,
55
+ targetAmount,
56
+ targetToken,
57
+ tokensList,
58
+ prices
59
+ });
60
+ expect(result).toEqual({
61
+ earnings: 200000000000000000000n,
62
+ earningsUSD: 600000000000000000000n
63
+ });
64
+ });
65
+ });
@@ -0,0 +1,11 @@
1
+ function calculateEffectiveBorrowRate({
2
+ underlyingTokenAddress,
3
+ baseRateWithFee = 0,
4
+ apyList
5
+ }) {
6
+ const apy = underlyingTokenAddress ? apyList?.[underlyingTokenAddress] || 0 : 0;
7
+ return apy > 0 ? baseRateWithFee + apy : baseRateWithFee;
8
+ }
9
+ export {
10
+ calculateEffectiveBorrowRate
11
+ };
@@ -0,0 +1,34 @@
1
+ import {
2
+ PERCENTAGE_DECIMALS,
3
+ PERCENTAGE_FACTOR
4
+ } from "../../../sdk/constants/math.js";
5
+ import { BigIntMath } from "../../utils/bigint-math.js";
6
+ import { calculateBorrowRateFromUtilization } from "./calculate-borrow-rate-from-utilization.js";
7
+ function calculateSafeBorrowRate({
8
+ pool,
9
+ creditManager,
10
+ expectedLiquidityChange = 0n,
11
+ availableLiquidityChange = 0n
12
+ }) {
13
+ const expectedLiquidity = pool.expectedLiquidity + expectedLiquidityChange;
14
+ const availableLiquidity = pool.availableLiquidity + availableLiquidityChange;
15
+ const borrowed = BigIntMath.max(expectedLiquidity - availableLiquidity, 0n);
16
+ const EXTRA_PRECISION = 100n;
17
+ const ONE = PERCENTAGE_FACTOR * EXTRA_PRECISION;
18
+ const utilization = BigIntMath.min(
19
+ expectedLiquidity > 0 ? borrowed * ONE / expectedLiquidity : 0n,
20
+ ONE
21
+ );
22
+ const rate = calculateBorrowRateFromUtilization(
23
+ utilization,
24
+ pool.interestModel,
25
+ EXTRA_PRECISION
26
+ );
27
+ const rateWithDaoFee = Number(
28
+ rate * (BigInt(creditManager.feeInterest) + PERCENTAGE_FACTOR) / PERCENTAGE_DECIMALS / EXTRA_PRECISION
29
+ );
30
+ return rateWithDaoFee;
31
+ }
32
+ export {
33
+ calculateSafeBorrowRate
34
+ };