@gearbox-protocol/sdk 16.0.0-next.8 → 16.0.0

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 (1164) hide show
  1. package/dist/cjs/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +20 -0
  2. package/dist/cjs/dev/mode-parity/compareOpportunities.js +4 -5
  3. package/dist/cjs/dev/mode-parity/comparePositions.js +9 -9
  4. package/dist/cjs/dev/mode-parity/compareRules.js +12 -1
  5. package/dist/cjs/dev/mode-parity/fieldDiff.js +4 -6
  6. package/dist/cjs/dev/mode-parity/scriptUtils.js +146 -6
  7. package/dist/cjs/model/analytics.schema.js +117 -0
  8. package/dist/cjs/model/charts.js +5 -1
  9. package/dist/cjs/model/charts.schema.js +1 -1
  10. package/dist/cjs/model/compare.schema.js +8 -0
  11. package/dist/cjs/model/delayed-intent.schema.js +35 -0
  12. package/dist/cjs/model/index.js +34 -14
  13. package/dist/cjs/model/liquidations.schema.js +7 -2
  14. package/dist/cjs/model/opportunities.schema.js +12 -3
  15. package/dist/cjs/model/positions.js +6 -0
  16. package/dist/cjs/model/positions.schema.js +14 -8
  17. package/dist/cjs/model/previews.js +21 -37
  18. package/dist/cjs/model/result.js +37 -0
  19. package/dist/cjs/model/withdrawals.schema.js +44 -0
  20. package/dist/cjs/offchain/GearboxAPI.js +5 -0
  21. package/dist/cjs/offchain/analytics/OffchainAnalytics.js +12 -0
  22. package/dist/cjs/offchain/analytics/OffchainAnalyticsPositions.js +24 -0
  23. package/dist/cjs/offchain/analytics/index.js +6 -0
  24. package/dist/cjs/offchain/index.js +5 -0
  25. package/dist/cjs/offchain/opportunities/OffchainOpportunities.js +13 -5
  26. package/dist/cjs/offchain/opportunities/index.js +1 -0
  27. package/dist/cjs/offchain/positions/OffchainPositions.js +20 -2
  28. package/dist/cjs/offchain/positions/index.js +1 -0
  29. package/dist/cjs/onchain/accounts/CreditAccountsServiceV310.js +0 -10
  30. package/dist/cjs/onchain/accounts/credit-account-compressor/CreditAccountCompressor.js +1 -1
  31. package/dist/cjs/onchain/accounts/index.js +9 -4
  32. package/dist/cjs/onchain/accounts/intents/guards.js +85 -23
  33. package/dist/cjs/onchain/accounts/intents/index.js +94 -43
  34. package/dist/cjs/onchain/accounts/intents/leverage-band.js +70 -0
  35. package/dist/cjs/onchain/accounts/intents/math.js +16 -6
  36. package/dist/cjs/onchain/accounts/intents/maxWithdrawCollateral.js +10 -21
  37. package/dist/cjs/onchain/accounts/intents/open-strategy.js +29 -29
  38. package/dist/cjs/onchain/accounts/intents/plan.js +29 -21
  39. package/dist/cjs/onchain/accounts/intents/realize.js +104 -51
  40. package/dist/cjs/onchain/accounts/intents/tail.js +118 -10
  41. package/dist/cjs/onchain/accounts/intents/testing/market.js +9 -6
  42. package/dist/cjs/onchain/accounts/intents/testing/sdk-mock.js +84 -58
  43. package/dist/cjs/onchain/accounts/intents/tests/add-collateral.fixtures.js +4 -4
  44. package/dist/cjs/onchain/accounts/intents/tests/adjust-leverage.fixtures.js +15 -15
  45. package/dist/cjs/onchain/accounts/intents/tests/deposit.fixtures.js +18 -15
  46. package/dist/cjs/onchain/accounts/intents/tests/finish-decrease-leverage.fixtures.js +2 -2
  47. package/dist/cjs/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +2 -2
  48. package/dist/cjs/onchain/accounts/intents/tests/withdraw-asset.fixtures.js +4 -4
  49. package/dist/cjs/onchain/accounts/intents/tests/withdraw.fixtures.js +7 -7
  50. package/dist/cjs/onchain/accounts/intents/types.js +0 -16
  51. package/dist/cjs/onchain/accounts/intents/utils/adjust-state-to-snapshot.js +8 -5
  52. package/dist/cjs/onchain/accounts/intents/utils/common.js +2 -2
  53. package/dist/cjs/onchain/accounts/intents/utils/credit-account-slice.js +5 -5
  54. package/dist/cjs/onchain/accounts/intents/utils/index.js +4 -2
  55. package/dist/cjs/onchain/accounts/intents/utils/pick-token.js +2 -2
  56. package/dist/cjs/onchain/accounts/intents/utils/price-impact.js +99 -0
  57. package/dist/cjs/onchain/accounts/intents/utils/quotas-for-update.js +3 -3
  58. package/dist/cjs/onchain/accounts/intents/utils/router-path.js +100 -42
  59. package/dist/cjs/onchain/accounts/intents/view.js +7 -6
  60. package/dist/cjs/onchain/accounts/liquidations/LiquidationsService.js +8 -8
  61. package/dist/cjs/onchain/accounts/liquidations/skipLiquidatableAccount.js +12 -0
  62. package/dist/cjs/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.js +3 -3
  63. package/dist/cjs/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +13 -7
  64. package/dist/cjs/onchain/accounts/withdrawal-compressor/errors.js +0 -19
  65. package/dist/cjs/onchain/accounts/withdrawal-compressor/index.js +1 -2
  66. package/dist/cjs/onchain/chain/chains.js +9 -3
  67. package/dist/cjs/onchain/constants/index.js +1 -0
  68. package/dist/cjs/onchain/constants/math.js +11 -0
  69. package/dist/cjs/onchain/index.js +50 -8
  70. package/dist/cjs/onchain/market/MarketSuite.js +24 -1
  71. package/dist/cjs/onchain/market/adapters/contracts/AbstractAdapter.js +19 -5
  72. package/dist/cjs/onchain/market/adapters/contracts/AbstractCurveAdapter.js +2 -2
  73. package/dist/cjs/onchain/market/adapters/contracts/BalancerV3RouterAdapterContract.js +35 -3
  74. package/dist/cjs/onchain/market/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  75. package/dist/cjs/onchain/market/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  76. package/dist/cjs/onchain/market/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  77. package/dist/cjs/onchain/market/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  78. package/dist/cjs/onchain/market/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  79. package/dist/cjs/onchain/market/adapters/contracts/ERC4626AdapterContract.js +56 -2
  80. package/dist/cjs/onchain/market/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  81. package/dist/cjs/onchain/market/adapters/contracts/FluidDexAdapterContract.js +2 -2
  82. package/dist/cjs/onchain/market/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  83. package/dist/cjs/onchain/market/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  84. package/dist/cjs/onchain/market/adapters/contracts/LidoV1AdapterContract.js +2 -2
  85. package/dist/cjs/onchain/market/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  86. package/dist/cjs/onchain/market/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  87. package/dist/cjs/onchain/market/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  88. package/dist/cjs/onchain/market/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  89. package/dist/cjs/onchain/market/adapters/contracts/MidasGatewayAdapterContract.js +15 -2
  90. package/dist/cjs/onchain/market/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  91. package/dist/cjs/onchain/market/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  92. package/dist/cjs/onchain/market/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  93. package/dist/cjs/onchain/market/adapters/contracts/SecuritizeOnRampAdapterContract.js +2 -2
  94. package/dist/cjs/onchain/market/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +2 -2
  95. package/dist/cjs/onchain/market/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  96. package/dist/cjs/onchain/market/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  97. package/dist/cjs/onchain/market/adapters/contracts/UniswapV2AdapterContract.js +2 -2
  98. package/dist/cjs/onchain/market/adapters/contracts/UniswapV3AdapterContract.js +2 -2
  99. package/dist/cjs/onchain/market/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  100. package/dist/cjs/onchain/market/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  101. package/dist/cjs/onchain/market/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  102. package/dist/cjs/onchain/market/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  103. package/dist/cjs/onchain/market/credit/CreditManagerV310Contract.js +2 -2
  104. package/dist/cjs/onchain/market/credit/CreditSuite.js +71 -7
  105. package/dist/cjs/onchain/market/credit/collateralUtils.js +2 -2
  106. package/dist/cjs/onchain/market/index.js +4 -2
  107. package/dist/cjs/onchain/market/math.js +29 -13
  108. package/dist/cjs/onchain/market/oracle/PriceOracleBaseContract.js +67 -14
  109. package/dist/cjs/onchain/market/oracle/TestPriceOracle.mock.js +215 -0
  110. package/dist/cjs/onchain/market/oracle/collateralPriceInUnderlying.js +27 -0
  111. package/dist/cjs/onchain/market/oracle/errors.js +14 -0
  112. package/dist/cjs/onchain/market/oracle/index.js +4 -0
  113. package/dist/cjs/onchain/market/pool/PoolV310Contract.js +25 -0
  114. package/dist/cjs/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +3 -2
  115. package/dist/cjs/onchain/market/zapper/ZapperContract.js +15 -8
  116. package/dist/cjs/onchain/market/zapper/errors.js +0 -17
  117. package/dist/cjs/onchain/market/zapper/index.js +1 -2
  118. package/dist/cjs/onchain/opportunities/index.js +1 -0
  119. package/dist/cjs/onchain/pools/PoolService.js +27 -66
  120. package/dist/cjs/onchain/pools/index.js +0 -2
  121. package/dist/cjs/onchain/positions/MultichainPositionsService.js +15 -0
  122. package/dist/cjs/onchain/positions/PositionsService.js +182 -28
  123. package/dist/cjs/onchain/positions/calcHealthFactor.js +4 -3
  124. package/dist/cjs/onchain/positions/calcLiquidationPrice.js +14 -4
  125. package/dist/cjs/onchain/positions/index.js +1 -0
  126. package/dist/cjs/onchain/router/AbstractRouterContract.js +2 -24
  127. package/dist/cjs/onchain/router/RouterV310Contract.js +1 -12
  128. package/dist/cjs/onchain/utils/index.js +7 -0
  129. package/dist/cjs/{common-utils → onchain}/utils/trace.js +1 -1
  130. package/dist/cjs/onchain/validation/checks.js +258 -0
  131. package/dist/cjs/onchain/validation/index.js +28 -0
  132. package/dist/cjs/onchain/validation/refusal.js +39 -0
  133. package/dist/cjs/onchain/validation/token.js +29 -0
  134. package/dist/cjs/permissionless/bindings/instance-manager.js +16 -0
  135. package/dist/cjs/preview/index.js +27 -12
  136. package/dist/cjs/preview/parse/errors.js +0 -32
  137. package/dist/cjs/preview/parse/index.js +1 -5
  138. package/dist/cjs/preview/parse/parseOperationCalldata.js +28 -17
  139. package/dist/cjs/preview/parse/parsePoolOperationCalldata.js +17 -11
  140. package/dist/cjs/preview/prerequisites/checkPrerequisites.js +5 -2
  141. package/dist/cjs/preview/preview/{buildDelayedPreview.js → buildDelayedStrategyPositionOperationPreview.js} +47 -72
  142. package/dist/cjs/preview/preview/detectDelayedClaim.js +9 -7
  143. package/dist/cjs/preview/preview/detectDelayedOperation.js +11 -4
  144. package/dist/cjs/preview/preview/errors.js +81 -13
  145. package/dist/cjs/preview/preview/estimateClaimableAt.js +21 -0
  146. package/dist/cjs/preview/preview/index.js +14 -7
  147. package/dist/cjs/preview/preview/previewAdjustStrategyPosition.js +49 -0
  148. package/dist/cjs/preview/preview/{previewCloseOrRepayCreditAccount.js → previewExitOrRepayStrategyPosition.js} +28 -15
  149. package/dist/cjs/preview/preview/previewOpenStrategyPosition.js +50 -0
  150. package/dist/cjs/preview/preview/previewOperation.js +46 -24
  151. package/dist/cjs/preview/preview/previewPoolPositionOperation.js +49 -0
  152. package/dist/cjs/preview/preview/replayInnerOperations.js +23 -60
  153. package/dist/cjs/preview/preview/replayMulticall.js +2 -2
  154. package/dist/cjs/preview/preview/unwrapNativeCollateral.js +4 -9
  155. package/dist/cjs/preview/simulate/errors.js +15 -24
  156. package/dist/cjs/preview/simulate/index.js +2 -2
  157. package/dist/cjs/preview/simulate/simulateOperation.js +7 -5
  158. package/dist/cjs/preview/simulate/simulatePoolOperation.js +8 -3
  159. package/dist/cjs/preview/trace/extractAdapterCallTraces.js +2 -2
  160. package/dist/cjs/preview/trace/findFacadeCalls.js +2 -2
  161. package/dist/cjs/preview/validate/checkOperation.js +187 -0
  162. package/dist/cjs/preview/validate/checkSimulation.js +39 -0
  163. package/dist/cjs/preview/validate/index.js +8 -0
  164. package/dist/cjs/rewards/errors.js +27 -0
  165. package/dist/cjs/rewards/index.js +6 -7
  166. package/dist/cjs/rewards/merkl-api.js +45 -0
  167. package/dist/cjs/rewards/multichain.js +40 -0
  168. package/dist/cjs/rewards/toMerklRewards.js +85 -0
  169. package/dist/cjs/sdk/GearboxSDK.js +5 -0
  170. package/dist/cjs/sdk/analytics/AnalyticsNamespace.js +11 -0
  171. package/dist/cjs/sdk/analytics/index.js +4 -0
  172. package/dist/cjs/sdk/execute/ExecuteApi.js +20 -17
  173. package/dist/cjs/sdk/execute/index.js +1 -0
  174. package/dist/cjs/sdk/index.js +12 -0
  175. package/dist/cjs/sdk/liquidations/LiquidationsNamespace.js +5 -5
  176. package/dist/cjs/sdk/opportunities/OpportunitiesNamespace.js +14 -8
  177. package/dist/cjs/sdk/positions/PositionsNamespace.js +22 -4
  178. package/dist/cjs/sdk/positions/mergePositionList.js +45 -1
  179. package/dist/cjs/sdk/prepare/PrepareApi.js +438 -188
  180. package/dist/cjs/sdk/prepare/errors.js +93 -0
  181. package/dist/cjs/sdk/prepare/index.js +9 -0
  182. package/dist/cjs/sdk/prepare/types.js +4 -0
  183. package/dist/cjs/sdk/prepare/withdrawable-collaterals.js +23 -0
  184. package/dist/cjs/sdk/preview/PreviewNamespace.js +2 -2
  185. package/dist/esm/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +20 -0
  186. package/dist/esm/dev/AccountOpener.js +1 -1
  187. package/dist/esm/dev/mode-parity/compareOpportunities.js +4 -5
  188. package/dist/esm/dev/mode-parity/comparePositions.js +9 -9
  189. package/dist/esm/dev/mode-parity/compareRules.js +12 -1
  190. package/dist/esm/dev/mode-parity/fieldDiff.js +4 -6
  191. package/dist/esm/dev/mode-parity/scriptUtils.js +143 -7
  192. package/dist/esm/dev/withdrawalUtils.js +1 -1
  193. package/dist/esm/model/analytics.schema.js +108 -0
  194. package/dist/esm/model/charts.js +5 -1
  195. package/dist/esm/model/charts.schema.js +1 -1
  196. package/dist/esm/model/compare.schema.js +8 -1
  197. package/dist/esm/model/delayed-intent.schema.js +34 -0
  198. package/dist/esm/model/index.js +17 -11
  199. package/dist/esm/model/liquidations.schema.js +7 -2
  200. package/dist/esm/model/opportunities.schema.js +12 -4
  201. package/dist/esm/model/positions.js +6 -1
  202. package/dist/esm/model/positions.schema.js +14 -8
  203. package/dist/esm/model/previews.js +21 -31
  204. package/dist/esm/model/result.js +33 -0
  205. package/dist/esm/model/withdrawals.schema.js +40 -0
  206. package/dist/esm/offchain/GearboxAPI.js +5 -0
  207. package/dist/esm/offchain/analytics/OffchainAnalytics.js +11 -0
  208. package/dist/esm/offchain/analytics/OffchainAnalyticsPositions.js +23 -0
  209. package/dist/esm/offchain/analytics/index.js +4 -0
  210. package/dist/esm/offchain/index.js +4 -1
  211. package/dist/esm/offchain/opportunities/OffchainOpportunities.js +14 -6
  212. package/dist/esm/offchain/opportunities/index.js +1 -0
  213. package/dist/esm/offchain/positions/OffchainPositions.js +21 -3
  214. package/dist/esm/offchain/positions/index.js +1 -0
  215. package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +2 -12
  216. package/dist/esm/onchain/accounts/credit-account-compressor/CreditAccountCompressor.js +1 -1
  217. package/dist/esm/onchain/accounts/index.js +4 -3
  218. package/dist/esm/onchain/accounts/intents/guards.js +85 -23
  219. package/dist/esm/onchain/accounts/intents/index.js +95 -45
  220. package/dist/esm/onchain/accounts/intents/leverage-band.js +69 -0
  221. package/dist/esm/onchain/accounts/intents/math.js +16 -6
  222. package/dist/esm/onchain/accounts/intents/maxWithdrawCollateral.js +10 -21
  223. package/dist/esm/onchain/accounts/intents/open-strategy.js +30 -30
  224. package/dist/esm/onchain/accounts/intents/plan.js +29 -21
  225. package/dist/esm/onchain/accounts/intents/realize.js +104 -51
  226. package/dist/esm/onchain/accounts/intents/tail.js +118 -10
  227. package/dist/esm/onchain/accounts/intents/testing/market.js +9 -6
  228. package/dist/esm/onchain/accounts/intents/testing/sdk-mock.js +84 -60
  229. package/dist/esm/onchain/accounts/intents/tests/add-collateral.fixtures.js +4 -4
  230. package/dist/esm/onchain/accounts/intents/tests/adjust-leverage.fixtures.js +15 -15
  231. package/dist/esm/onchain/accounts/intents/tests/deposit.fixtures.js +18 -15
  232. package/dist/esm/onchain/accounts/intents/tests/finish-decrease-leverage.fixtures.js +2 -2
  233. package/dist/esm/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +2 -2
  234. package/dist/esm/onchain/accounts/intents/tests/withdraw-asset.fixtures.js +4 -4
  235. package/dist/esm/onchain/accounts/intents/tests/withdraw.fixtures.js +7 -7
  236. package/dist/esm/onchain/accounts/intents/types.js +1 -16
  237. package/dist/esm/onchain/accounts/intents/utils/adjust-state-to-snapshot.js +8 -5
  238. package/dist/esm/onchain/accounts/intents/utils/common.js +2 -2
  239. package/dist/esm/onchain/accounts/intents/utils/credit-account-slice.js +5 -5
  240. package/dist/esm/onchain/accounts/intents/utils/index.js +2 -2
  241. package/dist/esm/onchain/accounts/intents/utils/pick-token.js +2 -2
  242. package/dist/esm/onchain/accounts/intents/utils/price-impact.js +96 -0
  243. package/dist/esm/onchain/accounts/intents/utils/quotas-for-update.js +2 -2
  244. package/dist/esm/onchain/accounts/intents/utils/router-path.js +100 -42
  245. package/dist/esm/onchain/accounts/intents/view.js +7 -6
  246. package/dist/esm/onchain/accounts/liquidations/LiquidationsService.js +9 -9
  247. package/dist/esm/onchain/accounts/liquidations/skipLiquidatableAccount.js +11 -0
  248. package/dist/esm/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.js +3 -3
  249. package/dist/esm/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +14 -8
  250. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +1 -1
  251. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +1 -1
  252. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +1 -1
  253. package/dist/esm/onchain/accounts/withdrawal-compressor/errors.js +1 -19
  254. package/dist/esm/onchain/accounts/withdrawal-compressor/index.js +2 -2
  255. package/dist/esm/onchain/base/TokensMeta.js +3 -3
  256. package/dist/esm/onchain/chain/chains.js +9 -3
  257. package/dist/esm/onchain/constants/index.js +2 -2
  258. package/dist/esm/onchain/constants/math.js +11 -1
  259. package/dist/esm/onchain/core/createAddressProvider.js +1 -1
  260. package/dist/esm/onchain/index.js +14 -7
  261. package/dist/esm/onchain/market/MarketSuite.js +24 -1
  262. package/dist/esm/onchain/market/adapters/contracts/AbstractAdapter.js +18 -4
  263. package/dist/esm/onchain/market/adapters/contracts/AbstractCurveAdapter.js +2 -2
  264. package/dist/esm/onchain/market/adapters/contracts/AccountMigratorAdapterContract.js +1 -1
  265. package/dist/esm/onchain/market/adapters/contracts/BalancerV3RouterAdapterContract.js +35 -3
  266. package/dist/esm/onchain/market/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  267. package/dist/esm/onchain/market/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  268. package/dist/esm/onchain/market/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  269. package/dist/esm/onchain/market/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  270. package/dist/esm/onchain/market/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  271. package/dist/esm/onchain/market/adapters/contracts/ERC4626AdapterContract.js +58 -4
  272. package/dist/esm/onchain/market/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  273. package/dist/esm/onchain/market/adapters/contracts/FluidDexAdapterContract.js +2 -2
  274. package/dist/esm/onchain/market/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  275. package/dist/esm/onchain/market/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  276. package/dist/esm/onchain/market/adapters/contracts/LidoV1AdapterContract.js +2 -2
  277. package/dist/esm/onchain/market/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  278. package/dist/esm/onchain/market/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  279. package/dist/esm/onchain/market/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  280. package/dist/esm/onchain/market/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  281. package/dist/esm/onchain/market/adapters/contracts/MidasGatewayAdapterContract.js +16 -3
  282. package/dist/esm/onchain/market/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  283. package/dist/esm/onchain/market/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  284. package/dist/esm/onchain/market/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  285. package/dist/esm/onchain/market/adapters/contracts/SecuritizeOnRampAdapterContract.js +2 -2
  286. package/dist/esm/onchain/market/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +2 -2
  287. package/dist/esm/onchain/market/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  288. package/dist/esm/onchain/market/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  289. package/dist/esm/onchain/market/adapters/contracts/UniswapV2AdapterContract.js +2 -2
  290. package/dist/esm/onchain/market/adapters/contracts/UniswapV3AdapterContract.js +2 -2
  291. package/dist/esm/onchain/market/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  292. package/dist/esm/onchain/market/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  293. package/dist/esm/onchain/market/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  294. package/dist/esm/onchain/market/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  295. package/dist/esm/onchain/market/credit/CreditFacadeV310BaseContract.js +1 -1
  296. package/dist/esm/onchain/market/credit/CreditManagerV310Contract.js +2 -2
  297. package/dist/esm/onchain/market/credit/CreditSuite.js +73 -9
  298. package/dist/esm/onchain/market/credit/collateralUtils.js +2 -2
  299. package/dist/esm/onchain/market/index.js +3 -2
  300. package/dist/esm/onchain/market/math.js +29 -13
  301. package/dist/esm/onchain/market/oracle/PriceOracleBaseContract.js +67 -14
  302. package/dist/esm/onchain/market/oracle/TestPriceOracle.mock.js +213 -0
  303. package/dist/esm/onchain/market/oracle/collateralPriceInUnderlying.js +26 -0
  304. package/dist/esm/onchain/market/oracle/errors.js +13 -0
  305. package/dist/esm/onchain/market/oracle/index.js +3 -1
  306. package/dist/esm/onchain/market/pool/PoolV310Contract.js +26 -1
  307. package/dist/esm/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +3 -2
  308. package/dist/esm/onchain/market/zapper/IETHZapperContract.js +1 -1
  309. package/dist/esm/onchain/market/zapper/ZapperContract.js +16 -9
  310. package/dist/esm/onchain/market/zapper/errors.js +1 -17
  311. package/dist/esm/onchain/market/zapper/index.js +2 -2
  312. package/dist/esm/onchain/opportunities/index.js +1 -0
  313. package/dist/esm/onchain/pools/PoolService.js +29 -66
  314. package/dist/esm/onchain/pools/index.js +2 -2
  315. package/dist/esm/onchain/positions/MultichainPositionsService.js +15 -0
  316. package/dist/esm/onchain/positions/PositionsService.js +184 -30
  317. package/dist/esm/onchain/positions/calcHealthFactor.js +4 -3
  318. package/dist/esm/onchain/positions/calcLiquidationPrice.js +14 -5
  319. package/dist/esm/onchain/positions/index.js +2 -2
  320. package/dist/esm/onchain/router/AbstractRouterContract.js +2 -24
  321. package/dist/esm/onchain/router/RouterV310Contract.js +1 -12
  322. package/dist/esm/onchain/utils/index.js +2 -1
  323. package/dist/esm/{common-utils → onchain}/utils/trace.js +1 -1
  324. package/dist/esm/onchain/utils/viem/simulateWithPriceUpdates.js +1 -1
  325. package/dist/esm/onchain/validation/checks.js +238 -0
  326. package/dist/esm/onchain/validation/index.js +4 -0
  327. package/dist/esm/onchain/validation/refusal.js +36 -0
  328. package/dist/esm/onchain/validation/token.js +27 -0
  329. package/dist/esm/permissionless/bindings/instance-manager.js +16 -0
  330. package/dist/esm/preview/index.js +11 -7
  331. package/dist/esm/preview/parse/errors.js +1 -30
  332. package/dist/esm/preview/parse/index.js +2 -3
  333. package/dist/esm/preview/parse/parseOperationCalldata.js +28 -17
  334. package/dist/esm/preview/parse/parsePoolOperationCalldata.js +17 -11
  335. package/dist/esm/preview/prerequisites/checkPrerequisites.js +5 -2
  336. package/dist/esm/preview/preview/{buildDelayedPreview.js → buildDelayedStrategyPositionOperationPreview.js} +48 -73
  337. package/dist/esm/preview/preview/detectDelayedClaim.js +9 -7
  338. package/dist/esm/preview/preview/detectDelayedOperation.js +11 -4
  339. package/dist/esm/preview/preview/errors.js +76 -13
  340. package/dist/esm/preview/preview/estimateClaimableAt.js +20 -0
  341. package/dist/esm/preview/preview/index.js +6 -5
  342. package/dist/esm/preview/preview/previewAdjustStrategyPosition.js +48 -0
  343. package/dist/esm/preview/preview/{previewCloseOrRepayCreditAccount.js → previewExitOrRepayStrategyPosition.js} +28 -15
  344. package/dist/esm/preview/preview/previewOpenStrategyPosition.js +49 -0
  345. package/dist/esm/preview/preview/previewOperation.js +46 -24
  346. package/dist/esm/preview/preview/previewPoolPositionOperation.js +48 -0
  347. package/dist/esm/preview/preview/replayInnerOperations.js +23 -60
  348. package/dist/esm/preview/preview/replayMulticall.js +2 -2
  349. package/dist/esm/preview/preview/unwrapNativeCollateral.js +4 -9
  350. package/dist/esm/preview/simulate/errors.js +16 -24
  351. package/dist/esm/preview/simulate/index.js +3 -3
  352. package/dist/esm/preview/simulate/simulateOperation.js +7 -5
  353. package/dist/esm/preview/simulate/simulatePoolOperation.js +8 -5
  354. package/dist/esm/preview/trace/extractAdapterCallTraces.js +1 -1
  355. package/dist/esm/preview/trace/extractTransfers.js +1 -1
  356. package/dist/esm/preview/trace/findFacadeCalls.js +1 -1
  357. package/dist/esm/preview/validate/checkOperation.js +183 -0
  358. package/dist/esm/preview/validate/checkSimulation.js +38 -0
  359. package/dist/esm/preview/validate/index.js +3 -0
  360. package/dist/esm/rewards/errors.js +26 -0
  361. package/dist/esm/rewards/index.js +4 -5
  362. package/dist/esm/rewards/merkl-api.js +42 -0
  363. package/dist/esm/rewards/multichain.js +39 -0
  364. package/dist/esm/rewards/toMerklRewards.js +84 -0
  365. package/dist/esm/sdk/GearboxSDK.js +5 -0
  366. package/dist/esm/sdk/analytics/AnalyticsNamespace.js +10 -0
  367. package/dist/esm/sdk/analytics/index.js +3 -0
  368. package/dist/esm/sdk/execute/ExecuteApi.js +20 -17
  369. package/dist/esm/sdk/execute/index.js +1 -0
  370. package/dist/esm/sdk/index.js +5 -1
  371. package/dist/esm/sdk/liquidations/LiquidationsNamespace.js +5 -5
  372. package/dist/esm/sdk/opportunities/OpportunitiesNamespace.js +14 -8
  373. package/dist/esm/sdk/positions/PositionsNamespace.js +22 -4
  374. package/dist/esm/sdk/positions/mergePositionList.js +45 -1
  375. package/dist/esm/sdk/prepare/PrepareApi.js +439 -189
  376. package/dist/esm/sdk/prepare/errors.js +89 -0
  377. package/dist/esm/sdk/prepare/index.js +3 -1
  378. package/dist/esm/sdk/prepare/types.js +2 -1
  379. package/dist/esm/sdk/prepare/withdrawable-collaterals.js +22 -0
  380. package/dist/esm/sdk/preview/PreviewNamespace.js +2 -2
  381. package/dist/types/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.d.ts +16 -0
  382. package/dist/types/dev/mode-parity/compareOpportunities.d.ts +3 -7
  383. package/dist/types/dev/mode-parity/comparePositions.d.ts +9 -11
  384. package/dist/types/dev/mode-parity/fieldDiff.d.ts +12 -9
  385. package/dist/types/dev/mode-parity/scriptUtils.d.ts +26 -1
  386. package/dist/types/history/classifyMulticallOperations.d.ts +1 -1
  387. package/dist/types/model/analytics.d.ts +62 -0
  388. package/dist/types/model/analytics.schema.d.ts +149 -0
  389. package/dist/types/model/charts.d.ts +4 -2
  390. package/dist/types/model/charts.schema.d.ts +8 -0
  391. package/dist/types/model/compare.schema.d.ts +9 -2
  392. package/dist/types/model/delayed-intent.schema.d.ts +28 -0
  393. package/dist/types/model/errors.d.ts +46 -0
  394. package/dist/types/model/index.d.ts +16 -10
  395. package/dist/types/model/liquidations.d.ts +14 -8
  396. package/dist/types/model/liquidations.schema.d.ts +64 -2
  397. package/dist/types/model/opportunities.d.ts +20 -2
  398. package/dist/types/model/opportunities.schema.d.ts +9 -1
  399. package/dist/types/model/positions.d.ts +62 -7
  400. package/dist/types/model/positions.schema.d.ts +29 -49
  401. package/dist/types/model/previews.d.ts +383 -204
  402. package/dist/types/model/result.d.ts +63 -0
  403. package/dist/types/model/withdrawals.d.ts +106 -0
  404. package/dist/types/model/withdrawals.schema.d.ts +263 -0
  405. package/dist/types/offchain/AbstractOffchainNamespace.d.ts +1 -1
  406. package/dist/types/offchain/GearboxAPI.d.ts +4 -0
  407. package/dist/types/offchain/analytics/OffchainAnalytics.d.ts +11 -0
  408. package/dist/types/offchain/analytics/OffchainAnalyticsPositions.d.ts +14 -0
  409. package/dist/types/offchain/analytics/index.d.ts +4 -0
  410. package/dist/types/offchain/analytics/types.d.ts +17 -0
  411. package/dist/types/offchain/index.d.ts +7 -1
  412. package/dist/types/offchain/opportunities/OffchainOpportunities.d.ts +12 -12
  413. package/dist/types/offchain/opportunities/index.d.ts +2 -1
  414. package/dist/types/offchain/opportunities/types.d.ts +36 -0
  415. package/dist/types/offchain/positions/OffchainPositions.d.ts +15 -9
  416. package/dist/types/offchain/positions/index.d.ts +2 -1
  417. package/dist/types/offchain/positions/types.d.ts +36 -0
  418. package/dist/types/onchain/accounts/CreditAccountsServiceV310.d.ts +1 -5
  419. package/dist/types/onchain/accounts/index.d.ts +9 -5
  420. package/dist/types/onchain/accounts/intents/guards.d.ts +30 -8
  421. package/dist/types/onchain/accounts/intents/index.d.ts +58 -23
  422. package/dist/types/onchain/accounts/intents/leverage-band.d.ts +58 -0
  423. package/dist/types/onchain/accounts/intents/math.d.ts +3 -1
  424. package/dist/types/onchain/accounts/intents/maxWithdrawCollateral.d.ts +5 -3
  425. package/dist/types/onchain/accounts/intents/open-strategy.d.ts +15 -35
  426. package/dist/types/onchain/accounts/intents/operations.d.ts +1 -1
  427. package/dist/types/onchain/accounts/intents/plan.d.ts +4 -1
  428. package/dist/types/onchain/accounts/intents/realize.d.ts +1 -1
  429. package/dist/types/onchain/accounts/intents/tail.d.ts +13 -3
  430. package/dist/types/onchain/accounts/intents/testing/expect.d.ts +7 -3
  431. package/dist/types/onchain/accounts/intents/testing/market.d.ts +9 -2
  432. package/dist/types/onchain/accounts/intents/testing/sdk-mock.d.ts +33 -3
  433. package/dist/types/onchain/accounts/intents/tests/add-collateral.fixtures.d.ts +1 -1
  434. package/dist/types/onchain/accounts/intents/tests/adjust-leverage.fixtures.d.ts +2 -2
  435. package/dist/types/onchain/accounts/intents/tests/deposit.fixtures.d.ts +3 -3
  436. package/dist/types/onchain/accounts/intents/tests/withdraw-asset.fixtures.d.ts +1 -1
  437. package/dist/types/onchain/accounts/intents/tests/withdraw.fixtures.d.ts +2 -2
  438. package/dist/types/onchain/accounts/intents/types.d.ts +122 -123
  439. package/dist/types/onchain/accounts/intents/utils/adjust-state-to-snapshot.d.ts +2 -2
  440. package/dist/types/onchain/accounts/intents/utils/credit-account-slice.d.ts +4 -4
  441. package/dist/types/onchain/accounts/intents/utils/index.d.ts +4 -4
  442. package/dist/types/onchain/accounts/intents/utils/ledger.d.ts +2 -2
  443. package/dist/types/onchain/accounts/intents/utils/price-impact.d.ts +49 -0
  444. package/dist/types/onchain/accounts/intents/utils/quotas-for-update.d.ts +1 -1
  445. package/dist/types/onchain/accounts/intents/utils/router-path.d.ts +9 -0
  446. package/dist/types/onchain/accounts/intents/view.d.ts +2 -2
  447. package/dist/types/onchain/accounts/liquidations/LiquidationsService.d.ts +0 -1
  448. package/dist/types/onchain/accounts/liquidations/skipLiquidatableAccount.d.ts +11 -0
  449. package/dist/types/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.d.ts +3 -4
  450. package/dist/types/onchain/accounts/types.d.ts +2 -27
  451. package/dist/types/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.d.ts +6 -4
  452. package/dist/types/onchain/accounts/withdrawal-compressor/errors.d.ts +9 -5
  453. package/dist/types/onchain/accounts/withdrawal-compressor/index.d.ts +1 -1
  454. package/dist/types/onchain/accounts/withdrawal-compressor/types.d.ts +6 -4
  455. package/dist/types/onchain/base/index.d.ts +2 -2
  456. package/dist/types/onchain/base/types.d.ts +5 -1
  457. package/dist/types/onchain/constants/index.d.ts +2 -2
  458. package/dist/types/onchain/constants/math.d.ts +9 -1
  459. package/dist/types/onchain/index.d.ts +26 -14
  460. package/dist/types/onchain/market/MarketSuite.d.ts +19 -1
  461. package/dist/types/onchain/market/adapters/contracts/AbstractAdapter.d.ts +15 -3
  462. package/dist/types/onchain/market/adapters/contracts/AbstractCurveAdapter.d.ts +1 -1
  463. package/dist/types/onchain/market/adapters/contracts/AccountMigratorAdapterContract.d.ts +1 -1
  464. package/dist/types/onchain/market/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +1 -1
  465. package/dist/types/onchain/market/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +1 -1
  466. package/dist/types/onchain/market/adapters/contracts/CamelotV3AdapterContract.d.ts +1 -1
  467. package/dist/types/onchain/market/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +1 -1
  468. package/dist/types/onchain/market/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +1 -1
  469. package/dist/types/onchain/market/adapters/contracts/DaiUsdsAdapterContract.d.ts +1 -1
  470. package/dist/types/onchain/market/adapters/contracts/ERC4626AdapterContract.d.ts +9 -2
  471. package/dist/types/onchain/market/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +1 -1
  472. package/dist/types/onchain/market/adapters/contracts/FluidDexAdapterContract.d.ts +1 -1
  473. package/dist/types/onchain/market/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +1 -1
  474. package/dist/types/onchain/market/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +1 -1
  475. package/dist/types/onchain/market/adapters/contracts/LidoV1AdapterContract.d.ts +1 -1
  476. package/dist/types/onchain/market/adapters/contracts/MellowClaimerAdapterContract.d.ts +1 -1
  477. package/dist/types/onchain/market/adapters/contracts/MellowDVVAdapterContract.d.ts +1 -1
  478. package/dist/types/onchain/market/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +1 -1
  479. package/dist/types/onchain/market/adapters/contracts/MellowWrapperAdapterContract.d.ts +1 -1
  480. package/dist/types/onchain/market/adapters/contracts/MidasGatewayAdapterContract.d.ts +8 -1
  481. package/dist/types/onchain/market/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +1 -1
  482. package/dist/types/onchain/market/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +1 -1
  483. package/dist/types/onchain/market/adapters/contracts/PendleRouterAdapterContract.d.ts +1 -1
  484. package/dist/types/onchain/market/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +1 -1
  485. package/dist/types/onchain/market/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +1 -1
  486. package/dist/types/onchain/market/adapters/contracts/StakingRewardsAdapterContract.d.ts +1 -1
  487. package/dist/types/onchain/market/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +1 -1
  488. package/dist/types/onchain/market/adapters/contracts/UniswapV2AdapterContract.d.ts +1 -1
  489. package/dist/types/onchain/market/adapters/contracts/UniswapV3AdapterContract.d.ts +1 -1
  490. package/dist/types/onchain/market/adapters/contracts/UniswapV4AdapterContract.d.ts +1 -1
  491. package/dist/types/onchain/market/adapters/contracts/UpshiftVaultAdapterContract.d.ts +1 -1
  492. package/dist/types/onchain/market/adapters/contracts/VelodromeV2AdapterContract.d.ts +1 -1
  493. package/dist/types/onchain/market/adapters/contracts/WstETHV1AdapterContract.d.ts +1 -1
  494. package/dist/types/onchain/market/credit/CreditManagerV310Contract.d.ts +1 -1
  495. package/dist/types/onchain/market/credit/CreditSuite.d.ts +49 -3
  496. package/dist/types/onchain/market/credit/index.d.ts +2 -2
  497. package/dist/types/onchain/market/credit/types.d.ts +14 -4
  498. package/dist/types/onchain/market/index.d.ts +7 -5
  499. package/dist/types/onchain/market/math.d.ts +25 -10
  500. package/dist/types/onchain/market/oracle/PriceOracleBaseContract.d.ts +15 -5
  501. package/dist/types/onchain/market/oracle/collateralPriceInUnderlying.d.ts +19 -0
  502. package/dist/types/onchain/market/oracle/errors.d.ts +19 -0
  503. package/dist/types/onchain/market/oracle/index.d.ts +4 -2
  504. package/dist/types/onchain/market/oracle/types.d.ts +44 -26
  505. package/dist/types/onchain/market/pool/PoolV310Contract.d.ts +12 -0
  506. package/dist/types/onchain/market/pool/types.d.ts +18 -0
  507. package/dist/types/onchain/market/rwa/index.d.ts +2 -2
  508. package/dist/types/onchain/market/rwa/securitize/SecuritizeRWAFactory.d.ts +2 -2
  509. package/dist/types/onchain/market/rwa/types.d.ts +17 -5
  510. package/dist/types/onchain/market/zapper/ZapperContract.d.ts +7 -3
  511. package/dist/types/onchain/market/zapper/errors.d.ts +11 -6
  512. package/dist/types/onchain/market/zapper/index.d.ts +1 -1
  513. package/dist/types/onchain/market/zapper/types.d.ts +4 -1
  514. package/dist/types/onchain/opportunities/MultichainOpportunitiesService.d.ts +2 -1
  515. package/dist/types/onchain/opportunities/index.d.ts +2 -1
  516. package/dist/types/onchain/opportunities/types.d.ts +27 -0
  517. package/dist/types/onchain/pools/PoolService.d.ts +1 -19
  518. package/dist/types/onchain/pools/index.d.ts +2 -2
  519. package/dist/types/onchain/pools/types.d.ts +6 -4
  520. package/dist/types/onchain/positions/MultichainPositionsService.d.ts +8 -2
  521. package/dist/types/onchain/positions/PositionsService.d.ts +44 -1
  522. package/dist/types/onchain/positions/calcHealthFactor.d.ts +7 -3
  523. package/dist/types/onchain/positions/calcLiquidationPrice.d.ts +10 -1
  524. package/dist/types/onchain/positions/index.d.ts +3 -3
  525. package/dist/types/onchain/positions/types.d.ts +47 -3
  526. package/dist/types/onchain/router/AbstractRouterContract.d.ts +0 -4
  527. package/dist/types/onchain/utils/index.d.ts +2 -1
  528. package/dist/types/{common-utils → onchain}/utils/trace.d.ts +1 -1
  529. package/dist/types/onchain/validation/checks.d.ts +164 -0
  530. package/dist/types/onchain/validation/index.d.ts +4 -0
  531. package/dist/types/onchain/validation/refusal.d.ts +242 -0
  532. package/dist/types/onchain/validation/token.d.ts +17 -0
  533. package/dist/types/preview/index.d.ts +13 -6
  534. package/dist/types/preview/parse/errors.d.ts +19 -12
  535. package/dist/types/preview/parse/index.d.ts +1 -1
  536. package/dist/types/preview/parse/parseOperationCalldata.d.ts +5 -1
  537. package/dist/types/preview/parse/parsePoolOperationCalldata.d.ts +5 -2
  538. package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +6 -1
  539. package/dist/types/preview/preview/{buildDelayedPreview.d.ts → buildDelayedStrategyPositionOperationPreview.d.ts} +8 -12
  540. package/dist/types/preview/preview/detectDelayedClaim.d.ts +7 -6
  541. package/dist/types/preview/preview/detectDelayedOperation.d.ts +3 -1
  542. package/dist/types/preview/preview/errors.d.ts +38 -6
  543. package/dist/types/preview/preview/estimateClaimableAt.d.ts +19 -0
  544. package/dist/types/preview/preview/index.d.ts +7 -6
  545. package/dist/types/preview/preview/{previewAdjustCreditAccount.d.ts → previewAdjustStrategyPosition.d.ts} +4 -4
  546. package/dist/types/preview/preview/{previewCloseOrRepayCreditAccount.d.ts → previewExitOrRepayStrategyPosition.d.ts} +4 -4
  547. package/dist/types/preview/preview/previewOpenStrategyPosition.d.ts +12 -0
  548. package/dist/types/preview/preview/previewOperation.d.ts +21 -2
  549. package/dist/types/preview/preview/previewPoolPositionOperation.d.ts +13 -0
  550. package/dist/types/preview/preview/replayInnerOperations.d.ts +3 -3
  551. package/dist/types/preview/preview/replayMulticall.d.ts +2 -2
  552. package/dist/types/preview/preview/unwrapNativeCollateral.d.ts +4 -5
  553. package/dist/types/preview/simulate/errors.d.ts +12 -8
  554. package/dist/types/preview/simulate/index.d.ts +2 -2
  555. package/dist/types/preview/simulate/simulateOperation.d.ts +4 -1
  556. package/dist/types/preview/simulate/simulatePoolOperation.d.ts +22 -2
  557. package/dist/types/preview/simulate/types.d.ts +12 -4
  558. package/dist/types/preview/trace/extractAdapterCallTraces.d.ts +1 -1
  559. package/dist/types/preview/trace/findFacadeCalls.d.ts +1 -1
  560. package/dist/types/preview/trace/types.d.ts +1 -1
  561. package/dist/types/preview/validate/checkOperation.d.ts +71 -0
  562. package/dist/types/preview/validate/checkSimulation.d.ts +32 -0
  563. package/dist/types/preview/validate/index.d.ts +3 -0
  564. package/dist/types/rewards/errors.d.ts +18 -0
  565. package/dist/types/rewards/index.d.ts +4 -7
  566. package/dist/types/rewards/merkl-api.d.ts +64 -0
  567. package/dist/types/rewards/multichain.d.ts +33 -0
  568. package/dist/types/rewards/toMerklRewards.d.ts +42 -0
  569. package/dist/types/sdk/AbstractNamespace.d.ts +1 -1
  570. package/dist/types/sdk/GearboxSDK.d.ts +15 -11
  571. package/dist/types/sdk/analytics/AnalyticsNamespace.d.ts +11 -0
  572. package/dist/types/sdk/analytics/index.d.ts +3 -0
  573. package/dist/types/sdk/analytics/types.d.ts +15 -0
  574. package/dist/types/sdk/execute/ExecuteApi.d.ts +5 -94
  575. package/dist/types/sdk/execute/index.d.ts +3 -2
  576. package/dist/types/sdk/execute/types.d.ts +91 -0
  577. package/dist/types/sdk/index.d.ts +19 -11
  578. package/dist/types/sdk/liquidations/LiquidationsNamespace.d.ts +7 -7
  579. package/dist/types/sdk/liquidations/index.d.ts +2 -2
  580. package/dist/types/sdk/liquidations/types.d.ts +5 -7
  581. package/dist/types/sdk/opportunities/OpportunitiesNamespace.d.ts +24 -20
  582. package/dist/types/sdk/opportunities/index.d.ts +2 -2
  583. package/dist/types/sdk/opportunities/types.d.ts +42 -42
  584. package/dist/types/sdk/positions/PositionsNamespace.d.ts +24 -10
  585. package/dist/types/sdk/positions/index.d.ts +2 -2
  586. package/dist/types/sdk/positions/mergePositionList.d.ts +5 -0
  587. package/dist/types/sdk/positions/types.d.ts +51 -35
  588. package/dist/types/sdk/prepare/PrepareApi.d.ts +60 -40
  589. package/dist/types/sdk/prepare/errors.d.ts +319 -0
  590. package/dist/types/sdk/prepare/index.d.ts +6 -2
  591. package/dist/types/sdk/prepare/types.d.ts +237 -119
  592. package/dist/types/sdk/prepare/withdrawable-collaterals.d.ts +11 -0
  593. package/dist/types/sdk/preview/PreviewNamespace.d.ts +8 -5
  594. package/dist/types/sdk/preview/index.d.ts +2 -2
  595. package/dist/types/sdk/preview/types.d.ts +12 -10
  596. package/dist/types/sdk/types.d.ts +66 -6
  597. package/package.json +2 -8
  598. package/dist/cjs/_virtual/_rolldown/runtime.js +0 -23
  599. package/dist/cjs/common-utils/axios-cache/AxiosCache.js +0 -98
  600. package/dist/cjs/common-utils/axios-cache/index.js +0 -3
  601. package/dist/cjs/common-utils/charts/credit-manager.js +0 -100
  602. package/dist/cjs/common-utils/charts/credit-session.js +0 -211
  603. package/dist/cjs/common-utils/charts/index.js +0 -18
  604. package/dist/cjs/common-utils/charts/pool.js +0 -177
  605. package/dist/cjs/common-utils/charts/token-data.js +0 -68
  606. package/dist/cjs/common-utils/index.js +0 -209
  607. package/dist/cjs/common-utils/package.json +0 -1
  608. package/dist/cjs/common-utils/static/index.js +0 -5
  609. package/dist/cjs/common-utils/static/pool-config.js +0 -1
  610. package/dist/cjs/common-utils/static/strategy.js +0 -1
  611. package/dist/cjs/common-utils/static/trading-pair.js +0 -1
  612. package/dist/cjs/common-utils/test-utils/index.js +0 -104
  613. package/dist/cjs/common-utils/utils/apy/bonus-apy-from-points.js +0 -5
  614. package/dist/cjs/common-utils/utils/apy/calculate-borrow-rate-from-utilization.js +0 -22
  615. package/dist/cjs/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.js +0 -34
  616. package/dist/cjs/common-utils/utils/apy/calculate-earnings.js +0 -23
  617. package/dist/cjs/common-utils/utils/apy/calculate-earnings.spec.js +0 -68
  618. package/dist/cjs/common-utils/utils/apy/calculate-effective-borrow-rate.js +0 -8
  619. package/dist/cjs/common-utils/utils/apy/calculate-safe-borrow-rate.js +0 -20
  620. package/dist/cjs/common-utils/utils/apy/calculate-safe-borrow-rate.spec.js +0 -39
  621. package/dist/cjs/common-utils/utils/apy/get-complex-apy-list.js +0 -18
  622. package/dist/cjs/common-utils/utils/apy/get-rate-with-fee.js +0 -16
  623. package/dist/cjs/common-utils/utils/apy/get-safe-base-borrow-rate.js +0 -14
  624. package/dist/cjs/common-utils/utils/apy/get-single-quota-borrow-rate.js +0 -16
  625. package/dist/cjs/common-utils/utils/apy/index.js +0 -21
  626. package/dist/cjs/common-utils/utils/apy/max-apy-formula.js +0 -14
  627. package/dist/cjs/common-utils/utils/assets-math.js +0 -185
  628. package/dist/cjs/common-utils/utils/constants.js +0 -9
  629. package/dist/cjs/common-utils/utils/creditAccount/calc-health-factor.js +0 -41
  630. package/dist/cjs/common-utils/utils/creditAccount/calc-overall-apy.js +0 -46
  631. package/dist/cjs/common-utils/utils/creditAccount/calc-quota-borrow-rate.js +0 -22
  632. package/dist/cjs/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.js +0 -16
  633. package/dist/cjs/common-utils/utils/creditAccount/debt.js +0 -46
  634. package/dist/cjs/common-utils/utils/creditAccount/get-time-to-liquidation.js +0 -24
  635. package/dist/cjs/common-utils/utils/creditAccount/index.js +0 -27
  636. package/dist/cjs/common-utils/utils/creditAccount/liquidation-price.js +0 -39
  637. package/dist/cjs/common-utils/utils/creditAccount/sort.js +0 -95
  638. package/dist/cjs/common-utils/utils/index.js +0 -194
  639. package/dist/cjs/common-utils/utils/price-math.js +0 -51
  640. package/dist/cjs/common-utils/utils/strategies/assets/assets.js +0 -7
  641. package/dist/cjs/common-utils/utils/strategies/assets/index.js +0 -3
  642. package/dist/cjs/common-utils/utils/strategies/availability/check-boolean.js +0 -10
  643. package/dist/cjs/common-utils/utils/strategies/availability/check-degen-nft.js +0 -13
  644. package/dist/cjs/common-utils/utils/strategies/availability/index.js +0 -5
  645. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.js +0 -23
  646. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.js +0 -109
  647. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +0 -31
  648. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +0 -15
  649. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +0 -23
  650. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.js +0 -29
  651. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.js +0 -95
  652. package/dist/cjs/common-utils/utils/strategies/credit-managers/index.js +0 -13
  653. package/dist/cjs/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.js +0 -9
  654. package/dist/cjs/common-utils/utils/strategies/eligibility/index.js +0 -5
  655. package/dist/cjs/common-utils/utils/strategies/eligibility/is-strategy-eligible.js +0 -20
  656. package/dist/cjs/common-utils/utils/strategies/eligibility/is-strategy-released.js +0 -8
  657. package/dist/cjs/common-utils/utils/strategies/index.js +0 -118
  658. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-loss-coefficient.js +0 -10
  659. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.js +0 -16
  660. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.js +0 -21
  661. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.js +0 -304
  662. package/dist/cjs/common-utils/utils/strategies/leverage/get-collateral-by-debt.js +0 -10
  663. package/dist/cjs/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.js +0 -30
  664. package/dist/cjs/common-utils/utils/strategies/leverage/get-factor-from-leverage.js +0 -9
  665. package/dist/cjs/common-utils/utils/strategies/leverage/get-leverage-from-factor.js +0 -9
  666. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-debt.js +0 -47
  667. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-debt.spec.js +0 -222
  668. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.js +0 -7
  669. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.js +0 -19
  670. package/dist/cjs/common-utils/utils/strategies/leverage/index.js +0 -21
  671. package/dist/cjs/common-utils/utils/strategies/leverage/max-leverage-threshold.js +0 -17
  672. package/dist/cjs/common-utils/utils/strategies/leverage/max-leverage.js +0 -17
  673. package/dist/cjs/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.js +0 -16
  674. package/dist/cjs/common-utils/utils/strategies/lists/get-available-strategies.js +0 -32
  675. package/dist/cjs/common-utils/utils/strategies/lists/get-disabled-strategies.js +0 -33
  676. package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +0 -24
  677. package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list.js +0 -16
  678. package/dist/cjs/common-utils/utils/strategies/lists/index.js +0 -7
  679. package/dist/cjs/common-utils/utils/strategies/points/get-complex-points-list.js +0 -15
  680. package/dist/cjs/common-utils/utils/strategies/points/get-points-info.js +0 -12
  681. package/dist/cjs/common-utils/utils/strategies/points/get-points-rates.js +0 -8
  682. package/dist/cjs/common-utils/utils/strategies/points/get-strategy-points.js +0 -41
  683. package/dist/cjs/common-utils/utils/strategies/points/index.js +0 -9
  684. package/dist/cjs/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.js +0 -3
  685. package/dist/cjs/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.js +0 -18
  686. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-apy.js +0 -63
  687. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.js +0 -184
  688. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-points.js +0 -38
  689. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.js +0 -126
  690. package/dist/cjs/common-utils/utils/strategies/strategy-info/cm-availability-condition.js +0 -43
  691. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +0 -308
  692. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.js +0 -267
  693. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +0 -70
  694. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info.js +0 -33
  695. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.js +0 -66
  696. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.js +0 -58
  697. package/dist/cjs/common-utils/utils/strategies/strategy-info/index.js +0 -20
  698. package/dist/cjs/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.js +0 -9
  699. package/dist/cjs/common-utils/utils/strategies/strategy-state/index.js +0 -3
  700. package/dist/cjs/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +0 -14
  701. package/dist/cjs/common-utils/utils/strategies/tokens/add-amount-in-target.js +0 -18
  702. package/dist/cjs/common-utils/utils/strategies/tokens/add-amount-in-target.spec.js +0 -29
  703. package/dist/cjs/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.js +0 -10
  704. package/dist/cjs/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.js +0 -12
  705. package/dist/cjs/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.js +0 -37
  706. package/dist/cjs/common-utils/utils/strategies/tokens/get-native-token-address.js +0 -8
  707. package/dist/cjs/common-utils/utils/strategies/tokens/index.js +0 -26
  708. package/dist/cjs/common-utils/utils/strategies/tokens/is-activated-token.js +0 -9
  709. package/dist/cjs/common-utils/utils/strategies/tokens/is-apy-with-points-exception.js +0 -10
  710. package/dist/cjs/common-utils/utils/strategies/tokens/is-collateral-token.js +0 -28
  711. package/dist/cjs/common-utils/utils/strategies/tokens/is-collateral-token.spec.js +0 -143
  712. package/dist/cjs/common-utils/utils/strategies/tokens/is-forbidden-token.js +0 -7
  713. package/dist/cjs/common-utils/utils/strategies/tokens/is-obtainable-token.js +0 -13
  714. package/dist/cjs/common-utils/utils/strategies/tokens/is-obtainable-token.spec.js +0 -148
  715. package/dist/cjs/common-utils/utils/strategies/tokens/is-usable-token.js +0 -15
  716. package/dist/cjs/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.js +0 -22
  717. package/dist/cjs/common-utils/utils/strategies/tokens/wrap-token-address.js +0 -8
  718. package/dist/cjs/common-utils/utils/strategies/tokens/wrap-token-address.spec.js +0 -15
  719. package/dist/cjs/common-utils/utils/strategies/types/chains.js +0 -1
  720. package/dist/cjs/common-utils/utils/strategies/types/credit-manager-data-legacy.js +0 -1
  721. package/dist/cjs/common-utils/utils/strategies/types/curator-filter.js +0 -1
  722. package/dist/cjs/common-utils/utils/strategies/types/index.js +0 -14
  723. package/dist/cjs/common-utils/utils/strategies/types/legacy-strategy-data-source.js +0 -30
  724. package/dist/cjs/common-utils/utils/strategies/types/points-slices.js +0 -1
  725. package/dist/cjs/common-utils/utils/strategies/types/sdk-state.js +0 -1
  726. package/dist/cjs/common-utils/utils/strategies/types/strategies-cm-list.js +0 -1
  727. package/dist/cjs/common-utils/utils/strategies/types/strategy-data-source.js +0 -1
  728. package/dist/cjs/common-utils/utils/strategies/types/strategy-data.js +0 -1
  729. package/dist/cjs/common-utils/utils/strategies/types/strategy-earnings.js +0 -1
  730. package/dist/cjs/common-utils/utils/strategies/types/strategy.js +0 -1
  731. package/dist/cjs/common-utils/utils/strategies/types/targetable.js +0 -1
  732. package/dist/cjs/common-utils/utils/strategies/types.js +0 -4
  733. package/dist/cjs/common-utils/utils/validation/index.js +0 -23
  734. package/dist/cjs/common-utils/utils/validation/is-zero-balance.js +0 -7
  735. package/dist/cjs/common-utils/utils/validation/validate-balance.js +0 -22
  736. package/dist/cjs/common-utils/utils/validation/validate-balance.spec.js +0 -54
  737. package/dist/cjs/common-utils/utils/validation/validate-balances.js +0 -17
  738. package/dist/cjs/common-utils/utils/validation/validate-balances.spec.js +0 -45
  739. package/dist/cjs/common-utils/utils/validation/validate-credit-manager.js +0 -8
  740. package/dist/cjs/common-utils/utils/validation/validate-credit-manager.spec.js +0 -36
  741. package/dist/cjs/common-utils/utils/validation/validate-hf.js +0 -10
  742. package/dist/cjs/common-utils/utils/validation/validate-hf.spec.js +0 -26
  743. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-quota-status.js +0 -14
  744. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.js +0 -29
  745. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-status.js +0 -37
  746. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-status.spec.js +0 -98
  747. package/dist/cjs/common-utils/utils/validation/validate-open-account.js +0 -18
  748. package/dist/cjs/common-utils/utils/validation/validate-open-account.spec.js +0 -56
  749. package/dist/cjs/common-utils/utils/validation/validate-quota.js +0 -23
  750. package/dist/cjs/common-utils/utils/validation/validate-quota.spec.js +0 -88
  751. package/dist/cjs/common-utils/utils/validation/validate-token-to-obtain.js +0 -18
  752. package/dist/cjs/common-utils/utils/validation/validate-token-to-obtain.spec.js +0 -36
  753. package/dist/cjs/common-utils/utils/validation/validation-types.js +0 -1
  754. package/dist/cjs/onchain/accounts/intents/utils/convert-amount.js +0 -37
  755. package/dist/cjs/plugins/apy/ApyPlugin.js +0 -248
  756. package/dist/cjs/plugins/apy/apy-parser.js +0 -129
  757. package/dist/cjs/plugins/apy/constants.js +0 -7
  758. package/dist/cjs/plugins/apy/index.js +0 -18
  759. package/dist/cjs/plugins/apy/package.json +0 -1
  760. package/dist/cjs/plugins/apy/pool-apy-types.js +0 -1
  761. package/dist/cjs/plugins/apy/pool-apy-utils.js +0 -121
  762. package/dist/cjs/plugins/apy/strategy-data-source.js +0 -163
  763. package/dist/cjs/plugins/remote-configs/CustomConfigSource.js +0 -18
  764. package/dist/cjs/plugins/remote-configs/RemoteConfigSource.js +0 -26
  765. package/dist/cjs/plugins/remote-configs/RemoteConfigsPlugin.js +0 -127
  766. package/dist/cjs/plugins/remote-configs/index.js +0 -8
  767. package/dist/cjs/plugins/remote-configs/package.json +0 -1
  768. package/dist/cjs/preview/preview/applyRWAWrapUnwrap.js +0 -67
  769. package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +0 -71
  770. package/dist/cjs/preview/preview/previewOpenCreditAccount.js +0 -75
  771. package/dist/cjs/preview/preview/previewPoolOperation.js +0 -25
  772. package/dist/cjs/rewards/apy/index.js +0 -3
  773. package/dist/cjs/rewards/apy/output-details.js +0 -1
  774. package/dist/cjs/rewards/apy/output.js +0 -1
  775. package/dist/cjs/rewards/rewards/api.js +0 -70
  776. package/dist/cjs/rewards/rewards/common.js +0 -1
  777. package/dist/cjs/rewards/rewards/extra-apy.js +0 -72
  778. package/dist/cjs/rewards/rewards/index.js +0 -6
  779. package/dist/cjs/rewards/rewards/merkl-api.js +0 -22
  780. package/dist/esm/common-utils/axios-cache/AxiosCache.js +0 -95
  781. package/dist/esm/common-utils/axios-cache/index.js +0 -2
  782. package/dist/esm/common-utils/charts/credit-manager.js +0 -99
  783. package/dist/esm/common-utils/charts/credit-session.js +0 -206
  784. package/dist/esm/common-utils/charts/index.js +0 -9
  785. package/dist/esm/common-utils/charts/pool.js +0 -175
  786. package/dist/esm/common-utils/charts/token-data.js +0 -67
  787. package/dist/esm/common-utils/index.js +0 -96
  788. package/dist/esm/common-utils/package.json +0 -1
  789. package/dist/esm/common-utils/static/index.js +0 -5
  790. package/dist/esm/common-utils/static/pool-config.js +0 -1
  791. package/dist/esm/common-utils/static/strategy.js +0 -1
  792. package/dist/esm/common-utils/static/trading-pair.js +0 -1
  793. package/dist/esm/common-utils/test-utils/index.js +0 -92
  794. package/dist/esm/common-utils/utils/apy/bonus-apy-from-points.js +0 -4
  795. package/dist/esm/common-utils/utils/apy/calculate-borrow-rate-from-utilization.js +0 -21
  796. package/dist/esm/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.js +0 -34
  797. package/dist/esm/common-utils/utils/apy/calculate-earnings.js +0 -22
  798. package/dist/esm/common-utils/utils/apy/calculate-earnings.spec.js +0 -68
  799. package/dist/esm/common-utils/utils/apy/calculate-effective-borrow-rate.js +0 -7
  800. package/dist/esm/common-utils/utils/apy/calculate-safe-borrow-rate.js +0 -19
  801. package/dist/esm/common-utils/utils/apy/calculate-safe-borrow-rate.spec.js +0 -39
  802. package/dist/esm/common-utils/utils/apy/get-complex-apy-list.js +0 -17
  803. package/dist/esm/common-utils/utils/apy/get-rate-with-fee.js +0 -15
  804. package/dist/esm/common-utils/utils/apy/get-safe-base-borrow-rate.js +0 -13
  805. package/dist/esm/common-utils/utils/apy/get-single-quota-borrow-rate.js +0 -15
  806. package/dist/esm/common-utils/utils/apy/index.js +0 -11
  807. package/dist/esm/common-utils/utils/apy/max-apy-formula.js +0 -13
  808. package/dist/esm/common-utils/utils/assets-math.js +0 -184
  809. package/dist/esm/common-utils/utils/constants.js +0 -6
  810. package/dist/esm/common-utils/utils/creditAccount/calc-health-factor.js +0 -40
  811. package/dist/esm/common-utils/utils/creditAccount/calc-overall-apy.js +0 -45
  812. package/dist/esm/common-utils/utils/creditAccount/calc-quota-borrow-rate.js +0 -21
  813. package/dist/esm/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.js +0 -15
  814. package/dist/esm/common-utils/utils/creditAccount/debt.js +0 -44
  815. package/dist/esm/common-utils/utils/creditAccount/get-time-to-liquidation.js +0 -23
  816. package/dist/esm/common-utils/utils/creditAccount/index.js +0 -10
  817. package/dist/esm/common-utils/utils/creditAccount/liquidation-price.js +0 -38
  818. package/dist/esm/common-utils/utils/creditAccount/sort.js +0 -90
  819. package/dist/esm/common-utils/utils/index.js +0 -91
  820. package/dist/esm/common-utils/utils/price-math.js +0 -50
  821. package/dist/esm/common-utils/utils/strategies/assets/assets.js +0 -6
  822. package/dist/esm/common-utils/utils/strategies/assets/index.js +0 -2
  823. package/dist/esm/common-utils/utils/strategies/availability/check-boolean.js +0 -9
  824. package/dist/esm/common-utils/utils/strategies/availability/check-degen-nft.js +0 -12
  825. package/dist/esm/common-utils/utils/strategies/availability/index.js +0 -3
  826. package/dist/esm/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.js +0 -22
  827. package/dist/esm/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.js +0 -109
  828. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +0 -30
  829. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +0 -14
  830. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +0 -22
  831. package/dist/esm/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.js +0 -28
  832. package/dist/esm/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.js +0 -95
  833. package/dist/esm/common-utils/utils/strategies/credit-managers/index.js +0 -7
  834. package/dist/esm/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.js +0 -8
  835. package/dist/esm/common-utils/utils/strategies/eligibility/index.js +0 -3
  836. package/dist/esm/common-utils/utils/strategies/eligibility/is-strategy-eligible.js +0 -19
  837. package/dist/esm/common-utils/utils/strategies/eligibility/is-strategy-released.js +0 -7
  838. package/dist/esm/common-utils/utils/strategies/index.js +0 -65
  839. package/dist/esm/common-utils/utils/strategies/leverage/calculate-loss-coefficient.js +0 -9
  840. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.js +0 -15
  841. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.js +0 -20
  842. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.js +0 -304
  843. package/dist/esm/common-utils/utils/strategies/leverage/get-collateral-by-debt.js +0 -9
  844. package/dist/esm/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.js +0 -30
  845. package/dist/esm/common-utils/utils/strategies/leverage/get-factor-from-leverage.js +0 -8
  846. package/dist/esm/common-utils/utils/strategies/leverage/get-leverage-from-factor.js +0 -8
  847. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-debt.js +0 -46
  848. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-debt.spec.js +0 -222
  849. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.js +0 -6
  850. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.js +0 -19
  851. package/dist/esm/common-utils/utils/strategies/leverage/index.js +0 -11
  852. package/dist/esm/common-utils/utils/strategies/leverage/max-leverage-threshold.js +0 -16
  853. package/dist/esm/common-utils/utils/strategies/leverage/max-leverage.js +0 -16
  854. package/dist/esm/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.js +0 -15
  855. package/dist/esm/common-utils/utils/strategies/lists/get-available-strategies.js +0 -31
  856. package/dist/esm/common-utils/utils/strategies/lists/get-disabled-strategies.js +0 -32
  857. package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +0 -23
  858. package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list.js +0 -15
  859. package/dist/esm/common-utils/utils/strategies/lists/index.js +0 -4
  860. package/dist/esm/common-utils/utils/strategies/points/get-complex-points-list.js +0 -14
  861. package/dist/esm/common-utils/utils/strategies/points/get-points-info.js +0 -11
  862. package/dist/esm/common-utils/utils/strategies/points/get-points-rates.js +0 -7
  863. package/dist/esm/common-utils/utils/strategies/points/get-strategy-points.js +0 -40
  864. package/dist/esm/common-utils/utils/strategies/points/index.js +0 -5
  865. package/dist/esm/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.js +0 -2
  866. package/dist/esm/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.js +0 -17
  867. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-apy.js +0 -62
  868. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.js +0 -184
  869. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-points.js +0 -37
  870. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.js +0 -124
  871. package/dist/esm/common-utils/utils/strategies/strategy-info/cm-availability-condition.js +0 -42
  872. package/dist/esm/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +0 -307
  873. package/dist/esm/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.js +0 -264
  874. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +0 -69
  875. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info.js +0 -32
  876. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.js +0 -65
  877. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.js +0 -57
  878. package/dist/esm/common-utils/utils/strategies/strategy-info/index.js +0 -11
  879. package/dist/esm/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.js +0 -8
  880. package/dist/esm/common-utils/utils/strategies/strategy-state/index.js +0 -2
  881. package/dist/esm/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +0 -13
  882. package/dist/esm/common-utils/utils/strategies/tokens/add-amount-in-target.js +0 -17
  883. package/dist/esm/common-utils/utils/strategies/tokens/add-amount-in-target.spec.js +0 -29
  884. package/dist/esm/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.js +0 -9
  885. package/dist/esm/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.js +0 -11
  886. package/dist/esm/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.js +0 -37
  887. package/dist/esm/common-utils/utils/strategies/tokens/get-native-token-address.js +0 -7
  888. package/dist/esm/common-utils/utils/strategies/tokens/index.js +0 -13
  889. package/dist/esm/common-utils/utils/strategies/tokens/is-activated-token.js +0 -8
  890. package/dist/esm/common-utils/utils/strategies/tokens/is-apy-with-points-exception.js +0 -8
  891. package/dist/esm/common-utils/utils/strategies/tokens/is-collateral-token.js +0 -27
  892. package/dist/esm/common-utils/utils/strategies/tokens/is-collateral-token.spec.js +0 -143
  893. package/dist/esm/common-utils/utils/strategies/tokens/is-forbidden-token.js +0 -6
  894. package/dist/esm/common-utils/utils/strategies/tokens/is-obtainable-token.js +0 -12
  895. package/dist/esm/common-utils/utils/strategies/tokens/is-obtainable-token.spec.js +0 -148
  896. package/dist/esm/common-utils/utils/strategies/tokens/is-usable-token.js +0 -14
  897. package/dist/esm/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.js +0 -21
  898. package/dist/esm/common-utils/utils/strategies/tokens/wrap-token-address.js +0 -7
  899. package/dist/esm/common-utils/utils/strategies/tokens/wrap-token-address.spec.js +0 -15
  900. package/dist/esm/common-utils/utils/strategies/types/chains.js +0 -1
  901. package/dist/esm/common-utils/utils/strategies/types/credit-manager-data-legacy.js +0 -1
  902. package/dist/esm/common-utils/utils/strategies/types/curator-filter.js +0 -1
  903. package/dist/esm/common-utils/utils/strategies/types/index.js +0 -13
  904. package/dist/esm/common-utils/utils/strategies/types/legacy-strategy-data-source.js +0 -29
  905. package/dist/esm/common-utils/utils/strategies/types/points-slices.js +0 -1
  906. package/dist/esm/common-utils/utils/strategies/types/sdk-state.js +0 -1
  907. package/dist/esm/common-utils/utils/strategies/types/strategies-cm-list.js +0 -1
  908. package/dist/esm/common-utils/utils/strategies/types/strategy-data-source.js +0 -1
  909. package/dist/esm/common-utils/utils/strategies/types/strategy-data.js +0 -1
  910. package/dist/esm/common-utils/utils/strategies/types/strategy-earnings.js +0 -1
  911. package/dist/esm/common-utils/utils/strategies/types/strategy.js +0 -1
  912. package/dist/esm/common-utils/utils/strategies/types/targetable.js +0 -1
  913. package/dist/esm/common-utils/utils/strategies/types.js +0 -3
  914. package/dist/esm/common-utils/utils/validation/index.js +0 -12
  915. package/dist/esm/common-utils/utils/validation/is-zero-balance.js +0 -6
  916. package/dist/esm/common-utils/utils/validation/validate-balance.js +0 -21
  917. package/dist/esm/common-utils/utils/validation/validate-balance.spec.js +0 -54
  918. package/dist/esm/common-utils/utils/validation/validate-balances.js +0 -16
  919. package/dist/esm/common-utils/utils/validation/validate-balances.spec.js +0 -45
  920. package/dist/esm/common-utils/utils/validation/validate-credit-manager.js +0 -7
  921. package/dist/esm/common-utils/utils/validation/validate-credit-manager.spec.js +0 -36
  922. package/dist/esm/common-utils/utils/validation/validate-hf.js +0 -8
  923. package/dist/esm/common-utils/utils/validation/validate-hf.spec.js +0 -26
  924. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-quota-status.js +0 -13
  925. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.js +0 -29
  926. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-status.js +0 -36
  927. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-status.spec.js +0 -98
  928. package/dist/esm/common-utils/utils/validation/validate-open-account.js +0 -17
  929. package/dist/esm/common-utils/utils/validation/validate-open-account.spec.js +0 -56
  930. package/dist/esm/common-utils/utils/validation/validate-quota.js +0 -22
  931. package/dist/esm/common-utils/utils/validation/validate-quota.spec.js +0 -88
  932. package/dist/esm/common-utils/utils/validation/validate-token-to-obtain.js +0 -17
  933. package/dist/esm/common-utils/utils/validation/validate-token-to-obtain.spec.js +0 -36
  934. package/dist/esm/common-utils/utils/validation/validation-types.js +0 -1
  935. package/dist/esm/onchain/accounts/intents/utils/convert-amount.js +0 -36
  936. package/dist/esm/plugins/apy/ApyPlugin.js +0 -247
  937. package/dist/esm/plugins/apy/apy-parser.js +0 -126
  938. package/dist/esm/plugins/apy/constants.js +0 -5
  939. package/dist/esm/plugins/apy/index.js +0 -7
  940. package/dist/esm/plugins/apy/package.json +0 -1
  941. package/dist/esm/plugins/apy/pool-apy-types.js +0 -1
  942. package/dist/esm/plugins/apy/pool-apy-utils.js +0 -116
  943. package/dist/esm/plugins/apy/strategy-data-source.js +0 -162
  944. package/dist/esm/plugins/remote-configs/CustomConfigSource.js +0 -17
  945. package/dist/esm/plugins/remote-configs/RemoteConfigSource.js +0 -25
  946. package/dist/esm/plugins/remote-configs/RemoteConfigsPlugin.js +0 -126
  947. package/dist/esm/plugins/remote-configs/index.js +0 -5
  948. package/dist/esm/plugins/remote-configs/package.json +0 -1
  949. package/dist/esm/preview/preview/applyRWAWrapUnwrap.js +0 -66
  950. package/dist/esm/preview/preview/previewAdjustCreditAccount.js +0 -70
  951. package/dist/esm/preview/preview/previewOpenCreditAccount.js +0 -74
  952. package/dist/esm/preview/preview/previewPoolOperation.js +0 -24
  953. package/dist/esm/rewards/apy/index.js +0 -3
  954. package/dist/esm/rewards/apy/output-details.js +0 -1
  955. package/dist/esm/rewards/apy/output.js +0 -1
  956. package/dist/esm/rewards/rewards/api.js +0 -69
  957. package/dist/esm/rewards/rewards/common.js +0 -1
  958. package/dist/esm/rewards/rewards/extra-apy.js +0 -68
  959. package/dist/esm/rewards/rewards/index.js +0 -3
  960. package/dist/esm/rewards/rewards/merkl-api.js +0 -19
  961. package/dist/types/common-utils/axios-cache/AxiosCache.d.ts +0 -31
  962. package/dist/types/common-utils/axios-cache/index.d.ts +0 -2
  963. package/dist/types/common-utils/charts/credit-manager-payload.d.ts +0 -53
  964. package/dist/types/common-utils/charts/credit-manager.d.ts +0 -51
  965. package/dist/types/common-utils/charts/credit-session.d.ts +0 -113
  966. package/dist/types/common-utils/charts/credit-sessions-payload.d.ts +0 -113
  967. package/dist/types/common-utils/charts/graph-payload.d.ts +0 -12
  968. package/dist/types/common-utils/charts/index.d.ts +0 -9
  969. package/dist/types/common-utils/charts/pool-payload.d.ts +0 -114
  970. package/dist/types/common-utils/charts/pool.d.ts +0 -94
  971. package/dist/types/common-utils/charts/token-data.d.ts +0 -47
  972. package/dist/types/common-utils/index.d.ts +0 -117
  973. package/dist/types/common-utils/static/index.d.ts +0 -5
  974. package/dist/types/common-utils/static/migration-config.d.ts +0 -13
  975. package/dist/types/common-utils/static/pool-config.d.ts +0 -14
  976. package/dist/types/common-utils/static/strategy.d.ts +0 -86
  977. package/dist/types/common-utils/static/trading-pair.d.ts +0 -18
  978. package/dist/types/common-utils/test-utils/index.d.ts +0 -19
  979. package/dist/types/common-utils/utils/apy/bonus-apy-from-points.d.ts +0 -7
  980. package/dist/types/common-utils/utils/apy/calculate-borrow-rate-from-utilization.d.ts +0 -5
  981. package/dist/types/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.d.ts +0 -1
  982. package/dist/types/common-utils/utils/apy/calculate-earnings.d.ts +0 -19
  983. package/dist/types/common-utils/utils/apy/calculate-earnings.spec.d.ts +0 -1
  984. package/dist/types/common-utils/utils/apy/calculate-effective-borrow-rate.d.ts +0 -9
  985. package/dist/types/common-utils/utils/apy/calculate-safe-borrow-rate.d.ts +0 -14
  986. package/dist/types/common-utils/utils/apy/calculate-safe-borrow-rate.spec.d.ts +0 -1
  987. package/dist/types/common-utils/utils/apy/get-complex-apy-list.d.ts +0 -8
  988. package/dist/types/common-utils/utils/apy/get-rate-with-fee.d.ts +0 -10
  989. package/dist/types/common-utils/utils/apy/get-safe-base-borrow-rate.d.ts +0 -7
  990. package/dist/types/common-utils/utils/apy/get-single-quota-borrow-rate.d.ts +0 -14
  991. package/dist/types/common-utils/utils/apy/index.d.ts +0 -11
  992. package/dist/types/common-utils/utils/apy/max-apy-formula.d.ts +0 -9
  993. package/dist/types/common-utils/utils/assets-math.d.ts +0 -117
  994. package/dist/types/common-utils/utils/constants.d.ts +0 -7
  995. package/dist/types/common-utils/utils/creditAccount/calc-health-factor.d.ts +0 -32
  996. package/dist/types/common-utils/utils/creditAccount/calc-overall-apy.d.ts +0 -41
  997. package/dist/types/common-utils/utils/creditAccount/calc-quota-borrow-rate.d.ts +0 -24
  998. package/dist/types/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.d.ts +0 -18
  999. package/dist/types/common-utils/utils/creditAccount/debt.d.ts +0 -39
  1000. package/dist/types/common-utils/utils/creditAccount/get-time-to-liquidation.d.ts +0 -24
  1001. package/dist/types/common-utils/utils/creditAccount/index.d.ts +0 -10
  1002. package/dist/types/common-utils/utils/creditAccount/liquidation-price.d.ts +0 -31
  1003. package/dist/types/common-utils/utils/creditAccount/sort.d.ts +0 -59
  1004. package/dist/types/common-utils/utils/creditAccount/types.d.ts +0 -22
  1005. package/dist/types/common-utils/utils/index.d.ts +0 -104
  1006. package/dist/types/common-utils/utils/price-math.d.ts +0 -49
  1007. package/dist/types/common-utils/utils/strategies/assets/assets.d.ts +0 -7
  1008. package/dist/types/common-utils/utils/strategies/assets/index.d.ts +0 -2
  1009. package/dist/types/common-utils/utils/strategies/availability/check-boolean.d.ts +0 -4
  1010. package/dist/types/common-utils/utils/strategies/availability/check-degen-nft.d.ts +0 -8
  1011. package/dist/types/common-utils/utils/strategies/availability/index.d.ts +0 -3
  1012. package/dist/types/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.d.ts +0 -21
  1013. package/dist/types/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.d.ts +0 -1
  1014. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.d.ts +0 -14
  1015. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.d.ts +0 -10
  1016. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.d.ts +0 -12
  1017. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +0 -17
  1018. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.d.ts +0 -1
  1019. package/dist/types/common-utils/utils/strategies/credit-managers/index.d.ts +0 -7
  1020. package/dist/types/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.d.ts +0 -6
  1021. package/dist/types/common-utils/utils/strategies/eligibility/index.d.ts +0 -3
  1022. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-eligible.d.ts +0 -16
  1023. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-released.d.ts +0 -4
  1024. package/dist/types/common-utils/utils/strategies/index.d.ts +0 -77
  1025. package/dist/types/common-utils/utils/strategies/leverage/calculate-loss-coefficient.d.ts +0 -4
  1026. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.d.ts +0 -15
  1027. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.d.ts +0 -14
  1028. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.d.ts +0 -1
  1029. package/dist/types/common-utils/utils/strategies/leverage/get-collateral-by-debt.d.ts +0 -5
  1030. package/dist/types/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.d.ts +0 -1
  1031. package/dist/types/common-utils/utils/strategies/leverage/get-factor-from-leverage.d.ts +0 -7
  1032. package/dist/types/common-utils/utils/strategies/leverage/get-leverage-from-factor.d.ts +0 -5
  1033. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-debt.d.ts +0 -24
  1034. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-debt.spec.d.ts +0 -1
  1035. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.d.ts +0 -7
  1036. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.d.ts +0 -1
  1037. package/dist/types/common-utils/utils/strategies/leverage/index.d.ts +0 -11
  1038. package/dist/types/common-utils/utils/strategies/leverage/max-leverage-threshold.d.ts +0 -8
  1039. package/dist/types/common-utils/utils/strategies/leverage/max-leverage.d.ts +0 -12
  1040. package/dist/types/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.d.ts +0 -14
  1041. package/dist/types/common-utils/utils/strategies/lists/get-available-strategies.d.ts +0 -11
  1042. package/dist/types/common-utils/utils/strategies/lists/get-disabled-strategies.d.ts +0 -12
  1043. package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list-core.d.ts +0 -16
  1044. package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list.d.ts +0 -10
  1045. package/dist/types/common-utils/utils/strategies/lists/index.d.ts +0 -4
  1046. package/dist/types/common-utils/utils/strategies/points/get-complex-points-list.d.ts +0 -7
  1047. package/dist/types/common-utils/utils/strategies/points/get-points-info.d.ts +0 -12
  1048. package/dist/types/common-utils/utils/strategies/points/get-points-rates.d.ts +0 -6
  1049. package/dist/types/common-utils/utils/strategies/points/get-strategy-points.d.ts +0 -27
  1050. package/dist/types/common-utils/utils/strategies/points/index.d.ts +0 -5
  1051. package/dist/types/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.d.ts +0 -2
  1052. package/dist/types/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.d.ts +0 -31
  1053. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +0 -31
  1054. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.d.ts +0 -1
  1055. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +0 -26
  1056. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.d.ts +0 -1
  1057. package/dist/types/common-utils/utils/strategies/strategy-info/cm-availability-condition.d.ts +0 -6
  1058. package/dist/types/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.d.ts +0 -22
  1059. package/dist/types/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.d.ts +0 -1
  1060. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-info-core.d.ts +0 -21
  1061. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-info.d.ts +0 -5
  1062. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.d.ts +0 -17
  1063. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.d.ts +0 -31
  1064. package/dist/types/common-utils/utils/strategies/strategy-info/index.d.ts +0 -11
  1065. package/dist/types/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.d.ts +0 -5
  1066. package/dist/types/common-utils/utils/strategies/strategy-info/types.d.ts +0 -113
  1067. package/dist/types/common-utils/utils/strategies/strategy-state/index.d.ts +0 -2
  1068. package/dist/types/common-utils/utils/strategies/strategy-state/is-strategy-disabled.d.ts +0 -7
  1069. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +0 -10
  1070. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.spec.d.ts +0 -1
  1071. package/dist/types/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.d.ts +0 -8
  1072. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +0 -16
  1073. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.d.ts +0 -1
  1074. package/dist/types/common-utils/utils/strategies/tokens/get-native-token-address.d.ts +0 -4
  1075. package/dist/types/common-utils/utils/strategies/tokens/index.d.ts +0 -13
  1076. package/dist/types/common-utils/utils/strategies/tokens/is-activated-token.d.ts +0 -10
  1077. package/dist/types/common-utils/utils/strategies/tokens/is-apy-with-points-exception.d.ts +0 -6
  1078. package/dist/types/common-utils/utils/strategies/tokens/is-collateral-token.d.ts +0 -17
  1079. package/dist/types/common-utils/utils/strategies/tokens/is-collateral-token.spec.d.ts +0 -1
  1080. package/dist/types/common-utils/utils/strategies/tokens/is-forbidden-token.d.ts +0 -9
  1081. package/dist/types/common-utils/utils/strategies/tokens/is-obtainable-token.d.ts +0 -11
  1082. package/dist/types/common-utils/utils/strategies/tokens/is-obtainable-token.spec.d.ts +0 -1
  1083. package/dist/types/common-utils/utils/strategies/tokens/is-usable-token.d.ts +0 -6
  1084. package/dist/types/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.d.ts +0 -20
  1085. package/dist/types/common-utils/utils/strategies/tokens/wrap-token-address.d.ts +0 -5
  1086. package/dist/types/common-utils/utils/strategies/tokens/wrap-token-address.spec.d.ts +0 -1
  1087. package/dist/types/common-utils/utils/strategies/types/chains.d.ts +0 -6
  1088. package/dist/types/common-utils/utils/strategies/types/credit-manager-data-legacy.d.ts +0 -34
  1089. package/dist/types/common-utils/utils/strategies/types/curator-filter.d.ts +0 -5
  1090. package/dist/types/common-utils/utils/strategies/types/index.d.ts +0 -13
  1091. package/dist/types/common-utils/utils/strategies/types/legacy-strategy-data-source.d.ts +0 -7
  1092. package/dist/types/common-utils/utils/strategies/types/points-slices.d.ts +0 -24
  1093. package/dist/types/common-utils/utils/strategies/types/sdk-state.d.ts +0 -17
  1094. package/dist/types/common-utils/utils/strategies/types/strategies-cm-list.d.ts +0 -9
  1095. package/dist/types/common-utils/utils/strategies/types/strategy-data-source.d.ts +0 -22
  1096. package/dist/types/common-utils/utils/strategies/types/strategy-data.d.ts +0 -19
  1097. package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +0 -47
  1098. package/dist/types/common-utils/utils/strategies/types/strategy.d.ts +0 -20
  1099. package/dist/types/common-utils/utils/strategies/types/targetable.d.ts +0 -9
  1100. package/dist/types/common-utils/utils/strategies/types.d.ts +0 -14
  1101. package/dist/types/common-utils/utils/validation/index.d.ts +0 -12
  1102. package/dist/types/common-utils/utils/validation/is-zero-balance.d.ts +0 -4
  1103. package/dist/types/common-utils/utils/validation/validate-balance.d.ts +0 -25
  1104. package/dist/types/common-utils/utils/validation/validate-balance.spec.d.ts +0 -1
  1105. package/dist/types/common-utils/utils/validation/validate-balances.d.ts +0 -13
  1106. package/dist/types/common-utils/utils/validation/validate-balances.spec.d.ts +0 -1
  1107. package/dist/types/common-utils/utils/validation/validate-credit-manager.d.ts +0 -13
  1108. package/dist/types/common-utils/utils/validation/validate-credit-manager.spec.d.ts +0 -1
  1109. package/dist/types/common-utils/utils/validation/validate-hf.d.ts +0 -12
  1110. package/dist/types/common-utils/utils/validation/validate-hf.spec.d.ts +0 -1
  1111. package/dist/types/common-utils/utils/validation/validate-open-account-pool-quota-status.d.ts +0 -10
  1112. package/dist/types/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.d.ts +0 -1
  1113. package/dist/types/common-utils/utils/validation/validate-open-account-pool-status.d.ts +0 -26
  1114. package/dist/types/common-utils/utils/validation/validate-open-account-pool-status.spec.d.ts +0 -1
  1115. package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +0 -25
  1116. package/dist/types/common-utils/utils/validation/validate-open-account.spec.d.ts +0 -1
  1117. package/dist/types/common-utils/utils/validation/validate-quota.d.ts +0 -24
  1118. package/dist/types/common-utils/utils/validation/validate-quota.spec.d.ts +0 -1
  1119. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.d.ts +0 -17
  1120. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.spec.d.ts +0 -1
  1121. package/dist/types/common-utils/utils/validation/validation-types.d.ts +0 -10
  1122. package/dist/types/onchain/accounts/intents/utils/convert-amount.d.ts +0 -13
  1123. package/dist/types/plugins/apy/ApyPlugin.d.ts +0 -59
  1124. package/dist/types/plugins/apy/apy-parser.d.ts +0 -10
  1125. package/dist/types/plugins/apy/constants.d.ts +0 -5
  1126. package/dist/types/plugins/apy/index.d.ts +0 -7
  1127. package/dist/types/plugins/apy/pool-apy-types.d.ts +0 -45
  1128. package/dist/types/plugins/apy/pool-apy-utils.d.ts +0 -77
  1129. package/dist/types/plugins/apy/strategy-data-source.d.ts +0 -21
  1130. package/dist/types/plugins/apy/types.d.ts +0 -64
  1131. package/dist/types/plugins/remote-configs/CustomConfigSource.d.ts +0 -16
  1132. package/dist/types/plugins/remote-configs/RemoteConfigSource.d.ts +0 -35
  1133. package/dist/types/plugins/remote-configs/RemoteConfigsPlugin.d.ts +0 -29
  1134. package/dist/types/plugins/remote-configs/index.d.ts +0 -8
  1135. package/dist/types/plugins/remote-configs/types.d.ts +0 -26
  1136. package/dist/types/preview/preview/applyRWAWrapUnwrap.d.ts +0 -17
  1137. package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +0 -12
  1138. package/dist/types/preview/preview/previewPoolOperation.d.ts +0 -11
  1139. package/dist/types/rewards/apy/index.d.ts +0 -3
  1140. package/dist/types/rewards/apy/output-details.d.ts +0 -99
  1141. package/dist/types/rewards/apy/output.d.ts +0 -25
  1142. package/dist/types/rewards/rewards/api.d.ts +0 -39
  1143. package/dist/types/rewards/rewards/common.d.ts +0 -9
  1144. package/dist/types/rewards/rewards/extra-apy.d.ts +0 -37
  1145. package/dist/types/rewards/rewards/index.d.ts +0 -3
  1146. package/dist/types/rewards/rewards/merkl-api.d.ts +0 -48
  1147. /package/dist/cjs/{common-utils/charts/credit-manager-payload.js → model/analytics.js} +0 -0
  1148. /package/dist/cjs/{common-utils/charts/credit-sessions-payload.js → model/errors.js} +0 -0
  1149. /package/dist/cjs/{common-utils/charts/graph-payload.js → model/withdrawals.js} +0 -0
  1150. /package/dist/cjs/{common-utils/utils/creditAccount → offchain/analytics}/types.js +0 -0
  1151. /package/dist/cjs/{common-utils/utils/strategies/strategy-info → offchain/opportunities}/types.js +0 -0
  1152. /package/dist/cjs/{plugins/apy → offchain/positions}/types.js +0 -0
  1153. /package/dist/cjs/{plugins/remote-configs → onchain/opportunities}/types.js +0 -0
  1154. /package/dist/cjs/{common-utils/charts/pool-payload.js → sdk/analytics/types.js} +0 -0
  1155. /package/dist/cjs/{common-utils/static/migration-config.js → sdk/execute/types.js} +0 -0
  1156. /package/dist/esm/{common-utils/charts/credit-manager-payload.js → model/analytics.js} +0 -0
  1157. /package/dist/esm/{common-utils/charts/credit-sessions-payload.js → model/errors.js} +0 -0
  1158. /package/dist/esm/{common-utils/charts/graph-payload.js → model/withdrawals.js} +0 -0
  1159. /package/dist/esm/{common-utils/utils/creditAccount → offchain/analytics}/types.js +0 -0
  1160. /package/dist/esm/{common-utils/utils/strategies/strategy-info → offchain/opportunities}/types.js +0 -0
  1161. /package/dist/esm/{plugins/apy → offchain/positions}/types.js +0 -0
  1162. /package/dist/esm/{plugins/remote-configs → onchain/opportunities}/types.js +0 -0
  1163. /package/dist/esm/{common-utils/charts/pool-payload.js → sdk/analytics/types.js} +0 -0
  1164. /package/dist/esm/{common-utils/static/migration-config.js → sdk/execute/types.js} +0 -0
