@gearbox-protocol/sdk 14.12.0-next.1 → 14.12.0-next.11

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 (322) hide show
  1. package/dist/cjs/abi/iZapper.js +62 -24
  2. package/dist/cjs/dev/AccountOpener.js +7 -13
  3. package/dist/cjs/history/classifyMulticallOperations.js +2 -0
  4. package/dist/cjs/history/mapOperations.js +7 -0
  5. package/dist/cjs/plugins/adapters/abi/iConvexV1BoosterAdapter.js +143 -0
  6. package/dist/cjs/plugins/adapters/abi/index.js +2 -0
  7. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +36 -0
  8. package/dist/cjs/plugins/adapters/contracts/AbstractCurveAdapter.js +66 -0
  9. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +19 -0
  10. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +15 -0
  11. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +20 -0
  12. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +18 -0
  13. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +28 -2
  14. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -7
  15. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -7
  16. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -7
  17. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  18. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -7
  19. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -7
  20. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +14 -0
  21. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +15 -0
  22. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +14 -0
  23. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +15 -0
  24. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +21 -0
  25. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +10 -0
  26. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +11 -0
  27. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +15 -0
  28. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +15 -0
  29. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +11 -0
  30. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +10 -0
  31. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +12 -0
  32. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +58 -0
  33. package/dist/cjs/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +11 -0
  34. package/dist/cjs/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +22 -1
  35. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +17 -0
  36. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +10 -0
  37. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +10 -0
  38. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +20 -0
  39. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +15 -0
  40. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +14 -0
  41. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +10 -0
  42. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +15 -0
  43. package/dist/cjs/preview/index.js +2 -4
  44. package/dist/cjs/preview/parse/classifyInnerOperations.js +14 -1
  45. package/dist/cjs/preview/parse/errors.js +5 -2
  46. package/dist/cjs/preview/parse/index.js +2 -2
  47. package/dist/cjs/preview/parse/parseFacadeOperationCalldata.js +5 -12
  48. package/dist/cjs/preview/parse/parseOperationCalldata.js +40 -1
  49. package/dist/cjs/preview/parse/parsePoolOperationCalldata.js +14 -2
  50. package/dist/cjs/preview/parse/parseRWAFactoryOperationCalldata.js +104 -0
  51. package/dist/cjs/preview/parse/types-rwa.js +16 -0
  52. package/dist/cjs/preview/parse/types.js +9 -2
  53. package/dist/cjs/preview/prerequisites/AllowancePrerequisite.js +13 -13
  54. package/dist/cjs/preview/prerequisites/BalancePrerequisite.js +32 -14
  55. package/dist/cjs/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +66 -0
  56. package/dist/cjs/preview/prerequisites/buildPrerequisites.js +124 -14
  57. package/dist/cjs/preview/prerequisites/index.js +2 -0
  58. package/dist/cjs/preview/preview/applyInnerOperations.js +130 -0
  59. package/dist/cjs/preview/preview/errors.js +52 -0
  60. package/dist/cjs/preview/preview/index.js +30 -0
  61. package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +90 -0
  62. package/dist/cjs/preview/preview/previewOpenCreditAccount.js +67 -0
  63. package/dist/cjs/preview/preview/previewOperation.js +45 -0
  64. package/dist/cjs/preview/preview/previewPoolOperation.js +75 -0
  65. package/dist/cjs/preview/preview/types.js +16 -0
  66. package/dist/cjs/{sdk/market/zapper/Zapper.js → preview/preview/unwrapNativeCollateral.js} +20 -22
  67. package/dist/cjs/preview/simulate/errors.js +0 -7
  68. package/dist/cjs/preview/simulate/index.js +5 -5
  69. package/dist/cjs/preview/simulate/simulateOperation.js +4 -0
  70. package/dist/cjs/preview/simulate/simulatePoolOperation.js +60 -31
  71. package/dist/cjs/preview/simulate/{constants.js → simulateRWAOperation.js} +8 -6
  72. package/dist/cjs/sdk/MultichainSDK.js +1 -0
  73. package/dist/cjs/sdk/OnchainSDK.js +7 -3
  74. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +53 -23
  75. package/dist/cjs/sdk/base/BaseContract.js +4 -2
  76. package/dist/cjs/sdk/base/ChainContractsRegister.js +1 -0
  77. package/dist/cjs/sdk/market/MarketRegister.js +10 -5
  78. package/dist/cjs/sdk/market/ZapperRegister.js +54 -0
  79. package/dist/cjs/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +30 -0
  80. package/dist/cjs/sdk/market/rwa/types.js +5 -2
  81. package/dist/cjs/sdk/market/zapper/IERC20ZapperContract.js +3 -38
  82. package/dist/cjs/sdk/market/zapper/IETHZapperContract.js +3 -38
  83. package/dist/cjs/sdk/market/zapper/ZapperContract.js +106 -0
  84. package/dist/cjs/sdk/market/zapper/createZapper.js +12 -4
  85. package/dist/cjs/{preview/simulate/holders.js → sdk/market/zapper/errors.js} +13 -21
  86. package/dist/cjs/sdk/market/zapper/index.js +6 -2
  87. package/dist/cjs/sdk/market/zapper/types.js +16 -0
  88. package/dist/cjs/sdk/options.js +41 -17
  89. package/dist/cjs/sdk/router/AbstractRouterContract.js +21 -27
  90. package/dist/cjs/sdk/router/RouterV310Contract.js +11 -12
  91. package/dist/cjs/sdk/router/helpers.js +0 -5
  92. package/dist/cjs/sdk/utils/AddressMap.js +6 -0
  93. package/dist/cjs/sdk/utils/AssetsMap.js +97 -0
  94. package/dist/cjs/sdk/utils/index.js +2 -0
  95. package/dist/esm/abi/iZapper.js +62 -24
  96. package/dist/esm/dev/AccountOpener.js +8 -13
  97. package/dist/esm/history/classifyMulticallOperations.js +2 -0
  98. package/dist/esm/history/mapOperations.js +7 -0
  99. package/dist/esm/plugins/adapters/abi/iConvexV1BoosterAdapter.js +119 -0
  100. package/dist/esm/plugins/adapters/abi/index.js +1 -0
  101. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +36 -0
  102. package/dist/esm/plugins/adapters/contracts/AbstractCurveAdapter.js +42 -0
  103. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +22 -1
  104. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +18 -1
  105. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +23 -1
  106. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +22 -1
  107. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +30 -2
  108. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -7
  109. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -7
  110. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -7
  111. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  112. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -7
  113. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -7
  114. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +17 -1
  115. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +19 -1
  116. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +17 -1
  117. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +18 -1
  118. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +24 -1
  119. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +13 -1
  120. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +14 -1
  121. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +18 -1
  122. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +18 -1
  123. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +14 -1
  124. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +13 -1
  125. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +15 -1
  126. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +61 -1
  127. package/dist/esm/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +14 -1
  128. package/dist/esm/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +25 -2
  129. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +20 -1
  130. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +13 -1
  131. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +10 -0
  132. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +20 -0
  133. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +18 -1
  134. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +17 -1
  135. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +13 -1
  136. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +18 -1
  137. package/dist/esm/preview/index.js +1 -2
  138. package/dist/esm/preview/parse/classifyInnerOperations.js +14 -1
  139. package/dist/esm/preview/parse/errors.js +3 -1
  140. package/dist/esm/preview/parse/index.js +1 -1
  141. package/dist/esm/preview/parse/parseFacadeOperationCalldata.js +5 -12
  142. package/dist/esm/preview/parse/parseOperationCalldata.js +43 -2
  143. package/dist/esm/preview/parse/parsePoolOperationCalldata.js +14 -2
  144. package/dist/esm/preview/parse/parseRWAFactoryOperationCalldata.js +85 -0
  145. package/dist/esm/preview/parse/types-rwa.js +0 -0
  146. package/dist/esm/preview/parse/types.js +6 -1
  147. package/dist/esm/preview/prerequisites/AllowancePrerequisite.js +13 -13
  148. package/dist/esm/preview/prerequisites/BalancePrerequisite.js +32 -14
  149. package/dist/esm/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +42 -0
  150. package/dist/esm/preview/prerequisites/buildPrerequisites.js +130 -14
  151. package/dist/esm/preview/prerequisites/index.js +1 -0
  152. package/dist/esm/preview/preview/applyInnerOperations.js +108 -0
  153. package/dist/esm/preview/preview/errors.js +27 -0
  154. package/dist/esm/preview/preview/index.js +5 -0
  155. package/dist/esm/preview/preview/previewAdjustCreditAccount.js +74 -0
  156. package/dist/esm/preview/preview/previewOpenCreditAccount.js +49 -0
  157. package/dist/esm/preview/preview/previewOperation.js +21 -0
  158. package/dist/esm/preview/preview/previewPoolOperation.js +53 -0
  159. package/dist/esm/preview/preview/types.js +0 -0
  160. package/dist/esm/preview/preview/unwrapNativeCollateral.js +21 -0
  161. package/dist/esm/preview/simulate/errors.js +0 -6
  162. package/dist/esm/preview/simulate/index.js +3 -3
  163. package/dist/esm/preview/simulate/simulateOperation.js +8 -1
  164. package/dist/esm/preview/simulate/simulatePoolOperation.js +61 -35
  165. package/dist/esm/preview/simulate/simulateRWAOperation.js +6 -0
  166. package/dist/esm/sdk/MultichainSDK.js +1 -0
  167. package/dist/esm/sdk/OnchainSDK.js +7 -3
  168. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +54 -24
  169. package/dist/esm/sdk/base/BaseContract.js +4 -2
  170. package/dist/esm/sdk/base/ChainContractsRegister.js +1 -0
  171. package/dist/esm/sdk/market/MarketRegister.js +10 -5
  172. package/dist/esm/sdk/market/ZapperRegister.js +54 -0
  173. package/dist/esm/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +33 -1
  174. package/dist/esm/sdk/market/rwa/types.js +5 -2
  175. package/dist/esm/sdk/market/zapper/IERC20ZapperContract.js +3 -38
  176. package/dist/esm/sdk/market/zapper/IETHZapperContract.js +3 -38
  177. package/dist/esm/sdk/market/zapper/ZapperContract.js +82 -0
  178. package/dist/esm/sdk/market/zapper/createZapper.js +12 -4
  179. package/dist/esm/sdk/market/zapper/errors.js +13 -0
  180. package/dist/esm/sdk/market/zapper/index.js +3 -1
  181. package/dist/esm/sdk/market/zapper/types.js +0 -0
  182. package/dist/esm/sdk/options.js +39 -15
  183. package/dist/esm/sdk/router/AbstractRouterContract.js +25 -29
  184. package/dist/esm/sdk/router/RouterV310Contract.js +11 -12
  185. package/dist/esm/sdk/router/helpers.js +0 -4
  186. package/dist/esm/sdk/utils/AddressMap.js +6 -0
  187. package/dist/esm/sdk/utils/AssetsMap.js +73 -0
  188. package/dist/esm/sdk/utils/index.js +1 -0
  189. package/dist/types/abi/iERC20Zapper.d.ts +91 -23
  190. package/dist/types/abi/iETHZapper.d.ts +91 -23
  191. package/dist/types/abi/iZapper.d.ts +91 -23
  192. package/dist/types/common-utils/utils/strategies/assets/assets.d.ts +1 -1
  193. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +1 -1
  194. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +1 -1
  195. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +1 -1
  196. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +1 -1
  197. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +1 -1
  198. package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +1 -1
  199. package/dist/types/common-utils/utils/validation/validate-balances.d.ts +1 -1
  200. package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +1 -1
  201. package/dist/types/common-utils/utils/validation/validate-quota.d.ts +1 -1
  202. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.d.ts +1 -1
  203. package/dist/types/history/types.d.ts +4 -4
  204. package/dist/types/plugins/adapters/abi/iConvexV1BoosterAdapter.d.ts +204 -0
  205. package/dist/types/plugins/adapters/abi/index.d.ts +1 -0
  206. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +21 -3
  207. package/dist/types/plugins/adapters/contracts/AbstractCurveAdapter.d.ts +18 -0
  208. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +4 -2
  209. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +4 -2
  210. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +4 -2
  211. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +4 -2
  212. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +8 -6
  213. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +3 -6
  214. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +3 -6
  215. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +3 -6
  216. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +2 -2
  217. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +3 -6
  218. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +3 -6
  219. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +4 -2
  220. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +4 -2
  221. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +4 -2
  222. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +4 -2
  223. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +4 -2
  224. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +4 -2
  225. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +4 -2
  226. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +4 -2
  227. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +4 -2
  228. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +4 -2
  229. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +4 -2
  230. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +4 -2
  231. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +4 -2
  232. package/dist/types/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +4 -2
  233. package/dist/types/plugins/adapters/contracts/SecuritizeSwapAdapterContract.d.ts +15 -3
  234. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +4 -2
  235. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +4 -2
  236. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +3 -1
  237. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -1
  238. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +4 -2
  239. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +4 -2
  240. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +4 -2
  241. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +4 -2
  242. package/dist/types/plugins/adapters/types.d.ts +10 -0
  243. package/dist/types/preview/index.d.ts +1 -2
  244. package/dist/types/preview/parse/classifyInnerOperations.d.ts +0 -2
  245. package/dist/types/preview/parse/errors.d.ts +1 -0
  246. package/dist/types/preview/parse/index.d.ts +1 -1
  247. package/dist/types/preview/parse/parseOperationCalldata.d.ts +3 -3
  248. package/dist/types/preview/parse/parseRWAFactoryOperationCalldata.d.ts +22 -0
  249. package/dist/types/preview/parse/types-adapters.d.ts +5 -1
  250. package/dist/types/preview/parse/types-facades.d.ts +23 -34
  251. package/dist/types/preview/parse/types-pools.d.ts +90 -2
  252. package/dist/types/preview/parse/types-rwa.d.ts +48 -0
  253. package/dist/types/preview/parse/types.d.ts +11 -6
  254. package/dist/types/preview/prerequisites/AllowancePrerequisite.d.ts +1 -3
  255. package/dist/types/preview/prerequisites/BalancePrerequisite.d.ts +9 -6
  256. package/dist/types/preview/prerequisites/RWAOpenRequirementsPrerequisite.d.ts +36 -0
  257. package/dist/types/preview/prerequisites/buildPrerequisites.d.ts +15 -6
  258. package/dist/types/preview/prerequisites/index.d.ts +1 -0
  259. package/dist/types/preview/prerequisites/types.d.ts +10 -8
  260. package/dist/types/preview/preview/applyInnerOperations.d.ts +77 -0
  261. package/dist/types/preview/preview/errors.d.ts +21 -0
  262. package/dist/types/preview/preview/index.d.ts +5 -0
  263. package/dist/types/preview/preview/previewAdjustCreditAccount.d.ts +11 -0
  264. package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +4 -0
  265. package/dist/types/preview/preview/previewOperation.d.ts +7 -0
  266. package/dist/types/preview/preview/previewPoolOperation.d.ts +5 -0
  267. package/dist/types/preview/preview/types.d.ts +177 -0
  268. package/dist/types/preview/preview/unwrapNativeCollateral.d.ts +20 -0
  269. package/dist/types/preview/simulate/errors.d.ts +6 -12
  270. package/dist/types/preview/simulate/index.d.ts +3 -2
  271. package/dist/types/preview/simulate/simulateFacadeOperation.d.ts +0 -2
  272. package/dist/types/preview/simulate/simulateOperation.d.ts +0 -2
  273. package/dist/types/preview/simulate/simulatePoolOperation.d.ts +9 -3
  274. package/dist/types/preview/simulate/simulateRWAOperation.d.ts +23 -0
  275. package/dist/types/preview/simulate/types.d.ts +12 -39
  276. package/dist/types/sdk/MultichainSDK.d.ts +5 -0
  277. package/dist/types/sdk/OnchainSDK.d.ts +4 -0
  278. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +11 -3
  279. package/dist/types/sdk/accounts/types.d.ts +66 -8
  280. package/dist/types/sdk/base/BaseContract.d.ts +1 -1
  281. package/dist/types/sdk/base/TokensMeta.d.ts +1 -1
  282. package/dist/types/sdk/base/types.d.ts +18 -0
  283. package/dist/types/sdk/market/MarketRegister.d.ts +15 -6
  284. package/dist/types/sdk/market/ZapperRegister.d.ts +25 -4
  285. package/dist/types/sdk/market/rwa/securitize/SecuritizeRWAFactory.d.ts +6 -1
  286. package/dist/types/sdk/market/rwa/types.d.ts +13 -5
  287. package/dist/types/sdk/market/zapper/IERC20ZapperContract.d.ts +93 -39
  288. package/dist/types/sdk/market/zapper/IETHZapperContract.d.ts +93 -39
  289. package/dist/types/sdk/market/zapper/ZapperContract.d.ts +35 -0
  290. package/dist/types/sdk/market/zapper/createZapper.d.ts +2 -4
  291. package/dist/types/sdk/market/zapper/errors.d.ts +10 -0
  292. package/dist/types/sdk/market/zapper/index.d.ts +3 -1
  293. package/dist/types/sdk/market/zapper/types.d.ts +64 -0
  294. package/dist/types/sdk/options.d.ts +10 -5
  295. package/dist/types/sdk/pools/types.d.ts +4 -4
  296. package/dist/types/sdk/router/AbstractRouterContract.d.ts +5 -5
  297. package/dist/types/sdk/router/helpers.d.ts +1 -2
  298. package/dist/types/sdk/router/types.d.ts +1 -15
  299. package/dist/types/sdk/types/state-human.d.ts +9 -0
  300. package/dist/types/sdk/types/state.d.ts +7 -0
  301. package/dist/types/sdk/utils/AddressMap.d.ts +4 -0
  302. package/dist/types/sdk/utils/AssetsMap.d.ts +44 -0
  303. package/dist/types/sdk/utils/index.d.ts +1 -0
  304. package/package.json +3 -3
  305. package/dist/cjs/preview/parse/extractExpectedBalanceChanges.js +0 -48
  306. package/dist/cjs/preview/simulate/extractERC20Transfers.js +0 -47
  307. package/dist/cjs/preview/simulate/simulatePoolOpMulticall.js +0 -155
  308. package/dist/cjs/preview/simulate/simulatePoolOpV1.js +0 -106
  309. package/dist/esm/preview/parse/extractExpectedBalanceChanges.js +0 -24
  310. package/dist/esm/preview/simulate/constants.js +0 -4
  311. package/dist/esm/preview/simulate/extractERC20Transfers.js +0 -23
  312. package/dist/esm/preview/simulate/holders.js +0 -21
  313. package/dist/esm/preview/simulate/simulatePoolOpMulticall.js +0 -130
  314. package/dist/esm/preview/simulate/simulatePoolOpV1.js +0 -82
  315. package/dist/esm/sdk/market/zapper/Zapper.js +0 -23
  316. package/dist/types/preview/parse/extractExpectedBalanceChanges.d.ts +0 -22
  317. package/dist/types/preview/simulate/constants.d.ts +0 -6
  318. package/dist/types/preview/simulate/extractERC20Transfers.d.ts +0 -11
  319. package/dist/types/preview/simulate/holders.d.ts +0 -7
  320. package/dist/types/preview/simulate/simulatePoolOpMulticall.d.ts +0 -28
  321. package/dist/types/preview/simulate/simulatePoolOpV1.d.ts +0 -14
  322. package/dist/types/sdk/market/zapper/Zapper.d.ts +0 -13
