@gearbox-protocol/sdk 16.2.0 → 16.3.0-next.2

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 (572) hide show
  1. package/dist/cjs/abi/rwa/iMidasAccessControl.js +23 -0
  2. package/dist/cjs/abi/rwa/iMidasDegenNFT.js +92 -0
  3. package/dist/cjs/history/assembleOperations.js +3 -3
  4. package/dist/cjs/history/classifyMulticallOperations.js +7 -7
  5. package/dist/cjs/history/index.js +13 -0
  6. package/dist/cjs/history/parseCreditAccountTransaction.js +5 -5
  7. package/dist/cjs/{preview → history}/trace/errors.js +1 -1
  8. package/dist/cjs/{preview → history}/trace/extractAdapterCallTraces.js +1 -1
  9. package/dist/cjs/{preview → history}/trace/extractTransfers.js +3 -3
  10. package/dist/cjs/{preview → history}/trace/findFacadeCalls.js +3 -3
  11. package/dist/cjs/history/trace/index.js +14 -0
  12. package/dist/cjs/model/errors/index.js +37 -0
  13. package/dist/cjs/model/errors/liquidation-errors.js +32 -0
  14. package/dist/cjs/model/errors/operation-errors.js +135 -0
  15. package/dist/cjs/{onchain/market/oracle/errors.js → model/errors/oracle-errors.js} +1 -1
  16. package/dist/cjs/model/errors/prepare-errors.js +108 -0
  17. package/dist/cjs/model/errors/preview-errors.js +12 -0
  18. package/dist/cjs/model/index.js +45 -2
  19. package/dist/cjs/model/opportunities.schema.js +3 -1
  20. package/dist/cjs/model/positions.js +1 -1
  21. package/dist/cjs/model/result.js +0 -8
  22. package/dist/cjs/model/rwa.js +53 -0
  23. package/dist/cjs/model/rwa.schema.js +20 -0
  24. package/dist/cjs/offchain/opportunities/OffchainOpportunities.js +1 -1
  25. package/dist/cjs/onchain/accounts/index.js +0 -2
  26. package/dist/cjs/onchain/accounts/intents/guards.js +42 -66
  27. package/dist/cjs/onchain/accounts/intents/index.js +38 -35
  28. package/dist/cjs/onchain/accounts/intents/leverage-band.js +1 -1
  29. package/dist/cjs/onchain/accounts/intents/math.js +19 -15
  30. package/dist/cjs/onchain/accounts/intents/open-strategy.js +6 -4
  31. package/dist/cjs/onchain/accounts/intents/plan.js +52 -48
  32. package/dist/cjs/onchain/accounts/intents/realize.js +26 -24
  33. package/dist/cjs/onchain/accounts/intents/tail.js +15 -12
  34. package/dist/cjs/onchain/accounts/intents/testing/sdk-mock.js +7 -0
  35. package/dist/cjs/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +6 -6
  36. package/dist/cjs/onchain/accounts/intents/tests/withdraw.fixtures.js +12 -12
  37. package/dist/cjs/onchain/accounts/intents/view.js +1 -1
  38. package/dist/cjs/onchain/accounts/liquidations/LiquidationsService.js +2 -2
  39. package/dist/cjs/onchain/accounts/withdrawal-compressor/index.js +0 -1
  40. package/dist/cjs/onchain/index.js +130 -38
  41. package/dist/cjs/onchain/market/MarketSuite.js +10 -4
  42. package/dist/cjs/onchain/market/adapters/index.js +1 -0
  43. package/dist/cjs/onchain/market/credit/CreditSuite.js +77 -15
  44. package/dist/cjs/onchain/market/index.js +8 -8
  45. package/dist/cjs/onchain/market/oracle/PriceOracleBaseContract.js +6 -6
  46. package/dist/cjs/onchain/market/oracle/index.js +0 -2
  47. package/dist/cjs/onchain/market/pool/PoolQuotaKeeperV310Contract.js +8 -0
  48. package/dist/cjs/onchain/market/rwa/RWARegistry.js +3 -2
  49. package/dist/cjs/onchain/market/rwa/createDegenNFT.js +53 -0
  50. package/dist/cjs/onchain/market/rwa/index.js +7 -5
  51. package/dist/cjs/onchain/market/rwa/midas/MidasDegenNFT.js +56 -0
  52. package/dist/cjs/onchain/market/rwa/midas/constants.js +2 -0
  53. package/dist/cjs/onchain/market/rwa/midas/index.js +3 -0
  54. package/dist/cjs/onchain/market/rwa/securitize/SecuritizeDegenNFT.js +22 -3
  55. package/dist/cjs/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +9 -9
  56. package/dist/cjs/onchain/market/rwa/securitize/constants.js +2 -2
  57. package/dist/cjs/onchain/market/rwa/securitize/index.js +4 -3
  58. package/dist/cjs/onchain/market/rwa/securitize/types.js +0 -29
  59. package/dist/cjs/onchain/market/rwa/types.js +0 -7
  60. package/dist/cjs/onchain/market/zapper/index.js +0 -1
  61. package/dist/cjs/onchain/opportunities/MultichainOpportunitiesService.js +2 -2
  62. package/dist/cjs/onchain/opportunities/OpportunitiesService.js +11 -3
  63. package/dist/cjs/onchain/pools/PoolService.js +10 -16
  64. package/dist/cjs/onchain/preview/index.js +41 -0
  65. package/dist/cjs/{preview → onchain/preview}/parse/classifyInnerOperations.js +2 -3
  66. package/dist/cjs/onchain/preview/parse/index.js +14 -0
  67. package/dist/cjs/{preview → onchain/preview}/parse/parseFacadeOperationCalldata.js +3 -3
  68. package/dist/cjs/{preview → onchain/preview}/parse/parseOperationCalldata.js +16 -17
  69. package/dist/cjs/{preview → onchain/preview}/parse/parsePoolOperationCalldata.js +3 -3
  70. package/dist/cjs/{preview → onchain/preview}/parse/parseRWAFactoryOperationCalldata.js +11 -12
  71. package/dist/cjs/{preview → onchain/preview}/parse/types.js +1 -1
  72. package/dist/cjs/{preview → onchain/preview}/preview/CreditAccountState.js +3 -4
  73. package/dist/cjs/{preview → onchain/preview}/preview/buildDelayedStrategyPositionOperationPreview.js +10 -11
  74. package/dist/cjs/{preview → onchain/preview}/preview/detectCloseOrRepay.js +2 -3
  75. package/dist/cjs/{preview → onchain/preview}/preview/detectDelayedClaim.js +4 -5
  76. package/dist/cjs/{preview → onchain/preview}/preview/detectDelayedOperation.js +5 -6
  77. package/dist/cjs/{preview → onchain/preview}/preview/estimateClaimableAt.js +1 -1
  78. package/dist/cjs/onchain/preview/preview/index.js +26 -0
  79. package/dist/cjs/{preview → onchain/preview}/preview/previewAdjustStrategyPosition.js +18 -22
  80. package/dist/cjs/{preview → onchain/preview}/preview/previewExitOrRepayStrategyPosition.js +22 -28
  81. package/dist/cjs/onchain/preview/preview/previewOpenStrategyPosition.js +60 -0
  82. package/dist/cjs/onchain/preview/preview/previewOperation.js +119 -0
  83. package/dist/cjs/{preview/simulate/simulatePoolOperation.js → onchain/preview/preview/previewPoolPositionOperation.js} +46 -32
  84. package/dist/cjs/onchain/preview/preview/replayInnerOperations.js +109 -0
  85. package/dist/cjs/onchain/preview/preview/replayMulticall.js +22 -0
  86. package/dist/cjs/{preview → onchain/preview}/preview/unwrapNativeCollateral.js +11 -14
  87. package/dist/cjs/onchain/validation/bundles/checkAccountQuotas.js +20 -0
  88. package/dist/cjs/onchain/validation/bundles/checkCollateralFunding.js +59 -0
  89. package/dist/cjs/onchain/validation/bundles/checkCreditOperation.js +65 -0
  90. package/dist/cjs/onchain/validation/bundles/checkDraw.js +28 -0
  91. package/dist/cjs/onchain/validation/bundles/checkHealthFactors.js +27 -0
  92. package/dist/cjs/onchain/validation/bundles/checkLiquidationEligibility.js +33 -0
  93. package/dist/cjs/onchain/validation/bundles/checkLiquidationFunding.js +29 -0
  94. package/dist/cjs/onchain/validation/bundles/checkMarket.js +24 -0
  95. package/dist/cjs/onchain/validation/bundles/checkObtained.js +13 -0
  96. package/dist/cjs/onchain/validation/bundles/checkPoolFunding.js +22 -0
  97. package/dist/cjs/onchain/validation/bundles/checkPoolOperation.js +35 -0
  98. package/dist/cjs/onchain/validation/bundles/checkQuotasAsked.js +20 -0
  99. package/dist/cjs/onchain/validation/bundles/checkRWAOpenRequirements.js +33 -0
  100. package/dist/cjs/onchain/validation/bundles/checkRWAOpening.js +24 -0
  101. package/dist/cjs/onchain/validation/bundles/checkWallet.js +22 -0
  102. package/dist/cjs/onchain/validation/bundles/checkWalletAllowance.js +32 -0
  103. package/dist/cjs/onchain/validation/bundles/checkWalletBalance.js +41 -0
  104. package/dist/cjs/onchain/validation/bundles/index.js +35 -0
  105. package/dist/cjs/onchain/validation/checkLiquidation.js +22 -0
  106. package/dist/cjs/onchain/validation/checkOperation.js +62 -0
  107. package/dist/cjs/onchain/validation/checkSimulation.js +60 -0
  108. package/dist/cjs/onchain/validation/checks/checkBorrowLimit.js +25 -0
  109. package/dist/cjs/onchain/validation/checks/checkCollateralised.js +26 -0
  110. package/dist/cjs/onchain/validation/checks/checkCreditAccountFrozen.js +10 -0
  111. package/dist/cjs/onchain/validation/checks/checkCreditManagerPaused.js +10 -0
  112. package/dist/cjs/onchain/validation/checks/checkDebtLimits.js +18 -0
  113. package/dist/cjs/onchain/validation/checks/checkEmergencyLiquidator.js +13 -0
  114. package/dist/cjs/onchain/validation/checks/checkForbiddenToken.js +10 -0
  115. package/dist/cjs/onchain/validation/checks/checkLeverage.js +13 -0
  116. package/dist/cjs/onchain/validation/checks/checkLiquidatorEligible.js +10 -0
  117. package/dist/cjs/onchain/validation/checks/checkMarketExpired.js +10 -0
  118. package/dist/cjs/onchain/validation/checks/checkPoolLiquidity.js +25 -0
  119. package/dist/cjs/onchain/validation/checks/checkPoolPaused.js +10 -0
  120. package/dist/cjs/onchain/validation/checks/checkPoolSunset.js +10 -0
  121. package/dist/cjs/onchain/validation/checks/checkQuotaCount.js +10 -0
  122. package/dist/cjs/onchain/validation/checks/checkQuotaLimit.js +18 -0
  123. package/dist/cjs/onchain/validation/checks/index.js +31 -0
  124. package/dist/cjs/onchain/validation/helpers/amount.js +12 -0
  125. package/dist/cjs/onchain/validation/helpers/health-factor-limits.js +25 -0
  126. package/dist/cjs/onchain/validation/helpers/index.js +11 -0
  127. package/dist/cjs/onchain/validation/{token.js → helpers/token.js} +4 -4
  128. package/dist/cjs/onchain/validation/index.js +85 -27
  129. package/dist/cjs/onchain/validation/raise.js +33 -0
  130. package/dist/cjs/sdk/index.js +6 -11
  131. package/dist/cjs/sdk/liquidations/LiquidationsNamespace.js +9 -0
  132. package/dist/cjs/sdk/opportunities/OpportunitiesNamespace.js +19 -4
  133. package/dist/cjs/sdk/prepare/PrepareApi.js +40 -50
  134. package/dist/cjs/sdk/prepare/index.js +7 -11
  135. package/dist/cjs/sdk/prepare/types.js +0 -4
  136. package/dist/cjs/sdk/preview/PreviewNamespace.js +24 -13
  137. package/dist/esm/abi/rwa/iMidasAccessControl.js +22 -0
  138. package/dist/esm/abi/rwa/iMidasDegenNFT.js +91 -0
  139. package/dist/esm/dev/AccountOpener.js +1 -1
  140. package/dist/esm/dev/withdrawalUtils.js +1 -1
  141. package/dist/esm/history/assembleOperations.js +2 -2
  142. package/dist/esm/history/classifyMulticallOperations.js +2 -2
  143. package/dist/esm/history/index.js +6 -1
  144. package/dist/esm/history/parseCreditAccountTransaction.js +3 -3
  145. package/dist/esm/{preview → history}/trace/errors.js +1 -1
  146. package/dist/esm/{preview → history}/trace/extractAdapterCallTraces.js +1 -1
  147. package/dist/esm/{preview → history}/trace/extractTransfers.js +2 -2
  148. package/dist/esm/{preview → history}/trace/findFacadeCalls.js +1 -1
  149. package/dist/esm/model/errors/index.js +7 -0
  150. package/dist/esm/model/errors/liquidation-errors.js +29 -0
  151. package/dist/esm/model/errors/operation-errors.js +121 -0
  152. package/dist/esm/{onchain/market/oracle/errors.js → model/errors/oracle-errors.js} +1 -1
  153. package/dist/esm/model/errors/prepare-errors.js +97 -0
  154. package/dist/esm/model/errors/preview-errors.js +11 -0
  155. package/dist/esm/model/index.js +10 -3
  156. package/dist/esm/model/opportunities.schema.js +3 -1
  157. package/dist/esm/model/positions.js +1 -1
  158. package/dist/esm/model/result.js +1 -8
  159. package/dist/esm/model/rwa.js +48 -0
  160. package/dist/esm/model/rwa.schema.js +18 -0
  161. package/dist/esm/offchain/opportunities/OffchainOpportunities.js +1 -1
  162. package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +2 -2
  163. package/dist/esm/onchain/accounts/index.js +1 -2
  164. package/dist/esm/onchain/accounts/intents/guards.js +29 -52
  165. package/dist/esm/onchain/accounts/intents/index.js +39 -35
  166. package/dist/esm/onchain/accounts/intents/leverage-band.js +1 -1
  167. package/dist/esm/onchain/accounts/intents/math.js +18 -14
  168. package/dist/esm/onchain/accounts/intents/open-strategy.js +8 -6
  169. package/dist/esm/onchain/accounts/intents/plan.js +51 -47
  170. package/dist/esm/onchain/accounts/intents/realize.js +26 -24
  171. package/dist/esm/onchain/accounts/intents/tail.js +14 -11
  172. package/dist/esm/onchain/accounts/intents/testing/sdk-mock.js +7 -0
  173. package/dist/esm/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +6 -6
  174. package/dist/esm/onchain/accounts/intents/tests/withdraw.fixtures.js +12 -12
  175. package/dist/esm/onchain/accounts/intents/view.js +1 -1
  176. package/dist/esm/onchain/accounts/liquidations/LiquidationsService.js +3 -3
  177. package/dist/esm/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +1 -1
  178. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +1 -1
  179. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +1 -1
  180. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +1 -1
  181. package/dist/esm/onchain/accounts/withdrawal-compressor/index.js +0 -1
  182. package/dist/esm/onchain/base/TokensMeta.js +3 -3
  183. package/dist/esm/onchain/core/createAddressProvider.js +1 -1
  184. package/dist/esm/onchain/index.js +64 -11
  185. package/dist/esm/onchain/market/MarketSuite.js +10 -4
  186. package/dist/esm/onchain/market/adapters/contracts/AccountMigratorAdapterContract.js +1 -1
  187. package/dist/esm/onchain/market/adapters/contracts/ERC4626AdapterContract.js +1 -1
  188. package/dist/esm/onchain/market/adapters/index.js +1 -0
  189. package/dist/esm/onchain/market/credit/CreditFacadeV310BaseContract.js +1 -1
  190. package/dist/esm/onchain/market/credit/CreditSuite.js +77 -15
  191. package/dist/esm/onchain/market/index.js +6 -6
  192. package/dist/esm/onchain/market/oracle/PriceOracleBaseContract.js +1 -1
  193. package/dist/esm/onchain/market/oracle/index.js +1 -2
  194. package/dist/esm/onchain/market/pool/PoolQuotaKeeperV310Contract.js +8 -0
  195. package/dist/esm/onchain/market/pool/PoolV310Contract.js +1 -1
  196. package/dist/esm/onchain/market/rwa/RWARegistry.js +2 -1
  197. package/dist/esm/onchain/market/rwa/createDegenNFT.js +52 -0
  198. package/dist/esm/onchain/market/rwa/index.js +6 -5
  199. package/dist/esm/onchain/market/rwa/midas/MidasDegenNFT.js +55 -0
  200. package/dist/esm/onchain/market/rwa/midas/constants.js +2 -1
  201. package/dist/esm/onchain/market/rwa/midas/index.js +3 -2
  202. package/dist/esm/onchain/market/rwa/securitize/SecuritizeDegenNFT.js +20 -2
  203. package/dist/esm/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +4 -4
  204. package/dist/esm/onchain/market/rwa/securitize/constants.js +2 -2
  205. package/dist/esm/onchain/market/rwa/securitize/index.js +4 -3
  206. package/dist/esm/onchain/market/rwa/securitize/types.js +1 -29
  207. package/dist/esm/onchain/market/rwa/types.js +1 -7
  208. package/dist/esm/onchain/market/zapper/IETHZapperContract.js +1 -1
  209. package/dist/esm/onchain/market/zapper/ZapperContract.js +1 -1
  210. package/dist/esm/onchain/market/zapper/index.js +0 -1
  211. package/dist/esm/onchain/opportunities/MultichainOpportunitiesService.js +2 -2
  212. package/dist/esm/onchain/opportunities/OpportunitiesService.js +11 -3
  213. package/dist/esm/onchain/pools/PoolService.js +10 -16
  214. package/dist/esm/onchain/preview/index.js +20 -0
  215. package/dist/esm/{preview → onchain/preview}/parse/classifyInnerOperations.js +2 -3
  216. package/dist/esm/{preview → onchain/preview}/parse/index.js +0 -1
  217. package/dist/esm/{preview → onchain/preview}/parse/parseFacadeOperationCalldata.js +1 -1
  218. package/dist/esm/{preview → onchain/preview}/parse/parseOperationCalldata.js +10 -11
  219. package/dist/esm/{preview → onchain/preview}/parse/parsePoolOperationCalldata.js +3 -3
  220. package/dist/esm/{preview → onchain/preview}/parse/parseRWAFactoryOperationCalldata.js +8 -9
  221. package/dist/esm/{preview → onchain/preview}/parse/types.js +1 -1
  222. package/dist/esm/{preview → onchain/preview}/preview/CreditAccountState.js +3 -4
  223. package/dist/esm/{preview → onchain/preview}/preview/buildDelayedStrategyPositionOperationPreview.js +10 -11
  224. package/dist/esm/{preview → onchain/preview}/preview/detectCloseOrRepay.js +2 -3
  225. package/dist/esm/{preview → onchain/preview}/preview/detectDelayedClaim.js +4 -5
  226. package/dist/esm/{preview → onchain/preview}/preview/detectDelayedOperation.js +5 -6
  227. package/dist/esm/{preview → onchain/preview}/preview/estimateClaimableAt.js +1 -1
  228. package/dist/esm/{preview → onchain/preview}/preview/index.js +3 -4
  229. package/dist/esm/{preview → onchain/preview}/preview/previewAdjustStrategyPosition.js +17 -21
  230. package/dist/esm/{preview → onchain/preview}/preview/previewExitOrRepayStrategyPosition.js +20 -26
  231. package/dist/esm/{preview → onchain/preview}/preview/previewOpenStrategyPosition.js +25 -15
  232. package/dist/esm/{preview → onchain/preview}/preview/previewOperation.js +54 -35
  233. package/dist/esm/{preview/simulate/simulatePoolOperation.js → onchain/preview/preview/previewPoolPositionOperation.js} +46 -30
  234. package/dist/esm/onchain/preview/preview/replayInnerOperations.js +107 -0
  235. package/dist/esm/onchain/preview/preview/replayMulticall.js +21 -0
  236. package/dist/esm/{preview → onchain/preview}/preview/unwrapNativeCollateral.js +11 -14
  237. package/dist/esm/onchain/utils/viem/simulateWithPriceUpdates.js +1 -1
  238. package/dist/esm/onchain/validation/bundles/checkAccountQuotas.js +19 -0
  239. package/dist/esm/onchain/validation/bundles/checkCollateralFunding.js +58 -0
  240. package/dist/esm/onchain/validation/bundles/checkCreditOperation.js +64 -0
  241. package/dist/esm/onchain/validation/bundles/checkDraw.js +27 -0
  242. package/dist/esm/onchain/validation/bundles/checkHealthFactors.js +26 -0
  243. package/dist/esm/onchain/validation/bundles/checkLiquidationEligibility.js +32 -0
  244. package/dist/esm/onchain/validation/bundles/checkLiquidationFunding.js +28 -0
  245. package/dist/esm/onchain/validation/bundles/checkMarket.js +23 -0
  246. package/dist/esm/onchain/validation/bundles/checkObtained.js +12 -0
  247. package/dist/esm/onchain/validation/bundles/checkPoolFunding.js +21 -0
  248. package/dist/esm/onchain/validation/bundles/checkPoolOperation.js +34 -0
  249. package/dist/esm/onchain/validation/bundles/checkQuotasAsked.js +19 -0
  250. package/dist/esm/onchain/validation/bundles/checkRWAOpenRequirements.js +32 -0
  251. package/dist/esm/onchain/validation/bundles/checkRWAOpening.js +23 -0
  252. package/dist/esm/onchain/validation/bundles/checkWallet.js +21 -0
  253. package/dist/esm/onchain/validation/bundles/checkWalletAllowance.js +31 -0
  254. package/dist/esm/onchain/validation/bundles/checkWalletBalance.js +40 -0
  255. package/dist/esm/onchain/validation/bundles/index.js +18 -0
  256. package/dist/esm/onchain/validation/checkLiquidation.js +21 -0
  257. package/dist/esm/onchain/validation/checkOperation.js +61 -0
  258. package/dist/esm/onchain/validation/checkSimulation.js +59 -0
  259. package/dist/esm/onchain/validation/checks/checkBorrowLimit.js +24 -0
  260. package/dist/esm/onchain/validation/checks/checkCollateralised.js +25 -0
  261. package/dist/esm/onchain/validation/checks/checkCreditAccountFrozen.js +9 -0
  262. package/dist/esm/onchain/validation/checks/checkCreditManagerPaused.js +9 -0
  263. package/dist/esm/onchain/validation/checks/checkDebtLimits.js +17 -0
  264. package/dist/esm/onchain/validation/checks/checkEmergencyLiquidator.js +12 -0
  265. package/dist/esm/onchain/validation/checks/checkForbiddenToken.js +9 -0
  266. package/dist/esm/onchain/validation/checks/checkLeverage.js +12 -0
  267. package/dist/esm/onchain/validation/checks/checkLiquidatorEligible.js +9 -0
  268. package/dist/esm/onchain/validation/checks/checkMarketExpired.js +9 -0
  269. package/dist/esm/onchain/validation/checks/checkPoolLiquidity.js +24 -0
  270. package/dist/esm/onchain/validation/checks/checkPoolPaused.js +9 -0
  271. package/dist/esm/onchain/validation/checks/checkPoolSunset.js +9 -0
  272. package/dist/esm/onchain/validation/checks/checkQuotaCount.js +9 -0
  273. package/dist/esm/onchain/validation/checks/checkQuotaLimit.js +17 -0
  274. package/dist/esm/onchain/validation/checks/index.js +16 -0
  275. package/dist/esm/onchain/validation/helpers/amount.js +11 -0
  276. package/dist/esm/onchain/validation/helpers/health-factor-limits.js +21 -0
  277. package/dist/esm/onchain/validation/helpers/index.js +4 -0
  278. package/dist/esm/onchain/validation/{token.js → helpers/token.js} +3 -3
  279. package/dist/esm/onchain/validation/index.js +43 -4
  280. package/dist/esm/onchain/validation/raise.js +31 -0
  281. package/dist/esm/sdk/index.js +2 -3
  282. package/dist/esm/sdk/liquidations/LiquidationsNamespace.js +9 -0
  283. package/dist/esm/sdk/opportunities/OpportunitiesNamespace.js +19 -4
  284. package/dist/esm/sdk/prepare/PrepareApi.js +25 -35
  285. package/dist/esm/sdk/prepare/index.js +3 -3
  286. package/dist/esm/sdk/prepare/types.js +1 -2
  287. package/dist/esm/sdk/preview/PreviewNamespace.js +24 -13
  288. package/dist/types/abi/rwa/iMidasAccessControl.d.ts +22 -0
  289. package/dist/types/abi/rwa/iMidasDegenNFT.d.ts +82 -0
  290. package/dist/types/history/assembleOperations.d.ts +4 -5
  291. package/dist/types/history/classifyMulticallOperations.d.ts +3 -4
  292. package/dist/types/history/index.d.ts +8 -2
  293. package/dist/types/history/mapOperations.d.ts +1 -1
  294. package/dist/types/{preview → history}/trace/errors.d.ts +1 -1
  295. package/dist/types/{preview → history}/trace/extractAdapterCallTraces.d.ts +1 -1
  296. package/dist/types/{preview → history}/trace/extractTransfers.d.ts +2 -3
  297. package/dist/types/{preview → history}/trace/findFacadeCalls.d.ts +1 -1
  298. package/dist/types/{preview → history}/trace/types.d.ts +1 -1
  299. package/dist/types/history/types.d.ts +2 -3
  300. package/dist/types/model/errors/base.d.ts +28 -0
  301. package/dist/types/model/errors/index.d.ts +7 -0
  302. package/dist/types/model/errors/liquidation-errors.d.ts +45 -0
  303. package/dist/types/model/errors/operation-errors.d.ts +216 -0
  304. package/dist/types/{onchain/market/oracle/errors.d.ts → model/errors/oracle-errors.d.ts} +3 -5
  305. package/dist/types/model/errors/prepare-errors.d.ts +131 -0
  306. package/dist/types/model/errors/preview-errors.d.ts +72 -0
  307. package/dist/types/model/index.d.ts +12 -4
  308. package/dist/types/model/opportunities.d.ts +12 -2
  309. package/dist/types/model/opportunities.schema.d.ts +30 -0
  310. package/dist/types/model/positions.d.ts +2 -2
  311. package/dist/types/model/previews.d.ts +52 -113
  312. package/dist/types/model/result.d.ts +4 -8
  313. package/dist/types/model/rwa.d.ts +167 -0
  314. package/dist/types/model/rwa.schema.d.ts +29 -0
  315. package/dist/types/offchain/opportunities/OffchainOpportunities.d.ts +2 -1
  316. package/dist/types/offchain/opportunities/types.d.ts +4 -1
  317. package/dist/types/onchain/accounts/CreditAccountsServiceV310.d.ts +3 -1
  318. package/dist/types/onchain/accounts/index.d.ts +2 -4
  319. package/dist/types/onchain/accounts/intents/guards.d.ts +8 -18
  320. package/dist/types/onchain/accounts/intents/index.d.ts +20 -19
  321. package/dist/types/onchain/accounts/intents/leverage-band.d.ts +1 -1
  322. package/dist/types/onchain/accounts/intents/math.d.ts +6 -6
  323. package/dist/types/onchain/accounts/intents/operations.d.ts +2 -2
  324. package/dist/types/onchain/accounts/intents/plan.d.ts +9 -9
  325. package/dist/types/onchain/accounts/intents/tail.d.ts +2 -2
  326. package/dist/types/onchain/accounts/intents/testing/expect.d.ts +3 -3
  327. package/dist/types/onchain/accounts/intents/tests/finish-withdraw.fixtures.d.ts +6 -6
  328. package/dist/types/onchain/accounts/intents/tests/withdraw.fixtures.d.ts +12 -12
  329. package/dist/types/onchain/accounts/intents/types.d.ts +32 -30
  330. package/dist/types/onchain/accounts/types.d.ts +2 -1
  331. package/dist/types/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.d.ts +1 -1
  332. package/dist/types/onchain/accounts/withdrawal-compressor/index.d.ts +1 -2
  333. package/dist/types/onchain/accounts/withdrawal-compressor/types.d.ts +1 -1
  334. package/dist/types/onchain/index.d.ts +73 -16
  335. package/dist/types/onchain/market/MarketSuite.d.ts +5 -1
  336. package/dist/types/onchain/market/adapters/index.d.ts +2 -1
  337. package/dist/types/onchain/market/adapters/transfers.d.ts +0 -7
  338. package/dist/types/onchain/market/credit/CreditSuite.d.ts +30 -8
  339. package/dist/types/onchain/market/credit/index.d.ts +2 -2
  340. package/dist/types/onchain/market/credit/types.d.ts +11 -1
  341. package/dist/types/onchain/market/index.d.ts +11 -10
  342. package/dist/types/onchain/market/oracle/PriceOracleBaseContract.d.ts +1 -1
  343. package/dist/types/onchain/market/oracle/index.d.ts +1 -2
  344. package/dist/types/onchain/market/oracle/types.d.ts +1 -1
  345. package/dist/types/onchain/market/pool/PoolQuotaKeeperV310Contract.d.ts +5 -0
  346. package/dist/types/onchain/market/rwa/RWARegistry.d.ts +1 -1
  347. package/dist/types/onchain/market/rwa/createDegenNFT.d.ts +12 -0
  348. package/dist/types/onchain/market/rwa/index.d.ts +10 -8
  349. package/dist/types/onchain/market/rwa/midas/MidasDegenNFT.d.ts +98 -0
  350. package/dist/types/onchain/market/rwa/midas/constants.d.ts +2 -1
  351. package/dist/types/onchain/market/rwa/midas/index.d.ts +3 -2
  352. package/dist/types/onchain/market/rwa/securitize/SecuritizeDegenNFT.d.ts +8 -2
  353. package/dist/types/onchain/market/rwa/securitize/SecuritizeRWAFactory.d.ts +4 -3
  354. package/dist/types/onchain/market/rwa/securitize/constants.d.ts +2 -2
  355. package/dist/types/onchain/market/rwa/securitize/index.d.ts +5 -4
  356. package/dist/types/onchain/market/rwa/securitize/types.d.ts +4 -110
  357. package/dist/types/onchain/market/rwa/types.d.ts +24 -32
  358. package/dist/types/onchain/market/zapper/ZapperContract.d.ts +1 -1
  359. package/dist/types/onchain/market/zapper/index.d.ts +1 -2
  360. package/dist/types/onchain/market/zapper/types.d.ts +1 -1
  361. package/dist/types/onchain/opportunities/MultichainOpportunitiesService.d.ts +2 -1
  362. package/dist/types/onchain/opportunities/OpportunitiesService.d.ts +5 -1
  363. package/dist/types/onchain/opportunities/types.d.ts +3 -2
  364. package/dist/types/onchain/pools/types.d.ts +2 -2
  365. package/dist/types/onchain/preview/index.d.ts +24 -0
  366. package/dist/types/{preview → onchain/preview}/parse/classifyInnerOperations.d.ts +4 -4
  367. package/dist/types/{preview → onchain/preview}/parse/index.d.ts +2 -4
  368. package/dist/types/{preview → onchain/preview}/parse/parseFacadeOperationCalldata.d.ts +4 -4
  369. package/dist/types/onchain/preview/parse/parseOperationCalldata.d.ts +18 -0
  370. package/dist/types/{preview → onchain/preview}/parse/parsePoolOperationCalldata.d.ts +7 -7
  371. package/dist/types/{preview → onchain/preview}/parse/parseRWAFactoryOperationCalldata.d.ts +4 -4
  372. package/dist/types/{preview → onchain/preview}/parse/types-adapters.d.ts +5 -16
  373. package/dist/types/{preview → onchain/preview}/parse/types-facades.d.ts +3 -3
  374. package/dist/types/{preview → onchain/preview}/parse/types-pools.d.ts +1 -1
  375. package/dist/types/{preview → onchain/preview}/parse/types-rwa.d.ts +3 -3
  376. package/dist/types/{preview → onchain/preview}/parse/types.d.ts +3 -3
  377. package/dist/types/{preview → onchain/preview}/preview/CreditAccountState.d.ts +5 -5
  378. package/dist/types/{preview → onchain/preview}/preview/buildDelayedStrategyPositionOperationPreview.d.ts +5 -5
  379. package/dist/types/{preview → onchain/preview}/preview/detectCloseOrRepay.d.ts +1 -1
  380. package/dist/types/{preview → onchain/preview}/preview/detectDelayedClaim.d.ts +8 -8
  381. package/dist/types/{preview → onchain/preview}/preview/detectDelayedOperation.d.ts +9 -9
  382. package/dist/types/{preview → onchain/preview}/preview/estimateClaimableAt.d.ts +6 -6
  383. package/dist/types/{preview → onchain/preview}/preview/index.d.ts +3 -4
  384. package/dist/types/onchain/preview/preview/previewAdjustStrategyPosition.d.ts +20 -0
  385. package/dist/types/onchain/preview/preview/previewExitOrRepayStrategyPosition.d.ts +21 -0
  386. package/dist/types/onchain/preview/preview/previewOpenStrategyPosition.d.ts +14 -0
  387. package/dist/types/onchain/preview/preview/previewOperation.d.ts +32 -0
  388. package/dist/types/onchain/preview/preview/previewPoolPositionOperation.d.ts +13 -0
  389. package/dist/types/{preview → onchain/preview}/preview/replayInnerOperations.d.ts +11 -11
  390. package/dist/types/{preview → onchain/preview}/preview/replayMulticall.d.ts +10 -10
  391. package/dist/types/{preview → onchain/preview}/preview/unwrapNativeCollateral.d.ts +10 -20
  392. package/dist/types/onchain/validation/bundles/checkAccountQuotas.d.ts +16 -0
  393. package/dist/types/onchain/validation/bundles/checkCollateralFunding.d.ts +22 -0
  394. package/dist/types/onchain/validation/bundles/checkCreditOperation.d.ts +31 -0
  395. package/dist/types/onchain/validation/bundles/checkDraw.d.ts +20 -0
  396. package/dist/types/onchain/validation/bundles/checkHealthFactors.d.ts +39 -0
  397. package/dist/types/onchain/validation/bundles/checkLiquidationEligibility.d.ts +20 -0
  398. package/dist/types/onchain/validation/bundles/checkLiquidationFunding.d.ts +18 -0
  399. package/dist/types/onchain/validation/bundles/checkMarket.d.ts +15 -0
  400. package/dist/types/onchain/validation/bundles/checkObtained.d.ts +9 -0
  401. package/dist/types/onchain/validation/bundles/checkPoolFunding.d.ts +19 -0
  402. package/dist/types/onchain/validation/bundles/checkPoolOperation.d.ts +31 -0
  403. package/dist/types/onchain/validation/bundles/checkQuotasAsked.d.ts +10 -0
  404. package/dist/types/onchain/validation/bundles/checkRWAOpenRequirements.d.ts +21 -0
  405. package/dist/types/onchain/validation/bundles/checkRWAOpening.d.ts +19 -0
  406. package/dist/types/onchain/validation/bundles/checkWallet.d.ts +23 -0
  407. package/dist/types/onchain/validation/bundles/checkWalletAllowance.d.ts +18 -0
  408. package/dist/types/onchain/validation/bundles/checkWalletBalance.d.ts +17 -0
  409. package/dist/types/onchain/validation/bundles/index.d.ts +18 -0
  410. package/dist/types/onchain/validation/checkLiquidation.d.ts +23 -0
  411. package/dist/types/onchain/validation/checkOperation.d.ts +32 -0
  412. package/dist/types/onchain/validation/checkSimulation.d.ts +56 -0
  413. package/dist/types/onchain/validation/checks/checkBorrowLimit.d.ts +21 -0
  414. package/dist/types/onchain/validation/checks/checkCollateralised.d.ts +25 -0
  415. package/dist/types/onchain/validation/checks/checkCreditAccountFrozen.d.ts +12 -0
  416. package/dist/types/onchain/validation/checks/checkCreditManagerPaused.d.ts +12 -0
  417. package/dist/types/onchain/validation/checks/checkDebtLimits.d.ts +21 -0
  418. package/dist/types/onchain/validation/checks/checkEmergencyLiquidator.d.ts +17 -0
  419. package/dist/types/onchain/validation/checks/checkForbiddenToken.d.ts +12 -0
  420. package/dist/types/onchain/validation/checks/checkLeverage.d.ts +12 -0
  421. package/dist/types/onchain/validation/checks/checkLiquidatorEligible.d.ts +13 -0
  422. package/dist/types/onchain/validation/checks/checkMarketExpired.d.ts +14 -0
  423. package/dist/types/onchain/validation/checks/checkPoolLiquidity.d.ts +20 -0
  424. package/dist/types/onchain/validation/checks/checkPoolPaused.d.ts +12 -0
  425. package/dist/types/onchain/validation/checks/checkPoolSunset.d.ts +13 -0
  426. package/dist/types/onchain/validation/checks/checkQuotaCount.d.ts +11 -0
  427. package/dist/types/onchain/validation/checks/checkQuotaLimit.d.ts +18 -0
  428. package/dist/types/onchain/validation/checks/index.d.ts +16 -0
  429. package/dist/types/onchain/validation/helpers/amount.d.ts +7 -0
  430. package/dist/types/onchain/validation/helpers/health-factor-limits.d.ts +21 -0
  431. package/dist/types/onchain/validation/helpers/index.d.ts +4 -0
  432. package/dist/types/onchain/validation/{token.d.ts → helpers/token.d.ts} +4 -4
  433. package/dist/types/onchain/validation/index.d.ts +43 -4
  434. package/dist/types/onchain/validation/raise.d.ts +33 -0
  435. package/dist/types/sdk/execute/types.d.ts +2 -2
  436. package/dist/types/sdk/index.d.ts +5 -6
  437. package/dist/types/sdk/liquidations/LiquidationsNamespace.d.ts +5 -0
  438. package/dist/types/sdk/liquidations/types.d.ts +8 -0
  439. package/dist/types/sdk/opportunities/OpportunitiesNamespace.d.ts +2 -1
  440. package/dist/types/sdk/opportunities/types.d.ts +8 -2
  441. package/dist/types/sdk/prepare/PrepareApi.d.ts +5 -4
  442. package/dist/types/sdk/prepare/index.d.ts +5 -5
  443. package/dist/types/sdk/prepare/types.d.ts +41 -22
  444. package/dist/types/sdk/preview/PreviewNamespace.d.ts +13 -3
  445. package/dist/types/sdk/preview/index.d.ts +2 -2
  446. package/dist/types/sdk/preview/types.d.ts +30 -7
  447. package/package.json +1 -6
  448. package/dist/cjs/onchain/accounts/withdrawal-compressor/errors.js +0 -1
  449. package/dist/cjs/onchain/market/zapper/errors.js +0 -1
  450. package/dist/cjs/onchain/validation/checks.js +0 -258
  451. package/dist/cjs/onchain/validation/refusal.js +0 -39
  452. package/dist/cjs/preview/index.js +0 -86
  453. package/dist/cjs/preview/package.json +0 -1
  454. package/dist/cjs/preview/parse/errors.js +0 -1
  455. package/dist/cjs/preview/parse/index.js +0 -15
  456. package/dist/cjs/preview/prerequisites/AllowancePrerequisite.js +0 -38
  457. package/dist/cjs/preview/prerequisites/BalancePrerequisite.js +0 -52
  458. package/dist/cjs/preview/prerequisites/Prerequisite.js +0 -52
  459. package/dist/cjs/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +0 -53
  460. package/dist/cjs/preview/prerequisites/buildCollateralPrerequisites.js +0 -63
  461. package/dist/cjs/preview/prerequisites/buildPartialLiquidationPrerequisites.js +0 -19
  462. package/dist/cjs/preview/prerequisites/buildPoolPrerequisites.js +0 -76
  463. package/dist/cjs/preview/prerequisites/buildRWAPrerequisites.js +0 -39
  464. package/dist/cjs/preview/prerequisites/checkPrerequisites.js +0 -74
  465. package/dist/cjs/preview/prerequisites/helpers.js +0 -23
  466. package/dist/cjs/preview/prerequisites/index.js +0 -12
  467. package/dist/cjs/preview/preview/errors.js +0 -85
  468. package/dist/cjs/preview/preview/index.js +0 -33
  469. package/dist/cjs/preview/preview/previewOpenStrategyPosition.js +0 -50
  470. package/dist/cjs/preview/preview/previewOperation.js +0 -100
  471. package/dist/cjs/preview/preview/previewPoolPositionOperation.js +0 -49
  472. package/dist/cjs/preview/preview/replayInnerOperations.js +0 -109
  473. package/dist/cjs/preview/preview/replayMulticall.js +0 -19
  474. package/dist/cjs/preview/simulate/errors.js +0 -73
  475. package/dist/cjs/preview/simulate/index.js +0 -11
  476. package/dist/cjs/preview/simulate/simulateFacadeOperation.js +0 -15
  477. package/dist/cjs/preview/simulate/simulateOperation.js +0 -29
  478. package/dist/cjs/preview/simulate/simulateRWAOperation.js +0 -15
  479. package/dist/cjs/preview/simulate/types.js +0 -1
  480. package/dist/cjs/preview/trace/index.js +0 -14
  481. package/dist/cjs/preview/trace/types.js +0 -1
  482. package/dist/cjs/preview/types.js +0 -1
  483. package/dist/cjs/preview/validate/checkOperation.js +0 -187
  484. package/dist/cjs/preview/validate/checkSimulation.js +0 -39
  485. package/dist/cjs/preview/validate/index.js +0 -8
  486. package/dist/cjs/sdk/prepare/errors.js +0 -114
  487. package/dist/esm/onchain/accounts/withdrawal-compressor/errors.js +0 -1
  488. package/dist/esm/onchain/market/zapper/errors.js +0 -1
  489. package/dist/esm/onchain/validation/checks.js +0 -238
  490. package/dist/esm/onchain/validation/refusal.js +0 -36
  491. package/dist/esm/preview/index.js +0 -38
  492. package/dist/esm/preview/package.json +0 -1
  493. package/dist/esm/preview/parse/errors.js +0 -1
  494. package/dist/esm/preview/prerequisites/AllowancePrerequisite.js +0 -37
  495. package/dist/esm/preview/prerequisites/BalancePrerequisite.js +0 -51
  496. package/dist/esm/preview/prerequisites/Prerequisite.js +0 -51
  497. package/dist/esm/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +0 -52
  498. package/dist/esm/preview/prerequisites/buildCollateralPrerequisites.js +0 -62
  499. package/dist/esm/preview/prerequisites/buildPartialLiquidationPrerequisites.js +0 -18
  500. package/dist/esm/preview/prerequisites/buildPoolPrerequisites.js +0 -75
  501. package/dist/esm/preview/prerequisites/buildRWAPrerequisites.js +0 -38
  502. package/dist/esm/preview/prerequisites/checkPrerequisites.js +0 -73
  503. package/dist/esm/preview/prerequisites/helpers.js +0 -22
  504. package/dist/esm/preview/prerequisites/index.js +0 -7
  505. package/dist/esm/preview/preview/errors.js +0 -79
  506. package/dist/esm/preview/preview/previewPoolPositionOperation.js +0 -48
  507. package/dist/esm/preview/preview/replayInnerOperations.js +0 -107
  508. package/dist/esm/preview/preview/replayMulticall.js +0 -18
  509. package/dist/esm/preview/simulate/errors.js +0 -71
  510. package/dist/esm/preview/simulate/index.js +0 -6
  511. package/dist/esm/preview/simulate/simulateFacadeOperation.js +0 -14
  512. package/dist/esm/preview/simulate/simulateOperation.js +0 -28
  513. package/dist/esm/preview/simulate/simulateRWAOperation.js +0 -14
  514. package/dist/esm/preview/simulate/types.js +0 -1
  515. package/dist/esm/preview/trace/types.js +0 -1
  516. package/dist/esm/preview/types.js +0 -1
  517. package/dist/esm/preview/validate/checkOperation.js +0 -183
  518. package/dist/esm/preview/validate/checkSimulation.js +0 -38
  519. package/dist/esm/preview/validate/index.js +0 -3
  520. package/dist/esm/sdk/prepare/errors.js +0 -108
  521. package/dist/types/model/errors.d.ts +0 -46
  522. package/dist/types/onchain/accounts/withdrawal-compressor/errors.d.ts +0 -20
  523. package/dist/types/onchain/market/zapper/errors.d.ts +0 -18
  524. package/dist/types/onchain/validation/checks.d.ts +0 -164
  525. package/dist/types/onchain/validation/refusal.d.ts +0 -242
  526. package/dist/types/preview/index.d.ts +0 -47
  527. package/dist/types/preview/parse/errors.d.ts +0 -29
  528. package/dist/types/preview/parse/parseOperationCalldata.d.ts +0 -18
  529. package/dist/types/preview/prerequisites/AllowancePrerequisite.d.ts +0 -26
  530. package/dist/types/preview/prerequisites/BalancePrerequisite.d.ts +0 -29
  531. package/dist/types/preview/prerequisites/Prerequisite.d.ts +0 -26
  532. package/dist/types/preview/prerequisites/RWAOpenRequirementsPrerequisite.d.ts +0 -55
  533. package/dist/types/preview/prerequisites/buildCollateralPrerequisites.d.ts +0 -20
  534. package/dist/types/preview/prerequisites/buildPartialLiquidationPrerequisites.d.ts +0 -12
  535. package/dist/types/preview/prerequisites/buildPoolPrerequisites.d.ts +0 -12
  536. package/dist/types/preview/prerequisites/buildRWAPrerequisites.d.ts +0 -26
  537. package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +0 -28
  538. package/dist/types/preview/prerequisites/helpers.d.ts +0 -10
  539. package/dist/types/preview/prerequisites/index.d.ts +0 -7
  540. package/dist/types/preview/prerequisites/types.d.ts +0 -53
  541. package/dist/types/preview/preview/errors.d.ts +0 -44
  542. package/dist/types/preview/preview/previewAdjustStrategyPosition.d.ts +0 -19
  543. package/dist/types/preview/preview/previewExitOrRepayStrategyPosition.d.ts +0 -18
  544. package/dist/types/preview/preview/previewOpenStrategyPosition.d.ts +0 -12
  545. package/dist/types/preview/preview/previewOperation.d.ts +0 -32
  546. package/dist/types/preview/preview/previewPoolPositionOperation.d.ts +0 -13
  547. package/dist/types/preview/simulate/errors.d.ts +0 -52
  548. package/dist/types/preview/simulate/index.d.ts +0 -7
  549. package/dist/types/preview/simulate/simulateFacadeOperation.d.ts +0 -16
  550. package/dist/types/preview/simulate/simulateOperation.d.ts +0 -12
  551. package/dist/types/preview/simulate/simulatePoolOperation.d.ts +0 -42
  552. package/dist/types/preview/simulate/simulateRWAOperation.d.ts +0 -16
  553. package/dist/types/preview/simulate/types.d.ts +0 -48
  554. package/dist/types/preview/types.d.ts +0 -65
  555. package/dist/types/preview/validate/checkOperation.d.ts +0 -71
  556. package/dist/types/preview/validate/checkSimulation.d.ts +0 -32
  557. package/dist/types/preview/validate/index.d.ts +0 -3
  558. package/dist/types/sdk/prepare/errors.d.ts +0 -343
  559. /package/dist/cjs/{preview/prerequisites → history/trace}/types.js +0 -0
  560. /package/dist/cjs/model/{errors.js → errors/base.js} +0 -0
  561. /package/dist/cjs/{preview → onchain/preview}/parse/types-adapters.js +0 -0
  562. /package/dist/cjs/{preview → onchain/preview}/parse/types-facades.js +0 -0
  563. /package/dist/cjs/{preview → onchain/preview}/parse/types-pools.js +0 -0
  564. /package/dist/cjs/{preview → onchain/preview}/parse/types-rwa.js +0 -0
  565. /package/dist/esm/{preview → history}/trace/index.js +0 -0
  566. /package/dist/esm/{preview/prerequisites → history/trace}/types.js +0 -0
  567. /package/dist/esm/model/{errors.js → errors/base.js} +0 -0
  568. /package/dist/esm/{preview → onchain/preview}/parse/types-adapters.js +0 -0
  569. /package/dist/esm/{preview → onchain/preview}/parse/types-facades.js +0 -0
  570. /package/dist/esm/{preview → onchain/preview}/parse/types-pools.js +0 -0
  571. /package/dist/esm/{preview → onchain/preview}/parse/types-rwa.js +0 -0
  572. /package/dist/types/{preview → history}/trace/index.d.ts +0 -0