@@ -86,6 +86,16 @@ var CreditSuite = class extends require_onchain_base_SDKConstruct.SDKConstruct {
86
86
  return this.creditManager.underlying;
87
87
  }
88
88
  /**
89
+ * Pool underlying token as the shared read model describes it.
90
+ *
91
+ * For RWA markets this is the unwrapped asset, e.g. USDC rather than
92
+ * dcUSDC (the pool's on-chain underlying). Same as
93
+ * {@link MarketSuite.underlyingToken}.
94
+ */
95
+ get underlyingToken() {
96
+ return this.market.underlyingToken;
97
+ }
98
+ /**
89
99
  * Parent market that contains this credit manager
90
100
  */
91
101
  get market() {
@@ -172,6 +182,37 @@ var CreditSuite = class extends require_onchain_base_SDKConstruct.SDKConstruct {
172
182
  };
173
183
  }
174
184
  /**
185
+ * What a liquidation takes off an account, in basis points: the premium the
186
+ * liquidator keeps plus the protocol's own fee, with the suite's expiration
187
+ * already resolved.
188
+ *
189
+ * Not {@link LiquidationFees.liquidationDiscount}, which is the complement of
190
+ * the premium alone (`100% - liquidationPremium`) and says what share of the
191
+ * seized collateral repays the debt.
192
+ */
193
+ totalLiquidationDiscount() {
194
+ const { feeLiquidation, liquidationDiscount } = this.liquidationFees();
195
+ return Number(require_onchain_constants_math.PERCENTAGE_FACTOR) - liquidationDiscount + feeLiquidation;
196
+ }
197
+ /**
198
+ * The market half of every credit operation result, read off this suite: a
199
+ * preview, a projection, the open-strategy walk and a liquidatable-account
200
+ * row all spread it, so the five fields are filled in one place and cannot
201
+ * drift apart between the halves of the SDK.
202
+ *
203
+ * The curator comes from the same getter {@link strategyOpportunity} reads, so
204
+ * a result and the opportunity beside it name one entity.
205
+ */
206
+ creditOperationMarket() {
207
+ return {
208
+ creditManager: this.creditManager.address,
209
+ name: this.strategyName ?? this.underlyingToken.symbol,
210
+ underlyingToken: this.underlyingToken,
211
+ curator: this.market.curator,
212
+ liquidationDiscount: this.totalLiquidationDiscount()
213
+ };
214
+ }
215
+ /**
175
216
  * Whether this suite can be used right now. A paused pool blocks borrowing,
176
217
  * so the suite is unusable even when its own facade is live.
177
218
  */
