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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (350) hide show
  1. package/dist/cjs/abi/310/iSecuritizeDegenNFT.js +263 -0
  2. package/dist/cjs/abi/310/iSecuritizeKYCFactory.js +278 -0
  3. package/dist/cjs/dev/AccountOpener.js +45 -5
  4. package/dist/cjs/dev/providers.js +12 -0
  5. package/dist/cjs/history/assembleOperations.js +103 -0
  6. package/dist/cjs/history/classifyMulticallOperations.js +157 -0
  7. package/dist/cjs/history/errors.js +91 -0
  8. package/dist/cjs/history/extractProtocolCalls.js +53 -0
  9. package/dist/cjs/history/extractTransfers.js +168 -0
  10. package/dist/cjs/history/findFacadeCalls.js +84 -0
  11. package/dist/cjs/history/index.js +39 -0
  12. package/dist/cjs/history/inner-operations.js +16 -0
  13. package/dist/cjs/history/internal-types.js +16 -0
  14. package/dist/cjs/history/mapOperations.js +79 -0
  15. package/dist/cjs/history/package.json +1 -0
  16. package/dist/cjs/history/parseCreditAccountTransaction.js +86 -0
  17. package/dist/cjs/history/populateContractsRegister.js +68 -0
  18. package/dist/cjs/history/toLegacyOperation.js +182 -0
  19. package/dist/cjs/{plugins/adapters/contracts/YearnV2AdapterContract.js → history/trace-utils.js} +36 -21
  20. package/dist/cjs/history/types.js +16 -0
  21. package/dist/cjs/plugins/adapters/AdaptersPlugin.js +13 -106
  22. package/dist/cjs/plugins/adapters/abi/index.js +2 -0
  23. package/dist/cjs/plugins/adapters/abi/targetContractAbi.js +5168 -0
  24. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +102 -3
  25. package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +8 -1
  26. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +40 -30
  27. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +21 -11
  28. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +31 -21
  29. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +91 -25
  30. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +63 -25
  31. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +68 -31
  32. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +68 -31
  33. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +73 -31
  34. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +80 -33
  35. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +62 -26
  36. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +80 -34
  37. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +39 -14
  38. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +55 -27
  39. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +39 -14
  40. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +27 -14
  41. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +45 -23
  42. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +23 -14
  43. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +22 -12
  44. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +26 -16
  45. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +39 -17
  46. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +21 -11
  47. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +38 -14
  48. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +71 -42
  49. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +21 -11
  50. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +36 -17
  51. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +38 -21
  52. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +63 -53
  53. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +62 -37
  54. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +35 -25
  55. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +35 -21
  56. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +32 -23
  57. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +41 -27
  58. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +34 -17
  59. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +35 -25
  60. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +31 -11
  61. package/dist/cjs/plugins/adapters/contracts/deprecated/BalancerV2VaultAdapterContract.js +585 -0
  62. package/dist/cjs/plugins/adapters/contracts/deprecated/EqualizerRouterAdapterContract.js +262 -0
  63. package/dist/cjs/plugins/adapters/contracts/deprecated/InfraredVaultAdapterContract.js +296 -0
  64. package/dist/cjs/plugins/adapters/contracts/deprecated/KodiakIslandGatewayAdapterContract.js +415 -0
  65. package/dist/cjs/plugins/adapters/contracts/deprecated/MellowDepositQueueAdapterContract.js +74 -0
  66. package/dist/cjs/plugins/adapters/contracts/{MellowRedeemQueueAdapterContract.js → deprecated/MellowRedeemQueueAdapterContract.js} +33 -14
  67. package/dist/cjs/plugins/adapters/contracts/deprecated/MellowVaultAdapterContract.js +233 -0
  68. package/dist/cjs/plugins/adapters/contracts/deprecated/YearnV2AdapterContract.js +359 -0
  69. package/dist/cjs/plugins/adapters/contracts/deprecated/index.js +36 -0
  70. package/dist/cjs/plugins/adapters/contracts/index.js +3 -17
  71. package/dist/cjs/plugins/adapters/contracts/types.js +0 -9
  72. package/dist/cjs/plugins/adapters/createAdapter.js +140 -0
  73. package/dist/cjs/plugins/adapters/index.js +6 -0
  74. package/dist/cjs/plugins/adapters/legacyAdapterOperations.js +16 -0
  75. package/dist/cjs/plugins/adapters/transferHelpers.js +127 -0
  76. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +464 -105
  77. package/dist/cjs/sdk/accounts/CreditAccountsServiceV300.js +9 -4
  78. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +16 -5
  79. package/dist/cjs/sdk/base/BaseContract.js +54 -3
  80. package/dist/cjs/sdk/base/ChainContractsRegister.js +34 -1
  81. package/dist/cjs/sdk/base/Construct.js +11 -3
  82. package/dist/cjs/sdk/base/PlaceholderContract.js +2 -2
  83. package/dist/cjs/sdk/base/TokensMeta.js +161 -22
  84. package/dist/cjs/sdk/base/errors.js +35 -0
  85. package/dist/cjs/sdk/base/index.js +2 -0
  86. package/dist/cjs/sdk/chain/chains.js +2 -1
  87. package/dist/cjs/sdk/market/MarketRegister.js +2 -2
  88. package/dist/cjs/sdk/market/MarketSuite.js +3 -0
  89. package/dist/cjs/sdk/{pools/extraZappers.js → market/ZapperRegister.js} +110 -6
  90. package/dist/cjs/sdk/market/adapters/PlaceholderAdapterContracts.js +10 -4
  91. package/dist/cjs/sdk/market/adapters/{factory.js → createAdapter.js} +3 -3
  92. package/dist/cjs/sdk/market/adapters/index.js +2 -2
  93. package/dist/cjs/sdk/market/credit/CreditFacadeV310BaseContract.js +108 -0
  94. package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +3 -40
  95. package/dist/cjs/sdk/market/credit/index.js +2 -0
  96. package/dist/cjs/sdk/market/index.js +3 -1
  97. package/dist/cjs/sdk/market/pool/PoolSuite.js +3 -0
  98. package/dist/cjs/sdk/market/pool/PoolV300Contract.js +3 -0
  99. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +17 -2
  100. package/dist/cjs/sdk/market/pool/SecuritizeKYCFactory.js +97 -0
  101. package/dist/cjs/sdk/market/pool/index.js +2 -0
  102. package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +20 -0
  103. package/dist/cjs/sdk/market/types.js +16 -0
  104. package/dist/cjs/sdk/pools/PoolService.js +181 -91
  105. package/dist/cjs/sdk/sdk-legacy/core/creditAccount.js +2 -0
  106. package/dist/cjs/sdk/utils/AddressMap.js +1 -1
  107. package/dist/cjs/sdk/utils/abi-decode.js +43 -2
  108. package/dist/cjs/sdk/utils/viem/sendRawTx.js +16 -0
  109. package/dist/esm/abi/310/iSecuritizeDegenNFT.js +239 -0
  110. package/dist/esm/abi/310/iSecuritizeKYCFactory.js +254 -0
  111. package/dist/esm/dev/AccountOpener.js +47 -6
  112. package/dist/esm/dev/providers.js +12 -0
  113. package/dist/esm/history/assembleOperations.js +79 -0
  114. package/dist/esm/history/classifyMulticallOperations.js +137 -0
  115. package/dist/esm/history/errors.js +62 -0
  116. package/dist/esm/history/extractProtocolCalls.js +32 -0
  117. package/dist/esm/history/extractTransfers.js +148 -0
  118. package/dist/esm/history/findFacadeCalls.js +63 -0
  119. package/dist/esm/history/index.js +9 -0
  120. package/dist/esm/history/inner-operations.js +0 -0
  121. package/dist/esm/history/internal-types.js +0 -0
  122. package/dist/esm/history/mapOperations.js +55 -0
  123. package/dist/esm/history/package.json +1 -0
  124. package/dist/esm/history/parseCreditAccountTransaction.js +62 -0
  125. package/dist/esm/history/populateContractsRegister.js +52 -0
  126. package/dist/esm/history/toLegacyOperation.js +157 -0
  127. package/dist/esm/history/trace-utils.js +36 -0
  128. package/dist/esm/history/types.js +0 -0
  129. package/dist/esm/plugins/adapters/AdaptersPlugin.js +14 -148
  130. package/dist/esm/plugins/adapters/abi/index.js +1 -0
  131. package/dist/esm/plugins/adapters/abi/targetContractAbi.js +5113 -0
  132. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +111 -4
  133. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +8 -1
  134. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +40 -30
  135. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +21 -11
  136. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +31 -21
  137. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +100 -26
  138. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +65 -25
  139. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +70 -31
  140. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +70 -31
  141. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +75 -31
  142. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +82 -33
  143. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +64 -26
  144. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +85 -34
  145. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +41 -14
  146. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +57 -27
  147. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +41 -14
  148. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +29 -14
  149. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +47 -23
  150. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +29 -15
  151. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +27 -12
  152. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +31 -16
  153. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +41 -17
  154. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +23 -11
  155. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +40 -14
  156. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +74 -43
  157. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +23 -11
  158. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +38 -17
  159. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +44 -22
  160. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +65 -53
  161. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +64 -37
  162. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +35 -25
  163. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +36 -22
  164. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +33 -24
  165. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +45 -28
  166. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +40 -18
  167. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +35 -25
  168. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +33 -11
  169. package/dist/esm/plugins/adapters/contracts/deprecated/BalancerV2VaultAdapterContract.js +559 -0
  170. package/dist/esm/plugins/adapters/contracts/deprecated/EqualizerRouterAdapterContract.js +236 -0
  171. package/dist/esm/plugins/adapters/contracts/deprecated/InfraredVaultAdapterContract.js +272 -0
  172. package/dist/esm/plugins/adapters/contracts/deprecated/KodiakIslandGatewayAdapterContract.js +390 -0
  173. package/dist/esm/plugins/adapters/contracts/deprecated/MellowDepositQueueAdapterContract.js +52 -0
  174. package/dist/esm/plugins/adapters/contracts/deprecated/MellowRedeemQueueAdapterContract.js +45 -0
  175. package/dist/esm/plugins/adapters/contracts/deprecated/MellowVaultAdapterContract.js +209 -0
  176. package/dist/esm/plugins/adapters/contracts/deprecated/YearnV2AdapterContract.js +336 -0
  177. package/dist/esm/plugins/adapters/contracts/deprecated/index.js +8 -0
  178. package/dist/esm/plugins/adapters/contracts/index.js +1 -8
  179. package/dist/esm/plugins/adapters/contracts/types.js +0 -8
  180. package/dist/esm/plugins/adapters/createAdapter.js +158 -0
  181. package/dist/esm/plugins/adapters/index.js +3 -0
  182. package/dist/esm/plugins/adapters/legacyAdapterOperations.js +0 -0
  183. package/dist/esm/plugins/adapters/transferHelpers.js +95 -0
  184. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +464 -105
  185. package/dist/esm/sdk/accounts/CreditAccountsServiceV300.js +9 -4
  186. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +16 -5
  187. package/dist/esm/sdk/base/BaseContract.js +56 -3
  188. package/dist/esm/sdk/base/ChainContractsRegister.js +34 -1
  189. package/dist/esm/sdk/base/Construct.js +11 -3
  190. package/dist/esm/sdk/base/PlaceholderContract.js +2 -2
  191. package/dist/esm/sdk/base/TokensMeta.js +165 -21
  192. package/dist/esm/sdk/base/errors.js +11 -0
  193. package/dist/esm/sdk/base/index.js +1 -0
  194. package/dist/esm/sdk/chain/chains.js +2 -1
  195. package/dist/esm/sdk/market/MarketRegister.js +2 -2
  196. package/dist/esm/sdk/market/MarketSuite.js +3 -0
  197. package/dist/esm/sdk/{pools/extraZappers.js → market/ZapperRegister.js} +109 -2
  198. package/dist/esm/sdk/market/adapters/PlaceholderAdapterContracts.js +14 -5
  199. package/dist/esm/sdk/market/adapters/index.js +1 -1
  200. package/dist/esm/sdk/market/credit/CreditFacadeV310BaseContract.js +86 -0
  201. package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +3 -43
  202. package/dist/esm/sdk/market/credit/index.js +1 -0
  203. package/dist/esm/sdk/market/index.js +1 -0
  204. package/dist/esm/sdk/market/pool/PoolSuite.js +3 -0
  205. package/dist/esm/sdk/market/pool/PoolV300Contract.js +3 -0
  206. package/dist/esm/sdk/market/pool/PoolV310Contract.js +17 -2
  207. package/dist/esm/sdk/market/pool/SecuritizeKYCFactory.js +73 -0
  208. package/dist/esm/sdk/market/pool/index.js +1 -0
  209. package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +21 -1
  210. package/dist/esm/sdk/market/types.js +0 -0
  211. package/dist/esm/sdk/pools/PoolService.js +182 -98
  212. package/dist/esm/sdk/sdk-legacy/core/creditAccount.js +2 -0
  213. package/dist/esm/sdk/utils/AddressMap.js +1 -1
  214. package/dist/esm/sdk/utils/abi-decode.js +43 -2
  215. package/dist/esm/sdk/utils/viem/sendRawTx.js +19 -1
  216. package/dist/types/abi/310/iSecuritizeDegenNFT.d.ts +324 -0
  217. package/dist/types/abi/310/iSecuritizeKYCFactory.d.ts +322 -0
  218. package/dist/types/dev/providers.d.ts +5 -5
  219. package/dist/types/history/assembleOperations.d.ts +22 -0
  220. package/dist/types/history/classifyMulticallOperations.d.ts +35 -0
  221. package/dist/types/history/errors.d.ts +30 -0
  222. package/dist/types/history/extractProtocolCalls.d.ts +8 -0
  223. package/dist/types/history/extractTransfers.d.ts +22 -0
  224. package/dist/types/history/findFacadeCalls.d.ts +9 -0
  225. package/dist/types/history/index.d.ts +6 -0
  226. package/dist/types/history/inner-operations.d.ts +57 -0
  227. package/dist/types/history/internal-types.d.ts +47 -0
  228. package/dist/types/history/mapOperations.d.ts +27 -0
  229. package/dist/types/history/parseCreditAccountTransaction.d.ts +27 -0
  230. package/dist/types/history/populateContractsRegister.d.ts +19 -0
  231. package/dist/types/history/toLegacyOperation.d.ts +18 -0
  232. package/dist/types/history/trace-utils.d.ts +12 -0
  233. package/dist/types/history/types.d.ts +71 -0
  234. package/dist/types/plugins/adapters/abi/index.d.ts +1 -0
  235. package/dist/types/plugins/adapters/abi/targetContractAbi.d.ts +8262 -0
  236. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +50 -8
  237. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +238 -4
  238. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +113 -4
  239. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +37 -4
  240. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +210 -4
  241. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +407 -8
  242. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +208 -5
  243. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +1244 -10
  244. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +1244 -10
  245. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +1244 -10
  246. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +575 -11
  247. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +1244 -10
  248. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +1213 -11
  249. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +60 -6
  250. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +483 -6
  251. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +58 -6
  252. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +123 -6
  253. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +133 -8
  254. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +155 -5
  255. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +240 -6
  256. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +356 -6
  257. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +94 -7
  258. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +38 -5
  259. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +479 -6
  260. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +483 -7
  261. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +48 -5
  262. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +42 -7
  263. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +186 -7
  264. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +1010 -5
  265. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +71 -8
  266. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +123 -4
  267. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +747 -5
  268. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +171 -4
  269. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +96 -5
  270. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +74 -7
  271. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +109 -4
  272. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +267 -5
  273. package/dist/types/plugins/adapters/contracts/deprecated/BalancerV2VaultAdapterContract.d.ts +1664 -0
  274. package/dist/types/plugins/adapters/contracts/deprecated/EqualizerRouterAdapterContract.d.ts +611 -0
  275. package/dist/types/plugins/adapters/contracts/deprecated/InfraredVaultAdapterContract.d.ts +686 -0
  276. package/dist/types/plugins/adapters/contracts/deprecated/KodiakIslandGatewayAdapterContract.d.ts +1270 -0
  277. package/dist/types/plugins/adapters/contracts/deprecated/MellowDepositQueueAdapterContract.d.ts +19 -0
  278. package/dist/types/plugins/adapters/contracts/deprecated/MellowRedeemQueueAdapterContract.d.ts +18 -0
  279. package/dist/types/plugins/adapters/contracts/deprecated/MellowVaultAdapterContract.d.ts +531 -0
  280. package/dist/types/plugins/adapters/contracts/deprecated/YearnV2AdapterContract.d.ts +662 -0
  281. package/dist/types/plugins/adapters/contracts/deprecated/index.d.ts +8 -0
  282. package/dist/types/plugins/adapters/contracts/index.d.ts +1 -8
  283. package/dist/types/plugins/adapters/contracts/types.d.ts +0 -6
  284. package/dist/types/plugins/adapters/createAdapter.d.ts +7 -0
  285. package/dist/types/plugins/adapters/index.d.ts +3 -0
  286. package/dist/types/plugins/adapters/legacyAdapterOperations.d.ts +200 -0
  287. package/dist/types/plugins/adapters/transferHelpers.d.ts +60 -0
  288. package/dist/types/plugins/adapters/types.d.ts +59 -1
  289. package/dist/types/sdk/accounts/AbstractCreditAccountsService.d.ts +123 -27
  290. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +1 -1
  291. package/dist/types/sdk/accounts/types.d.ts +108 -8
  292. package/dist/types/sdk/base/BaseContract.d.ts +15 -2
  293. package/dist/types/sdk/base/ChainContractsRegister.d.ts +11 -1
  294. package/dist/types/sdk/base/Construct.d.ts +6 -3
  295. package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
  296. package/dist/types/sdk/base/TokensMeta.d.ts +30 -5
  297. package/dist/types/sdk/base/errors.d.ts +3 -0
  298. package/dist/types/sdk/base/index.d.ts +1 -0
  299. package/dist/types/sdk/base/token-types.d.ts +10 -2
  300. package/dist/types/sdk/base/types.d.ts +31 -0
  301. package/dist/types/sdk/chain/chains.d.ts +1 -1
  302. package/dist/types/sdk/market/MarketRegister.d.ts +2 -2
  303. package/dist/types/sdk/market/MarketSuite.d.ts +2 -0
  304. package/dist/types/sdk/market/ZapperRegister.d.ts +17 -0
  305. package/dist/types/sdk/market/adapters/PlaceholderAdapterContracts.d.ts +9 -4
  306. package/dist/types/sdk/market/adapters/index.d.ts +1 -1
  307. package/dist/types/sdk/market/credit/CreditFacadeV310BaseContract.d.ts +856 -0
  308. package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +6 -848
  309. package/dist/types/sdk/market/credit/index.d.ts +1 -0
  310. package/dist/types/sdk/market/index.d.ts +1 -0
  311. package/dist/types/sdk/market/pool/PoolSuite.d.ts +2 -0
  312. package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +2 -0
  313. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +6 -2
  314. package/dist/types/sdk/market/pool/SecuritizeKYCFactory.d.ts +345 -0
  315. package/dist/types/sdk/market/pool/index.d.ts +1 -0
  316. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +21 -1
  317. package/dist/types/sdk/market/types.d.ts +10 -0
  318. package/dist/types/sdk/pools/PoolService.d.ts +4 -4
  319. package/dist/types/sdk/pools/types.d.ts +25 -16
  320. package/dist/types/sdk/sdk-legacy/core/creditAccount.d.ts +1 -0
  321. package/dist/types/sdk/sdk-legacy/payload/creditAccount.d.ts +1 -0
  322. package/dist/types/sdk/utils/AddressMap.d.ts +1 -1
  323. package/dist/types/sdk/utils/abi-decode.d.ts +14 -1
  324. package/dist/types/sdk/utils/viem/sendRawTx.d.ts +5 -1
  325. package/package.json +16 -11
  326. package/dist/cjs/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +0 -51
  327. package/dist/cjs/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +0 -58
  328. package/dist/cjs/plugins/adapters/contracts/InfraredVaultAdapterContract.js +0 -49
  329. package/dist/cjs/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +0 -56
  330. package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -51
  331. package/dist/cjs/plugins/adapters/contracts/MellowVaultAdapterContract.js +0 -46
  332. package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +0 -27
  333. package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +0 -34
  334. package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +0 -25
  335. package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +0 -32
  336. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -27
  337. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -24
  338. package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +0 -22
  339. package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +0 -22
  340. package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +0 -482
  341. package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +0 -225
  342. package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +0 -198
  343. package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +0 -396
  344. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +0 -13
  345. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +0 -12
  346. package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +0 -203
  347. package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +0 -185
  348. package/dist/types/sdk/pools/extraZappers.d.ts +0 -9
  349. /package/dist/esm/sdk/market/adapters/{factory.js → createAdapter.js} +0 -0
  350. /package/dist/types/sdk/market/adapters/{factory.d.ts → createAdapter.d.ts} +0 -0