@@ -1,5 +1,7 @@
1
1
  import { iCamelotV3AdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters } from "viem";
2
+ import {
3
+ decodeAbiParameters
4
+ } from "viem";
3
5
  import { MissingSerializedParamsError } from "../../../sdk/index.js";
4
6
  import { iCamelotV3RouterAbi } from "../abi/targetContractAbi.js";
5
7
  import { AbstractAdapterContract } from "./AbstractAdapter.js";
@@ -45,6 +47,26 @@ class CamelotV3AdapterContract extends AbstractAdapterContract {
45
47
  }))
46
48
  };
47
49
  }
50
+ decodeDiffLeftovers(decoded, balances) {
51
+ switch (decoded.functionName) {
52
+ case "exactDiffInputSingle": {
53
+ const [params] = decoded.args;
54
+ return [
55
+ {
56
+ tokenIn: params.tokenIn,
57
+ leftoverAmount: params.leftoverAmount
58
+ }
59
+ ];
60
+ }
61
+ case "exactDiffInput": {
62
+ const [params] = decoded.args;
63
+ const tokenIn = `0x${params.path.replace("0x", "").slice(0, 40)}`;
64
+ return [{ tokenIn, leftoverAmount: params.leftoverAmount }];
65
+ }
66
+ default:
67
+ return super.decodeDiffLeftovers(decoded, balances);
68
+ }
69
+ }
48
70
  }
