@gearbox-protocol/sdk 13.0.0-next.9 → 13.1.0-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (722) hide show
  1. package/dist/cjs/abi/310/iLinearInterestRateModelV310.js +92 -0
  2. package/dist/cjs/abi/310/iSecuritizeDegenNFT.js +263 -0
  3. package/dist/cjs/abi/310/iSecuritizeKYCFactory.js +278 -0
  4. package/dist/cjs/abi/errors.js +0 -145
  5. package/dist/cjs/abi/iPriceFeed.js +84 -0
  6. package/dist/cjs/{sdk/sdk-gov-legacy/oracles → common-utils}/index.js +4 -4
  7. package/dist/cjs/common-utils/package.json +1 -0
  8. package/dist/cjs/common-utils/utils/assetsMath.js +216 -0
  9. package/dist/cjs/common-utils/utils/bigintMath.js +65 -0
  10. package/dist/cjs/common-utils/utils/creditAccount/calcHealthFactor.js +76 -0
  11. package/dist/cjs/common-utils/utils/creditAccount/calcOverallAPY.js +81 -0
  12. package/dist/cjs/{sdk/accountMigration/MigrateCreditAccountsServiceV310.js → common-utils/utils/creditAccount/calcQuotaBorrowRate.js} +19 -7
  13. package/dist/cjs/{sdk/sdk-legacy/gearboxRewards/merklAPI.js → common-utils/utils/creditAccount/calcRelativeBaseBorrowRate.js} +11 -7
  14. package/dist/cjs/common-utils/utils/creditAccount/debt.js +64 -0
  15. package/dist/cjs/{sdk/accountMigration/MigrateCreditAccountsServiceV300.js → common-utils/utils/creditAccount/getTimeToLiquidation.js} +15 -7
  16. package/dist/cjs/common-utils/utils/creditAccount/index.js +40 -0
  17. package/dist/cjs/common-utils/utils/creditAccount/liquidationPrice.js +47 -0
  18. package/dist/cjs/common-utils/utils/creditAccount/quotaUtils.js +149 -0
  19. package/dist/cjs/common-utils/utils/creditAccount/sort.js +95 -0
  20. package/dist/cjs/common-utils/utils/endpoints.js +65 -0
  21. package/dist/cjs/{sdk/sdk-legacy → common-utils}/utils/index.js +10 -6
  22. package/dist/cjs/common-utils/utils/priceMath.js +66 -0
  23. package/dist/cjs/dev/AccountOpener.js +47 -7
  24. package/dist/cjs/dev/ltUtils.js +4 -91
  25. package/dist/cjs/dev/migrateFaucet.js +25 -53
  26. package/dist/cjs/dev/providers.js +12 -0
  27. package/dist/cjs/history/assembleOperations.js +103 -0
  28. package/dist/cjs/history/classifyMulticallOperations.js +157 -0
  29. package/dist/cjs/history/errors.js +91 -0
  30. package/dist/cjs/history/extractProtocolCalls.js +53 -0
  31. package/dist/cjs/history/extractTransfers.js +168 -0
  32. package/dist/cjs/history/findFacadeCalls.js +84 -0
  33. package/dist/cjs/history/index.js +39 -0
  34. package/dist/cjs/history/inner-operations.js +16 -0
  35. package/dist/cjs/{sdk/gauges/utils.js → history/internal-types.js} +2 -2
  36. package/dist/cjs/history/mapOperations.js +79 -0
  37. package/dist/cjs/history/package.json +1 -0
  38. package/dist/cjs/history/parseCreditAccountTransaction.js +86 -0
  39. package/dist/cjs/history/populateContractsRegister.js +68 -0
  40. package/dist/cjs/history/toLegacyOperation.js +182 -0
  41. package/dist/cjs/{plugins/adapters/contracts/YearnV2AdapterContract.js → history/trace-utils.js} +36 -21
  42. package/dist/cjs/permissionless/bindings/cross-chain-multisig.js +3 -3
  43. package/dist/cjs/permissionless/bindings/instance-manager.js +3 -3
  44. package/dist/cjs/permissionless/utils/price-update/get-prices.js +2 -6
  45. package/dist/cjs/plugins/adapters/AdaptersPlugin.js +13 -106
  46. package/dist/cjs/plugins/adapters/abi/index.js +2 -0
  47. package/dist/cjs/plugins/adapters/abi/targetContractAbi.js +5168 -0
  48. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +123 -3
  49. package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +8 -1
  50. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +65 -30
  51. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +27 -11
  52. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +40 -21
  53. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +100 -25
  54. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +74 -25
  55. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +79 -31
  56. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +79 -31
  57. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +84 -31
  58. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +80 -33
  59. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +62 -26
  60. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +92 -34
  61. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +46 -14
  62. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +62 -27
  63. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +46 -14
  64. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +34 -14
  65. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +56 -23
  66. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +31 -14
  67. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +28 -12
  68. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +35 -16
  69. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +47 -17
  70. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +29 -11
  71. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +45 -14
  72. package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +42 -17
  73. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +79 -42
  74. package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +34 -14
  75. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +27 -11
  76. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +44 -17
  77. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +49 -21
  78. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +92 -55
  79. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +71 -37
  80. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +55 -25
  81. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +44 -21
  82. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +42 -23
  83. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +53 -27
  84. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +42 -17
  85. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +46 -25
  86. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +37 -11
  87. package/dist/cjs/plugins/adapters/contracts/index.js +7 -15
  88. package/dist/cjs/plugins/adapters/createAdapter.js +125 -0
  89. package/dist/cjs/plugins/adapters/index.js +6 -0
  90. package/dist/cjs/plugins/adapters/legacyAdapterOperations.js +16 -0
  91. package/dist/cjs/plugins/adapters/transferHelpers.js +127 -0
  92. package/dist/cjs/plugins/bots/PartialLiquidationBotV310Contract.js +4 -4
  93. package/dist/cjs/plugins/bots/abi/index.js +0 -2
  94. package/dist/cjs/plugins/degen-distributors/DegenDistributorsPlugin.js +2 -1
  95. package/dist/cjs/plugins/pools-history/Pools7DAgoPlugin.js +1 -1
  96. package/dist/cjs/sdk/GearboxSDK.js +6 -14
  97. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +479 -188
  98. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +27 -17
  99. package/dist/cjs/sdk/accounts/createCreditAccountService.js +0 -4
  100. package/dist/cjs/sdk/accounts/index.js +0 -2
  101. package/dist/cjs/sdk/base/BaseContract.js +60 -6
  102. package/dist/cjs/sdk/base/ChainContractsRegister.js +34 -11
  103. package/dist/cjs/sdk/base/Construct.js +29 -15
  104. package/dist/cjs/sdk/base/PlaceholderContract.js +2 -2
  105. package/dist/cjs/sdk/base/SDKConstruct.js +1 -1
  106. package/dist/cjs/sdk/base/TokensMeta.js +154 -11
  107. package/dist/cjs/sdk/{sdk-legacy/utils/math.js → base/errors.js} +12 -10
  108. package/dist/cjs/sdk/base/index.js +2 -0
  109. package/dist/cjs/sdk/chain/chains.js +11 -28
  110. package/dist/cjs/sdk/constants/addresses.js +2 -88
  111. package/dist/cjs/sdk/constants/networks.js +0 -32
  112. package/dist/cjs/sdk/constants/versions.js +0 -8
  113. package/dist/cjs/sdk/core/{address-provider/AbstractAddressProviderContract.js → AbstractAddressProviderContract.js} +3 -3
  114. package/dist/cjs/sdk/core/{address-provider/AddressProviderV310Contract.js → AddressProviderV310Contract.js} +1 -1
  115. package/dist/cjs/sdk/core/{address-provider/createAddressProvider.js → createAddressProvider.js} +4 -7
  116. package/dist/cjs/sdk/core/index.js +6 -6
  117. package/dist/cjs/sdk/{sdk-gov-legacy/tokens/aave.js → core/types.js} +2 -2
  118. package/dist/cjs/sdk/index.js +0 -10
  119. package/dist/cjs/sdk/market/MarketConfiguratorContract.js +3 -2
  120. package/dist/cjs/sdk/market/MarketRegister.js +0 -1
  121. package/dist/cjs/sdk/market/MarketSuite.js +4 -1
  122. package/dist/cjs/sdk/market/adapters/PlaceholderAdapterContracts.js +25 -4
  123. package/dist/cjs/sdk/market/adapters/{factory.js → createAdapter.js} +3 -3
  124. package/dist/cjs/sdk/market/adapters/index.js +2 -2
  125. package/dist/cjs/sdk/market/credit/CreditFacadeV310BaseContract.js +108 -0
  126. package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +3 -40
  127. package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +1 -4
  128. package/dist/cjs/sdk/market/credit/createCreditConfigurator.js +1 -4
  129. package/dist/cjs/sdk/market/credit/createCreditFacade.js +1 -4
  130. package/dist/cjs/sdk/market/credit/createCreditManager.js +1 -4
  131. package/dist/cjs/sdk/market/credit/index.js +2 -6
  132. package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +9 -57
  133. package/dist/cjs/sdk/market/oracle/createPriceOracle.js +7 -38
  134. package/dist/cjs/sdk/market/oracle/index.js +0 -2
  135. package/dist/cjs/sdk/market/pool/GaugeContract.js +3 -3
  136. package/dist/cjs/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  137. package/dist/cjs/sdk/market/pool/PoolSuite.js +3 -0
  138. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +18 -3
  139. package/dist/cjs/sdk/market/pool/SecuritizeKYCFactory.js +97 -0
  140. package/dist/cjs/sdk/market/pool/createPool.js +0 -4
  141. package/dist/cjs/sdk/market/pool/createPoolQuotaKeeper.js +0 -4
  142. package/dist/cjs/sdk/market/pool/index.js +4 -4
  143. package/dist/cjs/sdk/market/pricefeeds/AbstractLPPriceFeed.js +14 -53
  144. package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +5 -3
  145. package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +20 -0
  146. package/dist/cjs/sdk/market/pricefeeds/RedstonePriceFeed.js +19 -46
  147. package/dist/cjs/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +0 -17
  148. package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +7 -7
  149. package/dist/cjs/sdk/market/pricefeeds/updates/RedstoneUpdater.js +6 -6
  150. package/dist/cjs/sdk/market/pricefeeds/updates/fetchPythPayloads.js +7 -7
  151. package/dist/cjs/sdk/market/pricefeeds/updates/fetchRedstonePayloads.js +10 -10
  152. package/dist/cjs/sdk/plugins/index.js +1 -3
  153. package/dist/cjs/sdk/pools/PoolService.js +149 -18
  154. package/dist/cjs/sdk/router/AbstractRouterContract.js +0 -4
  155. package/dist/cjs/sdk/router/RouterV310Contract.js +3 -32
  156. package/dist/cjs/sdk/router/createRouter.js +0 -4
  157. package/dist/cjs/sdk/router/helpers.js +0 -5
  158. package/dist/cjs/sdk/router/index.js +0 -2
  159. package/dist/cjs/sdk/utils/AddressMap.js +1 -1
  160. package/dist/cjs/sdk/utils/abi-decode.js +43 -2
  161. package/dist/cjs/sdk/utils/formatter.js +55 -2
  162. package/dist/cjs/sdk/utils/viem/sendRawTx.js +16 -0
  163. package/dist/esm/abi/310/iLinearInterestRateModelV310.js +68 -0
  164. package/dist/esm/abi/310/iSecuritizeDegenNFT.js +239 -0
  165. package/dist/esm/abi/310/iSecuritizeKYCFactory.js +254 -0
  166. package/dist/esm/abi/errors.js +0 -143
  167. package/dist/esm/abi/iPriceFeed.js +60 -0
  168. package/dist/esm/common-utils/index.js +1 -0
  169. package/dist/esm/common-utils/package.json +1 -0
  170. package/dist/esm/{sdk/sdk-legacy/core/assets.js → common-utils/utils/assetsMath.js} +80 -14
  171. package/dist/esm/common-utils/utils/bigintMath.js +41 -0
  172. package/dist/esm/common-utils/utils/creditAccount/calcHealthFactor.js +55 -0
  173. package/dist/esm/common-utils/utils/creditAccount/calcOverallAPY.js +60 -0
  174. package/dist/esm/common-utils/utils/creditAccount/calcQuotaBorrowRate.js +18 -0
  175. package/dist/esm/common-utils/utils/creditAccount/calcRelativeBaseBorrowRate.js +10 -0
  176. package/dist/esm/common-utils/utils/creditAccount/debt.js +43 -0
  177. package/dist/esm/common-utils/utils/creditAccount/getTimeToLiquidation.js +18 -0
  178. package/dist/esm/common-utils/utils/creditAccount/index.js +10 -0
  179. package/dist/esm/common-utils/utils/creditAccount/liquidationPrice.js +23 -0
  180. package/dist/esm/common-utils/utils/creditAccount/quotaUtils.js +125 -0
  181. package/dist/esm/common-utils/utils/creditAccount/sort.js +67 -0
  182. package/dist/esm/common-utils/utils/endpoints.js +41 -0
  183. package/dist/esm/common-utils/utils/index.js +5 -0
  184. package/dist/esm/common-utils/utils/priceMath.js +42 -0
  185. package/dist/esm/dev/AccountOpener.js +48 -7
  186. package/dist/esm/dev/ltUtils.js +7 -100
  187. package/dist/esm/dev/migrateFaucet.js +24 -51
  188. package/dist/esm/dev/providers.js +12 -0
  189. package/dist/esm/history/assembleOperations.js +79 -0
  190. package/dist/esm/history/classifyMulticallOperations.js +137 -0
  191. package/dist/esm/history/errors.js +62 -0
  192. package/dist/esm/history/extractProtocolCalls.js +32 -0
  193. package/dist/esm/history/extractTransfers.js +148 -0
  194. package/dist/esm/history/findFacadeCalls.js +63 -0
  195. package/dist/esm/history/index.js +9 -0
  196. package/dist/esm/history/mapOperations.js +55 -0
  197. package/dist/esm/history/package.json +1 -0
  198. package/dist/esm/history/parseCreditAccountTransaction.js +62 -0
  199. package/dist/esm/history/populateContractsRegister.js +52 -0
  200. package/dist/esm/history/toLegacyOperation.js +157 -0
  201. package/dist/esm/history/trace-utils.js +36 -0
  202. package/dist/esm/permissionless/bindings/cross-chain-multisig.js +3 -3
  203. package/dist/esm/permissionless/bindings/instance-manager.js +3 -3
  204. package/dist/esm/permissionless/utils/price-update/get-prices.js +2 -6
  205. package/dist/esm/plugins/adapters/AdaptersPlugin.js +14 -148
  206. package/dist/esm/plugins/adapters/abi/index.js +1 -0
  207. package/dist/esm/plugins/adapters/abi/targetContractAbi.js +5113 -0
  208. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +133 -4
  209. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +8 -1
  210. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +64 -30
  211. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +27 -11
  212. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +40 -21
  213. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +109 -26
  214. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +76 -25
  215. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +81 -31
  216. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +81 -31
  217. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +86 -31
  218. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +82 -33
  219. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +64 -26
  220. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +97 -34
  221. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +48 -14
  222. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +64 -27
  223. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +48 -14
  224. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +36 -14
  225. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +58 -23
  226. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +37 -15
  227. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +33 -12
  228. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +40 -16
  229. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +49 -17
  230. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +31 -11
  231. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +47 -14
  232. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +44 -17
  233. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +82 -43
  234. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +36 -14
  235. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +29 -11
  236. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +46 -17
  237. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +55 -22
  238. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +91 -54
  239. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +73 -37
  240. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +54 -25
  241. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +45 -22
  242. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +43 -24
  243. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +57 -28
  244. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +48 -18
  245. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +46 -25
  246. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +39 -11
  247. package/dist/esm/plugins/adapters/contracts/index.js +3 -7
  248. package/dist/esm/plugins/adapters/createAdapter.js +140 -0
  249. package/dist/esm/plugins/adapters/index.js +3 -0
  250. package/dist/esm/plugins/adapters/transferHelpers.js +95 -0
  251. package/dist/esm/plugins/bots/PartialLiquidationBotV310Contract.js +5 -8
  252. package/dist/esm/plugins/bots/abi/index.js +0 -1
  253. package/dist/esm/plugins/degen-distributors/DegenDistributorsPlugin.js +2 -1
  254. package/dist/esm/plugins/pools-history/Pools7DAgoPlugin.js +1 -2
  255. package/dist/esm/sdk/GearboxSDK.js +7 -23
  256. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +483 -193
  257. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +27 -17
  258. package/dist/esm/sdk/accounts/createCreditAccountService.js +1 -5
  259. package/dist/esm/sdk/accounts/index.js +0 -1
  260. package/dist/esm/sdk/base/BaseContract.js +62 -6
  261. package/dist/esm/sdk/base/ChainContractsRegister.js +34 -11
  262. package/dist/esm/sdk/base/Construct.js +29 -15
  263. package/dist/esm/sdk/base/PlaceholderContract.js +2 -2
  264. package/dist/esm/sdk/base/SDKConstruct.js +1 -1
  265. package/dist/esm/sdk/base/TokensMeta.js +158 -10
  266. package/dist/esm/sdk/base/errors.js +11 -0
  267. package/dist/esm/sdk/base/index.js +1 -0
  268. package/dist/esm/sdk/chain/chains.js +12 -28
  269. package/dist/esm/sdk/constants/addresses.js +1 -83
  270. package/dist/esm/sdk/constants/networks.js +0 -31
  271. package/dist/esm/sdk/constants/versions.js +0 -6
  272. package/dist/esm/sdk/core/{address-provider/AbstractAddressProviderContract.js → AbstractAddressProviderContract.js} +3 -3
  273. package/dist/esm/sdk/core/{address-provider/AddressProviderV310Contract.js → AddressProviderV310Contract.js} +1 -1
  274. package/dist/esm/sdk/core/{address-provider/createAddressProvider.js → createAddressProvider.js} +4 -8
  275. package/dist/esm/sdk/core/index.js +3 -3
  276. package/dist/esm/sdk/index.js +0 -5
  277. package/dist/esm/sdk/market/MarketConfiguratorContract.js +3 -2
  278. package/dist/esm/sdk/market/MarketRegister.js +0 -1
  279. package/dist/esm/sdk/market/MarketSuite.js +5 -2
  280. package/dist/esm/sdk/market/adapters/PlaceholderAdapterContracts.js +29 -5
  281. package/dist/esm/sdk/market/adapters/index.js +1 -1
  282. package/dist/esm/sdk/market/credit/CreditFacadeV310BaseContract.js +86 -0
  283. package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +3 -43
  284. package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +1 -4
  285. package/dist/esm/sdk/market/credit/createCreditConfigurator.js +2 -5
  286. package/dist/esm/sdk/market/credit/createCreditFacade.js +2 -5
  287. package/dist/esm/sdk/market/credit/createCreditManager.js +2 -5
  288. package/dist/esm/sdk/market/credit/index.js +1 -3
  289. package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +10 -59
  290. package/dist/esm/sdk/market/oracle/createPriceOracle.js +7 -38
  291. package/dist/esm/sdk/market/oracle/index.js +0 -1
  292. package/dist/esm/sdk/market/pool/GaugeContract.js +3 -3
  293. package/dist/esm/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  294. package/dist/esm/sdk/market/pool/PoolSuite.js +3 -0
  295. package/dist/esm/sdk/market/pool/PoolV310Contract.js +18 -3
  296. package/dist/esm/sdk/market/pool/SecuritizeKYCFactory.js +73 -0
  297. package/dist/esm/sdk/market/pool/createPool.js +1 -5
  298. package/dist/esm/sdk/market/pool/createPoolQuotaKeeper.js +1 -5
  299. package/dist/esm/sdk/market/pool/index.js +2 -2
  300. package/dist/esm/sdk/market/pricefeeds/AbstractLPPriceFeed.js +14 -53
  301. package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +5 -3
  302. package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +21 -1
  303. package/dist/esm/sdk/market/pricefeeds/RedstonePriceFeed.js +20 -47
  304. package/dist/esm/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +0 -17
  305. package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +7 -7
  306. package/dist/esm/sdk/market/pricefeeds/updates/RedstoneUpdater.js +6 -6
  307. package/dist/esm/sdk/market/pricefeeds/updates/fetchPythPayloads.js +7 -7
  308. package/dist/esm/sdk/market/pricefeeds/updates/fetchRedstonePayloads.js +10 -10
  309. package/dist/esm/sdk/plugins/index.js +0 -1
  310. package/dist/esm/sdk/pools/PoolService.js +149 -18
  311. package/dist/esm/sdk/router/AbstractRouterContract.js +0 -4
  312. package/dist/esm/sdk/router/RouterV310Contract.js +3 -32
  313. package/dist/esm/sdk/router/createRouter.js +1 -5
  314. package/dist/esm/sdk/router/helpers.js +0 -4
  315. package/dist/esm/sdk/router/index.js +0 -1
  316. package/dist/esm/sdk/utils/AddressMap.js +1 -1
  317. package/dist/esm/sdk/utils/abi-decode.js +43 -2
  318. package/dist/esm/sdk/utils/formatter.js +37 -1
  319. package/dist/esm/sdk/utils/viem/sendRawTx.js +19 -1
  320. package/dist/types/abi/310/iLinearInterestRateModelV310.d.ts +111 -0
  321. package/dist/types/{sdk/market/pool/PoolQuotaKeeperV300Contract.d.ts → abi/310/iSecuritizeDegenNFT.d.ts} +115 -239
  322. package/dist/types/{sdk/core/BotListV3Contract.d.ts → abi/310/iSecuritizeKYCFactory.d.ts} +146 -147
  323. package/dist/types/abi/errors.d.ts +186 -996
  324. package/dist/types/abi/iPriceFeed.d.ts +87 -0
  325. package/dist/types/common-utils/index.d.ts +1 -0
  326. package/dist/types/common-utils/utils/assetsMath.d.ts +114 -0
  327. package/dist/types/common-utils/utils/bigintMath.d.ts +43 -0
  328. package/dist/types/common-utils/utils/creditAccount/calcHealthFactor.d.ts +25 -0
  329. package/dist/types/common-utils/utils/creditAccount/calcOverallAPY.d.ts +37 -0
  330. package/dist/types/common-utils/utils/creditAccount/calcQuotaBorrowRate.d.ts +18 -0
  331. package/dist/types/common-utils/utils/creditAccount/calcRelativeBaseBorrowRate.d.ts +15 -0
  332. package/dist/types/common-utils/utils/creditAccount/debt.d.ts +35 -0
  333. package/dist/types/common-utils/utils/creditAccount/getTimeToLiquidation.d.ts +16 -0
  334. package/dist/types/common-utils/utils/creditAccount/index.d.ts +10 -0
  335. package/dist/types/common-utils/utils/creditAccount/liquidationPrice.d.ts +25 -0
  336. package/dist/types/common-utils/utils/creditAccount/quotaUtils.d.ts +81 -0
  337. package/dist/types/common-utils/utils/creditAccount/sort.d.ts +55 -0
  338. package/dist/types/common-utils/utils/creditAccount/types.d.ts +18 -0
  339. package/dist/types/common-utils/utils/endpoints.d.ts +27 -0
  340. package/dist/types/common-utils/utils/index.d.ts +5 -0
  341. package/dist/types/common-utils/utils/priceMath.d.ts +47 -0
  342. package/dist/types/dev/migrateFaucet.d.ts +4 -5
  343. package/dist/types/dev/providers.d.ts +5 -5
  344. package/dist/types/history/assembleOperations.d.ts +22 -0
  345. package/dist/types/history/classifyMulticallOperations.d.ts +35 -0
  346. package/dist/types/history/errors.d.ts +30 -0
  347. package/dist/types/history/extractProtocolCalls.d.ts +8 -0
  348. package/dist/types/history/extractTransfers.d.ts +22 -0
  349. package/dist/types/history/findFacadeCalls.d.ts +9 -0
  350. package/dist/types/history/index.d.ts +6 -0
  351. package/dist/types/history/inner-operations.d.ts +57 -0
  352. package/dist/types/history/internal-types.d.ts +47 -0
  353. package/dist/types/history/mapOperations.d.ts +27 -0
  354. package/dist/types/history/parseCreditAccountTransaction.d.ts +27 -0
  355. package/dist/types/history/populateContractsRegister.d.ts +19 -0
  356. package/dist/types/history/toLegacyOperation.d.ts +18 -0
  357. package/dist/types/history/trace-utils.d.ts +12 -0
  358. package/dist/types/history/types.d.ts +71 -0
  359. package/dist/types/permissionless/bindings/cross-chain-multisig.d.ts +3 -3
  360. package/dist/types/permissionless/bindings/instance-manager.d.ts +3 -3
  361. package/dist/types/plugins/adapters/abi/index.d.ts +1 -0
  362. package/dist/types/plugins/adapters/abi/targetContractAbi.d.ts +8262 -0
  363. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +50 -8
  364. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +238 -4
  365. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +135 -8
  366. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +45 -4
  367. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +225 -7
  368. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +418 -8
  369. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +227 -10
  370. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +1257 -10
  371. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +1257 -10
  372. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +1257 -10
  373. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +575 -11
  374. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +1244 -10
  375. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +1227 -11
  376. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +69 -6
  377. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +492 -6
  378. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +67 -6
  379. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +132 -6
  380. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +144 -8
  381. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +163 -5
  382. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +248 -6
  383. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +367 -6
  384. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +104 -7
  385. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +46 -5
  386. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +488 -6
  387. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +20 -7
  388. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +493 -7
  389. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +18 -6
  390. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +56 -5
  391. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +52 -7
  392. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +199 -7
  393. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +1040 -17
  394. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +82 -8
  395. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +148 -10
  396. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +758 -5
  397. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +183 -4
  398. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +110 -5
  399. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +84 -7
  400. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +122 -4
  401. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +275 -5
  402. package/dist/types/plugins/adapters/contracts/index.d.ts +3 -7
  403. package/dist/types/plugins/adapters/createAdapter.d.ts +5 -0
  404. package/dist/types/plugins/adapters/index.d.ts +3 -0
  405. package/dist/types/plugins/adapters/legacyAdapterOperations.d.ts +200 -0
  406. package/dist/types/plugins/adapters/transferHelpers.d.ts +60 -0
  407. package/dist/types/plugins/adapters/types.d.ts +64 -2
  408. package/dist/types/plugins/bots/abi/index.d.ts +0 -1
  409. package/dist/types/sdk/GearboxSDK.d.ts +0 -3
  410. package/dist/types/sdk/accounts/AbstractCreditAccountsService.d.ts +123 -37
  411. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +2 -2
  412. package/dist/types/sdk/accounts/createCreditAccountService.d.ts +1 -1
  413. package/dist/types/sdk/accounts/index.d.ts +0 -1
  414. package/dist/types/sdk/accounts/types.d.ts +115 -43
  415. package/dist/types/sdk/base/BaseContract.d.ts +17 -4
  416. package/dist/types/sdk/base/ChainContractsRegister.d.ts +11 -3
  417. package/dist/types/sdk/base/Construct.d.ts +13 -13
  418. package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
  419. package/dist/types/sdk/base/TokensMeta.d.ts +27 -4
  420. package/dist/types/sdk/base/errors.d.ts +3 -0
  421. package/dist/types/sdk/base/index.d.ts +1 -0
  422. package/dist/types/sdk/base/token-types.d.ts +10 -2
  423. package/dist/types/sdk/base/types.d.ts +36 -0
  424. package/dist/types/sdk/chain/chains.d.ts +1 -1
  425. package/dist/types/sdk/constants/addresses.d.ts +0 -19
  426. package/dist/types/sdk/constants/networks.d.ts +0 -5
  427. package/dist/types/sdk/constants/versions.d.ts +0 -2
  428. package/dist/types/sdk/core/{address-provider/AbstractAddressProviderContract.d.ts → AbstractAddressProviderContract.d.ts} +4 -4
  429. package/dist/types/sdk/core/{address-provider/AddressProviderV310Contract.d.ts → AddressProviderV310Contract.d.ts} +1 -1
  430. package/dist/types/sdk/core/{address-provider/createAddressProvider.d.ts → createAddressProvider.d.ts} +1 -1
  431. package/dist/types/sdk/core/index.d.ts +3 -3
  432. package/dist/types/sdk/core/{address-provider/types.d.ts → types.d.ts} +3 -3
  433. package/dist/types/sdk/index.d.ts +0 -5
  434. package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +1 -1
  435. package/dist/types/sdk/market/MarketRegister.d.ts +0 -1
  436. package/dist/types/sdk/market/MarketSuite.d.ts +2 -0
  437. package/dist/types/sdk/market/adapters/PlaceholderAdapterContracts.d.ts +10 -5
  438. package/dist/types/sdk/market/adapters/index.d.ts +1 -1
  439. package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +6 -2
  440. package/dist/types/sdk/market/credit/{CreditFacadeV300Contract.d.ts → CreditFacadeV310BaseContract.d.ts} +335 -267
  441. package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +6 -848
  442. package/dist/types/sdk/market/credit/index.d.ts +1 -3
  443. package/dist/types/sdk/market/credit/types.d.ts +2 -3
  444. package/dist/types/sdk/market/loss-policy/createLossPolicy.d.ts +0 -12
  445. package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +2 -21
  446. package/dist/types/sdk/market/oracle/PriceOracleV310Contract.d.ts +2 -2
  447. package/dist/types/sdk/market/oracle/createPriceOracle.d.ts +1 -15
  448. package/dist/types/sdk/market/oracle/index.d.ts +0 -1
  449. package/dist/types/sdk/market/oracle/types.d.ts +6 -18
  450. package/dist/types/sdk/market/pool/GaugeContract.d.ts +116 -76
  451. package/dist/types/sdk/market/pool/LinearInterestRateModelContract.d.ts +20 -0
  452. package/dist/types/sdk/market/pool/PoolSuite.d.ts +2 -0
  453. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +6 -2
  454. package/dist/types/sdk/market/pool/SecuritizeKYCFactory.d.ts +345 -0
  455. package/dist/types/sdk/market/pool/index.d.ts +2 -2
  456. package/dist/types/sdk/market/pool/types.d.ts +2 -4
  457. package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +0 -3
  458. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +21 -1
  459. package/dist/types/sdk/market/pricefeeds/types.d.ts +0 -9
  460. package/dist/types/sdk/market/pricefeeds/updates/PriceUpdatesCache.d.ts +1 -8
  461. package/dist/types/sdk/market/pricefeeds/updates/PythUpdater.d.ts +1 -1
  462. package/dist/types/sdk/market/pricefeeds/updates/RedstoneUpdater.d.ts +1 -1
  463. package/dist/types/sdk/market/pricefeeds/updates/fetchPythPayloads.d.ts +2 -2
  464. package/dist/types/sdk/market/pricefeeds/updates/fetchRedstonePayloads.d.ts +2 -2
  465. package/dist/types/sdk/options.d.ts +2 -2
  466. package/dist/types/sdk/plugins/index.d.ts +0 -1
  467. package/dist/types/sdk/pools/PoolService.d.ts +4 -1
  468. package/dist/types/sdk/pools/types.d.ts +22 -3
  469. package/dist/types/sdk/router/AbstractRouterContract.d.ts +2 -7
  470. package/dist/types/sdk/router/RouterV310Contract.d.ts +1 -16
  471. package/dist/types/sdk/router/helpers.d.ts +2 -2
  472. package/dist/types/sdk/router/index.d.ts +0 -1
  473. package/dist/types/sdk/router/types.d.ts +2 -55
  474. package/dist/types/sdk/types/state-human.d.ts +1 -4
  475. package/dist/types/sdk/utils/AddressMap.d.ts +1 -1
  476. package/dist/types/sdk/utils/abi-decode.d.ts +14 -1
  477. package/dist/types/sdk/utils/formatter.d.ts +9 -0
  478. package/dist/types/sdk/utils/viem/sendRawTx.d.ts +5 -1
  479. package/package.json +26 -12
  480. package/dist/cjs/abi/iDegenDistributorV300.js +0 -100
  481. package/dist/cjs/abi/routerV300.js +0 -406
  482. package/dist/cjs/abi/v300.js +0 -4189
  483. package/dist/cjs/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +0 -51
  484. package/dist/cjs/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +0 -58
  485. package/dist/cjs/plugins/adapters/contracts/InfraredVaultAdapterContract.js +0 -49
  486. package/dist/cjs/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +0 -56
  487. package/dist/cjs/plugins/adapters/contracts/MellowVaultAdapterContract.js +0 -46
  488. package/dist/cjs/plugins/adapters/contracts/types.js +0 -77
  489. package/dist/cjs/plugins/bots/abi/iPartialLiquidationBotV300.js +0 -164
  490. package/dist/cjs/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +0 -192
  491. package/dist/cjs/sdk/accountMigration/createMigrateCreditAccountsService.js +0 -41
  492. package/dist/cjs/sdk/accountMigration/index.js +0 -26
  493. package/dist/cjs/sdk/accounts/CreditAccountsServiceV300.js +0 -454
  494. package/dist/cjs/sdk/core/BotListV3Contract.js +0 -101
  495. package/dist/cjs/sdk/core/GearStakingV3Contract.js +0 -83
  496. package/dist/cjs/sdk/core/address-provider/AddressProviderV300Contract.js +0 -116
  497. package/dist/cjs/sdk/core/address-provider/index.js +0 -28
  498. package/dist/cjs/sdk/gauges/GaugeStakingService.js +0 -118
  499. package/dist/cjs/sdk/gauges/index.js +0 -24
  500. package/dist/cjs/sdk/market/credit/CreditConfiguratorV300Contract.js +0 -139
  501. package/dist/cjs/sdk/market/credit/CreditFacadeV300Contract.js +0 -160
  502. package/dist/cjs/sdk/market/credit/CreditManagerV300Contract.js +0 -114
  503. package/dist/cjs/sdk/market/oracle/PriceOracleV300Contract.js +0 -129
  504. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV300Contract.js +0 -85
  505. package/dist/cjs/sdk/market/pool/PoolV300Contract.js +0 -135
  506. package/dist/cjs/sdk/plugins/V300StalenessPeriodPlugin.js +0 -131
  507. package/dist/cjs/sdk/poolMigration/index.js +0 -84
  508. package/dist/cjs/sdk/router/PathOptionFactory.js +0 -105
  509. package/dist/cjs/sdk/router/RouterV300Contract.js +0 -390
  510. package/dist/cjs/sdk/sdk-gov-legacy/contracts/adapters.js +0 -67
  511. package/dist/cjs/sdk/sdk-gov-legacy/contracts/contracts.js +0 -2576
  512. package/dist/cjs/sdk/sdk-gov-legacy/contracts/index.js +0 -24
  513. package/dist/cjs/sdk/sdk-gov-legacy/contracts/protocols.js +0 -58
  514. package/dist/cjs/sdk/sdk-gov-legacy/index.js +0 -26
  515. package/dist/cjs/sdk/sdk-gov-legacy/oracles/PriceFeedType.js +0 -52
  516. package/dist/cjs/sdk/sdk-gov-legacy/tokens/aura.js +0 -239
  517. package/dist/cjs/sdk/sdk-gov-legacy/tokens/balancer.js +0 -339
  518. package/dist/cjs/sdk/sdk-gov-legacy/tokens/compound.js +0 -16
  519. package/dist/cjs/sdk/sdk-gov-legacy/tokens/convex.js +0 -450
  520. package/dist/cjs/sdk/sdk-gov-legacy/tokens/curveLP.js +0 -394
  521. package/dist/cjs/sdk/sdk-gov-legacy/tokens/erc4626.js +0 -16
  522. package/dist/cjs/sdk/sdk-gov-legacy/tokens/gear.js +0 -16
  523. package/dist/cjs/sdk/sdk-gov-legacy/tokens/index.js +0 -52
  524. package/dist/cjs/sdk/sdk-gov-legacy/tokens/normal.js +0 -562
  525. package/dist/cjs/sdk/sdk-gov-legacy/tokens/stakingRewards.js +0 -45
  526. package/dist/cjs/sdk/sdk-gov-legacy/tokens/token.js +0 -1002
  527. package/dist/cjs/sdk/sdk-gov-legacy/tokens/tokenData.js +0 -80
  528. package/dist/cjs/sdk/sdk-gov-legacy/tokens/tokenType.js +0 -50
  529. package/dist/cjs/sdk/sdk-gov-legacy/tokens/wrapped.js +0 -16
  530. package/dist/cjs/sdk/sdk-gov-legacy/tokens/yearn.js +0 -95
  531. package/dist/cjs/sdk/sdk-gov-legacy/tokens/zircuit.js +0 -16
  532. package/dist/cjs/sdk/sdk-legacy/core/assets.js +0 -150
  533. package/dist/cjs/sdk/sdk-legacy/core/creditAccount.js +0 -510
  534. package/dist/cjs/sdk/sdk-legacy/core/creditAccount.spec.js +0 -1802
  535. package/dist/cjs/sdk/sdk-legacy/core/creditManager.js +0 -263
  536. package/dist/cjs/sdk/sdk-legacy/core/creditSession.js +0 -256
  537. package/dist/cjs/sdk/sdk-legacy/core/endpoint.js +0 -137
  538. package/dist/cjs/sdk/sdk-legacy/core/eventOrTx.js +0 -87
  539. package/dist/cjs/sdk/sdk-legacy/core/pool.js +0 -334
  540. package/dist/cjs/sdk/sdk-legacy/core/transactions.js +0 -783
  541. package/dist/cjs/sdk/sdk-legacy/gearboxRewards/api.js +0 -366
  542. package/dist/cjs/sdk/sdk-legacy/gearboxRewards/apy.js +0 -176
  543. package/dist/cjs/sdk/sdk-legacy/gearboxRewards/extraAPY.js +0 -137
  544. package/dist/cjs/sdk/sdk-legacy/gearboxRewards/index.js +0 -26
  545. package/dist/cjs/sdk/sdk-legacy/index.js +0 -52
  546. package/dist/cjs/sdk/sdk-legacy/payload/creditAccount.js +0 -16
  547. package/dist/cjs/sdk/sdk-legacy/payload/creditManager.js +0 -16
  548. package/dist/cjs/sdk/sdk-legacy/payload/creditSession.js +0 -16
  549. package/dist/cjs/sdk/sdk-legacy/payload/graphPayload.js +0 -16
  550. package/dist/cjs/sdk/sdk-legacy/payload/pool.js +0 -16
  551. package/dist/cjs/sdk/sdk-legacy/tokens/tokenData.js +0 -92
  552. package/dist/cjs/sdk/sdk-legacy/utils/formatter.js +0 -79
  553. package/dist/cjs/sdk/sdk-legacy/utils/price.js +0 -35
  554. package/dist/esm/abi/iDegenDistributorV300.js +0 -76
  555. package/dist/esm/abi/routerV300.js +0 -381
  556. package/dist/esm/abi/v300.js +0 -4154
  557. package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +0 -27
  558. package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +0 -34
  559. package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +0 -25
  560. package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +0 -32
  561. package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +0 -22
  562. package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +0 -22
  563. package/dist/esm/plugins/adapters/contracts/types.js +0 -48
  564. package/dist/esm/plugins/bots/abi/iPartialLiquidationBotV300.js +0 -140
  565. package/dist/esm/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +0 -171
  566. package/dist/esm/sdk/accountMigration/MigrateCreditAccountsServiceV300.js +0 -6
  567. package/dist/esm/sdk/accountMigration/MigrateCreditAccountsServiceV310.js +0 -6
  568. package/dist/esm/sdk/accountMigration/createMigrateCreditAccountsService.js +0 -17
  569. package/dist/esm/sdk/accountMigration/index.js +0 -3
  570. package/dist/esm/sdk/accounts/CreditAccountsServiceV300.js +0 -442
  571. package/dist/esm/sdk/core/BotListV3Contract.js +0 -77
  572. package/dist/esm/sdk/core/GearStakingV3Contract.js +0 -59
  573. package/dist/esm/sdk/core/address-provider/AddressProviderV300Contract.js +0 -82
  574. package/dist/esm/sdk/core/address-provider/index.js +0 -4
  575. package/dist/esm/sdk/gauges/GaugeStakingService.js +0 -94
  576. package/dist/esm/sdk/gauges/index.js +0 -2
  577. package/dist/esm/sdk/market/credit/CreditConfiguratorV300Contract.js +0 -115
  578. package/dist/esm/sdk/market/credit/CreditFacadeV300Contract.js +0 -143
  579. package/dist/esm/sdk/market/credit/CreditManagerV300Contract.js +0 -90
  580. package/dist/esm/sdk/market/oracle/PriceOracleV300Contract.js +0 -111
  581. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV300Contract.js +0 -61
  582. package/dist/esm/sdk/market/pool/PoolV300Contract.js +0 -116
  583. package/dist/esm/sdk/plugins/V300StalenessPeriodPlugin.js +0 -107
  584. package/dist/esm/sdk/poolMigration/index.js +0 -60
  585. package/dist/esm/sdk/router/PathOptionFactory.js +0 -92
  586. package/dist/esm/sdk/router/RouterV300Contract.js +0 -374
  587. package/dist/esm/sdk/sdk-gov-legacy/contracts/adapters.js +0 -43
  588. package/dist/esm/sdk/sdk-gov-legacy/contracts/contracts.js +0 -2538
  589. package/dist/esm/sdk/sdk-gov-legacy/contracts/index.js +0 -2
  590. package/dist/esm/sdk/sdk-gov-legacy/contracts/protocols.js +0 -34
  591. package/dist/esm/sdk/sdk-gov-legacy/index.js +0 -3
  592. package/dist/esm/sdk/sdk-gov-legacy/oracles/PriceFeedType.js +0 -28
  593. package/dist/esm/sdk/sdk-gov-legacy/oracles/index.js +0 -1
  594. package/dist/esm/sdk/sdk-gov-legacy/tokens/aura.js +0 -213
  595. package/dist/esm/sdk/sdk-gov-legacy/tokens/balancer.js +0 -314
  596. package/dist/esm/sdk/sdk-gov-legacy/tokens/convex.js +0 -424
  597. package/dist/esm/sdk/sdk-gov-legacy/tokens/curveLP.js +0 -369
  598. package/dist/esm/sdk/sdk-gov-legacy/tokens/gear.js +0 -0
  599. package/dist/esm/sdk/sdk-gov-legacy/tokens/index.js +0 -16
  600. package/dist/esm/sdk/sdk-gov-legacy/tokens/normal.js +0 -538
  601. package/dist/esm/sdk/sdk-gov-legacy/tokens/stakingRewards.js +0 -20
  602. package/dist/esm/sdk/sdk-gov-legacy/tokens/token.js +0 -975
  603. package/dist/esm/sdk/sdk-gov-legacy/tokens/tokenData.js +0 -55
  604. package/dist/esm/sdk/sdk-gov-legacy/tokens/tokenType.js +0 -26
  605. package/dist/esm/sdk/sdk-gov-legacy/tokens/wrapped.js +0 -0
  606. package/dist/esm/sdk/sdk-gov-legacy/tokens/yearn.js +0 -71
  607. package/dist/esm/sdk/sdk-gov-legacy/tokens/zircuit.js +0 -0
  608. package/dist/esm/sdk/sdk-legacy/core/creditAccount.js +0 -495
  609. package/dist/esm/sdk/sdk-legacy/core/creditAccount.spec.js +0 -1805
  610. package/dist/esm/sdk/sdk-legacy/core/creditManager.js +0 -242
  611. package/dist/esm/sdk/sdk-legacy/core/creditSession.js +0 -228
  612. package/dist/esm/sdk/sdk-legacy/core/endpoint.js +0 -107
  613. package/dist/esm/sdk/sdk-legacy/core/eventOrTx.js +0 -63
  614. package/dist/esm/sdk/sdk-legacy/core/pool.js +0 -311
  615. package/dist/esm/sdk/sdk-legacy/core/transactions.js +0 -732
  616. package/dist/esm/sdk/sdk-legacy/gearboxRewards/api.js +0 -332
  617. package/dist/esm/sdk/sdk-legacy/gearboxRewards/apy.js +0 -158
  618. package/dist/esm/sdk/sdk-legacy/gearboxRewards/extraAPY.js +0 -102
  619. package/dist/esm/sdk/sdk-legacy/gearboxRewards/index.js +0 -3
  620. package/dist/esm/sdk/sdk-legacy/gearboxRewards/merklAPI.js +0 -6
  621. package/dist/esm/sdk/sdk-legacy/index.js +0 -16
  622. package/dist/esm/sdk/sdk-legacy/payload/creditAccount.js +0 -0
  623. package/dist/esm/sdk/sdk-legacy/payload/creditManager.js +0 -0
  624. package/dist/esm/sdk/sdk-legacy/payload/creditSession.js +0 -0
  625. package/dist/esm/sdk/sdk-legacy/payload/graphPayload.js +0 -0
  626. package/dist/esm/sdk/sdk-legacy/payload/pool.js +0 -0
  627. package/dist/esm/sdk/sdk-legacy/tokens/tokenData.js +0 -68
  628. package/dist/esm/sdk/sdk-legacy/utils/formatter.js +0 -39
  629. package/dist/esm/sdk/sdk-legacy/utils/index.js +0 -3
  630. package/dist/esm/sdk/sdk-legacy/utils/math.js +0 -9
  631. package/dist/esm/sdk/sdk-legacy/utils/price.js +0 -11
  632. package/dist/types/abi/iDegenDistributorV300.d.ts +0 -87
  633. package/dist/types/abi/routerV300.d.ts +0 -585
  634. package/dist/types/abi/v300.d.ts +0 -5484
  635. package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +0 -482
  636. package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +0 -225
  637. package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +0 -198
  638. package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +0 -396
  639. package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +0 -203
  640. package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +0 -185
  641. package/dist/types/plugins/adapters/contracts/types.d.ts +0 -34
  642. package/dist/types/plugins/bots/abi/iPartialLiquidationBotV300.d.ts +0 -210
  643. package/dist/types/sdk/accountMigration/AbstractMigrateCreditAccountsService.d.ts +0 -32
  644. package/dist/types/sdk/accountMigration/MigrateCreditAccountsServiceV300.d.ts +0 -4
  645. package/dist/types/sdk/accountMigration/MigrateCreditAccountsServiceV310.d.ts +0 -4
  646. package/dist/types/sdk/accountMigration/createMigrateCreditAccountsService.d.ts +0 -8
  647. package/dist/types/sdk/accountMigration/index.d.ts +0 -3
  648. package/dist/types/sdk/accountMigration/types.d.ts +0 -62
  649. package/dist/types/sdk/accounts/CreditAccountsServiceV300.d.ts +0 -32
  650. package/dist/types/sdk/core/GearStakingV3Contract.d.ts +0 -520
  651. package/dist/types/sdk/core/address-provider/AddressProviderV300Contract.d.ts +0 -97
  652. package/dist/types/sdk/core/address-provider/index.d.ts +0 -4
  653. package/dist/types/sdk/gauges/GaugeStakingService.d.ts +0 -14
  654. package/dist/types/sdk/gauges/index.d.ts +0 -2
  655. package/dist/types/sdk/gauges/utils.d.ts +0 -22
  656. package/dist/types/sdk/market/credit/CreditConfiguratorV300Contract.d.ts +0 -648
  657. package/dist/types/sdk/market/credit/CreditManagerV300Contract.d.ts +0 -1043
  658. package/dist/types/sdk/market/oracle/PriceOracleV300Contract.d.ts +0 -369
  659. package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +0 -1107
  660. package/dist/types/sdk/plugins/V300StalenessPeriodPlugin.d.ts +0 -29
  661. package/dist/types/sdk/poolMigration/index.d.ts +0 -11
  662. package/dist/types/sdk/router/PathOptionFactory.d.ts +0 -9
  663. package/dist/types/sdk/router/RouterV300Contract.d.ts +0 -39
  664. package/dist/types/sdk/sdk-gov-legacy/contracts/adapters.d.ts +0 -39
  665. package/dist/types/sdk/sdk-gov-legacy/contracts/contracts.d.ts +0 -194
  666. package/dist/types/sdk/sdk-gov-legacy/contracts/index.d.ts +0 -2
  667. package/dist/types/sdk/sdk-gov-legacy/contracts/protocols.d.ts +0 -30
  668. package/dist/types/sdk/sdk-gov-legacy/index.d.ts +0 -3
  669. package/dist/types/sdk/sdk-gov-legacy/oracles/PriceFeedType.d.ts +0 -24
  670. package/dist/types/sdk/sdk-gov-legacy/oracles/index.d.ts +0 -1
  671. package/dist/types/sdk/sdk-gov-legacy/tokens/aave.d.ts +0 -2
  672. package/dist/types/sdk/sdk-gov-legacy/tokens/aura.d.ts +0 -26
  673. package/dist/types/sdk/sdk-gov-legacy/tokens/balancer.d.ts +0 -15
  674. package/dist/types/sdk/sdk-gov-legacy/tokens/compound.d.ts +0 -1
  675. package/dist/types/sdk/sdk-gov-legacy/tokens/convex.d.ts +0 -31
  676. package/dist/types/sdk/sdk-gov-legacy/tokens/curveLP.d.ts +0 -25
  677. package/dist/types/sdk/sdk-gov-legacy/tokens/erc4626.d.ts +0 -1
  678. package/dist/types/sdk/sdk-gov-legacy/tokens/gear.d.ts +0 -5
  679. package/dist/types/sdk/sdk-gov-legacy/tokens/index.d.ts +0 -16
  680. package/dist/types/sdk/sdk-gov-legacy/tokens/normal.d.ts +0 -9
  681. package/dist/types/sdk/sdk-gov-legacy/tokens/stakingRewards.d.ts +0 -13
  682. package/dist/types/sdk/sdk-gov-legacy/tokens/token.d.ts +0 -34
  683. package/dist/types/sdk/sdk-gov-legacy/tokens/tokenData.d.ts +0 -5
  684. package/dist/types/sdk/sdk-gov-legacy/tokens/tokenType.d.ts +0 -24
  685. package/dist/types/sdk/sdk-gov-legacy/tokens/wrapped.d.ts +0 -7
  686. package/dist/types/sdk/sdk-gov-legacy/tokens/yearn.d.ts +0 -26
  687. package/dist/types/sdk/sdk-gov-legacy/tokens/zircuit.d.ts +0 -1
  688. package/dist/types/sdk/sdk-legacy/core/assets.d.ts +0 -39
  689. package/dist/types/sdk/sdk-legacy/core/creditAccount.d.ts +0 -152
  690. package/dist/types/sdk/sdk-legacy/core/creditAccount.spec.d.ts +0 -1
  691. package/dist/types/sdk/sdk-legacy/core/creditManager.d.ts +0 -92
  692. package/dist/types/sdk/sdk-legacy/core/creditSession.d.ts +0 -110
  693. package/dist/types/sdk/sdk-legacy/core/endpoint.d.ts +0 -24
  694. package/dist/types/sdk/sdk-legacy/core/eventOrTx.d.ts +0 -35
  695. package/dist/types/sdk/sdk-legacy/core/pool.d.ts +0 -144
  696. package/dist/types/sdk/sdk-legacy/core/transactions.d.ts +0 -348
  697. package/dist/types/sdk/sdk-legacy/gearboxRewards/api.d.ts +0 -87
  698. package/dist/types/sdk/sdk-legacy/gearboxRewards/apy.d.ts +0 -46
  699. package/dist/types/sdk/sdk-legacy/gearboxRewards/extraAPY.d.ts +0 -41
  700. package/dist/types/sdk/sdk-legacy/gearboxRewards/index.d.ts +0 -3
  701. package/dist/types/sdk/sdk-legacy/gearboxRewards/merklAPI.d.ts +0 -42
  702. package/dist/types/sdk/sdk-legacy/index.d.ts +0 -16
  703. package/dist/types/sdk/sdk-legacy/payload/creditAccount.d.ts +0 -47
  704. package/dist/types/sdk/sdk-legacy/payload/creditManager.d.ts +0 -109
  705. package/dist/types/sdk/sdk-legacy/payload/creditSession.d.ts +0 -111
  706. package/dist/types/sdk/sdk-legacy/payload/graphPayload.d.ts +0 -10
  707. package/dist/types/sdk/sdk-legacy/payload/pool.d.ts +0 -181
  708. package/dist/types/sdk/sdk-legacy/tokens/tokenData.d.ts +0 -21
  709. package/dist/types/sdk/sdk-legacy/utils/formatter.d.ts +0 -8
  710. package/dist/types/sdk/sdk-legacy/utils/index.d.ts +0 -3
  711. package/dist/types/sdk/sdk-legacy/utils/math.d.ts +0 -6
  712. package/dist/types/sdk/sdk-legacy/utils/price.d.ts +0 -9
  713. /package/dist/cjs/{sdk/accountMigration → common-utils/utils/creditAccount}/types.js +0 -0
  714. /package/dist/cjs/{sdk/core/address-provider → history}/types.js +0 -0
  715. /package/dist/esm/{sdk/accountMigration → common-utils/utils/creditAccount}/types.js +0 -0
  716. /package/dist/esm/{sdk/core/address-provider/types.js → history/inner-operations.js} +0 -0
  717. /package/dist/esm/{sdk/gauges/utils.js → history/internal-types.js} +0 -0
  718. /package/dist/esm/{sdk/sdk-gov-legacy/tokens/aave.js → history/types.js} +0 -0
  719. /package/dist/esm/{sdk/sdk-gov-legacy/tokens/compound.js → plugins/adapters/legacyAdapterOperations.js} +0 -0
  720. /package/dist/esm/sdk/{sdk-gov-legacy/tokens/erc4626.js → core/types.js} +0 -0
  721. /package/dist/esm/sdk/market/adapters/{factory.js → createAdapter.js} +0 -0
  722. /package/dist/types/sdk/market/adapters/{factory.d.ts → createAdapter.d.ts} +0 -0
