@gearbox-protocol/sdk 16.0.0-next.9 → 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 (1153) 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 -5
  32. package/dist/cjs/onchain/accounts/intents/guards.js +55 -50
  33. package/dist/cjs/onchain/accounts/intents/index.js +87 -32
  34. package/dist/cjs/onchain/accounts/intents/leverage-band.js +70 -0
  35. package/dist/cjs/onchain/accounts/intents/math.js +15 -22
  36. package/dist/cjs/onchain/accounts/intents/maxWithdrawCollateral.js +10 -21
  37. package/dist/cjs/onchain/accounts/intents/open-strategy.js +28 -27
  38. package/dist/cjs/onchain/accounts/intents/plan.js +27 -41
  39. package/dist/cjs/onchain/accounts/intents/realize.js +101 -63
  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/utils/adjust-state-to-snapshot.js +8 -5
  51. package/dist/cjs/onchain/accounts/intents/utils/common.js +2 -2
  52. package/dist/cjs/onchain/accounts/intents/utils/credit-account-slice.js +5 -5
  53. package/dist/cjs/onchain/accounts/intents/utils/index.js +4 -2
  54. package/dist/cjs/onchain/accounts/intents/utils/pick-token.js +2 -2
  55. package/dist/cjs/onchain/accounts/intents/utils/price-impact.js +99 -0
  56. package/dist/cjs/onchain/accounts/intents/utils/quotas-for-update.js +3 -3
  57. package/dist/cjs/onchain/accounts/intents/utils/router-path.js +100 -42
  58. package/dist/cjs/onchain/accounts/intents/view.js +7 -6
  59. package/dist/cjs/onchain/accounts/liquidations/LiquidationsService.js +8 -8
  60. package/dist/cjs/onchain/accounts/liquidations/skipLiquidatableAccount.js +12 -0
  61. package/dist/cjs/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.js +3 -3
  62. package/dist/cjs/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +13 -7
  63. package/dist/cjs/onchain/accounts/withdrawal-compressor/errors.js +0 -19
  64. package/dist/cjs/onchain/accounts/withdrawal-compressor/index.js +1 -2
  65. package/dist/cjs/onchain/chain/chains.js +9 -3
  66. package/dist/cjs/onchain/constants/index.js +1 -0
  67. package/dist/cjs/onchain/constants/math.js +11 -0
  68. package/dist/cjs/onchain/index.js +50 -9
  69. package/dist/cjs/onchain/market/MarketSuite.js +24 -1
  70. package/dist/cjs/onchain/market/adapters/contracts/AbstractAdapter.js +19 -5
  71. package/dist/cjs/onchain/market/adapters/contracts/AbstractCurveAdapter.js +2 -2
  72. package/dist/cjs/onchain/market/adapters/contracts/BalancerV3RouterAdapterContract.js +35 -3
  73. package/dist/cjs/onchain/market/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  74. package/dist/cjs/onchain/market/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  75. package/dist/cjs/onchain/market/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  76. package/dist/cjs/onchain/market/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  77. package/dist/cjs/onchain/market/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  78. package/dist/cjs/onchain/market/adapters/contracts/ERC4626AdapterContract.js +56 -2
  79. package/dist/cjs/onchain/market/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  80. package/dist/cjs/onchain/market/adapters/contracts/FluidDexAdapterContract.js +2 -2
  81. package/dist/cjs/onchain/market/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  82. package/dist/cjs/onchain/market/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  83. package/dist/cjs/onchain/market/adapters/contracts/LidoV1AdapterContract.js +2 -2
  84. package/dist/cjs/onchain/market/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  85. package/dist/cjs/onchain/market/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  86. package/dist/cjs/onchain/market/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  87. package/dist/cjs/onchain/market/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  88. package/dist/cjs/onchain/market/adapters/contracts/MidasGatewayAdapterContract.js +15 -2
  89. package/dist/cjs/onchain/market/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  90. package/dist/cjs/onchain/market/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  91. package/dist/cjs/onchain/market/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  92. package/dist/cjs/onchain/market/adapters/contracts/SecuritizeOnRampAdapterContract.js +2 -2
  93. package/dist/cjs/onchain/market/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +2 -2
  94. package/dist/cjs/onchain/market/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  95. package/dist/cjs/onchain/market/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  96. package/dist/cjs/onchain/market/adapters/contracts/UniswapV2AdapterContract.js +2 -2
  97. package/dist/cjs/onchain/market/adapters/contracts/UniswapV3AdapterContract.js +2 -2
  98. package/dist/cjs/onchain/market/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  99. package/dist/cjs/onchain/market/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  100. package/dist/cjs/onchain/market/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  101. package/dist/cjs/onchain/market/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  102. package/dist/cjs/onchain/market/credit/CreditManagerV310Contract.js +2 -2
  103. package/dist/cjs/onchain/market/credit/CreditSuite.js +71 -7
  104. package/dist/cjs/onchain/market/credit/collateralUtils.js +2 -2
  105. package/dist/cjs/onchain/market/index.js +4 -2
  106. package/dist/cjs/onchain/market/math.js +29 -13
  107. package/dist/cjs/onchain/market/oracle/PriceOracleBaseContract.js +67 -14
  108. package/dist/cjs/onchain/market/oracle/TestPriceOracle.mock.js +215 -0
  109. package/dist/cjs/onchain/market/oracle/collateralPriceInUnderlying.js +27 -0
  110. package/dist/cjs/onchain/market/oracle/errors.js +14 -0
  111. package/dist/cjs/onchain/market/oracle/index.js +4 -0
  112. package/dist/cjs/onchain/market/pool/PoolV310Contract.js +25 -0
  113. package/dist/cjs/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +3 -2
  114. package/dist/cjs/onchain/market/zapper/ZapperContract.js +15 -8
  115. package/dist/cjs/onchain/market/zapper/errors.js +0 -17
  116. package/dist/cjs/onchain/market/zapper/index.js +1 -2
  117. package/dist/cjs/onchain/opportunities/index.js +1 -0
  118. package/dist/cjs/onchain/pools/PoolService.js +27 -66
  119. package/dist/cjs/onchain/pools/index.js +0 -2
  120. package/dist/cjs/onchain/positions/MultichainPositionsService.js +15 -0
  121. package/dist/cjs/onchain/positions/PositionsService.js +182 -28
  122. package/dist/cjs/onchain/positions/calcHealthFactor.js +4 -3
  123. package/dist/cjs/onchain/positions/calcLiquidationPrice.js +14 -4
  124. package/dist/cjs/onchain/positions/index.js +1 -0
  125. package/dist/cjs/onchain/router/AbstractRouterContract.js +2 -24
  126. package/dist/cjs/onchain/router/RouterV310Contract.js +1 -12
  127. package/dist/cjs/onchain/utils/index.js +7 -0
  128. package/dist/cjs/{common-utils → onchain}/utils/trace.js +1 -1
  129. package/dist/cjs/onchain/validation/checks.js +258 -0
  130. package/dist/cjs/onchain/validation/index.js +28 -0
  131. package/dist/cjs/onchain/{accounts/intents → validation}/refusal.js +12 -1
  132. package/dist/cjs/onchain/validation/token.js +29 -0
  133. package/dist/cjs/permissionless/bindings/instance-manager.js +16 -0
  134. package/dist/cjs/preview/index.js +27 -12
  135. package/dist/cjs/preview/parse/errors.js +0 -32
  136. package/dist/cjs/preview/parse/index.js +1 -5
  137. package/dist/cjs/preview/parse/parseOperationCalldata.js +28 -17
  138. package/dist/cjs/preview/parse/parsePoolOperationCalldata.js +17 -11
  139. package/dist/cjs/preview/prerequisites/checkPrerequisites.js +5 -2
  140. package/dist/cjs/preview/preview/{buildDelayedPreview.js → buildDelayedStrategyPositionOperationPreview.js} +47 -72
  141. package/dist/cjs/preview/preview/detectDelayedClaim.js +9 -7
  142. package/dist/cjs/preview/preview/detectDelayedOperation.js +11 -4
  143. package/dist/cjs/preview/preview/errors.js +81 -13
  144. package/dist/cjs/preview/preview/estimateClaimableAt.js +21 -0
  145. package/dist/cjs/preview/preview/index.js +14 -7
  146. package/dist/cjs/preview/preview/previewAdjustStrategyPosition.js +49 -0
  147. package/dist/cjs/preview/preview/{previewCloseOrRepayCreditAccount.js → previewExitOrRepayStrategyPosition.js} +28 -15
  148. package/dist/cjs/preview/preview/previewOpenStrategyPosition.js +50 -0
  149. package/dist/cjs/preview/preview/previewOperation.js +46 -24
  150. package/dist/cjs/preview/preview/previewPoolPositionOperation.js +49 -0
  151. package/dist/cjs/preview/preview/replayInnerOperations.js +23 -60
  152. package/dist/cjs/preview/preview/replayMulticall.js +2 -2
  153. package/dist/cjs/preview/preview/unwrapNativeCollateral.js +4 -9
  154. package/dist/cjs/preview/simulate/errors.js +15 -24
  155. package/dist/cjs/preview/simulate/index.js +2 -2
  156. package/dist/cjs/preview/simulate/simulateOperation.js +7 -5
  157. package/dist/cjs/preview/simulate/simulatePoolOperation.js +8 -3
  158. package/dist/cjs/preview/trace/extractAdapterCallTraces.js +2 -2
  159. package/dist/cjs/preview/trace/findFacadeCalls.js +2 -2
  160. package/dist/cjs/preview/validate/checkOperation.js +187 -0
  161. package/dist/cjs/preview/validate/checkSimulation.js +39 -0
  162. package/dist/cjs/preview/validate/index.js +8 -0
  163. package/dist/cjs/rewards/errors.js +27 -0
  164. package/dist/cjs/rewards/index.js +6 -7
  165. package/dist/cjs/rewards/merkl-api.js +45 -0
  166. package/dist/cjs/rewards/multichain.js +40 -0
  167. package/dist/cjs/rewards/toMerklRewards.js +85 -0
  168. package/dist/cjs/sdk/GearboxSDK.js +5 -0
  169. package/dist/cjs/sdk/analytics/AnalyticsNamespace.js +11 -0
  170. package/dist/cjs/sdk/analytics/index.js +4 -0
  171. package/dist/cjs/sdk/execute/ExecuteApi.js +20 -17
  172. package/dist/cjs/sdk/execute/index.js +1 -0
  173. package/dist/cjs/sdk/index.js +12 -0
  174. package/dist/cjs/sdk/liquidations/LiquidationsNamespace.js +5 -5
  175. package/dist/cjs/sdk/opportunities/OpportunitiesNamespace.js +14 -8
  176. package/dist/cjs/sdk/positions/PositionsNamespace.js +22 -4
  177. package/dist/cjs/sdk/positions/mergePositionList.js +45 -1
  178. package/dist/cjs/sdk/prepare/PrepareApi.js +430 -179
  179. package/dist/cjs/sdk/prepare/errors.js +93 -0
  180. package/dist/cjs/sdk/prepare/index.js +9 -0
  181. package/dist/cjs/sdk/prepare/types.js +4 -0
  182. package/dist/cjs/sdk/prepare/withdrawable-collaterals.js +23 -0
  183. package/dist/cjs/sdk/preview/PreviewNamespace.js +2 -2
  184. package/dist/esm/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +20 -0
  185. package/dist/esm/dev/AccountOpener.js +1 -1
  186. package/dist/esm/dev/mode-parity/compareOpportunities.js +4 -5
  187. package/dist/esm/dev/mode-parity/comparePositions.js +9 -9
  188. package/dist/esm/dev/mode-parity/compareRules.js +12 -1
  189. package/dist/esm/dev/mode-parity/fieldDiff.js +4 -6
  190. package/dist/esm/dev/mode-parity/scriptUtils.js +143 -7
  191. package/dist/esm/model/analytics.schema.js +108 -0
  192. package/dist/esm/model/charts.js +5 -1
  193. package/dist/esm/model/charts.schema.js +1 -1
  194. package/dist/esm/model/compare.schema.js +8 -1
  195. package/dist/esm/model/delayed-intent.schema.js +34 -0
  196. package/dist/esm/model/index.js +17 -11
  197. package/dist/esm/model/liquidations.schema.js +7 -2
  198. package/dist/esm/model/opportunities.schema.js +12 -4
  199. package/dist/esm/model/positions.js +6 -1
  200. package/dist/esm/model/positions.schema.js +14 -8
  201. package/dist/esm/model/previews.js +21 -31
  202. package/dist/esm/model/result.js +33 -0
  203. package/dist/esm/model/withdrawals.schema.js +40 -0
  204. package/dist/esm/offchain/GearboxAPI.js +5 -0
  205. package/dist/esm/offchain/analytics/OffchainAnalytics.js +11 -0
  206. package/dist/esm/offchain/analytics/OffchainAnalyticsPositions.js +23 -0
  207. package/dist/esm/offchain/analytics/index.js +4 -0
  208. package/dist/esm/offchain/index.js +4 -1
  209. package/dist/esm/offchain/opportunities/OffchainOpportunities.js +14 -6
  210. package/dist/esm/offchain/opportunities/index.js +1 -0
  211. package/dist/esm/offchain/positions/OffchainPositions.js +21 -3
  212. package/dist/esm/offchain/positions/index.js +1 -0
  213. package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +0 -10
  214. package/dist/esm/onchain/accounts/credit-account-compressor/CreditAccountCompressor.js +1 -1
  215. package/dist/esm/onchain/accounts/index.js +4 -3
  216. package/dist/esm/onchain/accounts/intents/guards.js +55 -50
  217. package/dist/esm/onchain/accounts/intents/index.js +86 -31
  218. package/dist/esm/onchain/accounts/intents/leverage-band.js +69 -0
  219. package/dist/esm/onchain/accounts/intents/math.js +14 -21
  220. package/dist/esm/onchain/accounts/intents/maxWithdrawCollateral.js +10 -21
  221. package/dist/esm/onchain/accounts/intents/open-strategy.js +27 -26
  222. package/dist/esm/onchain/accounts/intents/plan.js +15 -29
  223. package/dist/esm/onchain/accounts/intents/realize.js +99 -61
  224. package/dist/esm/onchain/accounts/intents/tail.js +117 -9
  225. package/dist/esm/onchain/accounts/intents/testing/market.js +9 -6
  226. package/dist/esm/onchain/accounts/intents/testing/sdk-mock.js +84 -60
  227. package/dist/esm/onchain/accounts/intents/tests/add-collateral.fixtures.js +4 -4
  228. package/dist/esm/onchain/accounts/intents/tests/adjust-leverage.fixtures.js +15 -15
  229. package/dist/esm/onchain/accounts/intents/tests/deposit.fixtures.js +18 -15
  230. package/dist/esm/onchain/accounts/intents/tests/finish-decrease-leverage.fixtures.js +2 -2
  231. package/dist/esm/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +2 -2
  232. package/dist/esm/onchain/accounts/intents/tests/withdraw-asset.fixtures.js +4 -4
  233. package/dist/esm/onchain/accounts/intents/tests/withdraw.fixtures.js +7 -7
  234. package/dist/esm/onchain/accounts/intents/utils/adjust-state-to-snapshot.js +8 -5
  235. package/dist/esm/onchain/accounts/intents/utils/common.js +2 -2
  236. package/dist/esm/onchain/accounts/intents/utils/credit-account-slice.js +5 -5
  237. package/dist/esm/onchain/accounts/intents/utils/index.js +2 -2
  238. package/dist/esm/onchain/accounts/intents/utils/pick-token.js +2 -2
  239. package/dist/esm/onchain/accounts/intents/utils/price-impact.js +96 -0
  240. package/dist/esm/onchain/accounts/intents/utils/quotas-for-update.js +2 -2
  241. package/dist/esm/onchain/accounts/intents/utils/router-path.js +100 -42
  242. package/dist/esm/onchain/accounts/intents/view.js +7 -6
  243. package/dist/esm/onchain/accounts/liquidations/LiquidationsService.js +8 -8
  244. package/dist/esm/onchain/accounts/liquidations/skipLiquidatableAccount.js +11 -0
  245. package/dist/esm/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.js +3 -3
  246. package/dist/esm/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +13 -7
  247. package/dist/esm/onchain/accounts/withdrawal-compressor/errors.js +1 -19
  248. package/dist/esm/onchain/accounts/withdrawal-compressor/index.js +2 -2
  249. package/dist/esm/onchain/chain/chains.js +9 -3
  250. package/dist/esm/onchain/chain/detectNetwork.js +1 -1
  251. package/dist/esm/onchain/constants/index.js +2 -2
  252. package/dist/esm/onchain/constants/math.js +11 -1
  253. package/dist/esm/onchain/index.js +14 -7
  254. package/dist/esm/onchain/market/MarketSuite.js +24 -1
  255. package/dist/esm/onchain/market/adapters/contracts/AbstractAdapter.js +18 -4
  256. package/dist/esm/onchain/market/adapters/contracts/AbstractCurveAdapter.js +2 -2
  257. package/dist/esm/onchain/market/adapters/contracts/BalancerV3RouterAdapterContract.js +35 -3
  258. package/dist/esm/onchain/market/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  259. package/dist/esm/onchain/market/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  260. package/dist/esm/onchain/market/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  261. package/dist/esm/onchain/market/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  262. package/dist/esm/onchain/market/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  263. package/dist/esm/onchain/market/adapters/contracts/ERC4626AdapterContract.js +57 -3
  264. package/dist/esm/onchain/market/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  265. package/dist/esm/onchain/market/adapters/contracts/FluidDexAdapterContract.js +2 -2
  266. package/dist/esm/onchain/market/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  267. package/dist/esm/onchain/market/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  268. package/dist/esm/onchain/market/adapters/contracts/LidoV1AdapterContract.js +2 -2
  269. package/dist/esm/onchain/market/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  270. package/dist/esm/onchain/market/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  271. package/dist/esm/onchain/market/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  272. package/dist/esm/onchain/market/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  273. package/dist/esm/onchain/market/adapters/contracts/MidasGatewayAdapterContract.js +16 -3
  274. package/dist/esm/onchain/market/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  275. package/dist/esm/onchain/market/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  276. package/dist/esm/onchain/market/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  277. package/dist/esm/onchain/market/adapters/contracts/SecuritizeOnRampAdapterContract.js +2 -2
  278. package/dist/esm/onchain/market/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +2 -2
  279. package/dist/esm/onchain/market/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  280. package/dist/esm/onchain/market/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  281. package/dist/esm/onchain/market/adapters/contracts/UniswapV2AdapterContract.js +2 -2
  282. package/dist/esm/onchain/market/adapters/contracts/UniswapV3AdapterContract.js +2 -2
  283. package/dist/esm/onchain/market/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  284. package/dist/esm/onchain/market/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  285. package/dist/esm/onchain/market/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  286. package/dist/esm/onchain/market/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  287. package/dist/esm/onchain/market/credit/CreditManagerV310Contract.js +2 -2
  288. package/dist/esm/onchain/market/credit/CreditSuite.js +73 -9
  289. package/dist/esm/onchain/market/credit/collateralUtils.js +2 -2
  290. package/dist/esm/onchain/market/index.js +3 -2
  291. package/dist/esm/onchain/market/math.js +29 -13
  292. package/dist/esm/onchain/market/oracle/PriceOracleBaseContract.js +67 -14
  293. package/dist/esm/onchain/market/oracle/TestPriceOracle.mock.js +213 -0
  294. package/dist/esm/onchain/market/oracle/collateralPriceInUnderlying.js +26 -0
  295. package/dist/esm/onchain/market/oracle/errors.js +13 -0
  296. package/dist/esm/onchain/market/oracle/index.js +3 -1
  297. package/dist/esm/onchain/market/pool/PoolV310Contract.js +25 -0
  298. package/dist/esm/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +3 -2
  299. package/dist/esm/onchain/market/zapper/ZapperContract.js +15 -8
  300. package/dist/esm/onchain/market/zapper/errors.js +1 -17
  301. package/dist/esm/onchain/market/zapper/index.js +2 -2
  302. package/dist/esm/onchain/opportunities/index.js +1 -0
  303. package/dist/esm/onchain/pools/PoolService.js +30 -67
  304. package/dist/esm/onchain/pools/index.js +2 -2
  305. package/dist/esm/onchain/positions/MultichainPositionsService.js +15 -0
  306. package/dist/esm/onchain/positions/PositionsService.js +184 -30
  307. package/dist/esm/onchain/positions/calcHealthFactor.js +4 -3
  308. package/dist/esm/onchain/positions/calcLiquidationPrice.js +14 -5
  309. package/dist/esm/onchain/positions/index.js +2 -2
  310. package/dist/esm/onchain/router/AbstractRouterContract.js +2 -24
  311. package/dist/esm/onchain/router/RouterV310Contract.js +1 -12
  312. package/dist/esm/onchain/utils/index.js +2 -1
  313. package/dist/esm/{common-utils → onchain}/utils/trace.js +1 -1
  314. package/dist/esm/onchain/validation/checks.js +238 -0
  315. package/dist/esm/onchain/validation/index.js +4 -0
  316. package/dist/esm/onchain/{accounts/intents → validation}/refusal.js +12 -2
  317. package/dist/esm/onchain/validation/token.js +27 -0
  318. package/dist/esm/permissionless/bindings/instance-manager.js +16 -0
  319. package/dist/esm/preview/index.js +11 -7
  320. package/dist/esm/preview/parse/errors.js +1 -30
  321. package/dist/esm/preview/parse/index.js +2 -3
  322. package/dist/esm/preview/parse/parseOperationCalldata.js +28 -17
  323. package/dist/esm/preview/parse/parsePoolOperationCalldata.js +17 -11
  324. package/dist/esm/preview/prerequisites/checkPrerequisites.js +5 -2
  325. package/dist/esm/preview/preview/{buildDelayedPreview.js → buildDelayedStrategyPositionOperationPreview.js} +48 -73
  326. package/dist/esm/preview/preview/detectDelayedClaim.js +9 -7
  327. package/dist/esm/preview/preview/detectDelayedOperation.js +11 -4
  328. package/dist/esm/preview/preview/errors.js +76 -13
  329. package/dist/esm/preview/preview/estimateClaimableAt.js +20 -0
  330. package/dist/esm/preview/preview/index.js +6 -5
  331. package/dist/esm/preview/preview/previewAdjustStrategyPosition.js +48 -0
  332. package/dist/esm/preview/preview/{previewCloseOrRepayCreditAccount.js → previewExitOrRepayStrategyPosition.js} +28 -15
  333. package/dist/esm/preview/preview/previewOpenStrategyPosition.js +49 -0
  334. package/dist/esm/preview/preview/previewOperation.js +46 -24
  335. package/dist/esm/preview/preview/previewPoolPositionOperation.js +48 -0
  336. package/dist/esm/preview/preview/replayInnerOperations.js +23 -60
  337. package/dist/esm/preview/preview/replayMulticall.js +2 -2
  338. package/dist/esm/preview/preview/unwrapNativeCollateral.js +4 -9
  339. package/dist/esm/preview/simulate/errors.js +16 -24
  340. package/dist/esm/preview/simulate/index.js +3 -3
  341. package/dist/esm/preview/simulate/simulateOperation.js +7 -5
  342. package/dist/esm/preview/simulate/simulatePoolOperation.js +7 -4
  343. package/dist/esm/preview/trace/extractAdapterCallTraces.js +1 -1
  344. package/dist/esm/preview/trace/extractTransfers.js +1 -1
  345. package/dist/esm/preview/trace/findFacadeCalls.js +1 -1
  346. package/dist/esm/preview/validate/checkOperation.js +183 -0
  347. package/dist/esm/preview/validate/checkSimulation.js +38 -0
  348. package/dist/esm/preview/validate/index.js +3 -0
  349. package/dist/esm/rewards/errors.js +26 -0
  350. package/dist/esm/rewards/index.js +4 -5
  351. package/dist/esm/rewards/merkl-api.js +42 -0
  352. package/dist/esm/rewards/multichain.js +39 -0
  353. package/dist/esm/rewards/toMerklRewards.js +84 -0
  354. package/dist/esm/sdk/GearboxSDK.js +5 -0
  355. package/dist/esm/sdk/analytics/AnalyticsNamespace.js +10 -0
  356. package/dist/esm/sdk/analytics/index.js +3 -0
  357. package/dist/esm/sdk/execute/ExecuteApi.js +20 -17
  358. package/dist/esm/sdk/execute/index.js +1 -0
  359. package/dist/esm/sdk/index.js +5 -1
  360. package/dist/esm/sdk/liquidations/LiquidationsNamespace.js +5 -5
  361. package/dist/esm/sdk/opportunities/OpportunitiesNamespace.js +14 -8
  362. package/dist/esm/sdk/positions/PositionsNamespace.js +22 -4
  363. package/dist/esm/sdk/positions/mergePositionList.js +45 -1
  364. package/dist/esm/sdk/prepare/PrepareApi.js +431 -180
  365. package/dist/esm/sdk/prepare/errors.js +89 -0
  366. package/dist/esm/sdk/prepare/index.js +3 -1
  367. package/dist/esm/sdk/prepare/types.js +2 -1
  368. package/dist/esm/sdk/prepare/withdrawable-collaterals.js +22 -0
  369. package/dist/esm/sdk/preview/PreviewNamespace.js +2 -2
  370. package/dist/types/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.d.ts +16 -0
  371. package/dist/types/dev/mode-parity/compareOpportunities.d.ts +3 -7
  372. package/dist/types/dev/mode-parity/comparePositions.d.ts +9 -11
  373. package/dist/types/dev/mode-parity/fieldDiff.d.ts +12 -9
  374. package/dist/types/dev/mode-parity/scriptUtils.d.ts +26 -1
  375. package/dist/types/history/classifyMulticallOperations.d.ts +1 -1
  376. package/dist/types/model/analytics.d.ts +62 -0
  377. package/dist/types/model/analytics.schema.d.ts +149 -0
  378. package/dist/types/model/charts.d.ts +4 -2
  379. package/dist/types/model/charts.schema.d.ts +8 -0
  380. package/dist/types/model/compare.schema.d.ts +9 -2
  381. package/dist/types/model/delayed-intent.schema.d.ts +28 -0
  382. package/dist/types/model/errors.d.ts +46 -0
  383. package/dist/types/model/index.d.ts +16 -10
  384. package/dist/types/model/liquidations.d.ts +14 -8
  385. package/dist/types/model/liquidations.schema.d.ts +64 -2
  386. package/dist/types/model/opportunities.d.ts +20 -2
  387. package/dist/types/model/opportunities.schema.d.ts +9 -1
  388. package/dist/types/model/positions.d.ts +62 -7
  389. package/dist/types/model/positions.schema.d.ts +29 -49
  390. package/dist/types/model/previews.d.ts +383 -204
  391. package/dist/types/model/result.d.ts +63 -0
  392. package/dist/types/model/withdrawals.d.ts +106 -0
  393. package/dist/types/model/withdrawals.schema.d.ts +263 -0
  394. package/dist/types/offchain/AbstractOffchainNamespace.d.ts +1 -1
  395. package/dist/types/offchain/GearboxAPI.d.ts +4 -0
  396. package/dist/types/offchain/analytics/OffchainAnalytics.d.ts +11 -0
  397. package/dist/types/offchain/analytics/OffchainAnalyticsPositions.d.ts +14 -0
  398. package/dist/types/offchain/analytics/index.d.ts +4 -0
  399. package/dist/types/offchain/analytics/types.d.ts +17 -0
  400. package/dist/types/offchain/index.d.ts +7 -1
  401. package/dist/types/offchain/opportunities/OffchainOpportunities.d.ts +12 -12
  402. package/dist/types/offchain/opportunities/index.d.ts +2 -1
  403. package/dist/types/offchain/opportunities/types.d.ts +36 -0
  404. package/dist/types/offchain/positions/OffchainPositions.d.ts +15 -9
  405. package/dist/types/offchain/positions/index.d.ts +2 -1
  406. package/dist/types/offchain/positions/types.d.ts +36 -0
  407. package/dist/types/onchain/accounts/CreditAccountsServiceV310.d.ts +1 -5
  408. package/dist/types/onchain/accounts/index.d.ts +9 -6
  409. package/dist/types/onchain/accounts/intents/guards.d.ts +8 -4
  410. package/dist/types/onchain/accounts/intents/index.d.ts +57 -20
  411. package/dist/types/onchain/accounts/intents/leverage-band.d.ts +58 -0
  412. package/dist/types/onchain/accounts/intents/math.d.ts +2 -1
  413. package/dist/types/onchain/accounts/intents/maxWithdrawCollateral.d.ts +5 -3
  414. package/dist/types/onchain/accounts/intents/open-strategy.d.ts +15 -35
  415. package/dist/types/onchain/accounts/intents/operations.d.ts +1 -1
  416. package/dist/types/onchain/accounts/intents/plan.d.ts +4 -1
  417. package/dist/types/onchain/accounts/intents/realize.d.ts +1 -1
  418. package/dist/types/onchain/accounts/intents/tail.d.ts +13 -3
  419. package/dist/types/onchain/accounts/intents/testing/expect.d.ts +7 -3
  420. package/dist/types/onchain/accounts/intents/testing/market.d.ts +9 -2
  421. package/dist/types/onchain/accounts/intents/testing/sdk-mock.d.ts +33 -3
  422. package/dist/types/onchain/accounts/intents/tests/add-collateral.fixtures.d.ts +1 -1
  423. package/dist/types/onchain/accounts/intents/tests/adjust-leverage.fixtures.d.ts +2 -2
  424. package/dist/types/onchain/accounts/intents/tests/deposit.fixtures.d.ts +3 -3
  425. package/dist/types/onchain/accounts/intents/tests/withdraw-asset.fixtures.d.ts +1 -1
  426. package/dist/types/onchain/accounts/intents/tests/withdraw.fixtures.d.ts +2 -2
  427. package/dist/types/onchain/accounts/intents/types.d.ts +120 -57
  428. package/dist/types/onchain/accounts/intents/utils/adjust-state-to-snapshot.d.ts +2 -2
  429. package/dist/types/onchain/accounts/intents/utils/credit-account-slice.d.ts +4 -4
  430. package/dist/types/onchain/accounts/intents/utils/index.d.ts +4 -4
  431. package/dist/types/onchain/accounts/intents/utils/ledger.d.ts +2 -2
  432. package/dist/types/onchain/accounts/intents/utils/price-impact.d.ts +49 -0
  433. package/dist/types/onchain/accounts/intents/utils/quotas-for-update.d.ts +1 -1
  434. package/dist/types/onchain/accounts/intents/utils/router-path.d.ts +9 -0
  435. package/dist/types/onchain/accounts/intents/view.d.ts +2 -2
  436. package/dist/types/onchain/accounts/liquidations/LiquidationsService.d.ts +0 -1
  437. package/dist/types/onchain/accounts/liquidations/skipLiquidatableAccount.d.ts +11 -0
  438. package/dist/types/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.d.ts +3 -4
  439. package/dist/types/onchain/accounts/types.d.ts +2 -27
  440. package/dist/types/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.d.ts +6 -4
  441. package/dist/types/onchain/accounts/withdrawal-compressor/errors.d.ts +9 -5
  442. package/dist/types/onchain/accounts/withdrawal-compressor/index.d.ts +1 -1
  443. package/dist/types/onchain/accounts/withdrawal-compressor/types.d.ts +6 -4
  444. package/dist/types/onchain/base/index.d.ts +2 -2
  445. package/dist/types/onchain/base/types.d.ts +5 -1
  446. package/dist/types/onchain/constants/index.d.ts +2 -2
  447. package/dist/types/onchain/constants/math.d.ts +9 -1
  448. package/dist/types/onchain/index.d.ts +26 -15
  449. package/dist/types/onchain/market/MarketSuite.d.ts +19 -1
  450. package/dist/types/onchain/market/adapters/contracts/AbstractAdapter.d.ts +15 -3
  451. package/dist/types/onchain/market/adapters/contracts/AbstractCurveAdapter.d.ts +1 -1
  452. package/dist/types/onchain/market/adapters/contracts/AccountMigratorAdapterContract.d.ts +1 -1
  453. package/dist/types/onchain/market/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +1 -1
  454. package/dist/types/onchain/market/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +1 -1
  455. package/dist/types/onchain/market/adapters/contracts/CamelotV3AdapterContract.d.ts +1 -1
  456. package/dist/types/onchain/market/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +1 -1
  457. package/dist/types/onchain/market/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +1 -1
  458. package/dist/types/onchain/market/adapters/contracts/DaiUsdsAdapterContract.d.ts +1 -1
  459. package/dist/types/onchain/market/adapters/contracts/ERC4626AdapterContract.d.ts +9 -2
  460. package/dist/types/onchain/market/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +1 -1
  461. package/dist/types/onchain/market/adapters/contracts/FluidDexAdapterContract.d.ts +1 -1
  462. package/dist/types/onchain/market/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +1 -1
  463. package/dist/types/onchain/market/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +1 -1
  464. package/dist/types/onchain/market/adapters/contracts/LidoV1AdapterContract.d.ts +1 -1
  465. package/dist/types/onchain/market/adapters/contracts/MellowClaimerAdapterContract.d.ts +1 -1
  466. package/dist/types/onchain/market/adapters/contracts/MellowDVVAdapterContract.d.ts +1 -1
  467. package/dist/types/onchain/market/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +1 -1
  468. package/dist/types/onchain/market/adapters/contracts/MellowWrapperAdapterContract.d.ts +1 -1
  469. package/dist/types/onchain/market/adapters/contracts/MidasGatewayAdapterContract.d.ts +8 -1
  470. package/dist/types/onchain/market/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +1 -1
  471. package/dist/types/onchain/market/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +1 -1
  472. package/dist/types/onchain/market/adapters/contracts/PendleRouterAdapterContract.d.ts +1 -1
  473. package/dist/types/onchain/market/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +1 -1
  474. package/dist/types/onchain/market/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +1 -1
  475. package/dist/types/onchain/market/adapters/contracts/StakingRewardsAdapterContract.d.ts +1 -1
  476. package/dist/types/onchain/market/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +1 -1
  477. package/dist/types/onchain/market/adapters/contracts/UniswapV2AdapterContract.d.ts +1 -1
  478. package/dist/types/onchain/market/adapters/contracts/UniswapV3AdapterContract.d.ts +1 -1
  479. package/dist/types/onchain/market/adapters/contracts/UniswapV4AdapterContract.d.ts +1 -1
  480. package/dist/types/onchain/market/adapters/contracts/UpshiftVaultAdapterContract.d.ts +1 -1
  481. package/dist/types/onchain/market/adapters/contracts/VelodromeV2AdapterContract.d.ts +1 -1
  482. package/dist/types/onchain/market/adapters/contracts/WstETHV1AdapterContract.d.ts +1 -1
  483. package/dist/types/onchain/market/credit/CreditManagerV310Contract.d.ts +1 -1
  484. package/dist/types/onchain/market/credit/CreditSuite.d.ts +49 -3
  485. package/dist/types/onchain/market/credit/index.d.ts +2 -2
  486. package/dist/types/onchain/market/credit/types.d.ts +14 -4
  487. package/dist/types/onchain/market/index.d.ts +7 -5
  488. package/dist/types/onchain/market/math.d.ts +25 -10
  489. package/dist/types/onchain/market/oracle/PriceOracleBaseContract.d.ts +15 -5
  490. package/dist/types/onchain/market/oracle/collateralPriceInUnderlying.d.ts +19 -0
  491. package/dist/types/onchain/market/oracle/errors.d.ts +19 -0
  492. package/dist/types/onchain/market/oracle/index.d.ts +4 -2
  493. package/dist/types/onchain/market/oracle/types.d.ts +44 -26
  494. package/dist/types/onchain/market/pool/PoolV310Contract.d.ts +12 -0
  495. package/dist/types/onchain/market/pool/types.d.ts +18 -0
  496. package/dist/types/onchain/market/rwa/index.d.ts +2 -2
  497. package/dist/types/onchain/market/rwa/securitize/SecuritizeRWAFactory.d.ts +2 -2
  498. package/dist/types/onchain/market/rwa/types.d.ts +17 -5
  499. package/dist/types/onchain/market/zapper/ZapperContract.d.ts +7 -3
  500. package/dist/types/onchain/market/zapper/errors.d.ts +11 -6
  501. package/dist/types/onchain/market/zapper/index.d.ts +1 -1
  502. package/dist/types/onchain/market/zapper/types.d.ts +4 -1
  503. package/dist/types/onchain/opportunities/MultichainOpportunitiesService.d.ts +2 -1
  504. package/dist/types/onchain/opportunities/index.d.ts +2 -1
  505. package/dist/types/onchain/opportunities/types.d.ts +27 -0
  506. package/dist/types/onchain/pools/PoolService.d.ts +1 -19
  507. package/dist/types/onchain/pools/index.d.ts +2 -2
  508. package/dist/types/onchain/pools/types.d.ts +6 -4
  509. package/dist/types/onchain/positions/MultichainPositionsService.d.ts +8 -2
  510. package/dist/types/onchain/positions/PositionsService.d.ts +44 -1
  511. package/dist/types/onchain/positions/calcHealthFactor.d.ts +7 -3
  512. package/dist/types/onchain/positions/calcLiquidationPrice.d.ts +10 -1
  513. package/dist/types/onchain/positions/index.d.ts +3 -3
  514. package/dist/types/onchain/positions/types.d.ts +47 -3
  515. package/dist/types/onchain/router/AbstractRouterContract.d.ts +0 -4
  516. package/dist/types/onchain/utils/index.d.ts +2 -1
  517. package/dist/types/{common-utils → onchain}/utils/trace.d.ts +1 -1
  518. package/dist/types/onchain/validation/checks.d.ts +164 -0
  519. package/dist/types/onchain/validation/index.d.ts +4 -0
  520. package/dist/types/onchain/{accounts/intents → validation}/refusal.d.ts +98 -31
  521. package/dist/types/onchain/validation/token.d.ts +17 -0
  522. package/dist/types/preview/index.d.ts +13 -6
  523. package/dist/types/preview/parse/errors.d.ts +19 -12
  524. package/dist/types/preview/parse/index.d.ts +1 -1
  525. package/dist/types/preview/parse/parseOperationCalldata.d.ts +5 -1
  526. package/dist/types/preview/parse/parsePoolOperationCalldata.d.ts +5 -2
  527. package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +6 -1
  528. package/dist/types/preview/preview/{buildDelayedPreview.d.ts → buildDelayedStrategyPositionOperationPreview.d.ts} +8 -12
  529. package/dist/types/preview/preview/detectDelayedClaim.d.ts +7 -6
  530. package/dist/types/preview/preview/detectDelayedOperation.d.ts +3 -1
  531. package/dist/types/preview/preview/errors.d.ts +38 -6
  532. package/dist/types/preview/preview/estimateClaimableAt.d.ts +19 -0
  533. package/dist/types/preview/preview/index.d.ts +7 -6
  534. package/dist/types/preview/preview/{previewAdjustCreditAccount.d.ts → previewAdjustStrategyPosition.d.ts} +4 -4
  535. package/dist/types/preview/preview/{previewCloseOrRepayCreditAccount.d.ts → previewExitOrRepayStrategyPosition.d.ts} +4 -4
  536. package/dist/types/preview/preview/previewOpenStrategyPosition.d.ts +12 -0
  537. package/dist/types/preview/preview/previewOperation.d.ts +21 -2
  538. package/dist/types/preview/preview/previewPoolPositionOperation.d.ts +13 -0
  539. package/dist/types/preview/preview/replayInnerOperations.d.ts +3 -3
  540. package/dist/types/preview/preview/replayMulticall.d.ts +2 -2
  541. package/dist/types/preview/preview/unwrapNativeCollateral.d.ts +4 -5
  542. package/dist/types/preview/simulate/errors.d.ts +12 -8
  543. package/dist/types/preview/simulate/index.d.ts +2 -2
  544. package/dist/types/preview/simulate/simulateOperation.d.ts +4 -1
  545. package/dist/types/preview/simulate/simulatePoolOperation.d.ts +22 -2
  546. package/dist/types/preview/simulate/types.d.ts +12 -4
  547. package/dist/types/preview/trace/extractAdapterCallTraces.d.ts +1 -1
  548. package/dist/types/preview/trace/findFacadeCalls.d.ts +1 -1
  549. package/dist/types/preview/trace/types.d.ts +1 -1
  550. package/dist/types/preview/validate/checkOperation.d.ts +71 -0
  551. package/dist/types/preview/validate/checkSimulation.d.ts +32 -0
  552. package/dist/types/preview/validate/index.d.ts +3 -0
  553. package/dist/types/rewards/errors.d.ts +18 -0
  554. package/dist/types/rewards/index.d.ts +4 -7
  555. package/dist/types/rewards/merkl-api.d.ts +64 -0
  556. package/dist/types/rewards/multichain.d.ts +33 -0
  557. package/dist/types/rewards/toMerklRewards.d.ts +42 -0
  558. package/dist/types/sdk/AbstractNamespace.d.ts +1 -1
  559. package/dist/types/sdk/GearboxSDK.d.ts +15 -11
  560. package/dist/types/sdk/analytics/AnalyticsNamespace.d.ts +11 -0
  561. package/dist/types/sdk/analytics/index.d.ts +3 -0
  562. package/dist/types/sdk/analytics/types.d.ts +15 -0
  563. package/dist/types/sdk/execute/ExecuteApi.d.ts +5 -94
  564. package/dist/types/sdk/execute/index.d.ts +3 -2
  565. package/dist/types/sdk/execute/types.d.ts +91 -0
  566. package/dist/types/sdk/index.d.ts +19 -13
  567. package/dist/types/sdk/liquidations/LiquidationsNamespace.d.ts +7 -7
  568. package/dist/types/sdk/liquidations/index.d.ts +2 -2
  569. package/dist/types/sdk/liquidations/types.d.ts +5 -7
  570. package/dist/types/sdk/opportunities/OpportunitiesNamespace.d.ts +24 -20
  571. package/dist/types/sdk/opportunities/index.d.ts +2 -2
  572. package/dist/types/sdk/opportunities/types.d.ts +42 -42
  573. package/dist/types/sdk/positions/PositionsNamespace.d.ts +24 -10
  574. package/dist/types/sdk/positions/index.d.ts +2 -2
  575. package/dist/types/sdk/positions/mergePositionList.d.ts +5 -0
  576. package/dist/types/sdk/positions/types.d.ts +51 -35
  577. package/dist/types/sdk/prepare/PrepareApi.d.ts +60 -40
  578. package/dist/types/sdk/prepare/errors.d.ts +319 -0
  579. package/dist/types/sdk/prepare/index.d.ts +6 -4
  580. package/dist/types/sdk/prepare/types.d.ts +237 -107
  581. package/dist/types/sdk/prepare/withdrawable-collaterals.d.ts +11 -0
  582. package/dist/types/sdk/preview/PreviewNamespace.d.ts +8 -5
  583. package/dist/types/sdk/preview/index.d.ts +2 -2
  584. package/dist/types/sdk/preview/types.d.ts +12 -10
  585. package/dist/types/sdk/types.d.ts +66 -6
  586. package/package.json +2 -8
  587. package/dist/cjs/_virtual/_rolldown/runtime.js +0 -23
  588. package/dist/cjs/common-utils/axios-cache/AxiosCache.js +0 -98
  589. package/dist/cjs/common-utils/axios-cache/index.js +0 -3
  590. package/dist/cjs/common-utils/charts/credit-manager.js +0 -100
  591. package/dist/cjs/common-utils/charts/credit-session.js +0 -211
  592. package/dist/cjs/common-utils/charts/index.js +0 -18
  593. package/dist/cjs/common-utils/charts/pool.js +0 -177
  594. package/dist/cjs/common-utils/charts/token-data.js +0 -68
  595. package/dist/cjs/common-utils/index.js +0 -209
  596. package/dist/cjs/common-utils/package.json +0 -1
  597. package/dist/cjs/common-utils/static/index.js +0 -5
  598. package/dist/cjs/common-utils/static/pool-config.js +0 -1
  599. package/dist/cjs/common-utils/static/strategy.js +0 -1
  600. package/dist/cjs/common-utils/static/trading-pair.js +0 -1
  601. package/dist/cjs/common-utils/test-utils/index.js +0 -104
  602. package/dist/cjs/common-utils/utils/apy/bonus-apy-from-points.js +0 -5
  603. package/dist/cjs/common-utils/utils/apy/calculate-borrow-rate-from-utilization.js +0 -22
  604. package/dist/cjs/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.js +0 -34
  605. package/dist/cjs/common-utils/utils/apy/calculate-earnings.js +0 -23
  606. package/dist/cjs/common-utils/utils/apy/calculate-earnings.spec.js +0 -68
  607. package/dist/cjs/common-utils/utils/apy/calculate-effective-borrow-rate.js +0 -8
  608. package/dist/cjs/common-utils/utils/apy/calculate-safe-borrow-rate.js +0 -20
  609. package/dist/cjs/common-utils/utils/apy/calculate-safe-borrow-rate.spec.js +0 -39
  610. package/dist/cjs/common-utils/utils/apy/get-complex-apy-list.js +0 -18
  611. package/dist/cjs/common-utils/utils/apy/get-rate-with-fee.js +0 -16
  612. package/dist/cjs/common-utils/utils/apy/get-safe-base-borrow-rate.js +0 -14
  613. package/dist/cjs/common-utils/utils/apy/get-single-quota-borrow-rate.js +0 -16
  614. package/dist/cjs/common-utils/utils/apy/index.js +0 -21
  615. package/dist/cjs/common-utils/utils/apy/max-apy-formula.js +0 -14
  616. package/dist/cjs/common-utils/utils/assets-math.js +0 -185
  617. package/dist/cjs/common-utils/utils/constants.js +0 -9
  618. package/dist/cjs/common-utils/utils/creditAccount/calc-health-factor.js +0 -41
  619. package/dist/cjs/common-utils/utils/creditAccount/calc-overall-apy.js +0 -46
  620. package/dist/cjs/common-utils/utils/creditAccount/calc-quota-borrow-rate.js +0 -22
  621. package/dist/cjs/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.js +0 -16
  622. package/dist/cjs/common-utils/utils/creditAccount/debt.js +0 -46
  623. package/dist/cjs/common-utils/utils/creditAccount/get-time-to-liquidation.js +0 -24
  624. package/dist/cjs/common-utils/utils/creditAccount/index.js +0 -27
  625. package/dist/cjs/common-utils/utils/creditAccount/liquidation-price.js +0 -39
  626. package/dist/cjs/common-utils/utils/creditAccount/sort.js +0 -95
  627. package/dist/cjs/common-utils/utils/index.js +0 -194
  628. package/dist/cjs/common-utils/utils/price-math.js +0 -51
  629. package/dist/cjs/common-utils/utils/strategies/assets/assets.js +0 -7
  630. package/dist/cjs/common-utils/utils/strategies/assets/index.js +0 -3
  631. package/dist/cjs/common-utils/utils/strategies/availability/check-boolean.js +0 -10
  632. package/dist/cjs/common-utils/utils/strategies/availability/check-degen-nft.js +0 -13
  633. package/dist/cjs/common-utils/utils/strategies/availability/index.js +0 -5
  634. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.js +0 -23
  635. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.js +0 -109
  636. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +0 -31
  637. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +0 -15
  638. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +0 -23
  639. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.js +0 -29
  640. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.js +0 -95
  641. package/dist/cjs/common-utils/utils/strategies/credit-managers/index.js +0 -13
  642. package/dist/cjs/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.js +0 -9
  643. package/dist/cjs/common-utils/utils/strategies/eligibility/index.js +0 -5
  644. package/dist/cjs/common-utils/utils/strategies/eligibility/is-strategy-eligible.js +0 -20
  645. package/dist/cjs/common-utils/utils/strategies/eligibility/is-strategy-released.js +0 -8
  646. package/dist/cjs/common-utils/utils/strategies/index.js +0 -118
  647. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-loss-coefficient.js +0 -10
  648. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.js +0 -16
  649. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.js +0 -21
  650. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.js +0 -304
  651. package/dist/cjs/common-utils/utils/strategies/leverage/get-collateral-by-debt.js +0 -10
  652. package/dist/cjs/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.js +0 -30
  653. package/dist/cjs/common-utils/utils/strategies/leverage/get-factor-from-leverage.js +0 -9
  654. package/dist/cjs/common-utils/utils/strategies/leverage/get-leverage-from-factor.js +0 -9
  655. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-debt.js +0 -47
  656. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-debt.spec.js +0 -222
  657. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.js +0 -7
  658. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.js +0 -19
  659. package/dist/cjs/common-utils/utils/strategies/leverage/index.js +0 -21
  660. package/dist/cjs/common-utils/utils/strategies/leverage/max-leverage-threshold.js +0 -17
  661. package/dist/cjs/common-utils/utils/strategies/leverage/max-leverage.js +0 -17
  662. package/dist/cjs/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.js +0 -16
  663. package/dist/cjs/common-utils/utils/strategies/lists/get-available-strategies.js +0 -32
  664. package/dist/cjs/common-utils/utils/strategies/lists/get-disabled-strategies.js +0 -33
  665. package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +0 -24
  666. package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list.js +0 -16
  667. package/dist/cjs/common-utils/utils/strategies/lists/index.js +0 -7
  668. package/dist/cjs/common-utils/utils/strategies/points/get-complex-points-list.js +0 -15
  669. package/dist/cjs/common-utils/utils/strategies/points/get-points-info.js +0 -12
  670. package/dist/cjs/common-utils/utils/strategies/points/get-points-rates.js +0 -8
  671. package/dist/cjs/common-utils/utils/strategies/points/get-strategy-points.js +0 -41
  672. package/dist/cjs/common-utils/utils/strategies/points/index.js +0 -9
  673. package/dist/cjs/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.js +0 -3
  674. package/dist/cjs/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.js +0 -18
  675. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-apy.js +0 -63
  676. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.js +0 -184
  677. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-points.js +0 -38
  678. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.js +0 -126
  679. package/dist/cjs/common-utils/utils/strategies/strategy-info/cm-availability-condition.js +0 -43
  680. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +0 -308
  681. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.js +0 -267
  682. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +0 -70
  683. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info.js +0 -33
  684. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.js +0 -66
  685. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.js +0 -58
  686. package/dist/cjs/common-utils/utils/strategies/strategy-info/index.js +0 -20
  687. package/dist/cjs/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.js +0 -9
  688. package/dist/cjs/common-utils/utils/strategies/strategy-state/index.js +0 -3
  689. package/dist/cjs/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +0 -14
  690. package/dist/cjs/common-utils/utils/strategies/tokens/add-amount-in-target.js +0 -18
  691. package/dist/cjs/common-utils/utils/strategies/tokens/add-amount-in-target.spec.js +0 -29
  692. package/dist/cjs/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.js +0 -10
  693. package/dist/cjs/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.js +0 -12
  694. package/dist/cjs/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.js +0 -37
  695. package/dist/cjs/common-utils/utils/strategies/tokens/get-native-token-address.js +0 -8
  696. package/dist/cjs/common-utils/utils/strategies/tokens/index.js +0 -26
  697. package/dist/cjs/common-utils/utils/strategies/tokens/is-activated-token.js +0 -9
  698. package/dist/cjs/common-utils/utils/strategies/tokens/is-apy-with-points-exception.js +0 -10
  699. package/dist/cjs/common-utils/utils/strategies/tokens/is-collateral-token.js +0 -28
  700. package/dist/cjs/common-utils/utils/strategies/tokens/is-collateral-token.spec.js +0 -143
  701. package/dist/cjs/common-utils/utils/strategies/tokens/is-forbidden-token.js +0 -7
  702. package/dist/cjs/common-utils/utils/strategies/tokens/is-obtainable-token.js +0 -13
  703. package/dist/cjs/common-utils/utils/strategies/tokens/is-obtainable-token.spec.js +0 -148
  704. package/dist/cjs/common-utils/utils/strategies/tokens/is-usable-token.js +0 -15
  705. package/dist/cjs/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.js +0 -22
  706. package/dist/cjs/common-utils/utils/strategies/tokens/wrap-token-address.js +0 -8
  707. package/dist/cjs/common-utils/utils/strategies/tokens/wrap-token-address.spec.js +0 -15
  708. package/dist/cjs/common-utils/utils/strategies/types/chains.js +0 -1
  709. package/dist/cjs/common-utils/utils/strategies/types/credit-manager-data-legacy.js +0 -1
  710. package/dist/cjs/common-utils/utils/strategies/types/curator-filter.js +0 -1
  711. package/dist/cjs/common-utils/utils/strategies/types/index.js +0 -14
  712. package/dist/cjs/common-utils/utils/strategies/types/legacy-strategy-data-source.js +0 -30
  713. package/dist/cjs/common-utils/utils/strategies/types/points-slices.js +0 -1
  714. package/dist/cjs/common-utils/utils/strategies/types/sdk-state.js +0 -1
  715. package/dist/cjs/common-utils/utils/strategies/types/strategies-cm-list.js +0 -1
  716. package/dist/cjs/common-utils/utils/strategies/types/strategy-data-source.js +0 -1
  717. package/dist/cjs/common-utils/utils/strategies/types/strategy-data.js +0 -1
  718. package/dist/cjs/common-utils/utils/strategies/types/strategy-earnings.js +0 -1
  719. package/dist/cjs/common-utils/utils/strategies/types/strategy.js +0 -1
  720. package/dist/cjs/common-utils/utils/strategies/types/targetable.js +0 -1
  721. package/dist/cjs/common-utils/utils/strategies/types.js +0 -4
  722. package/dist/cjs/common-utils/utils/validation/index.js +0 -23
  723. package/dist/cjs/common-utils/utils/validation/is-zero-balance.js +0 -7
  724. package/dist/cjs/common-utils/utils/validation/validate-balance.js +0 -22
  725. package/dist/cjs/common-utils/utils/validation/validate-balance.spec.js +0 -54
  726. package/dist/cjs/common-utils/utils/validation/validate-balances.js +0 -17
  727. package/dist/cjs/common-utils/utils/validation/validate-balances.spec.js +0 -45
  728. package/dist/cjs/common-utils/utils/validation/validate-credit-manager.js +0 -8
  729. package/dist/cjs/common-utils/utils/validation/validate-credit-manager.spec.js +0 -36
  730. package/dist/cjs/common-utils/utils/validation/validate-hf.js +0 -10
  731. package/dist/cjs/common-utils/utils/validation/validate-hf.spec.js +0 -26
  732. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-quota-status.js +0 -14
  733. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.js +0 -29
  734. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-status.js +0 -37
  735. package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-status.spec.js +0 -98
  736. package/dist/cjs/common-utils/utils/validation/validate-open-account.js +0 -18
  737. package/dist/cjs/common-utils/utils/validation/validate-open-account.spec.js +0 -56
  738. package/dist/cjs/common-utils/utils/validation/validate-quota.js +0 -23
  739. package/dist/cjs/common-utils/utils/validation/validate-quota.spec.js +0 -88
  740. package/dist/cjs/common-utils/utils/validation/validate-token-to-obtain.js +0 -18
  741. package/dist/cjs/common-utils/utils/validation/validate-token-to-obtain.spec.js +0 -36
  742. package/dist/cjs/common-utils/utils/validation/validation-types.js +0 -1
  743. package/dist/cjs/onchain/accounts/intents/utils/convert-amount.js +0 -37
  744. package/dist/cjs/plugins/apy/ApyPlugin.js +0 -248
  745. package/dist/cjs/plugins/apy/apy-parser.js +0 -129
  746. package/dist/cjs/plugins/apy/constants.js +0 -7
  747. package/dist/cjs/plugins/apy/index.js +0 -18
  748. package/dist/cjs/plugins/apy/package.json +0 -1
  749. package/dist/cjs/plugins/apy/pool-apy-types.js +0 -1
  750. package/dist/cjs/plugins/apy/pool-apy-utils.js +0 -121
  751. package/dist/cjs/plugins/apy/strategy-data-source.js +0 -163
  752. package/dist/cjs/plugins/remote-configs/CustomConfigSource.js +0 -18
  753. package/dist/cjs/plugins/remote-configs/RemoteConfigSource.js +0 -26
  754. package/dist/cjs/plugins/remote-configs/RemoteConfigsPlugin.js +0 -127
  755. package/dist/cjs/plugins/remote-configs/index.js +0 -8
  756. package/dist/cjs/plugins/remote-configs/package.json +0 -1
  757. package/dist/cjs/preview/preview/applyRWAWrapUnwrap.js +0 -67
  758. package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +0 -71
  759. package/dist/cjs/preview/preview/previewOpenCreditAccount.js +0 -75
  760. package/dist/cjs/preview/preview/previewPoolOperation.js +0 -25
  761. package/dist/cjs/rewards/apy/index.js +0 -3
  762. package/dist/cjs/rewards/apy/output-details.js +0 -1
  763. package/dist/cjs/rewards/apy/output.js +0 -1
  764. package/dist/cjs/rewards/rewards/api.js +0 -70
  765. package/dist/cjs/rewards/rewards/common.js +0 -1
  766. package/dist/cjs/rewards/rewards/extra-apy.js +0 -72
  767. package/dist/cjs/rewards/rewards/index.js +0 -6
  768. package/dist/cjs/rewards/rewards/merkl-api.js +0 -22
  769. package/dist/esm/common-utils/axios-cache/AxiosCache.js +0 -95
  770. package/dist/esm/common-utils/axios-cache/index.js +0 -2
  771. package/dist/esm/common-utils/charts/credit-manager.js +0 -99
  772. package/dist/esm/common-utils/charts/credit-session.js +0 -206
  773. package/dist/esm/common-utils/charts/index.js +0 -9
  774. package/dist/esm/common-utils/charts/pool.js +0 -175
  775. package/dist/esm/common-utils/charts/token-data.js +0 -67
  776. package/dist/esm/common-utils/index.js +0 -96
  777. package/dist/esm/common-utils/package.json +0 -1
  778. package/dist/esm/common-utils/static/index.js +0 -5
  779. package/dist/esm/common-utils/static/pool-config.js +0 -1
  780. package/dist/esm/common-utils/static/strategy.js +0 -1
  781. package/dist/esm/common-utils/static/trading-pair.js +0 -1
  782. package/dist/esm/common-utils/test-utils/index.js +0 -92
  783. package/dist/esm/common-utils/utils/apy/bonus-apy-from-points.js +0 -4
  784. package/dist/esm/common-utils/utils/apy/calculate-borrow-rate-from-utilization.js +0 -21
  785. package/dist/esm/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.js +0 -34
  786. package/dist/esm/common-utils/utils/apy/calculate-earnings.js +0 -22
  787. package/dist/esm/common-utils/utils/apy/calculate-earnings.spec.js +0 -68
  788. package/dist/esm/common-utils/utils/apy/calculate-effective-borrow-rate.js +0 -7
  789. package/dist/esm/common-utils/utils/apy/calculate-safe-borrow-rate.js +0 -19
  790. package/dist/esm/common-utils/utils/apy/calculate-safe-borrow-rate.spec.js +0 -39
  791. package/dist/esm/common-utils/utils/apy/get-complex-apy-list.js +0 -17
  792. package/dist/esm/common-utils/utils/apy/get-rate-with-fee.js +0 -15
  793. package/dist/esm/common-utils/utils/apy/get-safe-base-borrow-rate.js +0 -13
  794. package/dist/esm/common-utils/utils/apy/get-single-quota-borrow-rate.js +0 -15
  795. package/dist/esm/common-utils/utils/apy/index.js +0 -11
  796. package/dist/esm/common-utils/utils/apy/max-apy-formula.js +0 -13
  797. package/dist/esm/common-utils/utils/assets-math.js +0 -184
  798. package/dist/esm/common-utils/utils/constants.js +0 -6
  799. package/dist/esm/common-utils/utils/creditAccount/calc-health-factor.js +0 -40
  800. package/dist/esm/common-utils/utils/creditAccount/calc-overall-apy.js +0 -45
  801. package/dist/esm/common-utils/utils/creditAccount/calc-quota-borrow-rate.js +0 -21
  802. package/dist/esm/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.js +0 -15
  803. package/dist/esm/common-utils/utils/creditAccount/debt.js +0 -44
  804. package/dist/esm/common-utils/utils/creditAccount/get-time-to-liquidation.js +0 -23
  805. package/dist/esm/common-utils/utils/creditAccount/index.js +0 -10
  806. package/dist/esm/common-utils/utils/creditAccount/liquidation-price.js +0 -38
  807. package/dist/esm/common-utils/utils/creditAccount/sort.js +0 -90
  808. package/dist/esm/common-utils/utils/index.js +0 -91
  809. package/dist/esm/common-utils/utils/price-math.js +0 -50
  810. package/dist/esm/common-utils/utils/strategies/assets/assets.js +0 -6
  811. package/dist/esm/common-utils/utils/strategies/assets/index.js +0 -2
  812. package/dist/esm/common-utils/utils/strategies/availability/check-boolean.js +0 -9
  813. package/dist/esm/common-utils/utils/strategies/availability/check-degen-nft.js +0 -12
  814. package/dist/esm/common-utils/utils/strategies/availability/index.js +0 -3
  815. package/dist/esm/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.js +0 -22
  816. package/dist/esm/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.js +0 -109
  817. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +0 -30
  818. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +0 -14
  819. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +0 -22
  820. package/dist/esm/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.js +0 -28
  821. package/dist/esm/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.js +0 -95
  822. package/dist/esm/common-utils/utils/strategies/credit-managers/index.js +0 -7
  823. package/dist/esm/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.js +0 -8
  824. package/dist/esm/common-utils/utils/strategies/eligibility/index.js +0 -3
  825. package/dist/esm/common-utils/utils/strategies/eligibility/is-strategy-eligible.js +0 -19
  826. package/dist/esm/common-utils/utils/strategies/eligibility/is-strategy-released.js +0 -7
  827. package/dist/esm/common-utils/utils/strategies/index.js +0 -65
  828. package/dist/esm/common-utils/utils/strategies/leverage/calculate-loss-coefficient.js +0 -9
  829. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.js +0 -15
  830. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.js +0 -20
  831. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.js +0 -304
  832. package/dist/esm/common-utils/utils/strategies/leverage/get-collateral-by-debt.js +0 -9
  833. package/dist/esm/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.js +0 -30
  834. package/dist/esm/common-utils/utils/strategies/leverage/get-factor-from-leverage.js +0 -8
  835. package/dist/esm/common-utils/utils/strategies/leverage/get-leverage-from-factor.js +0 -8
  836. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-debt.js +0 -46
  837. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-debt.spec.js +0 -222
  838. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.js +0 -6
  839. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.js +0 -19
  840. package/dist/esm/common-utils/utils/strategies/leverage/index.js +0 -11
  841. package/dist/esm/common-utils/utils/strategies/leverage/max-leverage-threshold.js +0 -16
  842. package/dist/esm/common-utils/utils/strategies/leverage/max-leverage.js +0 -16
  843. package/dist/esm/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.js +0 -15
  844. package/dist/esm/common-utils/utils/strategies/lists/get-available-strategies.js +0 -31
  845. package/dist/esm/common-utils/utils/strategies/lists/get-disabled-strategies.js +0 -32
  846. package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +0 -23
  847. package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list.js +0 -15
  848. package/dist/esm/common-utils/utils/strategies/lists/index.js +0 -4
  849. package/dist/esm/common-utils/utils/strategies/points/get-complex-points-list.js +0 -14
  850. package/dist/esm/common-utils/utils/strategies/points/get-points-info.js +0 -11
  851. package/dist/esm/common-utils/utils/strategies/points/get-points-rates.js +0 -7
  852. package/dist/esm/common-utils/utils/strategies/points/get-strategy-points.js +0 -40
  853. package/dist/esm/common-utils/utils/strategies/points/index.js +0 -5
  854. package/dist/esm/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.js +0 -2
  855. package/dist/esm/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.js +0 -17
  856. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-apy.js +0 -62
  857. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.js +0 -184
  858. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-points.js +0 -37
  859. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.js +0 -124
  860. package/dist/esm/common-utils/utils/strategies/strategy-info/cm-availability-condition.js +0 -42
  861. package/dist/esm/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +0 -307
  862. package/dist/esm/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.js +0 -264
  863. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +0 -69
  864. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info.js +0 -32
  865. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.js +0 -65
  866. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.js +0 -57
  867. package/dist/esm/common-utils/utils/strategies/strategy-info/index.js +0 -11
  868. package/dist/esm/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.js +0 -8
  869. package/dist/esm/common-utils/utils/strategies/strategy-state/index.js +0 -2
  870. package/dist/esm/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +0 -13
  871. package/dist/esm/common-utils/utils/strategies/tokens/add-amount-in-target.js +0 -17
  872. package/dist/esm/common-utils/utils/strategies/tokens/add-amount-in-target.spec.js +0 -29
  873. package/dist/esm/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.js +0 -9
  874. package/dist/esm/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.js +0 -11
  875. package/dist/esm/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.js +0 -37
  876. package/dist/esm/common-utils/utils/strategies/tokens/get-native-token-address.js +0 -7
  877. package/dist/esm/common-utils/utils/strategies/tokens/index.js +0 -13
  878. package/dist/esm/common-utils/utils/strategies/tokens/is-activated-token.js +0 -8
  879. package/dist/esm/common-utils/utils/strategies/tokens/is-apy-with-points-exception.js +0 -8
  880. package/dist/esm/common-utils/utils/strategies/tokens/is-collateral-token.js +0 -27
  881. package/dist/esm/common-utils/utils/strategies/tokens/is-collateral-token.spec.js +0 -143
  882. package/dist/esm/common-utils/utils/strategies/tokens/is-forbidden-token.js +0 -6
  883. package/dist/esm/common-utils/utils/strategies/tokens/is-obtainable-token.js +0 -12
  884. package/dist/esm/common-utils/utils/strategies/tokens/is-obtainable-token.spec.js +0 -148
  885. package/dist/esm/common-utils/utils/strategies/tokens/is-usable-token.js +0 -14
  886. package/dist/esm/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.js +0 -21
  887. package/dist/esm/common-utils/utils/strategies/tokens/wrap-token-address.js +0 -7
  888. package/dist/esm/common-utils/utils/strategies/tokens/wrap-token-address.spec.js +0 -15
  889. package/dist/esm/common-utils/utils/strategies/types/chains.js +0 -1
  890. package/dist/esm/common-utils/utils/strategies/types/credit-manager-data-legacy.js +0 -1
  891. package/dist/esm/common-utils/utils/strategies/types/curator-filter.js +0 -1
  892. package/dist/esm/common-utils/utils/strategies/types/index.js +0 -13
  893. package/dist/esm/common-utils/utils/strategies/types/legacy-strategy-data-source.js +0 -29
  894. package/dist/esm/common-utils/utils/strategies/types/points-slices.js +0 -1
  895. package/dist/esm/common-utils/utils/strategies/types/sdk-state.js +0 -1
  896. package/dist/esm/common-utils/utils/strategies/types/strategies-cm-list.js +0 -1
  897. package/dist/esm/common-utils/utils/strategies/types/strategy-data-source.js +0 -1
  898. package/dist/esm/common-utils/utils/strategies/types/strategy-data.js +0 -1
  899. package/dist/esm/common-utils/utils/strategies/types/strategy-earnings.js +0 -1
  900. package/dist/esm/common-utils/utils/strategies/types/strategy.js +0 -1
  901. package/dist/esm/common-utils/utils/strategies/types/targetable.js +0 -1
  902. package/dist/esm/common-utils/utils/strategies/types.js +0 -3
  903. package/dist/esm/common-utils/utils/validation/index.js +0 -12
  904. package/dist/esm/common-utils/utils/validation/is-zero-balance.js +0 -6
  905. package/dist/esm/common-utils/utils/validation/validate-balance.js +0 -21
  906. package/dist/esm/common-utils/utils/validation/validate-balance.spec.js +0 -54
  907. package/dist/esm/common-utils/utils/validation/validate-balances.js +0 -16
  908. package/dist/esm/common-utils/utils/validation/validate-balances.spec.js +0 -45
  909. package/dist/esm/common-utils/utils/validation/validate-credit-manager.js +0 -7
  910. package/dist/esm/common-utils/utils/validation/validate-credit-manager.spec.js +0 -36
  911. package/dist/esm/common-utils/utils/validation/validate-hf.js +0 -8
  912. package/dist/esm/common-utils/utils/validation/validate-hf.spec.js +0 -26
  913. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-quota-status.js +0 -13
  914. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.js +0 -29
  915. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-status.js +0 -36
  916. package/dist/esm/common-utils/utils/validation/validate-open-account-pool-status.spec.js +0 -98
  917. package/dist/esm/common-utils/utils/validation/validate-open-account.js +0 -17
  918. package/dist/esm/common-utils/utils/validation/validate-open-account.spec.js +0 -56
  919. package/dist/esm/common-utils/utils/validation/validate-quota.js +0 -22
  920. package/dist/esm/common-utils/utils/validation/validate-quota.spec.js +0 -88
  921. package/dist/esm/common-utils/utils/validation/validate-token-to-obtain.js +0 -17
  922. package/dist/esm/common-utils/utils/validation/validate-token-to-obtain.spec.js +0 -36
  923. package/dist/esm/common-utils/utils/validation/validation-types.js +0 -1
  924. package/dist/esm/onchain/accounts/intents/utils/convert-amount.js +0 -36
  925. package/dist/esm/plugins/apy/ApyPlugin.js +0 -247
  926. package/dist/esm/plugins/apy/apy-parser.js +0 -126
  927. package/dist/esm/plugins/apy/constants.js +0 -5
  928. package/dist/esm/plugins/apy/index.js +0 -7
  929. package/dist/esm/plugins/apy/package.json +0 -1
  930. package/dist/esm/plugins/apy/pool-apy-types.js +0 -1
  931. package/dist/esm/plugins/apy/pool-apy-utils.js +0 -116
  932. package/dist/esm/plugins/apy/strategy-data-source.js +0 -162
  933. package/dist/esm/plugins/remote-configs/CustomConfigSource.js +0 -17
  934. package/dist/esm/plugins/remote-configs/RemoteConfigSource.js +0 -25
  935. package/dist/esm/plugins/remote-configs/RemoteConfigsPlugin.js +0 -126
  936. package/dist/esm/plugins/remote-configs/index.js +0 -5
  937. package/dist/esm/plugins/remote-configs/package.json +0 -1
  938. package/dist/esm/preview/preview/applyRWAWrapUnwrap.js +0 -66
  939. package/dist/esm/preview/preview/previewAdjustCreditAccount.js +0 -70
  940. package/dist/esm/preview/preview/previewOpenCreditAccount.js +0 -74
  941. package/dist/esm/preview/preview/previewPoolOperation.js +0 -24
  942. package/dist/esm/rewards/apy/index.js +0 -3
  943. package/dist/esm/rewards/apy/output-details.js +0 -1
  944. package/dist/esm/rewards/apy/output.js +0 -1
  945. package/dist/esm/rewards/rewards/api.js +0 -69
  946. package/dist/esm/rewards/rewards/common.js +0 -1
  947. package/dist/esm/rewards/rewards/extra-apy.js +0 -68
  948. package/dist/esm/rewards/rewards/index.js +0 -3
  949. package/dist/esm/rewards/rewards/merkl-api.js +0 -19
  950. package/dist/types/common-utils/axios-cache/AxiosCache.d.ts +0 -31
  951. package/dist/types/common-utils/axios-cache/index.d.ts +0 -2
  952. package/dist/types/common-utils/charts/credit-manager-payload.d.ts +0 -53
  953. package/dist/types/common-utils/charts/credit-manager.d.ts +0 -51
  954. package/dist/types/common-utils/charts/credit-session.d.ts +0 -113
  955. package/dist/types/common-utils/charts/credit-sessions-payload.d.ts +0 -113
  956. package/dist/types/common-utils/charts/graph-payload.d.ts +0 -12
  957. package/dist/types/common-utils/charts/index.d.ts +0 -9
  958. package/dist/types/common-utils/charts/pool-payload.d.ts +0 -114
  959. package/dist/types/common-utils/charts/pool.d.ts +0 -94
  960. package/dist/types/common-utils/charts/token-data.d.ts +0 -47
  961. package/dist/types/common-utils/index.d.ts +0 -117
  962. package/dist/types/common-utils/static/index.d.ts +0 -5
  963. package/dist/types/common-utils/static/migration-config.d.ts +0 -13
  964. package/dist/types/common-utils/static/pool-config.d.ts +0 -14
  965. package/dist/types/common-utils/static/strategy.d.ts +0 -86
  966. package/dist/types/common-utils/static/trading-pair.d.ts +0 -18
  967. package/dist/types/common-utils/test-utils/index.d.ts +0 -19
  968. package/dist/types/common-utils/utils/apy/bonus-apy-from-points.d.ts +0 -7
  969. package/dist/types/common-utils/utils/apy/calculate-borrow-rate-from-utilization.d.ts +0 -5
  970. package/dist/types/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.d.ts +0 -1
  971. package/dist/types/common-utils/utils/apy/calculate-earnings.d.ts +0 -19
  972. package/dist/types/common-utils/utils/apy/calculate-earnings.spec.d.ts +0 -1
  973. package/dist/types/common-utils/utils/apy/calculate-effective-borrow-rate.d.ts +0 -9
  974. package/dist/types/common-utils/utils/apy/calculate-safe-borrow-rate.d.ts +0 -14
  975. package/dist/types/common-utils/utils/apy/calculate-safe-borrow-rate.spec.d.ts +0 -1
  976. package/dist/types/common-utils/utils/apy/get-complex-apy-list.d.ts +0 -8
  977. package/dist/types/common-utils/utils/apy/get-rate-with-fee.d.ts +0 -10
  978. package/dist/types/common-utils/utils/apy/get-safe-base-borrow-rate.d.ts +0 -7
  979. package/dist/types/common-utils/utils/apy/get-single-quota-borrow-rate.d.ts +0 -14
  980. package/dist/types/common-utils/utils/apy/index.d.ts +0 -11
  981. package/dist/types/common-utils/utils/apy/max-apy-formula.d.ts +0 -9
  982. package/dist/types/common-utils/utils/assets-math.d.ts +0 -117
  983. package/dist/types/common-utils/utils/constants.d.ts +0 -7
  984. package/dist/types/common-utils/utils/creditAccount/calc-health-factor.d.ts +0 -32
  985. package/dist/types/common-utils/utils/creditAccount/calc-overall-apy.d.ts +0 -41
  986. package/dist/types/common-utils/utils/creditAccount/calc-quota-borrow-rate.d.ts +0 -24
  987. package/dist/types/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.d.ts +0 -18
  988. package/dist/types/common-utils/utils/creditAccount/debt.d.ts +0 -39
  989. package/dist/types/common-utils/utils/creditAccount/get-time-to-liquidation.d.ts +0 -24
  990. package/dist/types/common-utils/utils/creditAccount/index.d.ts +0 -10
  991. package/dist/types/common-utils/utils/creditAccount/liquidation-price.d.ts +0 -31
  992. package/dist/types/common-utils/utils/creditAccount/sort.d.ts +0 -59
  993. package/dist/types/common-utils/utils/creditAccount/types.d.ts +0 -22
  994. package/dist/types/common-utils/utils/index.d.ts +0 -104
  995. package/dist/types/common-utils/utils/price-math.d.ts +0 -49
  996. package/dist/types/common-utils/utils/strategies/assets/assets.d.ts +0 -7
  997. package/dist/types/common-utils/utils/strategies/assets/index.d.ts +0 -2
  998. package/dist/types/common-utils/utils/strategies/availability/check-boolean.d.ts +0 -4
  999. package/dist/types/common-utils/utils/strategies/availability/check-degen-nft.d.ts +0 -8
  1000. package/dist/types/common-utils/utils/strategies/availability/index.d.ts +0 -3
  1001. package/dist/types/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.d.ts +0 -21
  1002. package/dist/types/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.d.ts +0 -1
  1003. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.d.ts +0 -14
  1004. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.d.ts +0 -10
  1005. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.d.ts +0 -12
  1006. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +0 -17
  1007. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.d.ts +0 -1
  1008. package/dist/types/common-utils/utils/strategies/credit-managers/index.d.ts +0 -7
  1009. package/dist/types/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.d.ts +0 -6
  1010. package/dist/types/common-utils/utils/strategies/eligibility/index.d.ts +0 -3
  1011. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-eligible.d.ts +0 -16
  1012. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-released.d.ts +0 -4
  1013. package/dist/types/common-utils/utils/strategies/index.d.ts +0 -77
  1014. package/dist/types/common-utils/utils/strategies/leverage/calculate-loss-coefficient.d.ts +0 -4
  1015. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.d.ts +0 -15
  1016. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.d.ts +0 -14
  1017. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.d.ts +0 -1
  1018. package/dist/types/common-utils/utils/strategies/leverage/get-collateral-by-debt.d.ts +0 -5
  1019. package/dist/types/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.d.ts +0 -1
  1020. package/dist/types/common-utils/utils/strategies/leverage/get-factor-from-leverage.d.ts +0 -7
  1021. package/dist/types/common-utils/utils/strategies/leverage/get-leverage-from-factor.d.ts +0 -5
  1022. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-debt.d.ts +0 -24
  1023. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-debt.spec.d.ts +0 -1
  1024. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.d.ts +0 -7
  1025. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.d.ts +0 -1
  1026. package/dist/types/common-utils/utils/strategies/leverage/index.d.ts +0 -11
  1027. package/dist/types/common-utils/utils/strategies/leverage/max-leverage-threshold.d.ts +0 -8
  1028. package/dist/types/common-utils/utils/strategies/leverage/max-leverage.d.ts +0 -12
  1029. package/dist/types/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.d.ts +0 -14
  1030. package/dist/types/common-utils/utils/strategies/lists/get-available-strategies.d.ts +0 -11
  1031. package/dist/types/common-utils/utils/strategies/lists/get-disabled-strategies.d.ts +0 -12
  1032. package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list-core.d.ts +0 -16
  1033. package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list.d.ts +0 -10
  1034. package/dist/types/common-utils/utils/strategies/lists/index.d.ts +0 -4
  1035. package/dist/types/common-utils/utils/strategies/points/get-complex-points-list.d.ts +0 -7
  1036. package/dist/types/common-utils/utils/strategies/points/get-points-info.d.ts +0 -12
  1037. package/dist/types/common-utils/utils/strategies/points/get-points-rates.d.ts +0 -6
  1038. package/dist/types/common-utils/utils/strategies/points/get-strategy-points.d.ts +0 -27
  1039. package/dist/types/common-utils/utils/strategies/points/index.d.ts +0 -5
  1040. package/dist/types/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.d.ts +0 -2
  1041. package/dist/types/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.d.ts +0 -31
  1042. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +0 -31
  1043. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.d.ts +0 -1
  1044. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +0 -26
  1045. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.d.ts +0 -1
  1046. package/dist/types/common-utils/utils/strategies/strategy-info/cm-availability-condition.d.ts +0 -6
  1047. package/dist/types/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.d.ts +0 -22
  1048. package/dist/types/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.d.ts +0 -1
  1049. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-info-core.d.ts +0 -21
  1050. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-info.d.ts +0 -5
  1051. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.d.ts +0 -17
  1052. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.d.ts +0 -31
  1053. package/dist/types/common-utils/utils/strategies/strategy-info/index.d.ts +0 -11
  1054. package/dist/types/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.d.ts +0 -5
  1055. package/dist/types/common-utils/utils/strategies/strategy-info/types.d.ts +0 -113
  1056. package/dist/types/common-utils/utils/strategies/strategy-state/index.d.ts +0 -2
  1057. package/dist/types/common-utils/utils/strategies/strategy-state/is-strategy-disabled.d.ts +0 -7
  1058. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +0 -10
  1059. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.spec.d.ts +0 -1
  1060. package/dist/types/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.d.ts +0 -8
  1061. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +0 -16
  1062. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.d.ts +0 -1
  1063. package/dist/types/common-utils/utils/strategies/tokens/get-native-token-address.d.ts +0 -4
  1064. package/dist/types/common-utils/utils/strategies/tokens/index.d.ts +0 -13
  1065. package/dist/types/common-utils/utils/strategies/tokens/is-activated-token.d.ts +0 -10
  1066. package/dist/types/common-utils/utils/strategies/tokens/is-apy-with-points-exception.d.ts +0 -6
  1067. package/dist/types/common-utils/utils/strategies/tokens/is-collateral-token.d.ts +0 -17
  1068. package/dist/types/common-utils/utils/strategies/tokens/is-collateral-token.spec.d.ts +0 -1
  1069. package/dist/types/common-utils/utils/strategies/tokens/is-forbidden-token.d.ts +0 -9
  1070. package/dist/types/common-utils/utils/strategies/tokens/is-obtainable-token.d.ts +0 -11
  1071. package/dist/types/common-utils/utils/strategies/tokens/is-obtainable-token.spec.d.ts +0 -1
  1072. package/dist/types/common-utils/utils/strategies/tokens/is-usable-token.d.ts +0 -6
  1073. package/dist/types/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.d.ts +0 -20
  1074. package/dist/types/common-utils/utils/strategies/tokens/wrap-token-address.d.ts +0 -5
  1075. package/dist/types/common-utils/utils/strategies/tokens/wrap-token-address.spec.d.ts +0 -1
  1076. package/dist/types/common-utils/utils/strategies/types/chains.d.ts +0 -6
  1077. package/dist/types/common-utils/utils/strategies/types/credit-manager-data-legacy.d.ts +0 -34
  1078. package/dist/types/common-utils/utils/strategies/types/curator-filter.d.ts +0 -5
  1079. package/dist/types/common-utils/utils/strategies/types/index.d.ts +0 -13
  1080. package/dist/types/common-utils/utils/strategies/types/legacy-strategy-data-source.d.ts +0 -7
  1081. package/dist/types/common-utils/utils/strategies/types/points-slices.d.ts +0 -24
  1082. package/dist/types/common-utils/utils/strategies/types/sdk-state.d.ts +0 -17
  1083. package/dist/types/common-utils/utils/strategies/types/strategies-cm-list.d.ts +0 -9
  1084. package/dist/types/common-utils/utils/strategies/types/strategy-data-source.d.ts +0 -22
  1085. package/dist/types/common-utils/utils/strategies/types/strategy-data.d.ts +0 -19
  1086. package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +0 -47
  1087. package/dist/types/common-utils/utils/strategies/types/strategy.d.ts +0 -20
  1088. package/dist/types/common-utils/utils/strategies/types/targetable.d.ts +0 -9
  1089. package/dist/types/common-utils/utils/strategies/types.d.ts +0 -14
  1090. package/dist/types/common-utils/utils/validation/index.d.ts +0 -12
  1091. package/dist/types/common-utils/utils/validation/is-zero-balance.d.ts +0 -4
  1092. package/dist/types/common-utils/utils/validation/validate-balance.d.ts +0 -25
  1093. package/dist/types/common-utils/utils/validation/validate-balance.spec.d.ts +0 -1
  1094. package/dist/types/common-utils/utils/validation/validate-balances.d.ts +0 -13
  1095. package/dist/types/common-utils/utils/validation/validate-balances.spec.d.ts +0 -1
  1096. package/dist/types/common-utils/utils/validation/validate-credit-manager.d.ts +0 -13
  1097. package/dist/types/common-utils/utils/validation/validate-credit-manager.spec.d.ts +0 -1
  1098. package/dist/types/common-utils/utils/validation/validate-hf.d.ts +0 -12
  1099. package/dist/types/common-utils/utils/validation/validate-hf.spec.d.ts +0 -1
  1100. package/dist/types/common-utils/utils/validation/validate-open-account-pool-quota-status.d.ts +0 -10
  1101. package/dist/types/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.d.ts +0 -1
  1102. package/dist/types/common-utils/utils/validation/validate-open-account-pool-status.d.ts +0 -26
  1103. package/dist/types/common-utils/utils/validation/validate-open-account-pool-status.spec.d.ts +0 -1
  1104. package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +0 -25
  1105. package/dist/types/common-utils/utils/validation/validate-open-account.spec.d.ts +0 -1
  1106. package/dist/types/common-utils/utils/validation/validate-quota.d.ts +0 -24
  1107. package/dist/types/common-utils/utils/validation/validate-quota.spec.d.ts +0 -1
  1108. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.d.ts +0 -17
  1109. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.spec.d.ts +0 -1
  1110. package/dist/types/common-utils/utils/validation/validation-types.d.ts +0 -10
  1111. package/dist/types/onchain/accounts/intents/utils/convert-amount.d.ts +0 -13
  1112. package/dist/types/plugins/apy/ApyPlugin.d.ts +0 -59
  1113. package/dist/types/plugins/apy/apy-parser.d.ts +0 -10
  1114. package/dist/types/plugins/apy/constants.d.ts +0 -5
  1115. package/dist/types/plugins/apy/index.d.ts +0 -7
  1116. package/dist/types/plugins/apy/pool-apy-types.d.ts +0 -45
  1117. package/dist/types/plugins/apy/pool-apy-utils.d.ts +0 -77
  1118. package/dist/types/plugins/apy/strategy-data-source.d.ts +0 -21
  1119. package/dist/types/plugins/apy/types.d.ts +0 -64
  1120. package/dist/types/plugins/remote-configs/CustomConfigSource.d.ts +0 -16
  1121. package/dist/types/plugins/remote-configs/RemoteConfigSource.d.ts +0 -35
  1122. package/dist/types/plugins/remote-configs/RemoteConfigsPlugin.d.ts +0 -29
  1123. package/dist/types/plugins/remote-configs/index.d.ts +0 -8
  1124. package/dist/types/plugins/remote-configs/types.d.ts +0 -26
  1125. package/dist/types/preview/preview/applyRWAWrapUnwrap.d.ts +0 -17
  1126. package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +0 -12
  1127. package/dist/types/preview/preview/previewPoolOperation.d.ts +0 -11
  1128. package/dist/types/rewards/apy/index.d.ts +0 -3
  1129. package/dist/types/rewards/apy/output-details.d.ts +0 -99
  1130. package/dist/types/rewards/apy/output.d.ts +0 -25
  1131. package/dist/types/rewards/rewards/api.d.ts +0 -39
  1132. package/dist/types/rewards/rewards/common.d.ts +0 -9
  1133. package/dist/types/rewards/rewards/extra-apy.d.ts +0 -37
  1134. package/dist/types/rewards/rewards/index.d.ts +0 -3
  1135. package/dist/types/rewards/rewards/merkl-api.d.ts +0 -48
  1136. /package/dist/cjs/{common-utils/charts/credit-manager-payload.js → model/analytics.js} +0 -0
  1137. /package/dist/cjs/{common-utils/charts/credit-sessions-payload.js → model/errors.js} +0 -0
  1138. /package/dist/cjs/{common-utils/charts/graph-payload.js → model/withdrawals.js} +0 -0
  1139. /package/dist/cjs/{common-utils/utils/creditAccount → offchain/analytics}/types.js +0 -0
  1140. /package/dist/cjs/{common-utils/utils/strategies/strategy-info → offchain/opportunities}/types.js +0 -0
  1141. /package/dist/cjs/{plugins/apy → offchain/positions}/types.js +0 -0
  1142. /package/dist/cjs/{plugins/remote-configs → onchain/opportunities}/types.js +0 -0
  1143. /package/dist/cjs/{common-utils/charts/pool-payload.js → sdk/analytics/types.js} +0 -0
  1144. /package/dist/cjs/{common-utils/static/migration-config.js → sdk/execute/types.js} +0 -0
  1145. /package/dist/esm/{common-utils/charts/credit-manager-payload.js → model/analytics.js} +0 -0
  1146. /package/dist/esm/{common-utils/charts/credit-sessions-payload.js → model/errors.js} +0 -0
  1147. /package/dist/esm/{common-utils/charts/graph-payload.js → model/withdrawals.js} +0 -0
  1148. /package/dist/esm/{common-utils/utils/creditAccount → offchain/analytics}/types.js +0 -0
  1149. /package/dist/esm/{common-utils/utils/strategies/strategy-info → offchain/opportunities}/types.js +0 -0
  1150. /package/dist/esm/{plugins/apy → offchain/positions}/types.js +0 -0
  1151. /package/dist/esm/{plugins/remote-configs → onchain/opportunities}/types.js +0 -0
  1152. /package/dist/esm/{common-utils/charts/pool-payload.js → sdk/analytics/types.js} +0 -0
  1153. /package/dist/esm/{common-utils/static/migration-config.js → sdk/execute/types.js} +0 -0