@@ -8,12 +8,19 @@ const require_model_filters = require("./filters.js");
8
8
  const require_model_filters_schema = require("./filters.schema.js");
9
9
  const require_model_curators_schema = require("./curators.schema.js");
10
10
  const require_model_liquidations_schema = require("./liquidations.schema.js");
11
+ const require_model_rwa = require("./rwa.js");
12
+ const require_model_rwa_schema = require("./rwa.schema.js");
11
13
  const require_model_opportunities_schema = require("./opportunities.schema.js");
12
14
  const require_model_positions_schema = require("./positions.schema.js");
13
15
  const require_model_analytics_schema = require("./analytics.schema.js");
14
16
  require("./curators.js");
15
17
  require("./delayed-intents.js");
16
- require("./errors.js");
18
+ const require_model_errors_liquidation_errors = require("./errors/liquidation-errors.js");
19
+ const require_model_errors_operation_errors = require("./errors/operation-errors.js");
20
+ const require_model_errors_oracle_errors = require("./errors/oracle-errors.js");
21
+ const require_model_errors_prepare_errors = require("./errors/prepare-errors.js");
22
+ const require_model_errors_preview_errors = require("./errors/preview-errors.js");
23
+ require("./errors/index.js");
17
24
  const require_model_liquidations = require("./liquidations.js");
