@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
@@ -3,9 +3,9 @@ import { calcBorrowedAmountPlusInterestAndFees } from "./borrowed-amount-plus-in
3
3
  /**
4
4
  * Narrows full account data down to the slice the intent engine operates on.
5
5
  *
6
- * `accountDebt` is the total repayable debt (principal + accrued interest +
7
- * accrued fees) rather than the principal, because every debt-touching intent
8
- * settles the full outstanding amount.
6
+ * `totalDebt` is the total repayable debt (principal + accrued interest +
7
+ * accrued fees) rather than `CreditAccountData.debt`'s principal, because every
8
+ * debt-touching intent settles the full outstanding amount.
9
9
  *
10
10
  * Addresses are lowercased so that `eq` comparisons and `AddressMap` lookups
11
11
  * behave consistently everywhere downstream.
@@ -18,7 +18,7 @@ function toCreditAccountSlice(ca) {
18
18
  underlying: ca.underlying.toLowerCase(),
19
19
  enabledTokensMask: ca.enabledTokensMask,
20
20
  totalDebtUSD: ca.totalDebtUSD,
21
- accountDebt: calcBorrowedAmountPlusInterestAndFees(ca),
21
+ totalDebt: calcBorrowedAmountPlusInterestAndFees(ca),
22
22
  tokens: ca.tokens.map((t) => ({
23
23
  ...t,
24
24
  token: t.token.toLowerCase()
@@ -29,7 +29,7 @@ function toCreditAccountSlice(ca) {
29
29
  * Reads an account by address and narrows it to {@link CreditAccountSlice}.
30
30
  *
31
31
  * The shared read model's `StrategyPosition` carries neither `tokens` nor
32
- * `enabledTokensMask` / `creditFacade` / `totalDebtUSD`, so simulating against
32
+ * `enabledTokensMask` / `creditFacade` / `totalDebtUSD`, so preparing against
33
33
  * an existing position costs one account read.
34
34
  *
35
35
  * @throws When the account is not found in the connected markets.
@@ -1,11 +1,11 @@
1
1
  import { eq, toRouterCaSlice, toTargetDecimals } from "./common.js";
2
- import { convertAmount } from "./convert-amount.js";
3
2
  import { isPhantomToken, isRedemptionPhantomToken, pickFattestNonPhantomToken, rankAccountTokens } from "./pick-token.js";
4
3
  import { adjustStateToSnapshot } from "./adjust-state-to-snapshot.js";
5
4
  import { assembleOperationCalls } from "./assemble-operation-calls.js";
6
5
  import { calcBorrowedAmountPlusInterestAndFees } from "./borrowed-amount-plus-interest-and-fees.js";
7
6
  import { fetchCreditAccountSlice, toCreditAccountSlice } from "./credit-account-slice.js";
8
7
  import { OperationLedger } from "./ledger.js";
8
+ import { collectPriceImpact, lossRate, startProbe } from "./price-impact.js";
9
9
  import { clearedQuotas, getQuotasForUpdate, quotasAfterUpdate } from "./quotas-for-update.js";
10
10
  import { createOraclePaths, createRouterPaths } from "./router-path.js";
11
- export { OperationLedger, adjustStateToSnapshot, assembleOperationCalls, calcBorrowedAmountPlusInterestAndFees, clearedQuotas, convertAmount, createOraclePaths, createRouterPaths, eq, fetchCreditAccountSlice, getQuotasForUpdate, isPhantomToken, isRedemptionPhantomToken, pickFattestNonPhantomToken, quotasAfterUpdate, rankAccountTokens, toCreditAccountSlice, toRouterCaSlice, toTargetDecimals };
11
+ export { OperationLedger, adjustStateToSnapshot, assembleOperationCalls, calcBorrowedAmountPlusInterestAndFees, clearedQuotas, collectPriceImpact, createOraclePaths, createRouterPaths, eq, fetchCreditAccountSlice, getQuotasForUpdate, isPhantomToken, isRedemptionPhantomToken, lossRate, pickFattestNonPhantomToken, quotasAfterUpdate, rankAccountTokens, startProbe, toCreditAccountSlice, toRouterCaSlice, toTargetDecimals };
@@ -1,6 +1,5 @@
1
1
  import { NON_STRATEGY_PHANTOM_TOKEN_TYPES } from "../../../base/token-types.js";
2
2
  import { eq } from "./common.js";
3
- import { convertAmount } from "./convert-amount.js";
4
3
  //#region src/onchain/accounts/intents/utils/pick-token.ts
5
4
  /** Prefix marking every phantom-token contract type in the registry. */
6
5
  const PHANTOM_TOKEN_PREFIX = "PHANTOM_TOKEN::";
