@gearbox-protocol/sdk 14.12.0-next.15 → 14.12.0-next.16

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 (331) hide show
  1. package/dist/cjs/abi/ierc4626Adapter.js +264 -0
  2. package/dist/cjs/plugins/adapters/abi/actionAbi.js +1 -10
  3. package/dist/cjs/plugins/adapters/abi/adapters/erc4626ReferralAdapter.js +332 -0
  4. package/dist/cjs/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.js +436 -0
  5. package/dist/cjs/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.js +183 -0
  6. package/dist/cjs/plugins/adapters/abi/adapters/iCamelotV3Adapter.js +586 -0
  7. package/dist/cjs/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.js +385 -0
  8. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.js +708 -0
  9. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.js +708 -0
  10. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.js +708 -0
  11. package/dist/cjs/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.js +708 -0
  12. package/dist/cjs/plugins/adapters/abi/adapters/iDaiUsdsAdapter.js +206 -0
  13. package/dist/cjs/plugins/adapters/abi/adapters/iFluidDexAdapter.js +183 -0
  14. package/dist/cjs/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.js +473 -0
  15. package/dist/cjs/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.js +482 -0
  16. package/dist/cjs/plugins/adapters/abi/adapters/iKelpLrtDepositPool.js +333 -0
  17. package/dist/cjs/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.js +488 -0
  18. package/dist/cjs/plugins/adapters/abi/adapters/iLidoV1Adapter.js +171 -0
  19. package/dist/cjs/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.js +269 -0
  20. package/dist/cjs/plugins/adapters/abi/adapters/iMellowClaimerAdapter.js +350 -0
  21. package/dist/cjs/plugins/adapters/abi/adapters/iMellowWrapperAdapter.js +225 -0
  22. package/dist/cjs/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapter.js +262 -0
  23. package/dist/cjs/plugins/adapters/abi/adapters/iMidasRedemptionVault.js +622 -0
  24. package/dist/cjs/plugins/adapters/abi/adapters/iPendleRouterAdapter.js +1787 -0
  25. package/dist/cjs/plugins/adapters/abi/adapters/iStakingRewardsAdapter.js +288 -0
  26. package/dist/cjs/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.js +459 -0
  27. package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV2Adapter.js +290 -0
  28. package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV3Adapter.js +505 -0
  29. package/dist/cjs/plugins/adapters/abi/adapters/iUniswapV4Adapter.js +534 -0
  30. package/dist/cjs/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.js +475 -0
  31. package/dist/cjs/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.js +327 -0
  32. package/dist/cjs/plugins/adapters/abi/adapters/index.js +84 -0
  33. package/dist/cjs/plugins/adapters/abi/adapters/iwstEthv1Adapter.js +183 -0
  34. package/dist/cjs/plugins/adapters/abi/adapters/mellowDvvAdapter.js +319 -0
  35. package/dist/cjs/plugins/adapters/abi/conctructorAbi.js +1 -42
  36. package/dist/cjs/plugins/adapters/abi/conctructorAbiPatterns.js +0 -16
  37. package/dist/cjs/plugins/adapters/abi/index.js +2 -2
  38. package/dist/cjs/plugins/adapters/abi/targetContractAbi.js +0 -293
  39. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
  40. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  41. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  42. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  43. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +1 -1
  44. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  45. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  46. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  47. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  48. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  49. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  50. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +11 -4
  51. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  52. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
  53. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  54. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +3 -3
  55. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +3 -3
  56. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +3 -3
  57. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
  58. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  59. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  60. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  61. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  62. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  63. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +3 -3
  64. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  65. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  66. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  67. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +2 -2
  68. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +2 -2
  69. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +3 -3
  70. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +3 -3
  71. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  72. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  73. package/dist/cjs/plugins/adapters/contracts/index.js +0 -12
  74. package/dist/cjs/plugins/adapters/createAdapter.js +1 -10
  75. package/dist/cjs/plugins/adapters/types.js +1 -11
  76. package/dist/cjs/preview/index.js +5 -1
  77. package/dist/cjs/preview/parse/parseFacadeOperationCalldata.js +1 -2
  78. package/dist/cjs/preview/parse/parseOperationCalldata.js +3 -11
  79. package/dist/cjs/preview/parse/parsePoolOperationCalldata.js +1 -2
  80. package/dist/cjs/preview/parse/parseRWAFactoryOperationCalldata.js +5 -6
  81. package/dist/cjs/preview/prerequisites/AllowancePrerequisite.js +10 -27
  82. package/dist/cjs/preview/prerequisites/BalancePrerequisite.js +10 -26
  83. package/dist/cjs/preview/prerequisites/Prerequisite.js +1 -21
  84. package/dist/cjs/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +16 -32
  85. package/dist/cjs/preview/prerequisites/buildCollateralPrerequisites.js +1 -3
  86. package/dist/cjs/preview/prerequisites/buildPartialLiquidationPrerequisites.js +1 -3
  87. package/dist/cjs/preview/prerequisites/buildPoolPrerequisites.js +8 -19
  88. package/dist/cjs/preview/prerequisites/buildRWAPrerequisites.js +7 -5
  89. package/dist/cjs/preview/prerequisites/checkPrerequisites.js +10 -10
  90. package/dist/cjs/preview/prerequisites/helpers.js +2 -13
  91. package/dist/cjs/preview/preview/applyInnerOperations.js +13 -2
  92. package/dist/cjs/preview/preview/applyRWAWrapUnwrap.js +74 -0
  93. package/dist/cjs/preview/preview/index.js +2 -2
  94. package/dist/cjs/preview/preview/{previewCloseOrRepay.js → previewCloseOrRepayCreditAccount.js} +6 -6
  95. package/dist/cjs/preview/preview/previewOperation.js +3 -3
  96. package/dist/cjs/preview/preview/previewPoolOperation.js +6 -39
  97. package/dist/cjs/preview/simulate/simulatePoolOperation.js +2 -5
  98. package/dist/cjs/preview/types.js +16 -0
  99. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +5 -5
  100. package/dist/esm/abi/ierc4626Adapter.js +240 -0
  101. package/dist/esm/plugins/adapters/abi/actionAbi.js +1 -10
  102. package/dist/esm/plugins/adapters/abi/adapters/erc4626ReferralAdapter.js +308 -0
  103. package/dist/esm/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.js +412 -0
  104. package/dist/esm/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.js +159 -0
  105. package/dist/esm/plugins/adapters/abi/adapters/iCamelotV3Adapter.js +562 -0
  106. package/dist/esm/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.js +361 -0
  107. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.js +684 -0
  108. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.js +684 -0
  109. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.js +684 -0
  110. package/dist/esm/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.js +684 -0
  111. package/dist/esm/plugins/adapters/abi/adapters/iDaiUsdsAdapter.js +182 -0
  112. package/dist/esm/plugins/adapters/abi/adapters/iFluidDexAdapter.js +159 -0
  113. package/dist/esm/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.js +449 -0
  114. package/dist/esm/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.js +457 -0
  115. package/dist/esm/plugins/adapters/abi/adapters/iKelpLrtDepositPool.js +308 -0
  116. package/dist/esm/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.js +463 -0
  117. package/dist/esm/plugins/adapters/abi/adapters/iLidoV1Adapter.js +147 -0
  118. package/dist/esm/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.js +245 -0
  119. package/dist/esm/plugins/adapters/abi/adapters/iMellowClaimerAdapter.js +326 -0
  120. package/dist/esm/plugins/adapters/abi/adapters/iMellowWrapperAdapter.js +201 -0
  121. package/dist/esm/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapter.js +238 -0
  122. package/dist/esm/plugins/adapters/abi/adapters/iMidasRedemptionVault.js +597 -0
  123. package/dist/esm/plugins/adapters/abi/adapters/iPendleRouterAdapter.js +1763 -0
  124. package/dist/esm/plugins/adapters/abi/adapters/iStakingRewardsAdapter.js +264 -0
  125. package/dist/esm/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.js +435 -0
  126. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV2Adapter.js +266 -0
  127. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV3Adapter.js +481 -0
  128. package/dist/esm/plugins/adapters/abi/adapters/iUniswapV4Adapter.js +509 -0
  129. package/dist/esm/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.js +450 -0
  130. package/dist/esm/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.js +303 -0
  131. package/dist/esm/plugins/adapters/abi/adapters/index.js +32 -0
  132. package/dist/esm/plugins/adapters/abi/adapters/iwstEthv1Adapter.js +159 -0
  133. package/dist/esm/plugins/adapters/abi/adapters/mellowDvvAdapter.js +295 -0
  134. package/dist/esm/plugins/adapters/abi/conctructorAbi.js +1 -44
  135. package/dist/esm/plugins/adapters/abi/conctructorAbiPatterns.js +0 -14
  136. package/dist/esm/plugins/adapters/abi/index.js +1 -1
  137. package/dist/esm/plugins/adapters/abi/targetContractAbi.js +0 -289
  138. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +1 -1
  139. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +1 -1
  140. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +1 -1
  141. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +1 -1
  142. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +1 -1
  143. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +1 -1
  144. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +1 -1
  145. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +1 -1
  146. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +1 -1
  147. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +1 -1
  148. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +1 -1
  149. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +10 -3
  150. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +1 -1
  151. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +1 -1
  152. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +1 -1
  153. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +4 -4
  154. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +4 -4
  155. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +4 -4
  156. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +1 -1
  157. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +1 -1
  158. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +1 -1
  159. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +1 -1
  160. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +1 -1
  161. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +1 -1
  162. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +4 -4
  163. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +1 -1
  164. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +1 -1
  165. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +1 -1
  166. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +1 -1
  167. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +1 -1
  168. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +4 -4
  169. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +4 -4
  170. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +1 -1
  171. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +1 -1
  172. package/dist/esm/plugins/adapters/contracts/index.js +0 -6
  173. package/dist/esm/plugins/adapters/createAdapter.js +1 -13
  174. package/dist/esm/plugins/adapters/types.js +1 -11
  175. package/dist/esm/preview/index.js +2 -0
  176. package/dist/esm/preview/parse/parseFacadeOperationCalldata.js +1 -2
  177. package/dist/esm/preview/parse/parseOperationCalldata.js +3 -11
  178. package/dist/esm/preview/parse/parsePoolOperationCalldata.js +1 -2
  179. package/dist/esm/preview/parse/parseRWAFactoryOperationCalldata.js +5 -6
  180. package/dist/esm/preview/prerequisites/AllowancePrerequisite.js +10 -27
  181. package/dist/esm/preview/prerequisites/BalancePrerequisite.js +10 -26
  182. package/dist/esm/preview/prerequisites/Prerequisite.js +1 -21
  183. package/dist/esm/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +16 -32
  184. package/dist/esm/preview/prerequisites/buildCollateralPrerequisites.js +1 -3
  185. package/dist/esm/preview/prerequisites/buildPartialLiquidationPrerequisites.js +1 -3
  186. package/dist/esm/preview/prerequisites/buildPoolPrerequisites.js +8 -19
  187. package/dist/esm/preview/prerequisites/buildRWAPrerequisites.js +7 -5
  188. package/dist/esm/preview/prerequisites/checkPrerequisites.js +9 -11
  189. package/dist/esm/preview/prerequisites/helpers.js +5 -14
  190. package/dist/esm/preview/preview/applyInnerOperations.js +17 -3
  191. package/dist/esm/preview/preview/applyRWAWrapUnwrap.js +50 -0
  192. package/dist/esm/preview/preview/index.js +1 -1
  193. package/dist/esm/preview/preview/{previewCloseOrRepay.js → previewCloseOrRepayCreditAccount.js} +2 -2
  194. package/dist/esm/preview/preview/previewOperation.js +3 -3
  195. package/dist/esm/preview/preview/previewPoolOperation.js +7 -42
  196. package/dist/esm/preview/simulate/simulateOperation.js +1 -4
  197. package/dist/esm/preview/simulate/simulatePoolOperation.js +2 -5
  198. package/dist/esm/preview/types.js +0 -0
  199. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +1 -1
  200. package/dist/types/abi/ierc4626Adapter.d.ts +179 -0
  201. package/dist/types/common-utils/utils/creditAccount/sort.d.ts +3 -3
  202. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-eligible.d.ts +1 -1
  203. package/dist/types/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.d.ts +1 -1
  204. package/dist/types/dev/abi.d.ts +4 -4
  205. package/dist/types/dev/providers.d.ts +1 -1
  206. package/dist/types/permissionless/bindings/bytecode-repository.d.ts +9 -9
  207. package/dist/types/permissionless/bindings/treasury-splitter.d.ts +1 -1
  208. package/dist/types/plugins/adapters/abi/adapters/erc4626ReferralAdapter.d.ts +231 -0
  209. package/dist/types/plugins/adapters/abi/adapters/iBalancerV3RouterAdapter.d.ts +314 -0
  210. package/dist/types/plugins/adapters/abi/adapters/iBalancerV3WrapperAdapter.d.ts +117 -0
  211. package/dist/types/plugins/adapters/abi/adapters/iCamelotV3Adapter.d.ts +428 -0
  212. package/dist/types/plugins/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.d.ts +271 -0
  213. package/dist/types/plugins/adapters/abi/adapters/iCurveV1StableNgAdapter.d.ts +519 -0
  214. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_2AssetsAdapter.d.ts +519 -0
  215. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_3AssetsAdapter.d.ts +519 -0
  216. package/dist/types/plugins/adapters/abi/adapters/iCurveV1_4AssetsAdapter.d.ts +519 -0
  217. package/dist/types/plugins/adapters/abi/adapters/iDaiUsdsAdapter.d.ts +135 -0
  218. package/dist/types/plugins/adapters/abi/adapters/iFluidDexAdapter.d.ts +119 -0
  219. package/dist/types/plugins/adapters/abi/adapters/iInfinifiGatewayAdapter.d.ts +338 -0
  220. package/dist/types/plugins/adapters/abi/adapters/iInfinifiUnwindingGateway.d.ts +346 -0
  221. package/dist/types/plugins/adapters/abi/adapters/iKelpLrtDepositPool.d.ts +233 -0
  222. package/dist/types/plugins/adapters/abi/adapters/iKelpLrtWithdrawalManager.d.ts +349 -0
  223. package/dist/types/plugins/adapters/abi/adapters/iLidoV1Adapter.d.ts +109 -0
  224. package/dist/types/plugins/adapters/abi/adapters/iMellow4626VaultAdapter.d.ts +183 -0
  225. package/dist/types/plugins/adapters/abi/adapters/iMellowClaimerAdapter.d.ts +247 -0
  226. package/dist/types/plugins/adapters/abi/adapters/iMellowWrapperAdapter.d.ts +151 -0
  227. package/dist/types/plugins/adapters/abi/adapters/iMidasIssuanceVaultAdapter.d.ts +180 -0
  228. package/dist/types/plugins/adapters/abi/adapters/iMidasRedemptionVault.d.ts +453 -0
  229. package/dist/types/plugins/adapters/abi/adapters/iPendleRouterAdapter.d.ts +1366 -0
  230. package/dist/types/plugins/adapters/abi/adapters/iStakingRewardsAdapter.d.ts +197 -0
  231. package/dist/types/plugins/adapters/abi/adapters/iTraderJoeRouterAdapter.d.ts +333 -0
  232. package/dist/types/plugins/adapters/abi/adapters/iUniswapV2Adapter.d.ts +202 -0
  233. package/dist/types/plugins/adapters/abi/adapters/iUniswapV3Adapter.d.ts +367 -0
  234. package/dist/types/plugins/adapters/abi/adapters/iUniswapV4Adapter.d.ts +390 -0
  235. package/dist/types/plugins/adapters/abi/adapters/iUpshiftVaultAdapter.d.ts +336 -0
  236. package/dist/types/plugins/adapters/abi/adapters/iVelodromeV2RouterAdapter.d.ts +232 -0
  237. package/dist/types/plugins/adapters/abi/adapters/index.d.ts +32 -0
  238. package/dist/types/plugins/adapters/abi/adapters/iwstEthv1Adapter.d.ts +117 -0
  239. package/dist/types/plugins/adapters/abi/adapters/mellowDvvAdapter.d.ts +221 -0
  240. package/dist/types/plugins/adapters/abi/conctructorAbiPatterns.d.ts +0 -26
  241. package/dist/types/plugins/adapters/abi/index.d.ts +1 -1
  242. package/dist/types/plugins/adapters/abi/targetContractAbi.d.ts +0 -476
  243. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +5 -5
  244. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +3 -3
  245. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +5 -5
  246. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +5 -5
  247. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +5 -5
  248. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +5 -5
  249. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +5 -5
  250. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +5 -5
  251. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +5 -5
  252. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +4 -4
  253. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +10 -4
  254. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +4 -4
  255. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +4 -4
  256. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +5 -5
  257. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +3 -3
  258. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +3 -3
  259. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +5 -5
  260. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +5 -5
  261. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +3 -3
  262. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +4 -4
  263. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +5 -5
  264. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +3 -3
  265. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +5 -5
  266. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +5 -5
  267. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +5 -5
  268. package/dist/types/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +4 -4
  269. package/dist/types/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +5 -5
  270. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +5 -5
  271. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +5 -5
  272. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +5 -5
  273. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +5 -5
  274. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +5 -5
  275. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +5 -5
  276. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +5 -5
  277. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +3 -3
  278. package/dist/types/plugins/adapters/contracts/index.d.ts +0 -6
  279. package/dist/types/plugins/adapters/types.d.ts +20 -13
  280. package/dist/types/preview/index.d.ts +2 -0
  281. package/dist/types/preview/parse/parseFacadeOperationCalldata.d.ts +6 -7
  282. package/dist/types/preview/parse/parseOperationCalldata.d.ts +5 -18
  283. package/dist/types/preview/parse/parsePoolOperationCalldata.d.ts +7 -12
  284. package/dist/types/preview/parse/parseRWAFactoryOperationCalldata.d.ts +5 -14
  285. package/dist/types/preview/parse/types.d.ts +0 -25
  286. package/dist/types/preview/prerequisites/AllowancePrerequisite.d.ts +13 -11
  287. package/dist/types/preview/prerequisites/BalancePrerequisite.d.ts +13 -11
  288. package/dist/types/preview/prerequisites/Prerequisite.d.ts +6 -19
  289. package/dist/types/preview/prerequisites/RWAOpenRequirementsPrerequisite.d.ts +27 -18
  290. package/dist/types/preview/prerequisites/buildCollateralPrerequisites.d.ts +2 -2
  291. package/dist/types/preview/prerequisites/buildPartialLiquidationPrerequisites.d.ts +2 -2
  292. package/dist/types/preview/prerequisites/buildPoolPrerequisites.d.ts +2 -2
  293. package/dist/types/preview/prerequisites/buildRWAPrerequisites.d.ts +2 -2
  294. package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +8 -16
  295. package/dist/types/preview/prerequisites/helpers.d.ts +3 -11
  296. package/dist/types/preview/prerequisites/types.d.ts +14 -72
  297. package/dist/types/preview/preview/applyInnerOperations.d.ts +11 -4
  298. package/dist/types/preview/preview/applyRWAWrapUnwrap.d.ts +13 -0
  299. package/dist/types/preview/preview/index.d.ts +1 -1
  300. package/dist/types/preview/preview/previewAdjustCreditAccount.d.ts +2 -1
  301. package/dist/types/preview/preview/{previewCloseOrRepay.d.ts → previewCloseOrRepayCreditAccount.d.ts} +3 -2
  302. package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +2 -1
  303. package/dist/types/preview/preview/previewOperation.d.ts +2 -1
  304. package/dist/types/preview/preview/previewPoolOperation.d.ts +3 -3
  305. package/dist/types/preview/preview/types.d.ts +7 -60
  306. package/dist/types/preview/simulate/index.d.ts +1 -4
  307. package/dist/types/preview/simulate/simulateFacadeOperation.d.ts +3 -14
  308. package/dist/types/preview/simulate/simulateOperation.d.ts +4 -16
  309. package/dist/types/preview/simulate/simulatePoolOperation.d.ts +7 -3
  310. package/dist/types/preview/simulate/simulateRWAOperation.d.ts +3 -14
  311. package/dist/types/preview/simulate/types.d.ts +13 -30
  312. package/dist/types/preview/types.d.ts +52 -0
  313. package/dist/types/sdk/chain/chains.d.ts +8 -8
  314. package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +5 -5
  315. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +1 -1
  316. package/package.json +11 -12
  317. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +0 -116
  318. package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -76
  319. package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -68
  320. package/dist/cjs/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +0 -89
  321. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +0 -94
  322. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -54
  323. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -46
  324. package/dist/esm/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +0 -69
  325. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +0 -1045
  326. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +0 -26
  327. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +0 -24
  328. package/dist/types/plugins/adapters/contracts/SecuritizeSwapAdapterContract.d.ts +0 -36
  329. /package/dist/cjs/plugins/adapters/abi/{iConvexV1BoosterAdapter.js → adapters/iConvexV1BoosterAdapter.js} +0 -0
  330. /package/dist/esm/plugins/adapters/abi/{iConvexV1BoosterAdapter.js → adapters/iConvexV1BoosterAdapter.js} +0 -0
  331. /package/dist/types/plugins/adapters/abi/{iConvexV1BoosterAdapter.d.ts → adapters/iConvexV1BoosterAdapter.d.ts} +0 -0
