@gearbox-protocol/sdk 14.12.0-next.2 → 14.12.0-next.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (535) hide show
  1. package/dist/cjs/abi/IWithdrawalCompressorV313.js +229 -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 +45 -1
  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 +271 -0
  11. package/dist/cjs/history/classifyMulticallOperations.js +2 -0
  12. package/dist/cjs/history/mapOperations.js +7 -0
  13. package/dist/cjs/{preview/simulate/holders.js → permissionless/bindings/factory/rate-keeper-factory.js} +11 -21
  14. package/dist/cjs/permissionless/bindings/market-configurator.js +11 -0
  15. package/dist/cjs/plugins/adapters/abi/actionAbi.js +1 -10
  16. package/dist/cjs/plugins/adapters/abi/adapters/erc4626ReferralAdapter.js +332 -0
  17. package/dist/cjs/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.js +436 -0
  18. package/dist/cjs/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.js +183 -0
  19. package/dist/cjs/plugins/adapters/abi/adapters/iCamelotV3Adapter.js +586 -0
  20. package/dist/cjs/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.js +385 -0
  21. package/dist/cjs/plugins/adapters/abi/adapters/iConvexV1BoosterAdapter.js +143 -0
  22. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.js +708 -0
  23. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.js +708 -0
  24. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.js +708 -0
  25. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.js +708 -0
  26. package/dist/cjs/plugins/adapters/abi/adapters/iDaiUsdsAdapter.js +206 -0
  27. package/dist/cjs/plugins/adapters/abi/adapters/iFluidDexAdapter.js +183 -0
  28. package/dist/cjs/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.js +473 -0
  29. package/dist/cjs/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.js +482 -0
  30. package/dist/cjs/plugins/adapters/abi/adapters/iKelpLrtDepositPool.js +333 -0
  31. package/dist/cjs/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.js +488 -0
  32. package/dist/cjs/plugins/adapters/abi/adapters/iLidoV1Adapter.js +171 -0
  33. package/dist/cjs/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.js +269 -0
  34. package/dist/cjs/plugins/adapters/abi/adapters/iMellowClaimerAdapter.js +350 -0
  35. package/dist/cjs/plugins/adapters/abi/adapters/iMellowWrapperAdapter.js +225 -0
  36. package/dist/cjs/plugins/adapters/abi/adapters/iMidasGatewayAdapterV311.js +1015 -0
  37. package/dist/cjs/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.js +262 -0
  38. package/dist/cjs/plugins/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.js +622 -0
  39. package/dist/cjs/plugins/adapters/abi/adapters/iPendleRouterAdapter.js +1787 -0
  40. package/dist/cjs/plugins/adapters/abi/{securitize/iSecuritizeOnRampAdapter.js → adapters/iSecuritizeOnRampAdapterV310.js} +6 -6
  41. package/dist/cjs/plugins/adapters/abi/{securitize/iSecuritizeRedemptionGatewayAdapter.js → adapters/iSecuritizeRedemptionGatewayAdapterV311.js} +26 -6
  42. package/dist/cjs/plugins/adapters/abi/adapters/iStakingRewardsAdapter.js +288 -0
  43. package/dist/cjs/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.js +459 -0
  44. package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV2Adapter.js +290 -0
  45. package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV3Adapter.js +505 -0
  46. package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV4Adapter.js +534 -0
  47. package/dist/cjs/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.js +475 -0
  48. package/dist/cjs/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.js +327 -0
  49. package/dist/cjs/plugins/adapters/abi/adapters/index.js +90 -0
  50. package/dist/cjs/plugins/adapters/abi/adapters/iwstEthv1Adapter.js +183 -0
  51. package/dist/cjs/plugins/adapters/abi/adapters/mellowDvvAdapter.js +319 -0
  52. package/dist/cjs/plugins/adapters/abi/conctructorAbi.js +4 -42
  53. package/dist/cjs/plugins/adapters/abi/conctructorAbiPatterns.js +0 -16
  54. package/dist/cjs/plugins/adapters/abi/index.js +2 -0
  55. package/dist/cjs/plugins/adapters/abi/securitize/{iSecuritizeRedemptionGateway.js → iSecuritizeRedemptionGatewayV311.js} +15 -7
  56. package/dist/cjs/plugins/adapters/abi/securitize/index.js +2 -6
  57. package/dist/cjs/plugins/adapters/abi/targetContractAbi.js +3 -296
  58. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +36 -0
  59. package/dist/cjs/plugins/adapters/contracts/AbstractCurveAdapter.js +66 -0
  60. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +21 -2
  61. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +17 -2
  62. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +22 -2
  63. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +20 -2
  64. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +28 -2
  65. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +4 -9
  66. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +4 -9
  67. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +4 -9
  68. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +4 -9
  69. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +4 -9
  70. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +16 -2
  71. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +24 -2
  72. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +16 -2
  73. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +17 -2
  74. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +23 -2
  75. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +3 -3
  76. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +13 -3
  77. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +3 -3
  78. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +13 -2
  79. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  80. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +17 -2
  81. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +17 -2
  82. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +13 -2
  83. package/dist/cjs/plugins/adapters/contracts/MidasGatewayAdapterContract.js +121 -0
  84. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +13 -3
  85. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +15 -3
  86. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +60 -2
  87. package/dist/cjs/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +13 -2
  88. package/dist/cjs/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +28 -4
  89. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +19 -2
  90. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +12 -2
  91. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +12 -2
  92. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -2
  93. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +18 -3
  94. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +17 -3
  95. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +12 -2
  96. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +17 -2
  97. package/dist/cjs/plugins/adapters/contracts/index.js +2 -12
  98. package/dist/cjs/plugins/adapters/createAdapter.js +3 -10
  99. package/dist/cjs/plugins/adapters/types.js +2 -11
  100. package/dist/cjs/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +20 -37
  101. package/dist/cjs/preview/index.js +5 -3
  102. package/dist/cjs/preview/parse/classifyInnerOperations.js +14 -1
  103. package/dist/cjs/preview/parse/index.js +2 -2
  104. package/dist/cjs/preview/parse/parseFacadeOperationCalldata.js +6 -14
  105. package/dist/cjs/preview/parse/parseOperationCalldata.js +11 -9
  106. package/dist/cjs/preview/parse/parsePoolOperationCalldata.js +5 -2
  107. package/dist/cjs/preview/parse/parseRWAFactoryOperationCalldata.js +104 -0
  108. package/dist/cjs/preview/parse/types-rwa.js +16 -0
  109. package/dist/cjs/preview/parse/types.js +9 -2
  110. package/dist/cjs/preview/prerequisites/AllowancePrerequisite.js +20 -43
  111. package/dist/cjs/preview/prerequisites/BalancePrerequisite.js +25 -39
  112. package/dist/cjs/preview/prerequisites/Prerequisite.js +10 -35
  113. package/dist/cjs/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +71 -0
  114. package/dist/cjs/preview/prerequisites/buildCollateralPrerequisites.js +55 -0
  115. package/dist/cjs/preview/prerequisites/{prepareAction.js → buildPartialLiquidationPrerequisites.js} +16 -24
  116. package/dist/cjs/preview/prerequisites/buildPoolPrerequisites.js +114 -0
  117. package/dist/cjs/preview/prerequisites/buildRWAPrerequisites.js +59 -0
  118. package/dist/cjs/preview/prerequisites/checkPrerequisites.js +85 -0
  119. package/dist/cjs/preview/prerequisites/helpers.js +36 -0
  120. package/dist/cjs/preview/prerequisites/index.js +4 -6
  121. package/dist/cjs/preview/preview/applyInnerOperations.js +141 -0
  122. package/dist/cjs/preview/preview/applyRWAWrapUnwrap.js +74 -0
  123. package/dist/cjs/preview/preview/detectCloseOrRepay.js +51 -0
  124. package/dist/cjs/preview/preview/errors.js +52 -0
  125. package/dist/cjs/preview/preview/index.js +34 -0
  126. package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +90 -0
  127. package/dist/cjs/preview/preview/previewCloseOrRepayCreditAccount.js +94 -0
  128. package/dist/cjs/preview/preview/previewOpenCreditAccount.js +67 -0
  129. package/dist/cjs/preview/preview/previewOperation.js +53 -0
  130. package/dist/cjs/preview/preview/previewPoolOperation.js +42 -0
  131. package/dist/cjs/preview/preview/types.js +16 -0
  132. package/dist/cjs/preview/preview/unwrapNativeCollateral.js +45 -0
  133. package/dist/cjs/preview/simulate/index.js +5 -2
  134. package/dist/cjs/preview/simulate/simulateOperation.js +4 -0
  135. package/dist/cjs/preview/simulate/simulatePoolOperation.js +20 -119
  136. package/dist/cjs/preview/simulate/simulateRWAOperation.js +30 -0
  137. package/dist/cjs/preview/types.js +16 -0
  138. package/dist/cjs/sdk/OnchainSDK.js +11 -0
  139. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +76 -149
  140. package/dist/cjs/sdk/accounts/index.js +3 -1
  141. package/dist/cjs/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +224 -0
  142. package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +40 -0
  143. package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +40 -0
  144. package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +40 -0
  145. package/dist/cjs/{preview/parse/extractExpectedBalanceChanges.js → sdk/accounts/withdrawal-compressor/addresses.js} +24 -20
  146. package/dist/cjs/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.js +53 -0
  147. package/dist/cjs/sdk/accounts/withdrawal-compressor/index.js +36 -0
  148. package/dist/cjs/sdk/accounts/withdrawal-compressor/intent-codec.js +118 -0
  149. package/dist/cjs/sdk/accounts/withdrawal-compressor/types.js +16 -0
  150. package/dist/cjs/sdk/base/BaseContract.js +4 -2
  151. package/dist/cjs/sdk/base/ChainContractsRegister.js +1 -0
  152. package/dist/cjs/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +56 -4
  153. package/dist/cjs/sdk/market/rwa/types.js +5 -2
  154. package/dist/cjs/sdk/market/zapper/ZapperContract.js +0 -3
  155. package/dist/cjs/sdk/router/AbstractRouterContract.js +21 -27
  156. package/dist/cjs/sdk/router/RouterV310Contract.js +11 -12
  157. package/dist/cjs/sdk/router/helpers.js +0 -5
  158. package/dist/cjs/sdk/utils/AddressMap.js +6 -0
  159. package/dist/cjs/sdk/utils/AddressSet.js +7 -0
  160. package/dist/cjs/sdk/utils/AssetsMap.js +97 -0
  161. package/dist/cjs/sdk/utils/index.js +2 -0
  162. package/dist/esm/abi/IWithdrawalCompressorV313.js +205 -0
  163. package/dist/esm/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +45 -1
  164. package/dist/esm/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.js +45 -1
  165. package/dist/esm/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.js +45 -1
  166. package/dist/esm/abi/compressors/withdrawalCompressor.js +45 -1
  167. package/dist/esm/abi/ierc4626Adapter.js +240 -0
  168. package/dist/esm/dev/AccountOpener.js +8 -13
  169. package/dist/esm/dev/index.js +1 -0
  170. package/dist/esm/dev/withdrawalAbi.js +2074 -0
  171. package/dist/esm/dev/withdrawalUtils.js +259 -0
  172. package/dist/esm/history/classifyMulticallOperations.js +2 -0
  173. package/dist/esm/history/mapOperations.js +7 -0
  174. package/dist/esm/permissionless/bindings/factory/rate-keeper-factory.js +11 -0
  175. package/dist/esm/permissionless/bindings/market-configurator.js +11 -0
  176. package/dist/esm/plugins/adapters/abi/actionAbi.js +1 -10
  177. package/dist/esm/plugins/adapters/abi/adapters/erc4626ReferralAdapter.js +308 -0
  178. package/dist/esm/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.js +412 -0
  179. package/dist/esm/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.js +159 -0
  180. package/dist/esm/plugins/adapters/abi/adapters/iCamelotV3Adapter.js +562 -0
  181. package/dist/esm/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.js +361 -0
  182. package/dist/esm/plugins/adapters/abi/adapters/iConvexV1BoosterAdapter.js +119 -0
  183. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.js +684 -0
  184. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.js +684 -0
  185. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.js +684 -0
  186. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.js +684 -0
  187. package/dist/esm/plugins/adapters/abi/adapters/iDaiUsdsAdapter.js +182 -0
  188. package/dist/esm/plugins/adapters/abi/adapters/iFluidDexAdapter.js +159 -0
  189. package/dist/esm/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.js +449 -0
  190. package/dist/esm/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.js +457 -0
  191. package/dist/esm/plugins/adapters/abi/adapters/iKelpLrtDepositPool.js +308 -0
  192. package/dist/esm/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.js +463 -0
  193. package/dist/esm/plugins/adapters/abi/adapters/iLidoV1Adapter.js +147 -0
  194. package/dist/esm/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.js +245 -0
  195. package/dist/esm/plugins/adapters/abi/adapters/iMellowClaimerAdapter.js +326 -0
  196. package/dist/esm/plugins/adapters/abi/adapters/iMellowWrapperAdapter.js +201 -0
  197. package/dist/esm/plugins/adapters/abi/adapters/iMidasGatewayAdapterV311.js +990 -0
  198. package/dist/esm/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.js +238 -0
  199. package/dist/esm/plugins/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.js +597 -0
  200. package/dist/esm/plugins/adapters/abi/adapters/iPendleRouterAdapter.js +1763 -0
  201. package/dist/esm/plugins/adapters/abi/{securitize/iSecuritizeOnRampAdapter.js → adapters/iSecuritizeOnRampAdapterV310.js} +2 -2
  202. package/dist/esm/plugins/adapters/abi/{securitize/iSecuritizeRedemptionGatewayAdapter.js → adapters/iSecuritizeRedemptionGatewayAdapterV311.js} +22 -2
  203. package/dist/esm/plugins/adapters/abi/adapters/iStakingRewardsAdapter.js +264 -0
  204. package/dist/esm/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.js +435 -0
  205. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV2Adapter.js +266 -0
  206. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV3Adapter.js +481 -0
  207. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV4Adapter.js +509 -0
  208. package/dist/esm/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.js +450 -0
  209. package/dist/esm/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.js +303 -0
  210. package/dist/esm/plugins/adapters/abi/adapters/index.js +35 -0
  211. package/dist/esm/plugins/adapters/abi/adapters/iwstEthv1Adapter.js +159 -0
  212. package/dist/esm/plugins/adapters/abi/adapters/mellowDvvAdapter.js +295 -0
  213. package/dist/esm/plugins/adapters/abi/conctructorAbi.js +4 -44
  214. package/dist/esm/plugins/adapters/abi/conctructorAbiPatterns.js +0 -14
  215. package/dist/esm/plugins/adapters/abi/index.js +1 -0
  216. package/dist/esm/plugins/adapters/abi/securitize/{iSecuritizeRedemptionGateway.js → iSecuritizeRedemptionGatewayV311.js} +11 -3
  217. package/dist/esm/plugins/adapters/abi/securitize/index.js +1 -3
  218. package/dist/esm/plugins/adapters/abi/targetContractAbi.js +2 -291
  219. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +36 -0
  220. package/dist/esm/plugins/adapters/contracts/AbstractCurveAdapter.js +42 -0
  221. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +23 -2
  222. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +19 -2
  223. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +24 -2
  224. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +23 -2
  225. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +30 -2
  226. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +3 -8
  227. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +3 -8
  228. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +3 -8
  229. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +3 -8
  230. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +3 -8
  231. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +18 -2
  232. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +27 -2
  233. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +18 -2
  234. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +19 -2
  235. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +25 -2
  236. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +4 -4
  237. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +16 -4
  238. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +4 -4
  239. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +15 -2
  240. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +1 -1
  241. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +19 -2
  242. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +19 -2
  243. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +15 -2
  244. package/dist/esm/plugins/adapters/contracts/MidasGatewayAdapterContract.js +104 -0
  245. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +17 -5
  246. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +20 -6
  247. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +62 -2
  248. package/dist/esm/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +16 -3
  249. package/dist/esm/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +31 -5
  250. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +21 -2
  251. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +14 -2
  252. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +11 -1
  253. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +21 -1
  254. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +20 -3
  255. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +20 -4
  256. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +14 -2
  257. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +19 -2
  258. package/dist/esm/plugins/adapters/contracts/index.js +1 -6
  259. package/dist/esm/plugins/adapters/createAdapter.js +4 -13
  260. package/dist/esm/plugins/adapters/types.js +2 -11
  261. package/dist/esm/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +21 -39
  262. package/dist/esm/preview/index.js +2 -1
  263. package/dist/esm/preview/parse/classifyInnerOperations.js +14 -1
  264. package/dist/esm/preview/parse/index.js +1 -1
  265. package/dist/esm/preview/parse/parseFacadeOperationCalldata.js +6 -14
  266. package/dist/esm/preview/parse/parseOperationCalldata.js +12 -9
  267. package/dist/esm/preview/parse/parsePoolOperationCalldata.js +5 -2
  268. package/dist/esm/preview/parse/parseRWAFactoryOperationCalldata.js +85 -0
  269. package/dist/esm/preview/parse/types-rwa.js +0 -0
  270. package/dist/esm/preview/parse/types.js +6 -1
  271. package/dist/esm/preview/prerequisites/AllowancePrerequisite.js +21 -47
  272. package/dist/esm/preview/prerequisites/BalancePrerequisite.js +26 -43
  273. package/dist/esm/preview/prerequisites/Prerequisite.js +10 -37
  274. package/dist/esm/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +47 -0
  275. package/dist/esm/preview/prerequisites/buildCollateralPrerequisites.js +33 -0
  276. package/dist/esm/preview/prerequisites/buildPartialLiquidationPrerequisites.js +16 -0
  277. package/dist/esm/preview/prerequisites/buildPoolPrerequisites.js +90 -0
  278. package/dist/esm/preview/prerequisites/buildRWAPrerequisites.js +35 -0
  279. package/dist/esm/preview/prerequisites/checkPrerequisites.js +61 -0
  280. package/dist/esm/preview/prerequisites/helpers.js +14 -0
  281. package/dist/esm/preview/prerequisites/index.js +2 -3
  282. package/dist/esm/preview/preview/applyInnerOperations.js +122 -0
  283. package/dist/esm/preview/preview/applyRWAWrapUnwrap.js +50 -0
  284. package/dist/esm/preview/preview/detectCloseOrRepay.js +26 -0
  285. package/dist/esm/preview/preview/errors.js +27 -0
  286. package/dist/esm/preview/preview/index.js +7 -0
  287. package/dist/esm/preview/preview/previewAdjustCreditAccount.js +74 -0
  288. package/dist/esm/preview/preview/previewCloseOrRepayCreditAccount.js +76 -0
  289. package/dist/esm/preview/preview/previewOpenCreditAccount.js +49 -0
  290. package/dist/esm/preview/preview/previewOperation.js +29 -0
  291. package/dist/esm/preview/preview/previewPoolOperation.js +18 -0
  292. package/dist/esm/preview/preview/types.js +0 -0
  293. package/dist/esm/preview/preview/unwrapNativeCollateral.js +21 -0
  294. package/dist/esm/preview/simulate/index.js +3 -1
  295. package/dist/esm/preview/simulate/simulateOperation.js +5 -1
  296. package/dist/esm/preview/simulate/simulatePoolOperation.js +21 -123
  297. package/dist/esm/preview/simulate/simulateRWAOperation.js +6 -0
  298. package/dist/esm/preview/types.js +0 -0
  299. package/dist/esm/sdk/OnchainSDK.js +13 -1
  300. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +72 -144
  301. package/dist/esm/sdk/accounts/index.js +1 -0
  302. package/dist/esm/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +200 -0
  303. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +16 -0
  304. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +16 -0
  305. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +16 -0
  306. package/dist/esm/sdk/accounts/withdrawal-compressor/addresses.js +28 -0
  307. package/dist/esm/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.js +29 -0
  308. package/dist/esm/sdk/accounts/withdrawal-compressor/index.js +8 -0
  309. package/dist/esm/sdk/accounts/withdrawal-compressor/intent-codec.js +91 -0
  310. package/dist/esm/sdk/accounts/withdrawal-compressor/types.js +0 -0
  311. package/dist/esm/sdk/base/BaseContract.js +4 -2
  312. package/dist/esm/sdk/base/ChainContractsRegister.js +1 -0
  313. package/dist/esm/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +59 -5
  314. package/dist/esm/sdk/market/rwa/types.js +5 -2
  315. package/dist/esm/sdk/market/zapper/ZapperContract.js +0 -3
  316. package/dist/esm/sdk/router/AbstractRouterContract.js +25 -29
  317. package/dist/esm/sdk/router/RouterV310Contract.js +11 -12
  318. package/dist/esm/sdk/router/helpers.js +0 -4
  319. package/dist/esm/sdk/utils/AddressMap.js +6 -0
  320. package/dist/esm/sdk/utils/AddressSet.js +7 -0
  321. package/dist/esm/sdk/utils/AssetsMap.js +73 -0
  322. package/dist/esm/sdk/utils/index.js +1 -0
  323. package/dist/types/abi/IWithdrawalCompressorV313.d.ts +289 -0
  324. package/dist/types/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.d.ts +77 -0
  325. package/dist/types/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.d.ts +77 -0
  326. package/dist/types/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.d.ts +77 -0
  327. package/dist/types/abi/compressors/withdrawalCompressor.d.ts +77 -0
  328. package/dist/types/abi/ierc4626Adapter.d.ts +179 -0
  329. package/dist/types/common-utils/utils/creditAccount/sort.d.ts +3 -3
  330. package/dist/types/common-utils/utils/strategies/assets/assets.d.ts +1 -1
  331. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +1 -1
  332. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-eligible.d.ts +1 -1
  333. package/dist/types/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.d.ts +1 -1
  334. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +1 -1
  335. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +1 -1
  336. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +1 -1
  337. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +1 -1
  338. package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +1 -1
  339. package/dist/types/common-utils/utils/validation/validate-balances.d.ts +1 -1
  340. package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +1 -1
  341. package/dist/types/common-utils/utils/validation/validate-quota.d.ts +1 -1
  342. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.d.ts +1 -1
  343. package/dist/types/dev/abi.d.ts +4 -4
  344. package/dist/types/dev/index.d.ts +1 -0
  345. package/dist/types/dev/providers.d.ts +1 -1
  346. package/dist/types/dev/withdrawalAbi.d.ts +1584 -0
  347. package/dist/types/dev/withdrawalUtils.d.ts +19 -0
  348. package/dist/types/history/types.d.ts +4 -4
  349. package/dist/types/permissionless/bindings/bytecode-repository.d.ts +9 -9
  350. package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +77 -0
  351. package/dist/types/permissionless/bindings/factory/rate-keeper-factory.d.ts +179 -0
  352. package/dist/types/permissionless/bindings/market-configurator.d.ts +2 -0
  353. package/dist/types/permissionless/bindings/treasury-splitter.d.ts +1 -1
  354. package/dist/types/plugins/adapters/abi/adapters/erc4626ReferralAdapter.d.ts +231 -0
  355. package/dist/types/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.d.ts +314 -0
  356. package/dist/types/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.d.ts +117 -0
  357. package/dist/types/plugins/adapters/abi/adapters/iCamelotV3Adapter.d.ts +428 -0
  358. package/dist/types/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.d.ts +271 -0
  359. package/dist/types/plugins/adapters/abi/adapters/iConvexV1BoosterAdapter.d.ts +204 -0
  360. package/dist/types/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.d.ts +519 -0
  361. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.d.ts +519 -0
  362. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.d.ts +519 -0
  363. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.d.ts +519 -0
  364. package/dist/types/plugins/adapters/abi/adapters/iDaiUsdsAdapter.d.ts +135 -0
  365. package/dist/types/plugins/adapters/abi/adapters/iFluidDexAdapter.d.ts +119 -0
  366. package/dist/types/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.d.ts +338 -0
  367. package/dist/types/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.d.ts +346 -0
  368. package/dist/types/plugins/adapters/abi/adapters/iKelpLrtDepositPool.d.ts +233 -0
  369. package/dist/types/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.d.ts +349 -0
  370. package/dist/types/plugins/adapters/abi/adapters/iLidoV1Adapter.d.ts +109 -0
  371. package/dist/types/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.d.ts +183 -0
  372. package/dist/types/plugins/adapters/abi/adapters/iMellowClaimerAdapter.d.ts +247 -0
  373. package/dist/types/plugins/adapters/abi/adapters/iMellowWrapperAdapter.d.ts +151 -0
  374. package/dist/types/plugins/adapters/abi/adapters/iMidasGatewayAdapterV311.d.ts +754 -0
  375. package/dist/types/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.d.ts +180 -0
  376. package/dist/types/plugins/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.d.ts +453 -0
  377. package/dist/types/plugins/adapters/abi/adapters/iPendleRouterAdapter.d.ts +1366 -0
  378. package/dist/types/plugins/adapters/abi/{securitize/iSecuritizeOnRampAdapter.d.ts → adapters/iSecuritizeOnRampAdapterV310.d.ts} +1 -1
  379. package/dist/types/plugins/adapters/abi/{securitize/iSecuritizeRedemptionGatewayAdapter.d.ts → adapters/iSecuritizeRedemptionGatewayAdapterV311.d.ts} +37 -1
  380. package/dist/types/plugins/adapters/abi/adapters/iStakingRewardsAdapter.d.ts +197 -0
  381. package/dist/types/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.d.ts +333 -0
  382. package/dist/types/plugins/adapters/abi/adapters/iUniswapV2Adapter.d.ts +202 -0
  383. package/dist/types/plugins/adapters/abi/adapters/iUniswapV3Adapter.d.ts +367 -0
  384. package/dist/types/plugins/adapters/abi/adapters/iUniswapV4Adapter.d.ts +390 -0
  385. package/dist/types/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.d.ts +336 -0
  386. package/dist/types/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.d.ts +232 -0
  387. package/dist/types/plugins/adapters/abi/adapters/index.d.ts +35 -0
  388. package/dist/types/plugins/adapters/abi/adapters/iwstEthv1Adapter.d.ts +117 -0
  389. package/dist/types/plugins/adapters/abi/adapters/mellowDvvAdapter.d.ts +221 -0
  390. package/dist/types/plugins/adapters/abi/conctructorAbiPatterns.d.ts +0 -26
  391. package/dist/types/plugins/adapters/abi/index.d.ts +1 -0
  392. package/dist/types/plugins/adapters/abi/securitize/{iSecuritizeRedemptionGateway.d.ts → iSecuritizeRedemptionGatewayV311.d.ts} +15 -1
  393. package/dist/types/plugins/adapters/abi/securitize/index.d.ts +1 -3
  394. package/dist/types/plugins/adapters/abi/targetContractAbi.d.ts +1 -477
  395. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +21 -3
  396. package/dist/types/plugins/adapters/contracts/AbstractCurveAdapter.d.ts +18 -0
  397. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +9 -7
  398. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +7 -5
  399. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +9 -7
  400. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +9 -7
  401. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +13 -11
  402. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +8 -11
  403. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +8 -11
  404. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +8 -11
  405. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +3 -6
  406. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +8 -11
  407. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +8 -6
  408. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +14 -6
  409. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +8 -6
  410. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +8 -6
  411. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +9 -7
  412. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +3 -3
  413. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +7 -5
  414. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +5 -5
  415. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +9 -7
  416. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +3 -3
  417. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +8 -6
  418. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +9 -7
  419. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +7 -5
  420. package/dist/types/plugins/adapters/contracts/MidasGatewayAdapterContract.d.ts +790 -0
  421. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +9 -7
  422. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +9 -7
  423. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +9 -7
  424. package/dist/types/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +8 -6
  425. package/dist/types/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +59 -7
  426. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +9 -7
  427. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +9 -7
  428. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +8 -6
  429. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +8 -6
  430. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +9 -7
  431. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +9 -7
  432. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +9 -7
  433. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +7 -5
  434. package/dist/types/plugins/adapters/contracts/index.d.ts +1 -6
  435. package/dist/types/plugins/adapters/types.d.ts +31 -13
  436. package/dist/types/plugins/delayed-withdrawal/types.d.ts +4 -17
  437. package/dist/types/preview/index.d.ts +2 -1
  438. package/dist/types/preview/parse/classifyInnerOperations.d.ts +0 -2
  439. package/dist/types/preview/parse/index.d.ts +1 -1
  440. package/dist/types/preview/parse/parseFacadeOperationCalldata.d.ts +6 -7
  441. package/dist/types/preview/parse/parseOperationCalldata.d.ts +5 -18
  442. package/dist/types/preview/parse/parsePoolOperationCalldata.d.ts +7 -12
  443. package/dist/types/preview/parse/parseRWAFactoryOperationCalldata.d.ts +13 -0
  444. package/dist/types/preview/parse/types-adapters.d.ts +5 -1
  445. package/dist/types/preview/parse/types-facades.d.ts +23 -34
  446. package/dist/types/preview/parse/types-pools.d.ts +29 -1
  447. package/dist/types/preview/parse/types-rwa.d.ts +36 -0
  448. package/dist/types/preview/parse/types.d.ts +11 -31
  449. package/dist/types/preview/prerequisites/AllowancePrerequisite.d.ts +16 -17
  450. package/dist/types/preview/prerequisites/BalancePrerequisite.d.ts +21 -18
  451. package/dist/types/preview/prerequisites/Prerequisite.d.ts +18 -55
  452. package/dist/types/preview/prerequisites/RWAOpenRequirementsPrerequisite.d.ts +51 -0
  453. package/dist/types/preview/prerequisites/buildCollateralPrerequisites.d.ts +14 -0
  454. package/dist/types/preview/prerequisites/buildPartialLiquidationPrerequisites.d.ts +8 -0
  455. package/dist/types/preview/prerequisites/buildPoolPrerequisites.d.ts +8 -0
  456. package/dist/types/preview/prerequisites/buildRWAPrerequisites.d.ts +21 -0
  457. package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +19 -0
  458. package/dist/types/preview/prerequisites/helpers.d.ts +7 -0
  459. package/dist/types/preview/prerequisites/index.d.ts +2 -3
  460. package/dist/types/preview/prerequisites/types.d.ts +13 -50
  461. package/dist/types/preview/preview/applyInnerOperations.d.ts +84 -0
  462. package/dist/types/preview/preview/applyRWAWrapUnwrap.d.ts +13 -0
  463. package/dist/types/preview/preview/detectCloseOrRepay.d.ts +18 -0
  464. package/dist/types/preview/preview/errors.d.ts +21 -0
  465. package/dist/types/preview/preview/index.d.ts +7 -0
  466. package/dist/types/preview/preview/previewAdjustCreditAccount.d.ts +12 -0
  467. package/dist/types/preview/preview/previewCloseOrRepayCreditAccount.d.ts +11 -0
  468. package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +5 -0
  469. package/dist/types/preview/preview/previewOperation.d.ts +8 -0
  470. package/dist/types/preview/preview/previewPoolOperation.d.ts +5 -0
  471. package/dist/types/preview/preview/types.d.ts +181 -0
  472. package/dist/types/preview/preview/unwrapNativeCollateral.d.ts +20 -0
  473. package/dist/types/preview/simulate/index.d.ts +2 -3
  474. package/dist/types/preview/simulate/simulateFacadeOperation.d.ts +3 -16
  475. package/dist/types/preview/simulate/simulateOperation.d.ts +4 -18
  476. package/dist/types/preview/simulate/simulatePoolOperation.d.ts +10 -18
  477. package/dist/types/preview/simulate/simulateRWAOperation.d.ts +12 -0
  478. package/dist/types/preview/simulate/types.d.ts +20 -51
  479. package/dist/types/preview/types.d.ts +52 -0
  480. package/dist/types/sdk/OnchainSDK.d.ts +10 -1
  481. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +15 -15
  482. package/dist/types/sdk/accounts/index.d.ts +1 -0
  483. package/dist/types/sdk/accounts/types.d.ts +100 -53
  484. package/dist/types/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.d.ts +34 -0
  485. package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.d.ts +334 -0
  486. package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.d.ts +338 -0
  487. package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.d.ts +300 -0
  488. package/dist/types/sdk/accounts/withdrawal-compressor/addresses.d.ts +21 -0
  489. package/dist/types/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.d.ts +11 -0
  490. package/dist/types/sdk/accounts/withdrawal-compressor/index.d.ts +8 -0
  491. package/dist/types/sdk/accounts/withdrawal-compressor/intent-codec.d.ts +26 -0
  492. package/dist/types/sdk/accounts/withdrawal-compressor/types.d.ts +283 -0
  493. package/dist/types/sdk/base/BaseContract.d.ts +1 -1
  494. package/dist/types/sdk/base/TokensMeta.d.ts +1 -1
  495. package/dist/types/sdk/base/types.d.ts +18 -0
  496. package/dist/types/sdk/chain/chains.d.ts +8 -8
  497. package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +5 -5
  498. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +1 -1
  499. package/dist/types/sdk/market/rwa/securitize/SecuritizeRWAFactory.d.ts +17 -4
  500. package/dist/types/sdk/market/rwa/securitize/types.d.ts +18 -2
  501. package/dist/types/sdk/market/rwa/types.d.ts +39 -14
  502. package/dist/types/sdk/market/zapper/types.d.ts +6 -6
  503. package/dist/types/sdk/pools/types.d.ts +1 -1
  504. package/dist/types/sdk/router/AbstractRouterContract.d.ts +5 -5
  505. package/dist/types/sdk/router/helpers.d.ts +1 -2
  506. package/dist/types/sdk/router/types.d.ts +1 -15
  507. package/dist/types/sdk/utils/AddressMap.d.ts +4 -0
  508. package/dist/types/sdk/utils/AddressSet.d.ts +1 -0
  509. package/dist/types/sdk/utils/AssetsMap.d.ts +44 -0
  510. package/dist/types/sdk/utils/index.d.ts +1 -0
  511. package/package.json +11 -12
  512. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +0 -116
  513. package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -76
  514. package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -68
  515. package/dist/cjs/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +0 -68
  516. package/dist/cjs/preview/prerequisites/buildPrerequisites.js +0 -221
  517. package/dist/cjs/preview/prerequisites/runPrerequisites.js +0 -71
  518. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +0 -94
  519. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -54
  520. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -46
  521. package/dist/esm/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +0 -46
  522. package/dist/esm/preview/parse/extractExpectedBalanceChanges.js +0 -24
  523. package/dist/esm/preview/prerequisites/buildPrerequisites.js +0 -197
  524. package/dist/esm/preview/prerequisites/prepareAction.js +0 -23
  525. package/dist/esm/preview/prerequisites/runPrerequisites.js +0 -47
  526. package/dist/esm/preview/simulate/holders.js +0 -21
  527. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +0 -1045
  528. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +0 -26
  529. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +0 -24
  530. package/dist/types/plugins/adapters/contracts/SecuritizeSwapAdapterContract.d.ts +0 -24
  531. package/dist/types/preview/parse/extractExpectedBalanceChanges.d.ts +0 -22
  532. package/dist/types/preview/prerequisites/buildPrerequisites.d.ts +0 -16
  533. package/dist/types/preview/prerequisites/prepareAction.d.ts +0 -52
  534. package/dist/types/preview/prerequisites/runPrerequisites.d.ts +0 -12
  535. package/dist/types/preview/simulate/holders.d.ts +0 -7