@@ -222,17 +263,41 @@ var CreditSuite = class extends require_onchain_base_SDKConstruct.SDKConstruct {
222
263
  get strategyName() {
223
264
  const collateral = this.strategyTargetCollateral;
224
265
  if (!collateral) return;
225
- return require_onchain_market_strategyName.strategyName(this.tokensMeta.mustGetToken(collateral), this.market.underlyingToken);
266
+ return require_onchain_market_strategyName.strategyName(this.tokensMeta.mustGetToken(collateral), this.underlyingToken);
267
+ }
268
+ /**
269
+ * Collateral token an existing credit account in this suite is a strategy
270
+ * in. Same as {@link StrategyPosition.targetCollateral}.
271
+ *
272
+ * Resolution, in order:
273
+ * 1. a hardcoded per-account override, when present;
274
+ * 2. {@link strategyTargetCollateral};
275
+ * 3. `null` when neither can be resolved.
276
+ */
277
+ accountTargetCollateral(creditAccount) {
278
+ const addr = require_onchain_chain_chains.getAccountTargetCollateral(creditAccount, this.chainId) ?? this.strategyTargetCollateral;
279
+ return addr ? this.tokensMeta.mustGetToken(addr) : null;
280
+ }
281
+ /**
282
+ * Display name of an existing credit account in this suite, e.g.
283
+ * `"wstETH / WETH"`. Same as {@link StrategyPosition.name}.
284
+ *
285
+ * {@link accountTargetCollateral} over the underlying, or the underlying
286
+ * symbol when no target can be resolved.
287
+ */
288
+ accountStrategyName(creditAccount) {
289
+ const target = this.accountTargetCollateral(creditAccount);
290
+ return target ? require_onchain_market_strategyName.strategyName(target, this.underlyingToken) : this.underlyingToken.symbol;
226
291
  }
227
292
  /**
228
293
  * Describes this suite's leveraged strategy as the shared read model does,
229
- * or `undefined` when {@link strategyTargetCollateral} cannot be resolved or
230
- * {@link maxBorrowAmount} is at or below {@link MIN_STRATEGY_BORROW_AMOUNT}.
294
+ * or `undefined` when credit suite does not offer a strategy opportunity.
231
295
  */
232
296
  strategyOpportunity() {
233
297
  if (this.maxBorrowAmount <= MIN_STRATEGY_BORROW_AMOUNT) return;
234
298
  const collateral = this.strategyTargetCollateral;
235
299
  if (!collateral) return;
300
+ if (!require_onchain_market_credit_collateralUtils.isStrategyCollateral(this.#strategyCollateralProps(collateral), true)) return;
236
301
  const { market, creditManager: cm } = this;
237
302
  const { pool } = market.pool;
238
303
  const oracle = market.priceOracle;
@@ -245,9 +310,9 @@ var CreditSuite = class extends require_onchain_base_SDKConstruct.SDKConstruct {
245
310
  chainId: this.chainId,
246
311
  creditManager: cm.address,
247
312
  targetCollateral: this.tokensMeta.mustGetToken(collateral),
248
- name: this.strategyName ?? this.market.underlyingToken.symbol,
313
+ name: this.strategyName ?? this.underlyingToken.symbol,
249
314
  curator: market.curator,
250
- underlyingToken: market.underlyingToken,
315
+ underlyingToken: this.underlyingToken,
251
316
  totalBorrowed: oracle.toAmount(pool.underlying, borrowed),
252
317
  allowedDepositTokens: this.#allowedDepositTokens(collateral),
253
318
  paused: this.isPaused,
@@ -327,8 +392,7 @@ var CreditSuite = class extends require_onchain_base_SDKConstruct.SDKConstruct {
327
392
  */
328
393
  #allowedDepositTokens(targetCollateral) {
329
394
  const unwrappedUnderlying = this.market.unwrappedUnderlying;
330
- const contractUnderlying = this.underlying;
331
- const skip = (token) => (0, viem.isAddressEqual)(token, unwrappedUnderlying) || (0, viem.isAddressEqual)(token, contractUnderlying) || (0, viem.isAddressEqual)(token, targetCollateral);
395
+ const skip = (token) => this.market.isUnderlyingLike(token) || (0, viem.isAddressEqual)(token, targetCollateral);
332
396
  return [
333
397
  unwrappedUnderlying,
334
398
  targetCollateral,
@@ -67,11 +67,11 @@ function pickStrategyTargetCollateral(tokens) {
67
67
  * nothing but its underlying, or nothing the oracle can price.
68
68
  **/
69
69
  function dominantCollateral(account, market) {
70
- let bestValue = 0;
70
+ let bestValue = 0n;
71
71
  let dominant;
72
72
  for (const t of account.tokens) {
73
73
  if ((0, viem.isAddressEqual)(t.token, account.underlying) || (t.mask & account.enabledTokensMask) === 0n || t.balance <= 10n) continue;
74
- const value = market.priceOracle.safeUsdValue(t.token, t.balance) ?? 0;
74
+ const value = market.priceOracle.safeConvertToUSD(t.token, t.balance).value;
75
75
  if (value > bestValue) {
76
76
  bestValue = value;
77
77
  dominant = t.token;
@@ -95,6 +95,7 @@ const require_onchain_market_credit_collateralUtils = require("./credit/collater
95
95
  const require_onchain_market_credit_CreditSuite = require("./credit/CreditSuite.js");
96
96
  const require_onchain_market_credit_expectedBalanceDeltas = require("./credit/expectedBalanceDeltas.js");
97
97
  require("./credit/index.js");
98
+ const require_onchain_market_oracle_collateralPriceInUnderlying = require("./oracle/collateralPriceInUnderlying.js");
98
99
  const require_onchain_market_pricefeeds_isUpdatablePriceFeed = require("./pricefeeds/isUpdatablePriceFeed.js");
99
100
  const require_onchain_market_pricefeeds_PriceFeedRef = require("./pricefeeds/PriceFeedRef.js");
100
101
  const require_onchain_market_pricefeeds_AbstractPriceFeed = require("./pricefeeds/AbstractPriceFeed.js");
@@ -119,6 +120,7 @@ const require_onchain_market_pricefeeds_YearnPriceFeed = require("./pricefeeds/Y
119
120
  const require_onchain_market_pricefeeds_ZeroPriceFeed = require("./pricefeeds/ZeroPriceFeed.js");
120
121
  const require_onchain_market_pricefeeds_PriceFeedsRegister = require("./pricefeeds/PriceFeedsRegister.js");
121
122
  require("./pricefeeds/index.js");
123
+ const require_onchain_market_oracle_errors = require("./oracle/errors.js");
122
124
  const require_onchain_market_oracle_PriceOracleV310Contract = require("./oracle/PriceOracleV310Contract.js");
123
125
  const require_onchain_market_oracle_createPriceOracle = require("./oracle/createPriceOracle.js");
124
126
  require("./oracle/index.js");
@@ -128,7 +130,6 @@ const require_onchain_market_pool_PoolV310Contract = require("./pool/PoolV310Con
128
130
  const require_onchain_market_pool_PoolSuite = require("./pool/PoolSuite.js");
129
131
  require("./pool/index.js");
130
132
  const require_onchain_market_MarketSuite = require("./MarketSuite.js");
131
- const require_onchain_market_zapper_errors = require("./zapper/errors.js");
132
133
  const require_onchain_market_zapper_ZapperContract = require("./zapper/ZapperContract.js");
133
134
  const require_onchain_market_zapper_IERC20ZapperContract = require("./zapper/IERC20ZapperContract.js");
134
135
  const require_onchain_market_zapper_IETHZapperContract = require("./zapper/IETHZapperContract.js");
@@ -232,7 +233,6 @@ exports.TraderJoeRouterAdapterContract = require_onchain_market_adapters_contrac
232
233
  exports.UniswapV2AdapterContract = require_onchain_market_adapters_contracts_UniswapV2AdapterContract.UniswapV2AdapterContract;
233
234
  exports.UniswapV3AdapterContract = require_onchain_market_adapters_contracts_UniswapV3AdapterContract.UniswapV3AdapterContract;
234
235
  exports.UniswapV4AdapterContract = require_onchain_market_adapters_contracts_UniswapV4AdapterContract.UniswapV4AdapterContract;
235
- exports.UnsupportedZapperFunctionError = require_onchain_market_zapper_errors.UnsupportedZapperFunctionError;
236
236
  exports.UpshiftVaultAdapterContract = require_onchain_market_adapters_contracts_UpshiftVaultAdapterContract.UpshiftVaultAdapterContract;
237
237
  exports.VelodromeV2RouterAdapterContract = require_onchain_market_adapters_contracts_VelodromeV2AdapterContract.VelodromeV2RouterAdapterContract;
238
238
  exports.WstETHPriceFeedContract = require_onchain_market_pricefeeds_WstETHPriceFeed.WstETHPriceFeedContract;
@@ -255,6 +255,7 @@ exports.calcQuotaRate = require_onchain_market_math.calcQuotaRate;
255
255
  exports.calcUtilization = require_onchain_market_math.calcUtilization;
256
256
  exports.calcUtilizationRaw = require_onchain_market_math.calcUtilizationRaw;
257
257
  exports.classifyCurveOperation = require_onchain_market_adapters_transferHelpers.classifyCurveOperation;
258
+ exports.collateralPriceInUnderlying = require_onchain_market_oracle_collateralPriceInUnderlying.collateralPriceInUnderlying;
258
259
  exports.createAdapter = require_onchain_market_adapters_createAdapter.createAdapter;
259
260
  exports.createPriceOracle = require_onchain_market_oracle_createPriceOracle.createPriceOracle;
260
261
  exports.createZapper = require_onchain_market_zapper_createZapper.createZapper;
@@ -360,4 +361,5 @@ exports.rewardsFromTransfers = require_onchain_market_adapters_transferHelpers.r
360
361
  exports.strategyName = require_onchain_market_strategyName.strategyName;
361
362
  exports.swapFromTransfers = require_onchain_market_adapters_transferHelpers.swapFromTransfers;
362
363
  exports.toNetTransfers = require_onchain_market_adapters_transferHelpers.toNetTransfers;
364
+ exports.unpriceableTokenError = require_onchain_market_oracle_errors.unpriceableTokenError;
363
365
  exports.usdToNumber = require_onchain_market_math.usdToNumber;
@@ -43,16 +43,20 @@ const USD_DUST_THRESHOLD = 1000n;
43
43
  /**
44
44
  * Converts a USD value in the oracle's 8-decimal fixed point to a float.
45
45
  *
46
- * Values below {@link USD_DUST_THRESHOLD} report as `0`.
46
+ * Values whose magnitude is below {@link USD_DUST_THRESHOLD} report as `0`.
47
+ * The threshold is weighed on the magnitude because the deltas the model
48
+ * carries — a debt repaid, a balance sold — are negative, and dust is dust in
49
+ * either direction.
47
50
  *
48
51
  * @example
49
52
  * ```ts
50
53
  * // usd: $1500.50 in 8-decimal fixed point
51
54
  * usdToNumber(150_050_000_000n) // 1500.5
55
+ * usdToNumber(-150_050_000_000n) // -1500.5
52
56
  * ```
53
57
  **/
54
58
  function usdToNumber(usd) {
55
- return usd < USD_DUST_THRESHOLD ? 0 : Number(usd) / Number(require_onchain_constants_math.PRICE_DECIMALS);
59
+ return (usd < 0n ? -usd : usd) < USD_DUST_THRESHOLD ? 0 : Number(usd) / Number(require_onchain_constants_math.PRICE_DECIMALS);
56
60
  }
57
61
  /**
58
62
  * Share of capital currently borrowed, in basis points. Returns `0` when there
@@ -163,24 +167,36 @@ function calcNetStrategyApy(opportunity, totalCollateralApy, leverage, mode = "s
163
167
  **/
164
168
  const MAX_LEVERAGE_BUFFER_BPS = 500;
165
169
  /**
166
- * Highest total-value leverage a liquidation threshold allows, floored:
167
- * `floor((100% − buffer) / (100% − liquidationThreshold))`. At HF = 1, debt is
168
- * `liquidationThreshold × totalValue`, leaving `1 − liquidationThreshold` of
169
- * equity per unit of exposure; the {@link MAX_LEVERAGE_BUFFER_BPS} buffer
170
- * keeps the maxed position slightly away from that boundary.
170
+ * Highest total-value leverage a liquidation threshold allows, floored.
171
+ *
172
+ * At HF = 1, debt is `liquidationThreshold × totalValue`, leaving
173
+ * `1 − liquidationThreshold` of equity per unit of exposure; a maxed position
174
+ * has to stay some way off that boundary. Given a `targetHF`, that distance is
175
+ * solved for — `HF = liquidationThreshold × L / (L − 1)` inverts to
176
+ * `L = targetHF / (targetHF − liquidationThreshold)`.
177
+ *
178
+ * Without one it falls back on a flat {@link MAX_LEVERAGE_BUFFER_BPS}, which
179
+ * under-buffers as the threshold rises — at 95% it allows 19x, or HF ≈ 1.0028.
180
+ * That branch is scaffolding, kept so this parameter moves no number before
181
+ * the callers name a target, and goes away with the constant.
182
+ *
183
+ * @param targetHF - Health factor the maxed position should leave, in basis
184
+ * points. Omitted keeps the legacy buffer.
171
185
  *
172
186
  * @example
173
187
  * ```ts
174
188
  * // liquidationThreshold: 9000 bps = 90%
175
- * calcMaxLeverage(9000) // floor((1 − 0.05) / (1 − 0.9)) = 9x total exposure
189
+ * calcMaxLeverage(9000) // floor((1 − 0.05) / (1 − 0.9)) = 9x
190
+ * calcMaxLeverage(9000, 10100) // floor(1.01 / (1.01 − 0.9)) = 9x
176
191
  * ```
177
- * @throws If `liquidationThreshold` is 100% or more, which would make
178
- * leverage unbounded.
192
+ * @throws If `liquidationThreshold` is 100% or more, or reaches a named
193
+ * `targetHF` — either way no leverage clears the bar.
179
194
  **/
180
- function calcMaxLeverage(liquidationThreshold) {
195
+ function calcMaxLeverage(liquidationThreshold, targetHF) {
181
196
  if (liquidationThreshold >= FULL) throw new Error("cannot compute max leverage: liquidation threshold is 100% or more");
182
- const leverage = Math.floor((FULL - 500) / (FULL - liquidationThreshold));
183
- return Math.max(leverage, 1);
197
+ if (targetHF === void 0) return Math.max(Math.floor((FULL - 500) / (FULL - liquidationThreshold)), 1);
198
+ if (liquidationThreshold >= targetHF) throw new Error("cannot compute max leverage: liquidation threshold reaches the target health factor");
199
+ return Math.max(Math.floor(targetHF / (targetHF - liquidationThreshold)), 1);
184
200
  }
185
201
  /**
186
202
  * Converts a credit account's health factor from the 18-decimal fixed point the
@@ -1,6 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_onchain_utils_AddressMap = require("../../utils/AddressMap.js");
3
3
  const require_onchain_utils_AddressSet = require("../../utils/AddressSet.js");
4
+ const require_onchain_utils_bigint_math = require("../../utils/bigint-math.js");
4
5
  const require_onchain_constants_address_provider = require("../../constants/address-provider.js");
5
6
  const require_onchain_constants_addresses = require("../../constants/addresses.js");
6
7
  require("../../constants/math.js");
@@ -11,10 +12,13 @@ require("../../utils/index.js");
11
12
  const require_onchain_base_BaseContract = require("../../base/BaseContract.js");
12
13
  require("../../base/index.js");
13
14
  const require_onchain_market_math = require("../math.js");
15
+ const require_model_result = require("../../../model/result.js");
16
+ require("../../../model/index.js");
14
17
  const require_abi_compressors_priceFeedCompressor = require("../../../abi/compressors/priceFeedCompressor.js");
15
18
  const require_onchain_market_pricefeeds_PriceFeedRef = require("../pricefeeds/PriceFeedRef.js");
16
19
  const require_onchain_market_pricefeeds_getRawPriceUpdates = require("../pricefeeds/getRawPriceUpdates.js");
17
20
  require("../pricefeeds/index.js");
21
+ const require_onchain_market_oracle_errors = require("./errors.js");
18
22
  const require_onchain_market_oracle_PriceFeedAnswerMap = require("./PriceFeedAnswerMap.js");
19
23
  let viem = require("viem");
20
24
  let date_fns = require("date-fns");
@@ -109,7 +113,7 @@ var PriceOracleBaseContract = class extends require_onchain_base_BaseContract.Ba
109
113
  * {@inheritDoc IPriceOracleContract.convert}
110
114
  **/
111
115
  convert(from, to, amount, reserve = false) {
112
- if (from === to) return amount;
116
+ if ((0, viem.isAddressEqual)(from, to)) return amount;
113
117
  const fromToken = this.#priceableToken(from);
114
118
  const toToken = this.#priceableToken(to);
115
119
  const fromPrice = reserve ? this.reservePrice(fromToken) : this.mainPrice(fromToken);
@@ -142,10 +146,13 @@ var PriceOracleBaseContract = class extends require_onchain_base_BaseContract.Ba
142
146
  **/
143
147
  safeConvert(from, to, amount) {
144
148
  try {
145
- return this.convert(from, to, amount);
146
- } catch (e) {
147
- this.logger?.debug(`cannot convert ${this.labelAddress(from)} to ${this.labelAddress(to)}: ${e}`);
148
- return null;
149
+ return { value: this.convert(from, to, amount) };
150
+ } catch {
151
+ try {
152
+ return { value: this.convert(from, to, amount, true) };
153
+ } catch {
154
+ return require_model_result.safeValue(0n, require_onchain_market_oracle_errors.unpriceableTokenError(from));
155
+ }
149
156
  }
150
157
  }
151
158
  /**
@@ -153,26 +160,72 @@ var PriceOracleBaseContract = class extends require_onchain_base_BaseContract.Ba
153
160
  **/
154
161
  safeConvertToUSD(token, amount) {
155
162
  try {
156
- return this.convertToUSD(token, amount);
157
- } catch (e) {
158
- this.logger?.debug(`cannot price ${this.labelAddress(token)}: ${e}`);
159
- return null;
163
+ return { value: this.convertToUSD(token, amount) };
164
+ } catch {
165
+ try {
166
+ return { value: this.convertToUSD(token, amount, true) };
167
+ } catch {
168
+ return require_model_result.safeValue(0n, require_onchain_market_oracle_errors.unpriceableTokenError(token));
169
+ }
170
+ }
171
+ }
172
+ /**
173
+ * {@inheritDoc IPriceOracleContract.safeConvertMinUSD}
174
+ **/
175
+ safeConvertMinUSD(token, amount) {
176
+ let main;
177
+ try {
178
+ main = this.convertToUSD(token, amount);
179
+ } catch {
180
+ return require_model_result.safeValue(0n, require_onchain_market_oracle_errors.unpriceableTokenError(token));
181
+ }
182
+ let feedToken = token;
183
+ if ((0, viem.isAddressEqual)(token, "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE")) try {
184
+ feedToken = this.sdk.addressProvider.getAddress(require_onchain_constants_address_provider.AP_WETH_TOKEN, 0);
185
+ } catch {}
186
+ if (!this.reservePriceFeeds.has(feedToken)) return { value: 0n };
187
+ try {
188
+ return { value: require_onchain_utils_bigint_math.BigIntMath.min(main, this.convertToUSD(token, amount, true)) };
189
+ } catch {
190
+ return require_model_result.safeValue(0n, require_onchain_market_oracle_errors.unpriceableTokenError(token));
191
+ }
192
+ }
193
+ /**
194
+ * {@inheritDoc IPriceOracleContract.safeConvertFromUSD}
195
+ **/
196
+ safeConvertFromUSD(token, amount) {
197
+ try {
198
+ return { value: this.convertFromUSD(token, amount) };
199
+ } catch {
200
+ try {
201
+ return { value: this.convertFromUSD(token, amount, true) };
202
+ } catch {
203
+ return require_model_result.safeValue(0n, require_onchain_market_oracle_errors.unpriceableTokenError(token));
204
+ }
160
205
  }
161
206
  }
162
207
  /**
163
- * {@inheritDoc IPriceOracleContract.safeUsdValue}
208
+ * {@inheritDoc IPriceOracleContract.safeConvertAssets}
164
209
  **/
165
- safeUsdValue(token, amount) {
166
- const usd = this.safeConvertToUSD(token, amount);
167
- return usd === null ? null : require_onchain_market_math.usdToNumber(usd);
210
+ safeConvertAssets(assets, to) {
211
+ let value = 0n;
212
+ let error;
213
+ for (const { token, balance } of assets) {
214
+ if (balance <= 10n) continue;
215
+ const converted = this.safeConvert(token, to, balance);
216
+ value += converted.value;
217
+ error ??= converted.error;
218
+ }
219
+ return require_model_result.safeValue(value, error);
168
220
  }
169
221
  /**
170
222
  * {@inheritDoc IPriceOracleContract.toAmount}
171
223
  **/
172
224
  toAmount = (token, value) => {
225
+ const priced = this.safeConvertToUSD(token, value);
173
226
  return {
174
227
  value,
175
- valueUsd: this.safeUsdValue(token, value)
228
+ valueUsd: priced.error ? null : require_onchain_market_math.usdToNumber(priced.value)
176
229
  };
177
230
  };
178
231
  /**
@@ -0,0 +1,215 @@
1
+ const require_abi_310_generated = require("../../../abi/310/generated.js");
2
+ const require_onchain_chain_chains = require("../../chain/chains.js");
3
+ require("../../chain/index.js");
4
+ require("../../constants/address-provider.js");
5
+ require("../../constants/math.js");
6
+ require("../../constants/index.js");
7
+ const require_onchain_utils_formatter = require("../../utils/formatter.js");
8
+ require("../../utils/index.js");
9
+ const require_onchain_base_ChainContractsRegister = require("../../base/ChainContractsRegister.js");
10
+ require("../../base/index.js");
11
+ const require_onchain_market_pricefeeds_PriceFeedRef = require("../pricefeeds/PriceFeedRef.js");
12
+ require("../pricefeeds/index.js");
13
+ const require_onchain_market_oracle_PriceOracleBaseContract = require("./PriceOracleBaseContract.js");
14
+ let viem = require("viem");
15
+ //#region src/onchain/market/oracle/TestPriceOracle.mock.ts
16
+ /**
17
+ * Well-known mainnet tokens for tests. The oracle prefills their metadata;
18
+ * a seed can then be as small as `{ price: 2000 }`.
19
+ **/
20
+ const MockTokens = {
21
+ WETH: (0, viem.getAddress)("0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2"),
22
+ USDC: (0, viem.getAddress)("0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"),
23
+ DAI: (0, viem.getAddress)("0x6B175474E89094C44Da98b954EedeAC495271d0F"),
24
+ cbETH: (0, viem.getAddress)("0xBe9895146f7AF43049ca1c1AE358B0541Ea49704"),
25
+ dcUSDC: (0, viem.getAddress)("0x50A9C808cd114E8fEA72f03aE2B1A8825677D56D"),
26
+ ACRED: (0, viem.getAddress)("0x17418038ecF73BA4026c4f428547BF099706F27B"),
27
+ srpACRED_USDC: (0, viem.getAddress)("0xe4a38b653B2580C9D72a50F190Ddd6E2d2D2a412")
28
+ };
29
+ const MOCK_TOKEN_META = {
30
+ [MockTokens.WETH]: {
31
+ decimals: 18,
32
+ symbol: "WETH",
33
+ name: "Wrapped Ether"
34
+ },
35
+ [MockTokens.USDC]: {
36
+ decimals: 6,
37
+ symbol: "USDC",
38
+ name: "USD Coin"
39
+ },
40
+ [MockTokens.DAI]: {
41
+ decimals: 18,
42
+ symbol: "DAI",
43
+ name: "Dai Stablecoin"
44
+ },
45
+ [MockTokens.cbETH]: {
46
+ decimals: 18,
47
+ symbol: "cbETH",
48
+ name: "Coinbase Wrapped Staked ETH"
49
+ },
50
+ [MockTokens.dcUSDC]: {
51
+ decimals: 6,
52
+ symbol: "dcUSDC",
53
+ name: "Default compliant USD Coin"
54
+ },
55
+ [MockTokens.ACRED]: {
56
+ decimals: 6,
57
+ symbol: "ACRED",
58
+ name: "Apollo Diversified Credit Securitize Fund"
59
+ },
60
+ [MockTokens.srpACRED_USDC]: {
61
+ decimals: 6,
62
+ symbol: "srpACRED_USDC",
63
+ name: "Securitize pending redemption Apollo Diversified Credit Securitize Fund to USD Coin"
64
+ }
65
+ };
66
+ const TEST_ORACLE_ADDRESS = (0, viem.getAddress)("0x040ac1e000000000000000000000000000000310");
67
+ const FAILED_ANSWER = {
68
+ price: 0n,
69
+ success: false,
70
+ updatedAt: 0n
71
+ };
72
+ /**
73
+ * Register whose client rejects any RPC request: the oracle never talks to a
74
+ * node. `addressProvider.getAddress` answers `AP_WETH_TOKEN` with mainnet WETH
75
+ * so `#priceableToken` and `safeConvertMinUSD` exercise their real native
76
+ * branches.
77
+ **/
78
+ var TestOracleSdk = class extends require_onchain_base_ChainContractsRegister.ChainContractsRegister {
79
+ addressProvider = { getAddress: (contract, version) => {
80
+ if (contract === "WETH_TOKEN") return MockTokens.WETH;
81
+ throw new Error(`Address ${contract}, version: ${version} not found`);
82
+ } };
83
+ priceFeeds = { generatePriceFeedsUpdateTxs: () => {
84
+ throw new Error("TestPriceOracle: no priceFeeds");
85
+ } };
86
+ };
87
+ /**
88
+ * A real {@link PriceOracleBaseContract} seeded from plain records, for tests.
89
+ *
90
+ * Conversion, safe-price fallback, and native-through-WETH all run the
91
+ * production code. Feed-tree methods (`priceFeedData`, `priceUpdatesFor*`, …)
92
+ * are not wired and throw if touched.
93
+ **/
94
+ var TestPriceOracle = class extends require_onchain_market_oracle_PriceOracleBaseContract.PriceOracleBaseContract {
95
+ constructor(tokens = {}) {
96
+ const register = new TestOracleSdk((0, viem.createPublicClient)({
97
+ chain: require_onchain_chain_chains.getChain("Mainnet"),
98
+ transport: (0, viem.custom)({ request: async () => {
99
+ throw new Error("not implemented");
100
+ } })
101
+ }));
102
+ super(register, {
103
+ abi: require_abi_310_generated.iPriceOracleV310Abi,
104
+ addr: TEST_ORACLE_ADDRESS,
105
+ name: "TestPriceOracle"
106
+ }, {
107
+ priceFeedMap: [],
108
+ priceFeedTree: []
109
+ });
110
+ for (const [token, meta] of Object.entries(MOCK_TOKEN_META)) {
111
+ const addr = (0, viem.getAddress)(token);
112
+ this.register.tokensMeta.upsert(addr, {
113
+ addr,
114
+ ...meta
115
+ });
116
+ }
117
+ for (const [token, cfg] of Object.entries(tokens)) this.addToken(token, cfg);
118
+ }
119
+ /**
120
+ * Registers token meta and optional feed answers. Chainable, like all
121
+ * modifiers.
122
+ **/
123
+ addToken(token, cfg) {
124
+ const addr = (0, viem.getAddress)(token);
125
+ const known = MOCK_TOKEN_META[addr];
126
+ const symbol = cfg.symbol ?? known?.symbol ?? `T_${addr.slice(2, 8)}`;
127
+ this.register.tokensMeta.upsert(addr, {
128
+ addr,
129
+ symbol,
130
+ name: cfg.name ?? known?.name ?? symbol,
131
+ decimals: cfg.decimals ?? known?.decimals ?? 18
132
+ });
133
+ if (cfg.price !== void 0) this.setMainPrice(addr, cfg.price);
134
+ if (cfg.reservePrice !== void 0) this.setReservePrice(addr, cfg.reservePrice);
135
+ return this;
136
+ }
137
+ setMainPrice(token, price) {
138
+ this.#setAnswer(token, "main", rawPrice(price));
139
+ return this;
140
+ }
141
+ setReservePrice(token, price) {
142
+ this.#setAnswer(token, "reserve", rawPrice(price));
143
+ return this;
144
+ }
145
+ /**
146
+ * Feed stays configured, its answer failed — {@link PriceFeedAnswerMap.price}
147
+ * throws. Distinct from {@link removeMainFeed}.
148
+ **/
149
+ failMainAnswer(token) {
150
+ this.#failAnswer(token, "main");
151
+ return this;
152
+ }
153
+ /**
154
+ * Feed stays configured, its answer failed. Distinct from
155
+ * {@link removeReserveFeed}: `safeConvertMinUSD` treats a present-but-failed
156
+ * reserve feed as an error, and a missing one as an untrusted 0.
157
+ **/
158
+ failReserveAnswer(token) {
159
+ this.#failAnswer(token, "reserve");
160
+ return this;
161
+ }
162
+ /**
163
+ * No main feed at all: distinct from a failed answer.
164
+ **/
165
+ removeMainFeed(token) {
166
+ this.mainPriceFeeds.delete(token);
167
+ this.mainPrices.delete(token);
168
+ return this;
169
+ }
170
+ /**
171
+ * No reserve feed at all: distinct from a failed answer, and what
172
+ * `safeConvertMinUSD` treats as an untrusted token (value 0, no error).
173
+ **/
174
+ removeReserveFeed(token) {
175
+ this.reservePriceFeeds.delete(token);
176
+ this.reservePrices.delete(token);
177
+ return this;
178
+ }
179
+ async updateAndConvert(_from, _to, _amount) {
180
+ throw new Error("TestPriceOracle: updateAndConvert needs a node");
181
+ }
182
+ #setAnswer(token, kind, price) {
183
+ this.#ensureFeed(token, kind);
184
+ this.#answers(kind).upsert(token, {
185
+ price,
186
+ success: true,
187
+ updatedAt: 0n
188
+ });
189
+ }
190
+ #failAnswer(token, kind) {
191
+ this.#ensureFeed(token, kind);
192
+ this.#answers(kind).upsert(token, FAILED_ANSWER);
193
+ }
194
+ #ensureFeed(token, kind) {
195
+ const feeds = kind === "main" ? this.mainPriceFeeds : this.reservePriceFeeds;
196
+ if (!feeds.has(token)) feeds.upsert(token, new require_onchain_market_pricefeeds_PriceFeedRef.PriceFeedRef(this.register, feedAddr(token, kind), 0));
197
+ }
198
+ #answers(kind) {
199
+ return kind === "main" ? this.mainPrices : this.reservePrices;
200
+ }
201
+ };
202
+ /** Human USD → 8-decimal fixed point; bigint passes through. */
203
+ function rawPrice(price) {
204
+ return typeof price === "bigint" ? price : require_onchain_utils_formatter.toBN(String(price), 8);
205
+ }
206
+ /** Deterministic unused address per token feed; never resolved. */
207
+ function feedAddr(token, kind) {
208
+ const bytes = (0, viem.hexToBytes)((0, viem.getAddress)(token));
209
+ bytes[0] = kind === "main" ? 254 : 253;
210
+ return (0, viem.getAddress)((0, viem.bytesToHex)(bytes));
211
+ }
212
+ //#endregion
213
+ exports.MockTokens = MockTokens;
214
+ exports.TEST_ORACLE_ADDRESS = TEST_ORACLE_ADDRESS;
215
+ exports.TestPriceOracle = TestPriceOracle;
@@ -0,0 +1,27 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_onchain_constants_math = require("../../constants/math.js");
3
+ //#region src/onchain/market/oracle/collateralPriceInUnderlying.ts
4
+ /**
5
+ * What one unit of `collateral` costs in `underlying` right now, in the
6
+ * oracle's 8-decimal (`PRICE_DECIMALS`) fixed point — the scale and the
7
+ * denomination `calcLiquidationPrice` answers in, so the two figures are read
8
+ * as a pair.
9
+ *
10
+ * Both sides come from the oracle's **main** feeds: this is the price the
11
+ * market quotes, not the conservative one a hand-over is weighed at.
12
+ *
13
+ * `null` when the oracle cannot answer for either token, or prices the
14
+ * underlying at zero — a screen shows a gap rather than a number derived from
15
+ * a missing feed.
16
+ **/
17
+ function collateralPriceInUnderlying(oracle, collateral, underlying) {
18
+ try {
19
+ const underlyingPrice = oracle.mainPrice(underlying);
20
+ if (underlyingPrice <= 0n) return null;
21
+ return oracle.mainPrice(collateral) * require_onchain_constants_math.PRICE_DECIMALS / underlyingPrice;
22
+ } catch {
23
+ return null;
24
+ }
25
+ }
26
+ //#endregion
27
+ exports.collateralPriceInUnderlying = collateralPriceInUnderlying;
@@ -0,0 +1,14 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/onchain/market/oracle/errors.ts
3
+ /**
4
+ * Builds an {@link UnpriceableTokenError} for `token`.
5
+ **/
6
+ function unpriceableTokenError(token) {
7
+ return {
8
+ code: "unpriceableToken",
9
+ message: `cannot price token ${token}`,
10
+ token
11
+ };
12
+ }
13
+ //#endregion
14
+ exports.unpriceableTokenError = unpriceableTokenError;
@@ -1,6 +1,10 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_onchain_market_oracle_collateralPriceInUnderlying = require("./collateralPriceInUnderlying.js");
3
+ const require_onchain_market_oracle_errors = require("./errors.js");
2
4
  const require_onchain_market_oracle_PriceOracleV310Contract = require("./PriceOracleV310Contract.js");
3
5
  const require_onchain_market_oracle_createPriceOracle = require("./createPriceOracle.js");
4
6
  require("./types.js");
5
7
  exports.PriceOracleV310Contract = require_onchain_market_oracle_PriceOracleV310Contract.PriceOracleV310Contract;
8
+ exports.collateralPriceInUnderlying = require_onchain_market_oracle_collateralPriceInUnderlying.collateralPriceInUnderlying;
6
9
  exports.createPriceOracle = require_onchain_market_oracle_createPriceOracle.createPriceOracle;
10
+ exports.unpriceableTokenError = require_onchain_market_oracle_errors.unpriceableTokenError;