@gearbox-protocol/sdk 14.12.0-next.8 → 14.12.0-test.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (584) hide show
  1. package/dist/cjs/abi/IWithdrawalCompressorV313.js +444 -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/iRedemptionLoggerV310.js +119 -0
  7. package/dist/cjs/abi/ierc4626Adapter.js +264 -0
  8. package/dist/cjs/dev/AccountOpener.js +7 -13
  9. package/dist/cjs/dev/index.js +3 -1
  10. package/dist/cjs/dev/withdrawalAbi.js +2099 -0
  11. package/dist/cjs/dev/withdrawalUtils.js +278 -0
  12. package/dist/cjs/history/classifyMulticallOperations.js +2 -0
  13. package/dist/cjs/history/mapOperations.js +7 -0
  14. package/dist/cjs/history/populateContractsRegister.js +14 -11
  15. package/dist/cjs/{plugins/adapters/balanceChanges.js → permissionless/bindings/factory/rate-keeper-factory.js} +11 -23
  16. package/dist/cjs/permissionless/bindings/market-configurator.js +11 -0
  17. package/dist/cjs/plugins/adapters/abi/actionAbi.js +1 -10
  18. package/dist/cjs/plugins/adapters/abi/adapters/erc4626ReferralAdapter.js +332 -0
  19. package/dist/cjs/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.js +436 -0
  20. package/dist/cjs/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.js +183 -0
  21. package/dist/cjs/plugins/adapters/abi/adapters/iCamelotV3Adapter.js +586 -0
  22. package/dist/cjs/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.js +385 -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 +775 -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 -2
  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 +69 -14
  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 +10 -9
  63. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +10 -13
  64. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +10 -9
  65. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +11 -14
  66. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +9 -8
  67. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +6 -38
  68. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +6 -38
  69. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +6 -38
  70. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +6 -38
  71. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +6 -38
  72. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +10 -9
  73. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +32 -10
  74. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +10 -9
  75. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +8 -8
  76. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +12 -10
  77. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +5 -5
  78. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +10 -10
  79. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +5 -5
  80. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +8 -8
  81. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +26 -4
  82. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +10 -9
  83. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +46 -9
  84. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +8 -8
  85. package/dist/cjs/plugins/adapters/contracts/MidasGatewayAdapterContract.js +168 -0
  86. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +9 -9
  87. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +9 -9
  88. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +14 -11
  89. package/dist/cjs/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +8 -8
  90. package/dist/cjs/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +59 -6
  91. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +11 -14
  92. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +8 -8
  93. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +8 -8
  94. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +10 -9
  95. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +9 -9
  96. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +11 -10
  97. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +8 -8
  98. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +10 -9
  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/index.js +0 -2
  102. package/dist/cjs/plugins/adapters/types.js +2 -11
  103. package/dist/cjs/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +25 -55
  104. package/dist/cjs/preview/index.js +5 -1
  105. package/dist/cjs/preview/parse/classifyInnerOperations.js +14 -1
  106. package/dist/cjs/preview/parse/parseFacadeOperationCalldata.js +1 -2
  107. package/dist/cjs/preview/parse/parseOperationCalldata.js +3 -11
  108. package/dist/cjs/preview/parse/parsePoolOperationCalldata.js +1 -2
  109. package/dist/cjs/preview/parse/parseRWAFactoryOperationCalldata.js +18 -18
  110. package/dist/cjs/preview/parse/types.js +1 -1
  111. package/dist/cjs/preview/prerequisites/AllowancePrerequisite.js +19 -42
  112. package/dist/cjs/preview/prerequisites/BalancePrerequisite.js +22 -54
  113. package/dist/cjs/preview/prerequisites/Prerequisite.js +10 -35
  114. package/dist/cjs/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +36 -31
  115. package/dist/cjs/preview/prerequisites/buildCollateralPrerequisites.js +91 -0
  116. package/dist/cjs/preview/prerequisites/{prepareAction.js → buildPartialLiquidationPrerequisites.js} +16 -24
  117. package/dist/cjs/preview/prerequisites/buildPoolPrerequisites.js +114 -0
  118. package/dist/cjs/preview/prerequisites/buildRWAPrerequisites.js +59 -0
  119. package/dist/cjs/preview/prerequisites/checkPrerequisites.js +86 -0
  120. package/dist/cjs/preview/prerequisites/helpers.js +36 -0
  121. package/dist/cjs/preview/prerequisites/index.js +2 -6
  122. package/dist/cjs/preview/preview/CreditAccountState.js +154 -0
  123. package/dist/cjs/preview/preview/applyRWAWrapUnwrap.js +74 -0
  124. package/dist/cjs/preview/preview/buildDelayedPreview.js +151 -0
  125. package/dist/cjs/preview/preview/detectCloseOrRepay.js +51 -0
  126. package/dist/cjs/preview/preview/detectDelayedClaim.js +53 -0
  127. package/dist/cjs/preview/preview/detectDelayedOperation.js +70 -0
  128. package/dist/cjs/preview/preview/errors.js +0 -16
  129. package/dist/cjs/preview/preview/index.js +18 -0
  130. package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +78 -0
  131. package/dist/cjs/preview/preview/previewCloseOrRepayCreditAccount.js +94 -0
  132. package/dist/cjs/preview/preview/previewOpenCreditAccount.js +33 -87
  133. package/dist/cjs/preview/preview/previewOperation.js +74 -1
  134. package/dist/cjs/preview/preview/previewPoolOperation.js +6 -39
  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 +33 -0
  138. package/dist/cjs/preview/preview/unwrapNativeCollateral.js +18 -26
  139. package/dist/cjs/preview/simulate/simulatePoolOperation.js +2 -5
  140. package/dist/cjs/preview/types.js +16 -0
  141. package/dist/cjs/rewards/rewards/extra-apy.js +8 -4
  142. package/dist/cjs/sdk/MultichainSDK.js +7 -0
  143. package/dist/cjs/sdk/OnchainSDK.js +29 -0
  144. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +172 -210
  145. package/dist/cjs/sdk/accounts/index.js +5 -1
  146. package/dist/cjs/sdk/accounts/liquidations/LiquidationsService.js +207 -0
  147. package/dist/cjs/sdk/accounts/liquidations/MultichainLiquidationsService.js +65 -0
  148. package/dist/cjs/sdk/accounts/liquidations/helpers.js +63 -0
  149. package/dist/cjs/sdk/accounts/liquidations/index.js +28 -0
  150. package/dist/cjs/sdk/accounts/liquidations/types.js +16 -0
  151. package/dist/cjs/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +292 -0
  152. package/dist/cjs/sdk/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +72 -0
  153. package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +40 -0
  154. package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +40 -0
  155. package/dist/cjs/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +222 -0
  156. package/dist/cjs/sdk/accounts/withdrawal-compressor/addresses.js +40 -0
  157. package/dist/cjs/sdk/accounts/withdrawal-compressor/createRedemptionLogger.js +43 -0
  158. package/dist/cjs/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.js +45 -0
  159. package/dist/cjs/sdk/accounts/withdrawal-compressor/errors.js +38 -0
  160. package/dist/cjs/sdk/accounts/withdrawal-compressor/index.js +42 -0
  161. package/dist/cjs/sdk/accounts/withdrawal-compressor/intent-codec.js +121 -0
  162. package/dist/cjs/sdk/accounts/withdrawal-compressor/types.js +36 -0
  163. package/dist/cjs/sdk/base/BaseContract.js +4 -2
  164. package/dist/cjs/sdk/base/ChainContractsRegister.js +1 -0
  165. package/dist/cjs/sdk/constants/address-provider.js +3 -0
  166. package/dist/cjs/sdk/market/credit/CreditFacadeV310BaseContract.js +0 -31
  167. package/dist/cjs/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +26 -29
  168. package/dist/cjs/sdk/router/AbstractRouterContract.js +21 -27
  169. package/dist/cjs/sdk/router/RouterV310Contract.js +11 -12
  170. package/dist/cjs/sdk/router/helpers.js +0 -5
  171. package/dist/cjs/sdk/utils/AddressMap.js +6 -0
  172. package/dist/cjs/sdk/utils/AddressSet.js +7 -0
  173. package/dist/cjs/sdk/utils/AssetsMap.js +97 -0
  174. package/dist/cjs/sdk/utils/index.js +2 -0
  175. package/dist/esm/abi/IWithdrawalCompressorV313.js +420 -0
  176. package/dist/esm/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +45 -1
  177. package/dist/esm/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.js +45 -1
  178. package/dist/esm/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.js +45 -1
  179. package/dist/esm/abi/compressors/withdrawalCompressor.js +47 -2
  180. package/dist/esm/abi/iRedemptionLoggerV310.js +95 -0
  181. package/dist/esm/abi/ierc4626Adapter.js +240 -0
  182. package/dist/esm/dev/AccountOpener.js +8 -13
  183. package/dist/esm/dev/index.js +1 -0
  184. package/dist/esm/dev/withdrawalAbi.js +2068 -0
  185. package/dist/esm/dev/withdrawalUtils.js +266 -0
  186. package/dist/esm/history/classifyMulticallOperations.js +2 -0
  187. package/dist/esm/history/mapOperations.js +7 -0
  188. package/dist/esm/history/populateContractsRegister.js +17 -12
  189. package/dist/esm/permissionless/bindings/factory/rate-keeper-factory.js +11 -0
  190. package/dist/esm/permissionless/bindings/market-configurator.js +11 -0
  191. package/dist/esm/plugins/adapters/abi/actionAbi.js +1 -10
  192. package/dist/esm/plugins/adapters/abi/adapters/erc4626ReferralAdapter.js +308 -0
  193. package/dist/esm/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.js +412 -0
  194. package/dist/esm/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.js +159 -0
  195. package/dist/esm/plugins/adapters/abi/adapters/iCamelotV3Adapter.js +562 -0
  196. package/dist/esm/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.js +361 -0
  197. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.js +684 -0
  198. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.js +684 -0
  199. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.js +684 -0
  200. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.js +684 -0
  201. package/dist/esm/plugins/adapters/abi/adapters/iDaiUsdsAdapter.js +182 -0
  202. package/dist/esm/plugins/adapters/abi/adapters/iFluidDexAdapter.js +159 -0
  203. package/dist/esm/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.js +449 -0
  204. package/dist/esm/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.js +457 -0
  205. package/dist/esm/plugins/adapters/abi/adapters/iKelpLrtDepositPool.js +308 -0
  206. package/dist/esm/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.js +463 -0
  207. package/dist/esm/plugins/adapters/abi/adapters/iLidoV1Adapter.js +147 -0
  208. package/dist/esm/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.js +245 -0
  209. package/dist/esm/plugins/adapters/abi/adapters/iMellowClaimerAdapter.js +326 -0
  210. package/dist/esm/plugins/adapters/abi/adapters/iMellowWrapperAdapter.js +201 -0
  211. package/dist/esm/plugins/adapters/abi/adapters/iMidasGatewayAdapterV311.js +750 -0
  212. package/dist/esm/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.js +238 -0
  213. package/dist/esm/plugins/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.js +597 -0
  214. package/dist/esm/plugins/adapters/abi/adapters/iPendleRouterAdapter.js +1763 -0
  215. package/dist/esm/plugins/adapters/abi/{securitize/iSecuritizeOnRampAdapter.js → adapters/iSecuritizeOnRampAdapterV310.js} +2 -2
  216. package/dist/esm/plugins/adapters/abi/{securitize/iSecuritizeRedemptionGatewayAdapter.js → adapters/iSecuritizeRedemptionGatewayAdapterV311.js} +22 -2
  217. package/dist/esm/plugins/adapters/abi/adapters/iStakingRewardsAdapter.js +264 -0
  218. package/dist/esm/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.js +435 -0
  219. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV2Adapter.js +266 -0
  220. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV3Adapter.js +481 -0
  221. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV4Adapter.js +509 -0
  222. package/dist/esm/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.js +450 -0
  223. package/dist/esm/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.js +303 -0
  224. package/dist/esm/plugins/adapters/abi/adapters/index.js +35 -0
  225. package/dist/esm/plugins/adapters/abi/adapters/iwstEthv1Adapter.js +159 -0
  226. package/dist/esm/plugins/adapters/abi/adapters/mellowDvvAdapter.js +295 -0
  227. package/dist/esm/plugins/adapters/abi/conctructorAbi.js +4 -44
  228. package/dist/esm/plugins/adapters/abi/conctructorAbiPatterns.js +0 -14
  229. package/dist/esm/plugins/adapters/abi/index.js +1 -1
  230. package/dist/esm/plugins/adapters/abi/securitize/{iSecuritizeRedemptionGateway.js → iSecuritizeRedemptionGatewayV311.js} +11 -3
  231. package/dist/esm/plugins/adapters/abi/securitize/index.js +1 -3
  232. package/dist/esm/plugins/adapters/abi/targetContractAbi.js +2 -291
  233. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +69 -14
  234. package/dist/esm/plugins/adapters/contracts/AbstractCurveAdapter.js +45 -0
  235. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  236. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +9 -8
  237. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +9 -12
  238. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +9 -8
  239. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +10 -13
  240. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +9 -8
  241. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +6 -40
  242. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +6 -40
  243. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +6 -40
  244. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +6 -40
  245. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +6 -40
  246. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +9 -8
  247. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +31 -9
  248. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +9 -8
  249. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +7 -7
  250. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +11 -9
  251. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +6 -6
  252. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +11 -11
  253. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +6 -6
  254. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +7 -7
  255. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +28 -4
  256. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +9 -8
  257. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +47 -9
  258. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +7 -7
  259. package/dist/esm/plugins/adapters/contracts/MidasGatewayAdapterContract.js +154 -0
  260. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +10 -10
  261. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +12 -12
  262. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +13 -10
  263. package/dist/esm/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +8 -8
  264. package/dist/esm/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +63 -7
  265. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +10 -13
  266. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +7 -7
  267. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +7 -7
  268. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +9 -8
  269. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +10 -10
  270. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +12 -11
  271. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +7 -7
  272. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +9 -8
  273. package/dist/esm/plugins/adapters/contracts/index.js +1 -6
  274. package/dist/esm/plugins/adapters/createAdapter.js +43 -52
  275. package/dist/esm/plugins/adapters/index.js +0 -1
  276. package/dist/esm/plugins/adapters/types.js +2 -11
  277. package/dist/esm/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +26 -60
  278. package/dist/esm/preview/index.js +2 -0
  279. package/dist/esm/preview/parse/classifyInnerOperations.js +14 -1
  280. package/dist/esm/preview/parse/parseFacadeOperationCalldata.js +1 -2
  281. package/dist/esm/preview/parse/parseOperationCalldata.js +3 -11
  282. package/dist/esm/preview/parse/parsePoolOperationCalldata.js +1 -2
  283. package/dist/esm/preview/parse/parseRWAFactoryOperationCalldata.js +18 -18
  284. package/dist/esm/preview/parse/types.js +1 -1
  285. package/dist/esm/preview/prerequisites/AllowancePrerequisite.js +20 -46
  286. package/dist/esm/preview/prerequisites/BalancePrerequisite.js +23 -58
  287. package/dist/esm/preview/prerequisites/Prerequisite.js +10 -37
  288. package/dist/esm/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +38 -33
  289. package/dist/esm/preview/prerequisites/buildCollateralPrerequisites.js +72 -0
  290. package/dist/esm/preview/prerequisites/buildPartialLiquidationPrerequisites.js +16 -0
  291. package/dist/esm/preview/prerequisites/buildPoolPrerequisites.js +90 -0
  292. package/dist/esm/preview/prerequisites/buildRWAPrerequisites.js +35 -0
  293. package/dist/esm/preview/prerequisites/checkPrerequisites.js +62 -0
  294. package/dist/esm/preview/prerequisites/helpers.js +14 -0
  295. package/dist/esm/preview/prerequisites/index.js +1 -3
  296. package/dist/esm/preview/preview/CreditAccountState.js +133 -0
  297. package/dist/esm/preview/preview/applyRWAWrapUnwrap.js +50 -0
  298. package/dist/esm/preview/preview/buildDelayedPreview.js +130 -0
  299. package/dist/esm/preview/preview/detectCloseOrRepay.js +26 -0
  300. package/dist/esm/preview/preview/detectDelayedClaim.js +30 -0
  301. package/dist/esm/preview/preview/detectDelayedOperation.js +51 -0
  302. package/dist/esm/preview/preview/errors.js +0 -15
  303. package/dist/esm/preview/preview/index.js +9 -0
  304. package/dist/esm/preview/preview/previewAdjustCreditAccount.js +57 -0
  305. package/dist/esm/preview/preview/previewCloseOrRepayCreditAccount.js +76 -0
  306. package/dist/esm/preview/preview/previewOpenCreditAccount.js +39 -94
  307. package/dist/esm/preview/preview/previewOperation.js +80 -2
  308. package/dist/esm/preview/preview/previewPoolOperation.js +7 -42
  309. package/dist/esm/preview/preview/replayInnerOperations.js +137 -0
  310. package/dist/esm/preview/preview/replayMulticall.js +16 -0
  311. package/dist/esm/preview/preview/types.js +18 -0
  312. package/dist/esm/preview/preview/unwrapNativeCollateral.js +21 -27
  313. package/dist/esm/preview/simulate/simulateOperation.js +1 -4
  314. package/dist/esm/preview/simulate/simulatePoolOperation.js +2 -5
  315. package/dist/esm/preview/types.js +0 -0
  316. package/dist/esm/rewards/rewards/extra-apy.js +8 -4
  317. package/dist/esm/sdk/MultichainSDK.js +7 -0
  318. package/dist/esm/sdk/OnchainSDK.js +33 -1
  319. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +168 -205
  320. package/dist/esm/sdk/accounts/index.js +2 -0
  321. package/dist/esm/sdk/accounts/liquidations/LiquidationsService.js +188 -0
  322. package/dist/esm/sdk/accounts/liquidations/MultichainLiquidationsService.js +41 -0
  323. package/dist/esm/sdk/accounts/liquidations/helpers.js +36 -0
  324. package/dist/esm/sdk/accounts/liquidations/index.js +4 -0
  325. package/dist/esm/sdk/accounts/liquidations/types.js +0 -0
  326. package/dist/esm/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +264 -0
  327. package/dist/esm/sdk/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +48 -0
  328. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +16 -0
  329. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +16 -0
  330. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +204 -0
  331. package/dist/esm/sdk/accounts/withdrawal-compressor/addresses.js +16 -0
  332. package/dist/esm/sdk/accounts/withdrawal-compressor/createRedemptionLogger.js +23 -0
  333. package/dist/esm/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.js +21 -0
  334. package/dist/esm/sdk/accounts/withdrawal-compressor/errors.js +14 -0
  335. package/dist/esm/sdk/accounts/withdrawal-compressor/index.js +11 -0
  336. package/dist/esm/sdk/accounts/withdrawal-compressor/intent-codec.js +94 -0
  337. package/dist/esm/sdk/accounts/withdrawal-compressor/types.js +12 -0
  338. package/dist/esm/sdk/base/BaseContract.js +4 -2
  339. package/dist/esm/sdk/base/ChainContractsRegister.js +1 -0
  340. package/dist/esm/sdk/constants/address-provider.js +2 -0
  341. package/dist/esm/sdk/market/credit/CreditFacadeV310BaseContract.js +0 -33
  342. package/dist/esm/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +27 -31
  343. package/dist/esm/sdk/router/AbstractRouterContract.js +25 -29
  344. package/dist/esm/sdk/router/RouterV310Contract.js +11 -12
  345. package/dist/esm/sdk/router/helpers.js +0 -4
  346. package/dist/esm/sdk/utils/AddressMap.js +6 -0
  347. package/dist/esm/sdk/utils/AddressSet.js +7 -0
  348. package/dist/esm/sdk/utils/AssetsMap.js +73 -0
  349. package/dist/esm/sdk/utils/index.js +1 -0
  350. package/dist/types/abi/IWithdrawalCompressorV313.d.ts +596 -0
  351. package/dist/types/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.d.ts +77 -0
  352. package/dist/types/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.d.ts +77 -0
  353. package/dist/types/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.d.ts +77 -0
  354. package/dist/types/abi/compressors/withdrawalCompressor.d.ts +81 -0
  355. package/dist/types/abi/iRedemptionLoggerV310.d.ts +122 -0
  356. package/dist/types/abi/ierc4626Adapter.d.ts +179 -0
  357. package/dist/types/common-utils/utils/creditAccount/sort.d.ts +3 -3
  358. package/dist/types/common-utils/utils/strategies/assets/assets.d.ts +1 -1
  359. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +1 -1
  360. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-eligible.d.ts +1 -1
  361. package/dist/types/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.d.ts +1 -1
  362. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +1 -1
  363. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +1 -1
  364. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +1 -1
  365. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +1 -1
  366. package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +1 -1
  367. package/dist/types/common-utils/utils/validation/validate-balances.d.ts +1 -1
  368. package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +1 -1
  369. package/dist/types/common-utils/utils/validation/validate-quota.d.ts +1 -1
  370. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.d.ts +1 -1
  371. package/dist/types/dev/abi.d.ts +4 -4
  372. package/dist/types/dev/index.d.ts +1 -0
  373. package/dist/types/dev/providers.d.ts +1 -1
  374. package/dist/types/dev/withdrawalAbi.d.ts +1580 -0
  375. package/dist/types/dev/withdrawalUtils.d.ts +19 -0
  376. package/dist/types/history/populateContractsRegister.d.ts +1 -1
  377. package/dist/types/permissionless/bindings/bytecode-repository.d.ts +9 -9
  378. package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +81 -0
  379. package/dist/types/permissionless/bindings/factory/rate-keeper-factory.d.ts +179 -0
  380. package/dist/types/permissionless/bindings/market-configurator.d.ts +2 -0
  381. package/dist/types/permissionless/bindings/treasury-splitter.d.ts +1 -1
  382. package/dist/types/plugins/adapters/abi/adapters/erc4626ReferralAdapter.d.ts +231 -0
  383. package/dist/types/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.d.ts +314 -0
  384. package/dist/types/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.d.ts +117 -0
  385. package/dist/types/plugins/adapters/abi/adapters/iCamelotV3Adapter.d.ts +428 -0
  386. package/dist/types/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.d.ts +271 -0
  387. package/dist/types/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.d.ts +519 -0
  388. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.d.ts +519 -0
  389. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.d.ts +519 -0
  390. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.d.ts +519 -0
  391. package/dist/types/plugins/adapters/abi/adapters/iDaiUsdsAdapter.d.ts +135 -0
  392. package/dist/types/plugins/adapters/abi/adapters/iFluidDexAdapter.d.ts +119 -0
  393. package/dist/types/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.d.ts +338 -0
  394. package/dist/types/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.d.ts +346 -0
  395. package/dist/types/plugins/adapters/abi/adapters/iKelpLrtDepositPool.d.ts +233 -0
  396. package/dist/types/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.d.ts +349 -0
  397. package/dist/types/plugins/adapters/abi/adapters/iLidoV1Adapter.d.ts +109 -0
  398. package/dist/types/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.d.ts +183 -0
  399. package/dist/types/plugins/adapters/abi/adapters/iMellowClaimerAdapter.d.ts +247 -0
  400. package/dist/types/plugins/adapters/abi/adapters/iMellowWrapperAdapter.d.ts +151 -0
  401. package/dist/types/plugins/adapters/abi/adapters/iMidasGatewayAdapterV311.d.ts +568 -0
  402. package/dist/types/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.d.ts +180 -0
  403. package/dist/types/plugins/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.d.ts +453 -0
  404. package/dist/types/plugins/adapters/abi/adapters/iPendleRouterAdapter.d.ts +1366 -0
  405. package/dist/types/plugins/adapters/abi/{securitize/iSecuritizeOnRampAdapter.d.ts → adapters/iSecuritizeOnRampAdapterV310.d.ts} +1 -1
  406. package/dist/types/plugins/adapters/abi/{securitize/iSecuritizeRedemptionGatewayAdapter.d.ts → adapters/iSecuritizeRedemptionGatewayAdapterV311.d.ts} +37 -1
  407. package/dist/types/plugins/adapters/abi/adapters/iStakingRewardsAdapter.d.ts +197 -0
  408. package/dist/types/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.d.ts +333 -0
  409. package/dist/types/plugins/adapters/abi/adapters/iUniswapV2Adapter.d.ts +202 -0
  410. package/dist/types/plugins/adapters/abi/adapters/iUniswapV3Adapter.d.ts +367 -0
  411. package/dist/types/plugins/adapters/abi/adapters/iUniswapV4Adapter.d.ts +390 -0
  412. package/dist/types/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.d.ts +336 -0
  413. package/dist/types/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.d.ts +232 -0
  414. package/dist/types/plugins/adapters/abi/adapters/index.d.ts +35 -0
  415. package/dist/types/plugins/adapters/abi/adapters/iwstEthv1Adapter.d.ts +117 -0
  416. package/dist/types/plugins/adapters/abi/adapters/mellowDvvAdapter.d.ts +221 -0
  417. package/dist/types/plugins/adapters/abi/conctructorAbiPatterns.d.ts +0 -26
  418. package/dist/types/plugins/adapters/abi/index.d.ts +1 -1
  419. package/dist/types/plugins/adapters/abi/securitize/{iSecuritizeRedemptionGateway.d.ts → iSecuritizeRedemptionGatewayV311.d.ts} +15 -1
  420. package/dist/types/plugins/adapters/abi/securitize/index.d.ts +1 -3
  421. package/dist/types/plugins/adapters/abi/targetContractAbi.d.ts +1 -477
  422. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +56 -14
  423. package/dist/types/plugins/adapters/contracts/AbstractCurveAdapter.d.ts +17 -0
  424. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
  425. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +8 -8
  426. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +6 -6
  427. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +8 -8
  428. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +8 -8
  429. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +8 -8
  430. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +10 -14
  431. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +10 -15
  432. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +10 -14
  433. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +5 -9
  434. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +10 -14
  435. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +7 -7
  436. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +13 -7
  437. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +7 -7
  438. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +7 -7
  439. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +8 -8
  440. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +5 -5
  441. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +6 -6
  442. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +7 -7
  443. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +8 -8
  444. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +7 -6
  445. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +7 -7
  446. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +22 -9
  447. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +6 -6
  448. package/dist/types/plugins/adapters/contracts/MidasGatewayAdapterContract.d.ts +614 -0
  449. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +8 -8
  450. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +8 -8
  451. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +8 -8
  452. package/dist/types/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +7 -7
  453. package/dist/types/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +73 -8
  454. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +8 -8
  455. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +8 -8
  456. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +8 -8
  457. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +8 -8
  458. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +8 -8
  459. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +8 -8
  460. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +8 -8
  461. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +6 -6
  462. package/dist/types/plugins/adapters/contracts/index.d.ts +1 -6
  463. package/dist/types/plugins/adapters/createAdapter.d.ts +2 -2
  464. package/dist/types/plugins/adapters/index.d.ts +0 -1
  465. package/dist/types/plugins/adapters/types.d.ts +54 -14
  466. package/dist/types/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.d.ts +7 -7
  467. package/dist/types/plugins/delayed-withdrawal/types.d.ts +4 -17
  468. package/dist/types/preview/index.d.ts +2 -0
  469. package/dist/types/preview/parse/parseFacadeOperationCalldata.d.ts +6 -7
  470. package/dist/types/preview/parse/parseOperationCalldata.d.ts +5 -18
  471. package/dist/types/preview/parse/parsePoolOperationCalldata.d.ts +7 -12
  472. package/dist/types/preview/parse/parseRWAFactoryOperationCalldata.d.ts +5 -14
  473. package/dist/types/preview/parse/types-adapters.d.ts +5 -1
  474. package/dist/types/preview/parse/types-facades.d.ts +23 -1
  475. package/dist/types/preview/parse/types-rwa.d.ts +11 -23
  476. package/dist/types/preview/parse/types.d.ts +0 -25
  477. package/dist/types/preview/prerequisites/AllowancePrerequisite.d.ts +15 -14
  478. package/dist/types/preview/prerequisites/BalancePrerequisite.d.ts +16 -16
  479. package/dist/types/preview/prerequisites/Prerequisite.d.ts +18 -55
  480. package/dist/types/preview/prerequisites/RWAOpenRequirementsPrerequisite.d.ts +40 -25
  481. package/dist/types/preview/prerequisites/buildCollateralPrerequisites.d.ts +15 -0
  482. package/dist/types/preview/prerequisites/buildPartialLiquidationPrerequisites.d.ts +8 -0
  483. package/dist/types/preview/prerequisites/buildPoolPrerequisites.d.ts +8 -0
  484. package/dist/types/preview/prerequisites/buildRWAPrerequisites.d.ts +21 -0
  485. package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +19 -0
  486. package/dist/types/preview/prerequisites/helpers.d.ts +7 -0
  487. package/dist/types/preview/prerequisites/index.d.ts +1 -3
  488. package/dist/types/preview/prerequisites/types.d.ts +24 -55
  489. package/dist/types/preview/preview/CreditAccountState.d.ts +83 -0
  490. package/dist/types/preview/preview/applyRWAWrapUnwrap.d.ts +13 -0
  491. package/dist/types/preview/preview/buildDelayedPreview.d.ts +47 -0
  492. package/dist/types/preview/preview/detectCloseOrRepay.d.ts +20 -0
  493. package/dist/types/preview/preview/detectDelayedClaim.d.ts +45 -0
  494. package/dist/types/preview/preview/detectDelayedOperation.d.ts +29 -0
  495. package/dist/types/preview/preview/errors.d.ts +0 -12
  496. package/dist/types/preview/preview/index.d.ts +9 -0
  497. package/dist/types/preview/preview/previewAdjustCreditAccount.d.ts +12 -0
  498. package/dist/types/preview/preview/previewCloseOrRepayCreditAccount.d.ts +11 -0
  499. package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +4 -3
  500. package/dist/types/preview/preview/previewOperation.d.ts +3 -3
  501. package/dist/types/preview/preview/previewPoolOperation.d.ts +3 -3
  502. package/dist/types/preview/preview/replayInnerOperations.d.ts +44 -0
  503. package/dist/types/preview/preview/replayMulticall.d.ts +38 -0
  504. package/dist/types/preview/preview/types.d.ts +269 -42
  505. package/dist/types/preview/preview/unwrapNativeCollateral.d.ts +21 -6
  506. package/dist/types/preview/simulate/index.d.ts +1 -4
  507. package/dist/types/preview/simulate/simulateFacadeOperation.d.ts +3 -14
  508. package/dist/types/preview/simulate/simulateOperation.d.ts +4 -16
  509. package/dist/types/preview/simulate/simulatePoolOperation.d.ts +7 -3
  510. package/dist/types/preview/simulate/simulateRWAOperation.d.ts +3 -14
  511. package/dist/types/preview/simulate/types.d.ts +13 -30
  512. package/dist/types/preview/types.d.ts +63 -0
  513. package/dist/types/rewards/rewards/extra-apy.d.ts +3 -1
  514. package/dist/types/sdk/MultichainSDK.d.ts +6 -0
  515. package/dist/types/sdk/OnchainSDK.d.ts +17 -1
  516. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +23 -15
  517. package/dist/types/sdk/accounts/index.d.ts +2 -0
  518. package/dist/types/sdk/accounts/liquidations/LiquidationsService.d.ts +20 -0
  519. package/dist/types/sdk/accounts/liquidations/MultichainLiquidationsService.d.ts +23 -0
  520. package/dist/types/sdk/accounts/liquidations/helpers.d.ts +34 -0
  521. package/dist/types/sdk/accounts/liquidations/index.d.ts +4 -0
  522. package/dist/types/sdk/accounts/liquidations/types.d.ts +172 -0
  523. package/dist/types/sdk/accounts/types.d.ts +177 -53
  524. package/dist/types/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.d.ts +112 -0
  525. package/dist/types/sdk/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.d.ts +149 -0
  526. package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.d.ts +334 -0
  527. package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.d.ts +338 -0
  528. package/dist/types/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.d.ts +629 -0
  529. package/dist/types/sdk/accounts/withdrawal-compressor/addresses.d.ts +20 -0
  530. package/dist/types/sdk/accounts/withdrawal-compressor/createRedemptionLogger.d.ts +10 -0
  531. package/dist/types/sdk/accounts/withdrawal-compressor/createWithdrawalCompressor.d.ts +10 -0
  532. package/dist/types/sdk/accounts/withdrawal-compressor/errors.d.ts +13 -0
  533. package/dist/types/sdk/accounts/withdrawal-compressor/index.d.ts +11 -0
  534. package/dist/types/sdk/accounts/withdrawal-compressor/intent-codec.d.ts +26 -0
  535. package/dist/types/sdk/accounts/withdrawal-compressor/types.d.ts +448 -0
  536. package/dist/types/sdk/base/BaseContract.d.ts +1 -1
  537. package/dist/types/sdk/base/TokensMeta.d.ts +1 -1
  538. package/dist/types/sdk/base/types.d.ts +18 -0
  539. package/dist/types/sdk/chain/chains.d.ts +8 -8
  540. package/dist/types/sdk/constants/address-provider.d.ts +1 -0
  541. package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +5 -5
  542. package/dist/types/sdk/market/credit/CreditFacadeV310BaseContract.d.ts +1 -13
  543. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +1 -1
  544. package/dist/types/sdk/market/rwa/securitize/SecuritizeRWAFactory.d.ts +12 -16
  545. package/dist/types/sdk/market/rwa/securitize/types.d.ts +18 -2
  546. package/dist/types/sdk/market/rwa/types.d.ts +26 -9
  547. package/dist/types/sdk/pools/types.d.ts +1 -1
  548. package/dist/types/sdk/router/AbstractRouterContract.d.ts +5 -5
  549. package/dist/types/sdk/router/helpers.d.ts +1 -2
  550. package/dist/types/sdk/router/types.d.ts +1 -15
  551. package/dist/types/sdk/types/state.d.ts +8 -0
  552. package/dist/types/sdk/utils/AddressMap.d.ts +4 -0
  553. package/dist/types/sdk/utils/AddressSet.d.ts +1 -0
  554. package/dist/types/sdk/utils/AssetsMap.d.ts +44 -0
  555. package/dist/types/sdk/utils/index.d.ts +1 -0
  556. package/package.json +15 -16
  557. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +0 -143
  558. package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -76
  559. package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -68
  560. package/dist/cjs/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +0 -90
  561. package/dist/cjs/preview/prerequisites/buildPrerequisites.js +0 -302
  562. package/dist/cjs/preview/prerequisites/runPrerequisites.js +0 -71
  563. package/dist/cjs/preview/preview/extractExpectedBalanceChanges.js +0 -70
  564. package/dist/esm/plugins/adapters/balanceChanges.js +0 -21
  565. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +0 -123
  566. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -54
  567. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -46
  568. package/dist/esm/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +0 -70
  569. package/dist/esm/preview/prerequisites/buildPrerequisites.js +0 -283
  570. package/dist/esm/preview/prerequisites/prepareAction.js +0 -23
  571. package/dist/esm/preview/prerequisites/runPrerequisites.js +0 -47
  572. package/dist/esm/preview/preview/extractExpectedBalanceChanges.js +0 -46
  573. package/dist/types/plugins/adapters/balanceChanges.d.ts +0 -21
  574. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +0 -1046
  575. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +0 -26
  576. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +0 -24
  577. package/dist/types/plugins/adapters/contracts/SecuritizeSwapAdapterContract.d.ts +0 -35
  578. package/dist/types/preview/prerequisites/buildPrerequisites.d.ts +0 -25
  579. package/dist/types/preview/prerequisites/prepareAction.d.ts +0 -52
  580. package/dist/types/preview/prerequisites/runPrerequisites.d.ts +0 -12
  581. package/dist/types/preview/preview/extractExpectedBalanceChanges.d.ts +0 -33
  582. /package/dist/cjs/plugins/adapters/abi/{iConvexV1BoosterAdapter.js → adapters/iConvexV1BoosterAdapter.js} +0 -0
  583. /package/dist/esm/plugins/adapters/abi/{iConvexV1BoosterAdapter.js → adapters/iConvexV1BoosterAdapter.js} +0 -0
  584. /package/dist/types/plugins/adapters/abi/{iConvexV1BoosterAdapter.d.ts → adapters/iConvexV1BoosterAdapter.d.ts} +0 -0