@@ -18,41 +18,23 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var CreditAccountsServiceV310_exports = {};
20
20
  __export(CreditAccountsServiceV310_exports, {
21
- CreditAccountsServiceV310: () => CreditAccountsServiceV310,
22
- getWithdrawalCompressorAddress: () => getWithdrawalCompressorAddress
21
+ CreditAccountsServiceV310: () => CreditAccountsServiceV310
23
22
  });
24
23
  module.exports = __toCommonJS(CreditAccountsServiceV310_exports);
25
- var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
26
24
  var import_viem = require("viem");
27
25
  var import_generated = require("../../abi/310/generated.js");
28
26
  var import_creditAccountCompressor = require("../../abi/compressors/creditAccountCompressor.js");
29
27
  var import_peripheryCompressor = require("../../abi/compressors/peripheryCompressor.js");
30
28
  var import_rewardsCompressor = require("../../abi/compressors/rewardsCompressor.js");
31
- var import_IWithdrawalCompressorV310 = require("../../abi/IWithdrawalCompressorV310.js");
32
- var import_IWithdrawalCompressorV311 = require("../../abi/IWithdrawalCompressorV311.js");
33
29
  var import_iBaseRewardPool = require("../../abi/iBaseRewardPool.js");
30
+ var import_ierc4626Adapter = require("../../abi/ierc4626Adapter.js");
34
31
  var import_iRWAFactory = require("../../abi/rwa/iRWAFactory.js");