18
25
  require("./notices.js");
19
26
  const require_model_notices_schema = require("./notices.schema.js");
@@ -32,9 +39,14 @@ exports.CHART_METRIC_UNITS = require_model_charts.CHART_METRIC_UNITS;
32
39
  exports.CHART_RANGES = require_model_charts.CHART_RANGES;
33
40
  exports.CHART_UNAVAILABLE_CODES = require_model_charts.CHART_UNAVAILABLE_CODES;
34
41
  exports.FILTER_ALL = require_model_filters.FILTER_ALL;
42
+ exports.KYC_PROTOCOLS = require_model_rwa.KYC_PROTOCOLS;
43
+ exports.KYC_REGISTRATION_LINKS = require_model_rwa.KYC_REGISTRATION_LINKS;
35
44
  exports.POOL_OPPORTUNITY_CHART_METRICS = require_model_charts.POOL_OPPORTUNITY_CHART_METRICS;
36
45
  exports.POOL_POSITION_CHART_METRICS = require_model_charts.POOL_POSITION_CHART_METRICS;
37
46
  exports.PROTOCOL_CHART_METRICS = require_model_charts.PROTOCOL_CHART_METRICS;
47
+ exports.RWA_FACTORY_SECURITIZE = require_model_rwa.RWA_FACTORY_SECURITIZE;
48
+ exports.RWA_FACTORY_TYPES = require_model_rwa.RWA_FACTORY_TYPES;
49
+ exports.SECURITIZE_REGISTER_VAULT_TYPES = require_model_rwa.SECURITIZE_REGISTER_VAULT_TYPES;
38
50
  exports.STRATEGY_OPPORTUNITY_CHART_METRICS = require_model_charts.STRATEGY_OPPORTUNITY_CHART_METRICS;