@@ -0,0 +1,44 @@
1
+ import { type SdkWithAdapters } from "../../plugins/adapters/index.js";
2
+ import { AssetsMap, type PluginsMap } from "../../sdk/index.js";
3
+ import type { InnerOperation } from "../parse/index.js";
4
+ import type { CreditAccountState } from "./CreditAccountState.js";
5
+ import { type OperationPreviewError } from "./types.js";
6
+ /**
7
+ * Running state threaded through a credit-facade multicall by
8
+ * {@link replayInnerOperations}: the account's post-state being mutated in
9
+ * facade execution order, plus per-multicall bookkeeping that is not account
10
+ * state (what was added from / withdrawn to the wallet).
11
+ */
12
+ export interface ReplayState {
13
+ /**
14
+ * Running account state, mutated in facade execution order. Seeded by the
15
+ * caller: `CreditAccountState.beforeOpen` for account opening, a clone of
16
+ * `CreditAccountState.fromCreditAccountData` for an existing account.
17
+ */
18
+ account: CreditAccountState;
19
+ /**
20
+ * Cumulative amounts added via `addCollateral`.
21
+ */
22
+ collateralAdded: AssetsMap;
23
+ /**
24
+ * Cumulative amounts withdrawn via `withdrawCollateral`, with `MAX_UINT256`
25
+ * resolved against the running balance at the point of the call.
26
+ */
27
+ collateralWithdrawn: AssetsMap;
28
+ }
29
+ /**
30
+ * Creates a {@link ReplayState} around the given account seed, with empty
31
+ * bookkeeping.
32
+ */
33
+ export declare function makeReplayState(account: CreditAccountState): ReplayState;
34
+ /**
35
+ * Replays a credit-facade multicall over `state`, mutating it in place in
36
+ * facade execution order. The result is the *minimal guaranteed* post-state.
37
+ *
38
+ * The function assumes that the call was generated by our frontend using
39
+ * router/withdrawal compressor, otherwise it returns an error, but still
40
+ * proceeds best-effort.
41
+ *
42
+ * @returns `undefined` on success, the error on a malformed multicall.
43
+ */
44
+ export declare function replayInnerOperations<P extends PluginsMap>(sdk: SdkWithAdapters<P>, multicall: InnerOperation[], state: ReplayState): Promise<OperationPreviewError | undefined>;
@@ -0,0 +1,38 @@
1
+ import type { Address } from "viem";
2
+ import type { SdkWithAdapters } from "../../plugins/adapters/index.js";
3
+ import type { PluginsMap } from "../../sdk/index.js";
4
+ import type { InnerOperation } from "../parse/index.js";
5
+ import type { PreviewOperationOptions } from "../types.js";
6
+ import { CreditAccountState } from "./CreditAccountState.js";
7
+ import { type ReplayState } from "./replayInnerOperations.js";
8
+ import type { OperationPreviewError } from "./types.js";
9
+ /**
10
+ * Parsed operation on an existing credit account whose multicall can be
11
+ * replayed: the facade `closeCreditAccount` entry point and
12
+ * plain/bot/RWA multicalls all fit structurally.
13
+ */
14
+ export interface ReplayableOperation {
15
+ creditAccount: Address;
16
+ multicall: InnerOperation[];
17
+ }
18
+ /**
19
+ * Result of {@link replayMulticall}: the account's pre-state and the replayed
20
+ * (minimal guaranteed) post-state.
21
+ */
22
+ export interface ReplayMulticallResult {
23
+ /**
24
+ * Account state before the operation, dust-filtered
25
+ */
26
+ before: CreditAccountState;
27
+ /**
28
+ * Post-operation state and per-multicall bookkeeping, mutated by the
29
+ * replay in facade execution order
30
+ */
31
+ after: ReplayState;
32
+ error?: OperationPreviewError;
33
+ }
34
+ /**
35
+ * Replays the operation's multicall over the account's pre-resolved
36
+ * pre-state (`options.creditAccount`) via {@link replayInnerOperations}.
37
+ */
38
+ export declare function replayMulticall<P extends PluginsMap>(sdk: SdkWithAdapters<P>, operation: ReplayableOperation, options: PreviewOperationOptions<true>): Promise<ReplayMulticallResult>;
@@ -1,43 +1,73 @@
1
- import type { Address, Hex } from "viem";
2
- import type { Asset, PluginsMap } from "../../sdk/index.js";
3
- import type { PoolOperationType, SdkWithAdapters } from "../parse/index.js";
1
+ import type { Address } from "viem";
2
+ import type { Asset, DelayedIntent } from "../../sdk/index.js";
3
+ import type { PoolOperationType } from "../parse/index.js";
4
4
  /**
5
- * Input of {@link previewOperation}: the raw operation calldata plus the
6
- * already-attached SDK
5
+ * Broken `storeExpectedBalances`/`compareBalances` bracket structure:
6
+ * `storeExpectedBalances` without a matching `compareBalances`, nested
7
+ * brackets, or `compareBalances` without a preceding `storeExpectedBalances`.
8
+ * We expect transactions that were generated by our frontend using router/withdrawal compressor
9
+ **/
10
+ export declare const ERROR_MALFORMED_BRACKET = 1001;
11
+ /**
12
+ * Adapter call outside a `storeExpectedBalances`/`compareBalances` bracket
13
+ * We expect transactions that were generated by our frontend using router/withdrawal compressor,
14
+ **/
15
+ export declare const ERROR_ADAPTER_CALL_OUTSIDE_BRACKET = 1002;
16
+ /**
17
+ * Bracketed call whose target is not an adapter (or adapter that is not known to the SDK)
18
+ **/
19
+ export declare const ERROR_NON_ADAPTER_CALL_IN_BRACKET = 1003;
20
+ /**
21
+ * Bracketed adapter call cannot be replayed (undecodable/unsupported calldata)
22
+ **/
23
+ export declare const ERROR_UNPREVIEWABLE_ADAPTER_CALL = 1004;
24
+ /**
25
+ * Out-of-bracket RWA wrap/unwrap calldata cannot be decoded
26
+ **/
27
+ export declare const ERROR_UNPREVIEWABLE_RWA_WRAP_UNWRAP = 1005;
28
+ /**
29
+ * `msg.value` does not fit into the declared WETH collateral
30
+ * Transactions can have arbitrary value, but the ones that we create
31
+ * using our frontend should have a value that fits into the declared WETH collateral.
32
+ **/
33
+ export declare const ERROR_INVALID_TRANSACTION_VALUE = 1006;
34
+ /** A token in the preview could not be priced by the oracle */
35
+ export declare const ERROR_UNPRICEABLE_TOKEN = 2001;
36
+ /**
37
+ * Dust threshold for replayed preview balances and balance changes.
38
+ *
39
+ * Multicalls assembled by `CreditAccountsServiceV310` subtract a 10-unit
40
+ * safety buffer from every expected output token in their
41
+ * `storeExpectedBalances` deltas (`amount - 10n` in
42
+ * `assembleStartDelayedWithdrawalCalls`/`assembleClaimDelayedCalls`), while
43
+ * subsequent calls in the same multicall spend exact on-chain amounts. A
44
+ * replay that credits only the min-guarantee can therefore be off by up to
45
+ * 10 units per token, including small negative residues that are impossible
46
+ * on-chain. Amounts within this threshold (in absolute value) are filtered
47
+ * from preview outputs; anything beyond it is a genuine discrepancy and is
48
+ * reported.
7
49
  */
