@gearbox-protocol/sdk 14.12.0-next.3 → 14.12.0-next.31

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 (554) hide show
  1. package/dist/cjs/abi/IWithdrawalCompressorV313.js +230 -0
  2. package/dist/cjs/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +45 -1
  3. package/dist/cjs/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.js +45 -1
  4. package/dist/cjs/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.js +45 -1
  5. package/dist/cjs/abi/compressors/withdrawalCompressor.js +47 -2
  6. package/dist/cjs/abi/ierc4626Adapter.js +264 -0
  7. package/dist/cjs/dev/AccountOpener.js +7 -13
  8. package/dist/cjs/dev/index.js +3 -1
  9. package/dist/cjs/dev/withdrawalAbi.js +2105 -0
  10. package/dist/cjs/dev/withdrawalUtils.js +278 -0
  11. package/dist/cjs/history/classifyMulticallOperations.js +2 -0
  12. package/dist/cjs/history/mapOperations.js +7 -0
  13. package/dist/cjs/history/populateContractsRegister.js +14 -11
  14. package/dist/cjs/{preview/simulate/holders.js → permissionless/bindings/factory/rate-keeper-factory.js} +11 -21
  15. package/dist/cjs/permissionless/bindings/market-configurator.js +11 -0
  16. package/dist/cjs/plugins/adapters/abi/actionAbi.js +1 -10
  17. package/dist/cjs/plugins/adapters/abi/adapters/erc4626ReferralAdapter.js +332 -0
  18. package/dist/cjs/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.js +436 -0
  19. package/dist/cjs/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.js +183 -0
  20. package/dist/cjs/plugins/adapters/abi/adapters/iCamelotV3Adapter.js +586 -0
  21. package/dist/cjs/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.js +385 -0
  22. package/dist/cjs/plugins/adapters/abi/adapters/iConvexV1BoosterAdapter.js +143 -0
  23. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.js +708 -0
  24. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.js +708 -0
  25. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.js +708 -0
  26. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.js +708 -0
  27. package/dist/cjs/plugins/adapters/abi/adapters/iDaiUsdsAdapter.js +206 -0
  28. package/dist/cjs/plugins/adapters/abi/adapters/iFluidDexAdapter.js +183 -0
  29. package/dist/cjs/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.js +473 -0
  30. package/dist/cjs/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.js +482 -0
  31. package/dist/cjs/plugins/adapters/abi/adapters/iKelpLrtDepositPool.js +333 -0
  32. package/dist/cjs/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.js +488 -0
  33. package/dist/cjs/plugins/adapters/abi/adapters/iLidoV1Adapter.js +171 -0
  34. package/dist/cjs/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.js +269 -0
  35. package/dist/cjs/plugins/adapters/abi/adapters/iMellowClaimerAdapter.js +350 -0
  36. package/dist/cjs/plugins/adapters/abi/adapters/iMellowWrapperAdapter.js +225 -0
  37. package/dist/cjs/plugins/adapters/abi/adapters/iMidasGatewayAdapterV311.js +1015 -0
  38. package/dist/cjs/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.js +262 -0
  39. package/dist/cjs/plugins/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.js +622 -0
  40. package/dist/cjs/plugins/adapters/abi/adapters/iPendleRouterAdapter.js +1787 -0
  41. package/dist/cjs/plugins/adapters/abi/{securitize/iSecuritizeOnRampAdapter.js → adapters/iSecuritizeOnRampAdapterV310.js} +6 -6
  42. package/dist/cjs/plugins/adapters/abi/{securitize/iSecuritizeRedemptionGatewayAdapter.js → adapters/iSecuritizeRedemptionGatewayAdapterV311.js} +26 -6
  43. package/dist/cjs/plugins/adapters/abi/adapters/iStakingRewardsAdapter.js +288 -0
  44. package/dist/cjs/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.js +459 -0
  45. package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV2Adapter.js +290 -0
  46. package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV3Adapter.js +505 -0
  47. package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV4Adapter.js +534 -0
  48. package/dist/cjs/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.js +475 -0
  49. package/dist/cjs/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.js +327 -0
  50. package/dist/cjs/plugins/adapters/abi/adapters/index.js +90 -0
  51. package/dist/cjs/plugins/adapters/abi/adapters/iwstEthv1Adapter.js +183 -0
  52. package/dist/cjs/plugins/adapters/abi/adapters/mellowDvvAdapter.js +319 -0
  53. package/dist/cjs/plugins/adapters/abi/conctructorAbi.js +4 -42
  54. package/dist/cjs/plugins/adapters/abi/conctructorAbiPatterns.js +0 -16
  55. package/dist/cjs/plugins/adapters/abi/index.js +2 -0
  56. package/dist/cjs/plugins/adapters/abi/securitize/{iSecuritizeRedemptionGateway.js → iSecuritizeRedemptionGatewayV311.js} +15 -7
  57. package/dist/cjs/plugins/adapters/abi/securitize/index.js +2 -6
  58. package/dist/cjs/plugins/adapters/abi/targetContractAbi.js +3 -296
  59. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +80 -2
  60. package/dist/cjs/plugins/adapters/contracts/AbstractCurveAdapter.js +69 -0
  61. package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  62. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +25 -4
  63. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +21 -4
  64. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +21 -4
  65. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +24 -4
  66. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +32 -4
  67. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +6 -11
  68. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +6 -11
  69. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +6 -11
  70. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +6 -11
  71. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +6 -11
  72. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +20 -4
  73. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +42 -4
  74. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +20 -4
  75. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +19 -4
  76. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +28 -4
  77. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +5 -5
  78. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +16 -5
  79. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +5 -5
  80. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +16 -4
  81. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +26 -4
  82. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +21 -4
  83. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +57 -4
  84. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +16 -4
  85. package/dist/cjs/plugins/adapters/contracts/MidasGatewayAdapterContract.js +155 -0
  86. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +16 -5
  87. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +18 -5
  88. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +60 -4
  89. package/dist/cjs/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +16 -4
  90. package/dist/cjs/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +43 -6
  91. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +23 -4
  92. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +15 -4
  93. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +15 -4
  94. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +21 -4
  95. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +20 -5
  96. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +21 -5
  97. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +15 -4
  98. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +21 -4
  99. package/dist/cjs/plugins/adapters/contracts/index.js +2 -12
  100. package/dist/cjs/plugins/adapters/createAdapter.js +42 -49
  101. package/dist/cjs/plugins/adapters/types.js +2 -11
  102. package/dist/cjs/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +18 -39
  103. package/dist/cjs/preview/index.js +5 -3
  104. package/dist/cjs/preview/parse/classifyInnerOperations.js +14 -1
  105. package/dist/cjs/preview/parse/index.js +0 -2
  106. package/dist/cjs/preview/parse/parseFacadeOperationCalldata.js +6 -14
  107. package/dist/cjs/preview/parse/parseOperationCalldata.js +9 -15
  108. package/dist/cjs/preview/parse/parsePoolOperationCalldata.js +5 -2
  109. package/dist/cjs/preview/parse/parseRWAFactoryOperationCalldata.js +24 -12
  110. package/dist/cjs/preview/parse/types-rwa.js +16 -0
  111. package/dist/cjs/preview/parse/types.js +9 -2
  112. package/dist/cjs/preview/prerequisites/AllowancePrerequisite.js +20 -43
  113. package/dist/cjs/preview/prerequisites/BalancePrerequisite.js +25 -39
  114. package/dist/cjs/preview/prerequisites/Prerequisite.js +10 -35
  115. package/dist/cjs/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +71 -0
  116. package/dist/cjs/preview/prerequisites/buildCollateralPrerequisites.js +55 -0
  117. package/dist/cjs/preview/prerequisites/{prepareAction.js → buildPartialLiquidationPrerequisites.js} +16 -24
  118. package/dist/cjs/preview/prerequisites/buildPoolPrerequisites.js +114 -0
  119. package/dist/cjs/preview/prerequisites/buildRWAPrerequisites.js +59 -0
  120. package/dist/cjs/preview/prerequisites/checkPrerequisites.js +85 -0
  121. package/dist/cjs/preview/prerequisites/helpers.js +36 -0
  122. package/dist/cjs/preview/prerequisites/index.js +4 -6
  123. package/dist/cjs/preview/preview/CreditAccountState.js +154 -0
  124. package/dist/cjs/preview/preview/applyRWAWrapUnwrap.js +74 -0
  125. package/dist/cjs/preview/preview/buildDelayedPreview.js +146 -0
  126. package/dist/cjs/preview/preview/detectCloseOrRepay.js +51 -0
  127. package/dist/cjs/preview/preview/detectDelayedOperation.js +71 -0
  128. package/dist/cjs/preview/preview/errors.js +53 -0
  129. package/dist/cjs/preview/preview/index.js +42 -0
  130. package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +78 -0
  131. package/dist/cjs/preview/preview/previewCloseOrRepayCreditAccount.js +79 -0
  132. package/dist/cjs/preview/preview/previewOpenCreditAccount.js +84 -0
  133. package/dist/cjs/preview/preview/previewOperation.js +94 -0
  134. package/dist/cjs/preview/preview/previewPoolOperation.js +42 -0
  135. package/dist/cjs/preview/preview/replayInnerOperations.js +153 -0
  136. package/dist/cjs/preview/preview/replayMulticall.js +37 -0
  137. package/dist/cjs/preview/preview/types.js +49 -0
  138. package/dist/cjs/preview/preview/unwrapNativeCollateral.js +51 -0
  139. package/dist/cjs/preview/simulate/index.js +5 -2
  140. package/dist/cjs/preview/simulate/simulateOperation.js +4 -0
  141. package/dist/cjs/preview/simulate/simulatePoolOperation.js +20 -119
  142. package/dist/cjs/preview/simulate/simulateRWAOperation.js +30 -0
  143. package/dist/cjs/preview/types.js +16 -0
  144. package/dist/cjs/sdk/OnchainSDK.js +8 -0
  145. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +157 -210
  146. package/dist/cjs/sdk/accounts/index.js +3 -1
  147. package/dist/cjs/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +224 -0
  148. package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +40 -0
  149. package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +40 -0
  150. package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +40 -0
  151. package/dist/cjs/sdk/accounts/withdrawal-compressor/addresses.js +40 -0
  152. package/dist/cjs/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.js +51 -0
  153. package/dist/cjs/sdk/accounts/withdrawal-compressor/index.js +36 -0
  154. package/dist/cjs/sdk/accounts/withdrawal-compressor/intent-codec.js +118 -0
  155. package/dist/cjs/sdk/accounts/withdrawal-compressor/types.js +16 -0
  156. package/dist/cjs/sdk/base/BaseContract.js +4 -2
  157. package/dist/cjs/sdk/base/ChainContractsRegister.js +1 -0
  158. package/dist/cjs/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +40 -8
  159. package/dist/cjs/sdk/market/rwa/types.js +5 -2
  160. package/dist/cjs/sdk/market/zapper/ZapperContract.js +0 -3
  161. package/dist/cjs/sdk/router/AbstractRouterContract.js +21 -27
  162. package/dist/cjs/sdk/router/RouterV310Contract.js +11 -12
  163. package/dist/cjs/sdk/router/helpers.js +0 -5
  164. package/dist/cjs/sdk/utils/AddressMap.js +6 -0
  165. package/dist/cjs/sdk/utils/AddressSet.js +7 -0
  166. package/dist/cjs/sdk/utils/AssetsMap.js +97 -0
  167. package/dist/cjs/sdk/utils/index.js +2 -0
  168. package/dist/esm/abi/IWithdrawalCompressorV313.js +206 -0
  169. package/dist/esm/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +45 -1
  170. package/dist/esm/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.js +45 -1
  171. package/dist/esm/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.js +45 -1
  172. package/dist/esm/abi/compressors/withdrawalCompressor.js +47 -2
  173. package/dist/esm/abi/ierc4626Adapter.js +240 -0
  174. package/dist/esm/dev/AccountOpener.js +8 -13
  175. package/dist/esm/dev/index.js +1 -0
  176. package/dist/esm/dev/withdrawalAbi.js +2074 -0
  177. package/dist/esm/dev/withdrawalUtils.js +266 -0
  178. package/dist/esm/history/classifyMulticallOperations.js +2 -0
  179. package/dist/esm/history/mapOperations.js +7 -0
  180. package/dist/esm/history/populateContractsRegister.js +17 -12
  181. package/dist/esm/permissionless/bindings/factory/rate-keeper-factory.js +11 -0
  182. package/dist/esm/permissionless/bindings/market-configurator.js +11 -0
  183. package/dist/esm/plugins/adapters/abi/actionAbi.js +1 -10
  184. package/dist/esm/plugins/adapters/abi/adapters/erc4626ReferralAdapter.js +308 -0
  185. package/dist/esm/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.js +412 -0
  186. package/dist/esm/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.js +159 -0
  187. package/dist/esm/plugins/adapters/abi/adapters/iCamelotV3Adapter.js +562 -0
  188. package/dist/esm/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.js +361 -0
  189. package/dist/esm/plugins/adapters/abi/adapters/iConvexV1BoosterAdapter.js +119 -0
  190. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.js +684 -0
  191. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.js +684 -0
  192. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.js +684 -0
  193. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.js +684 -0
  194. package/dist/esm/plugins/adapters/abi/adapters/iDaiUsdsAdapter.js +182 -0
  195. package/dist/esm/plugins/adapters/abi/adapters/iFluidDexAdapter.js +159 -0
  196. package/dist/esm/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.js +449 -0
  197. package/dist/esm/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.js +457 -0
  198. package/dist/esm/plugins/adapters/abi/adapters/iKelpLrtDepositPool.js +308 -0
  199. package/dist/esm/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.js +463 -0
  200. package/dist/esm/plugins/adapters/abi/adapters/iLidoV1Adapter.js +147 -0
  201. package/dist/esm/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.js +245 -0
  202. package/dist/esm/plugins/adapters/abi/adapters/iMellowClaimerAdapter.js +326 -0
  203. package/dist/esm/plugins/adapters/abi/adapters/iMellowWrapperAdapter.js +201 -0
  204. package/dist/esm/plugins/adapters/abi/adapters/iMidasGatewayAdapterV311.js +990 -0
  205. package/dist/esm/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.js +238 -0
  206. package/dist/esm/plugins/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.js +597 -0
  207. package/dist/esm/plugins/adapters/abi/adapters/iPendleRouterAdapter.js +1763 -0
  208. package/dist/esm/plugins/adapters/abi/{securitize/iSecuritizeOnRampAdapter.js → adapters/iSecuritizeOnRampAdapterV310.js} +2 -2
  209. package/dist/esm/plugins/adapters/abi/{securitize/iSecuritizeRedemptionGatewayAdapter.js → adapters/iSecuritizeRedemptionGatewayAdapterV311.js} +22 -2
  210. package/dist/esm/plugins/adapters/abi/adapters/iStakingRewardsAdapter.js +264 -0
  211. package/dist/esm/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.js +435 -0
  212. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV2Adapter.js +266 -0
  213. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV3Adapter.js +481 -0
  214. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV4Adapter.js +509 -0
  215. package/dist/esm/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.js +450 -0
  216. package/dist/esm/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.js +303 -0
  217. package/dist/esm/plugins/adapters/abi/adapters/index.js +35 -0
  218. package/dist/esm/plugins/adapters/abi/adapters/iwstEthv1Adapter.js +159 -0
  219. package/dist/esm/plugins/adapters/abi/adapters/mellowDvvAdapter.js +295 -0
  220. package/dist/esm/plugins/adapters/abi/conctructorAbi.js +4 -44
  221. package/dist/esm/plugins/adapters/abi/conctructorAbiPatterns.js +0 -14
  222. package/dist/esm/plugins/adapters/abi/index.js +1 -0
  223. package/dist/esm/plugins/adapters/abi/securitize/{iSecuritizeRedemptionGateway.js → iSecuritizeRedemptionGatewayV311.js} +11 -3
  224. package/dist/esm/plugins/adapters/abi/securitize/index.js +1 -3
  225. package/dist/esm/plugins/adapters/abi/targetContractAbi.js +2 -291
  226. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +80 -2
  227. package/dist/esm/plugins/adapters/contracts/AbstractCurveAdapter.js +45 -0
  228. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  229. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +27 -4
  230. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +23 -4
  231. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +23 -4
  232. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +27 -4
  233. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +34 -4
  234. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +5 -10
  235. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +5 -10
  236. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +5 -10
  237. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +5 -10
  238. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +5 -10
  239. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +22 -4
  240. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +45 -4
  241. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +22 -4
  242. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +21 -4
  243. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +30 -4
  244. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +6 -6
  245. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +19 -6
  246. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +6 -6
  247. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +18 -4
  248. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +28 -4
  249. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +23 -4
  250. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +60 -4
  251. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +18 -4
  252. package/dist/esm/plugins/adapters/contracts/MidasGatewayAdapterContract.js +140 -0
  253. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +20 -7
  254. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +23 -8
  255. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +62 -4
  256. package/dist/esm/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +19 -5
  257. package/dist/esm/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +47 -7
  258. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +25 -4
  259. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +17 -4
  260. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +14 -3
  261. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +20 -3
  262. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +22 -5
  263. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +24 -6
  264. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +17 -4
  265. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +23 -4
  266. package/dist/esm/plugins/adapters/contracts/index.js +1 -6
  267. package/dist/esm/plugins/adapters/createAdapter.js +43 -52
  268. package/dist/esm/plugins/adapters/types.js +2 -11
  269. package/dist/esm/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +19 -44
  270. package/dist/esm/preview/index.js +2 -1
  271. package/dist/esm/preview/parse/classifyInnerOperations.js +14 -1
  272. package/dist/esm/preview/parse/index.js +0 -1
  273. package/dist/esm/preview/parse/parseFacadeOperationCalldata.js +6 -14
  274. package/dist/esm/preview/parse/parseOperationCalldata.js +10 -16
  275. package/dist/esm/preview/parse/parsePoolOperationCalldata.js +5 -2
  276. package/dist/esm/preview/parse/parseRWAFactoryOperationCalldata.js +27 -13
  277. package/dist/esm/preview/parse/types-rwa.js +0 -0
  278. package/dist/esm/preview/parse/types.js +6 -1
  279. package/dist/esm/preview/prerequisites/AllowancePrerequisite.js +21 -47
  280. package/dist/esm/preview/prerequisites/BalancePrerequisite.js +26 -43
  281. package/dist/esm/preview/prerequisites/Prerequisite.js +10 -37
  282. package/dist/esm/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +47 -0
  283. package/dist/esm/preview/prerequisites/buildCollateralPrerequisites.js +33 -0
  284. package/dist/esm/preview/prerequisites/buildPartialLiquidationPrerequisites.js +16 -0
  285. package/dist/esm/preview/prerequisites/buildPoolPrerequisites.js +90 -0
  286. package/dist/esm/preview/prerequisites/buildRWAPrerequisites.js +35 -0
  287. package/dist/esm/preview/prerequisites/checkPrerequisites.js +61 -0
  288. package/dist/esm/preview/prerequisites/helpers.js +14 -0
  289. package/dist/esm/preview/prerequisites/index.js +2 -3
  290. package/dist/esm/preview/preview/CreditAccountState.js +133 -0
  291. package/dist/esm/preview/preview/applyRWAWrapUnwrap.js +50 -0
  292. package/dist/esm/preview/preview/buildDelayedPreview.js +125 -0
  293. package/dist/esm/preview/preview/detectCloseOrRepay.js +26 -0
  294. package/dist/esm/preview/preview/detectDelayedOperation.js +51 -0
  295. package/dist/esm/preview/preview/errors.js +28 -0
  296. package/dist/esm/preview/preview/index.js +11 -0
  297. package/dist/esm/preview/preview/previewAdjustCreditAccount.js +57 -0
  298. package/dist/esm/preview/preview/previewCloseOrRepayCreditAccount.js +57 -0
  299. package/dist/esm/preview/preview/previewOpenCreditAccount.js +68 -0
  300. package/dist/esm/preview/preview/previewOperation.js +75 -0
  301. package/dist/esm/preview/preview/previewPoolOperation.js +18 -0
  302. package/dist/esm/preview/preview/replayInnerOperations.js +137 -0
  303. package/dist/esm/preview/preview/replayMulticall.js +16 -0
  304. package/dist/esm/preview/preview/types.js +18 -0
  305. package/dist/esm/preview/preview/unwrapNativeCollateral.js +29 -0
  306. package/dist/esm/preview/simulate/index.js +3 -1
  307. package/dist/esm/preview/simulate/simulateOperation.js +5 -1
  308. package/dist/esm/preview/simulate/simulatePoolOperation.js +21 -123
  309. package/dist/esm/preview/simulate/simulateRWAOperation.js +6 -0
  310. package/dist/esm/preview/types.js +0 -0
  311. package/dist/esm/sdk/OnchainSDK.js +10 -1
  312. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +153 -205
  313. package/dist/esm/sdk/accounts/index.js +1 -0
  314. package/dist/esm/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +200 -0
  315. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +16 -0
  316. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +16 -0
  317. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +16 -0
  318. package/dist/esm/sdk/accounts/withdrawal-compressor/addresses.js +16 -0
  319. package/dist/esm/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.js +27 -0
  320. package/dist/esm/sdk/accounts/withdrawal-compressor/index.js +8 -0
  321. package/dist/esm/sdk/accounts/withdrawal-compressor/intent-codec.js +91 -0
  322. package/dist/esm/sdk/accounts/withdrawal-compressor/types.js +0 -0
  323. package/dist/esm/sdk/base/BaseContract.js +4 -2
  324. package/dist/esm/sdk/base/ChainContractsRegister.js +1 -0
  325. package/dist/esm/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +40 -8
  326. package/dist/esm/sdk/market/rwa/types.js +5 -2
  327. package/dist/esm/sdk/market/zapper/ZapperContract.js +0 -3
  328. package/dist/esm/sdk/router/AbstractRouterContract.js +25 -29
  329. package/dist/esm/sdk/router/RouterV310Contract.js +11 -12
  330. package/dist/esm/sdk/router/helpers.js +0 -4
  331. package/dist/esm/sdk/utils/AddressMap.js +6 -0
  332. package/dist/esm/sdk/utils/AddressSet.js +7 -0
  333. package/dist/esm/sdk/utils/AssetsMap.js +73 -0
  334. package/dist/esm/sdk/utils/index.js +1 -0
  335. package/dist/types/abi/IWithdrawalCompressorV313.d.ts +293 -0
  336. package/dist/types/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.d.ts +77 -0
  337. package/dist/types/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.d.ts +77 -0
  338. package/dist/types/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.d.ts +77 -0
  339. package/dist/types/abi/compressors/withdrawalCompressor.d.ts +81 -0
  340. package/dist/types/abi/ierc4626Adapter.d.ts +179 -0
  341. package/dist/types/common-utils/utils/creditAccount/sort.d.ts +3 -3
  342. package/dist/types/common-utils/utils/strategies/assets/assets.d.ts +1 -1
  343. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +1 -1
  344. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-eligible.d.ts +1 -1
  345. package/dist/types/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.d.ts +1 -1
  346. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +1 -1
  347. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +1 -1
  348. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +1 -1
  349. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +1 -1
  350. package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +1 -1
  351. package/dist/types/common-utils/utils/validation/validate-balances.d.ts +1 -1
  352. package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +1 -1
  353. package/dist/types/common-utils/utils/validation/validate-quota.d.ts +1 -1
  354. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.d.ts +1 -1
  355. package/dist/types/dev/abi.d.ts +4 -4
  356. package/dist/types/dev/index.d.ts +1 -0
  357. package/dist/types/dev/providers.d.ts +1 -1
  358. package/dist/types/dev/withdrawalAbi.d.ts +1584 -0
  359. package/dist/types/dev/withdrawalUtils.d.ts +19 -0
  360. package/dist/types/history/populateContractsRegister.d.ts +1 -1
  361. package/dist/types/history/types.d.ts +4 -4
  362. package/dist/types/permissionless/bindings/bytecode-repository.d.ts +9 -9
  363. package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +81 -0
  364. package/dist/types/permissionless/bindings/factory/rate-keeper-factory.d.ts +179 -0
  365. package/dist/types/permissionless/bindings/market-configurator.d.ts +2 -0
  366. package/dist/types/permissionless/bindings/treasury-splitter.d.ts +1 -1
  367. package/dist/types/plugins/adapters/abi/adapters/erc4626ReferralAdapter.d.ts +231 -0
  368. package/dist/types/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.d.ts +314 -0
  369. package/dist/types/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.d.ts +117 -0
  370. package/dist/types/plugins/adapters/abi/adapters/iCamelotV3Adapter.d.ts +428 -0
  371. package/dist/types/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.d.ts +271 -0
  372. package/dist/types/plugins/adapters/abi/adapters/iConvexV1BoosterAdapter.d.ts +204 -0
  373. package/dist/types/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.d.ts +519 -0
  374. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.d.ts +519 -0
  375. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.d.ts +519 -0
  376. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.d.ts +519 -0
  377. package/dist/types/plugins/adapters/abi/adapters/iDaiUsdsAdapter.d.ts +135 -0
  378. package/dist/types/plugins/adapters/abi/adapters/iFluidDexAdapter.d.ts +119 -0
  379. package/dist/types/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.d.ts +338 -0
  380. package/dist/types/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.d.ts +346 -0
  381. package/dist/types/plugins/adapters/abi/adapters/iKelpLrtDepositPool.d.ts +233 -0
  382. package/dist/types/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.d.ts +349 -0
  383. package/dist/types/plugins/adapters/abi/adapters/iLidoV1Adapter.d.ts +109 -0
  384. package/dist/types/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.d.ts +183 -0
  385. package/dist/types/plugins/adapters/abi/adapters/iMellowClaimerAdapter.d.ts +247 -0
  386. package/dist/types/plugins/adapters/abi/adapters/iMellowWrapperAdapter.d.ts +151 -0
  387. package/dist/types/plugins/adapters/abi/adapters/iMidasGatewayAdapterV311.d.ts +754 -0
  388. package/dist/types/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.d.ts +180 -0
  389. package/dist/types/plugins/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.d.ts +453 -0
  390. package/dist/types/plugins/adapters/abi/adapters/iPendleRouterAdapter.d.ts +1366 -0
  391. package/dist/types/plugins/adapters/abi/{securitize/iSecuritizeOnRampAdapter.d.ts → adapters/iSecuritizeOnRampAdapterV310.d.ts} +1 -1
  392. package/dist/types/plugins/adapters/abi/{securitize/iSecuritizeRedemptionGatewayAdapter.d.ts → adapters/iSecuritizeRedemptionGatewayAdapterV311.d.ts} +37 -1
  393. package/dist/types/plugins/adapters/abi/adapters/iStakingRewardsAdapter.d.ts +197 -0
  394. package/dist/types/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.d.ts +333 -0
  395. package/dist/types/plugins/adapters/abi/adapters/iUniswapV2Adapter.d.ts +202 -0
  396. package/dist/types/plugins/adapters/abi/adapters/iUniswapV3Adapter.d.ts +367 -0
  397. package/dist/types/plugins/adapters/abi/adapters/iUniswapV4Adapter.d.ts +390 -0
  398. package/dist/types/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.d.ts +336 -0
  399. package/dist/types/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.d.ts +232 -0
  400. package/dist/types/plugins/adapters/abi/adapters/index.d.ts +35 -0
  401. package/dist/types/plugins/adapters/abi/adapters/iwstEthv1Adapter.d.ts +117 -0
  402. package/dist/types/plugins/adapters/abi/adapters/mellowDvvAdapter.d.ts +221 -0
  403. package/dist/types/plugins/adapters/abi/conctructorAbiPatterns.d.ts +0 -26
  404. package/dist/types/plugins/adapters/abi/index.d.ts +1 -0
  405. package/dist/types/plugins/adapters/abi/securitize/{iSecuritizeRedemptionGateway.d.ts → iSecuritizeRedemptionGatewayV311.d.ts} +15 -1
  406. package/dist/types/plugins/adapters/abi/securitize/index.d.ts +1 -3
  407. package/dist/types/plugins/adapters/abi/targetContractAbi.d.ts +1 -477
  408. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +56 -4
  409. package/dist/types/plugins/adapters/contracts/AbstractCurveAdapter.d.ts +17 -0
  410. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
  411. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +9 -8
  412. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +7 -6
  413. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +9 -8
  414. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +9 -8
  415. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +13 -12
  416. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +9 -12
  417. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +9 -12
  418. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +9 -12
  419. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +4 -7
  420. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +9 -12
  421. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +8 -7
  422. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +14 -7
  423. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +8 -7
  424. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +8 -7
  425. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +9 -8
  426. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +5 -5
  427. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +7 -6
  428. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +7 -7
  429. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +9 -8
  430. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +7 -6
  431. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +8 -7
  432. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +22 -8
  433. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +7 -6
  434. package/dist/types/plugins/adapters/contracts/MidasGatewayAdapterContract.d.ts +797 -0
  435. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +9 -8
  436. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +9 -8
  437. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +9 -8
  438. package/dist/types/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +8 -7
  439. package/dist/types/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +67 -8
  440. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +9 -8
  441. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +9 -8
  442. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +8 -7
  443. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +8 -7
  444. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +9 -8
  445. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +9 -8
  446. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +9 -8
  447. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +7 -6
  448. package/dist/types/plugins/adapters/contracts/index.d.ts +1 -6
  449. package/dist/types/plugins/adapters/createAdapter.d.ts +2 -2
  450. package/dist/types/plugins/adapters/types.d.ts +43 -14
  451. package/dist/types/plugins/delayed-withdrawal/types.d.ts +4 -17
  452. package/dist/types/preview/index.d.ts +2 -1
  453. package/dist/types/preview/parse/index.d.ts +0 -1
  454. package/dist/types/preview/parse/parseFacadeOperationCalldata.d.ts +6 -7
  455. package/dist/types/preview/parse/parseOperationCalldata.d.ts +5 -18
  456. package/dist/types/preview/parse/parsePoolOperationCalldata.d.ts +7 -12
  457. package/dist/types/preview/parse/parseRWAFactoryOperationCalldata.d.ts +9 -19
  458. package/dist/types/preview/parse/types-adapters.d.ts +5 -1
  459. package/dist/types/preview/parse/types-facades.d.ts +23 -34
  460. package/dist/types/preview/parse/types-pools.d.ts +29 -1
  461. package/dist/types/preview/parse/types-rwa.d.ts +36 -0
  462. package/dist/types/preview/parse/types.d.ts +11 -31
  463. package/dist/types/preview/prerequisites/AllowancePrerequisite.d.ts +16 -17
  464. package/dist/types/preview/prerequisites/BalancePrerequisite.d.ts +21 -18
  465. package/dist/types/preview/prerequisites/Prerequisite.d.ts +18 -55
  466. package/dist/types/preview/prerequisites/RWAOpenRequirementsPrerequisite.d.ts +51 -0
  467. package/dist/types/preview/prerequisites/buildCollateralPrerequisites.d.ts +14 -0
  468. package/dist/types/preview/prerequisites/buildPartialLiquidationPrerequisites.d.ts +8 -0
  469. package/dist/types/preview/prerequisites/buildPoolPrerequisites.d.ts +8 -0
  470. package/dist/types/preview/prerequisites/buildRWAPrerequisites.d.ts +21 -0
  471. package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +19 -0
  472. package/dist/types/preview/prerequisites/helpers.d.ts +7 -0
  473. package/dist/types/preview/prerequisites/index.d.ts +2 -3
  474. package/dist/types/preview/prerequisites/types.d.ts +13 -50
  475. package/dist/types/preview/preview/CreditAccountState.d.ts +83 -0
  476. package/dist/types/preview/preview/applyRWAWrapUnwrap.d.ts +13 -0
  477. package/dist/types/preview/preview/buildDelayedPreview.d.ts +42 -0
  478. package/dist/types/preview/preview/detectCloseOrRepay.d.ts +18 -0
  479. package/dist/types/preview/preview/detectDelayedOperation.d.ts +29 -0
  480. package/dist/types/preview/preview/errors.d.ts +24 -0
  481. package/dist/types/preview/preview/index.d.ts +11 -0
  482. package/dist/types/preview/preview/previewAdjustCreditAccount.d.ts +12 -0
  483. package/dist/types/preview/preview/previewCloseOrRepayCreditAccount.d.ts +11 -0
  484. package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +5 -0
  485. package/dist/types/preview/preview/previewOperation.d.ts +8 -0
  486. package/dist/types/preview/preview/previewPoolOperation.d.ts +5 -0
  487. package/dist/types/preview/preview/replayInnerOperations.d.ts +44 -0
  488. package/dist/types/preview/preview/replayMulticall.d.ts +38 -0
  489. package/dist/types/preview/preview/types.d.ts +317 -0
  490. package/dist/types/preview/preview/unwrapNativeCollateral.d.ts +35 -0
  491. package/dist/types/preview/simulate/index.d.ts +2 -3
  492. package/dist/types/preview/simulate/simulateFacadeOperation.d.ts +3 -16
  493. package/dist/types/preview/simulate/simulateOperation.d.ts +4 -18
  494. package/dist/types/preview/simulate/simulatePoolOperation.d.ts +10 -18
  495. package/dist/types/preview/simulate/simulateRWAOperation.d.ts +12 -0
  496. package/dist/types/preview/simulate/types.d.ts +20 -51
  497. package/dist/types/preview/types.d.ts +63 -0
  498. package/dist/types/sdk/OnchainSDK.d.ts +7 -1
  499. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +23 -15
  500. package/dist/types/sdk/accounts/index.d.ts +1 -0
  501. package/dist/types/sdk/accounts/types.d.ts +171 -53
  502. package/dist/types/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.d.ts +38 -0
  503. package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.d.ts +334 -0
  504. package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.d.ts +338 -0
  505. package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.d.ts +304 -0
  506. package/dist/types/sdk/accounts/withdrawal-compressor/addresses.d.ts +20 -0
  507. package/dist/types/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.d.ts +9 -0
  508. package/dist/types/sdk/accounts/withdrawal-compressor/index.d.ts +8 -0
  509. package/dist/types/sdk/accounts/withdrawal-compressor/intent-codec.d.ts +26 -0
  510. package/dist/types/sdk/accounts/withdrawal-compressor/types.d.ts +296 -0
  511. package/dist/types/sdk/base/BaseContract.d.ts +1 -1
  512. package/dist/types/sdk/base/TokensMeta.d.ts +1 -1
  513. package/dist/types/sdk/base/types.d.ts +18 -0
  514. package/dist/types/sdk/chain/chains.d.ts +8 -8
  515. package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +5 -5
  516. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +1 -1
  517. package/dist/types/sdk/market/rwa/securitize/SecuritizeRWAFactory.d.ts +15 -3
  518. package/dist/types/sdk/market/rwa/securitize/types.d.ts +18 -2
  519. package/dist/types/sdk/market/rwa/types.d.ts +39 -14
  520. package/dist/types/sdk/market/zapper/types.d.ts +6 -6
  521. package/dist/types/sdk/pools/types.d.ts +1 -1
  522. package/dist/types/sdk/router/AbstractRouterContract.d.ts +5 -5
  523. package/dist/types/sdk/router/helpers.d.ts +1 -2
  524. package/dist/types/sdk/router/types.d.ts +1 -15
  525. package/dist/types/sdk/utils/AddressMap.d.ts +4 -0
  526. package/dist/types/sdk/utils/AddressSet.d.ts +1 -0
  527. package/dist/types/sdk/utils/AssetsMap.d.ts +44 -0
  528. package/dist/types/sdk/utils/index.d.ts +1 -0
  529. package/package.json +11 -12
  530. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +0 -116
  531. package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -76
  532. package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -68
  533. package/dist/cjs/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +0 -68
  534. package/dist/cjs/preview/parse/extractExpectedBalanceChanges.js +0 -48
  535. package/dist/cjs/preview/prerequisites/buildPrerequisites.js +0 -234
  536. package/dist/cjs/preview/prerequisites/runPrerequisites.js +0 -71
  537. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +0 -94
  538. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -54
  539. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -46
  540. package/dist/esm/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +0 -46
  541. package/dist/esm/preview/parse/extractExpectedBalanceChanges.js +0 -24
  542. package/dist/esm/preview/prerequisites/buildPrerequisites.js +0 -210
  543. package/dist/esm/preview/prerequisites/prepareAction.js +0 -23
  544. package/dist/esm/preview/prerequisites/runPrerequisites.js +0 -47
  545. package/dist/esm/preview/simulate/holders.js +0 -21
  546. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +0 -1045
  547. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +0 -26
  548. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +0 -24
  549. package/dist/types/plugins/adapters/contracts/SecuritizeSwapAdapterContract.d.ts +0 -24
  550. package/dist/types/preview/parse/extractExpectedBalanceChanges.d.ts +0 -22
  551. package/dist/types/preview/prerequisites/buildPrerequisites.d.ts +0 -16
  552. package/dist/types/preview/prerequisites/prepareAction.d.ts +0 -52
  553. package/dist/types/preview/prerequisites/runPrerequisites.d.ts +0 -12
  554. package/dist/types/preview/simulate/holders.d.ts +0 -7