39
51
  exports.STRATEGY_POSITION_CHART_METRICS = require_model_charts.STRATEGY_POSITION_CHART_METRICS;
40
52
  exports.STRATEGY_POSITION_COLLATERAL_ERROR = require_model_positions.STRATEGY_POSITION_COLLATERAL_ERROR;
@@ -71,16 +83,29 @@ exports.chartSeriesSchema = require_model_charts_schema.chartSeriesSchema;
71
83
  exports.chartValueSchema = require_model_charts_schema.chartValueSchema;
72
84
  exports.chartWindowSchema = require_model_charts_schema.chartWindowSchema;
73
85
  exports.compareTagOf = require_model_compare_schema.compareTagOf;
86
+ exports.creditAccountFrozen = require_model_errors_liquidation_errors.creditAccountFrozen;
87
+ exports.creditAccountNotEmpty = require_model_errors_prepare_errors.creditAccountNotEmpty;
88
+ exports.creditAccountNotFound = require_model_errors_prepare_errors.creditAccountNotFound;
89
+ exports.creditManagerPaused = require_model_errors_operation_errors.creditManagerPaused;
74
90
  exports.curatorNameSchema = require_model_curators_schema.curatorNameSchema;
75
91
  exports.curatorSchema = require_model_curators_schema.curatorSchema;