35
32
  var import_base = require("../base/index.js");
36
- var import_chains = require("../chain/chains.js");
37
33
  var import_constants = require("../constants/index.js");
38
34
  var import_market = require("../market/index.js");
39
- var import_router = require("../router/index.js");
40
35
  var import_utils = require("../utils/index.js");
41
36
  var import_viem2 = require("../utils/viem/index.js");
42
37
  var import_multicall_utils = require("./multicall-utils.js");
43
- const COMPRESSORS = {
44
- [import_chains.chains.Mainnet.id]: {
45
- address: "0x36F3d0Bb73CBC2E94fE24dF0f26a689409cF9023",
46
- version: 310
47
- },
48
- [import_chains.chains.Monad.id]: {
49
- address: "0x36F3d0Bb73CBC2E94fE24dF0f26a689409cF9023",
50
- version: 310
51
- }
52
- };
53
- function getWithdrawalCompressorAddress(chainId) {
54
- return COMPRESSORS[chainId];
55
- }
56
38
  class CreditAccountsServiceV310 extends import_base.SDKConstruct {
57
39
  #compressor;
58
40
  #batchSize;
@@ -621,14 +603,12 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
621
603
  creditManager: cm.creditManager,
622
604
  slippage
623
605
  });
624
- const operationCalls = [
625
- ...routerCloseResult.calls,
626
- ...this.#prepareDisableQuotas(ca),
627
- ...this.#prepareDecreaseDebt(ca),
628
- ...assetsToWithdraw.map(
629
- (t) => this.#prepareWithdrawToken(ca.creditFacade, t, import_constants.MAX_UINT256, to)
630
- )
631
- ];
606
+ const operationCalls = await this.assembleCloseCreditAccountCalls({
607
+ creditAccount: ca,
608
+ routerCalls: routerCloseResult.calls,
609
+ assetsToWithdraw,
610
+ to
611
+ });
632
612
  const calls = operation === "close" ? operationCalls : await this.#prependPriceUpdates(ca.creditManager, operationCalls, ca);