@@ -5,8 +5,10 @@ import { CreditAccountCompressorV310Contract } from "./credit-account-compressor
5
5
  import { CreditAccountCompressor } from "./credit-account-compressor/CreditAccountCompressor.js";
6
6
  import "./credit-account-compressor/index.js";
7
7
  import { CreditAccountsServiceV310 } from "./CreditAccountsServiceV310.js";
8
- import { IntentPreviewError, refuse } from "./intents/refusal.js";
8
+ import { isPhantomToken } from "./intents/utils/pick-token.js";
9
+ import { borrowable } from "./intents/guards.js";
9
10
  import { fetchCreditAccountSlice, toCreditAccountSlice } from "./intents/utils/credit-account-slice.js";
11
+ import { calcDefaultQuota, calcQuotaUpdate, calcRecommendedQuota, roundUpQuota } from "./quota-utils.js";
10
12
  import { CreditAccountOperationsService } from "./intents/index.js";
11
13
  import { LIQUIDATION_APPROVAL_BUFFER, LIQUIDATION_COMPRESSOR_V313_ADDRESS } from "./liquidations/constants.js";
12
14
  import { LiquidationsService } from "./liquidations/LiquidationsService.js";
@@ -16,7 +18,6 @@ import "./types.js";
16
18
  import { DELAYED_INTENT_TYPES, DELAYED_INTENT_VERSION, decodeDelayedIntent, encodeDelayedIntent } from "./withdrawal-compressor/intent-codec.js";