76
92
  exports.dataSourceSchema = require_model_response_schema.dataSourceSchema;
93
+ exports.debtOutOfRange = require_model_errors_operation_errors.debtOutOfRange;
77
94
  exports.delayedReceivedAssetSchema = require_model_liquidations_schema.delayedReceivedAssetSchema;
95
+ exports.emptyOpenTakesNothing = require_model_errors_prepare_errors.emptyOpenTakesNothing;
78
96
  exports.encodeFlag = require_model_filters_schema.encodeFlag;
79
97
  exports.filterAllSchema = require_model_filters_schema.filterAllSchema;
80
98
  exports.filterable = require_model_filters_schema.filterable;
99
+ exports.forbiddenToken = require_model_errors_operation_errors.forbiddenToken;
81
100
  exports.instantReceivedAssetSchema = require_model_liquidations_schema.instantReceivedAssetSchema;
101
+ exports.insufficientAllowance = require_model_errors_operation_errors.insufficientAllowance;
102
+ exports.insufficientBalance = require_model_errors_operation_errors.insufficientBalance;
103
+ exports.insufficientCollateral = require_model_errors_operation_errors.insufficientCollateral;
104
+ exports.insufficientPoolLiquidity = require_model_errors_operation_errors.insufficientPoolLiquidity;
82
105
  exports.isFilterSet = require_model_filters.isFilterSet;