8
- export interface PreviewOperationInput<P extends PluginsMap = PluginsMap> {
9
- /**
10
- * Already-attached SDK; chain, RPC and block are baked in at attach time.
11
- * Must be created with the adapters plugin (enforced at compile time) so
12
- * adapter contracts resolve during multicall classification.
13
- */
14
- sdk: SdkWithAdapters<P>;
15
- /**
16
- * Contract address that was called
17
- */
18
- to: Address;
50
+ export declare const PREVIEW_DUST = 10n;
51
+ /**
52
+ * Non-throwing preview failure. When set on a preview, all fields are still
53
+ * computed best-effort, but some of them may be unreliable.
54
+ */
55
+ export interface OperationPreviewError {
19
56
  /**
20
- * Raw calldata of the operation
57
+ * Numeric http-style error code, see the `ERROR_*` constants:
58
+ * - 1xxx: the transaction is malformed (we expect transactions
59
+ * that were generated by our fromtend using router/withdrawal compressor)
60
+ * and fields derived from replayed balances
61
+ * may be unreliable;
62
+ * - 2xxx: the transaction may be fine, but the SDK could not fully
63
+ * evaluate the preview (e.g. a token could not be priced).
21
64
  */
22
- calldata: Hex;
65
+ code: number;
23
66
  /**
24
- * Transaction sender
67
+ * Human-readable details of the specific failure
25
68
  */
26
- sender: Address;
27
- /**
28
- * Transaction `msg.value`
29
- **/
30
- value?: bigint;
69
+ message: string;
31
70
  }
32
- /**
33
- * A token amount that may require an additional async call (e.g. an ERC4626
34
- * preview read) to determine. When that call fails, only the token address and
35
- * the error are returned.
36
- */
37
- export type PreviewedAsset = Asset | {
38
- token: Address;
39
- error: Error;
40
- };
41
71
  export interface PoolOperationPreview {
42
72
  operation: PoolOperationType;
43
73
  /**
@@ -51,10 +81,9 @@ export interface PoolOperationPreview {
51
81
  *
52
82
  * For mint/withdraw the amount of tokenIn cannot be determined from
53
83
  * transaction calldata alone and requires an additional async call
54
- * (previewMint/previewWithdraw). In case of error only the token address is
55
- * returned.
84
+ * (previewMint/previewWithdraw).
56
85
  */
57
- tokenIn: PreviewedAsset;
86
+ tokenIn: Asset;
58
87
  /**
59
88
  * Token that goes from pool to user
60
89
  * In case of deposit, pool shares (diesel token) for direct deposit or zapper token out
@@ -62,13 +91,21 @@ export interface PoolOperationPreview {
62
91
  *
63
92
  * For deposit/redeem the amount of tokenOut cannot be determined from
64
93
  * transaction calldata alone and requires an additional async call
65
- * (previewDeposit/previewRedeem). In case of error only the token address is
66
- * returned.
94
+ * (previewDeposit/previewRedeem).
95
+ */
96
+ tokenOut: Asset;
97
+ /**
98
+ * Set when preview encountered non-fatal errors, all fields are
99
+ * still computed best-effort
67
100
  */
68
- tokenOut: PreviewedAsset;
101
+ error?: OperationPreviewError;
69
102
  }
70
103
  export interface OpenCreditAccountPreview {
71
- operation: "OpenCreditAccount" | "SecuritizeOpenCreditAccount";
104
+ operation: "OpenCreditAccount" | "RWAOpenCreditAccount";
105
+ /**
106
+ * Credit manager the account is opened in
107
+ */
108
+ creditManager: Address;
72
109
  /**
73
110
  * Target token of strategy: the first quoted token, with its balance taken
74
111
  * from `assets`. Undefined when nothing is quoted.
@@ -99,9 +136,199 @@ export interface OpenCreditAccountPreview {
99
136
  * as estimated by router
100
137
  */
101
138
  assets: Asset[];
139
+ /**
140
+ * Set when preview encountered non-fatal errors, all fields are
141
+ * still computed best-effort, but derived fields (`assets`, `target`,
142
+ * `collateralValue`) may be unreliable in that case.
143
+ */
144
+ error?: OperationPreviewError;
145
+ }
146
+ export interface AdjustCreditAccountPreview {
147
+ operation: "AdjustCreditAccount";
148
+ /**
149
+ * Credit manager the account is opened in
150
+ */
151
+ creditManager: Address;
152
+ /**
153
+ * Credit account that is being adjusted
154
+ */
155
+ creditAccount: Address;
156
+ /**
157
+ * Tokens that were added as collateral during account opening.
158
+ *
159
+ * When the transaction has native value attached, it is represented as a
160
+ * `NATIVE_ADDRESS` entry, with the wrapped native token amount reduced
161
+ * accordingly (omitted entirely when it reaches zero).
162
+ */
163
+ collateralAdded: Asset[];
164
+ /**
165
+ * Tokens that were withdrawn as collateral during account adjustment.
166
+ */
167
+ collateralWithdrawn: Asset[];
168
+ /**
169
+ * Sum of collateral tokens in underlying
170
+ */
171
+ totalValue: bigint;
172
+ /**
173
+ * Borrowed amount in underlying
174
+ */
175
+ debt: bigint;
176
+ /**
177
+ * Debt after minus debt before
178
+ */
179
+ debtChange: bigint;
180
+ /**
181
+ * Desired quotas
182
+ */
183
+ quotas: Asset[];
184
+ /**
185
+ * Quotas after minus quotas before
186
+ */
187
+ quotasChange: Asset[];
188
+ /**
189
+ * Minimum amount of assets on credit account after the operation,
190
+ * as estimated by router
191
+ */
192
+ assets: Asset[];
193
+ /**
194
+ * Assets after minus assets before
195
+ */
196
+ assetsChange: Asset[];
197
+ /**
198
+ * Intent of the delayed withdrawal this transaction claims; set when the
199
+ * multicall claims a delayed withdrawal
200
+ */
201
+ intent?: DelayedIntent;
202
+ /**
203
+ * Set when preview encountered non-fatal errors, all fields are
204
+ * still computed best-effort, but derived fields (`assets`, `assetsChange`,
205
+ * `totalValue`) may be unreliable in that case.
206
+ */
207
+ error?: OperationPreviewError;
208
+ }
209
+ export interface CloseCreditAccountPreview {
210
+ operation: "CloseCreditAccount";
211
+ /**
212
+ * True when the account is closed permanently (facade `closeCreditAccount`
213
+ * entry point), false when the debt is zeroed but the account stays open
214
+ * (plain multicall).
215
+ */
216
+ permanent: boolean;
217
+ /**
218
+ * Credit manager the account belongs to
219
+ */
220
+ creditManager: Address;
221
+ /**
222
+ * Credit account that is being closed
223
+ */
224
+ creditAccount: Address;
225
+ /**
226
+ * Token withdrawn to the user and its minimal guaranteed amount, from the
227
+ * multicall replay (all collateral is swapped into the received token
228
+ * before withdrawal). The token is the market underlying or, on RWA
229
+ * markets, the unwrapped RWA underlying (the ERC4626 vault asset the
230
+ * underlying share converts 1:1 into)
231
+ */
232
+ receivedAmount: Asset;
233
+ /**
234
+ * Intent of the delayed withdrawal this transaction claims; set when the
235
+ * multicall claims a delayed withdrawal
236
+ */
237
+ intent?: DelayedIntent;
238
+ /**
239
+ * Set when preview encountered non-fatal errors, all fields are
240
+ * still computed best-effort, but the
241
+ * balance-derived `receivedAmount` may be unreliable in that case.
242
+ */
243
+ error?: OperationPreviewError;
244
+ }
245
+ export interface RepayCreditAccountPreview {
246
+ operation: "RepayCreditAccount";
247
+ /**
248
+ * True when the account is closed permanently (facade `closeCreditAccount`
249
+ * entry point), false when the debt is zeroed but the account stays open
250
+ * (plain multicall).
251
+ */
252
+ permanent: boolean;
253
+ /**
254
+ * Credit manager the account belongs to
255
+ */
256
+ creditManager: Address;
257
+ /**
258
+ * Credit account that is being repaid
259
+ */
260
+ creditAccount: Address;
261
+ /**
262
+ * Tokens added from the wallet to cover the debt (`addCollateral` calls).
263
+ *
264
+ * When the transaction has native value attached, it is represented as a
265
+ * `NATIVE_ADDRESS` entry, with the wrapped native token amount reduced
266
+ * accordingly (omitted entirely when it reaches zero).
267
+ */
268
+ collateralAdded: Asset[];
269
+ /**
270
+ * Tokens returned to the user in-kind (`withdrawCollateral` calls, with the
271
+ * MAX_UINT256 sentinel resolved against replayed balances)
272
+ */
273
+ collateralWithdrawn: Asset[];
274
+ /**
275
+ * Total debt repaid: principal + accrued interest + fees, in underlying
276
+ */
277
+ debtRepaid: bigint;
278
+ /**
279
+ * Intent of the delayed withdrawal this transaction claims; set when the
280
+ * multicall claims a delayed withdrawal
281
+ */
282
+ intent?: DelayedIntent;
283
+ /**
284
+ * Set when preview encountered non-fatal errors, all fields are
285
+ * still computed best-effort, but the
286
+ * balance-derived `collateralWithdrawn` may be unreliable in that case.
287
+ */
288
+ error?: OperationPreviewError;
289
+ }
290
+ /**
291
+ * Preview of the "instant" part of an operation on an existing credit
292
+ * account: what the transaction does in the same block, before any delayed
293
+ * withdrawal is claimed.
294
+ */
295
+ export type InstantOperationPreview = AdjustCreditAccountPreview | CloseCreditAccountPreview | RepayCreditAccountPreview;
296
+ /**
297
+ * Preview of a multicall that requests a delayed withdrawal (e.g. Securitize
298
+ * redemption): the source token is spent now and a withdrawal phantom token is received;
299
+ * the actual claim token materializes later, when the withdrawal is claimed and
300
+ * the recorded (if any) is resumed
301
+ */
302
+ export interface DelayedCreditAccountOperationPreview {
303
+ operation: "DelayedCreditAccountOperation";
304
+ /**
305
+ * Credit account the operation is performed on
306
+ */
307
+ creditAccount: Address;
308
+ /**
309
+ * Credit manager the account belongs to
310
+ */
311
+ creditManager: Address;
312
+ /**
313
+ * Decoded from the withdrawal request's extraData; undefined when the
314
+ * request carries no intent (e.g. Mellow)
315
+ */
316
+ intent?: DelayedIntent;
317
+ /**
318
+ * What this transaction does right now: the delayed withdrawal is
319
+ * represented by the phantom token among the account's assets
320
+ */
321
+ instantPreview: InstantOperationPreview;
322
+ /**
323
+ * Best-effort state after the withdrawal is claimed and the intent is
324
+ * resumed; claim-only (phantom burned, claim token received) when
325
+ * `intent` is undefined
326
+ */
327
+ delayedPreview: InstantOperationPreview;
102
328
  }
103
329
  /**
104
330
  * Result of previewing a raw operation calldata: currently pool operations and
105
- * credit account opening are supported.
331
+ * credit account opening, adjustment, closure, repayment and delayed
332
+ * withdrawal operations are supported.
106
333
  */
107
- export type OperationPreview = PoolOperationPreview | OpenCreditAccountPreview;
334
+ export type OperationPreview = PoolOperationPreview | OpenCreditAccountPreview | AdjustCreditAccountPreview | CloseCreditAccountPreview | RepayCreditAccountPreview | DelayedCreditAccountOperationPreview;
@@ -1,5 +1,16 @@
1
- import { type Address } from "viem";
1
+ import type { Address } from "viem";
2
2
  import { type Asset } from "../../sdk/index.js";
3
+ import { type OperationPreviewError } from "./types.js";
4
+ export interface UnwrapNativeCollateralResult {
5
+ /**
6
+ * Collateral with the native amount unwrapped from the WETH entry.
7
+ */
8
+ assets: Asset[];
9
+ /**
10
+ * Error set when the transaction value is malformed.
11
+ */
12
+ error?: OperationPreviewError;
13
+ }
3
14
  /**
4
15
  * Represents the transaction's attached native value as a `NATIVE_ADDRESS`
5
16
  * entry in the collateral list.
@@ -8,13 +19,17 @@ import { type Asset } from "../../sdk/index.js";
8
19
  * pulls it, so the WETH collateral amount already includes the attached native
9
20
  * value. This helper splits the WETH entry back: the native amount is shown as
10
21
  * `NATIVE_ADDRESS` and the WETH entry is reduced accordingly (dropped when it
11
- * reaches zero). Other entries and their order are preserved.
22
+ * reaches zero). Other entries are preserved.
23
+ *
24
+ * When `nativeAmount` is positive but the WETH collateral is missing or
25
+ * smaller than it, the transaction is malformed: the collateral is returned
26
+ * as-is (no unwrapping) together with an `ERROR_INVALID_TRANSACTION_VALUE`
27
+ * error.
12
28
  *
13
29
  * @param collateral - Collateral assets as declared by the multicall.
14
30
  * @param nativeAmount - Transaction `msg.value`.
15
31
  * @param wethToken - Wrapped native token address.
16
- * @returns Collateral with the native amount unwrapped from the WETH entry.
17
- * @throws InvalidTransactionValueError when `nativeAmount` is positive but the
18
- * WETH collateral is missing or smaller than it.
32
+ * @returns Collateral with the native amount unwrapped from the WETH entry,
33
+ * plus the error on a malformed transaction value.
19
34
  */
20
- export declare function unwrapNativeCollateral(collateral: Asset[], nativeAmount: bigint, wethToken: Address): Asset[];
35
+ export declare function unwrapNativeCollateral(collateral: Asset[], nativeAmount: bigint, wethToken: Address): UnwrapNativeCollateralResult;
@@ -1,10 +1,7 @@
1
1
  export type { SimulationError, SimulationFlowFailure, SimulationFlowSource, } from "./errors.js";
2
2
  export { PreviewSimulationError } from "./errors.js";
3
- export type { SimulateFacadeOperationInput } from "./simulateFacadeOperation.js";
4
3
  export { simulateFacadeOperation } from "./simulateFacadeOperation.js";
5
- export type { SimulateOperationInput } from "./simulateOperation.js";
6
4
  export { simulateOperation } from "./simulateOperation.js";
7
5
  export { simulatePoolOperation } from "./simulatePoolOperation.js";
8
- export type { SimulateRWAOperationInput } from "./simulateRWAOperation.js";
9
6
  export { simulateRWAOperation } from "./simulateRWAOperation.js";
10
- export type { OperationSimulationOptions, PoolOperationSimulation, PoolOperationSimulationInput, PoolOperationSimulationResult, } from "./types.js";
7
+ export type { PoolOperationSimulationResult, SimulationInput, } from "./types.js";
@@ -1,17 +1,6 @@
1
- import type { Address, Hex } from "viem";
2
- import type { OnchainSDK } from "../../sdk/index.js";
3
1
  import type { OuterFacadeOperation } from "../parse/index.js";
4
- import type { OperationSimulationOptions, PoolOperationSimulation } from "./types.js";
5
- export interface SimulateFacadeOperationInput {
6
- /** Only `client`/`networkType` are used, so any OnchainSDK works. */
7
- sdk: OnchainSDK;
8
- /** Parsed credit-facade operation to simulate. */
9
- operation: OuterFacadeOperation;
10
- /** Target contract the calldata is sent to (the credit facade). */
11
- to: Address;
12
- /** Raw credit-facade calldata to simulate. */
13
- calldata: Hex;
14
- }
2
+ import type { PreviewOperationOptions } from "../types.js";
3
+ import type { PoolOperationSimulationResult, SimulationInput } from "./types.js";
15
4
  /**
16
5
  * Simulates a credit-facade operation.
17
6
  *
@@ -20,4 +9,4 @@ export interface SimulateFacadeOperationInput {
20
9
  * signature mirrors {@link simulatePoolOperation} so the
21
10
  * {@link simulateOperation} wrapper can delegate uniformly once implemented.
22
11
  */
23
- export declare function simulateFacadeOperation(_input: SimulateFacadeOperationInput, _options?: OperationSimulationOptions): Promise<PoolOperationSimulation>;
12
+ export declare function simulateFacadeOperation(_input: SimulationInput<OuterFacadeOperation>, _options?: PreviewOperationOptions): Promise<PoolOperationSimulationResult>;
@@ -1,18 +1,6 @@
1
- import type { Address, Hex } from "viem";
2
- import type { OnchainSDK } from "../../sdk/index.js";
3
- import { type Operation } from "../parse/index.js";
4
- import type { OperationSimulationOptions, PoolOperationSimulation } from "./types.js";
5
- export interface SimulateOperationInput {
6
- /** Gearbox SDK instance. */
7
- sdk: OnchainSDK;
8
- /** Parsed pool or credit account operation */
9
- operation: Operation;
10
- /** Target contract the calldata is sent to. */
11
- to: Address;
12
- /** Raw operation calldata to simulate. */
13
- calldata: Hex;
14
- }
1
+ import type { PreviewOperationOptions } from "../types.js";
2
+ import type { PoolOperationSimulationResult, SimulationInput } from "./types.js";
15
3
  /**
16
- * Simulates a parsed pool or credit account operation {@link Operation}
4
+ * Simulates a parsed pool or credit account operation
17
5
  */
18
- export declare function simulateOperation(input: SimulateOperationInput, options?: OperationSimulationOptions): Promise<PoolOperationSimulation>;
6
+ export declare function simulateOperation(input: SimulationInput, options?: PreviewOperationOptions): Promise<PoolOperationSimulationResult>;
@@ -1,7 +1,11 @@
1
- import type { OperationSimulationOptions, PoolOperationSimulation, PoolOperationSimulationInput } from "./types.js";
1
+ import type { PoolOperation } from "../parse/index.js";
2
+ import type { PreviewOperationOptions } from "../types.js";
3
+ import type { PoolOperationSimulationResult, SimulationInput } from "./types.js";
2
4
  /**
3
5
  * Simulates a pool deposit/mint/withdraw/redeem (direct or zapper-routed) and
4
- * returns the resulting token amounts going in and out, or a decoded failure.
6
+ * returns the resulting token amounts going in and out. Throws a
7
+ * {@link PreviewSimulationError} with the decoded revert when the preview read
8
+ * fails.
5
9
  *
6
10
  * Performs the matching preview read (the pool's ERC4626
7
11
  * `previewDeposit`/`previewMint`/`previewWithdraw`/`previewRedeem`, or the
@@ -11,4 +15,4 @@ import type { OperationSimulationOptions, PoolOperationSimulation, PoolOperation
11
15
  * It does not execute the calldata, so it ignores balance/allowance
12
16
  * prerequisites (preview reads succeed regardless).
13
17
  */
14
- export declare function simulatePoolOperation(input: PoolOperationSimulationInput, options?: OperationSimulationOptions): Promise<PoolOperationSimulation>;
18
+ export declare function simulatePoolOperation(input: SimulationInput<PoolOperation>, options?: PreviewOperationOptions): Promise<PoolOperationSimulationResult>;
@@ -1,17 +1,6 @@
1
- import type { Address, Hex } from "viem";
2
- import type { OnchainSDK } from "../../sdk/index.js";
3
1
  import type { RWAOperation } from "../parse/index.js";
4
- import type { OperationSimulationOptions, PoolOperationSimulation } from "./types.js";
5
- export interface SimulateRWAOperationInput {
6
- /** Only `client`/`networkType` are used, so any OnchainSDK works. */
7
- sdk: OnchainSDK;
8
- /** Parsed RWA-factory operation to simulate. */
9
- operation: RWAOperation;
10
- /** Target contract the calldata is sent to (the RWA factory). */
11
- to: Address;
12
- /** Raw RWA-factory calldata to simulate. */
13
- calldata: Hex;
14
- }
2
+ import type { PreviewOperationOptions } from "../types.js";
3
+ import type { PoolOperationSimulationResult, SimulationInput } from "./types.js";
15
4
  /**
16
5
  * Simulates an RWA-factory operation.
17
6
  *
@@ -20,4 +9,4 @@ export interface SimulateRWAOperationInput {
20
9
  * not cover. The signature mirrors {@link simulatePoolOperation} so the
21
10
  * {@link simulateOperation} wrapper can delegate uniformly once implemented.
22
11
  */
23
- export declare function simulateRWAOperation(_input: SimulateRWAOperationInput, _options?: OperationSimulationOptions): Promise<PoolOperationSimulation>;
12
+ export declare function simulateRWAOperation(_input: SimulationInput<RWAOperation>, _options?: PreviewOperationOptions): Promise<PoolOperationSimulationResult>;
@@ -1,31 +1,25 @@
1
1
  import type { Address, Hex } from "viem";
2
2
  import type { OnchainSDK } from "../../sdk/index.js";
3
- import type { ILogger } from "../../sdk/types/logger.js";
4
- import type { PoolOperation } from "../parse/index.js";
5
- import type { PreviewSimulationError } from "./errors.js";
6
- export interface PoolOperationSimulationInput {
3
+ import type { Operation } from "../parse/index.js";
4
+ /**
5
+ * Input of the simulation functions, generic over the parsed operation kind
6
+ * so each specialized simulation narrows `operation` while sharing the same
7
+ * shape.
8
+ */
9
+ export interface SimulationInput<Op extends Operation = Operation> {
7
10
  /** Only `client`/`networkType` are used, so any OnchainSDK works. */
8
11
  sdk: OnchainSDK;
9
- /** Parsed operation, used to resolve the underlying and pool tokens. */
10
- operation: PoolOperation;
11
- /** Target contract the calldata is sent to (the pool). */
12
+ /** Parsed operation to simulate. */
13
+ operation: Op;
14
+ /** Target contract the calldata is sent to. */
12
15
  to: Address;
13
- /** Raw deposit/mint/withdraw/redeem calldata to simulate. */
16
+ /** Raw operation calldata to simulate. */
14
17
  calldata: Hex;
15
18
  }
16
- export interface OperationSimulationOptions {
17
- /** Block to simulate at; defaults to latest. */
18
- blockNumber?: bigint;
19
- /**
20
- * Optional logger.
21
- **/
22
- logger?: ILogger;
23
- }
24
19
  /**
25
- * Successful simulation of a pool operation: the amounts of tokens going in
20
+ * Result of simulating a pool operation: the amounts of tokens going in
26
21
  * and out. One side comes from calldata, the other from the matching ERC4626
27
- * preview read. This is the success payload of {@link PoolOperationSimulation}
28
- * without the `status` discriminant.
22
+ * preview read.
29
23
  */
30
24
  export interface PoolOperationSimulationResult {
31
25
  /**
@@ -39,14 +33,3 @@ export interface PoolOperationSimulationResult {
39
33
  **/
40
34
  amountOut: bigint;
41
35
  }
42
- /**
43
- * Outcome of simulating a pool operation. On success it carries a
44
- * {@link PoolOperationSimulationResult}; on failure it carries a
45
- * {@link PreviewSimulationError}.
46
- */
47
- export type PoolOperationSimulation = ({
48
- status: "success";
49
- } & PoolOperationSimulationResult) | {
50
- status: "failure";
51
- error: PreviewSimulationError;
52
- };