@@ -5,7 +5,7 @@ import type { ConnectedBotData, Construct, CreditAccountData } from "../base/ind
5
5
  import type { GearboxSDK } from "../GearboxSDK.js";
6
6
  import type { CreditSuite, OnDemandPriceUpdates, PriceUpdateV300, PriceUpdateV310, UpdatePriceFeedsResult } from "../market/index.js";
7
7
  import type { Asset, CreditAccountTokensSlice, RouterCASlice, RouterCloseResult } from "../router/index.js";
8
- import type { MultiCall, RawTx } from "../types/index.js";
8
+ import type { IPriceUpdateTx, MultiCall, RawTx } from "../types/index.js";
9
9
  export type GetCreditAccountsArgs = ContractFunctionArgs<typeof creditAccountCompressorAbi, "pure" | "view", "getCreditAccounts">;
10
10
  export interface CreditAccountFilter {
11
11
  owner: Address;
@@ -83,6 +83,10 @@ export interface CloseCreditAccountProps {
83
83
  closePath?: RouterCloseResult;
84
84
  }
85
85
  export interface RepayCreditAccountProps extends RepayAndLiquidateCreditAccountProps {
86
+ /**
87
+ * Swap calls for repay
88
+ */
89
+ calls?: Array<MultiCall>;
86
90
  /**
87
91
  * close or zeroDebt
88
92
  */
@@ -275,8 +279,9 @@ export interface OpenCAProps extends PrepareUpdateQuotasProps {
275
279
  /**
276
280
  * Flag to withdraw debt to wallet after opening credit account;
277
281
  * used for borrowing functionality
282
+ * If true, will withdraw underlying token, otherwise will withdraw specified token
278
283
  */
279
- withdrawDebt?: boolean;
284
+ withdrawToken?: boolean | Address;
280
285
  /**
281
286
  * Permits of collateral tokens (in any permittable token is present) {@link PermitResult}
282
287
  */
@@ -286,10 +291,19 @@ export interface OpenCAProps extends PrepareUpdateQuotasProps {
286
291
  * Used for trading and strategy functionality
287
292
  */
288
293
  calls: Array<MultiCall>;
294
+ /**
295
+ * Slot for optional call to execute after main tx.
296
+ * For example: add bots
297
+ */
298
+ callsAfter?: Array<MultiCall>;
289
299
  /**
290
300
  * Address of credit manager to open credit account on
291
301
  */
292
302
  creditManager: Address;
303
+ /**
304
+ * Optional address of credit account to reopen
305
+ */
306
+ reopenCreditAccount?: Address;
293
307
  /**
294
308
  * Wallet address to transfer credit account to
295
309
  */
@@ -312,9 +326,13 @@ export interface ChangeDeptProps {
312
326
  */
313
327
  amount: bigint;
314
328
  /**
315
- * If true, will add collateral to the credit account
329
+ * Assets to add as collateral
316
330
  */
317
- addCollateral: boolean;
331
+ collateral?: [Asset];
332
+ /**
333
+ * Assets to wrap
334
+ */
335
+ wrapAsset?: [Asset];
318
336
  }
319
337
  export interface FullyLiquidateProps {
320
338
  /**
@@ -434,6 +452,19 @@ export interface LlamathenaProportionalWithdrawProps extends PrepareUpdateQuotas
434
452
  */
435
453
  creditAccount: RouterCASlice;
436
454
  }
455
+ /**
456
+ * Options to get approval address for collateral token
457
+ */
458
+ export type GetApprovalAddressProps = {
459
+ creditManager: Address;
460
+ borrower: Address;
461
+ } | {
462
+ creditManager: Address;
463
+ creditAccount: Address;
464
+ };
465
+ export type CreditAccountDataWithInvestor = CreditAccountData & {
466
+ investor: Address;
467
+ };
437
468
  export interface ICreditAccountsService extends Construct {
438
469
  sdk: GearboxSDK;
439
470
  /**
@@ -444,15 +475,41 @@ export interface ICreditAccountsService extends Construct {
444
475
  * @returns
445
476
  */
446
477
  getCreditAccountData(account: Address, blockNumber?: bigint): Promise<CreditAccountData | undefined>;
478
+ /**
479
+ * Returns credit account data for a single account with the investor address resolved (from KYC factory when applicable).
480
+ * @param account - Credit account address
481
+ * @param blockNumber - Optional block number for the read
482
+ * @returns CreditAccountDataWithInvestor, or undefined if the account is not found
483
+ */
484
+ getCreditAccountDataWithInvestor(account: Address, blockNumber?: bigint): Promise<CreditAccountDataWithInvestor | undefined>;
447
485
  /**
448
486
  * Methods to get all credit accounts with some optional filtering
449
487
  * Performs all necessary price feed updates under the hood
450
488
  *
451
489
  * @param options
452
490
  * @param blockNumber
453
- * @returns returned credit accounts are sorted by health factor in ascending order
491
+ * @param priceUpdate - Optional pre-computed price feed update (e.g. from generatePriceFeedsUpdateTxs)
492
+ * @returns Credit accounts sorted by health factor ascending
493
+ */
494
+ getCreditAccounts(options?: GetCreditAccountsOptions, blockNumber?: bigint, priceUpdate?: UpdatePriceFeedsResult): Promise<Array<CreditAccountData>>;
495
+ /**
496
+ * Returns all credit accounts matching the filter with investor set on each; when options.owner is set, includes KYC CAs for that owner.
497
+ * @param options - Filter options (owner, creditManager, health factor, etc.)
498
+ * @param blockNumber - Optional block number for the read
499
+ * @returns Credit accounts (with investor) sorted by health factor ascending
500
+ */
501
+ getCreditAccountsWithInvestor(options?: GetCreditAccountsOptions, blockNumber?: bigint): Promise<Array<CreditAccountDataWithInvestor>>;
502
+ /**
503
+ * Loads credit account data for the given addresses using simulateWithPriceUpdates (with price updates applied before the read).
504
+ * @param accounts - Credit account addresses to load
505
+ * @param priceUpdateTxs - Price feed update txs to simulate before the read (e.g. from generatePriceFeedsUpdateTxs)
506
+ * @param blockNumber - Optional block number for the read
507
+ * @returns Array of CreditAccountData in the same order as accounts
454
508
  */
455
- getCreditAccounts(options?: GetCreditAccountsOptions, blockNumber?: bigint): Promise<Array<CreditAccountData>>;
509
+ loadSpecifiedAccounts(accounts: Address[], priceUpdateTxs: IPriceUpdateTx<{
510
+ priceFeed: `0x${string}`;
511
+ timestamp: number;
512
+ }>[], blockNumber?: bigint): Promise<Array<CreditAccountData>>;
456
513
  /**
457
514
  * Method to get all claimable rewards for credit account (ex. stkUSDS SKY rewards)
458
515
  * Assosiates rewards by adapter + stakedPhantomToken
@@ -481,9 +538,9 @@ export interface ICreditAccountsService extends Construct {
481
538
  /**
482
539
  * Generates transaction to liquidate credit account
483
540
  * @param props - {@link FullyLiquidateProps}
484
- * @returns
541
+ * @returns Transaction data and optional loss policy data
485
542
  */
486
- fullyLiquidate(props: FullyLiquidateProps): Promise<CloseCreditAccountResult>;
543
+ fullyLiquidate(props: FullyLiquidateProps): Promise<FullyLiquidateResult>;
487
544
  /**
488
545
  * Closes credit account or closes credit account and keeps it open with zero debt.
489
546
  * - Ca is closed in the following order: price update -> close path to swap all tokens into underlying ->
@@ -552,6 +609,13 @@ export interface ICreditAccountsService extends Construct {
552
609
  * @returns All necessary data to execute the transaction (call, credit facade)
553
610
  */
554
611
  enableTokens(props: EnableTokensProps): Promise<CreditAccountOperationResult>;
612
+ /**
613
+ * Returns address to which approval should be given on collateral token
614
+ * It's credit manager for classical markets and special wallet for KYC markets
615
+ * @param props - {@link GetApprovalAddressProps}
616
+ * @returns
617
+ */
618
+ getApprovalAddress(props: GetApprovalAddressProps): Promise<Address>;
555
619
  /**
556
620
  * Executes swap specified by given calls, update quotas of affected tokens
557
621
  * - Open credit account is executed in the following order: price update -> increase debt -> add collateral ->
@@ -596,6 +660,42 @@ export interface ICreditAccountsService extends Construct {
596
660
  * @returns
597
661
  */
598
662
  getPriceUpdatesForFacade(options: PriceUpdatesOptions): Promise<Array<MultiCall>>;
663
+ /**
664
+ * Returns multicall entries to redeem (unwrap) KYC ERC-4626 vault shares into underlying for the given credit manager.
665
+ * Used when withdrawing debt from a KYC market: redeems adapter vault shares so the underlying can be withdrawn.
666
+ * Only applies when the credit manager's underlying is KYC-gated and has an ERC-4626 adapter configured.
667
+ * @param amount - Number of vault shares (adapter tokens) to redeem
668
+ * @param creditManager - Credit manager address
669
+ * @returns Array of MultiCall to pass to credit facade multicall, or undefined if underlying is not KYC or no adapter is configured
670
+ */
671
+ getKYCUnwrapCalls(amount: bigint, creditManager: Address): Promise<Array<MultiCall> | undefined>;
672
+ /**
673
+ * Returns multicall entries to deposit (wrap) underlying into KYC ERC-4626 vault shares for the given credit manager.
674
+ * Used when adding debt on a KYC market: deposits underlying into the adapter vault so shares are minted on the account.
675
+ * Only applies when the credit manager's underlying is KYC-gated and has an ERC-4626 adapter configured.
676
+ * @param amount - Amount of underlying assets to deposit into the vault (in underlying decimals)
677
+ * @param creditManager - Credit manager address
678
+ * @returns Array of MultiCall to pass to credit facade multicall, or undefined if underlying is not KYC or no adapter is configured
679
+ */
680
+ getKYCWrapCalls(amount: bigint, creditManager: Address): Promise<Array<MultiCall> | undefined>;
681
+ /**
682
+ * Returns multicall entries to call redeemDiff on the KYC ERC-4626 adapter for the given credit manager.
683
+ * Redeems the leftover vault shares (e.g. after repaying debt) so the account does not hold excess KYC vault tokens.
684
+ * Only applies when the credit manager's underlying is KYC-gated and has an ERC-4626 adapter configured.
685
+ * @param amount - Leftover vault share amount to redeem (in adapter/vault decimals)
686
+ * @param creditManager - Credit manager address
687
+ * @returns Array of MultiCall to pass to credit facade multicall, or undefined if underlying is not KYC or no adapter is configured
688
+ */
689
+ getRedeemDiffCalls(amount: bigint, creditManager: Address): Promise<Array<MultiCall> | undefined>;
690
+ /**
691
+ * Returns multicall entries to call depositDiff on the KYC ERC-4626 adapter for the given credit manager.
692
+ * Deposits the leftover underlying (e.g. after decreasing debt) into the vault so the account does not hold excess underlying.
693
+ * Only applies when the credit manager's underlying is KYC-gated and has an ERC-4626 adapter configured.
694
+ * @param amount - Leftover underlying amount to deposit into the vault (in underlying decimals)
695
+ * @param creditManager - Credit manager address
696
+ * @returns Array of MultiCall to pass to credit facade multicall, or undefined if underlying is not KYC or no adapter is configured
697
+ */
698
+ getDepositDiffCalls(amount: bigint, creditManager: Address): Promise<Array<MultiCall> | undefined>;
599
699
  /**
600
700
  * Withdraws a single collateral from credit account to wallet to and updates quotas;
601
701
  * technically can withdraw several tokens at once
@@ -2,7 +2,7 @@ import type { Abi, Address, Chain, ContractEventName, ContractFunctionName, Deco
2
2
  import { BaseError, type ContractEventArgs, type GetContractEventsReturnType } from "viem";
3
3
  import type { BaseContractStateHuman, RawTx } from "../types/index.js";
4
4
  import { Construct, type ConstructOptions } from "./Construct.js";
5
- import type { IBaseContract, ParsedCall, ParsedCallArgs } from "./types.js";
5
+ import type { IBaseContract, ParsedCall, ParsedCallArgs, ParsedCallV2 } from "./types.js";
6
6
  export interface BaseContractArgs<abi extends Abi | readonly unknown[]> {
7
7
  abi: abi;
8
8
  addr: Address;
@@ -28,7 +28,7 @@ export declare class BaseContract<abi extends Abi | readonly unknown[]> extends
28
28
  readonly version: number;
29
29
  readonly address: Address;
30
30
  readonly name: string;
31
- constructor({ client, logger }: ConstructOptions, args: BaseContractArgs<abi>);
31
+ constructor(options: ConstructOptions, args: BaseContractArgs<abi>);
32
32
  stateHuman(_?: boolean): BaseContractStateHuman;
33
33
  /**
34
34
  * Updates (or not) contract's internal state from event
@@ -78,6 +78,19 @@ export declare class BaseContract<abi extends Abi | readonly unknown[]> extends
78
78
  */
79
79
  protected stringifyFunctionParams(decoded: DecodeFunctionDataReturnType<abi>): string[];
80
80
  protected wrapParseCall(functionName: string, args: Record<string, string>): ParsedCall;
81
+ /**
82
+ * Parses calldata into structured result with preserved original types.
83
+ * When strict is true, throws {@link ContractParseError} on unknown selectors;
84
+ * otherwise returns a fallback with the raw calldata.
85
+ */
86
+ parseFunctionDataV2(calldata: Hex, strict?: boolean): ParsedCallV2;
87
+ /**
88
+ * Converts viem-decoded function arguments to a record preserving original types.
89
+ * Override in subclasses to handle nesting (e.g., multicall inner calls).
90
+ * @param strict - propagated from parseFunctionDataV2 for recursive parsing
91
+ */
92
+ protected parseFunctionParamsV2(params: DecodeFunctionDataReturnType<abi>, _strict?: boolean): Record<string, unknown>;
93
+ protected wrapParseCallV2(functionName: string, rawArgs: Record<string, unknown>): ParsedCallV2;
81
94
  /**
82
95
  * Creates a raw transaction for a function in this contract
83
96
  * @param parameters
@@ -3,7 +3,7 @@ import type { MultiCall } from "../types/index.js";
3
3
  import type { ILogger } from "../types/logger.js";
4
4
  import type { BaseContract } from "./BaseContract.js";
5
5
  import { TokensMeta } from "./TokensMeta.js";
6
- import type { ParsedCall } from "./types.js";
6
+ import type { ParsedCall, ParsedCallV2 } from "./types.js";
7
7
  export type ContractOrInterface<T> = T extends Abi | readonly unknown[] ? BaseContract<T> : T;
8
8
  export declare class ChainContractsRegister {
9
9
  #private;
@@ -55,4 +55,14 @@ export declare class ChainContractsRegister {
55
55
  * @returns
56
56
  */
57
57
  parseMultiCall(calls: MultiCall[]): ParsedCall[];
58
+ /**
59
+ * Parses calldata for a contract at the given address, preserving original types.
60
+ * When strict is true, throws on unknown address or selector; otherwise returns a fallback.
61
+ */
62
+ parseFunctionDataV2(address: Address, calldata: Hex, strict?: boolean): ParsedCallV2;
63
+ /**
64
+ * Parses multicalls preserving original types.
65
+ * When strict is true, throws on unknown targets or selectors.
66
+ */
67
+ parseMultiCallV2(calls: MultiCall[], strict?: boolean): ParsedCallV2[];
58
68
  }
@@ -3,16 +3,19 @@ import type { NetworkType } from "../chain/index.js";
3
3
  import type { ILogger } from "../types/index.js";
4
4
  import { ChainContractsRegister } from "./ChainContractsRegister.js";
5
5
  import type { TokensMeta } from "./TokensMeta.js";
6
- export interface ConstructOptions {
6
+ export type ConstructOptions = {
7
7
  client: PublicClient<Transport, Chain>;
8
8
  logger?: ILogger;
9
- }
9
+ } | {
10
+ register: ChainContractsRegister;
11
+ logger?: ILogger;
12
+ };
10
13
  export declare class Construct {
11
14
  #private;
12
15
  readonly logger?: ILogger;
13
16
  readonly client: PublicClient<Transport, Chain>;
14
17
  readonly register: ChainContractsRegister;
15
- constructor({ client, logger }: ConstructOptions);
18
+ constructor(options: ConstructOptions);
16
19
  get chain(): Chain;
17
20
  get chainId(): number;
18
21
  get networkType(): NetworkType;
@@ -1,9 +1,9 @@
1
- import type { GearboxSDK } from "../GearboxSDK.js";
2
1
  import type { BaseContractArgs } from "./BaseContract.js";
3
2
  import { BaseContract } from "./BaseContract.js";
3
+ import type { ConstructOptions } from "./index.js";
4
4
  declare const abi: unknown[];
5
5
  type abi = typeof abi;
6
6
  export declare class PlaceholderContract extends BaseContract<abi> {
7
- constructor(sdk: GearboxSDK, args: Omit<BaseContractArgs<abi>, "abi">);
7
+ constructor(options: ConstructOptions, args: Omit<BaseContractArgs<abi>, "abi">);
8
8
  }
9
9
  export {};
@@ -1,31 +1,56 @@
1
1
  import { type Address, type Chain, type PublicClient, type Transport } from "viem";
2
2
  import type { Asset } from "../router/index.js";
3
+ import type { ILogger } from "../types/logger.js";
3
4
  import { AddressMap } from "../utils/index.js";
4
- import type { KYCTokenMeta, PhantomTokenMeta, TokenMetaData } from "./token-types.js";
5
+ import { type DSTokenMeta, type KYCTokenMeta, type PhantomTokenMeta, type TokenMetaData } from "./token-types.js";
5
6
  export interface FormatBNOptions {
6
7
  precision?: number;
7
8
  symbol?: boolean;
8
9
  }
9
10
  export declare class TokensMeta extends AddressMap<TokenMetaData> {
10
11
  #private;
11
- constructor(client: PublicClient<Transport, Chain>);
12
+ constructor(client: PublicClient<Transport, Chain>, logger?: ILogger);
12
13
  reset(): void;
14
+ upsert(address: string, value: TokenMetaData | undefined): void;
13
15
  symbol(token: Address): string;
14
16
  decimals(token: Address): number;
17
+ /**
18
+ * Returns true if the token is a phantom token, throws if the token data is not loaded
19
+ * @param t
20
+ * @returns
21
+ */
15
22
  isPhantomToken(t: TokenMetaData): t is PhantomTokenMeta;
23
+ /**
24
+ * Returns true if the token is a KYC underlying token, throws if the token data is not loaded
25
+ * @param t
26
+ * @returns
27
+ */
16
28
  isKYCUnderlying(t: TokenMetaData): t is KYCTokenMeta;
29
+ /**
30
+ * Returns true if the token is a DSToken, throws if the token data is not loaded
31
+ * @param t
32
+ * @returns
33
+ */
34
+ isDSToken(t: TokenMetaData): t is DSTokenMeta;
17
35
  /**
18
36
  * Returns a map of all phantom tokens
19
- * Throws if the phantom token data is not loaded
37
+ * Throws if token data is not loaded
20
38
  */
21
39
  get phantomTokens(): AddressMap<PhantomTokenMeta>;
40
+ /**
41
+ * Returns a map of all KYC underlying tokens
42
+ * Throws if token data is not loaded
43
+ */
22
44
  get kycUnderlyings(): AddressMap<KYCTokenMeta>;
45
+ get dsTokens(): AddressMap<DSTokenMeta>;
23
46
  formatBN(asset: Asset, options?: FormatBNOptions): string;
24
47
  formatBN(token: Address, amount: number | bigint | string | undefined, options?: FormatBNOptions): string;
25
48
  findBySymbol(symbol: string): TokenMetaData | undefined;
26
49
  mustFindBySymbol(symbol: string): TokenMetaData;
27
50
  /**
28
- * Loads token information about phantom token and KYC underlying tokens
51
+ * Loads token information about phantom tokens, KYC underlying tokens and DSTokens
52
+ *
53
+ * @param tokens - tokens to load data for, defaults to all tokens
29
54
  */
30
- loadTokenData(): Promise<void>;
55
+ loadTokenData(...tokens: Address[]): Promise<void>;
31
56
  }
@@ -0,0 +1,3 @@
1
+ export declare class MissingSerializedParamsError extends Error {
2
+ constructor(propertyName: string);
3
+ }
@@ -1,6 +1,7 @@
1
1
  export * from "./BaseContract.js";
2
2
  export * from "./ChainContractsRegister.js";
3
3
  export * from "./Construct.js";
4
+ export * from "./errors.js";
4
5
  export * from "./PlaceholderContract.js";
5
6
  export * from "./SDKConstruct.js";
6
7
  export * from "./TokensMeta.js";
@@ -1,11 +1,15 @@
1
1
  import type { Address } from "viem";
2
2
  import type { MarketData, Unarray } from "./types.js";
3
- export type SimpleTokenMeta = Unarray<MarketData["tokens"]>;
3
+ type TokenData = Unarray<MarketData["tokens"]>;
4
4
  export declare const PHANTOM_TOKEN_CONTRACT_TYPES: readonly ["PHANTOM_TOKEN::CONVEX", "PHANTOM_TOKEN::INFINIFI_UNWIND", "PHANTOM_TOKEN::INFRARED", "PHANTOM_TOKEN::MELLOW_WITHDRAWAL", "PHANTOM_TOKEN::MIDAS_REDEMPTION", "PHANTOM_TOKEN::STAKING_REWARDS", "PHANTOM_TOKEN::UPSHIFT_WITHDRAW"];
5
5
  export declare const KYC_UNDERLYING_DEFAULT = "KYC_UNDERLYING::DEFAULT";
6
6
  export declare const KYC_UNDERLYING_ON_DEMAND = "KYC_UNDERLYING::ON_DEMAND";
7
7
  export type KYCUnderlyingContractType = typeof KYC_UNDERLYING_DEFAULT | typeof KYC_UNDERLYING_ON_DEMAND;
8
8
  export type PhantomTokenContractType = (typeof PHANTOM_TOKEN_CONTRACT_TYPES)[number];
9
+ export type SimpleTokenMeta = TokenData & {
10
+ isDSToken?: boolean;
11
+ contractType?: string;
12
+ };
9
13
  export type PhantomTokenMeta = SimpleTokenMeta & {
10
14
  contractType: PhantomTokenContractType;
11
15
  };
@@ -21,5 +25,9 @@ export type KYCOnDemandTokenMeta = SimpleTokenMeta & {
21
25
  pool: Address;
22
26
  liquidityProvider: Address;
23
27
  };
28
+ export type DSTokenMeta = Omit<SimpleTokenMeta, "isDSToken"> & {
29
+ isDSToken: true;
30
+ };
24
31
  export type KYCTokenMeta = KYCDefaultTokenMeta | KYCOnDemandTokenMeta;
25
- export type TokenMetaData = SimpleTokenMeta | PhantomTokenMeta | KYCTokenMeta;
32
+ export type TokenMetaData = SimpleTokenMeta | PhantomTokenMeta | KYCTokenMeta | DSTokenMeta;
33
+ export {};
@@ -12,6 +12,15 @@ export interface BaseParams {
12
12
  contractType: Hex;
13
13
  serializedParams: Hex;
14
14
  }
15
+ export interface RelaxedBaseParams {
16
+ addr: Address;
17
+ version: number | bigint;
18
+ /**
19
+ * Hex or parsed hex32 string
20
+ */
21
+ contractType: string;
22
+ serializedParams?: Hex;
23
+ }
15
24
  export interface BaseState {
16
25
  baseParams: BaseParams;
17
26
  }
@@ -49,6 +58,23 @@ export interface ParsedCall {
49
58
  functionName: string;
50
59
  args: ParsedCallArgs;
51
60
  }
61
+ export interface ParsedCallV2 {
62
+ chainId: number;
63
+ target: Address;
64
+ contractType: string;
65
+ label?: string;
66
+ version: number;
67
+ /**
68
+ * Function signature produced by viem's `toFunctionSignature`, e.g.:
69
+ * - `"balanceOf(address)"`
70
+ * - `"multicall(address,(address,bytes)[])"`
71
+ * - `"swap(uint256,uint256,bool)"`
72
+ *
73
+ * For unknown selectors: `"unknown function 0x1a2b3c4d"`
74
+ */
75
+ functionName: string;
76
+ rawArgs: Record<string, unknown>;
77
+ }
52
78
  export interface IBaseContract {
53
79
  /**
54
80
  * Contract address
@@ -89,4 +115,9 @@ export interface IBaseContract {
89
115
  * Same as {@link stringifyFunctionData}, but throws if error occurs
90
116
  **/
91
117
  mustStringifyFunctionData: (calldata: Hex) => string;
118
+ /**
119
+ * Parses calldata into structured result with preserved original types.
120
+ * When strict is true, throws on unknown selectors; otherwise returns a fallback.
121
+ **/
122
+ parseFunctionDataV2: (calldata: Hex, strict?: boolean) => ParsedCallV2;
92
123
  }
@@ -1,6 +1,6 @@
1
1
  import type { Address, Chain } from "viem";
2
2
  import { z } from "zod/v4";
3
- export type Curator = "Chaos Labs" | "K3" | "cp0x" | "Re7" | "Invariant Group" | "Tulipa" | "M11 Credit" | "kpk" | "Hyperithm" | "Edge UltraYield" | "TelosC" | "Gami Labs";
3
+ export type Curator = "Chaos Labs" | "K3" | "cp0x" | "Re7" | "Invariant Group" | "Tulipa" | "M11 Credit" | "kpk" | "Hyperithm" | "Edge UltraYield" | "TelosC" | "Gami Labs" | "Securitize";
4
4
  export interface GearboxChain extends Chain {
5
5
  network: NetworkType;
6
6
  defaultMarketConfigurators: Record<Address, Curator>;
@@ -1,6 +1,5 @@
1
1
  import type { Address } from "viem";
2
2
  import type { MarketData, MarketFilter } from "../base/index.js";
3
- import { SDKConstruct } from "../base/index.js";
4
3
  import type { GearboxSDK } from "../GearboxSDK.js";
5
4
  import type { MarketStateHuman } from "../types/index.js";
6
5
  import { AddressMap } from "../utils/index.js";
@@ -9,7 +8,8 @@ import { MarketConfiguratorContract } from "./MarketConfiguratorContract.js";
9
8
  import { MarketSuite } from "./MarketSuite.js";
10
9
  import type { IPriceOracleContract } from "./oracle/index.js";
11
10
  import type { PoolSuite } from "./pool/index.js";
12
- export declare class MarketRegister extends SDKConstruct {
11
+ import { ZapperRegister } from "./ZapperRegister.js";
12
+ export declare class MarketRegister extends ZapperRegister {
13
13
  #private;
14
14
  constructor(sdk: GearboxSDK, ignoreMarkets?: Address[]);
15
15
  hydrate(state: MarketData[]): void;
@@ -8,6 +8,7 @@ import { type ILossPolicyContract } from "./loss-policy/index.js";
8
8
  import { MarketConfiguratorContract } from "./MarketConfiguratorContract.js";
9
9
  import type { IPriceOracleContract } from "./oracle/index.js";
10
10
  import { PoolSuite } from "./pool/index.js";
11
+ import type { SecuritizeKYCFactory } from "./pool/SecuritizeKYCFactory.js";
11
12
  export declare class MarketSuite extends SDKConstruct {
12
13
  readonly acl: Address;
13
14
  readonly treasury: Address;
@@ -22,6 +23,7 @@ export declare class MarketSuite extends SDKConstruct {
22
23
  readonly state: MarketData;
23
24
  constructor(sdk: GearboxSDK, marketData: MarketData);
24
25
  get underlying(): Address;
26
+ getKYCFactory(): Promise<SecuritizeKYCFactory | undefined>;
25
27
  get dirty(): boolean;
26
28
  get watchAddresses(): Set<Address>;
27
29
  stateHuman(raw?: boolean): MarketStateHuman;
@@ -0,0 +1,17 @@
1
+ import type { Address } from "viem";
2
+ import { SDKConstruct } from "../base/index.js";
3
+ import { AddressMap } from "../utils/index.js";
4
+ import type { ZapperData } from "./types.js";
5
+ export declare class ZapperRegister extends SDKConstruct {
6
+ #private;
7
+ /**
8
+ * Load zappers for all pools using periphery compressor, adds hardcoded zappers
9
+ */
10
+ loadZappers(force?: boolean): Promise<void>;
11
+ get zappers(): AddressMap<ZapperData[]>;
12
+ poolZappers(pool: Address): ZapperData[];
13
+ /**
14
+ * Can return multiple zappers if there are multiple zappers for the same tokenIn and tokenOut
15
+ */
16
+ getZapper(pool: Address, tokenIn: Address, tokenOut: Address): Array<ZapperData> | undefined;
17
+ }
@@ -1,9 +1,14 @@
1
1
  import type { Address } from "viem";
2
- import type { AdapterData } from "../../base/index.js";
2
+ import type { ConstructOptions } from "../../base/index.js";
3
3
  import { PlaceholderContract } from "../../base/index.js";
4
- import type { GearboxSDK } from "../../GearboxSDK.js";
4
+ import type { RelaxedBaseParams } from "../../index.js";
5
5
  import type { IAdapterContract } from "./types.js";
6
+ export interface PlaceholderAdapterContractOptions {
7
+ baseParams: RelaxedBaseParams;
8
+ targetContract?: Address;
9
+ }
6
10
  export declare class PlaceholderAdapterContract extends PlaceholderContract implements IAdapterContract {
7
- readonly targetContract: Address;
8
- constructor(sdk: GearboxSDK, args: AdapterData);
11
+ #private;
12
+ constructor(options: ConstructOptions, args: PlaceholderAdapterContractOptions);
13
+ get targetContract(): Address;
9
14
  }
@@ -1,3 +1,3 @@
1
- export * from "./factory.js";
1
+ export * from "./createAdapter.js";
2
2
  export * from "./PlaceholderAdapterContracts.js";
3
3
  export * from "./types.js";