49
71
  export {
50
72
  CamelotV3AdapterContract
@@ -1,5 +1,8 @@
1
1
  import { iConvexV1BaseRewardPoolAdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters, zeroAddress } from "viem";
2
+ import {
3
+ decodeAbiParameters,
4
+ zeroAddress
5
+ } from "viem";
3
6
  import {
4
7
  MissingSerializedParamsError
5
8
  } from "../../../sdk/index.js";
@@ -113,6 +116,24 @@ class ConvexV1BaseRewardPoolAdapterContract extends AbstractAdapterContract {
113
116
  withdrawAmount: swap.toAmount
114
117
  };
115
118
  }
119
+ decodeDiffLeftovers(decoded, balances) {
120
+ switch (decoded.functionName) {
121
+ case "stakeDiff": {
122
+ const [leftoverAmount] = decoded.args;
123
+ return [{ tokenIn: this.stakingToken, leftoverAmount }];
124
+ }
125
+ case "withdrawDiff":
126
+ case "withdrawDiffAndUnwrap": {
127
+ const [leftoverAmount] = decoded.args;
128
+ return [{ tokenIn: this.stakedPhantomToken, leftoverAmount }];
129
+ }
130
+ // no accrued rewards on a freshly opened account
131
+ case "getReward":
132
+ return [];
133
+ default:
134
+ return super.decodeDiffLeftovers(decoded, balances);
135
+ }
136
+ }
116
137
  }