83
- exports.isSDKError = require_model_result.isSDKError;
106
+ exports.kycProtocolSchema = require_model_rwa_schema.kycProtocolSchema;
107
+ exports.kycRequirementSchema = require_model_rwa_schema.kycRequirementSchema;
108
+ exports.leverageOutOfRange = require_model_errors_operation_errors.leverageOutOfRange;
84
109
  exports.leverageSchema = require_model_primitives_schema.leverageSchema;
85
110
  exports.liquidatableAccountFilterSchema = require_model_liquidations_schema.liquidatableAccountFilterSchema;
86
111
  exports.liquidatableAccountSchema = require_model_liquidations_schema.liquidatableAccountSchema;
@@ -88,9 +113,17 @@ exports.liquidationApprovalSchema = require_model_liquidations_schema.liquidatio
88
113
  exports.liquidationDetailsSchema = require_model_liquidations_schema.liquidationDetailsSchema;
89
114
  exports.liquidationPositionId = require_model_positions.liquidationPositionId;
90
115
  exports.liquidationPositionSchema = require_model_liquidations_schema.liquidationPositionSchema;
116
+ exports.liquidatorNotEligible = require_model_errors_liquidation_errors.liquidatorNotEligible;
117
+ exports.malformedTransaction = require_model_errors_preview_errors.malformedTransaction;
118
+ exports.marketExpired = require_model_errors_operation_errors.marketExpired;
91
119
  exports.matchesLiquidatableAccountFilter = require_model_liquidations.matchesLiquidatableAccountFilter;
92
120
  exports.matchesOpportunityFilter = require_model_opportunities.matchesOpportunityFilter;
93
121
  exports.matchesPositionFilter = require_model_positions.matchesPositionFilter;
122
+ exports.multipleDelayedWithdrawals = require_model_errors_prepare_errors.multipleDelayedWithdrawals;
123
+ exports.noDelayedRoute = require_model_errors_prepare_errors.noDelayedRoute;
124
+ exports.noRecordedIntent = require_model_errors_prepare_errors.noRecordedIntent;
125
+ exports.noStrategyTargetCollateral = require_model_errors_prepare_errors.noStrategyTargetCollateral;
126
+ exports.notEmergencyLiquidator = require_model_errors_liquidation_errors.notEmergencyLiquidator;
94
127
  exports.noticeKindSchema = require_model_notices_schema.noticeKindSchema;
95
128
  exports.noticeSchema = require_model_notices_schema.noticeSchema;
96
129
  exports.offchainOnly = require_model_compare_schema.offchainOnly;
@@ -115,10 +148,12 @@ exports.poolOpportunityDetailSchema = require_model_opportunities_schema.poolOpp
115
148
  exports.poolOpportunityId = require_model_opportunities.poolOpportunityId;
116
149
  exports.poolOpportunityKeySchema = require_model_opportunities_schema.poolOpportunityKeySchema;
117
150
  exports.poolOpportunitySchema = require_model_opportunities_schema.poolOpportunitySchema;
151
+ exports.poolPaused = require_model_errors_operation_errors.poolPaused;
118
152
  exports.poolPositionChartMetricSchema = require_model_charts_schema.poolPositionChartMetricSchema;
119
153
  exports.poolPositionId = require_model_positions.poolPositionId;
120
154
  exports.poolPositionKeySchema = require_model_positions_schema.poolPositionKeySchema;
121
155
  exports.poolPositionSchema = require_model_positions_schema.poolPositionSchema;
156
+ exports.poolSunset = require_model_errors_operation_errors.poolSunset;
122
157
  exports.positionClaimableWithdrawalSchema = require_model_withdrawals_schema.positionClaimableWithdrawalSchema;
123
158
  exports.positionCollateralSchema = require_model_positions_schema.positionCollateralSchema;
124
159
  exports.positionFilterQueryParamsSchema = require_model_positions_schema.positionFilterQueryParamsSchema;
@@ -137,6 +172,8 @@ exports.priceFeedDataSchema = require_model_opportunities_schema.priceFeedDataSc
137
172
  exports.priceFeedSummarySchema = require_model_opportunities_schema.priceFeedSummarySchema;
138
173
  exports.protocolChartMetricSchema = require_model_charts_schema.protocolChartMetricSchema;
139
174
  exports.quotaAssetSchema = require_model_opportunities_schema.quotaAssetSchema;
175
+ exports.quotaCountExceeded = require_model_errors_operation_errors.quotaCountExceeded;
176
+ exports.quotaLimitReached = require_model_errors_operation_errors.quotaLimitReached;
140
177
  exports.rateCurvePointSchema = require_model_opportunities_schema.rateCurvePointSchema;
141
178
  exports.rateCurveSchema = require_model_opportunities_schema.rateCurveSchema;
142
179
  exports.receivedAssetSchema = require_model_liquidations_schema.receivedAssetSchema;
@@ -144,6 +181,7 @@ exports.responseMetadataSchema = require_model_response_schema.responseMetadataS
144
181
  exports.responseSchema = require_model_response_schema.responseSchema;
145
182
  exports.rewardsPnLSchema = require_model_positions_schema.rewardsPnLSchema;
146
183
  exports.rewardsSchema = require_model_opportunities_schema.rewardsSchema;
184
+ exports.rwaOpenRequirementsNotMet = require_model_errors_operation_errors.rwaOpenRequirementsNotMet;
147
185
  exports.safeValue = require_model_result.safeValue;
148
186
  exports.sdkErr = require_model_result.sdkErr;
149
187
  exports.sdkOk = require_model_result.sdkOk;
@@ -165,4 +203,9 @@ exports.tokenSchema = require_model_primitives_schema.tokenSchema;
165
203
  exports.tolerance = require_model_compare_schema.tolerance;