17
19
  import { AbstractWithdrawalCompressorContract, iCreditAccountAbi, toClaimableWithdrawal, toPendingWithdrawal, toRequestableWithdrawal } from "./withdrawal-compressor/AbstractWithdrawalCompressorContract.js";
18
20
  import { getWithdrawalCompressorAddress } from "./withdrawal-compressor/addresses.js";
19
- import { InvalidDelayedIntentError } from "./withdrawal-compressor/errors.js";
20
21
  import { RedemptionLoggerV310Contract } from "./withdrawal-compressor/RedemptionLoggerV310Contract.js";
21
22
  import { createRedemptionLogger } from "./withdrawal-compressor/createRedemptionLogger.js";
22
23
  import { WithdrawalCompressorV310Contract } from "./withdrawal-compressor/WithdrawalCompressorV310Contract.js";
@@ -25,4 +26,4 @@ import { toWithdrawalStatus } from "./withdrawal-compressor/types.js";
25
26
  import { WithdrawalCompressorV313Contract } from "./withdrawal-compressor/WithdrawalCompressorV313Contract.js";
26
27
  import { createWithdrawalCompressor } from "./withdrawal-compressor/createWithdrawalCompressor.js";
27
28
  import "./withdrawal-compressor/index.js";
28
- export { AbstractWithdrawalCompressorContract, AccountBotsService, CreditAccountCompressor, CreditAccountCompressorV310Contract, CreditAccountOperationsService, CreditAccountsServiceV310, DELAYED_INTENT_TYPES, DELAYED_INTENT_VERSION, IntentPreviewError, InvalidDelayedIntentError, LIQUIDATION_APPROVAL_BUFFER, LIQUIDATION_COMPRESSOR_V313_ADDRESS, LiquidationsService, MultichainLiquidationsService, PeripheryCompressorV310Contract, RedemptionLoggerV310Contract, WithdrawalCompressorV310Contract, WithdrawalCompressorV311Contract, WithdrawalCompressorV313Contract, createRedemptionLogger, createWithdrawalCompressor, decodeDelayedIntent, encodeDelayedIntent, fetchCreditAccountSlice, getWithdrawalCompressorAddress, iCreditAccountAbi, refuse, toClaimableWithdrawal, toCreditAccountSlice, toPendingWithdrawal, toRequestableWithdrawal, toWithdrawalStatus };
29
+ export { AbstractWithdrawalCompressorContract, AccountBotsService, CreditAccountCompressor, CreditAccountCompressorV310Contract, CreditAccountOperationsService, CreditAccountsServiceV310, DELAYED_INTENT_TYPES, DELAYED_INTENT_VERSION, LIQUIDATION_APPROVAL_BUFFER, LIQUIDATION_COMPRESSOR_V313_ADDRESS, LiquidationsService, MultichainLiquidationsService, PeripheryCompressorV310Contract, RedemptionLoggerV310Contract, WithdrawalCompressorV310Contract, WithdrawalCompressorV311Contract, WithdrawalCompressorV313Contract, borrowable, calcDefaultQuota, calcQuotaUpdate, calcRecommendedQuota, createRedemptionLogger, createWithdrawalCompressor, decodeDelayedIntent, encodeDelayedIntent, fetchCreditAccountSlice, getWithdrawalCompressorAddress, iCreditAccountAbi, isPhantomToken, roundUpQuota, toClaimableWithdrawal, toCreditAccountSlice, toPendingWithdrawal, toRequestableWithdrawal, toWithdrawalStatus };
@@ -1,6 +1,6 @@
1
- import { PERCENTAGE_FACTOR } from "../../constants/math.js";
2
- import "../../constants/index.js";
3
- import { IntentPreviewError } from "./refusal.js";
1
+ import { MIN_HEALTH_FACTOR_FACADE, checkBorrowLimit, checkCollateralised, checkCreditManagerPaused, checkForbiddenToken, checkMarketExpired, checkQuotaLimit } from "../../validation/checks.js";
2
+ import { raise } from "../../validation/refusal.js";
3
+ import { toToken } from "../../validation/token.js";
4
4
  import { eq } from "./utils/common.js";