633
613
  const tx = await this.#closeCreditAccountTx(
634
614
  cm,
@@ -638,6 +618,32 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
638
618
  );
639
619
  return { tx, calls, routerCloseResult, creditFacade: cm.creditFacade };
640
620
  }
621
+ /**
622
+ * {@inheritDoc ICreditAccountsService.assembleCloseCreditAccountCalls}
623
+ */
624
+ async assembleCloseCreditAccountCalls({
625
+ creditAccount: ca,
626
+ routerCalls,
627
+ assetsToWithdraw,
628
+ to
629
+ }) {
630
+ const cm = this.sdk.marketRegister.findCreditManager(ca.creditManager);
631
+ await this.sdk.tokensMeta.loadTokenData(cm.underlying);
632
+ const underlying = this.sdk.tokensMeta.mustGet(cm.underlying);
633
+ if (this.sdk.tokensMeta.isRWAUnderlying(underlying)) {
634
+ throw new Error(
635
+ "closeCreditAccount is not supported for RWA underlying credit accounts"
636
+ );
637
+ }
638
+ return [
639
+ ...routerCalls,
640
+ ...this.#prepareDisableQuotas(ca),
641
+ ...this.#prepareDecreaseDebt(ca),
642
+ ...assetsToWithdraw.map(
643
+ (t) => this.#prepareWithdrawToken(ca.creditFacade, t, import_constants.MAX_UINT256, to)
644
+ )
645
+ ];
646
+ }
641
647
  /**
642
648
  * {@inheritDoc ICreditAccountsService.updateQuotas}
643
649
  **/