166
204
  exports.txCallSchema = require_model_primitives_schema.txCallSchema;
167
205
  exports.underlyingTokenSchema = require_model_primitives_schema.underlyingTokenSchema;
206
+ exports.unexpectedFailure = require_model_errors_prepare_errors.unexpectedFailure;
207
+ exports.unpriceableTokenError = require_model_errors_oracle_errors.unpriceableTokenError;
208
+ exports.unsupportedCollateralToken = require_model_errors_prepare_errors.unsupportedCollateralToken;
209
+ exports.unsupportedTokenPair = require_model_errors_prepare_errors.unsupportedTokenPair;
210
+ exports.withdrawalInProgress = require_model_errors_prepare_errors.withdrawalInProgress;
168
211
  exports.withdrawalOutputAmountSchema = require_model_withdrawals_schema.withdrawalOutputAmountSchema;
@@ -5,6 +5,7 @@ const require_model_primitives_schema = require("./primitives.schema.js");
5
5
  const require_model_filters = require("./filters.js");
6
6
  const require_model_filters_schema = require("./filters.schema.js");
7
7
  const require_model_curators_schema = require("./curators.schema.js");
8
+ const require_model_rwa_schema = require("./rwa.schema.js");
8
9
  let zod_v4 = require("zod/v4");
9
10
  //#region src/model/opportunities.schema.ts
10
11
  /**
@@ -215,7 +216,8 @@ const poolOpportunityDetailSchema = zod_v4.z.object({
215
216
  const strategyOpportunityDetailSchema = zod_v4.z.object({
216
217
  ...strategyOpportunitySchema.shape,
217
218
  rateCurve: rateCurveSchema,
218
- priceFeeds: priceFeedSummarySchema
219
+ priceFeeds: priceFeedSummarySchema,
220
+ kyc: require_model_rwa_schema.kycRequirementSchema.nullable().optional()
219
221
  });
220
222
  /**
221
223
  * {@link OpportunityDetail}
@@ -61,7 +61,7 @@ function positionId(position) {
61
61
  * A condition that does not apply to a position's kind keeps the row rather
62
62
  * than dropping it: `isZeroDebt` says nothing about a pool position, and
63
63
  * `underlyingType` says nothing about a liquidation position, which is
64
- * denominated in whatever its withdrawal pays out.
64
+ * denominated in whatever its withdrawal settles in.
65
65
  *
66
66
  * @param position - Row to test.
67
67
  * @param filter - Conditions to test against. An absent filter matches
@@ -23,15 +23,7 @@ function sdkErr(error) {
23
23
  error
24
24
  };
25
25
  }
26
- /**
27
- * Narrows a {@link SDKReturn} to its failure half. Trivial over `ok`, but it
28
- * names the intent at call sites that would otherwise read `!r.ok`.
29
- **/
30
- function isSDKError(answer) {
31
- return !answer.ok;
32
- }
33
26
  //#endregion
34
- exports.isSDKError = isSDKError;
35
27
  exports.safeValue = safeValue;
36
28
  exports.sdkErr = sdkErr;
37
29
  exports.sdkOk = sdkOk;
@@ -0,0 +1,53 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/model/rwa.ts
3
+ /**
4
+ * Discriminant of the Securitize RWA factory contract type.
5
+ **/
6
+ const RWA_FACTORY_SECURITIZE = "RWA_FACTORY::SECURITIZE";
7
+ /**
8
+ * Discriminated union of all known RWA factory contract type strings.
9
+ **/
10
+ const RWA_FACTORY_TYPES = [RWA_FACTORY_SECURITIZE];
11
+ /**
12
+ * EIP-712 type schema for the `RegisterVault` message expected by Securitize's
13
+ * VaultRegistrar. Matches the contract's `RegisterVault` typehash field order.
14
+ **/
15
+ const SECURITIZE_REGISTER_VAULT_TYPES = { RegisterVault: [
16
+ {
17
+ name: "investor",
18
+ type: "address"
19
+ },
20
+ {
21
+ name: "operator",
22
+ type: "address"
23
+ },
24
+ {
25
+ name: "token",
26
+ type: "address"
27
+ },
28
+ {
29
+ name: "nonce",
30
+ type: "uint256"
31
+ },
32
+ {
33
+ name: "deadline",
34
+ type: "uint256"
35
+ }
36
+ ] };
37
+ /**
38
+ * KYC providers a strategy may be gated by
39
+ **/
40
+ const KYC_PROTOCOLS = ["securitize", "midas"];
41
+ /**
42
+ * Hardcoded registration URLs for each {@link KycProtocol}.
43
+ **/
44
+ const KYC_REGISTRATION_LINKS = {
45
+ securitize: "https://securitize.io/",
46
+ midas: "https://form.typeform.com/to/DqZaw6kr"
47
+ };
48
+ //#endregion
49
+ exports.KYC_PROTOCOLS = KYC_PROTOCOLS;
50
+ exports.KYC_REGISTRATION_LINKS = KYC_REGISTRATION_LINKS;
51
+ exports.RWA_FACTORY_SECURITIZE = RWA_FACTORY_SECURITIZE;
52
+ exports.RWA_FACTORY_TYPES = RWA_FACTORY_TYPES;
53
+ exports.SECURITIZE_REGISTER_VAULT_TYPES = SECURITIZE_REGISTER_VAULT_TYPES;
@@ -0,0 +1,20 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_model_primitives_schema = require("./primitives.schema.js");
3
+ const require_model_rwa = require("./rwa.js");
4
+ let zod_v4 = require("zod/v4");
5
+ //#region src/model/rwa.schema.ts
6
+ /**
7
+ * {@link ./rwa.js#KycProtocol}
8
+ **/
9
+ const kycProtocolSchema = zod_v4.z.enum(require_model_rwa.KYC_PROTOCOLS);
10
+ /**
11
+ * {@link ./rwa.js#KycRequirement}
12
+ **/
13
+ const kycRequirementSchema = zod_v4.z.object({
14
+ protocol: kycProtocolSchema,
15
+ token: require_model_primitives_schema.tokenSchema.optional(),
16
+ registrationLink: zod_v4.z.string()
17
+ });
18
+ //#endregion
19
+ exports.kycProtocolSchema = kycProtocolSchema;
20
+ exports.kycRequirementSchema = kycRequirementSchema;
@@ -36,7 +36,7 @@ var OffchainOpportunities = class extends require_offchain_AbstractOffchainNames
36
36
  /**
37
37
  * {@inheritDoc IOffchainOpportunities.getStrategy}
38
38
  **/