117
138
  export {
118
139
  ConvexV1BaseRewardPoolAdapterContract
@@ -1,8 +1,10 @@
1
- import { iConvexV1BoosterAdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters } from "viem";
1
+ import {
2
+ decodeAbiParameters
3
+ } from "viem";
3
4
  import {
4
5
  MissingSerializedParamsError
5
6
  } from "../../../sdk/index.js";
7
+ import { iConvexV1BoosterAdapterAbi } from "../abi/iConvexV1BoosterAdapter.js";
6
8
  import { iBoosterAbi } from "../abi/targetContractAbi.js";
7
9
  import { fnSigToName, swapFromTransfers } from "../transferHelpers.js";
8
10
  import { AbstractAdapterContract } from "./AbstractAdapter.js";
@@ -81,6 +83,32 @@ class ConvexV1BoosterAdapterContract extends AbstractAdapterContract {
81
83
  }
82
84
  return super.classifyLegacyOperation(parsed, transfers);
83
85
  }
86
+ decodeDiffLeftovers(decoded, balances) {
87
+ switch (decoded.functionName) {
88
+ // deposit spends the curve LP token, withdraw spends the convex token
89
+ case "depositDiff": {
90
+ const [pid, leftoverAmount] = decoded.args;
91
+ const pool = this.#mustFindPool(Number(pid));
92
+ return [{ tokenIn: pool.curveToken, leftoverAmount }];
93
+ }
94
+ case "withdrawDiff": {
95
+ const [pid, leftoverAmount] = decoded.args;
96
+ const pool = this.#mustFindPool(Number(pid));
97
+ return [{ tokenIn: pool.convexToken, leftoverAmount }];
98
+ }
99
+ default:
100
+ return super.decodeDiffLeftovers(decoded, balances);
101
+ }
102
+ }
103
+ #mustFindPool(pid) {
104
+ const pool = this.supportedPools.find((p) => p.pid === pid);
105
+ if (!pool) {
106
+ throw new Error(
107
+ `convex pool with pid ${pid} not found on booster adapter at ${this.address}`
108
+ );
109
+ }
110
+ return pool;
111
+ }
84
112
  }