@@ -1,61 +1,8 @@
1
1
  import type { Address } from "viem";
2
- import type { OnchainSDK, RWAMissingOpenAccountRequirements, RWAOpenAccountRequirements } from "../../sdk/index.js";
3
- /**
4
- * Extension point that ties each prerequisite kind to its detail payload.
5
- *
6
- * IMPORTANT: only add prerequisites that are *actionable by the transaction
7
- * sender* (the LP provider or borrower). A valid prerequisite is one the user
8
- * can resolve themselves before retrying, e.g. approve a token (`allowance`)
9
- * or perform offchain KYC verification.
10
- *
11
- * Do NOT add protocol- or admin-level state the user cannot change.
12
- */
13
- export interface PrerequisiteDetailMap {
14
- /** ERC-20 allowance from `owner` to `spender` must cover `required`. */
15
- allowance: {
16
- token: Address;
17
- owner: Address;
18
- spender: Address;
19
- required: bigint;
20
- /** On-chain allowance read; only present when the read succeeded. */
21
- actual?: bigint;
22
- };
23
- /** ERC-20 balance of `owner` must cover `required`. */
24
- balance: {
25
- token: Address;
26
- owner: Address;
27
- required: bigint;
28
- /** On-chain balance read; only present when the read succeeded. */
29
- actual?: bigint;
30
- };
31
- /**
32
- * RWA (e.g. Securitize) open-account requirements: off-chain token
33
- * registration and/or EIP-712 signatures the borrower must provide before
34
- * opening a credit account in an RWA market.
35
- */
36
- rwaOpenRequirements: {
37
- /** RWA token (e.g. Securitize DSToken) the requirements are checked for. */
38
- token: Address;
39
- /** Credit manager of the RWA market. */
40
- creditManager: Address;
41
- /** RWA factory that gates the token. */
42
- factory: Address;
43
- /**
44
- * Full requirements fetched at verify time via
45
- * `sdk.accounts.getOpenAccountRequirements`; only present when the read
46
- * succeeded and the factory gates the token.
47
- */
48
- requirements?: RWAOpenAccountRequirements;
49
- /**
50
- * Subset of `requirements` still unfulfilled, computed by the RWA
51
- * factory at verify time (`IRWAFactory.getMissingRequirements`);
52
- * `undefined` when everything is satisfied.
53
- */
54
- missing?: RWAMissingOpenAccountRequirements;
55
- };
56
- }
57
- export type PrerequisiteKind = keyof PrerequisiteDetailMap;
58
- export type PrerequisiteDetail<K extends PrerequisiteKind = PrerequisiteKind> = PrerequisiteDetailMap[K];
2
+ import type { OnchainSDK } from "../../sdk/index.js";
3
+ import type { AllowanceResult } from "./AllowancePrerequisite.js";
4
+ import type { BalanceResult } from "./BalancePrerequisite.js";
5
+ import type { RWAOpenRequirementsResult } from "./RWAOpenRequirementsPrerequisite.js";
59
6
  /** Failure of the underlying on-chain read (revert, decode error, RPC error). */