5
5
  import { isPhantomToken } from "./utils/pick-token.js";
6
6
  //#region src/onchain/accounts/intents/guards.ts
@@ -24,11 +24,15 @@ import { isPhantomToken } from "./utils/pick-token.js";
24
24
  */
25
25
  function assertMarketOperable(suite) {
26
26
  const creditManager = suite.creditManager.address;
27
- if (suite.isPaused) throw new IntentPreviewError("marketPaused", { creditManager }, `${creditManager} is paused`);
28
- if (suite.isExpired) throw new IntentPreviewError("marketExpired", {
27
+ raise(checkCreditManagerPaused({
28
+ isPaused: suite.isPaused,
29
+ creditManager
30
+ }), `${creditManager} is paused`);
31
+ raise(checkMarketExpired({
32
+ isExpired: suite.isExpired,
29
33
  creditManager,
30
34
  expirationDate: suite.creditFacade.expirationDate
31
- }, `${creditManager} expired at ${suite.creditFacade.expirationDate}`);
35
+ }), `${creditManager} expired at ${suite.creditFacade.expirationDate}`);
32
36
  }
33
37
  /**
34
38
  * What the pool will hand this manager in one transaction: the tightest of its
@@ -39,30 +43,35 @@ function assertMarketOperable(suite) {
39
43
  function borrowable(suite) {
40
44
  const { pool } = suite.market.pool;
41
45
  const { maxDebtPerBlockMultiplier, maxDebt } = suite.creditFacade;
42
- if (maxDebtPerBlockMultiplier === 0) return 0n;
46
+ if (maxDebtPerBlockMultiplier === 0) return {
47
+ limit: 0n,
48
+ binding: "facadePerBlockCap"
49
+ };
43
50
  const available = pool.creditManagerDebtParams.get(suite.creditManager.address)?.available;
44
51
  return [
45
- pool.availableLiquidity,
46
- maxDebt * BigInt(maxDebtPerBlockMultiplier),
47
- ...available === void 0 ? [] : [available]
48
- ].reduce((a, b) => a < b ? a : b);
52
+ {
53
+ limit: pool.availableLiquidity,
54
+ binding: "poolAvailableLiquidity"
55
+ },
56
+ {
57
+ limit: maxDebt * BigInt(maxDebtPerBlockMultiplier),
58
+ binding: "facadePerBlockCap"
59
+ },
60
+ ...available === void 0 ? [] : [{
61
+ limit: available,
62
+ binding: "managerDebtAvailable"
63
+ }]
64
+ ].reduce((a, b) => b.limit < a.limit ? b : a);
49
65
  }
50
66
  /** The pool has to be able to lend what the plan means to draw. */