@@ -779,22 +785,8 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
779
785
  amount,
780
786
  token
781
787
  }) {
782
- const compressor = getWithdrawalCompressorAddress(this.sdk.chainId);
783
- if (!compressor)
784
- throw new Error(
785
- `No compressor for current chain ${this.sdk.networkType}`
786
- );
787
- const contract = (0, import_viem.getContract)({
788
- address: compressor.address,
789
- abi: compressor.version === 310 ? import_IWithdrawalCompressorV310.iWithdrawalCompressorV310Abi : import_IWithdrawalCompressorV311.iWithdrawalCompressorV311Abi,
790
- client: this.client
791
- });
792
- const resp = await contract.read.getWithdrawalRequestResult([
793
- creditAccount,
794
- token,
795
- amount
796
- ]);
797
- return resp;
788
+ const compressor = this.sdk.withdrawalCompressor();
789
+ return compressor.getWithdrawalRequestResult(creditAccount, token, amount);
798
790
  }
799
791
  /**
800
792
  * {@inheritDoc ICreditAccountsService.getPendingWithdrawals}
@@ -802,26 +794,12 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
802
794
  async getPendingWithdrawals({
803
795
  creditAccount
804
796
  }) {
805
- const compressor = getWithdrawalCompressorAddress(this.sdk.chainId);
806
- if (!compressor)
807
- throw new Error(
808
- `No compressor for current chain ${this.sdk.networkType}`
809
- );
810
- const contract = (0, import_viem.getContract)({
811
- address: compressor.address,
812
- abi: compressor.version === 310 ? import_IWithdrawalCompressorV310.iWithdrawalCompressorV310Abi : import_IWithdrawalCompressorV311.iWithdrawalCompressorV311Abi,
813
- client: this.client
814
- });
815
- const resp = await contract.read.getCurrentWithdrawals([creditAccount]);
816
- const claimableNow = resp?.[0] || [];
817
- const pendingResult = [...resp?.[1] || []].sort(
818
- (a, b) => a.claimableAt < b.claimableAt ? -1 : 1
819
- );
820
- const respResult = {
821
- claimableNow: [...claimableNow],
822
- pending: pendingResult
797
+ const compressor = this.sdk.withdrawalCompressor();
798
+ const { claimable, pending } = await compressor.getCurrentWithdrawals(creditAccount);
799
+ return {
800
+ claimableNow: claimable,
801
+ pending
823
802
  };
824
- return respResult;
825
803
  }
826
804
  /**
827
805
  * {@inheritDoc ICreditAccountsService.startDelayedWithdrawal}
@@ -1126,7 +1104,7 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1126
1104
  {
1127
1105
  target: adapterAddress,
1128
1106
  callData: (0, import_viem.encodeFunctionData)({
1129
- abi: import_integrations_v3.ierc4626AdapterAbi,
1107
+ abi: import_ierc4626Adapter.ierc4626AdapterAbi,
1130
1108
  functionName: "redeem",
1131
1109
  args: [amount, import_constants.ADDRESS_0X0, import_constants.ADDRESS_0X0]
1132
1110
  })
@@ -1157,7 +1135,7 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1157
1135
  {
1158
1136
  target: adapterAddress,
1159
1137
  callData: (0, import_viem.encodeFunctionData)({
1160
- abi: import_integrations_v3.ierc4626AdapterAbi,
1138
+ abi: import_ierc4626Adapter.ierc4626AdapterAbi,
1161
1139
  functionName: "deposit",
1162
1140
  args: [amount, import_constants.ADDRESS_0X0]
1163
1141
  })
@@ -1188,7 +1166,7 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1188
1166
  {
1189
1167
  target: adapterAddress,
1190
1168
  callData: (0, import_viem.encodeFunctionData)({
1191
- abi: import_integrations_v3.ierc4626AdapterAbi,
1169
+ abi: import_ierc4626Adapter.ierc4626AdapterAbi,
1192
1170
  functionName: "redeemDiff",
1193
1171
  args: [amount]
1194
1172
  })
@@ -1219,7 +1197,7 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1219
1197
  {
1220
1198
  target: adapterAddress,
1221
1199
  callData: (0, import_viem.encodeFunctionData)({
1222
- abi: import_integrations_v3.ierc4626AdapterAbi,
1200
+ abi: import_ierc4626Adapter.ierc4626AdapterAbi,
1223
1201
  functionName: "depositDiff",
1224
1202
  args: [amount]
1225
1203
  })
@@ -1307,8 +1285,23 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1307
1285
  /**
1308
1286
  * {@inheritDoc ICreditAccountsService.repayCreditAccount}
1309
1287
  */