60
7
  export interface PrerequisiteError {
61
8
  /** Decoded revert reason / error name, human-readable. */
@@ -63,32 +10,27 @@ export interface PrerequisiteError {
63
10
  /** Original error, kept for debugging. */
64
11
  cause?: unknown;
65
12
  }
66
- export interface PrerequisiteBase<K extends PrerequisiteKind> {
67
- id: string;
68
- kind: K;
69
- title: string;
70
- detail: PrerequisiteDetail<K>;
71
- }
72
13
  /**
73
14
  * Outcome of verifying a single prerequisite: either the read succeeded (a
74
15
  * `satisfied` boolean) or it reverted/failed (an `error` with the revert
75
- * reason). The two variants are mutually exclusive.
16
+ * reason).
76
17
  */
77
- export type PrerequisiteResult<K extends PrerequisiteKind = PrerequisiteKind> = PrerequisiteBase<K> & ({
18
+ export type PrerequisiteOutcome = {
78
19
  satisfied: boolean;
79
20
  error?: undefined;
80
21
  } | {
81
22
  satisfied?: undefined;
82
23
  error: PrerequisiteError;
83
- });
24
+ };
84
25
  /**
85
- * Discriminated union over every prerequisite kind. Switching on `kind`
86
- * narrows `detail` to the matching payload, so React components can render
87
- * kind-specific details with full type safety.
26
+ * Discriminated union over every prerequisite kind
27
+ *
28
+ * Only add prerequisites that are actionable by tx sender.
29
+ * A valid prerequisite is one the user can resolve themselves before retrying,
30
+ * e.g. approve a token (`allowance`) or perform offchain KYC verification.
88
31
  */
89
- export type AnyPrerequisiteResult = {
90
- [K in PrerequisiteKind]: PrerequisiteResult<K>;
91
- }[PrerequisiteKind];
32
+ export type PrerequisiteResult = AllowanceResult | BalanceResult | RWAOpenRequirementsResult;
33
+ export type PrerequisiteKind = PrerequisiteResult["kind"];
92
34
  /** Shared inputs for building and verifying prerequisites. */
93
35
  export interface PrerequisiteContext {
94
36
  sdk: OnchainSDK;
@@ -1,5 +1,6 @@
1
+ import { type SdkWithAdapters } from "../../plugins/adapters/index.js";
1
2
  import { type Asset, AssetsMap, type PluginsMap } from "../../sdk/index.js";
2
- import type { InnerOperation, SdkWithAdapters } from "../parse/index.js";
3
+ import type { InnerOperation } from "../parse/index.js";
3
4
  /**
4
5
  * Running state threaded through a credit-facade multicall by
5
6
  * {@link applyInnerOperations}. Seeded by the caller:
@@ -51,9 +52,15 @@ export declare function makeInnerOperationsState(): InnerOperationsState;
51
52
  * exact deltas for explicit facade calls, exact leftovers for diff-style
52
53
  * adapter calls inside `storeExpectedBalances`/`compareBalances` brackets and
53
54
  * enforced minimums for bracket targets. Adapter calls outside a bracket are
54
- * ignored: nothing enforces their outcome on-chain (e.g. reward claims and RWA
55
- * wrap/unwrap calls emitted by `CreditAccountsServiceV310`), so their
56
- * guaranteed balance change is zero.
55
+ * ignored: nothing enforces their outcome on-chain (e.g. reward claims), so
56
+ * their guaranteed balance change is zero.
57
+ *
58
+ * The exception is RWA wrap/unwrap calls emitted by
59
+ * `CreditAccountsServiceV310`: out-of-bracket ERC4626 adapter calls whose
60
+ * share token is an RWA underlying. Their outcome is essential to the preview
61
+ * (the conversion between the market underlying and its asset); RWA
62
+ * underlyings always convert 1-to-1 with their vault asset, so the conversion
63
+ * is applied directly, see {@link applyRWAWrapUnwrap}.
57
64
  *
58
65
  * @throws On malformed `storeExpectedBalances`/`compareBalances` brackets and
59
66
  * on bracketed calls to non-adapter targets.
@@ -0,0 +1,13 @@
1
+ import { type Hex } from "viem";
2
+ import type { ERC4626AdapterContract } from "../../plugins/adapters/index.js";
3
+ import type { AssetsMap } from "../../sdk/index.js";
4
+ /**
5
+ * Applies an RWA wrap/unwrap adapter call (ERC4626 `deposit`/`redeem` and
6
+ * their diff variants, as emitted by `CreditAccountsServiceV310`) to the
7
+ * running credit-account balances.
8
+ *
9
+ * RWA underlyings always convert 1-to-1 with their vault asset, so the
10
+ * counterpart amount equals the input amount and no on-chain preview read is
11
+ * needed.
12
+ */
13
+ export declare function applyRWAWrapUnwrap(adapter: ERC4626AdapterContract, calldata: Hex, balances: AssetsMap): void;
@@ -2,6 +2,6 @@ export * from "./applyInnerOperations.js";
2
2
  export * from "./detectCloseOrRepay.js";
3
3
  export * from "./errors.js";
4
4
  export * from "./previewAdjustCreditAccount.js";
5
- export * from "./previewCloseOrRepay.js";
5
+ export * from "./previewCloseOrRepayCreditAccount.js";
6
6
  export * from "./previewOperation.js";
7
7
  export * from "./types.js";
@@ -1,6 +1,7 @@
1
1
  import { type PluginsMap } from "../../sdk/index.js";
2
2
  import type { MulticallOperation, RWAMulticallOperation } from "../parse/index.js";
3
- import type { AdjustCreditAccountPreview, PreviewOperationInput, PreviewOperationOptions } from "./types.js";
3
+ import type { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
4
+ import type { AdjustCreditAccountPreview } from "./types.js";
4
5
  /**
5
6
  * Previews a `multicall`/`botMulticall` operation on an existing credit
6
7
  * account: fetches the account's pre-state (unless provided via options),
@@ -1,10 +1,11 @@
1
1
  import { type PluginsMap } from "../../sdk/index.js";
2
2
  import type { CloseCreditAccountOperation, MulticallOperation, RWAMulticallOperation } from "../parse/index.js";
3
- import type { OperationPreview, PreviewOperationInput, PreviewOperationOptions } from "./types.js";
3
+ import type { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
4
+ import type { OperationPreview } from "./types.js";
4
5
  /**
5
6
  * Any parsed operation that fully closes or repays a credit account: the
6
7
  * facade `closeCreditAccount` entry point (permanent closure) or a plain
7
8
  * multicall detected by `isCloseOrRepay` (zero-debt closure/repay).
8
9
  */
9
10
  export type CloseOrRepayOperation = CloseCreditAccountOperation | MulticallOperation | RWAMulticallOperation;
10
- export declare function previewCloseOrRepay<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: CloseOrRepayOperation, permanent: boolean, options?: PreviewOperationOptions): Promise<OperationPreview>;
11
+ export declare function previewCloseOrRepayCreditAccount<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: CloseOrRepayOperation, permanent: boolean, options?: PreviewOperationOptions): Promise<OperationPreview>;
@@ -1,4 +1,5 @@
1
1
  import { type PluginsMap } from "../../sdk/index.js";
2
2
  import type { OpenCreditAccountOperation, RWAOpenCreditAccountOperation } from "../parse/index.js";
3
- import type { OpenCreditAccountPreview, PreviewOperationInput } from "./types.js";
3
+ import type { PreviewOperationInput } from "../types.js";
4
+ import type { OpenCreditAccountPreview } from "./types.js";
4
5
  export declare function previewOpenCreditAccount<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: OpenCreditAccountOperation | RWAOpenCreditAccountOperation): OpenCreditAccountPreview;