51
- function assertCanBorrow(suite, amount) {
52
- const limit = borrowable(suite);
53
- if (amount > limit) {
54
- const token = suite.market.pool.underlying;
55
- throw new IntentPreviewError("insufficientPoolLiquidity", {
56
- requested: {
57
- token,
58
- balance: amount
59
- },
60
- available: {
61
- token,
62
- balance: limit
63
- }
64
- }, `borrow: ${amount} exceeds what the pool can lend now (${limit})`);
65
- }
67
+ function assertCanBorrow(sdk, suite, amount) {
68
+ const { limit, binding } = borrowable(suite);
69
+ raise(checkBorrowLimit({
70
+ requested: amount,
71
+ available: limit,
72
+ binding,
73
+ underlying: toToken(sdk, suite.market.pool.underlying)
74
+ }), `borrow: ${amount} exceeds what the pool can lend now (${limit})`);
66
75
  }
67
76
  /**
68
77
  * What the account is allowed to end up holding more of than it started with.
@@ -82,16 +91,17 @@ function assertGrowthAllowed(args) {
82
91
  const underlying = market.pool.underlying;
83
92
  for (const { token, balance } of after) {
84
93
  if (balance <= (before.find((a) => eq(a.token, token))?.balance ?? 0n)) continue;
85
- if (forbidden.some((f) => eq(f, token))) throw new IntentPreviewError("forbiddenToken", { token }, `${token} is forbidden in this market and the plan buys more of it`);
94
+ raise(checkForbiddenToken({
95
+ token: toToken(sdk, token),
96
+ isForbidden: forbidden.some((f) => eq(f, token))
97
+ }), `${token} is forbidden in this market and the plan buys more of it`);
86
98
  if (eq(token, underlying) || isPhantomToken(sdk, token)) continue;
87
- if (!market.pool.pqk.hasActiveQuota(token)) throw new IntentPreviewError("quotaLimitReached", {
88
- token,
99
+ if (!market.pool.pqk.hasActiveQuota(token)) raise(checkQuotaLimit({
100
+ token: toToken(sdk, token),
89
101
  requested: void 0,
90
- available: {
91
- token: underlying,
92
- balance: 0n
93
- }
94
- }, `${token} takes no quota in this market, so it counts as no collateral`);
102
+ available: 0n,
103
+ underlying: toToken(sdk, underlying)
104
+ }), `${token} takes no quota in this market, so it counts as no collateral`);
95
105
  }
96
106
  }
97
107
  /**
@@ -106,7 +116,7 @@ function assertGrowthAllowed(args) {
106
116
  * - here, `1.0` — what the facade enforces, so what a plan must clear to land;
107
117
  * - `maxWithdrawCollateral` sizes at `MIN_HF_LIMITED + 2` — a *sizing* helper
108
118
  * leaving headroom, which is not the same as a validity check;
109
- * - `validateHF` refuses at or below `MIN_HF_LIMITED` — a form's own caution.
119
+ * - a form refuses at or below `MIN_HF_LIMITED` (`MIN_HEALTH_FACTOR_FORM`).
110
120
  *
111
121
  * Raising this one to `MIN_HF_LIMITED` was tried and reverted: it made
112
122
  * `maxWithdraw` hand back a ceiling this guard then refused, and it blocked
@@ -124,35 +134,30 @@ function assertGrowthAllowed(args) {
124
134
  * still be refused on-chain after passing here.
125
135
  */
126
136
  function assertCollateralised(healthFactorBps, safePrices) {
127
- const required = Number(PERCENTAGE_FACTOR);
128
- if (healthFactorBps < required) throw new IntentPreviewError("insufficientCollateral", {
137
+ const required = MIN_HEALTH_FACTOR_FACADE;
138
+ raise(checkCollateralised({
129
139
  healthFactor: healthFactorBps,
130
140
  required,
131
141
  safePrices
132
- }, `the account would end at a health factor of ${healthFactorBps}, below ${required}`);
142
+ }), `the account would end at a health factor of ${healthFactorBps}, below ${required}`);
133
143
  }
134
144
  /**
135
145
  * A quota can only be raised as far as the market still has room for: past the
136
146
  * token's limit the keeper takes nothing more, whoever is asking.
137
147
  */
138
- function assertQuotaHeadroom(market, increases) {
148
+ function assertQuotaHeadroom(sdk, market, increases) {
139
149
  const underlying = market.pool.underlying;
140
150
  for (const { token, balance } of increases) {
141
151
  if (balance <= 0n) continue;
142
152
  const quota = market.pool.pqk.quotas.get(token);
143
153
  if (!quota) continue;
144
154
  const left = quota.limit - quota.totalQuoted;
145
- if (balance > left) throw new IntentPreviewError("quotaLimitReached", {
146
- token,
147
- requested: {
148
- token: underlying,
149
- balance
150
- },
151
- available: {
152
- token: underlying,
153
- balance: left
154
- }
155
- }, `${token} has ${left} of quota left, the plan needs ${balance}`);
155
+ raise(checkQuotaLimit({
156
+ token: toToken(sdk, token),
157
+ requested: balance,
158
+ available: left,
159
+ underlying: toToken(sdk, underlying)
160
+ }), `${token} has ${left} of quota left, the plan needs ${balance}`);
156
161
  }
157
162
  }
158
163
  //#endregion
@@ -1,11 +1,13 @@
1
1
  import { SDKConstruct } from "../../base/SDKConstruct.js";
2
- import { MIN_HF_LIMITED } from "../../../common-utils/utils/validation/validate-hf.js";
3
- import { IntentPreviewError, refuse } from "./refusal.js";
4
- import { assertMarketOperable } from "./guards.js";
2
+ import { MIN_HF_LIMITED } from "../../validation/checks.js";
3
+ import { IntentPreviewError, refuse } from "../../validation/refusal.js";
4
+ import { isPhantomToken } from "./utils/pick-token.js";
5
+ import { assertMarketOperable, borrowable } from "./guards.js";
6
+ import { calcLeverageBand } from "./leverage-band.js";
5
7
  import { maxProportionalWithdrawal } from "./math.js";
6
8
  import { maxWithdrawCollateral } from "./maxWithdrawCollateral.js";
7
9
  import { fetchCreditAccountSlice, toCreditAccountSlice } from "./utils/credit-account-slice.js";
8
- import { previewOpenStrategy } from "./open-strategy.js";
10
+ import { buildOpenStrategyState } from "./open-strategy.js";
9
11
  import { planAddCollateral, planAdjustLeverage, planAdjustLeverageDelayed, planDeposit, planRepay, planWithdraw, planWithdrawAsset, planWithdrawDelayed } from "./plan.js";
10
12
  import { realize } from "./realize.js";
11
13
  import { accountView } from "./view.js";
@@ -43,17 +45,27 @@ var CreditAccountOperationsService = class extends SDKConstruct {
43
45
  }));