85
113
  export {
86
114
  ConvexV1BoosterAdapterContract
@@ -4,11 +4,10 @@ import {
4
4
  MissingSerializedParamsError
5
5
  } from "../../../sdk/index.js";
6
6
  import { iCurvePool_2Abi, iCurvePoolAbi } from "../abi/targetContractAbi.js";
7
- import { classifyCurveOperation } from "../transferHelpers.js";
8
- import { AbstractAdapterContract } from "./AbstractAdapter.js";
7
+ import { AbstractCurveAdapterContract } from "./AbstractCurveAdapter.js";
9
8
  const abi = iCurveV1_2AssetsAdapterAbi;
10
9
  const protocolAbi = [...iCurvePoolAbi, ...iCurvePool_2Abi];
11
- class Curve2AssetsAdapterContract extends AbstractAdapterContract {
10
+ class Curve2AssetsAdapterContract extends AbstractCurveAdapterContract {
12
11
  #token;
13
12
  #lpToken;
14
13
  #metapoolBase;
@@ -82,10 +81,6 @@ class Curve2AssetsAdapterContract extends AbstractAdapterContract {
82
81
  underlyings: this.#underlyings?.map((t) => this.labelAddress(t))
83
82
  };
84
83
  }
85
- /** @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L132-L164 */
86
- classifyLegacyOperation(parsed, transfers) {
87
- return classifyCurveOperation(parsed.functionName, transfers) ?? super.classifyLegacyOperation(parsed, transfers);
88
- }
89
84
  }
90
85
  export {
91
86
  Curve2AssetsAdapterContract
@@ -4,11 +4,10 @@ import {
4
4
  MissingSerializedParamsError
5
5
  } from "../../../sdk/index.js";
6
6
  import { iCurvePool_3Abi, iCurvePoolAbi } from "../abi/targetContractAbi.js";
7
- import { classifyCurveOperation } from "../transferHelpers.js";
8
- import { AbstractAdapterContract } from "./AbstractAdapter.js";
7
+ import { AbstractCurveAdapterContract } from "./AbstractCurveAdapter.js";
9
8
  const abi = iCurveV1_3AssetsAdapterAbi;
10
9
  const protocolAbi = [...iCurvePoolAbi, ...iCurvePool_3Abi];
11
- class Curve3AssetsAdapterContract extends AbstractAdapterContract {
10
+ class Curve3AssetsAdapterContract extends AbstractCurveAdapterContract {
12
11
  #token;
13
12
  #lpToken;
14
13
  #metapoolBase;
@@ -82,10 +81,6 @@ class Curve3AssetsAdapterContract extends AbstractAdapterContract {
82
81
  underlyings: this.#underlyings?.map((t) => this.labelAddress(t))
83
82
  };
84
83
  }
85
- /** @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L132-L164 */
86
- classifyLegacyOperation(parsed, transfers) {
87
- return classifyCurveOperation(parsed.functionName, transfers) ?? super.classifyLegacyOperation(parsed, transfers);
88
- }
89
84
  }
90
85
  export {
91
86
  Curve3AssetsAdapterContract
@@ -4,11 +4,10 @@ import {
4
4
  MissingSerializedParamsError
5
5
  } from "../../../sdk/index.js";
6
6
  import { iCurvePool_4Abi, iCurvePoolAbi } from "../abi/targetContractAbi.js";
7
- import { classifyCurveOperation } from "../transferHelpers.js";
8
- import { AbstractAdapterContract } from "./AbstractAdapter.js";
7
+ import { AbstractCurveAdapterContract } from "./AbstractCurveAdapter.js";
9
8
  const abi = iCurveV1_4AssetsAdapterAbi;
10
9
  const protocolAbi = [...iCurvePoolAbi, ...iCurvePool_4Abi];
11
- class Curve4AssetsAdapterContract extends AbstractAdapterContract {
10
+ class Curve4AssetsAdapterContract extends AbstractCurveAdapterContract {
12
11
  #token;
13
12
  #lpToken;
14
13
  #metapoolBase;
@@ -87,10 +86,6 @@ class Curve4AssetsAdapterContract extends AbstractAdapterContract {
87
86
  underlyings: this.#underlyings?.map((t) => this.labelAddress(t))
88
87
  };
89
88
  }
90
- /** @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L132-L164 */
91
- classifyLegacyOperation(parsed, transfers) {
92
- return classifyCurveOperation(parsed.functionName, transfers) ?? super.classifyLegacyOperation(parsed, transfers);
93
- }
94
89
  }
95
90
  export {
96
91
  Curve4AssetsAdapterContract
@@ -4,10 +4,10 @@ import {
4
4
  MissingSerializedParamsError
5
5
  } from "../../../sdk/index.js";
6
6
  import { iCurvePoolAbi } from "../abi/targetContractAbi.js";
7
- import { AbstractAdapterContract } from "./AbstractAdapter.js";
7
+ import { AbstractCurveAdapterContract } from "./AbstractCurveAdapter.js";
8
8
  const abi = iCurveV1AdapterAbi;
9
9
  const protocolAbi = iCurvePoolAbi;
10
- class CurveV1AdapterDeposit extends AbstractAdapterContract {
10
+ class CurveV1AdapterDeposit extends AbstractCurveAdapterContract {
11
11
  #token;
12
12
  #lpToken;
13
13
  #metapoolBase;
@@ -4,11 +4,10 @@ import {
4
4
  MissingSerializedParamsError
5
5
  } from "../../../sdk/index.js";
6
6
  import { iCurvePool_2Abi, iCurvePoolAbi } from "../abi/targetContractAbi.js";
7
- import { classifyCurveOperation } from "../transferHelpers.js";
8
- import { AbstractAdapterContract } from "./AbstractAdapter.js";
7
+ import { AbstractCurveAdapterContract } from "./AbstractCurveAdapter.js";
9
8
  const abi = iCurveV1_2AssetsAdapterAbi;
10
9
  const protocolAbi = [...iCurvePoolAbi, ...iCurvePool_2Abi];
11
- class CurveV1AdapterStETHContract extends AbstractAdapterContract {
10
+ class CurveV1AdapterStETHContract extends AbstractCurveAdapterContract {
12
11
  #token;
13
12
  #lpToken;
14
13
  #metapoolBase;
@@ -65,10 +64,6 @@ class CurveV1AdapterStETHContract extends AbstractAdapterContract {
65
64
  if (!this.#tokens) throw new MissingSerializedParamsError("tokens");
66
65
  return this.#tokens;
67
66
  }
68
- /** @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L132-L164 */
69
- classifyLegacyOperation(parsed, transfers) {
70
- return classifyCurveOperation(parsed.functionName, transfers) ?? super.classifyLegacyOperation(parsed, transfers);
71
- }
72
67
  }
73
68
  export {
74
69
  CurveV1AdapterStETHContract
@@ -7,11 +7,10 @@ import {
7
7
  iCurvePoolAbi,
8
8
  iCurvePoolStableNGAbi
9
9
  } from "../abi/targetContractAbi.js";
10
- import { classifyCurveOperation } from "../transferHelpers.js";
11
- import { AbstractAdapterContract } from "./AbstractAdapter.js";
10
+ import { AbstractCurveAdapterContract } from "./AbstractCurveAdapter.js";
12
11
  const abi = iCurveV1StableNgAdapterAbi;
13
12
  const protocolAbi = [...iCurvePoolAbi, ...iCurvePoolStableNGAbi];
14
- class CurveV1StableNGAdapterContract extends AbstractAdapterContract {
13
+ class CurveV1StableNGAdapterContract extends AbstractCurveAdapterContract {
15
14
  #token;
16
15
  #lpToken;
17
16
  #metapoolBase;
@@ -98,10 +97,6 @@ class CurveV1StableNGAdapterContract extends AbstractAdapterContract {
98
97
  underlyings: this.#underlyings?.map((t) => this.labelAddress(t))
99
98
  };
100
99
  }
101
- /** @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L132-L164 */
102
- classifyLegacyOperation(parsed, transfers) {
103
- return classifyCurveOperation(parsed.functionName, transfers) ?? super.classifyLegacyOperation(parsed, transfers);
104
- }
105
100
  }
106
101
  export {
107
102
  CurveV1StableNGAdapterContract
@@ -1,5 +1,7 @@
1
1
  import { iDaiUsdsAdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters } from "viem";
2
+ import {
3
+ decodeAbiParameters
4
+ } from "viem";
3
5
  import {
4
6
  MissingSerializedParamsError
5
7
  } from "../../../sdk/index.js";
@@ -53,6 +55,20 @@ class DaiUsdsAdapterContract extends AbstractAdapterContract {
53
55
  }
54
56
  return super.classifyLegacyOperation(parsed, transfers);
55
57
  }
58
+ decodeDiffLeftovers(decoded, balances) {
59
+ switch (decoded.functionName) {
60
+ case "daiToUsdsDiff": {
61
+ const [leftoverAmount] = decoded.args;
62
+ return [{ tokenIn: this.dai, leftoverAmount }];
63
+ }
64
+ case "usdsToDaiDiff": {
65
+ const [leftoverAmount] = decoded.args;
66
+ return [{ tokenIn: this.usds, leftoverAmount }];
67
+ }
68
+ default:
69
+ return super.decodeDiffLeftovers(decoded, balances);
70
+ }
71
+ }
56
72
  }
57
73
  export {
58
74
  DaiUsdsAdapterContract
@@ -1,5 +1,8 @@
1
1
  import { ierc4626AdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters, zeroAddress } from "viem";
2
+ import {
3
+ decodeAbiParameters,
4
+ zeroAddress
5
+ } from "viem";
3
6
  import {
4
7
  MissingSerializedParamsError
5
8
  } from "../../../sdk/index.js";
@@ -70,6 +73,21 @@ class ERC4626AdapterContract extends AbstractAdapterContract {
70
73
  }
71
74
  return super.classifyLegacyOperation(parsed, transfers);
72
75
  }
76
+ decodeDiffLeftovers(decoded, balances) {
77
+ const share = this.#vault && this.#vault !== zeroAddress ? this.#vault : this.targetContract;
78
+ switch (decoded.functionName) {
79
+ case "depositDiff": {
80
+ const [leftoverAmount] = decoded.args;
81
+ return [{ tokenIn: this.asset, leftoverAmount }];
82
+ }
83
+ case "redeemDiff": {
84
+ const [leftoverAmount] = decoded.args;
85
+ return [{ tokenIn: share, leftoverAmount }];
86
+ }
87
+ default:
88
+ return super.decodeDiffLeftovers(decoded, balances);
89
+ }
90
+ }
73
91
  }
74
92
  export {
75
93
  ERC4626AdapterContract
@@ -1,5 +1,7 @@
1
1
  import { erc4626ReferralAdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters } from "viem";
2
+ import {
3
+ decodeAbiParameters
4
+ } from "viem";
3
5
  import {
4
6
  MissingSerializedParamsError
5
7
  } from "../../../sdk/index.js";
@@ -53,6 +55,20 @@ class ERC4626ReferralAdapterContract extends AbstractAdapterContract {
53
55
  }
54
56
  return super.classifyLegacyOperation(parsed, transfers);
55
57
  }
58
+ decodeDiffLeftovers(decoded, balances) {
59
+ switch (decoded.functionName) {
60
+ case "depositDiff": {
61
+ const [leftoverAmount] = decoded.args;
62
+ return [{ tokenIn: this.asset, leftoverAmount }];
63
+ }
64
+ case "redeemDiff": {
65
+ const [leftoverAmount] = decoded.args;
66
+ return [{ tokenIn: this.targetContract, leftoverAmount }];
67
+ }
68
+ default:
69
+ return super.decodeDiffLeftovers(decoded, balances);
70
+ }
71
+ }
56
72
  }
57
73
  export {
58
74
  ERC4626ReferralAdapterContract
@@ -1,5 +1,7 @@
1
1
  import { iFluidDexAdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters } from "viem";
2
+ import {
3
+ decodeAbiParameters
4
+ } from "viem";
3
5
  import {
4
6
  MissingSerializedParamsError
5
7
  } from "../../../sdk/index.js";
@@ -41,6 +43,21 @@ class FluidDexAdapterContract extends AbstractAdapterContract {
41
43
  token1: this.#token1 ? this.labelAddress(this.#token1) : void 0
42
44
  };
43
45
  }
46
+ decodeDiffLeftovers(decoded, balances) {
47
+ switch (decoded.functionName) {
48
+ case "swapInDiff": {
49
+ const [swap0to1, leftoverAmount] = decoded.args;
50
+ return [
51
+ {
52
+ tokenIn: swap0to1 ? this.token0 : this.token1,
53
+ leftoverAmount
54
+ }
55
+ ];
56
+ }
57
+ default:
58
+ return super.decodeDiffLeftovers(decoded, balances);
59
+ }
60
+ }
44
61
  }
45
62
  export {
46
63
  FluidDexAdapterContract
@@ -1,5 +1,7 @@
1
1
  import { iInfinifiGatewayAdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters } from "viem";
2
+ import {
3
+ decodeAbiParameters
4
+ } from "viem";
3
5
  import {
4
6
  MissingSerializedParamsError
5
7
  } from "../../../sdk/index.js";
@@ -63,6 +65,27 @@ class InfinifiGatewayAdapterContract extends AbstractAdapterContract {
63
65
  )
64
66
  };
65
67
  }
68
+ decodeDiffLeftovers(decoded, balances) {
69
+ switch (decoded.functionName) {
70
+ case "mintDiff": {
71
+ const [leftoverAmount] = decoded.args;
72
+ return [{ tokenIn: this.usdc, leftoverAmount }];
73
+ }
74
+ // redeem, stake and lock all spend iUSD
75
+ case "redeemDiff":
76
+ case "stakeDiff":
77
+ case "createPositionDiff": {
78
+ const [leftoverAmount] = decoded.args;
79
+ return [{ tokenIn: this.iusd, leftoverAmount }];
80
+ }
81
+ case "unstakeDiff": {
82
+ const [leftoverAmount] = decoded.args;
83
+ return [{ tokenIn: this.siusd, leftoverAmount }];
84
+ }
85
+ default:
86
+ return super.decodeDiffLeftovers(decoded, balances);
87
+ }
88
+ }
66
89
  }
67
90
  export {
68
91
  InfinifiGatewayAdapterContract
@@ -2,7 +2,9 @@ import {
2
2
  iKelpLrtDepositPoolAdapterAbi,
3
3
  iKelpLrtDepositPoolGatewayAbi
4
4
  } from "@gearbox-protocol/integrations-v3";
5
- import { decodeAbiParameters } from "viem";
5
+ import {
6
+ decodeAbiParameters
7
+ } from "viem";
6
8
  import {
7
9
  MissingSerializedParamsError
8
10
  } from "../../../sdk/index.js";
@@ -36,6 +38,16 @@ class KelpLRTDepositPoolAdapterContract extends AbstractAdapterContract {
36
38
  allowedAssets: this.#allowedAssets?.map((a) => this.labelAddress(a))
37
39
  };
38
40
  }
41
+ decodeDiffLeftovers(decoded, balances) {
42
+ switch (decoded.functionName) {
43
+ case "depositAssetDiff": {
44
+ const [tokenIn, leftoverAmount] = decoded.args;
45
+ return [{ tokenIn, leftoverAmount }];
46
+ }
47
+ default:
48
+ return super.decodeDiffLeftovers(decoded, balances);
49
+ }
50
+ }
39
51
  }
40
52
  export {
41
53
  KelpLRTDepositPoolAdapterContract
@@ -1,5 +1,7 @@
1
1
  import { iLidoV1AdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters } from "viem";
2
+ import {
3
+ decodeAbiParameters
4
+ } from "viem";
3
5
  import {
4
6
  MissingSerializedParamsError
5
7
  } from "../../../sdk/index.js";
@@ -54,6 +56,17 @@ class LidoV1AdapterContract extends AbstractAdapterContract {
54
56
  classifyLegacyOperation(_parsed, transfers) {
55
57
  return { operation: "LidoSubmit", ...swapFromTransfers(transfers) };
56
58
  }
59
+ decodeDiffLeftovers(decoded, balances) {
60
+ switch (decoded.functionName) {
61
+ // the adapter targets the WETH gateway, so WETH is spent
62
+ case "submitDiff": {
63
+ const [leftoverAmount] = decoded.args;
64
+ return [{ tokenIn: this.weth, leftoverAmount }];
65
+ }
66
+ default:
67
+ return super.decodeDiffLeftovers(decoded, balances);
68
+ }
69
+ }
57
70
  }
58
71
  export {
59
72
  LidoV1AdapterContract
@@ -1,5 +1,7 @@
1
1
  import { mellowDvvAdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters } from "viem";
2
+ import {
3
+ decodeAbiParameters
4
+ } from "viem";
3
5
  import {
4
6
  MissingSerializedParamsError
5
7
  } from "../../../sdk/index.js";
@@ -52,6 +54,21 @@ class MellowDVVAdapterContract extends AbstractAdapterContract {
52
54
  }
53
55
  return super.classifyLegacyOperation(parsed, transfers);
54
56
  }
57
+ decodeDiffLeftovers(decoded, balances) {
58
+ const share = this.#vault ?? this.targetContract;
59
+ switch (decoded.functionName) {
60
+ case "depositDiff": {
61
+ const [leftoverAmount] = decoded.args;
62
+ return [{ tokenIn: this.asset, leftoverAmount }];
63
+ }
64
+ case "redeemDiff": {
65
+ const [leftoverAmount] = decoded.args;
66
+ return [{ tokenIn: share, leftoverAmount }];
67
+ }
68
+ default:
69
+ return super.decodeDiffLeftovers(decoded, balances);
70
+ }
71
+ }
55
72
  }
56
73
  export {
57
74
  MellowDVVAdapterContract
@@ -1,5 +1,7 @@
1
1
  import { iMellow4626VaultAdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters } from "viem";
2
+ import {
3
+ decodeAbiParameters
4
+ } from "viem";
3
5
  import {
4
6
  MissingSerializedParamsError
5
7
  } from "../../../sdk/index.js";
@@ -87,6 +89,21 @@ class MellowERC4626VaultAdapterContract extends AbstractAdapterContract {
87
89
  }
88
90
  return super.classifyLegacyOperation(parsed, transfers);
89
91
  }
92
+ decodeDiffLeftovers(decoded, balances) {
93
+ const share = this.#vault ?? this.targetContract;
94
+ switch (decoded.functionName) {
95
+ case "depositDiff": {
96
+ const [leftoverAmount] = decoded.args;
97
+ return [{ tokenIn: this.asset, leftoverAmount }];
98
+ }
99
+ case "redeemDiff": {
100
+ const [leftoverAmount] = decoded.args;
101
+ return [{ tokenIn: share, leftoverAmount }];
102
+ }
103
+ default:
104
+ return super.decodeDiffLeftovers(decoded, balances);
105
+ }
106
+ }
90
107
  }
91
108
  export {
92
109
  MellowERC4626VaultAdapterContract
@@ -1,5 +1,7 @@
1
1
  import { iMellowWrapperAdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters } from "viem";
2
+ import {
3
+ decodeAbiParameters
4
+ } from "viem";
3
5
  import {
4
6
  MissingSerializedParamsError
5
7
  } from "../../../sdk/index.js";
@@ -34,6 +36,17 @@ class MellowWrapperAdapterContract extends AbstractAdapterContract {
34
36
  allowedVaults: this.#allowedVaults?.map((v) => this.labelAddress(v))
35
37
  };
36
38
  }
39
+ decodeDiffLeftovers(decoded, balances) {
40
+ switch (decoded.functionName) {
41
+ case "depositDiff": {
42
+ const weth = this.tokensMeta.mustFindBySymbol("WETH").addr;
43
+ const [leftoverAmount] = decoded.args;
44
+ return [{ tokenIn: weth, leftoverAmount }];
45
+ }
46
+ default:
47
+ return super.decodeDiffLeftovers(decoded, balances);
48
+ }
49
+ }
37
50
  }