1310
- async repayCreditAccount({
1311
- operation,
1288
+ async repayCreditAccount(props) {
1289
+ const { operation, creditAccount: ca } = props;
1290
+ const cm = this.sdk.marketRegister.findCreditManager(ca.creditManager);
1291
+ const operationCalls = await this.assembleRepayCreditAccountCalls(props);
1292
+ const calls = operation === "close" ? operationCalls : await this.#prependPriceUpdates(ca.creditManager, operationCalls, ca);
1293
+ const tx = await this.#closeCreditAccountTx(
1294
+ cm,
1295
+ ca.creditAccount,
1296
+ calls,
1297
+ operation
1298
+ );
1299
+ return { tx, calls, creditFacade: cm.creditFacade };
1300
+ }
1301
+ /**
1302
+ * {@inheritDoc ICreditAccountsService.assembleRepayCreditAccountCalls}
1303
+ */
1304
+ async assembleRepayCreditAccountCalls({
1312
1305
  collateralAssets,
1313
1306
  assetsToWithdraw,
1314
1307
  creditAccount: ca,
@@ -1317,7 +1310,6 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1317
1310
  tokensToClaim,
1318
1311
  calls: wrapCalls = []
1319
1312
  }) {
1320
- const cm = this.sdk.marketRegister.findCreditManager(ca.creditManager);
1321
1313
  const addCollateral = collateralAssets.filter((a) => a.balance > 0);
1322
1314
  const router = this.sdk.routerFor(ca);
1323
1315
  const unwrapCalls = await this.getRedeemDiffCalls(1n, ca.creditManager) ?? [];
@@ -1336,14 +1328,7 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1336
1328
  (t) => this.#prepareWithdrawToken(ca.creditFacade, t.token, import_constants.MAX_UINT256, to)
1337
1329
  )
1338
1330
  ];
1339
- const calls = operation === "close" ? operationCalls : await this.#prependPriceUpdates(ca.creditManager, operationCalls, ca);
1340
- const tx = await this.#closeCreditAccountTx(
1341
- cm,
1342
- ca.creditAccount,
1343
- calls,
1344
- operation
1345
- );
1346
- return { tx, calls, creditFacade: cm.creditFacade };
1331
+ return operationCalls;
1347
1332
  }
1348
1333
  /**
1349
1334
  * {@inheritDoc ICreditAccountsService.repayAndLiquidateCreditAccount}
@@ -1564,19 +1549,13 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1564
1549
  );
1565
1550
  }
1566
1551
  /**
1567
- * {@inheritDoc ICreditAccountsService.assembleCaUpdateCalls}
1552
+ * {@inheritDoc ICreditAccountsService.assembleCaOperations}
1568
1553
  */