44
46
  }
45
47
  /**
46
- * Largest `WITHDRAW` amount (in underlying) the account can take out while
47
- * keeping leverage and staying inside the facade's debt band — the ceiling a
48
- * withdraw form should offer. Taking everything out is the same intent with
49
- * `MAX_UINT256` for an amount, and needs none of this arithmetic.
48
+ * Both ends of what a `WITHDRAW` can take out, in underlying: the largest
49
+ * partial withdrawal that keeps leverage and stays inside the facade's debt
50
+ * band, and the net value an exit hands over. They are reported together
51
+ * because a withdraw form needs both the range it may offer, and the one
52
+ * amount past it that is allowed — and because the distance between them is
53
+ * the account's own, not a constant a caller could assume.
54
+ *
55
+ * Takes no target health factor, unlike {@link maxWithdrawCollateral}: a
56
+ * proportional withdrawal leaves the factor where it found it, and the
57
+ * facade's `minDebt` is what bounds it.
50
58
  *
51
59
  * @param props - Account slice and the SDK holding its market
52
- * @returns Amount in underlying units; `0n` when nothing can leave
60
+ * @returns The two ceilings, see {@link WithdrawCeilings} for the gap between
61
+ * them
53
62
  */
54
63
  maxWithdraw(props) {
55
64
  const view = accountView(props.creditAccount, props.sdk);
56
- return maxProportionalWithdrawal(view, view.band);
65
+ return {
66
+ partial: maxProportionalWithdrawal(view, view.band),
67
+ exit: view.collateral > 0n ? view.collateral : 0n
68
+ };
57
69
  }