@@ -1,5 +1,6 @@
1
1
  import type { PluginsMap } from "../../sdk/index.js";
2
- import type { OperationPreview, PreviewOperationInput, PreviewOperationOptions } from "./types.js";
2
+ import type { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
3
+ import type { OperationPreview } from "./types.js";
3
4
  /**
4
5
  * Previews a raw operation calldata: decodes it into a typed operation and
5
6
  * assembles an operation-specific, human-displayable preview.
@@ -1,5 +1,5 @@
1
1
  import type { PluginsMap } from "../../sdk/index.js";
2
2
  import type { PoolOperation } from "../parse/index.js";
3
- import { type OperationSimulationOptions } from "../simulate/index.js";
4
- import type { PoolOperationPreview, PreviewOperationInput } from "./types.js";
5
- export declare function previewPoolOperation<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: PoolOperation, options?: OperationSimulationOptions): Promise<PoolOperationPreview>;
3
+ import type { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
4
+ import type { PoolOperationPreview } from "./types.js";
5
+ export declare function previewPoolOperation<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: PoolOperation, options?: PreviewOperationOptions): Promise<PoolOperationPreview>;
@@ -1,57 +1,6 @@
1
- import type { Address, Hex } from "viem";
2
- import type { Asset, CreditAccountData, PluginsMap } from "../../sdk/index.js";
3
- import type { PoolOperationType, SdkWithAdapters } from "../parse/index.js";
4
- import type { OperationSimulationOptions } from "../simulate/index.js";
5
- /**
6
- * Input of {@link previewOperation}: the raw operation calldata plus the
7
- * already-attached SDK
8
- */
9
- export interface PreviewOperationInput<P extends PluginsMap = PluginsMap> {
10
- /**
11
- * Already-attached SDK; chain, RPC and block are baked in at attach time.
12
- * Must be created with the adapters plugin (enforced at compile time) so
13
- * adapter contracts resolve during multicall classification.
14
- */
15
- sdk: SdkWithAdapters<P>;
16
- /**
17
- * Contract address that was called
18
- */
19
- to: Address;
20
- /**
21
- * Raw calldata of the operation
22
- */
23
- calldata: Hex;
24
- /**
25
- * Transaction sender
26
- */
27
- sender: Address;
28
- /**
29
- * Transaction `msg.value`
30
- **/
31
- value?: bigint;
32
- }
33
- /**
34
- * Options of {@link previewOperation}, extending the simulation options with
35
- * preview-specific inputs.
36
- */
37
- export interface PreviewOperationOptions extends OperationSimulationOptions {
38
- /**
39
- * Pre-fetched state of the credit account being adjusted. When omitted,
40
- * multicall/botMulticall previews fetch it via
41
- * `sdk.accounts.getCreditAccountData` (one compressor read). Ignored by
42
- * other operation kinds.
43
- */
44
- creditAccount?: CreditAccountData;
45
- }
46
- /**
47
- * A token amount that may require an additional async call (e.g. an ERC4626
48
- * preview read) to determine. When that call fails, only the token address and
49
- * the error are returned.
50
- */
51
- export type PreviewedAsset = Asset | {
52
- token: Address;
53
- error: Error;
54
- };
1
+ import type { Address } from "viem";
2
+ import type { Asset } from "../../sdk/index.js";
3
+ import type { PoolOperationType } from "../parse/index.js";
55
4
  export interface PoolOperationPreview {
56
5
  operation: PoolOperationType;
57
6
  /**
@@ -65,10 +14,9 @@ export interface PoolOperationPreview {
65
14
  *
66
15
  * For mint/withdraw the amount of tokenIn cannot be determined from
67
16
  * transaction calldata alone and requires an additional async call
68
- * (previewMint/previewWithdraw). In case of error only the token address is
69
- * returned.
17
+ * (previewMint/previewWithdraw).
70
18
  */
71
- tokenIn: PreviewedAsset;
19
+ tokenIn: Asset;
72
20
  /**
73
21
  * Token that goes from pool to user
74
22
  * In case of deposit, pool shares (diesel token) for direct deposit or zapper token out
@@ -76,10 +24,9 @@ export interface PoolOperationPreview {
76
24
  *
77
25
  * For deposit/redeem the amount of tokenOut cannot be determined from
78
26
  * transaction calldata alone and requires an additional async call
79
- * (previewDeposit/previewRedeem). In case of error only the token address is
80
- * returned.
27
+ * (previewDeposit/previewRedeem).
81
28
  */
82
- tokenOut: PreviewedAsset;
29
+ tokenOut: Asset;
83
30
  }
84
31
  export interface OpenCreditAccountPreview {
85
32
  operation: "OpenCreditAccount" | "RWAOpenCreditAccount";
@@ -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
- };
@@ -0,0 +1,52 @@
1
+ import type { Address, Hex } from "viem";
2
+ import type { SdkWithAdapters } from "../plugins/adapters/index.js";
3
+ import type { CreditAccountData, PluginsMap } from "../sdk/index.js";
4
+ import type { ILogger } from "../sdk/types/logger.js";
5
+ /**
6
+ * Raw-calldata operation input shared by `parseOperationCalldata`,
7
+ * `previewOperation` and `checkPrerequisites`.
8
+ */
9
+ export interface PreviewOperationInput<P extends PluginsMap = PluginsMap> {
10
+ /**
11
+ * Already-attached SDK; chain, RPC and block are baked in at attach time.
12
+ * Must be created with the adapters plugin (enforced at compile time) so
13
+ * adapter contracts resolve during multicall classification.
14
+ */
15
+ sdk: SdkWithAdapters<P>;
16
+ /**
17
+ * Contract address that was called
18
+ */
19
+ to: Address;
20
+ /**
21
+ * Raw calldata of the operation
22
+ */
23
+ calldata: Hex;
24
+ /**
25
+ * Transaction sender
26
+ */
27
+ sender: Address;
28
+ /**
29
+ * Transaction `msg.value`, required for native-token zapper deposits.
30
+ **/
31
+ value?: bigint;
32
+ }
33
+ /**
34
+ * Options shared by the preview, simulation and prerequisite-check flows.
35
+ * Each flow uses the subset it needs and ignores the rest.
36
+ */
37
+ export interface PreviewOperationOptions {
38
+ /**
39
+ * Block to read/simulate at; defaults to latest. Only set for testnet
40
+ * forks.
41
+ */
42
+ blockNumber?: bigint;
43
+ /**
44
+ * Optional logger.
45
+ **/
46
+ logger?: ILogger;
47
+ /**
48
+ * @internal
49
+ * Credit account state for testing purposes
50
+ */
51
+ creditAccount?: CreditAccountData;
52
+ }
@@ -59,22 +59,22 @@ export declare const SUPPORTED_NETWORKS: readonly ["Mainnet", "Arbitrum", "Optim
59
59
  * Zod schema for validating/parsing network type strings.
60
60
  **/
61
61
  export declare const NetworkType: z.ZodEnum<{
62
- Mainnet: "Mainnet";
63
62
  Arbitrum: "Arbitrum";
64
- Optimism: "Optimism";
65
- Base: "Base";
66
- Sonic: "Sonic";
67
- MegaETH: "MegaETH";
68
- Monad: "Monad";
69
- Berachain: "Berachain";
70
63
  Avalanche: "Avalanche";
71
64
  BNB: "BNB";
72
- WorldChain: "WorldChain";
65
+ Base: "Base";
66
+ Berachain: "Berachain";
73
67
  Etherlink: "Etherlink";
74
68
  Hemi: "Hemi";
75
69
  Lisk: "Lisk";
70
+ Mainnet: "Mainnet";
71
+ MegaETH: "MegaETH";
72
+ Monad: "Monad";
73
+ Optimism: "Optimism";
76
74
  Plasma: "Plasma";
77
75
  Somnia: "Somnia";
76
+ Sonic: "Sonic";
77
+ WorldChain: "WorldChain";
78
78
  }>;
79
79
  /**
80
80
  * All supported Gearbox network labels
@@ -1532,13 +1532,13 @@ export declare class MarketConfiguratorContract extends BaseContract<abi> {
1532
1532
  constructor(options: ConstructOptions, address: Address);
1533
1533
  loadCuratorName(): Promise<void>;
1534
1534
  static getPeripheryContractBatch(configurators: MarketConfiguratorContract[], client: MarketConfiguratorContract["client"], contract: PeripheryContract, blockNumber?: bigint): Promise<({
1535
- error: Error;
1536
- result?: undefined;
1537
- status: "failure";
1538
- } | {
1539
1535
  error?: undefined;
1540
1536
  result: readonly `0x${string}`[];
1541
- status: "success";
1537
+ status: 'success';
1538
+ } | {
1539
+ error: Error;
1540
+ result?: undefined;
1541
+ status: 'failure';
1542
1542
  })[]>;
1543
1543
  getPeripheryContract(contract: PeripheryContract): Promise<Address>;
1544
1544
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
@@ -219,7 +219,7 @@ declare const abi: readonly [{
219
219
  type abi = typeof abi;
220
220
  declare const iPythAbi: readonly [{
221
221
  readonly name: "getUpdateFee";
222
- readonly type: "function";
222
+ readonly type: 'function';
223
223
  readonly stateMutability: "view";
224
224
  readonly inputs: readonly [{
225
225
  readonly type: "bytes[]";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/sdk",
3
- "version": "14.12.0-next.15",
3
+ "version": "14.12.0-next.16",
4
4
  "description": "Gearbox SDK",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -83,7 +83,6 @@
83
83
  "docs:serve": "pnpm --filter @gearbox-protocol/sdk-docs serve"
84
84
  },
85
85
  "dependencies": {
86
- "@gearbox-protocol/integrations-v3": "1.54.2",
87
86
  "@redstone-finance/evm-connector": "^0.9.0",
88
87
  "@redstone-finance/protocol": "^0.9.0",
89
88
  "@redstone-finance/sdk": "^0.9.0",
@@ -95,23 +94,23 @@
95
94
  "zod": "^4.4.3"
96
95
  },
97
96
  "devDependencies": {
98
- "@biomejs/biome": "^2.5.0",
99
- "@commitlint/cli": "^21.0.2",
100
- "@commitlint/config-conventional": "^21.0.2",
101
- "@gearbox-protocol/biome-config": "^1.0.30",
97
+ "@biomejs/biome": "^2.5.3",
98
+ "@commitlint/cli": "^21.2.1",
99
+ "@commitlint/config-conventional": "^21.2.0",
100
+ "@gearbox-protocol/biome-config": "^1.1.2",
102
101
  "@types/cross-spawn": "^6.0.6",
103
- "axios": "^1.18.0",
102
+ "axios": "^1.18.1",
104
103
  "cross-spawn": "^7.0.6",
105
104
  "husky": "^9.1.7",
106
- "lint-staged": "^17.0.7",
105
+ "lint-staged": "^17.0.8",
107
106
  "pino": "^10.3.1",
108
107
  "pino-pretty": "^13.1.3",
109
108
  "tsup": "^8.5.1",
110
- "tsx": "^4.22.4",
111
- "typescript": "^6.0.3",
109
+ "tsx": "^4.23.0",
110
+ "typescript": "^7.0.2",
112
111
  "viem-deal": "^2.0.4",
113
- "vite": "^8.0.16",
114
- "vitest": "^4.1.9",
112
+ "vite": "^8.1.3",
113
+ "vitest": "^4.1.10",
115
114
  "yaml": "^2.9.0"
116
115
  },
117
116
  "peerDependencies": {