@@ -0,0 +1,6 @@
1
+ async function simulateRWAOperation(_input, _options) {
2
+ throw new Error("not yet implemented");
3
+ }
4
+ export {
5
+ simulateRWAOperation
6
+ };
File without changes
@@ -5,7 +5,8 @@ import {
5
5
  parseEventLogs
6
6
  } from "viem";
7
7
  import {
8
- CreditAccountsServiceV310
8
+ CreditAccountsServiceV310,
9
+ createWithdrawalCompressor
9
10
  } from "./accounts/index.js";
10
11
  import { ChainContractsRegister } from "./base/index.js";
11
12
  import { getChain } from "./chain/index.js";
@@ -534,6 +535,14 @@ class OnchainSDK extends ChainContractsRegister {
534
535
  const [routerAddr, routerV] = routerEntry;
535
536
  return createRouter(this, routerAddr, routerV);
536
537
  }
538
+ /**
539
+ * Lazily returns a withdrawal compressor contract for the current chain.
540
+ *
541
+ * @throws If no withdrawal compressor is supported on the current chain.
542
+ **/
543
+ get withdrawalCompressor() {
544
+ return createWithdrawalCompressor(this);
545
+ }
537
546
  }
538
547
  export {
539
548
  OnchainSDK,
@@ -1,4 +1,3 @@
1
- import { ierc4626AdapterAbi } from "@gearbox-protocol/integrations-v3";
2
1
  import { encodeFunctionData, getContract } from "viem";
3
2
  import {
4
3
  iBotListV310Abi,
@@ -7,12 +6,10 @@ import {
7
6
  import { creditAccountCompressorAbi } from "../../abi/compressors/creditAccountCompressor.js";
8
7
  import { peripheryCompressorAbi } from "../../abi/compressors/peripheryCompressor.js";
9
8
  import { rewardsCompressorAbi } from "../../abi/compressors/rewardsCompressor.js";
10
- import { iWithdrawalCompressorV310Abi } from "../../abi/IWithdrawalCompressorV310.js";
11
- import { iWithdrawalCompressorV311Abi } from "../../abi/IWithdrawalCompressorV311.js";
12
9
  import { iBaseRewardPoolAbi } from "../../abi/iBaseRewardPool.js";
10
+ import { ierc4626AdapterAbi } from "../../abi/ierc4626Adapter.js";
13
11
  import { iRWAFactoryAbi } from "../../abi/rwa/iRWAFactory.js";
14
12
  import { SDKConstruct } from "../base/index.js";
15
- import { chains } from "../chain/chains.js";
16
13
  import {
17
14
  ADDRESS_0X0,
18
15
  AP_CREDIT_ACCOUNT_COMPRESSOR,
@@ -27,27 +24,13 @@ import {
27
24
  import {
28
25
  getRawPriceUpdates
29
26
  } from "../market/index.js";
30
- import { assetsMap } from "../router/index.js";
31
- import { AddressMap, AddressSet, hexEq } from "../utils/index.js";
27
+ import { AddressMap, AddressSet, AssetsMap, hexEq } from "../utils/index.js";
32
28
  import { simulateWithPriceUpdates } from "../utils/viem/index.js";
33
29
  import {
34
30
  extractPriceUpdates,
35
31
  extractQuotaTokens,
36
32
  mergePriceUpdates
37
33
  } from "./multicall-utils.js";
38
- const COMPRESSORS = {
39
- [chains.Mainnet.id]: {
40
- address: "0x36F3d0Bb73CBC2E94fE24dF0f26a689409cF9023",
41
- version: 310
42
- },
43
- [chains.Monad.id]: {
44
- address: "0x36F3d0Bb73CBC2E94fE24dF0f26a689409cF9023",
45
- version: 310
46
- }
47
- };
48
- function getWithdrawalCompressorAddress(chainId) {
49
- return COMPRESSORS[chainId];
50
- }
51
34
  class CreditAccountsServiceV310 extends SDKConstruct {
52
35
  #compressor;
53
36
  #batchSize;
@@ -604,26 +587,17 @@ class CreditAccountsServiceV310 extends SDKConstruct {
604
587
  closePath
605
588
  }) {
606
589
  const cm = this.sdk.marketRegister.findCreditManager(ca.creditManager);
607
- await this.sdk.tokensMeta.loadTokenData(cm.underlying);
608
- const underlying = this.sdk.tokensMeta.mustGet(cm.underlying);
609
- if (this.sdk.tokensMeta.isRWAUnderlying(underlying)) {
610
- throw new Error(
611
- "closeCreditAccount is not supported for RWA underlying credit accounts"
612
- );
613
- }
614
590
  const routerCloseResult = closePath || await this.sdk.routerFor(ca).findBestClosePath({
615
591
  creditAccount: ca,
616
592
  creditManager: cm.creditManager,
617
593
  slippage
618
594
  });
619
- const operationCalls = [
620
- ...routerCloseResult.calls,
621
- ...this.#prepareDisableQuotas(ca),
622
- ...this.#prepareDecreaseDebt(ca),
623
- ...assetsToWithdraw.map(
624
- (t) => this.#prepareWithdrawToken(ca.creditFacade, t, MAX_UINT256, to)
625
- )
626
- ];
595
+ const operationCalls = await this.assembleCloseCreditAccountCalls({
596
+ creditAccount: ca,
597
+ routerCalls: routerCloseResult.calls,
598
+ assetsToWithdraw,
599
+ to
600
+ });
627
601
  const calls = operation === "close" ? operationCalls : await this.#prependPriceUpdates(ca.creditManager, operationCalls, ca);
628
602
  const tx = await this.#closeCreditAccountTx(
629
603
  cm,
@@ -633,6 +607,24 @@ class CreditAccountsServiceV310 extends SDKConstruct {
633
607
  );
634
608
  return { tx, calls, routerCloseResult, creditFacade: cm.creditFacade };
635
609
  }
610
+ /**
611
+ * {@inheritDoc ICreditAccountsService.assembleCloseCreditAccountCalls}
612
+ */
613
+ async assembleCloseCreditAccountCalls({
614
+ creditAccount: ca,
615
+ routerCalls,
616
+ assetsToWithdraw,
617
+ to
618
+ }) {
619
+ return [
620
+ ...routerCalls,
621
+ ...this.#prepareDisableQuotas(ca),
622
+ ...this.#prepareDecreaseDebt(ca),
623
+ ...assetsToWithdraw.map(
624
+ (t) => this.#prepareWithdrawToken(ca.creditFacade, t, MAX_UINT256, to)
625
+ )
626
+ ];
627
+ }
636
628
  /**
637
629
  * {@inheritDoc ICreditAccountsService.updateQuotas}
638
630
  **/
@@ -772,24 +764,15 @@ class CreditAccountsServiceV310 extends SDKConstruct {
772
764
  async previewDelayedWithdrawal({
773
765
  creditAccount,
774
766
  amount,
775
- token
767
+ token,
768
+ intent
776
769
  }) {
777
- const compressor = getWithdrawalCompressorAddress(this.sdk.chainId);
778
- if (!compressor)
779
- throw new Error(
780
- `No compressor for current chain ${this.sdk.networkType}`
781
- );
782
- const contract = getContract({
783
- address: compressor.address,
784
- abi: compressor.version === 310 ? iWithdrawalCompressorV310Abi : iWithdrawalCompressorV311Abi,
785
- client: this.client
786
- });
787
- const resp = await contract.read.getWithdrawalRequestResult([
770
+ return this.sdk.withdrawalCompressor.getWithdrawalRequestResult(
788
771
  creditAccount,
789
772
  token,
790
- amount
791
- ]);
792
- return resp;
773
+ amount,
774
+ intent
775
+ );
793
776
  }
794
777
  /**
795
778
  * {@inheritDoc ICreditAccountsService.getPendingWithdrawals}
@@ -797,96 +780,59 @@ class CreditAccountsServiceV310 extends SDKConstruct {
797
780
  async getPendingWithdrawals({
798
781
  creditAccount
799
782
  }) {
800
- const compressor = getWithdrawalCompressorAddress(this.sdk.chainId);
801
- if (!compressor)
802
- throw new Error(
803
- `No compressor for current chain ${this.sdk.networkType}`
804
- );
805
- const contract = getContract({
806
- address: compressor.address,
807
- abi: compressor.version === 310 ? iWithdrawalCompressorV310Abi : iWithdrawalCompressorV311Abi,
808
- client: this.client
809
- });
810
- const resp = await contract.read.getCurrentWithdrawals([creditAccount]);
811
- const claimableNow = resp?.[0] || [];
812
- const pendingResult = [...resp?.[1] || []].sort(
813
- (a, b) => a.claimableAt < b.claimableAt ? -1 : 1
814
- );
815
- const respResult = {
816
- claimableNow: [...claimableNow],
817
- pending: pendingResult
783
+ const { claimable, pending } = await this.sdk.withdrawalCompressor.getCurrentWithdrawals(creditAccount);
784
+ return {
785
+ claimableNow: claimable,
786
+ pending
818
787
  };
819
- return respResult;
820
788
  }
821
789
  /**
822
- * {@inheritDoc ICreditAccountsService.startDelayedWithdrawal}
790
+ * {@inheritDoc ICreditAccountsService.assembleStartDelayedWithdrawalCalls}
823
791
  **/
824
- async startDelayedWithdrawal({
825
- creditAccount,
826
- minQuota,
827
- averageQuota,
792
+ assembleStartDelayedWithdrawalCalls({
793
+ creditFacade,
828
794
  preview
829
795
  }) {
830
- const cm = this.sdk.marketRegister.findCreditManager(
831
- creditAccount.creditManager
832
- );
833
796
  const record = preview.outputs.reduce((acc, o) => {
834
797
  const token = o.token.toLowerCase();
835
798
  acc[token] = (acc[token] || 0n) + o.amount;
836
799
  return acc;
837
800
  }, {});
838
801
  const balances = Object.entries(record).filter(([, a]) => a > 10n);
802
+ const deltas = balances.map(
803
+ ([token, amount]) => ({
804
+ token,
805
+ amount: amount > 10n ? amount - 10n : 0n
806
+ })
807
+ );
808
+ if (preview.amountIn > 0n) {
809
+ deltas.push({ token: preview.token, amount: -preview.amountIn });
810
+ }
839
811
  const storeExpectedBalances = {
840
- target: cm.creditFacade.address,
812
+ target: creditFacade,
841
813
  callData: encodeFunctionData({
842
814
  abi: iCreditFacadeMulticallV310Abi,
843
815
  functionName: "storeExpectedBalances",
844
- args: [
845
- balances.map(([token, amount]) => ({
846
- token,
847
- amount: amount > 10n ? amount - 10n : 0n
848
- }))
849
- ]
816
+ args: [deltas]
850
817
  })
851
818
  };
852
819
  const compareBalances = {
853
- target: cm.creditFacade.address,
820
+ target: creditFacade,
854
821
  callData: encodeFunctionData({
855
822
  abi: iCreditFacadeMulticallV310Abi,
856
823
  functionName: "compareBalances",
857
824
  args: []
858
825
  })
859
826
  };
860
- const operationCalls = [
861
- storeExpectedBalances,
862
- ...preview.requestCalls,
863
- compareBalances,
864
- ...this.#prepareUpdateQuotas(creditAccount.creditFacade, {
865
- minQuota,
866
- averageQuota
867
- })
868
- ];
869
- const calls = await this.#prependPriceUpdates(
870
- creditAccount.creditManager,
871
- operationCalls,
872
- creditAccount
873
- );
874
- const tx = await this.#multicallTx(cm, creditAccount.creditAccount, calls);
875
- return { tx, calls, creditFacade: cm.creditFacade };
827
+ return [storeExpectedBalances, ...preview.requestCalls, compareBalances];
876
828
  }
877
829
  /**
878
- * {@inheritDoc ICreditAccountsService.claimDelayed}
830
+ * {@inheritDoc ICreditAccountsService.assembleClaimDelayedCalls}
879
831
  **/
880
- async claimDelayed({
881
- creditAccount,
882
- minQuota,
883
- averageQuota,
832
+ assembleClaimDelayedCalls({
833
+ creditFacade,
884
834
  claimableNow
885
835
  }) {
886
- const zeroDebt = creditAccount.debt === 0n;
887
- const cm = this.sdk.marketRegister.findCreditManager(
888
- creditAccount.creditManager
889
- );
890
836
  const record = claimableNow.outputs.reduce(
891
837
  (acc, o) => {
892
838
  const token = o.token.toLowerCase();
@@ -896,35 +842,88 @@ class CreditAccountsServiceV310 extends SDKConstruct {
896
842
  {}
897
843
  );
898
844
  const balances = Object.entries(record).filter(([, a]) => a > 10n);
845
+ const deltas = balances.map(
846
+ ([token, amount]) => ({
847
+ token,
848
+ amount: amount > 10n ? amount - 10n : 0n
849
+ })
850
+ );
851
+ if (claimableNow.withdrawalTokenSpent > 0n) {
852
+ deltas.push({
853
+ token: claimableNow.withdrawalPhantomToken,
854
+ amount: -claimableNow.withdrawalTokenSpent
855
+ });
856
+ }
899
857
  const storeExpectedBalances = {
900
- target: cm.creditFacade.address,
858
+ target: creditFacade,
901
859
  callData: encodeFunctionData({
902
860
  abi: iCreditFacadeMulticallV310Abi,
903
861
  functionName: "storeExpectedBalances",
904
- args: [
905
- balances.map(([token, amount]) => ({
906
- token,
907
- amount: amount > 10n ? amount - 10n : 0n
908
- }))
909
- ]
862
+ args: [deltas]
910
863
  })
911
864
  };
912
865
  const compareBalances = {
913
- target: cm.creditFacade.address,
866
+ target: creditFacade,
914
867
  callData: encodeFunctionData({
915
868
  abi: iCreditFacadeMulticallV310Abi,
916
869
  functionName: "compareBalances",
917
870
  args: []
918
871
  })
919
872
  };
920
- const quotaCalls = zeroDebt ? [] : this.#prepareUpdateQuotas(creditAccount.creditFacade, {
873
+ return [storeExpectedBalances, ...claimableNow.claimCalls, compareBalances];
874
+ }
875
+ /**
876
+ * {@inheritDoc ICreditAccountsService.startDelayedWithdrawal}
877
+ **/
878
+ async startDelayedWithdrawal({
879
+ creditAccount,
880
+ minQuota,
881
+ averageQuota,
882
+ preview
883
+ }) {
884
+ const cm = this.sdk.marketRegister.findCreditManager(
885
+ creditAccount.creditManager
886
+ );
887
+ const operationCalls = [
888
+ ...this.assembleStartDelayedWithdrawalCalls({
889
+ creditFacade: cm.creditFacade.address,
890
+ preview
891
+ }),
892
+ ...this.#prepareUpdateQuotas(cm.creditFacade.address, {
893
+ minQuota,
894
+ averageQuota
895
+ })
896
+ ];
897
+ const calls = await this.#prependPriceUpdates(
898
+ creditAccount.creditManager,
899
+ operationCalls,
900
+ creditAccount
901
+ );
902
+ const tx = await this.#multicallTx(cm, creditAccount.creditAccount, calls);
903
+ return { tx, calls, creditFacade: cm.creditFacade };
904
+ }
905
+ /**
906
+ * {@inheritDoc ICreditAccountsService.claimDelayed}
907
+ **/
908
+ async claimDelayed({
909
+ creditAccount,
910
+ minQuota,
911
+ averageQuota,
912
+ claimableNow
913
+ }) {
914
+ const zeroDebt = creditAccount.debt === 0n;
915
+ const cm = this.sdk.marketRegister.findCreditManager(
916
+ creditAccount.creditManager
917
+ );
918
+ const quotaCalls = zeroDebt ? [] : this.#prepareUpdateQuotas(cm.creditFacade.address, {
921
919
  minQuota,
922
920
  averageQuota
923
921
  });
924
922
  const operationCalls = [
925
- storeExpectedBalances,
926
- ...claimableNow.claimCalls,
927
- compareBalances,
923
+ ...this.assembleClaimDelayedCalls({
924
+ creditFacade: cm.creditFacade.address,
925
+ claimableNow
926
+ }),
928
927
  ...quotaCalls
929
928
  ];
930
929
  const calls = zeroDebt ? operationCalls : await this.#prependPriceUpdates(
@@ -1280,13 +1279,13 @@ class CreditAccountsServiceV310 extends SDKConstruct {
1280
1279
  const operationCalls = [
1281
1280
  ...assetsToWithdraw.map(
1282
1281
  (a) => this.#prepareWithdrawToken(
1283
- creditAccount.creditFacade,
1282
+ cm.creditFacade.address,
1284
1283
  a.token,
1285
1284
  a.balance,
1286
1285
  to
1287
1286
  )
1288
1287
  ),
1289
- ...this.#prepareUpdateQuotas(creditAccount.creditFacade, {
1288
+ ...this.#prepareUpdateQuotas(cm.creditFacade.address, {
1290
1289
  minQuota,
1291
1290
  averageQuota
1292
1291
  })
@@ -1302,8 +1301,23 @@ class CreditAccountsServiceV310 extends SDKConstruct {
1302
1301
  /**
1303
1302
  * {@inheritDoc ICreditAccountsService.repayCreditAccount}
1304
1303
  */
1305
- async repayCreditAccount({
1306
- operation,
1304
+ async repayCreditAccount(props) {
1305
+ const { operation, creditAccount: ca } = props;
1306
+ const cm = this.sdk.marketRegister.findCreditManager(ca.creditManager);
1307
+ const operationCalls = await this.assembleRepayCreditAccountCalls(props);
1308
+ const calls = operation === "close" ? operationCalls : await this.#prependPriceUpdates(ca.creditManager, operationCalls, ca);
1309
+ const tx = await this.#closeCreditAccountTx(
1310
+ cm,
1311
+ ca.creditAccount,
1312
+ calls,
1313
+ operation
1314
+ );
1315
+ return { tx, calls, creditFacade: cm.creditFacade };
1316
+ }
1317
+ /**
1318
+ * {@inheritDoc ICreditAccountsService.assembleRepayCreditAccountCalls}
1319
+ */
1320
+ async assembleRepayCreditAccountCalls({
1307
1321
  collateralAssets,
1308
1322
  assetsToWithdraw,
1309
1323
  creditAccount: ca,
@@ -1312,7 +1326,6 @@ class CreditAccountsServiceV310 extends SDKConstruct {
1312
1326
  tokensToClaim,
1313
1327
  calls: wrapCalls = []
1314
1328
  }) {
1315
- const cm = this.sdk.marketRegister.findCreditManager(ca.creditManager);
1316
1329
  const addCollateral = collateralAssets.filter((a) => a.balance > 0);
1317
1330
  const router = this.sdk.routerFor(ca);
1318
1331
  const unwrapCalls = await this.getRedeemDiffCalls(1n, ca.creditManager) ?? [];
@@ -1331,14 +1344,7 @@ class CreditAccountsServiceV310 extends SDKConstruct {
1331
1344
  (t) => this.#prepareWithdrawToken(ca.creditFacade, t.token, MAX_UINT256, to)
1332
1345
  )
1333
1346
  ];
1334
- const calls = operation === "close" ? operationCalls : await this.#prependPriceUpdates(ca.creditManager, operationCalls, ca);
1335
- const tx = await this.#closeCreditAccountTx(
1336
- cm,
1337
- ca.creditAccount,
1338
- calls,
1339
- operation
1340
- );
1341
- return { tx, calls, creditFacade: cm.creditFacade };
1347
+ return operationCalls;
1342
1348
  }
1343
1349
  /**
1344
1350
  * {@inheritDoc ICreditAccountsService.repayAndLiquidateCreditAccount}
@@ -1559,19 +1565,13 @@ class CreditAccountsServiceV310 extends SDKConstruct {
1559
1565
  );
1560
1566
  }
1561
1567
  /**
1562
- * {@inheritDoc ICreditAccountsService.assembleCaUpdateCalls}
1568
+ * {@inheritDoc ICreditAccountsService.assembleCaOperations}
1563
1569
  */
1564
- assembleCaUpdateCalls({
1570
+ assembleCaOperations({
1565
1571
  operations,
1566
- routerCallGroups,
1567
- creditFacade,
1568
- withdrawTo,
1569
- creditAccount,
1570
- underlyingToken
1572
+ creditFacade
1571
1573
  }) {
1572
1574
  const calls = [];
1573
- let swapGroupIndex = 0;
1574
- let routerGroupsConsumed = 0;
1575
1575
  for (const op of operations) {
1576
1576
  switch (op.type) {
1577
1577
  case "increaseDebt":
@@ -1595,22 +1595,15 @@ class CreditAccountsServiceV310 extends SDKConstruct {
1595
1595
  creditFacade,
1596
1596
  op.token,
1597
1597
  op.amount,
1598
- withdrawTo
1598
+ op.to
1599
1599
  )
1600
1600
  );
1601
1601
  break;
1602
- case "swap": {
1603
- const routerCalls = routerCallGroups[swapGroupIndex];
1604
- if (!routerCalls) {
1605
- throw new Error(
1606
- `assembleCaUpdateCalls: missing router calls for swap leg ${swapGroupIndex}`
1607
- );
1608
- }
1609
- calls.push(...routerCalls);
1610
- swapGroupIndex += 1;
1611
- routerGroupsConsumed += 1;
1602
+ case "swap":
1603
+ case "wrapRwaCollateral":
1604
+ case "unwrapRwaCollateral":
1605
+ calls.push(...op.calls);
1612
1606
  break;
1613
- }
1614
1607
  case "changeQuota": {
1615
1608
  const quotaAssets = [...op.quotaIncrease, ...op.quotaDecrease];
1616
1609
  if (quotaAssets.length === 0) {
@@ -1624,58 +1617,14 @@ class CreditAccountsServiceV310 extends SDKConstruct {
1624
1617
  );
1625
1618
  break;
1626
1619
  }
1627
- case "closeCreditAccount": {
1628
- for (const group of routerCallGroups) {
1629
- calls.push(...group);
1630
- routerGroupsConsumed += 1;
1631
- }
1632
- calls.push(
1633
- ...this.#prepareDisableQuotas({
1634
- creditFacade,
1635
- tokens: Object.entries(creditAccount.initialQuotas).map(
1636
- ([token, { quota }]) => ({
1637
- token,
1638
- quota
1639
- })
1640
- )
1641
- })
1642
- );
1643
- if (creditAccount.debt > 0n) {
1644
- calls.push(
1645
- ...this.#prepareDecreaseDebt({
1646
- creditFacade,
1647
- debt: creditAccount.debt
1648
- })
1649
- );
1650
- }
1651
- const hasAssets = creditAccount.assets.some(
1652
- (asset) => asset.balance > 0n
1653
- );
1654
- if (hasAssets) {
1655
- calls.push(
1656
- this.#prepareWithdrawToken(
1657
- creditFacade,
1658
- underlyingToken,
1659
- MAX_UINT256,
1660
- withdrawTo
1661
- )
1662
- );
1663
- }
1664
- break;
1665
- }
1666
1620
  default: {
1667
1621
  const _exhaustive = op;
1668
1622
  throw new Error(
1669
- `assembleCaUpdateCalls: unsupported operation ${_exhaustive}`
1623
+ `assembleCaOperations: unsupported operation ${JSON.stringify(_exhaustive)}`
1670
1624
  );
1671
1625
  }
1672
1626
  }
1673
1627
  }
1674
- if (routerGroupsConsumed !== routerCallGroups.length) {
1675
- throw new Error(
1676
- `assembleCaUpdateCalls: router call group mismatch (consumed ${routerGroupsConsumed}, got ${routerCallGroups.length})`
1677
- );
1678
- }
1679
1628
  return calls;
1680
1629
  }
1681
1630
  /**
@@ -1718,10 +1667,10 @@ class CreditAccountsServiceV310 extends SDKConstruct {
1718
1667
  return calls;
1719
1668
  }
1720
1669
  #prepareUpdateQuotas(creditFacade, { averageQuota, minQuota }) {
1721
- const minRecord = assetsMap(minQuota);
1670
+ const minRecord = new AssetsMap(minQuota);
1722
1671
  const calls = averageQuota.map((q) => {
1723
- const minAsset = minRecord.get(q.token);
1724
- const min = minAsset && minAsset?.balance > 0 ? minAsset.balance : 0n;
1672
+ const minBalance = minRecord.get(q.token);
1673
+ const min = minBalance && minBalance > 0n ? minBalance : 0n;
1725
1674
  return {
1726
1675
  target: creditFacade,
1727
1676
  callData: encodeFunctionData({
@@ -1900,6 +1849,5 @@ class CreditAccountsServiceV310 extends SDKConstruct {
1900
1849
  }
1901
1850
  }
1902
1851
  export {
1903
- CreditAccountsServiceV310,
1904
- getWithdrawalCompressorAddress
1852
+ CreditAccountsServiceV310
1905
1853
  };
@@ -1,2 +1,3 @@
1
1
  export * from "./CreditAccountsServiceV310.js";
2
2
  export * from "./types.js";
3
+ export * from "./withdrawal-compressor/index.js";