58
70
  /**
59
71
  * Debt a `REPAY` would have to cover to settle the account, in underlying
@@ -72,20 +84,44 @@ var CreditAccountOperationsService = class extends SDKConstruct {
72
84
  return accountView(props.creditAccount, props.sdk).debt;
73
85
  }
74
86
  /**
87
+ * The leverages a position of a given size can be opened at, or moved to.
88
+ *
89
+ * A credit manager's `maxLeverage` follows from the liquidation threshold
90
+ * alone, so it is the same for a hundred dollars and for a million. What a
91
+ * given deposit reaches is decided by the debt it implies and by the band
92
+ * the market puts that debt in — the range a leverage slider should offer.
93
+ *
94
+ * Unlike the other ceilings here this one reads no account: opening has none
95
+ * yet, and adjusting measures against the net value the caller already
96
+ * holds. Nothing is fetched, so a form can ask on every keystroke.
97
+ *
98
+ * @param props - The manager, the SDK holding its market, what stands
99
+ * behind the position, and optionally the health factor the ceiling should
100
+ * leave
101
+ * @returns The band, or nothing when the market has none to offer
102
+ */
103
+ leverageBand(props) {
104
+ return calcLeverageBand(props);
105
+ }
106
+ /**
75
107
  * Largest `WITHDRAW_ASSET` amount of one token the account can take out
76
- * while its health factor stays at {@link MIN_HF_LIMITED} plus a basis
77
- * point — the ceiling a withdraw-collateral form should offer. Thresholds,
78
- * prices and quota activity come from the account's market, valued the way
79
- * the facade values a call that pays out; zero debt frees the whole balance.
108
+ * while its health factor stays at `targetHF` the ceiling a
109
+ * withdraw-collateral form should offer. Thresholds, prices and quota
110
+ * activity come from the account's market, valued the way the facade values
111
+ * a call that pays out; zero debt frees the whole balance.
80
112
  *
81
- * @param props - Account slice, the SDK holding its market, and the
82
- * collateral to withdraw
113
+ * The default is {@link MIN_HF_LIMITED}, the bar a form holds an
114
+ * account to.
115
+ *
116
+ * @param props - Account slice, the SDK holding its market, the collateral
117
+ * to withdraw, and optionally the health factor to leave behind
83
118
  * @returns Amount in the token's units; `0n` when nothing can leave
84
119
  */