39
- async getStrategy(key) {
39
+ async getStrategy(key, _wallet) {
40
40
  return this.get({
41
41
  path: this.#strategyPath(key),
42
42
  schema: require_model_opportunities_schema.strategyOpportunityDetailSchema
@@ -7,7 +7,6 @@ const require_onchain_accounts_credit_account_compressor_CreditAccountCompressor
7
7
  require("./credit-account-compressor/index.js");
8
8
  const require_onchain_accounts_CreditAccountsServiceV310 = require("./CreditAccountsServiceV310.js");
9
9
  const require_onchain_accounts_intents_utils_pick_token = require("./intents/utils/pick-token.js");
10
- const require_onchain_accounts_intents_guards = require("./intents/guards.js");
11
10
  const require_onchain_accounts_intents_utils_credit_account_slice = require("./intents/utils/credit-account-slice.js");
12
11
  const require_onchain_accounts_quota_utils = require("./quota-utils.js");
13
12
  const require_onchain_accounts_intents_index = require("./intents/index.js");
@@ -44,7 +43,6 @@ exports.RedemptionLoggerV310Contract = require_onchain_accounts_withdrawal_compr
44
43
  exports.WithdrawalCompressorV310Contract = require_onchain_accounts_withdrawal_compressor_WithdrawalCompressorV310Contract.WithdrawalCompressorV310Contract;
45
44
  exports.WithdrawalCompressorV311Contract = require_onchain_accounts_withdrawal_compressor_WithdrawalCompressorV311Contract.WithdrawalCompressorV311Contract;
46
45
  exports.WithdrawalCompressorV313Contract = require_onchain_accounts_withdrawal_compressor_WithdrawalCompressorV313Contract.WithdrawalCompressorV313Contract;
47
- exports.borrowable = require_onchain_accounts_intents_guards.borrowable;
48
46
  exports.calcDefaultQuota = require_onchain_accounts_quota_utils.calcDefaultQuota;
49
47
  exports.calcQuotaUpdate = require_onchain_accounts_quota_utils.calcQuotaUpdate;
50
48
  exports.calcRecommendedQuota = require_onchain_accounts_quota_utils.calcRecommendedQuota;
@@ -1,7 +1,14 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_onchain_validation_checks = require("../../validation/checks.js");
3
- const require_onchain_validation_refusal = require("../../validation/refusal.js");
4
- const require_onchain_validation_token = require("../../validation/token.js");
2
+ const require_onchain_validation_helpers_health_factor_limits = require("../../validation/helpers/health-factor-limits.js");
3
+ const require_onchain_validation_helpers_token = require("../../validation/helpers/token.js");
4
+ const require_onchain_validation_checks_checkBorrowLimit = require("../../validation/checks/checkBorrowLimit.js");
5
+ const require_onchain_validation_checks_checkCollateralised = require("../../validation/checks/checkCollateralised.js");
6
+ const require_onchain_validation_checks_checkCreditManagerPaused = require("../../validation/checks/checkCreditManagerPaused.js");
7
+ const require_onchain_validation_checks_checkForbiddenToken = require("../../validation/checks/checkForbiddenToken.js");
8
+ const require_onchain_validation_checks_checkMarketExpired = require("../../validation/checks/checkMarketExpired.js");
9
+ const require_onchain_validation_checks_checkQuotaLimit = require("../../validation/checks/checkQuotaLimit.js");
10
+ const require_onchain_validation_raise = require("../../validation/raise.js");
11
+ require("../../validation/index.js");
5
12
  const require_onchain_accounts_intents_utils_common = require("./utils/common.js");
6
13
  const require_onchain_accounts_intents_utils_pick_token = require("./utils/pick-token.js");
7
14
  //#region src/onchain/accounts/intents/guards.ts
@@ -25,54 +32,25 @@ const require_onchain_accounts_intents_utils_pick_token = require("./utils/pick-
25
32
  */
26
33
  function assertMarketOperable(suite) {
27
34
  const creditManager = suite.creditManager.address;
28
- require_onchain_validation_refusal.raise(require_onchain_validation_checks.checkCreditManagerPaused({
35
+ require_onchain_validation_raise.raise(require_onchain_validation_checks_checkCreditManagerPaused.checkCreditManagerPaused({
29
36
  isPaused: suite.isPaused,
30
37
  creditManager
31
38
  }), `${creditManager} is paused`);
32
- require_onchain_validation_refusal.raise(require_onchain_validation_checks.checkMarketExpired({
39
+ require_onchain_validation_raise.raise(require_onchain_validation_checks_checkMarketExpired.checkMarketExpired({
33
40
  isExpired: suite.isExpired,
34
41
  creditManager,
35
42
  expirationDate: suite.creditFacade.expirationDate
36
43
  }), `${creditManager} expired at ${suite.creditFacade.expirationDate}`);
37
44
  }
38
- /**
39
- * What the pool will hand this manager in one transaction: the tightest of its
40
- * free liquidity, the manager's remaining debt limit and the per-block cap the
41
- * facade puts on a single borrow. A zero multiplier switches borrowing off
42
- * outright, which reads here as nothing being available.
43
- */
44
- function borrowable(suite) {
45
- const { pool } = suite.market.pool;
46
- const { maxDebtPerBlockMultiplier, maxDebt } = suite.creditFacade;
47
- if (maxDebtPerBlockMultiplier === 0) return {
48
- limit: 0n,
49
- binding: "facadePerBlockCap"
50
- };
51
- const available = pool.creditManagerDebtParams.get(suite.creditManager.address)?.available;
52
- return [
53
- {
54
- limit: pool.availableLiquidity,
55
- binding: "poolAvailableLiquidity"
56
- },
57
- {
58
- limit: maxDebt * BigInt(maxDebtPerBlockMultiplier),
59
- binding: "facadePerBlockCap"
60
- },
61
- ...available === void 0 ? [] : [{
62
- limit: available,
63
- binding: "managerDebtAvailable"
64
- }]
65
- ].reduce((a, b) => b.limit < a.limit ? b : a);
66
- }
67
45
  /** The pool has to be able to lend what the plan means to draw. */
68
46
  function assertCanBorrow(sdk, suite, amount) {
69
- const { limit, binding } = borrowable(suite);
70
- require_onchain_validation_refusal.raise(require_onchain_validation_checks.checkBorrowLimit({
47
+ const { value, limit } = suite.maxBorrowAmount();
48
+ require_onchain_validation_raise.raise(require_onchain_validation_checks_checkBorrowLimit.checkBorrowLimit({
71
49
  requested: amount,
72
- available: limit,
73
- binding,
74
- underlying: require_onchain_validation_token.toToken(sdk, suite.market.pool.underlying)
75
- }), `borrow: ${amount} exceeds what the pool can lend now (${limit})`);
50
+ available: value,
51
+ limit,
52
+ underlying: require_onchain_validation_helpers_token.toToken(sdk, suite.market.pool.underlying)
53
+ }), `borrow: ${amount} exceeds what the pool can lend now (${value})`);
76
54
  }
77
55
  /**
78
56
  * What the account is allowed to end up holding more of than it started with.
@@ -88,20 +66,19 @@ function assertCanBorrow(sdk, suite, amount) {
88
66
  */
89
67
  function assertGrowthAllowed(args) {
90
68
  const { sdk, suite, market, before, after } = args;
91
- const forbidden = suite.forbiddenTokens;
92
69
  const underlying = market.pool.underlying;
93
70
  for (const { token, balance } of after) {
94
71
  if (balance <= (before.find((a) => require_onchain_accounts_intents_utils_common.eq(a.token, token))?.balance ?? 0n)) continue;
95
- require_onchain_validation_refusal.raise(require_onchain_validation_checks.checkForbiddenToken({
96
- token: require_onchain_validation_token.toToken(sdk, token),
97
- isForbidden: forbidden.some((f) => require_onchain_accounts_intents_utils_common.eq(f, token))
72
+ require_onchain_validation_raise.raise(require_onchain_validation_checks_checkForbiddenToken.checkForbiddenToken({
73
+ token: require_onchain_validation_helpers_token.toToken(sdk, token),
74
+ isForbidden: suite.isForbidden(token)
98
75
  }), `${token} is forbidden in this market and the plan buys more of it`);
99
76
  if (require_onchain_accounts_intents_utils_common.eq(token, underlying) || require_onchain_accounts_intents_utils_pick_token.isPhantomToken(sdk, token)) continue;
100
- if (!market.pool.pqk.hasActiveQuota(token)) require_onchain_validation_refusal.raise(require_onchain_validation_checks.checkQuotaLimit({
101
- token: require_onchain_validation_token.toToken(sdk, token),
77
+ if (!market.pool.pqk.hasActiveQuota(token)) require_onchain_validation_raise.raise(require_onchain_validation_checks_checkQuotaLimit.checkQuotaLimit({
78
+ token: require_onchain_validation_helpers_token.toToken(sdk, token),
102
79
  requested: void 0,
103
80
  available: 0n,
104
- underlying: require_onchain_validation_token.toToken(sdk, underlying)
81
+ underlying: require_onchain_validation_helpers_token.toToken(sdk, underlying)
105
82
  }), `${token} takes no quota in this market, so it counts as no collateral`);
106
83
  }
107
84
  }
@@ -110,19 +87,20 @@ function assertGrowthAllowed(args) {
110
87
  * and reverts if the collateral does not cover it, so a plan that lands the
111
88
  * account below water is refused here.
112
89
  *
113
- * The bar is the facade's own `1.0`, because this guard answers one question:
114
- * would the transaction revert. It is deliberately not `MIN_HF_LIMITED`, and
115
- * the three bars in this codebase are three different jobs:
90
+ * The threshold is the facade's own `1.0`, because this guard answers one
91
+ * question: would the transaction revert. It is deliberately not
92
+ * `MIN_HF_LIMITED`, and the three thresholds in this codebase are three
93
+ * different jobs:
116
94
  *
117
95
  * - here, `1.0` — what the facade enforces, so what a plan must clear to land;
118
96
  * - `maxWithdrawCollateral` sizes at `MIN_HF_LIMITED + 2` — a *sizing* helper
119
- * leaving headroom, which is not the same as a validity check;
97
+ * leaving a margin, which is not the same as a validity check;
120
98
  * - a form refuses at or below `MIN_HF_LIMITED` (`MIN_HEALTH_FACTOR_FORM`).
121
99
  *
122
100
  * Raising this one to `MIN_HF_LIMITED` was tried and reverted: it made
123
101
  * `maxWithdraw` hand back a ceiling this guard then refused, and it blocked
124
102
  * small top-ups of an account sitting in `[1.0, 1.01)` — the very operations
125
- * that rescue it. A form wanting the stricter bar has `validateHF`.
103
+ * that rescue it. A form wanting the stricter threshold has `validateHF`.
126
104
  *
127
105
  * Note that a position already underwater cannot be nursed back one step at a
128
106
  * time — the check is on where the transaction ends, not on whether it
@@ -135,29 +113,28 @@ function assertGrowthAllowed(args) {
135
113
  * still be refused on-chain after passing here.
136
114
  */
137
115
  function assertCollateralised(healthFactorBps, safePrices) {
138
- const required = require_onchain_validation_checks.MIN_HEALTH_FACTOR_FACADE;
139
- require_onchain_validation_refusal.raise(require_onchain_validation_checks.checkCollateralised({
116
+ const healthFactorThreshold = require_onchain_validation_helpers_health_factor_limits.MIN_HEALTH_FACTOR_FACADE;
117
+ require_onchain_validation_raise.raise(require_onchain_validation_checks_checkCollateralised.checkCollateralised({
140
118
  healthFactor: healthFactorBps,
141
- required,
119
+ healthFactorThreshold,
142
120
  safePrices
143
- }), `the account would end at a health factor of ${healthFactorBps}, below ${required}`);
121
+ }), `the account would end at a health factor of ${healthFactorBps}, below ${healthFactorThreshold}`);
144
122
  }
145
123
  /**
146
124
  * A quota can only be raised as far as the market still has room for: past the
147
125
  * token's limit the keeper takes nothing more, whoever is asking.
148
126
  */
149
- function assertQuotaHeadroom(sdk, market, increases) {
127
+ function assertQuotaAvailable(sdk, market, increases) {
150
128
  const underlying = market.pool.underlying;
129
+ const { pqk } = market.pool;
151
130
  for (const { token, balance } of increases) {
152
- if (balance <= 0n) continue;
153
- const quota = market.pool.pqk.quotas.get(token);
154
- if (!quota) continue;
155
- const left = quota.limit - quota.totalQuoted;
156
- require_onchain_validation_refusal.raise(require_onchain_validation_checks.checkQuotaLimit({
157
- token: require_onchain_validation_token.toToken(sdk, token),
131
+ if (balance <= 0n || !pqk.quotas.has(token)) continue;
132
+ const left = pqk.quotaAvailable(token);
133
+ require_onchain_validation_raise.raise(require_onchain_validation_checks_checkQuotaLimit.checkQuotaLimit({
134
+ token: require_onchain_validation_helpers_token.toToken(sdk, token),
158
135
  requested: balance,
159
136
  available: left,
160
- underlying: require_onchain_validation_token.toToken(sdk, underlying)
137
+ underlying: require_onchain_validation_helpers_token.toToken(sdk, underlying)
161
138
  }), `${token} has ${left} of quota left, the plan needs ${balance}`);
162
139
  }
163
140
  }
@@ -166,5 +143,4 @@ exports.assertCanBorrow = assertCanBorrow;
166
143
  exports.assertCollateralised = assertCollateralised;
167
144
  exports.assertGrowthAllowed = assertGrowthAllowed;
168
145
  exports.assertMarketOperable = assertMarketOperable;
169
- exports.assertQuotaHeadroom = assertQuotaHeadroom;
170
- exports.borrowable = borrowable;
146
+ exports.assertQuotaAvailable = assertQuotaAvailable;