@@ -42,7 +42,7 @@ class CreditAccountServiceV310 extends AbstractCreditAccountService {
42
42
  })
43
43
  };
44
44
  const calls = [...priceUpdatesCalls, addBotCall];
45
- const tx = targetContract.type === "creditAccount" ? cm.creditFacade.multicall(targetContract.creditAccount, calls) : void 0;
45
+ const tx = targetContract.type === "creditAccount" ? await this.multicallTx(cm, targetContract.creditAccount, calls) : void 0;
46
46
  return { tx, calls, creditFacade: cm.creditFacade };
47
47
  }
48
48
  /**
@@ -77,7 +77,7 @@ class CreditAccountServiceV310 extends AbstractCreditAccountService {
77
77
  averageQuota
78
78
  })
79
79
  ];
80
- const tx = cm.creditFacade.multicall(creditAccount.creditAccount, calls);
80
+ const tx = await this.multicallTx(cm, creditAccount.creditAccount, calls);
81
81
  return { tx, calls, creditFacade: cm.creditFacade };
82
82
  }
83
83
  /**
@@ -90,13 +90,14 @@ class CreditAccountServiceV310 extends AbstractCreditAccountService {
90
90
  creditAccount: ca,
91
91
  permits,
92
92
  to,
93
- tokensToClaim
93
+ tokensToClaim,
94
+ calls: wrapCalls = []
94
95
  }) {
95
96
  const cm = this.sdk.marketRegister.findCreditManager(ca.creditManager);
96
97
  const addCollateral = collateralAssets.filter((a) => a.balance > 0);
97
98
  const router = this.sdk.routerFor(ca);
99
+ const unwrapCalls = await this.getRedeemDiffCalls(1n, ca.creditManager) ?? [];
98
100
  const claimPath = await router.findClaimAllRewards({
99
- calls: [],
100
101
  tokensToClaim,
101
102
  creditAccount: ca
102
103
  });
@@ -107,15 +108,21 @@ class CreditAccountServiceV310 extends AbstractCreditAccountService {
107
108
  const calls = [
108
109
  ...operation === "close" ? [] : priceUpdates,
109
110
  ...this.prepareAddCollateral(ca.creditFacade, addCollateral, permits),
111
+ ...wrapCalls,
110
112
  ...this.prepareDisableQuotas(ca),
111
113
  ...this.prepareDecreaseDebt(ca),
114
+ ...unwrapCalls,
112
115
  ...claimPath.calls,
113
- ...this.prepareDisableTokens(ca),
114
116
  ...assetsToWithdraw.map(
115
117
  (t) => this.prepareWithdrawToken(ca.creditFacade, t.token, MAX_UINT256, to)
116
118
  )
117
119
  ];
118
- const tx = operation === "close" ? cm.creditFacade.closeCreditAccount(ca.creditAccount, calls) : cm.creditFacade.multicall(ca.creditAccount, calls);
120
+ const tx = await this.closeCreditAccountTx(
121
+ cm,
122
+ ca.creditAccount,
123
+ calls,
124
+ operation
125
+ );
119
126
  return { tx, calls, creditFacade: cm.creditFacade };
120
127
  }
121
128
  /**
@@ -132,7 +139,6 @@ class CreditAccountServiceV310 extends AbstractCreditAccountService {
132
139
  const cm = this.sdk.marketRegister.findCreditManager(ca.creditManager);
133
140
  const router = this.sdk.routerFor(ca);
134
141
  const claimPath = await router.findClaimAllRewards({
135
- calls: [],
136
142
  tokensToClaim,
137
143
  creditAccount: ca
138
144
  });
@@ -140,11 +146,13 @@ class CreditAccountServiceV310 extends AbstractCreditAccountService {
140
146
  creditManager: ca.creditManager,
141
147
  creditAccount: ca
142
148
  });
149
+ const wrapCalls = await this.getDepositDiffCalls(1n, ca.creditManager) ?? [];
143
150
  const addCollateral = collateralAssets.filter((a) => a.balance > 0);
144
151
  const calls = [
145
152
  ...priceUpdates,
146
153
  ...this.prepareAddCollateral(ca.creditFacade, addCollateral, permits),
147
154
  ...claimPath.calls,
155
+ ...wrapCalls,
148
156
  ...assetsToWithdraw.map(
149
157
  (t) => this.prepareWithdrawToken(ca.creditFacade, t.token, MAX_UINT256, to)
150
158
  )
@@ -160,21 +168,23 @@ class CreditAccountServiceV310 extends AbstractCreditAccountService {
160
168
  * Implements {@link ICreditAccountsService.claimFarmRewards}
161
169
  */