85
120
  maxWithdrawCollateral(props) {
121
+ const { targetHF = MIN_HF_LIMITED, ...rest } = props;
86
122
  return maxWithdrawCollateral({
87
- ...props,
88
- targetHF: MIN_HF_LIMITED + 2n
123
+ ...rest,
124
+ targetHF: targetHF + 2n
89
125
  });
90
126
  }
91
127
  /**
@@ -139,7 +175,7 @@ var CreditAccountOperationsService = class extends SDKConstruct {
139
175
  });
140
176
  return {
141
177
  ...result,
142
- preview: tail.state,
178
+ state: tail.state,
143
179
  delayed
144
180
  };
145
181
  } catch (e) {
@@ -199,17 +235,36 @@ var CreditAccountOperationsService = class extends SDKConstruct {
199
235
  * whole tail: the tokens land on the account and only their quota has to
200
236
  * catch up.
201
237
  *
238
+ * A claim that brought only part of what the request queued — a legacy Mellow
239
+ * multivault, which pays out what it holds liquid and re-queues the rest — is
240
+ * served in proportion, and what it did not settle comes back as `remainder`:
241
+ * the withdrawal still in flight and the intent to finish it with.
242
+ *
202
243
  * @param props - The recorded intent, the account slice as it stands now, and
203
244
  * the matured claimable
204
- * @returns Shaped exactly like {@link startIntent}'s result, so both halves of
205
- * an operation are consumed the same way
245
+ * @returns Shaped exactly like {@link startIntent}'s result with the remainder
246
+ * beside it, so both halves of an operation are consumed the same way
206
247
  */
207
248
  async finishIntent(props) {
208
- return plain(await this.#preview(props, () => planTail({
209
- intent: props.intent,
210
- claimable: props.claimable,
211
- view: accountView(props.creditAccount, props.sdk)
212
- })));
249
+ let remainder;
250
+ const result = await this.#preview(props, () => {
251
+ const tail = planTail({
252
+ intent: props.intent,
253
+ claimable: props.claimable,
254
+ view: accountView(props.creditAccount, props.sdk)
255
+ });
256
+ remainder = tail.remainder;
257
+ return tail.steps;
258
+ });
259
+ if (!result.ok) return result;
260
+ const { operations, state, calls } = result;
261
+ return {
262
+ ok: true,
263
+ operations,
264
+ state,
265
+ calls,
266
+ remainder
267
+ };
213
268
  }
214
269
  /**
215
270
  * Previews opening a brand-new leveraged position.
@@ -227,7 +282,7 @@ var CreditAccountOperationsService = class extends SDKConstruct {
227
282
  try {
228
283
  return {
229
284
  ok: true,
230
- preview: await previewOpenStrategy(props)
285
+ state: await buildOpenStrategyState(props)
231
286
  };
232
287
  } catch (e) {
233
288
  return asFailure(e);
@@ -246,7 +301,7 @@ var CreditAccountOperationsService = class extends SDKConstruct {
246
301
  return {
247
302
  ok: true,
248
303
  operations,
249
- preview: state,
304
+ state,
250
305
  calls,
251
306
  delayed
252
307
  };
@@ -258,11 +313,11 @@ var CreditAccountOperationsService = class extends SDKConstruct {
258
313
  /** Drops the delayed half for the flows that cannot produce one. */
259
314
  function plain(result) {
260
315
  if (!result.ok) return result;
261
- const { operations, preview, calls } = result;
316
+ const { operations, state, calls } = result;
262
317
  return {
263
318
  ok: true,
264
319
  operations,
265
- preview,
320
+ state,
266
321
  calls
267
322
  };
268
323
  }
@@ -285,4 +340,4 @@ function isUnroutable(e) {
285
340
  return false;
286
341
  }
287
342
  //#endregion
288
- export { CreditAccountOperationsService, IntentPreviewError, fetchCreditAccountSlice, refuse, toCreditAccountSlice };
343
+ export { CreditAccountOperationsService, borrowable, fetchCreditAccountSlice, isPhantomToken, toCreditAccountSlice };
@@ -0,0 +1,69 @@
1
+ import { BigIntMath } from "../../utils/bigint-math.js";
2
+ import { LEVERAGE_DECIMALS } from "../../constants/math.js";
3
+ //#region src/onchain/accounts/intents/leverage-band.ts
4
+ /**
5
+ * The leverages this market will actually fund for a position of this size.
6
+ *
7
+ * A credit manager's `maxLeverage` follows from the liquidation threshold
8
+ * alone, so it is the same for a hundred dollars and for a million. What a
9
+ * given deposit reaches is decided by the debt it implies —
10
+ * `debt = netValue × (leverage − 1)` — and by the band the market puts that
11
+ * debt in. This inverts that relation.
12
+ *
13
+ * Rounding is asymmetric because the forward direction truncates: the floor
14
+ * rounds **up** so the leverage it names really does clear `minDebt`, and the
15
+ * ceiling rounds **down** so it really does stay under the borrow limit.
16
+ *
17
+ * Nothing here is fetched or simulated — every input is loaded market state,
18
+ * so a form can call this on each keystroke.
19
+ *
20
+ * @param props - {@link LeverageBandProps}
21
+ * @returns The band, or `undefined` when there is nothing to offer: an
22
+ * unknown manager, a market with no strategy, or a deposit too small to reach
23
+ * `minDebt` at any leverage the threshold allows.
24
+ *
25
+ * @example
26
+ * ```ts
27
+ * // minDebt 1k, borrow limit 100k, threshold ceiling 9x, deposit worth 10k
28
+ * calcLeverageBand({ sdk, creditManager, collateral }) // { min: 1.1, max: 9 }
29
+ * ```
30
+ **/
31
+ function calcLeverageBand({ sdk, creditManager, collateral, targetHF }) {
32
+ const found = resolve(sdk, creditManager);
33
+ if (!found) return;
34
+ const { suite, market } = found;
35
+ const target = suite.strategyTargetCollateral;
36
+ if (!target) return;
37
+ const ceiling = suite.creditManager.maxLeverage(target, targetHF);
38
+ const underlying = market.pool.underlying;
39
+ const convert = (from, to, amount) => market.priceOracle.safeConvert(from, to, amount).value;
40
+ const netValue = collateral.reduce((acc, a) => acc + convert(a.token, underlying, a.balance), 0n);
41
+ if (netValue <= 0n) return {
42
+ min: 1,
43
+ max: ceiling
44
+ };
45
+ const { minDebt, maxDebt } = suite.creditFacade;
46
+ const available = market.pool.pool.creditManagerDebtParams.get(suite.creditManager.address)?.available;
47
+ const borrowLimit = available === void 0 ? maxDebt : BigIntMath.min(maxDebt, available);
48
+ const floor = BigIntMath.ceilDiv(LEVERAGE_DECIMALS * minDebt, netValue);
49
+ const roof = LEVERAGE_DECIMALS * borrowLimit / netValue;
50
+ const min = 1 + Number(floor) / Number(LEVERAGE_DECIMALS);
51
+ const max = Math.min(ceiling, 1 + Number(roof) / Number(LEVERAGE_DECIMALS));
52
+ return min > max ? void 0 : {
53
+ min,
54
+ max
55
+ };
56
+ }
57
+ /** The manager's suite and market, or nothing while they cannot be resolved. */
58
+ function resolve(sdk, creditManager) {
59
+ try {
60
+ return {
61
+ suite: sdk.marketRegister.findCreditManager(creditManager),
62
+ market: sdk.marketRegister.findByCreditManager(creditManager)
63
+ };
64
+ } catch {
65
+ return;
66
+ }
67
+ }
68
+ //#endregion
69
+ export { calcLeverageBand };
@@ -1,6 +1,8 @@
1
1
  import { BigIntMath } from "../../utils/bigint-math.js";
2
2
  import { LEVERAGE_DECIMALS } from "../../constants/math.js";
3
- import { IntentPreviewError } from "./refusal.js";
3
+ import { checkDebtInBand, checkLeverageAtLeastOne } from "../../validation/checks.js";
4
+ import { IntentPreviewError, raise } from "../../validation/refusal.js";
5
+ import { toToken } from "../../validation/token.js";
4
6
  //#region src/onchain/accounts/intents/math.ts
5
7
  /** Debt that realises `leverage` on `collateral`: `D = C · (L − 1)`. */
6
8
  function debtForLeverage(collateral, leverage) {
@@ -37,32 +39,23 @@ function maxProportionalWithdrawal(position, band) {
37
39
  }
38
40
  /** Total leverage cannot drop below 1x — that would be negative debt. */
39
41
  function assertLeverageAtLeastOne(leverage) {
40
- if (leverage < 100n) throw new IntentPreviewError("leverageOutOfRange", {
41
- requested: leverage,
42
+ raise(checkLeverageAtLeastOne({
43
+ leverage,
42
44
  min: LEVERAGE_DECIMALS
43
- }, `target leverage ${leverage} is below 1x`);
45
+ }), `target leverage ${leverage} is below 1x`);
44
46
  }
45
47
  /**
46
48
  * Rejects a debt the facade would revert on: zero is always fine (no loan at
47
49
  * all), anything else has to sit inside `[minDebt, maxDebt]`.
48
50
  */
49
- function assertDebtInBand(debt, band, underlying) {
50
- const detail = {
51
- requested: {
52
- token: underlying,
53
- balance: debt
54
- },
55
- minDebt: {
56
- token: underlying,
57
- balance: band.minDebt
58
- },
59
- maxDebt: {
60
- token: underlying,
61
- balance: band.maxDebt
62
- }
63
- };
64
- if (debt > band.maxDebt) throw new IntentPreviewError("debtOutOfRange", detail, `debt ${debt} exceeds maxDebt ${band.maxDebt}`);
65
- if (debt > 0n && debt < band.minDebt) throw new IntentPreviewError("debtOutOfRange", detail, `debt ${debt} is below minDebt ${band.minDebt}`);
51
+ function assertDebtInBand(sdk, debt, band, underlying) {
52
+ raise(checkDebtInBand({
53
+ debt,
54
+ minDebt: band.minDebt,
55
+ maxDebt: band.maxDebt,
56
+ underlying: toToken(sdk, underlying),
57
+ allowZero: true
58
+ }), debt > band.maxDebt ? `debt ${debt} exceeds maxDebt ${band.maxDebt}` : `debt ${debt} is below minDebt ${band.minDebt}`);
66
59
  }
67
60
  //#endregion
68
61
  export { assertDebtInBand, assertLeverageAtLeastOne, debtForLeverage, maxProportionalWithdrawal, proportionalDebt };
@@ -11,9 +11,11 @@ import { eq } from "./utils/common.js";
11
11
  * check counts: a holding backed by a quota contributes the lesser of the
12
12
  * quota and its threshold-weighted value, an unquoted one — the underlying —
13
13
  * its weighted value alone, and dust or a disabled balance nothing at all.
14
- * Collateral is valued at the lower of its two feeds, the way the facade
15
- * values a call that hands funds over; the debt is valued at the main feed,
16
- * as the check does. Zero debt frees the whole balance.
14
+ * Collateral is valued at the protocol safe price (`min` of the two feeds,
15
+ * 0 when there is no reserve), the way the facade values a call that hands
16
+ * funds over; the underlying is exempt and is valued at the main feed, as
17
+ * `CreditManagerV3._safeConvertToUSD` does. The debt is valued at the main
18
+ * feed, as the check does. Zero debt frees the whole balance.
17
19
  *
18
20
  * Rounding always favours the account, so the answer clears the check rather
19
21
  * than landing a wei short of it.
@@ -30,13 +32,13 @@ function maxWithdrawCollateral(props) {
30
32
  const underlying = market.pool.underlying;
31
33
  const target = creditAccount.tokens.find((t) => eq(t.token, token));
32
34
  if (!target || target.balance <= 10n) return 0n;
33
- if (creditAccount.accountDebt === 0n) return target.balance;
35
+ if (creditAccount.totalDebt === 0n) return target.balance;
34
36
  const masked = creditAccount.enabledTokensMask !== 0n;
35
37
  const counts = (t) => t.balance > 10n && (!masked || (t.mask & creditAccount.enabledTokensMask) !== 0n);
36
38
  /** What a holding backs, in the check's units: USD × PERCENTAGE_FACTOR. */
37
39
  const weigh = (t) => {
38
40
  const lt = BigInt(creditManager.liquidationThresholds.get(t.token) ?? 0);
39
- const weighted = (safeUsd(priceOracle, t.token, t.balance) ?? 0n) * lt;
41
+ const weighted = (eq(t.token, underlying) ? usd(priceOracle, t.token, t.balance) ?? 0n : priceOracle.safeConvertMinUSD(t.token, t.balance).value) * lt;
40
42
  if (t.quota === 0n) return weighted;
41
43
  return BigIntMath.min(quotaUsd(t) * PERCENTAGE_FACTOR, weighted);
42
44
  };
@@ -47,15 +49,15 @@ function maxWithdrawCollateral(props) {
47
49
  if (eq(t.token, token) || !counts(t)) continue;
48
50
  otherMoney += weigh(t);
49
51
  }
50
- const borrowed = usd(priceOracle, underlying, creditAccount.accountDebt);
52
+ const borrowed = usd(priceOracle, underlying, creditAccount.totalDebt);
51
53
  if (borrowed === void 0 || borrowed <= 0n) return 0n;
52
54
  const required = borrowed * targetHF;
53
55
  if (required <= otherMoney) return target.balance;
54
56
  const shortfall = required - otherMoney;
55
57
  if (target.quota > 0n && quotaUsd(target) * 10000n < shortfall) return 0n;
56
58
  const targetLt = BigInt(creditManager.liquidationThresholds.get(target.token) ?? 0);
57
- const targetUsd = safeUsd(priceOracle, target.token, target.balance);
58
- if (targetLt === 0n || !targetUsd) return 0n;
59
+ const targetUsd = eq(target.token, underlying) ? usd(priceOracle, target.token, target.balance) ?? 0n : priceOracle.safeConvertMinUSD(target.token, target.balance).value;
60
+ if (targetLt === 0n || targetUsd === 0n) return 0n;
59
61
  const keptUsd = BigIntMath.ceilDiv(shortfall, targetLt);
60
62
  const kept = BigIntMath.ceilDiv(target.balance * keptUsd, targetUsd);
61
63
  return kept >= target.balance ? 0n : target.balance - kept;
@@ -68,18 +70,5 @@ function usd(oracle, token, amount) {
68
70
  return;
69
71
  }
70
72
  }
71
- /**
72
- * USD value at the lower of the token's two feeds — what a call handing funds
73
- * over is judged at. Falls back to the main feed where there is no second one.
74
- **/
75
- function safeUsd(oracle, token, amount) {
76
- const main = usd(oracle, token, amount);
77
- if (main === void 0) return;
78
- try {
79
- return BigIntMath.min(main, oracle.convertToUSD(token, amount, true));
80
- } catch {
81
- return main;
82
- }
83
- }
84
73
  //#endregion
85
74
  export { maxWithdrawCollateral };