38
51
  export {
39
52
  MellowWrapperAdapterContract
@@ -1,5 +1,7 @@
1
1
  import { iMidasIssuanceVaultAdapterAbi } from "@gearbox-protocol/integrations-v3";
2
- import { decodeAbiParameters } from "viem";
2
+ import {
3
+ decodeAbiParameters
4
+ } from "viem";
3
5
  import {
4
6
  MissingSerializedParamsError
5
7
  } from "../../../sdk/index.js";
@@ -51,6 +53,16 @@ class MidasIssuanceVaultAdapterContract extends AbstractAdapterContract {
51
53
  allowedTokens: this.#allowedTokens?.map((t) => this.labelAddress(t))
52
54
  };
53
55
  }
56
+ decodeDiffLeftovers(decoded, balances) {
57
+ switch (decoded.functionName) {
58
+ case "depositInstantDiff": {
59
+ const [tokenIn, leftoverAmount] = decoded.args;
60
+ return [{ tokenIn, leftoverAmount }];
61
+ }
62
+ default:
63
+ return super.decodeDiffLeftovers(decoded, balances);
64
+ }
65
+ }
54
66
  }
55
67
  export {
56
68
  MidasIssuanceVaultAdapterContract
@@ -2,7 +2,9 @@ import {
2
2
  iMidasRedemptionVaultAdapterAbi,
3
3
  iMidasRedemptionVaultGatewayAbi
4
4
  } from "@gearbox-protocol/integrations-v3";
5
- import { decodeAbiParameters } from "viem";
5
+ import {
6
+ decodeAbiParameters
7
+ } from "viem";
6
8
  import {
7
9
  MissingSerializedParamsError
8
10
  } from "../../../sdk/index.js";
@@ -59,6 +61,18 @@ class MidasRedemptionVaultAdapterContract extends AbstractAdapterContract {
59
61
  }))
60
62
  };
61
63
  }
64
+ decodeDiffLeftovers(decoded, balances) {
65
+ switch (decoded.functionName) {
66
+ // redemption spends the mToken down to the leftover, tokenOut arg is
67
+ // the received token
68
+ case "redeemInstantDiff": {
69
+ const [, leftoverAmount] = decoded.args;
70
+ return [{ tokenIn: this.mToken, leftoverAmount }];
71
+ }
72
+ default:
73
+ return super.decodeDiffLeftovers(decoded, balances);
74
+ }
75
+ }
62
76
  }
63
77
  export {
64
78
  MidasRedemptionVaultAdapterContract