162
170
  async claimFarmRewards({
163
- calls: legacyCalls,
171
+ calls: externalCalls,
164
172
  creditAccount: ca,
165
173
  minQuota,
166
174
  averageQuota,
167
- tokensToClaim,
168
- forceCalls
175
+ tokensToClaim
169
176
  }) {
170
177
  const cm = this.sdk.marketRegister.findCreditManager(ca.creditManager);
171
178
  const router = this.sdk.routerFor(ca);
172
- const claimPath = await router.findClaimAllRewards({
173
- calls: legacyCalls,
174
- tokensToClaim,
175
- creditAccount: ca,
176
- forceCalls
177
- });
179
+ let claimPath;
180
+ if (externalCalls) {
181
+ claimPath = { calls: externalCalls };
182
+ } else {
183
+ claimPath = await router.findClaimAllRewards({
184
+ tokensToClaim,
185
+ creditAccount: ca
186
+ });
187
+ }
178
188
  if (claimPath.calls.length === 0) throw new Error("No path to execute");
179
189
  const priceUpdatesCalls = await this.getPriceUpdatesForFacade({
180
190
  creditManager: ca.creditManager,
@@ -186,7 +196,7 @@ class CreditAccountServiceV310 extends AbstractCreditAccountService {
186
196
  ...claimPath.calls,
187
197
  ...this.prepareUpdateQuotas(ca.creditFacade, { minQuota, averageQuota })
188
198
  ];
189
- const tx = cm.creditFacade.multicall(ca.creditAccount, calls);
199
+ const tx = await this.multicallTx(cm, ca.creditAccount, calls);
190
200
  return { tx, calls, creditFacade: cm.creditFacade };
191
201
  }
192
202
  async previewWithdrawLlamathenaProportionally(_) {
@@ -1,10 +1,6 @@
1
- import { isV300, isV310 } from "../constants/index.js";
2
- import { CreditAccountServiceV300 } from "./CreditAccountsServiceV300.js";
1
+ import { isV310 } from "../constants/index.js";
3
2
  import { CreditAccountServiceV310 } from "./CreditAccountsServiceV310.js";
4
3
  function createCreditAccountService(sdk, version, options) {
5
- if (isV300(version)) {
6
- return new CreditAccountServiceV300(sdk, options);
7
- }
8
4
  if (isV310(version)) {
9
5
  return new CreditAccountServiceV310(sdk, options);
10
6
  }
@@ -1,5 +1,4 @@
1
1
  export * from "./AbstractCreditAccountsService.js";
2
- export * from "./CreditAccountsServiceV300.js";
3
2
  export * from "./CreditAccountsServiceV310.js";
4
3
  export * from "./createCreditAccountService.js";
5
4
  export * from "./types.js";
@@ -11,6 +11,8 @@ import {
11
11
  bytes32ToString,
12
12
  createRawTx,
13
13
  functionArgsToMap,
14
+ functionArgsToRecord,
15
+ getFunctionSignature,
14
16
  json_stringify
15
17
  } from "../utils/index.js";
16
18
  import { Construct } from "./Construct.js";
@@ -39,15 +41,15 @@ class BaseContract extends Construct {
39
41
  version;
40
42
  address;
41
43
  name;
42
- constructor({ client, logger }, args) {
43
- super({ client, logger });
44
+ constructor(options, args) {
45
+ super(options);
44
46
  this.abi = args.abi;
45
47
  this.address = getAddress(args.addr);
46
48
  this.contract = getContract({
47
49
  address: this.address,
48
50
  // add exceptions for better error decoding
49
51
  abi: [...this.abi, ...errorAbis],
50
- client
52
+ client: this.client
51
53
  });
52
54
  this.version = Number(args.version || 0);
53
55
  this.contractType = args.contractType ?? "";
@@ -55,8 +57,11 @@ class BaseContract extends Construct {
55
57
  this.contractType = bytes32ToString(this.contractType);
56
58
  }
57
59
  this.name = args.name || this.contractType || this.address || this.constructor.name;
58
- this.register.setContract(this.address, this);
59
- this.register.setAddressLabel(this.address, this.name);
60
+ const register = this.safeGetRegister();
61
+ if (register) {
62
+ register.setContract(this.address, this);
63
+ register.setAddressLabel(this.address, this.name);
64
+ }
60
65
  }
61
66
  stateHuman(_ = true) {
62
67
  return {
@@ -190,11 +195,62 @@ class BaseContract extends Construct {
190
195
  chainId: this.chainId,
191
196
  target: this.address,
192
197
  contractType: this.contractType,
193
- label: this.register.labelAddress(this.address, true),
198
+ label: this.labelAddress(this.address, true),
194
199
  functionName,
195
200
  args
196
201
  };
197
202
  }
203
+ /**
204
+ * Parses calldata into structured result with preserved original types.
205
+ * When strict is true, throws {@link ContractParseError} on unknown selectors;
206
+ * otherwise returns a fallback with the raw calldata.
207
+ */
208
+ parseFunctionDataV2(calldata, strict) {
209
+ try {
210
+ const decoded = decodeFunctionData({
211
+ abi: this.abi,
212
+ data: calldata
213
+ });
214
+ const functionName = getFunctionSignature(this.abi, calldata);
215
+ return this.wrapParseCallV2(
216
+ functionName,
217
+ this.parseFunctionParamsV2(decoded, strict)
218
+ );
219
+ } catch (e) {
220
+ if (strict) {
221
+ throw new ContractParseError(e, {
222
+ address: this.address,
223
+ callData: calldata,
224
+ contractName: this.name
225
+ });
226
+ }
227
+ this.logger?.warn(e);
228
+ const selector = calldata.slice(0, 10);
229
+ const data = `0x${calldata.slice(10)}`;
230
+ return this.wrapParseCallV2(`unknown function ${selector}`, {
231
+ _data: data
232
+ });
233
+ }
234
+ }
235
+ /**
236
+ * Converts viem-decoded function arguments to a record preserving original types.
237
+ * Override in subclasses to handle nesting (e.g., multicall inner calls).
238
+ * @param strict - propagated from parseFunctionDataV2 for recursive parsing
239
+ */
240
+ parseFunctionParamsV2(params, _strict) {
241
+ return functionArgsToRecord(this.abi, params.functionName, params.args);
242
+ }
243
+ wrapParseCallV2(functionName, rawArgs) {
244
+ return {
245
+ chainId: this.chainId,
246
+ target: this.address,
247
+ contractType: this.contractType,
248
+ label: this.labelAddress(this.address, true),
249
+ version: this.version,
250
+ functionName,
251
+ rawArgs
252
+ };
253
+ }
198
254
  /**
199
255
  * Creates a raw transaction for a function in this contract
200
256
  * @param parameters
@@ -2,16 +2,6 @@ import { NOT_DEPLOYED } from "../constants/addresses.js";
2
2
  import { AddressMap } from "../utils/AddressMap.js";
3
3
  import { TokensMeta } from "./TokensMeta.js";
4
4
  class ChainContractsRegister {
5
- static #chains = /* @__PURE__ */ new Map();
6
- static for(client, logger) {
7
- const chainId = client.chain.id;
8
- let result = ChainContractsRegister.#chains.get(chainId);
9
- if (!result) {
10
- result = new ChainContractsRegister(client, logger);
11
- ChainContractsRegister.#chains.set(chainId, result);
12
- }
13
- return result;
14
- }
15
5
  contracts = new AddressMap(
16
6
  [],
17
7
  "contracts"
@@ -25,7 +15,7 @@ class ChainContractsRegister {
25
15
  logger;
26
16
  constructor(client, logger) {
27
17
  this.client = client;
28
- this.tokensMeta = new TokensMeta(client);
18
+ this.tokensMeta = new TokensMeta(client, logger);
29
19
  this.logger = logger;
30
20
  }
31
21
  resetContracts() {
@@ -113,6 +103,39 @@ class ChainContractsRegister {
113
103
  (call) => this.parseFunctionData(call.target, call.callData)
114
104
  );
115
105
  }
106
+ /**
107
+ * Parses calldata for a contract at the given address, preserving original types.
108
+ * When strict is true, throws on unknown address or selector; otherwise returns a fallback.
109
+ */
110
+ parseFunctionDataV2(address, calldata, strict) {
111
+ const contract = this.contracts.get(address);
112
+ if (contract) {
113
+ return contract.parseFunctionDataV2(calldata, strict);
114
+ }
115
+ if (strict) {
116
+ throw new Error(`contract ${address} not found on chain ${this.chainId}`);
117
+ }
118
+ const selector = calldata.slice(0, 10);
119
+ const data = `0x${calldata.slice(10)}`;
120
+ return {
121
+ chainId: this.chainId,
122
+ target: address,
123
+ contractType: "",
124
+ label: this.labelAddress(address, true),
125
+ version: 0,
126
+ functionName: `unknown function ${selector}`,
127
+ rawArgs: { _data: data }
128
+ };
129
+ }
130
+ /**
131
+ * Parses multicalls preserving original types.
132
+ * When strict is true, throws on unknown targets or selectors.
133
+ */
134
+ parseMultiCallV2(calls, strict) {
135
+ return calls.map(
136
+ (call) => this.parseFunctionDataV2(call.target, call.callData, strict)
137
+ );
138
+ }
116
139
  }
117
140
  export {
118
141
  ChainContractsRegister
@@ -3,19 +3,41 @@ import { ChainContractsRegister } from "./ChainContractsRegister.js";
3
3
  class Construct {
4
4
  logger;
5
5
  client;
6
- register;
6
+ #register;
7
7
  /**
8
8
  * Indicates that contract state needs to be updated
9
9
  */
10
10
  #dirty = false;
11
- constructor({ client, logger }) {
12
- this.client = client;
13
- this.register = ChainContractsRegister.for(client, logger);
11
+ constructor(options) {
12
+ if (options instanceof ChainContractsRegister) {
13
+ this.#register = options;
14
+ this.client = options.client;
15
+ } else if ("register" in options) {
16
+ this.#register = options.register;
17
+ this.client = options.register.client;
18
+ } else {
19
+ this.client = options.client;
20
+ }
14
21
  this.logger = childLogger(
15
22
  this.constructor.name,
16
- this.register.logger ?? logger
23
+ this.#register?.logger ?? options.logger
17
24
  );
18
25
  }
26
+ /**
27
+ * Throws if register was not provided in constructor options
28
+ * Ephemeral contracts that do not need to access other contracts may not need it
29
+ */
30
+ get register() {
31
+ if (!this.#register) {
32
+ throw new Error(
33
+ "contracts register not available, it must be provided if contract needs to access other contracts"
34
+ );
35
+ }
36
+ return this.#register;
37
+ }
38
+ safeGetRegister() {
39
+ return this.#register;
40
+ }
19
41
  get chain() {
20
42
  return this.client.chain;
21
43
  }
@@ -37,19 +59,11 @@ class Construct {
37
59
  set dirty(value) {
38
60
  this.#dirty = value;
39
61
  }
40
- /**
41
- * Syntax sugar for rgister.tokensMeta
42
- */
43
62
  get tokensMeta() {
44
63
  return this.register.tokensMeta;
45
64
  }
46
- /**
47
- * Syntax suggar for getting contract labels
48
- * @param address
49
- * @returns
50
- */
51
- labelAddress(address) {
52
- return this.register.labelAddress(address);
65
+ labelAddress(address, omitAddress) {
66
+ return this.#register?.labelAddress(address, omitAddress) ?? address;
53
67
  }
54
68
  /**
55
69
  * Returns list of addresses that should be watched for events to sync state
@@ -1,8 +1,8 @@
1
1
  import { BaseContract } from "./BaseContract.js";
2
2
  const abi = [];
3
3
  class PlaceholderContract extends BaseContract {
4
- constructor(sdk, args) {
5
- super(sdk, { ...args, abi });
4
+ constructor(options, args) {
5
+ super(options, { ...args, abi });
6
6
  }
7
7
  }
8
8
  export {
@@ -2,7 +2,7 @@ import { Construct } from "./Construct.js";
2
2
  class SDKConstruct extends Construct {
3
3
  sdk;
4
4
  constructor(sdk) {
5
- super(sdk);
5
+ super({ register: sdk });
6
6
  this.sdk = sdk;
7
7
  }
8
8
  }
@@ -1,50 +1,93 @@
1
1
  import {
2
- decodeAbiParameters
2
+ decodeAbiParameters,
3
+ erc20Abi
3
4
  } from "viem";
5
+ import { iSecuritizeDegenNFTAbi } from "../../abi/310/iSecuritizeDegenNFT.js";
6
+ import { iSecuritizeKYCFactoryAbi } from "../../abi/310/iSecuritizeKYCFactory.js";
4
7
  import { iStateSerializerAbi } from "../../abi/iStateSerializer.js";
5
8
  import { iVersionAbi } from "../../abi/iVersion.js";
6
9
  import {
10
+ AddressMap,
11
+ AddressSet,
7
12
  bytes32ToString,
13
+ formatBN
14
+ } from "../utils/index.js";
15
+ import {
8
16
  KYC_UNDERLYING_DEFAULT,
9
17
  KYC_UNDERLYING_ON_DEMAND
10
- } from "../index.js";
11
- import { AddressMap, AddressSet, formatBN } from "../utils/index.js";
18
+ } from "./token-types.js";
12
19
  class TokensMeta extends AddressMap {
13
20
  #client;
14
21
  #tokenDataLoaded = new AddressSet();
15
- constructor(client) {
22
+ #logger;
23
+ constructor(client, logger) {
16
24
  super(void 0, "tokensMeta");
17
25
  this.#client = client;
26
+ this.#logger = logger?.child?.({ name: "TokensMeta" }) ?? logger;
18
27
  }
19
28
  reset() {
20
29
  this.clear();
21
30
  this.#tokenDataLoaded.clear();
22
31
  }
32
+ upsert(address, value) {
33
+ let v = value;
34
+ const existing = this.get(address);
35
+ if (existing && v) {
36
+ v = {
37
+ ...existing,
38
+ ...v
39
+ };
40
+ }
41
+ super.upsert(address, v);
42
+ }
23
43
  symbol(token) {
24
44
  return this.mustGet(token).symbol;
25
45
  }
26
46
  decimals(token) {
27
47
  return this.mustGet(token).decimals;
28
48
  }
49
+ /**
50
+ * Returns true if the token is a phantom token, throws if the token data is not loaded
51
+ * @param t
52
+ * @returns
53
+ */
29
54
  isPhantomToken(t) {
30
55
  if (!this.#tokenDataLoaded.has(t.addr)) {
31
56
  throw new Error(
32
57
  `extended token data not loaded for ${t.symbol} (${t.addr})`
33
58
  );
34
59
  }
35
- return "contractType" in t && t.contractType.startsWith("PHANTOM_TOKEN::");
60
+ return !!t.contractType?.startsWith("PHANTOM_TOKEN::");
36
61
  }
62
+ /**
63
+ * Returns true if the token is a KYC underlying token, throws if the token data is not loaded
64
+ * @param t
65
+ * @returns
66
+ */
37
67
  isKYCUnderlying(t) {
38
68
  if (!this.#tokenDataLoaded.has(t.addr)) {
39
69
  throw new Error(
40
70
  `extended token data not loaded for ${t.symbol} (${t.addr})`
41
71
  );
42
72
  }
43
- return "contractType" in t && t.contractType.startsWith("KYC_UNDERLYING::");
73
+ return !!t.contractType?.startsWith("KYC_UNDERLYING::");
74
+ }
75
+ /**
76
+ * Returns true if the token is a DSToken, throws if the token data is not loaded
77
+ * @param t
78
+ * @returns
79
+ */
80
+ isDSToken(t) {
81
+ if (!this.#tokenDataLoaded.has(t.addr)) {
82
+ throw new Error(
83
+ `extended token data not loaded for ${t.symbol} (${t.addr})`
84
+ );
85
+ }
86
+ return !!t.isDSToken;
44
87
  }
45
88
  /**
46
89
  * Returns a map of all phantom tokens
47
- * Throws if the phantom token data is not loaded
90
+ * Throws if token data is not loaded
48
91
  */
49
92
  get phantomTokens() {
50
93
  const result = new AddressMap();
@@ -55,6 +98,10 @@ class TokensMeta extends AddressMap {
55
98
  }
56
99
  return result;
57
100
  }
101
+ /**
102
+ * Returns a map of all KYC underlying tokens
103
+ * Throws if token data is not loaded
104
+ */
58
105
  get kycUnderlyings() {
59
106
  const result = new AddressMap();
60
107
  for (const [token, meta] of this.entries()) {
@@ -64,6 +111,15 @@ class TokensMeta extends AddressMap {
64
111
  }
65
112
  return result;
66
113
  }
114
+ get dsTokens() {
115
+ const result = new AddressMap();
116
+ for (const [token, meta] of this.entries()) {
117
+ if (this.isDSToken(meta)) {
118
+ result.upsert(token, meta);
119
+ }
120
+ }
121
+ return result;
122
+ }
67
123
  formatBN(arg0, arg1, arg2) {
68
124
  const token = typeof arg0 === "object" ? arg0.token : arg0;
69
125
  const amount = typeof arg0 === "object" ? arg0.balance : arg1;
@@ -83,7 +139,7 @@ class TokensMeta extends AddressMap {
83
139
  return meta;
84
140
  }
85
141
  /**
86
- * Loads token information about phantom token and KYC underlying tokens
142
+ * Loads token information about phantom tokens, KYC underlying tokens and DSTokens
87
143
  *
88
144
  * @param tokens - tokens to load data for, defaults to all tokens
89
145
  */
@@ -111,10 +167,21 @@ class TokensMeta extends AddressMap {
111
167
  allowFailure: true,
112
168
  batchSize: 0
113
169
  });
170
+ this.#logger?.debug(`loaded ${resp.length} contract types`);
171
+ const kycFactories = new AddressSet();
114
172
  for (let i = 0; i < tokensToLoad.length; i++) {
115
- this.#overrideTokenMeta(tokensToLoad[i], resp[i], resp[i + 1]);
173
+ const meta = this.#overrideTokenMeta(
174
+ tokensToLoad[i],
175
+ resp[2 * i],
176
+ resp[2 * i + 1]
177
+ );
116
178
  this.#tokenDataLoaded.add(tokensToLoad[i]);
179
+ if (this.isKYCUnderlying(meta)) {
180
+ kycFactories.add(meta.kycFactory);
181
+ }
117
182
  }
183
+ this.#logger?.debug(`found ${kycFactories.size} KYC factories`);
184
+ await this.#loadDSTokens(kycFactories);
118
185
  }
119
186
  #overrideTokenMeta(token, contractTypeResp, serializeResp) {
120
187
  const meta = this.mustGet(token);
@@ -128,13 +195,15 @@ class TokensMeta extends AddressMap {
128
195
  `token ${meta.symbol} (${token}) is ${contractType} but serialize failed: ${serializeResp.error}`
129
196
  );
130
197
  }
131
- } else if (contractType.startsWith("PHANTOM_TOKEN::")) {
198
+ } else {
132
199
  this.upsert(token, {
133
200
  ...meta,
134
201
  contractType
135
202
  });
136
203
  }
204
+ this.#logger?.debug(`token ${meta.symbol} is ${contractType}`);
137
205
  }
206
+ return this.mustGet(token);
138
207
  }
139
208
  #overrideKYCUnderlying(meta, contractType, serialized) {
140
209
  if (contractType === KYC_UNDERLYING_DEFAULT) {
@@ -171,6 +240,85 @@ class TokensMeta extends AddressMap {
171
240
  });
172
241
  }
173
242
  }
243
+ async #loadDSTokens(kycFactories) {
244
+ const degenNFTs = await this.#client.multicall({
245
+ contracts: kycFactories.map((address) => {
246
+ return {
247
+ address,
248
+ abi: iSecuritizeKYCFactoryAbi,
249
+ functionName: "getDegenNFT"
250
+ };
251
+ }),
252
+ allowFailure: false,
253
+ batchSize: 0
254
+ });
255
+ const resp = await this.#client.multicall({
256
+ contracts: degenNFTs.map((address) => {
257
+ return {
258
+ address,
259
+ abi: iSecuritizeDegenNFTAbi,
260
+ functionName: "getDSTokens"
261
+ };
262
+ }),
263
+ allowFailure: false,
264
+ batchSize: 0
265
+ });
266
+ const dsToken = new AddressSet(resp.flat());
267
+ const tokensToLoad = dsToken.difference(new Set(this.keys()));
268
+ this.#logger?.debug(
269
+ `found ${dsToken.size} DSTokens in KYC factories, need to load ${tokensToLoad.size} basic metadata`
270
+ );
271
+ await this.#loadWithoutCompressor(tokensToLoad);
272
+ for (const token of dsToken) {
273
+ const meta = this.mustGet(token);
274
+ this.upsert(token, {
275
+ ...meta,
276
+ isDSToken: true
277
+ });
278
+ this.#tokenDataLoaded.add(token);
279
+ this.#logger?.debug(`token ${meta.symbol} (${token}) is a DSToken`);
280
+ }
281
+ }
282
+ async #loadWithoutCompressor(tokens_) {
283
+ if (tokens_.size === 0) {
284
+ return;
285
+ }
286
+ const tokens = Array.from(tokens_);
287
+ const resp = await this.#client.multicall({
288
+ contracts: tokens.flatMap(
289
+ (t) => [
290
+ {
291
+ address: t,
292
+ abi: erc20Abi,
293
+ functionName: "symbol"
294
+ },
295
+ {
296
+ address: t,
297
+ abi: erc20Abi,
298
+ functionName: "name"
299
+ },
300
+ {
301
+ address: t,
302
+ abi: erc20Abi,
303
+ functionName: "decimals"
304
+ }
305
+ ]
306
+ ),
307
+ allowFailure: false,
308
+ batchSize: 0
309
+ });
310
+ this.#logger?.debug(
311
+ `loaded ${resp.length} basic metadata without compressor`
312
+ );
313
+ for (let i = 0; i < tokens.length; i++) {
314
+ this.upsert(tokens[i], {
315
+ addr: tokens[i],
316
+ symbol: resp[3 * i],
317
+ name: resp[3 * i + 1],
318
+ decimals: resp[3 * i + 2]
319
+ });
320
+ }
321
+ }
174
322
  }
175
323
  export {
176
324
  TokensMeta
@@ -0,0 +1,11 @@
1
+ class MissingSerializedParamsError extends Error {
2
+ constructor(propertyName) {
3
+ super(
4
+ `Cannot access '${propertyName}': serializedParams were not provided`
5
+ );
6
+ this.name = "MissingSerializedParamsError";
7
+ }
8
+ }
9
+ export {
10
+ MissingSerializedParamsError
11
+ };
@@ -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";