1569
- assembleCaUpdateCalls({
1554
+ assembleCaOperations({
1570
1555
  operations,
1571
- routerCallGroups,
1572
- creditFacade,
1573
- withdrawTo,
1574
- creditAccount,
1575
- underlyingToken
1556
+ creditFacade
1576
1557
  }) {
1577
1558
  const calls = [];
1578
- let swapGroupIndex = 0;
1579
- let routerGroupsConsumed = 0;
1580
1559
  for (const op of operations) {
1581
1560
  switch (op.type) {
1582
1561
  case "increaseDebt":
@@ -1600,22 +1579,15 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1600
1579
  creditFacade,
1601
1580
  op.token,
1602
1581
  op.amount,
1603
- withdrawTo
1582
+ op.to
1604
1583
  )
1605
1584
  );
1606
1585
  break;
1607
- case "swap": {
1608
- const routerCalls = routerCallGroups[swapGroupIndex];
1609
- if (!routerCalls) {
1610
- throw new Error(
1611
- `assembleCaUpdateCalls: missing router calls for swap leg ${swapGroupIndex}`
1612
- );
1613
- }
1614
- calls.push(...routerCalls);
1615
- swapGroupIndex += 1;
1616
- routerGroupsConsumed += 1;
1586
+ case "swap":
1587
+ case "wrapRwaCollateral":
1588
+ case "unwrapRwaCollateral":
1589
+ calls.push(...op.calls);
1617
1590
  break;
1618
- }
1619
1591
  case "changeQuota": {
1620
1592
  const quotaAssets = [...op.quotaIncrease, ...op.quotaDecrease];
1621
1593
  if (quotaAssets.length === 0) {
@@ -1629,58 +1601,14 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1629
1601
  );
1630
1602
  break;
1631
1603
  }
1632
- case "closeCreditAccount": {
1633
- for (const group of routerCallGroups) {
1634
- calls.push(...group);
1635
- routerGroupsConsumed += 1;
1636
- }
1637
- calls.push(
1638
- ...this.#prepareDisableQuotas({
1639
- creditFacade,
1640
- tokens: Object.entries(creditAccount.initialQuotas).map(
1641
- ([token, { quota }]) => ({
1642
- token,
1643
- quota
1644
- })
1645
- )
1646
- })
1647
- );
1648
- if (creditAccount.debt > 0n) {
1649
- calls.push(
1650
- ...this.#prepareDecreaseDebt({
1651
- creditFacade,
1652
- debt: creditAccount.debt
1653
- })
1654
- );
1655
- }
1656
- const hasAssets = creditAccount.assets.some(
1657
- (asset) => asset.balance > 0n
1658
- );
1659
- if (hasAssets) {
1660
- calls.push(
1661
- this.#prepareWithdrawToken(
1662
- creditFacade,
1663
- underlyingToken,
1664
- import_constants.MAX_UINT256,
1665
- withdrawTo
1666
- )
1667
- );
1668
- }
1669
- break;
1670
- }
1671
1604
  default: {
1672
1605
  const _exhaustive = op;
1673
1606
  throw new Error(
1674
- `assembleCaUpdateCalls: unsupported operation ${_exhaustive}`
1607
+ `assembleCaOperations: unsupported operation ${JSON.stringify(_exhaustive)}`
1675
1608
  );
1676
1609
  }
1677
1610
  }
1678
1611
  }
1679
- if (routerGroupsConsumed !== routerCallGroups.length) {
1680
- throw new Error(
1681
- `assembleCaUpdateCalls: router call group mismatch (consumed ${routerGroupsConsumed}, got ${routerCallGroups.length})`
1682
- );
1683
- }
1684
1612
  return calls;
1685
1613
  }