@@ -36,7 +35,8 @@ function isRedemptionPhantomToken(sdk, token) {
36
35
  */
37
36
  function rankAccountTokens(args) {
38
37
  const { creditAccount, sdk, exclude = [] } = args;
39
- const convert = convertAmount(sdk, creditAccount.creditManager);
38
+ const oracle = sdk.marketRegister.findByCreditManager(creditAccount.creditManager).priceOracle;
39
+ const convert = (from, to, amount) => oracle.safeConvert(from, to, amount).value;
40
40
  const candidates = [];
41
41
  for (const t of creditAccount.tokens) {
42
42
  if (t.balance <= 0n) continue;
@@ -0,0 +1,96 @@
1
+ import { PERCENTAGE_FACTOR_1KK, PRICE_DECIMALS, WAD } from "../../../constants/math.js";
2
+ //#region src/onchain/accounts/intents/utils/price-impact.ts
3
+ /** `b1 = b0 / V0`: a dollar of the basket, the reference implementation's anchor. */
4
+ const PROBE_UNIT_USD_WAD = WAD;
5
+ /**
6
+ * `V0 = Σ b0ᵢ·pᵢ`, then `b1 = b0 / V0`, proportions kept.
7
+ *
8
+ * Refuses only what the reference refuses — a basket worth nothing, or one that
9
+ * rounds away entirely. Stricter guards here would report nothing where the old
10
+ * client reported a number.
11
+ */
12
+ function probeBasket(balances, oracle) {
13
+ if (balances.length === 0) return;
14
+ let basketWad = 0n;
15
+ for (const asset of balances) {
16
+ if (asset.balance <= 0n) continue;
17
+ const usd = oracle.safeConvertToUSD(asset.token, asset.balance).value;
18
+ if (usd > 0n) basketWad += usd * WAD / PRICE_DECIMALS;
19
+ }
20
+ if (basketWad <= 0n) return;
21
+ const probeWad = PROBE_UNIT_USD_WAD;
22
+ const scaled = balances.map((asset) => ({
23
+ token: asset.token,
24
+ balance: asset.balance * probeWad / basketWad
25
+ }));
26
+ if (!scaled.some((a) => a.balance > 0n)) return;
27
+ return {
28
+ balances: scaled,
29
+ basketWad,
30
+ probeWad
31
+ };
32
+ }
33
+ /** Fires the marginal-price quote for one leg; `undefined` if it cannot be measured. */
34
+ function startProbe(args) {
35
+ const basket = probeBasket(args.basket, args.oracle);
36
+ if (!basket) return;
37
+ return {
38
+ tokenOut: args.tokenOut,
39
+ basketWad: basket.basketWad,
40
+ probeWad: basket.probeWad,
41
+ probe: args.route(basket.balances).catch(() => void 0)
42
+ };
43
+ }
44
+ /** `convert` answers `0` for a negative amount, so convert the magnitude and re-sign. */
45
+ function toUnderlyingSigned(convert, token, amount) {
46
+ if (amount === 0n) return 0n;
47
+ const converted = convert(token, amount < 0n ? -amount : amount);
48
+ if (converted <= 0n) return;
49
+ return amount < 0n ? -converted : converted;
50
+ }
51
+ /**
52
+ * In `PERCENTAGE_FACTOR_1KK` (1_000_000 = 100%), negative for a loss. A base
53
+ * that is not positive falls back to the routed output.
54
+ */
55
+ function lossRate(args) {
56
+ const { lossUnd, expectedUnd, totalValue, netValue } = args;
57
+ const against = (base) => -(PERCENTAGE_FACTOR_1KK * lossUnd / (base > 0n ? base : expectedUnd));
58
+ return {
59
+ pathPriceImpact: against(expectedUnd),
60
+ netValuePriceImpact: against(netValue),
61
+ totalValuePriceImpact: against(totalValue)
62
+ };
63
+ }
64
+ /**
65
+ * Folds every leg into one rate, in the underlying — the unit its bases are in.
66
+ *
67
+ * All or nothing: a partial sum would understate the loss and draw a better
68
+ * price than the route offers.
69
+ */
70
+ async function collectPriceImpact(probes, ctx) {
71
+ if (probes.length === 0) return;
72
+ const quotes = await Promise.all(probes.map((leg) => leg.probe));
73
+ let expectedUnd = 0n;
74
+ let lossUnd = 0n;
75
+ for (const [index, leg] of probes.entries()) {
76
+ const unit = quotes[index];
77
+ if (unit === void 0 || unit <= 0n) return;
78
+ const expected = unit * leg.basketWad / leg.probeWad;
79
+ if (expected <= 0n) return;
80
+ const expectedInUnd = ctx.toUnderlying(leg.tokenOut, expected);
81
+ if (expectedInUnd <= 0n) return;
82
+ const loss = toUnderlyingSigned(ctx.toUnderlying, leg.tokenOut, expected - leg.realAmount);
83
+ if (loss === void 0) return;
84
+ expectedUnd += expectedInUnd;
85
+ lossUnd += loss;
86
+ }
87
+ if (expectedUnd <= 0n) return;
88
+ return lossRate({
89
+ lossUnd,
90
+ expectedUnd,
91
+ totalValue: ctx.totalValue,
92
+ netValue: ctx.netValue
93
+ });
94
+ }
95
+ //#endregion
96
+ export { collectPriceImpact, lossRate, startProbe };
@@ -1,6 +1,6 @@
1
1
  import { MIN_INT96 } from "../../../constants/math.js";
2
2
  import { TypedObjectUtils } from "../../../utils/mappers.js";
3
- import { calcQuotaUpdate } from "../../../../common-utils/utils/creditAccount/quota-utils.js";
3
+ import { calcQuotaUpdate } from "../../quota-utils.js";
4
4
  //#region src/onchain/accounts/intents/utils/quotas-for-update.ts
5
5
  function getQuotasForUpdate({ assetsBefore, assetsAfter, initialQuotas, quotaReserve = 0, liquidationThresholds: liquidationThresholdsMap, quotas: quotasMap, maxDebt, underlyingToken, convert }) {
6
6
  const underlyingTokenLc = underlyingToken.toLowerCase();
@@ -123,7 +123,7 @@ function collectQuotaChange(assetsBefore, assetsAfter) {
123
123
  }
124
124
  /**
125
125
  * SDK `getSingleQuotaChange` requires `assetAfter` to emit quota decreases.
126
- * Simulation drops zero balances, so fully spent collaterals (e.g. claim
126
+ * The ledger drops zero balances, so fully spent collaterals (e.g. claim
127
127
  * phantom) vanish — reinsert them with balance 0 when they still have
128
128
  * initial quota so `calcQuotaUpdate` can zero / remove that quota.
129
129
  */
@@ -1,5 +1,5 @@
1
1
  import { toRouterCaSlice } from "./common.js";
2
- import { convertAmount } from "./convert-amount.js";
2
+ import { startProbe } from "./price-impact.js";
3
3
  //#region src/onchain/accounts/intents/utils/router-path.ts
4
4
  /**
5
5
  * The engine's only door to the pathfinder.
@@ -17,68 +17,124 @@ function createRouterPaths(args) {
17
17
  collateralTokens: suite.creditManager.collateralTokens.map((t) => t.toLowerCase())
18
18
  };
19
19
  const router = sdk.routerFor({ creditFacade: suite.creditFacade.address });
20
+ const { priceOracle } = sdk.marketRegister.findByCreditManager(creditAccount.creditManager);
21
+ const quoteSwap = (input) => {
22
+ const spending = [{
23
+ token: input.tokenIn,
24
+ balance: input.amount + input.keep
25
+ }];
26
+ return input.keep > 0n ? router.findManyToOnePath({
27
+ creditAccount: toRouterCaSlice(creditAccount, spending),
28
+ creditManager: cmSlice,
29
+ expectedBalances: spending,
30
+ leftoverBalances: [{
31
+ token: input.tokenIn,
32
+ balance: input.keep
33
+ }],
34
+ target: input.tokenOut,
35
+ slippage
36
+ }) : router.findOneTokenPath({
37
+ creditAccount: toRouterCaSlice(creditAccount, spending),
38
+ creditManager: cmSlice,
39
+ tokenIn: input.tokenIn,
40
+ tokenOut: input.tokenOut,
41
+ amount: input.amount,
42
+ slippage
43
+ });
44
+ };
45
+ const quoteClose = (balances) => router.findBestClosePath({
46
+ creditAccount: toRouterCaSlice(creditAccount, balances),
47
+ creditManager: cmSlice,
48
+ balances: {
49
+ expectedBalances: balances,
50
+ leftoverBalances: [],
51
+ tokensToClaim: []
52
+ },
53
+ slippage
54
+ });
55
+ const quoteOpen = (expectedBalances, leftoverBalances, target) => router.findOpenStrategyPath({
56
+ creditManager: cmSlice,
57
+ expectedBalances,
58
+ leftoverBalances,
59
+ target,
60
+ slippage
61
+ });
20
62
  return {
21
63
  async swap({ tokenIn, tokenOut, amount, keep = 0n }) {
22
64
  if (amount <= 0n) return {
23
65
  amount: 0n,
24
66
  minAmount: 0n,
25
- calls: []
67
+ calls: [],
68
+ probe: void 0
26
69
  };
27
70
  if (keep < 0n) throw new Error(`swap: spending ${amount} of ${tokenIn} exceeds its balance`);
28
- if (keep > 0n) {
29
- const expectedBalances = [{
30
- token: tokenIn,
31
- balance: amount + keep
32
- }];
33
- return router.findManyToOnePath({
34
- creditAccount: toRouterCaSlice(creditAccount, expectedBalances),
35
- creditManager: cmSlice,
36
- expectedBalances,
37
- leftoverBalances: [{
38
- token: tokenIn,
39
- balance: keep
40
- }],
41
- target: tokenOut,
42
- slippage
43
- });
44
- }
45
- return router.findOneTokenPath({
46
- creditAccount: toRouterCaSlice(creditAccount, [{
71
+ const probe = startProbe({
72
+ basket: [{
47
73
  token: tokenIn,
48
74
  balance: amount
49
- }]),
50
- creditManager: cmSlice,
75
+ }],
76
+ tokenOut,
77
+ oracle: priceOracle,
78
+ route: async ([only]) => {
79
+ if (!only) return 0n;
80
+ return (await quoteSwap({
81
+ tokenIn: only.token,
82
+ tokenOut,
83
+ amount: only.balance,
84
+ keep: 0n
85
+ })).amount;
86
+ }
87
+ });
88
+ const leg = await quoteSwap({
51
89
  tokenIn,
52
90
  tokenOut,
53
91
  amount,
54
- slippage
92
+ keep
55
93
  });
94
+ return {
95
+ ...leg,
96
+ probe: probe && {
97
+ ...probe,
98
+ realAmount: leg.amount
99
+ }
100
+ };
56
101
  },
57
102
  async closeAll({ balances }) {
58
- const { amount, minAmount, calls } = await router.findBestClosePath({
59
- creditAccount: toRouterCaSlice(creditAccount, balances),
60
- creditManager: cmSlice,
61
- balances: {
62
- expectedBalances: balances,
63
- leftoverBalances: [],
64
- tokensToClaim: []
65
- },
66
- slippage
103
+ const probe = startProbe({
104
+ basket: balances,
105
+ tokenOut: creditAccount.underlying,
106
+ oracle: priceOracle,
107
+ route: async (quoted) => (await quoteClose(quoted)).amount
67
108
  });
68
- return {
109
+ const { amount, minAmount, calls } = await quoteClose(balances);
110
+ const leg = {
69
111
  amount,
70
112
  minAmount,
71
113
  calls: [...calls]
72
114
  };
115
+ return {
116
+ ...leg,
117
+ probe: probe && {
118
+ ...probe,
119
+ realAmount: leg.amount
120
+ }
121
+ };
73
122
  },
74
123
  async openStrategy({ expectedBalances, leftoverBalances, target }) {
75
- return router.findOpenStrategyPath({
76
- creditManager: cmSlice,
77
- expectedBalances,
78
- leftoverBalances,
79
- target,
80
- slippage
124
+ const probe = startProbe({
125
+ basket: expectedBalances,
126
+ tokenOut: target,
127
+ oracle: priceOracle,
128
+ route: async (balances) => (await quoteOpen(balances, [], target)).amount
81
129
  });
130
+ const leg = await quoteOpen(expectedBalances, leftoverBalances, target);
131
+ return {
132
+ ...leg,
133
+ probe: probe && {
134
+ ...probe,
135
+ realAmount: leg.amount
136
+ }
137
+ };
82
138
  }
83
139
  };
84
140
  }
@@ -94,11 +150,13 @@ function createRouterPaths(args) {
94
150
  */
95
151
  function createOraclePaths(args) {
96
152
  const { sdk, creditAccount } = args;
97
- const price = convertAmount(sdk, creditAccount.creditManager);
153
+ const oracle = sdk.marketRegister.findByCreditManager(creditAccount.creditManager).priceOracle;
154
+ const price = (from, to, amount) => oracle.safeConvert(from, to, amount).value;
98
155
  const estimate = (amount) => ({
99
156
  amount,
100
157
  minAmount: amount,
101
- calls: []
158
+ calls: [],
159
+ probe: void 0
102
160
  });
103
161
  return {
104
162
  async swap({ tokenIn, tokenOut, amount }) {
@@ -1,25 +1,26 @@
1
1
  import { eq } from "./utils/common.js";
2
- import { convertAmount } from "./utils/convert-amount.js";
3
2
  import { pickFattestNonPhantomToken } from "./utils/pick-token.js";
4
3
  //#region src/onchain/accounts/intents/view.ts
5
4
  /**
6
5
  * The account as the planners see it: a handful of numbers in underlying units
7
6
  * plus balance / price lookups. Read once per preview.
8
7
  *
9
- * TVL uses the RWA-aware conversion so an `rwa.asset` balance without a direct
10
- * pool price still counts at its wrapped value instead of throwing.
8
+ * TVL uses the market oracle: an unpriceable token contributes 0n rather
9
+ * than throwing.
11
10
  */
12
11
  function accountView(creditAccount, sdk) {
13
12
  const { underlying, creditManager } = creditAccount;
14
- const price = convertAmount(sdk, creditManager);
13
+ const oracle = sdk.marketRegister.findByCreditManager(creditManager).priceOracle;
14
+ const price = (from, to, amount) => oracle.safeConvert(from, to, amount).value;
15
15
  const { creditFacade } = sdk.marketRegister.findCreditManager(creditManager);
16
16
  let totalValue = 0n;
17
17
  for (const t of creditAccount.tokens) totalValue += price(t.token, underlying, t.balance);
18
18
  return {
19
19
  underlying,
20
+ sdk,
20
21
  rwaAsset: sdk.tokensMeta.rwaUnderlyings.get(underlying)?.asset,
21
- debt: creditAccount.accountDebt,
22
- collateral: totalValue - creditAccount.accountDebt,
22
+ debt: creditAccount.totalDebt,
23
+ collateral: totalValue - creditAccount.totalDebt,
23
24
  band: {
24
25
  minDebt: creditFacade.minDebt,
25
26
  maxDebt: creditFacade.maxDebt
@@ -20,6 +20,7 @@ import "../../market/rwa/securitize/index.js";
20
20
  import "../../market/index.js";
21
21
  import { LIQUIDATION_APPROVAL_BUFFER, LIQUIDATION_COMPRESSOR_V313_ADDRESS } from "./constants.js";
22
22
  import { iLiquidationCompressorV313Abi } from "../../../abi/ILiquidationCompressorV313.js";
23
+ import { skipLiquidatableAccount } from "./skipLiquidatableAccount.js";
23
24
  //#region src/onchain/accounts/liquidations/LiquidationsService.ts
24
25
  /**
25
26
  * Service for discovering liquidatable credit accounts and previewing manual
@@ -29,7 +30,6 @@ var LiquidationsService = class extends SDKConstruct {
29
30
  /**
30
31
  * Returns all liquidatable credit accounts: accounts with health factor
31
32
  * below 1 plus accounts of expired credit managers with outstanding debt.
32
- * Accounts whose collateral computation failed are excluded.
33
33
  **/
34
34
  async getLiquidatableAccounts(props) {
35
35
  const unhealthy = await this.sdk.accounts.getCreditAccounts({
@@ -40,8 +40,8 @@ var LiquidationsService = class extends SDKConstruct {
40
40
  let expired = await this.#getExpiredCreditAccounts(props?.blockNumber);
41
41
  expired = expired.filter((ca) => !seen.has(ca.creditAccount));
42
42
  return [...unhealthy, ...expired].flatMap((ca) => {
43
- if (!ca.success) {
44
- this.logger?.warn(`cannot compute liquidation details for ${ca.creditAccount}: collateral computation failed`);
43
+ if (skipLiquidatableAccount(ca, (token) => this.sdk.tokensMeta.get(token)?.contractType)) {
44
+ this.logger?.warn(`skipping liquidatable account ${ca.creditAccount}`);
45
45
  return [];
46
46
  }
47
47
  return [this.#buildAccount(ca)];
@@ -148,11 +148,11 @@ var LiquidationsService = class extends SDKConstruct {
148
148
  #anyMarketTokenAmount(token, value) {
149
149
  const meta = this.sdk.tokensMeta.mustGetToken(token);
150
150
  for (const market of this.sdk.marketRegister.markets) {
151
- const valueUsd = market.priceOracle.safeUsdValue(token, value);
152
- if (valueUsd !== null) return {
151
+ const priced = market.priceOracle.safeConvertToUSD(token, value);
152
+ if (!priced.error) return {
153
153
  token: meta,
154
154
  value,
155
- valueUsd
155
+ valueUsd: usdToNumber(priced.value)
156
156
  };
157
157
  }
158
158
  return {
@@ -253,15 +253,15 @@ var LiquidationsService = class extends SDKConstruct {
253
253
  #buildAccount(ca, suite = this.sdk.marketRegister.findCreditManager(ca.creditManager)) {
254
254
  const market = suite.market;
255
255
  const unwrappedUnderlying = this.sdk.tokensMeta.unwrapRWA(suite.underlying);
256
- const liquidationDiscount = suite.isExpired ? suite.creditManager.liquidationDiscountExpired : suite.creditManager.liquidationDiscount;
256
+ const { liquidationDiscount } = suite.liquidationFees();
257
257
  const repaymentAmount = ca.totalValue * BigInt(liquidationDiscount) / PERCENTAGE_FACTOR;
258
258
  const estimatedProfit = ca.totalValue - repaymentAmount;
259
259
  const token = this.sdk.tokensMeta.mustGetToken(unwrappedUnderlying);
260
260
  const usd = (part) => ca.totalValue > 0n ? usdToNumber(ca.totalValueUSD * part / ca.totalValue) : 0;
261
261
  return {
262
+ ...suite.creditOperationMarket(),
262
263
  chainId: this.sdk.chainId,
263
264
  creditAccount: ca.creditAccount,
264
- creditManager: ca.creditManager,
265
265
  asset: this.sdk.tokensMeta.mustGetToken(this.#mainAsset(ca, market, unwrappedUnderlying)),
266
266
  totalValue: {
267
267
  token,
@@ -0,0 +1,11 @@
1
+ //#region src/onchain/accounts/liquidations/skipLiquidatableAccount.ts
2
+ /**
3
+ * Whether a credit account should be dropped from the liquidatable list:
4
+ * collateral computation failed, or it holds a Mellow withdrawal phantom
5
+ * token above dust (no liquidation subcompressor for that type).
6
+ **/
7
+ function skipLiquidatableAccount(account, getContractType) {
8
+ return !account.success || account.tokens.some((t) => getContractType(t.token) === "PHANTOM_TOKEN::MELLOW_WITHDRAWAL");
9
+ }
10
+ //#endregion
11
+ export { skipLiquidatableAccount };
@@ -1,6 +1,6 @@
1
- import { BigIntMath } from "../../../onchain/utils/bigint-math.js";
2
- import { MIN_INT96, PERCENTAGE_FACTOR } from "../../../onchain/constants/math.js";
3
- //#region src/common-utils/utils/creditAccount/quota-utils.ts
1
+ import { BigIntMath } from "../utils/bigint-math.js";
2
+ import { MIN_INT96, PERCENTAGE_FACTOR } from "../constants/math.js";
3
+ //#region src/onchain/accounts/quota-utils.ts
4
4
  /**
5
5
  * Rounds quota deltas to protocol precision step (`PERCENTAGE_FACTOR`).
6
6
  *
@@ -1,8 +1,9 @@
1
1
  import { BaseContract } from "../../base/BaseContract.js";
2
2
  import "../../base/index.js";
3
+ import { sdkErr, sdkOk } from "../../../model/result.js";
4
+ import "../../../model/index.js";
3
5
  import { decodeDelayedIntent } from "./intent-codec.js";
4
6
  import { iRedemptionLoggerV310Abi } from "../../../abi/iRedemptionLoggerV310.js";
5
- import { InvalidDelayedIntentError } from "./errors.js";
6
7
  //#region src/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.ts
7
8
  const abi = iRedemptionLoggerV310Abi;
8
9
  /**
@@ -32,18 +33,23 @@ var RedemptionLoggerV310Contract = class extends BaseContract {
32
33
  *
33
34
  * @param redeemer - Redeemer contract the withdrawal is claimed from.
34
35
  * @param blockNumber - Optional block number to read the log at.
35
- * @returns The decoded intent, or `undefined` when the log carries none
36
- * (including when nothing was logged for the redeemer).
37
- * @throws InvalidDelayedIntentError when the logged `extraData` is
36
+ * @returns The decoded intent behind `ok` (`undefined` when the log
37
+ * carries none, including when nothing was logged for the redeemer), or
38
+ * the `invalidDelayedIntent` refusal when the logged `extraData` is
38
39
  * non-empty but cannot be decoded as a `DelayedIntent`.
39
40
  **/
40
41
  async getDelayedIntent(redeemer, blockNumber) {
41
42
  const log = await this.getRedemptionLog(redeemer, blockNumber);
42
- if (!log.extraData || log.extraData === "0x") return;
43
+ if (!log.extraData || log.extraData === "0x") return sdkOk(void 0);
43
44
  try {
44
- return decodeDelayedIntent(log.extraData);
45
+ return sdkOk(decodeDelayedIntent(log.extraData));
45
46
  } catch (e) {
46
- throw new InvalidDelayedIntentError(log.extraData, e);
47
+ return sdkErr({
48
+ code: "invalidDelayedIntent",
49
+ message: `cannot decode delayed intent from extraData ${log.extraData}`,
50
+ extraData: log.extraData,
51
+ cause: e instanceof Error ? e : new Error(String(e))
52
+ });
47
53
  }
48
54
  }
49
55
  };
@@ -1,19 +1 @@
1
- //#region src/onchain/accounts/withdrawal-compressor/errors.ts
2
- /**
3
- * Thrown when a delayed-withdrawal request or redemption log carries
4
- * non-empty `extraData` that cannot be decoded as a `DelayedIntent`.
5
- * Requests produced by our stack always encode a valid intent, so garbage
6
- * here means a malformed/foreign transaction that must not be previewed as
7
- * if it were fine.
8
- */
9
- var InvalidDelayedIntentError = class extends Error {
10
- /** Raw `extraData` that failed to decode. */
11
- extraData;
12
- constructor(extraData, cause) {
13
- super(`cannot decode delayed intent from extraData ${extraData}`, { cause });
14
- this.name = "InvalidDelayedIntentError";
15
- this.extraData = extraData;
16
- }
17
- };
18
- //#endregion
19
- export { InvalidDelayedIntentError };
1
+ export {};
@@ -1,7 +1,6 @@
1
1
  import { DELAYED_INTENT_TYPES, DELAYED_INTENT_VERSION, decodeDelayedIntent, encodeDelayedIntent } from "./intent-codec.js";
2
2
  import { AbstractWithdrawalCompressorContract, iCreditAccountAbi, toClaimableWithdrawal, toPendingWithdrawal, toRequestableWithdrawal } from "./AbstractWithdrawalCompressorContract.js";
3
3
  import { getWithdrawalCompressorAddress } from "./addresses.js";
4
- import { InvalidDelayedIntentError } from "./errors.js";
5
4
  import { RedemptionLoggerV310Contract } from "./RedemptionLoggerV310Contract.js";
6
5
  import { createRedemptionLogger } from "./createRedemptionLogger.js";
7
6
  import { WithdrawalCompressorV310Contract } from "./WithdrawalCompressorV310Contract.js";
@@ -9,4 +8,5 @@ import { WithdrawalCompressorV311Contract } from "./WithdrawalCompressorV311Cont
9
8
  import { toWithdrawalStatus } from "./types.js";
10
9
  import { WithdrawalCompressorV313Contract } from "./WithdrawalCompressorV313Contract.js";
11
10
  import { createWithdrawalCompressor } from "./createWithdrawalCompressor.js";
12
- export { AbstractWithdrawalCompressorContract, DELAYED_INTENT_TYPES, DELAYED_INTENT_VERSION, InvalidDelayedIntentError, RedemptionLoggerV310Contract, WithdrawalCompressorV310Contract, WithdrawalCompressorV311Contract, WithdrawalCompressorV313Contract, createRedemptionLogger, createWithdrawalCompressor, decodeDelayedIntent, encodeDelayedIntent, getWithdrawalCompressorAddress, iCreditAccountAbi, toClaimableWithdrawal, toPendingWithdrawal, toRequestableWithdrawal, toWithdrawalStatus };
11
+ import "./errors.js";
12
+ export { AbstractWithdrawalCompressorContract, DELAYED_INTENT_TYPES, DELAYED_INTENT_VERSION, RedemptionLoggerV310Contract, WithdrawalCompressorV310Contract, WithdrawalCompressorV311Contract, WithdrawalCompressorV313Contract, createRedemptionLogger, createWithdrawalCompressor, decodeDelayedIntent, encodeDelayedIntent, getWithdrawalCompressorAddress, iCreditAccountAbi, toClaimableWithdrawal, toPendingWithdrawal, toRequestableWithdrawal, toWithdrawalStatus };
@@ -113,7 +113,11 @@ const chains = {
113
113
  "0xa4c644f3180d10cd3b2121d455a2a88e1bda2928",
114
114
  "0xb79d6544839d169869476589d2e54014a074317b",
115
115
  "0xc307a074bd5aec2d6ad1d9b74465c24a59b490fd",
116
- "0xf5edc34204e67e592bdcb84114571c9e4bd0bdf7"
116
+ "0xf5edc34204e67e592bdcb84114571c9e4bd0bdf7",
117
+ "0x29350A3C2627FB78C7E915cd59AF754edf8998c5",
118
+ "0x5A93bc6983F80f5c55675eA4e77bb46DdC9665e8",
119
+ "0x5415092F06403F30486EF846dBAE0532c6Bd8759",
120
+ "0x9D866298f6B8E168a06e313D47059f2C097A92F1"
117
121
  ]),
118
122
  isPublic: true,
119
123
  wellKnownToken: {
@@ -225,7 +229,8 @@ const chains = {
225
229
  sunsetPools: new AddressSet([
226
230
  "0x09cA6b76276eC0682adb896418b99CB7E44a58A0",
227
231
  "0x34752948B0dc28969485Df2066fFE86D5dc36689",
228
- "0x164A35F31e4E0F6c45D500962a6978D2cbD5a16b"
232
+ "0x164A35F31e4E0F6c45D500962a6978D2cbD5a16b",
233
+ "0xc4173359087CE643235420b7bC610d9B0CF2B82D"
229
234
  ]),
230
235
  sunsetStrategies: new AddressSet([
231
236
  "0xA1F05494Dab74Eb9C352C3A042836579fE168aa7",
@@ -235,7 +240,8 @@ const chains = {
235
240
  "0xb21f766c193541305C18cE146DCD3Fdf642b40eF",
236
241
  "0x04620081bb818B8CD3996943D0A4a37Dbf296cF4",
237
242
  "0x5452971Fc17d025a1AFFDd5F7a44CCDD1BF0524C",
238
- "0x7ea06087C63568f1071c6BEA3AeB51e070ec68B9"
243
+ "0x7ea06087C63568f1071c6BEA3AeB51e070ec68B9",
244
+ "0x06F5b5062477DCf6723c30a76232A5C0B6FCb01A"
239
245
  ]),
240
246
  rwaFactories: [],
241
247
  isPublic: true,
@@ -1,5 +1,5 @@
1
- import { chains } from "./chains.js";
2
1
  import { ierc20Abi } from "../../abi/iERC20.js";
2
+ import { chains } from "./chains.js";
3
3
  //#region src/onchain/chain/detectNetwork.ts
4
4
  /**
5
5
  * Detects the network type from the given client.
@@ -1,8 +1,8 @@
1
1
  import { ADDRESS_PROVIDER_V310, AP_ACCOUNT_FACTORY, AP_ACL, AP_BOT_LIST, AP_BYTECODE_REPOSITORY, AP_CONTRACTS_REGISTER, AP_CONTROLLER_TIMELOCK, AP_CREDIT_ACCOUNT_COMPRESSOR, AP_CREDIT_SUITE_COMPRESSOR, AP_DATA_COMPRESSOR, AP_DELEVERAGE_BOT_HV, AP_DELEVERAGE_BOT_LV, AP_DELEVERAGE_BOT_PEGGED, AP_GAUGE_COMPRESSOR, AP_GEAR_STAKING, AP_GEAR_TOKEN, AP_INFLATION_ATTACK_BLOCKER, AP_INSOLVENCY_CHECKER, AP_MARKET_COMPRESSOR, AP_MARKET_CONFIGURATOR, AP_PARTIAL_LIQUIDATION_BOT, AP_PERIPHERY_COMPRESSOR, AP_PRICE_FEED_COMPRESSOR, AP_PRICE_FEED_STORE, AP_PRICE_ORACLE, AP_REDEMPTION_LOGGER, AP_REWARDS_COMPRESSOR, AP_ROUTER, AP_RWA_COMPRESSOR, AP_TOKEN_COMPRESSOR, AP_TREASURY, AP_WETH_GATEWAY, AP_WETH_TOKEN, AP_ZAPPER_REGISTER, AP_ZERO_PRICE_FEED, NO_VERSION } from "./address-provider.js";
2
2
  import { ADDRESS_0X0, MULTICALL_ADDRESS, NATIVE_ADDRESS, NOT_DEPLOYED } from "./addresses.js";
3
3
  import { BotPermissions, botPermissionsToString } from "./bot-permissions.js";
4
- import { DUST_THRESHOLD, LEVERAGE_DECIMALS, MAX_INT, MAX_UINT16, MAX_UINT256, MIN_INT96, PERCENTAGE_DECIMALS, PERCENTAGE_FACTOR, PERCENTAGE_FACTOR_1KK, PRICE_DECIMALS, PRICE_DECIMALS_POW, RAY, RAY_DECIMALS_POW, SECONDS_PER_YEAR, SLIPPAGE_DECIMALS, WAD, WAD_DECIMALS_POW, halfRAY } from "./math.js";
4
+ import { DUST_THRESHOLD, LEVERAGE_DECIMALS, MAX_INT, MAX_UINT16, MAX_UINT256, MIN_INT96, PERCENTAGE_DECIMALS, PERCENTAGE_FACTOR, PERCENTAGE_FACTOR_1KK, PRICE_DECIMALS, PRICE_DECIMALS_POW, RAY, RAY_DECIMALS_POW, SECONDS_PER_YEAR, SLIPPAGE_DECIMALS, WAD, WAD_DECIMALS_POW, halfRAY, isZeroBalance } from "./math.js";
5
5
  import { BLOCKS_PER_WEEK_BY_NETWORK, RAMP_DURATION_BY_NETWORK } from "./networks.js";
6
6
  import { PERIPHERY_CONTRACTS } from "./periphery.js";
7
7
  import { VERSION_RANGE_310, isV310, isVersionRange } from "./versions.js";
8
- export { ADDRESS_0X0, ADDRESS_PROVIDER_V310, AP_ACCOUNT_FACTORY, AP_ACL, AP_BOT_LIST, AP_BYTECODE_REPOSITORY, AP_CONTRACTS_REGISTER, AP_CONTROLLER_TIMELOCK, AP_CREDIT_ACCOUNT_COMPRESSOR, AP_CREDIT_SUITE_COMPRESSOR, AP_DATA_COMPRESSOR, AP_DELEVERAGE_BOT_HV, AP_DELEVERAGE_BOT_LV, AP_DELEVERAGE_BOT_PEGGED, AP_GAUGE_COMPRESSOR, AP_GEAR_STAKING, AP_GEAR_TOKEN, AP_INFLATION_ATTACK_BLOCKER, AP_INSOLVENCY_CHECKER, AP_MARKET_COMPRESSOR, AP_MARKET_CONFIGURATOR, AP_PARTIAL_LIQUIDATION_BOT, AP_PERIPHERY_COMPRESSOR, AP_PRICE_FEED_COMPRESSOR, AP_PRICE_FEED_STORE, AP_PRICE_ORACLE, AP_REDEMPTION_LOGGER, AP_REWARDS_COMPRESSOR, AP_ROUTER, AP_RWA_COMPRESSOR, AP_TOKEN_COMPRESSOR, AP_TREASURY, AP_WETH_GATEWAY, AP_WETH_TOKEN, AP_ZAPPER_REGISTER, AP_ZERO_PRICE_FEED, BLOCKS_PER_WEEK_BY_NETWORK, BotPermissions, DUST_THRESHOLD, LEVERAGE_DECIMALS, MAX_INT, MAX_UINT16, MAX_UINT256, MIN_INT96, MULTICALL_ADDRESS, NATIVE_ADDRESS, NOT_DEPLOYED, NO_VERSION, PERCENTAGE_DECIMALS, PERCENTAGE_FACTOR, PERCENTAGE_FACTOR_1KK, PERIPHERY_CONTRACTS, PRICE_DECIMALS, PRICE_DECIMALS_POW, RAMP_DURATION_BY_NETWORK, RAY, RAY_DECIMALS_POW, SECONDS_PER_YEAR, SLIPPAGE_DECIMALS, VERSION_RANGE_310, WAD, WAD_DECIMALS_POW, botPermissionsToString, halfRAY, isV310, isVersionRange };
8
+ export { ADDRESS_0X0, ADDRESS_PROVIDER_V310, AP_ACCOUNT_FACTORY, AP_ACL, AP_BOT_LIST, AP_BYTECODE_REPOSITORY, AP_CONTRACTS_REGISTER, AP_CONTROLLER_TIMELOCK, AP_CREDIT_ACCOUNT_COMPRESSOR, AP_CREDIT_SUITE_COMPRESSOR, AP_DATA_COMPRESSOR, AP_DELEVERAGE_BOT_HV, AP_DELEVERAGE_BOT_LV, AP_DELEVERAGE_BOT_PEGGED, AP_GAUGE_COMPRESSOR, AP_GEAR_STAKING, AP_GEAR_TOKEN, AP_INFLATION_ATTACK_BLOCKER, AP_INSOLVENCY_CHECKER, AP_MARKET_COMPRESSOR, AP_MARKET_CONFIGURATOR, AP_PARTIAL_LIQUIDATION_BOT, AP_PERIPHERY_COMPRESSOR, AP_PRICE_FEED_COMPRESSOR, AP_PRICE_FEED_STORE, AP_PRICE_ORACLE, AP_REDEMPTION_LOGGER, AP_REWARDS_COMPRESSOR, AP_ROUTER, AP_RWA_COMPRESSOR, AP_TOKEN_COMPRESSOR, AP_TREASURY, AP_WETH_GATEWAY, AP_WETH_TOKEN, AP_ZAPPER_REGISTER, AP_ZERO_PRICE_FEED, BLOCKS_PER_WEEK_BY_NETWORK, BotPermissions, DUST_THRESHOLD, LEVERAGE_DECIMALS, MAX_INT, MAX_UINT16, MAX_UINT256, MIN_INT96, MULTICALL_ADDRESS, NATIVE_ADDRESS, NOT_DEPLOYED, NO_VERSION, PERCENTAGE_DECIMALS, PERCENTAGE_FACTOR, PERCENTAGE_FACTOR_1KK, PERIPHERY_CONTRACTS, PRICE_DECIMALS, PRICE_DECIMALS_POW, RAMP_DURATION_BY_NETWORK, RAY, RAY_DECIMALS_POW, SECONDS_PER_YEAR, SLIPPAGE_DECIMALS, VERSION_RANGE_310, WAD, WAD_DECIMALS_POW, botPermissionsToString, halfRAY, isV310, isVersionRange, isZeroBalance };
@@ -20,5 +20,15 @@ const SLIPPAGE_DECIMALS = 100n;
20
20
  * Token balances at or below this threshold are treated as dust and ignored.
21
21
  **/
22
22
  const DUST_THRESHOLD = 10n;
23
+ /**
24
+ * Whether a balance is nothing worth acting on.
25
+ *
26
+ * The threshold is a dust floor, not a zero test: rounding leaves amounts that
27
+ * are technically non-zero and worthless, and a form that offered to spend one
28
+ * would build a transaction nobody wants.
29
+ */
30
+ function isZeroBalance(balance) {
31
+ return (balance ?? 0n) <= DUST_THRESHOLD;
32
+ }
23
33
  //#endregion
24
- export { DUST_THRESHOLD, LEVERAGE_DECIMALS, MAX_INT, MAX_UINT16, MAX_UINT256, MIN_INT96, PERCENTAGE_DECIMALS, PERCENTAGE_FACTOR, PERCENTAGE_FACTOR_1KK, PRICE_DECIMALS, PRICE_DECIMALS_POW, RAY, RAY_DECIMALS_POW, SECONDS_PER_YEAR, SLIPPAGE_DECIMALS, WAD, WAD_DECIMALS_POW, halfRAY };
34
+ export { DUST_THRESHOLD, LEVERAGE_DECIMALS, MAX_INT, MAX_UINT16, MAX_UINT256, MIN_INT96, PERCENTAGE_DECIMALS, PERCENTAGE_FACTOR, PERCENTAGE_FACTOR_1KK, PRICE_DECIMALS, PRICE_DECIMALS_POW, RAY, RAY_DECIMALS_POW, SECONDS_PER_YEAR, SLIPPAGE_DECIMALS, WAD, WAD_DECIMALS_POW, halfRAY, isZeroBalance };