1686
1614
  /**
@@ -1723,10 +1651,10 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1723
1651
  return calls;
1724
1652
  }
1725
1653
  #prepareUpdateQuotas(creditFacade, { averageQuota, minQuota }) {
1726
- const minRecord = (0, import_router.assetsMap)(minQuota);
1654
+ const minRecord = new import_utils.AssetsMap(minQuota);
1727
1655
  const calls = averageQuota.map((q) => {
1728
- const minAsset = minRecord.get(q.token);
1729
- const min = minAsset && minAsset?.balance > 0 ? minAsset.balance : 0n;
1656
+ const minBalance = minRecord.get(q.token);
1657
+ const min = minBalance && minBalance > 0n ? minBalance : 0n;
1730
1658
  return {
1731
1659
  target: creditFacade,
1732
1660
  callData: (0, import_viem.encodeFunctionData)({
@@ -1906,6 +1834,5 @@ class CreditAccountsServiceV310 extends import_base.SDKConstruct {
1906
1834
  }
1907
1835
  // Annotate the CommonJS export names for ESM import in node:
1908
1836
  0 && (module.exports = {
1909
- CreditAccountsServiceV310,
1910
- getWithdrawalCompressorAddress
1837
+ CreditAccountsServiceV310
1911
1838
  });
@@ -17,8 +17,10 @@ var accounts_exports = {};
17
17
  module.exports = __toCommonJS(accounts_exports);
18
18
  __reExport(accounts_exports, require("./CreditAccountsServiceV310.js"), module.exports);
19
19
  __reExport(accounts_exports, require("./types.js"), module.exports);
20
+ __reExport(accounts_exports, require("./withdrawal-compressor/index.js"), module.exports);
20
21
  // Annotate the CommonJS export names for ESM import in node:
21
22
  0 && (module.exports = {
22
23
  ...require("./CreditAccountsServiceV310.js"),
23
- ...require("./types.js")
24
+ ...require("./types.js"),
25
+ ...require("./withdrawal-compressor/index.js")
24
26
  });
@@ -0,0 +1,224 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var AbstractWithdrawalCompressorContract_exports = {};
20
+ __export(AbstractWithdrawalCompressorContract_exports, {
21
+ AbstractWithdrawalCompressorContract: () => AbstractWithdrawalCompressorContract
22
+ });
23
+ module.exports = __toCommonJS(AbstractWithdrawalCompressorContract_exports);
24
+ var import_viem = require("viem");
25
+ var import_base = require("../../base/index.js");
26
+ var import_intent_codec = require("./intent-codec.js");
27
+ const iCreditAccountAbi = [
28
+ {
29
+ type: "function",
30
+ name: "creditManager",
31
+ inputs: [],
32
+ outputs: [{ name: "", type: "address", internalType: "address" }],
33
+ stateMutability: "view"
34
+ }
35
+ ];
36
+ class AbstractWithdrawalCompressorContract extends import_base.BaseContract {
37
+ #sdk;
38
+ constructor(sdk, args) {
39
+ super(sdk, args);
40
+ this.#sdk = sdk;
41
+ }
42
+ /**
43
+ * The contract is instantiated with the actual versioned ABI,
44
+ * this cast is type-level only (see {@link CommonAbi}).
45
+ **/
46
+ get common() {
47
+ return this.contract;
48
+ }
49
+ /**
50
+ * {@inheritDoc IWithdrawalCompressorContract.getWithdrawableAssets}
51
+ **/
52
+ async getWithdrawableAssets(creditManager) {
53
+ const resp = await this.common.read.getWithdrawableAssets([creditManager]);
54
+ return resp.map((a) => toWithdrawableAsset(a, creditManager));
55
+ }
56
+ /**
57
+ * {@inheritDoc IWithdrawalCompressorContract.getWithdrawableAssetsBatch}
58
+ **/
59
+ async getWithdrawableAssetsBatch(creditManagers) {
60
+ const cms = creditManagers ?? this.#sdk.marketRegister.creditManagers.map(
61
+ (cm) => cm.creditManager.address
62
+ );
63
+ const resp = await this.client.multicall({
64
+ contracts: cms.map(
65
+ (cm) => ({
66
+ address: this.address,
67
+ abi: this.abi,
68
+ functionName: "getWithdrawableAssets",
69
+ args: [cm]
70
+ })
71
+ ),
72
+ allowFailure: true,
73
+ batchSize: 0
74
+ });
75
+ return resp.flatMap((r, i) => {
76
+ if (r.status !== "success") {
77
+ this.logger?.warn(
78
+ `failed to get withdrawable assets of credit manager ${cms[i]}: ${r.error}`
79
+ );
80
+ return [];
81
+ }
82
+ return r.result.map((a) => toWithdrawableAsset(a, cms[i]));
83
+ });
84
+ }
85
+ /**
86
+ * {@inheritDoc IWithdrawalCompressorContract.getCurrentWithdrawals}
87
+ **/
88
+ async getCurrentWithdrawals(creditAccount) {
89
+ const [[claimable, pending], creditManager] = await this.client.multicall({
90
+ contracts: [
91
+ {
92
+ address: this.address,
93
+ abi: this.abi,
94
+ functionName: "getCurrentWithdrawals",
95
+ args: [creditAccount]
96
+ },
97
+ {
98
+ address: creditAccount,
99
+ abi: iCreditAccountAbi,
100
+ functionName: "creditManager"
101
+ }
102
+ ],
103
+ allowFailure: false,
104
+ batchSize: 0
105
+ });
106
+ return {
107
+ claimable: claimable.map(
108
+ (w) => toClaimableWithdrawal(w, creditManager, this.version >= 313)
109
+ ),
110
+ pending: pending.map(toPendingWithdrawal).sort((a, b) => a.claimableAt < b.claimableAt ? -1 : 1)
111
+ };
112
+ }
113
+ /**
114
+ * {@inheritDoc IWithdrawalCompressorContract.getWithdrawalRequestResult}
115
+ **/
116
+ async getWithdrawalRequestResult(creditAccount, token, amount, intent) {
117
+ const resp = intent ? await this.#getWithdrawalRequestResultWithIntent(
118
+ creditAccount,
119
+ token,
120
+ amount,
121
+ intent
122
+ ) : await this.common.read.getWithdrawalRequestResult([
123
+ creditAccount,
124
+ token,
125
+ amount
126
+ ]);
127
+ return {
128
+ token: resp.token,
129
+ amountIn: resp.amountIn,
130
+ outputs: resp.outputs.map(toWithdrawalOutput),
131
+ requestCalls: resp.requestCalls.map(toMultiCall),
132
+ claimableAt: resp.claimableAt
133
+ };
134
+ }
135
+ /**
136
+ * Previews a delayed withdrawal request with an intent attached as
137
+ * `extraData`. Only supported on v313+ compressors; on older versions,
138
+ * throws if `sdk.strictContractTypes` is `true`, otherwise logs a warning
139
+ * and previews the request without the intent.
140
+ *
141
+ * The contract overload accepting `extraData` also requires the withdrawal
142
+ * phantom token, which is resolved here the same way the 3-arg overload
143
+ * does it internally: via `getWithdrawableAssets` of the account's credit
144
+ * manager.
145
+ **/
146
+ async #getWithdrawalRequestResultWithIntent(creditAccount, token, amount, intent) {
147
+ if (this.version < 313) {
148
+ const message = `withdrawal intents are not supported by ${this.name} v${this.version}`;
149
+ if (this.#sdk.strictContractTypes) {
150
+ throw new Error(message);
151
+ }
152
+ this.logger?.warn(`${message}, requesting withdrawal without intent`);
153
+ return this.common.read.getWithdrawalRequestResult([
154
+ creditAccount,
155
+ token,
156
+ amount
157
+ ]);
158
+ }
159
+ const extraData = (0, import_intent_codec.encodeDelayedIntent)(intent);
160
+ const creditManager = await this.client.readContract({
161
+ address: creditAccount,
162
+ abi: iCreditAccountAbi,
163
+ functionName: "creditManager"
164
+ });
165
+ const assets = await this.common.read.getWithdrawableAssets([
166
+ creditManager
167
+ ]);
168
+ const asset = assets.find((a) => (0, import_viem.isAddressEqual)(a.token, token));
169
+ if (!asset) {
170
+ throw new Error(
171
+ `token ${token} is not withdrawable from credit manager ${creditManager}`
172
+ );
173
+ }
174
+ return this.common.read.getWithdrawalRequestResult([
175
+ creditAccount,
176
+ token,
177
+ asset.withdrawalPhantomToken,
178
+ amount,
179
+ extraData
180
+ ]);
181
+ }
182
+ }
183
+ function toWithdrawalOutput(o) {
184
+ return { token: o.token, isDelayed: o.isDelayed, amount: o.amount };
185
+ }
186
+ function toMultiCall(c) {
187
+ return { target: c.target, callData: c.callData };
188
+ }
189
+ function toWithdrawableAsset(a, creditManager) {
190
+ return {
191
+ creditManager,
192
+ token: a.token,
193
+ withdrawalPhantomToken: a.withdrawalPhantomToken,
194
+ underlying: a.underlying,
195
+ withdrawalLength: a.withdrawalLength,
196
+ maxWithdrawals: a.maxWithdrawals
197
+ };
198
+ }
199
+ function toClaimableWithdrawal(w, creditManager, decodeIntent) {
200
+ let intent;
201
+ if (decodeIntent && w.extraData && w.extraData !== "0x") {
202
+ intent = { ...(0, import_intent_codec.decodeDelayedIntent)(w.extraData), creditManager };
203
+ }
204
+ return {
205
+ token: w.token,
206
+ withdrawalPhantomToken: w.withdrawalPhantomToken,
207
+ withdrawalTokenSpent: w.withdrawalTokenSpent,
208
+ outputs: w.outputs.map(toWithdrawalOutput),
209
+ claimCalls: w.claimCalls.map(toMultiCall),
210
+ intent
211
+ };
212
+ }
213
+ function toPendingWithdrawal(w) {
214
+ return {
215
+ token: w.token,
216
+ withdrawalPhantomToken: w.withdrawalPhantomToken,
217
+ expectedOutputs: w.expectedOutputs.map(toWithdrawalOutput),
218
+ claimableAt: w.claimableAt
219
+ };
220
+ }
221
+ // Annotate the CommonJS export names for ESM import in node:
222
+ 0 && (module.exports = {
223
+ AbstractWithdrawalCompressorContract
224
+ });
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var WithdrawalCompressorV310Contract_exports = {};
20
+ __export(WithdrawalCompressorV310Contract_exports, {
21
+ WithdrawalCompressorV310Contract: () => WithdrawalCompressorV310Contract
22
+ });
23
+ module.exports = __toCommonJS(WithdrawalCompressorV310Contract_exports);
24
+ var import_IWithdrawalCompressorV310 = require("../../../abi/IWithdrawalCompressorV310.js");
25
+ var import_AbstractWithdrawalCompressorContract = require("./AbstractWithdrawalCompressorContract.js");
26
+ const abi = import_IWithdrawalCompressorV310.iWithdrawalCompressorV310Abi;
27
+ class WithdrawalCompressorV310Contract extends import_AbstractWithdrawalCompressorContract.AbstractWithdrawalCompressorContract {
28
+ constructor(sdk, address) {
29
+ super(sdk, {
30
+ addr: address,
31
+ name: "WithdrawalCompressorV310",
32
+ abi,
33
+ version: 310
34
+ });
35
+ }
36
+ }
37
+ // Annotate the CommonJS export names for ESM import in node:
38
+ 0 && (module.exports = {
39
+ WithdrawalCompressorV310Contract
40
+ });
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var WithdrawalCompressorV311Contract_exports = {};
20
+ __export(WithdrawalCompressorV311Contract_exports, {
21
+ WithdrawalCompressorV311Contract: () => WithdrawalCompressorV311Contract
22
+ });
23
+ module.exports = __toCommonJS(WithdrawalCompressorV311Contract_exports);
24
+ var import_IWithdrawalCompressorV311 = require("../../../abi/IWithdrawalCompressorV311.js");
25
+ var import_AbstractWithdrawalCompressorContract = require("./AbstractWithdrawalCompressorContract.js");
26
+ const abi = import_IWithdrawalCompressorV311.iWithdrawalCompressorV311Abi;
27
+ class WithdrawalCompressorV311Contract extends import_AbstractWithdrawalCompressorContract.AbstractWithdrawalCompressorContract {
28
+ constructor(sdk, address) {
29
+ super(sdk, {
30
+ addr: address,
31
+ name: "WithdrawalCompressorV311",
32
+ abi,
33
+ version: 311
34
+ });
35
+ }
36
+ }
37
+ // Annotate the CommonJS export names for ESM import in node:
38
+ 0 && (module.exports = {
39
+ WithdrawalCompressorV311Contract
40
+ });