@gearbox-protocol/sdk 17.13.0-next.1 → 17.13.0-next.10

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 (885) hide show
  1. package/dist/cjs/dev/index.js +2 -0
  2. package/dist/cjs/dev/lowerHealthFactor.js +32 -0
  3. package/dist/cjs/dev/ltUtils.js +3 -2
  4. package/dist/cjs/model/analytics.schema.js +71 -7
  5. package/dist/cjs/model/errors/index.js +4 -0
  6. package/dist/cjs/model/errors/liquidation-errors.js +9 -0
  7. package/dist/cjs/model/errors/operation-errors.js +27 -0
  8. package/dist/cjs/model/index.js +9 -1
  9. package/dist/cjs/model/liquidations.schema.js +5 -3
  10. package/dist/cjs/model/opportunities.schema.js +1 -1
  11. package/dist/cjs/model/positions.schema.js +3 -0
  12. package/dist/cjs/offchain/analytics/OffchainAnalyticsPositions.js +8 -0
  13. package/dist/cjs/onchain/accounts/CreditAccountsServiceV310.js +0 -37
  14. package/dist/cjs/onchain/accounts/intents/index.js +1 -0
  15. package/dist/cjs/onchain/accounts/intents/operations.js +1 -1
  16. package/dist/cjs/onchain/accounts/intents/plan.js +21 -0
  17. package/dist/cjs/onchain/accounts/intents/realize.js +29 -7
  18. package/dist/cjs/onchain/accounts/intents/resolveQuotaUpdate.js +149 -0
  19. package/dist/cjs/onchain/accounts/intents/testing/sdk-mock.js +1 -0
  20. package/dist/cjs/onchain/accounts/intents/tests/update-quota.fixtures.js +102 -0
  21. package/dist/cjs/onchain/accounts/intents/utils/index.js +1 -0
  22. package/dist/cjs/onchain/accounts/intents/utils/quotas-for-update.js +28 -10
  23. package/dist/cjs/onchain/accounts/liquidations/LiquidationsService.js +156 -28
  24. package/dist/cjs/onchain/accounts/liquidations/MultichainLiquidationsService.js +28 -0
  25. package/dist/cjs/onchain/accounts/liquidations/constants.js +1 -1
  26. package/dist/cjs/onchain/accounts/liquidations/partialLiquidation.js +11 -15
  27. package/dist/cjs/onchain/base/TokensMeta.js +15 -0
  28. package/dist/cjs/onchain/constants/index.js +1 -0
  29. package/dist/cjs/onchain/constants/math.js +6 -0
  30. package/dist/cjs/onchain/index.js +11 -0
  31. package/dist/cjs/onchain/pools/PoolService.js +1 -0
  32. package/dist/cjs/onchain/positions/PositionsService.js +1 -0
  33. package/dist/cjs/onchain/positions/calcHealthFactor.js +1 -1
  34. package/dist/cjs/onchain/preview/preview/CreditAccountState.js +4 -2
  35. package/dist/cjs/onchain/validation/bundles/checkCreditOperation.js +2 -0
  36. package/dist/cjs/onchain/validation/bundles/checkLiquidationEligibility.js +8 -1
  37. package/dist/cjs/onchain/validation/bundles/checkLiquidationFunding.js +2 -1
  38. package/dist/cjs/onchain/validation/bundles/checkQuotaUpdates.js +45 -0
  39. package/dist/cjs/onchain/validation/bundles/index.js +2 -0
  40. package/dist/cjs/onchain/validation/checkLiquidation.js +2 -1
  41. package/dist/cjs/onchain/validation/checks/checkMaxQuota.js +18 -0
  42. package/dist/cjs/onchain/validation/checks/checkPartiallyLiquidatable.js +13 -0
  43. package/dist/cjs/onchain/validation/checks/checkQuotaActive.js +10 -0
  44. package/dist/cjs/onchain/validation/checks/checkQuotaChange.js +18 -0
  45. package/dist/cjs/onchain/validation/checks/index.js +8 -0
  46. package/dist/cjs/onchain/validation/index.js +10 -0
  47. package/dist/cjs/sdk/liquidations/LiquidationsNamespace.js +14 -0
  48. package/dist/cjs/sdk/prepare/PrepareApi.js +67 -0
  49. package/dist/cjs/sdk/rewards/merkl-api.js +1 -1
  50. package/dist/cjs/sdk/rewards/turtle-api.js +1 -1
  51. package/dist/esm/dev/index.js +2 -1
  52. package/dist/esm/dev/lowerHealthFactor.js +31 -0
  53. package/dist/esm/dev/ltUtils.js +3 -2
  54. package/dist/esm/dev/mint/index.js +1 -2
  55. package/dist/esm/model/analytics.schema.js +69 -9
  56. package/dist/esm/model/errors/index.js +3 -3
  57. package/dist/esm/model/errors/liquidation-errors.js +9 -1
  58. package/dist/esm/model/errors/operation-errors.js +25 -1
  59. package/dist/esm/model/index.js +5 -5
  60. package/dist/esm/model/liquidations.schema.js +5 -3
  61. package/dist/esm/model/opportunities.schema.js +1 -1
  62. package/dist/esm/model/positions.schema.js +3 -0
  63. package/dist/esm/offchain/analytics/OffchainAnalyticsPositions.js +9 -1
  64. package/dist/esm/offchain/notices/index.js +1 -2
  65. package/dist/esm/offchain/opportunities/index.js +1 -2
  66. package/dist/esm/offchain/positions/index.js +1 -2
  67. package/dist/esm/onchain/abi/index.js +1 -2
  68. package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +0 -37
  69. package/dist/esm/onchain/accounts/intents/index.js +2 -1
  70. package/dist/esm/onchain/accounts/intents/operations.js +1 -1
  71. package/dist/esm/onchain/accounts/intents/plan.js +22 -2
  72. package/dist/esm/onchain/accounts/intents/realize.js +29 -7
  73. package/dist/esm/onchain/accounts/intents/resolveQuotaUpdate.js +148 -0
  74. package/dist/esm/onchain/accounts/intents/testing/sdk-mock.js +1 -0
  75. package/dist/esm/onchain/accounts/intents/tests/update-quota.fixtures.js +92 -0
  76. package/dist/esm/onchain/accounts/intents/utils/index.js +2 -2
  77. package/dist/esm/onchain/accounts/intents/utils/quotas-for-update.js +28 -11
  78. package/dist/esm/onchain/accounts/liquidations/LiquidationsService.js +156 -28
  79. package/dist/esm/onchain/accounts/liquidations/MultichainLiquidationsService.js +28 -0
  80. package/dist/esm/onchain/accounts/liquidations/constants.js +1 -1
  81. package/dist/esm/onchain/accounts/liquidations/partialLiquidation.js +11 -15
  82. package/dist/esm/onchain/base/TokensMeta.js +15 -0
  83. package/dist/esm/onchain/constants/index.js +2 -2
  84. package/dist/esm/onchain/constants/math.js +6 -1
  85. package/dist/esm/onchain/index.js +7 -2
  86. package/dist/esm/onchain/market/adapters/abi/midas/index.js +1 -2
  87. package/dist/esm/onchain/pools/PoolService.js +1 -0
  88. package/dist/esm/onchain/pools/index.js +1 -2
  89. package/dist/esm/onchain/positions/PositionsService.js +1 -0
  90. package/dist/esm/onchain/positions/calcHealthFactor.js +1 -1
  91. package/dist/esm/onchain/preview/preview/CreditAccountState.js +4 -2
  92. package/dist/esm/onchain/utils/internal/index.js +1 -2
  93. package/dist/esm/onchain/validation/bundles/checkCreditOperation.js +2 -0
  94. package/dist/esm/onchain/validation/bundles/checkLiquidationEligibility.js +8 -1
  95. package/dist/esm/onchain/validation/bundles/checkLiquidationFunding.js +2 -1
  96. package/dist/esm/onchain/validation/bundles/checkQuotaUpdates.js +44 -0
  97. package/dist/esm/onchain/validation/bundles/index.js +2 -1
  98. package/dist/esm/onchain/validation/checkLiquidation.js +2 -1
  99. package/dist/esm/onchain/validation/checks/checkMaxQuota.js +17 -0
  100. package/dist/esm/onchain/validation/checks/checkPartiallyLiquidatable.js +12 -0
  101. package/dist/esm/onchain/validation/checks/checkQuotaActive.js +9 -0
  102. package/dist/esm/onchain/validation/checks/checkQuotaChange.js +17 -0
  103. package/dist/esm/onchain/validation/checks/index.js +5 -1
  104. package/dist/esm/onchain/validation/index.js +6 -1
  105. package/dist/esm/permissionless/api/chains/index.js +1 -2
  106. package/dist/esm/permissionless/api/oracles/index.js +1 -2
  107. package/dist/esm/permissionless/api/transactions/index.js +1 -2
  108. package/dist/esm/permissionless/bindings/router/index.js +1 -2
  109. package/dist/esm/permissionless/core/index.js +1 -2
  110. package/dist/esm/plugins/accounts/index.js +1 -2
  111. package/dist/esm/plugins/accounts-counter/index.js +1 -2
  112. package/dist/esm/plugins/bots/abi/index.js +1 -2
  113. package/dist/esm/sdk/analytics/index.js +1 -2
  114. package/dist/esm/sdk/execute/index.js +1 -2
  115. package/dist/esm/sdk/liquidations/LiquidationsNamespace.js +14 -0
  116. package/dist/esm/sdk/liquidations/index.js +1 -2
  117. package/dist/esm/sdk/opportunities/index.js +1 -2
  118. package/dist/esm/sdk/positions/index.js +1 -2
  119. package/dist/esm/sdk/prepare/PrepareApi.js +67 -0
  120. package/dist/esm/sdk/preview/index.js +1 -2
  121. package/dist/esm/sdk/rewards/merkl-api.js +1 -1
  122. package/dist/esm/sdk/rewards/turtle-api.js +1 -1
  123. package/dist/types/abi/310/configure/creditSuiteParams.d.ts +4 -5
  124. package/dist/types/abi/310/configure/iCreditConfigureActions.d.ts +2 -3
  125. package/dist/types/abi/310/configure/iPoolConfigureActions.d.ts +2 -3
  126. package/dist/types/abi/310/configure/iPriceOracleConfigureActions.d.ts +2 -3
  127. package/dist/types/abi/310/crossChainMultisig.d.ts +2 -3
  128. package/dist/types/abi/310/generated.d.ts +15 -16
  129. package/dist/types/abi/310/iBytecodeRepository.d.ts +2 -3
  130. package/dist/types/abi/310/iLinearInterestRateModelV310.d.ts +2 -3
  131. package/dist/types/abi/310/iMarketConfiguratorFactory.d.ts +2 -3
  132. package/dist/types/abi/310/iPriceFeedStore.d.ts +2 -3
  133. package/dist/types/abi/310/iTreasurySplitter.d.ts +2 -3
  134. package/dist/types/abi/310/instanceManager.d.ts +2 -3
  135. package/dist/types/abi/AccountMigrator.d.ts +2 -3
  136. package/dist/types/abi/ILiquidationCompressorV313.d.ts +2 -3
  137. package/dist/types/abi/IWithdrawalCompressorV310.d.ts +2 -3
  138. package/dist/types/abi/IWithdrawalCompressorV311.d.ts +2 -3
  139. package/dist/types/abi/IWithdrawalCompressorV313.d.ts +2 -3
  140. package/dist/types/abi/compressors/creditAccountCompressor.d.ts +2 -3
  141. package/dist/types/abi/compressors/creditSuiteCompressor.d.ts +2 -3
  142. package/dist/types/abi/compressors/defillamaCompressor.d.ts +2 -3
  143. package/dist/types/abi/compressors/gaugeCompressor.d.ts +2 -3
  144. package/dist/types/abi/compressors/liquidationCompressor.d.ts +2 -3
  145. package/dist/types/abi/compressors/marketCompressor.d.ts +2 -3
  146. package/dist/types/abi/compressors/peripheryCompressor.d.ts +2 -3
  147. package/dist/types/abi/compressors/priceFeedCompressor.d.ts +2 -3
  148. package/dist/types/abi/compressors/rewardsCompressor.d.ts +2 -3
  149. package/dist/types/abi/compressors/rwaCompressor.d.ts +2 -3
  150. package/dist/types/abi/compressors/subcompressors/liquidation/midasLiquidationSubcompressor.d.ts +2 -3
  151. package/dist/types/abi/compressors/subcompressors/liquidation/securitizeLiquidationSubcompressor.d.ts +2 -3
  152. package/dist/types/abi/compressors/subcompressors/rwa/onDemandRWAUnderlyingSubcompressor.d.ts +2 -3
  153. package/dist/types/abi/compressors/subcompressors/rwa/securitizeRWAFactorySubcompressor.d.ts +2 -3
  154. package/dist/types/abi/compressors/subcompressors/withdrawal/infinifiWithdrawalSubcompressor.d.ts +2 -3
  155. package/dist/types/abi/compressors/subcompressors/withdrawal/kelpLRTWithdrawalSubcompressor.d.ts +2 -3
  156. package/dist/types/abi/compressors/subcompressors/withdrawal/mellowFlexibleDepositSubcompressor.d.ts +2 -3
  157. package/dist/types/abi/compressors/subcompressors/withdrawal/mellowFlexibleRedeemSubcompressor.d.ts +2 -3
  158. package/dist/types/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.d.ts +2 -3
  159. package/dist/types/abi/compressors/subcompressors/withdrawal/midasWithdrawalSubcompressor.d.ts +2 -3
  160. package/dist/types/abi/compressors/subcompressors/withdrawal/securitizeRedemptionSubcompressor.d.ts +2 -3
  161. package/dist/types/abi/compressors/subcompressors/withdrawal/upshiftWithdrawalSubcompressor.d.ts +2 -3
  162. package/dist/types/abi/compressors/tokenCompressor.d.ts +2 -3
  163. package/dist/types/abi/compressors/withdrawalCompressor.d.ts +2 -3
  164. package/dist/types/abi/errors.d.ts +11 -12
  165. package/dist/types/abi/governance/batchesChain.d.ts +2 -3
  166. package/dist/types/abi/governance/governor.d.ts +2 -3
  167. package/dist/types/abi/governance/iTimeLock.d.ts +2 -3
  168. package/dist/types/abi/helpers/redemptionLogger.d.ts +2 -3
  169. package/dist/types/abi/iAirdropDistributor.d.ts +2 -3
  170. package/dist/types/abi/iBaseRewardPool.d.ts +2 -3
  171. package/dist/types/abi/iCurvePool.d.ts +2 -3
  172. package/dist/types/abi/iDefaultAccountFactoryV3.d.ts +2 -3
  173. package/dist/types/abi/iDegenNFTV2.d.ts +2 -3
  174. package/dist/types/abi/iERC20.d.ts +2 -3
  175. package/dist/types/abi/iERC20Permit.d.ts +2 -3
  176. package/dist/types/abi/iERC20Zapper.d.ts +2 -3
  177. package/dist/types/abi/iERC20ZapperDeposits.d.ts +2 -3
  178. package/dist/types/abi/iETHZapper.d.ts +2 -3
  179. package/dist/types/abi/iETHZapperDeposits.d.ts +2 -3
  180. package/dist/types/abi/iExpirable.d.ts +2 -3
  181. package/dist/types/abi/iFarmingPool.d.ts +2 -3
  182. package/dist/types/abi/iInterestRateModel.d.ts +2 -3
  183. package/dist/types/abi/iMulticall3.d.ts +2 -3
  184. package/dist/types/abi/iOffchainOracle.d.ts +2 -3
  185. package/dist/types/abi/iPausable.d.ts +2 -3
  186. package/dist/types/abi/iPhantomToken.d.ts +2 -3
  187. package/dist/types/abi/iPriceFeed.d.ts +2 -3
  188. package/dist/types/abi/iRedemptionLoggerV310.d.ts +2 -3
  189. package/dist/types/abi/iStateSerializer.d.ts +2 -3
  190. package/dist/types/abi/iUpdatablePriceFeed.d.ts +2 -3
  191. package/dist/types/abi/iVersion.d.ts +2 -3
  192. package/dist/types/abi/iZapper.d.ts +2 -3
  193. package/dist/types/abi/ierc4626Adapter.d.ts +2 -3
  194. package/dist/types/abi/mellow.d.ts +6 -7
  195. package/dist/types/abi/migration.d.ts +3 -4
  196. package/dist/types/abi/router/balancerV2Worker.d.ts +2 -3
  197. package/dist/types/abi/router/balancerV3Worker.d.ts +2 -3
  198. package/dist/types/abi/router/balancerV3WrapperWorker.d.ts +2 -3
  199. package/dist/types/abi/router/camelotV3Worker.d.ts +2 -3
  200. package/dist/types/abi/router/convexWorker.d.ts +2 -3
  201. package/dist/types/abi/router/curveWorker.d.ts +2 -3
  202. package/dist/types/abi/router/daiUsdsWorker.d.ts +2 -3
  203. package/dist/types/abi/router/equalizerRouterWorker.d.ts +2 -3
  204. package/dist/types/abi/router/erc4626Worker.d.ts +2 -3
  205. package/dist/types/abi/router/fluidDexWorker.d.ts +2 -3
  206. package/dist/types/abi/router/gearboxRouter.d.ts +2 -3
  207. package/dist/types/abi/router/infinifiWorker.d.ts +2 -3
  208. package/dist/types/abi/router/infraredVaultWorker.d.ts +2 -3
  209. package/dist/types/abi/router/kelpLRTDepositPoolWorker.d.ts +2 -3
  210. package/dist/types/abi/router/kodiakWorker.d.ts +2 -3
  211. package/dist/types/abi/router/lidoWorker.d.ts +2 -3
  212. package/dist/types/abi/router/mellow4626Worker.d.ts +2 -3
  213. package/dist/types/abi/router/mellowDVVWorker.d.ts +2 -3
  214. package/dist/types/abi/router/mellowVaultWorker.d.ts +2 -3
  215. package/dist/types/abi/router/midasWorker.d.ts +2 -3
  216. package/dist/types/abi/router/pendleRouterWorker.d.ts +2 -3
  217. package/dist/types/abi/router/routingManager.d.ts +2 -3
  218. package/dist/types/abi/router/securitizeOnrampWorker.d.ts +2 -3
  219. package/dist/types/abi/router/stakingRewardsWorker.d.ts +2 -3
  220. package/dist/types/abi/router/traderJoeWorker.d.ts +2 -3
  221. package/dist/types/abi/router/uniswapV2Worker.d.ts +2 -3
  222. package/dist/types/abi/router/uniswapV3Worker.d.ts +2 -3
  223. package/dist/types/abi/router/uniswapV4Worker.d.ts +2 -3
  224. package/dist/types/abi/router/upshiftWorker.d.ts +2 -3
  225. package/dist/types/abi/router/velodromeV2Worker.d.ts +2 -3
  226. package/dist/types/abi/router/wstETHWorker.d.ts +2 -3
  227. package/dist/types/abi/router/yearnV2Worker.d.ts +2 -3
  228. package/dist/types/abi/rwa/iDSRegistryService.d.ts +2 -3
  229. package/dist/types/abi/rwa/iDSToken.d.ts +2 -3
  230. package/dist/types/abi/rwa/iMidasAccessControl.d.ts +2 -3
  231. package/dist/types/abi/rwa/iMidasDegenNFT.d.ts +2 -3
  232. package/dist/types/abi/rwa/iMidasLiquidatorV311.d.ts +2 -3
  233. package/dist/types/abi/rwa/iRWACompressor.d.ts +2 -3
  234. package/dist/types/abi/rwa/iRWAFactory.d.ts +2 -3
  235. package/dist/types/abi/rwa/iRWAGateway.d.ts +2 -3
  236. package/dist/types/abi/rwa/iRWAUnderlying.d.ts +2 -3
  237. package/dist/types/abi/rwa/iSecuritizeDegenNFT.d.ts +2 -3
  238. package/dist/types/abi/rwa/iSecuritizeLiquidatorV311.d.ts +2 -3
  239. package/dist/types/abi/rwa/iSecuritizeRWAFactory.d.ts +2 -3
  240. package/dist/types/dev/AccountOpener.d.ts +9 -9
  241. package/dist/types/dev/EthCallSpy.d.ts +6 -7
  242. package/dist/types/dev/RevolverTransport.d.ts +12 -12
  243. package/dist/types/dev/abi.d.ts +6 -7
  244. package/dist/types/dev/calcLiquidatableLTs.d.ts +2 -3
  245. package/dist/types/dev/claimFromFaucet.d.ts +2 -2
  246. package/dist/types/dev/create2.d.ts +10 -11
  247. package/dist/types/dev/createAnvilClient.d.ts +13 -14
  248. package/dist/types/dev/detectChain.d.ts +2 -3
  249. package/dist/types/dev/index.d.ts +2 -1
  250. package/dist/types/dev/isOutOfSyncError.d.ts +2 -3
  251. package/dist/types/dev/isRateLimitError.d.ts +2 -3
  252. package/dist/types/dev/isTransientError.d.ts +2 -3
  253. package/dist/types/dev/kycUtils.d.ts +13 -14
  254. package/dist/types/dev/logSplitterTransport.d.ts +10 -10
  255. package/dist/types/dev/lowerHealthFactor.d.ts +34 -0
  256. package/dist/types/dev/ltUtils.d.ts +3 -4
  257. package/dist/types/dev/midasUtils.d.ts +8 -9
  258. package/dist/types/dev/migrateFaucet.d.ts +2 -3
  259. package/dist/types/dev/mint/AbstractMinter.d.ts +2 -3
  260. package/dist/types/dev/mint/DealMinter.d.ts +2 -3
  261. package/dist/types/dev/mint/DirectMinter.d.ts +2 -3
  262. package/dist/types/dev/mint/FallbackMinter.d.ts +2 -3
  263. package/dist/types/dev/mint/TransferMinter.d.ts +2 -3
  264. package/dist/types/dev/mint/factory.d.ts +2 -3
  265. package/dist/types/dev/mint/types.d.ts +2 -3
  266. package/dist/types/dev/mode-parity/compareOpportunities.d.ts +8 -8
  267. package/dist/types/dev/mode-parity/comparePositions.d.ts +12 -13
  268. package/dist/types/dev/mode-parity/compareRules.d.ts +6 -7
  269. package/dist/types/dev/mode-parity/fieldDiff.d.ts +29 -30
  270. package/dist/types/dev/mode-parity/scriptUtils.d.ts +18 -19
  271. package/dist/types/dev/providers.d.ts +10 -11
  272. package/dist/types/dev/replaceStorage.d.ts +3 -4
  273. package/dist/types/dev/resilientTransport.d.ts +6 -7
  274. package/dist/types/dev/securitizeUtils.d.ts +6 -6
  275. package/dist/types/dev/transports.d.ts +2 -3
  276. package/dist/types/dev/types.d.ts +4 -5
  277. package/dist/types/dev/verifyTestnet.d.ts +4 -5
  278. package/dist/types/dev/withdrawalAbi.d.ts +9 -10
  279. package/dist/types/dev/withdrawalUtils.d.ts +3 -4
  280. package/dist/types/history/assembleOperations.d.ts +3 -4
  281. package/dist/types/history/classifyMulticallOperations.d.ts +3 -4
  282. package/dist/types/history/mapOperations.d.ts +3 -4
  283. package/dist/types/history/parseCreditAccountTransaction.d.ts +3 -4
  284. package/dist/types/history/populateContractsRegister.d.ts +4 -5
  285. package/dist/types/history/toLegacyOperation.d.ts +6 -7
  286. package/dist/types/history/trace/errors.d.ts +6 -7
  287. package/dist/types/history/trace/extractAdapterCallTraces.d.ts +2 -3
  288. package/dist/types/history/trace/extractTransfers.d.ts +4 -4
  289. package/dist/types/history/trace/findFacadeCalls.d.ts +2 -3
  290. package/dist/types/history/trace/types.d.ts +3 -4
  291. package/dist/types/history/types.d.ts +13 -13
  292. package/dist/types/model/analytics.d.ts +66 -13
  293. package/dist/types/model/analytics.schema.d.ts +182 -39
  294. package/dist/types/model/charts.d.ts +29 -29
  295. package/dist/types/model/charts.schema.d.ts +16 -17
  296. package/dist/types/model/compare.schema.d.ts +9 -10
  297. package/dist/types/model/curators.d.ts +3 -4
  298. package/dist/types/model/curators.schema.d.ts +3 -4
  299. package/dist/types/model/delayed-intent.schema.d.ts +2 -3
  300. package/dist/types/model/delayed-intents.d.ts +9 -10
  301. package/dist/types/model/errors/base.d.ts +2 -3
  302. package/dist/types/model/errors/index.d.ts +3 -3
  303. package/dist/types/model/errors/liquidation-errors.d.ts +20 -8
  304. package/dist/types/model/errors/operation-errors.d.ts +76 -39
  305. package/dist/types/model/errors/oracle-errors.d.ts +3 -4
  306. package/dist/types/model/errors/prepare-errors.d.ts +21 -22
  307. package/dist/types/model/errors/preview-errors.d.ts +9 -10
  308. package/dist/types/model/filters.d.ts +6 -7
  309. package/dist/types/model/filters.schema.d.ts +5 -6
  310. package/dist/types/model/index.d.ts +6 -6
  311. package/dist/types/model/liquidations.d.ts +37 -18
  312. package/dist/types/model/liquidations.schema.d.ts +12 -10
  313. package/dist/types/model/notices.d.ts +4 -5
  314. package/dist/types/model/notices.schema.d.ts +3 -4
  315. package/dist/types/model/opportunities.d.ts +32 -33
  316. package/dist/types/model/opportunities.schema.d.ts +26 -27
  317. package/dist/types/model/positions.d.ts +34 -30
  318. package/dist/types/model/positions.schema.d.ts +102 -23
  319. package/dist/types/model/previews.d.ts +21 -21
  320. package/dist/types/model/primitives.d.ts +12 -13
  321. package/dist/types/model/primitives.schema.d.ts +11 -12
  322. package/dist/types/model/response.d.ts +8 -9
  323. package/dist/types/model/response.schema.d.ts +7 -8
  324. package/dist/types/model/result.d.ts +8 -9
  325. package/dist/types/model/rewards.d.ts +4 -5
  326. package/dist/types/model/rwa.d.ts +20 -21
  327. package/dist/types/model/rwa.schema.d.ts +3 -4
  328. package/dist/types/model/withdrawals.d.ts +5 -6
  329. package/dist/types/model/withdrawals.schema.d.ts +5 -6
  330. package/dist/types/offchain/AbstractOffchainNamespace.d.ts +4 -5
  331. package/dist/types/offchain/GearboxAPI.d.ts +2 -3
  332. package/dist/types/offchain/analytics/OffchainAnalytics.d.ts +2 -3
  333. package/dist/types/offchain/analytics/OffchainAnalyticsPositions.d.ts +6 -4
  334. package/dist/types/offchain/analytics/types.d.ts +17 -5
  335. package/dist/types/offchain/errors/OffchainInvalidJsonError.d.ts +2 -3
  336. package/dist/types/offchain/errors/OffchainNotConfiguredError.d.ts +2 -3
  337. package/dist/types/offchain/errors/OffchainNotImplementedError.d.ts +2 -3
  338. package/dist/types/offchain/errors/OffchainRequestFailedError.d.ts +2 -3
  339. package/dist/types/offchain/errors/OffchainStatusError.d.ts +2 -3
  340. package/dist/types/offchain/errors/OffchainTransportError.d.ts +3 -4
  341. package/dist/types/offchain/errors/OffchainValidationError.d.ts +2 -3
  342. package/dist/types/offchain/errors/backendMessage.d.ts +2 -3
  343. package/dist/types/offchain/errors/errorCause.d.ts +3 -4
  344. package/dist/types/offchain/errors/readResponseBody.d.ts +2 -3
  345. package/dist/types/offchain/notices/OffchainNotices.d.ts +2 -3
  346. package/dist/types/offchain/opportunities/OffchainOpportunities.d.ts +2 -3
  347. package/dist/types/offchain/opportunities/types.d.ts +3 -4
  348. package/dist/types/offchain/positions/OffchainPositions.d.ts +2 -3
  349. package/dist/types/offchain/positions/types.d.ts +3 -4
  350. package/dist/types/offchain/types.d.ts +2 -3
  351. package/dist/types/onchain/MultichainSDK.d.ts +7 -8
  352. package/dist/types/onchain/OnchainSDK.d.ts +9 -10
  353. package/dist/types/onchain/abi/oracles.d.ts +27 -28
  354. package/dist/types/onchain/accounts/CreditAccountsServiceV310.d.ts +3 -12
  355. package/dist/types/onchain/accounts/bots/AccountBotsService.d.ts +2 -3
  356. package/dist/types/onchain/accounts/bots/PeripheryCompressorV310Contract.d.ts +2 -2
  357. package/dist/types/onchain/accounts/bots/abi.d.ts +2 -3
  358. package/dist/types/onchain/accounts/bots/types.d.ts +13 -14
  359. package/dist/types/onchain/accounts/credit-account-compressor/CreditAccountCompressor.d.ts +2 -3
  360. package/dist/types/onchain/accounts/credit-account-compressor/CreditAccountCompressorV310Contract.d.ts +2 -2
  361. package/dist/types/onchain/accounts/credit-account-compressor/types.d.ts +11 -12
  362. package/dist/types/onchain/accounts/index.d.ts +9 -9
  363. package/dist/types/onchain/accounts/intents/borrow.d.ts +6 -7
  364. package/dist/types/onchain/accounts/intents/collateral-valuation.d.ts +4 -5
  365. package/dist/types/onchain/accounts/intents/guards.d.ts +7 -7
  366. package/dist/types/onchain/accounts/intents/index.d.ts +6 -6
  367. package/dist/types/onchain/accounts/intents/leverage-band.d.ts +4 -5
  368. package/dist/types/onchain/accounts/intents/math.d.ts +8 -8
  369. package/dist/types/onchain/accounts/intents/maxBorrow.d.ts +3 -4
  370. package/dist/types/onchain/accounts/intents/maxWithdrawCollateral.d.ts +3 -4
  371. package/dist/types/onchain/accounts/intents/open-strategy.d.ts +4 -5
  372. package/dist/types/onchain/accounts/intents/operations.d.ts +34 -28
  373. package/dist/types/onchain/accounts/intents/plan.d.ts +35 -19
  374. package/dist/types/onchain/accounts/intents/realize.d.ts +4 -5
  375. package/dist/types/onchain/accounts/intents/resolveQuotaUpdate.d.ts +38 -0
  376. package/dist/types/onchain/accounts/intents/strategyLimits.d.ts +2 -2
  377. package/dist/types/onchain/accounts/intents/tail.d.ts +4 -4
  378. package/dist/types/onchain/accounts/intents/testing/delayed.d.ts +2 -2
  379. package/dist/types/onchain/accounts/intents/testing/expect.d.ts +2 -2
  380. package/dist/types/onchain/accounts/intents/testing/market.d.ts +6 -6
  381. package/dist/types/onchain/accounts/intents/testing/sdk-mock.d.ts +3 -3
  382. package/dist/types/onchain/accounts/intents/tests/add-collateral.fixtures.d.ts +15 -16
  383. package/dist/types/onchain/accounts/intents/tests/adjust-leverage.fixtures.d.ts +22 -23
  384. package/dist/types/onchain/accounts/intents/tests/deposit.fixtures.d.ts +24 -25
  385. package/dist/types/onchain/accounts/intents/tests/finish-decrease-leverage.fixtures.d.ts +21 -21
  386. package/dist/types/onchain/accounts/intents/tests/finish-withdraw.fixtures.d.ts +30 -31
  387. package/dist/types/onchain/accounts/intents/tests/open-strategy.fixtures.d.ts +16 -17
  388. package/dist/types/onchain/accounts/intents/tests/update-quota.fixtures.d.ts +48 -0
  389. package/dist/types/onchain/accounts/intents/tests/withdraw-asset.fixtures.d.ts +16 -17
  390. package/dist/types/onchain/accounts/intents/tests/withdraw.fixtures.d.ts +26 -27
  391. package/dist/types/onchain/accounts/intents/types.d.ts +46 -30
  392. package/dist/types/onchain/accounts/intents/utils/adjust-state-to-snapshot.d.ts +2 -3
  393. package/dist/types/onchain/accounts/intents/utils/assemble-operation-calls.d.ts +2 -2
  394. package/dist/types/onchain/accounts/intents/utils/borrowed-amount-plus-interest-and-fees.d.ts +2 -3
  395. package/dist/types/onchain/accounts/intents/utils/common.d.ts +5 -6
  396. package/dist/types/onchain/accounts/intents/utils/credit-account-slice.d.ts +4 -5
  397. package/dist/types/onchain/accounts/intents/utils/index.d.ts +2 -2
  398. package/dist/types/onchain/accounts/intents/utils/ledger.d.ts +3 -4
  399. package/dist/types/onchain/accounts/intents/utils/pick-token.d.ts +6 -7
  400. package/dist/types/onchain/accounts/intents/utils/price-impact.d.ts +5 -6
  401. package/dist/types/onchain/accounts/intents/utils/quotas-for-update.d.ts +27 -9
  402. package/dist/types/onchain/accounts/intents/utils/router-path.d.ts +6 -7
  403. package/dist/types/onchain/accounts/intents/view.d.ts +2 -3
  404. package/dist/types/onchain/accounts/intents/withdraw-limits.d.ts +5 -6
  405. package/dist/types/onchain/accounts/liquidations/LiquidationsService.d.ts +39 -19
  406. package/dist/types/onchain/accounts/liquidations/MultichainLiquidationsService.d.ts +13 -4
  407. package/dist/types/onchain/accounts/liquidations/constants.d.ts +4 -5
  408. package/dist/types/onchain/accounts/liquidations/index.d.ts +2 -2
  409. package/dist/types/onchain/accounts/liquidations/partialLiquidation.d.ts +15 -8
  410. package/dist/types/onchain/accounts/liquidations/skipLiquidatableAccount.d.ts +2 -3
  411. package/dist/types/onchain/accounts/liquidations/types.d.ts +125 -35
  412. package/dist/types/onchain/accounts/multicall-utils.d.ts +4 -5
  413. package/dist/types/onchain/accounts/quota-utils.d.ts +11 -11
  414. package/dist/types/onchain/accounts/types.d.ts +17 -96
  415. package/dist/types/onchain/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.d.ts +7 -7
  416. package/dist/types/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.d.ts +2 -2
  417. package/dist/types/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.d.ts +2 -2
  418. package/dist/types/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.d.ts +2 -2
  419. package/dist/types/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.d.ts +2 -2
  420. package/dist/types/onchain/accounts/withdrawal-compressor/addresses.d.ts +4 -5
  421. package/dist/types/onchain/accounts/withdrawal-compressor/createRedemptionLogger.d.ts +2 -3
  422. package/dist/types/onchain/accounts/withdrawal-compressor/createWithdrawalCompressor.d.ts +2 -3
  423. package/dist/types/onchain/accounts/withdrawal-compressor/intent-codec.d.ts +5 -6
  424. package/dist/types/onchain/accounts/withdrawal-compressor/types.d.ts +16 -17
  425. package/dist/types/onchain/base/BaseContract.d.ts +5 -6
  426. package/dist/types/onchain/base/ChainContractsRegister.d.ts +3 -4
  427. package/dist/types/onchain/base/Construct.d.ts +3 -4
  428. package/dist/types/onchain/base/MultichainConstruct.d.ts +7 -8
  429. package/dist/types/onchain/base/SDKConstruct.d.ts +2 -3
  430. package/dist/types/onchain/base/TokensMeta.d.ts +13 -6
  431. package/dist/types/onchain/base/errors.d.ts +2 -3
  432. package/dist/types/onchain/base/token-types.d.ts +18 -18
  433. package/dist/types/onchain/base/types.d.ts +37 -38
  434. package/dist/types/onchain/chain/chains.d.ts +20 -21
  435. package/dist/types/onchain/chain/detectNetwork.d.ts +2 -3
  436. package/dist/types/onchain/constants/address-provider.d.ts +36 -37
  437. package/dist/types/onchain/constants/addresses.d.ts +5 -6
  438. package/dist/types/onchain/constants/bot-permissions.d.ts +3 -4
  439. package/dist/types/onchain/constants/index.d.ts +2 -2
  440. package/dist/types/onchain/constants/math.d.ts +25 -21
  441. package/dist/types/onchain/constants/networks.d.ts +3 -4
  442. package/dist/types/onchain/constants/periphery.d.ts +3 -4
  443. package/dist/types/onchain/constants/versions.d.ts +5 -6
  444. package/dist/types/onchain/core/AbstractAddressProviderContract.d.ts +2 -3
  445. package/dist/types/onchain/core/AddressProviderV310Contract.d.ts +2 -2
  446. package/dist/types/onchain/core/createAddressProvider.d.ts +3 -4
  447. package/dist/types/onchain/core/errors.d.ts +9 -10
  448. package/dist/types/onchain/core/types.d.ts +4 -5
  449. package/dist/types/onchain/index.d.ts +14 -9
  450. package/dist/types/onchain/market/MarketConfiguratorContract.d.ts +2 -2
  451. package/dist/types/onchain/market/MarketRegister.d.ts +4 -5
  452. package/dist/types/onchain/market/MarketSuite.d.ts +2 -3
  453. package/dist/types/onchain/market/ZapperRegister.d.ts +2 -3
  454. package/dist/types/onchain/market/adapters/abi/actionAbi.d.ts +4 -5
  455. package/dist/types/onchain/market/adapters/abi/adapters/erc4626ReferralAdapter.d.ts +2 -3
  456. package/dist/types/onchain/market/adapters/abi/adapters/iBalancerV3RouterAdapter.d.ts +2 -3
  457. package/dist/types/onchain/market/adapters/abi/adapters/iBalancerV3WrapperAdapter.d.ts +2 -3
  458. package/dist/types/onchain/market/adapters/abi/adapters/iCamelotV3Adapter.d.ts +2 -3
  459. package/dist/types/onchain/market/adapters/abi/adapters/iConvexV1BaseRewardPoolAdapter.d.ts +2 -3
  460. package/dist/types/onchain/market/adapters/abi/adapters/iConvexV1BoosterAdapter.d.ts +2 -3
  461. package/dist/types/onchain/market/adapters/abi/adapters/iCurveV1StableNgAdapter.d.ts +2 -3
  462. package/dist/types/onchain/market/adapters/abi/adapters/iCurveV1_2AssetsAdapter.d.ts +2 -3
  463. package/dist/types/onchain/market/adapters/abi/adapters/iCurveV1_3AssetsAdapter.d.ts +2 -3
  464. package/dist/types/onchain/market/adapters/abi/adapters/iCurveV1_4AssetsAdapter.d.ts +2 -3
  465. package/dist/types/onchain/market/adapters/abi/adapters/iDaiUsdsAdapter.d.ts +2 -3
  466. package/dist/types/onchain/market/adapters/abi/adapters/iFluidDexAdapter.d.ts +2 -3
  467. package/dist/types/onchain/market/adapters/abi/adapters/iInfinifiGatewayAdapter.d.ts +2 -3
  468. package/dist/types/onchain/market/adapters/abi/adapters/iInfinifiUnwindingGateway.d.ts +3 -4
  469. package/dist/types/onchain/market/adapters/abi/adapters/iKelpLrtDepositPool.d.ts +3 -4
  470. package/dist/types/onchain/market/adapters/abi/adapters/iKelpLrtWithdrawalManager.d.ts +3 -4
  471. package/dist/types/onchain/market/adapters/abi/adapters/iLidoV1Adapter.d.ts +2 -3
  472. package/dist/types/onchain/market/adapters/abi/adapters/iMellow4626VaultAdapter.d.ts +2 -3
  473. package/dist/types/onchain/market/adapters/abi/adapters/iMellowClaimerAdapter.d.ts +2 -3
  474. package/dist/types/onchain/market/adapters/abi/adapters/iMellowWrapperAdapter.d.ts +2 -3
  475. package/dist/types/onchain/market/adapters/abi/adapters/iMidasGatewayAdapterV311.d.ts +2 -3
  476. package/dist/types/onchain/market/adapters/abi/adapters/iMidasIssuanceVaultAdapterV310.d.ts +2 -3
  477. package/dist/types/onchain/market/adapters/abi/adapters/iMidasRedemptionVaultAdapterV310.d.ts +3 -4
  478. package/dist/types/onchain/market/adapters/abi/adapters/iPendleRouterAdapter.d.ts +2 -3
  479. package/dist/types/onchain/market/adapters/abi/adapters/iSecuritizeOnRampAdapterV310.d.ts +2 -3
  480. package/dist/types/onchain/market/adapters/abi/adapters/iSecuritizeRedemptionGatewayAdapterV311.d.ts +2 -3
  481. package/dist/types/onchain/market/adapters/abi/adapters/iStakingRewardsAdapter.d.ts +2 -3
  482. package/dist/types/onchain/market/adapters/abi/adapters/iTraderJoeRouterAdapter.d.ts +2 -3
  483. package/dist/types/onchain/market/adapters/abi/adapters/iUniswapV2Adapter.d.ts +2 -3
  484. package/dist/types/onchain/market/adapters/abi/adapters/iUniswapV3Adapter.d.ts +2 -3
  485. package/dist/types/onchain/market/adapters/abi/adapters/iUniswapV4Adapter.d.ts +3 -4
  486. package/dist/types/onchain/market/adapters/abi/adapters/iUpshiftVaultAdapter.d.ts +3 -4
  487. package/dist/types/onchain/market/adapters/abi/adapters/iVelodromeV2RouterAdapter.d.ts +2 -3
  488. package/dist/types/onchain/market/adapters/abi/adapters/iwstEthv1Adapter.d.ts +2 -3
  489. package/dist/types/onchain/market/adapters/abi/adapters/mellowDvvAdapter.d.ts +2 -3
  490. package/dist/types/onchain/market/adapters/abi/conctructorAbi.d.ts +2 -3
  491. package/dist/types/onchain/market/adapters/abi/conctructorAbiPatterns.d.ts +12 -13
  492. package/dist/types/onchain/market/adapters/abi/midas/iMidasGatewayV311.d.ts +2 -3
  493. package/dist/types/onchain/market/adapters/abi/securitize/iBaseOnRamp.d.ts +2 -3
  494. package/dist/types/onchain/market/adapters/abi/securitize/iSecuritizeOnRamp.d.ts +2 -3
  495. package/dist/types/onchain/market/adapters/abi/securitize/iSecuritizeRedemptionGatewayV311.d.ts +2 -3
  496. package/dist/types/onchain/market/adapters/abi/targetContractAbi.d.ts +29 -30
  497. package/dist/types/onchain/market/adapters/abi/utils.d.ts +7 -8
  498. package/dist/types/onchain/market/adapters/contracts/AbstractAdapter.d.ts +4 -5
  499. package/dist/types/onchain/market/adapters/contracts/AbstractCurveAdapter.d.ts +2 -3
  500. package/dist/types/onchain/market/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
  501. package/dist/types/onchain/market/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +4 -4
  502. package/dist/types/onchain/market/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +2 -2
  503. package/dist/types/onchain/market/adapters/contracts/CamelotV3AdapterContract.d.ts +3 -3
  504. package/dist/types/onchain/market/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +2 -2
  505. package/dist/types/onchain/market/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +2 -2
  506. package/dist/types/onchain/market/adapters/contracts/Curve2AssetsAdapterContract.d.ts +2 -2
  507. package/dist/types/onchain/market/adapters/contracts/Curve3AssetsAdapterContract.d.ts +2 -2
  508. package/dist/types/onchain/market/adapters/contracts/Curve4AssetsAdapterContract.d.ts +2 -2
  509. package/dist/types/onchain/market/adapters/contracts/CurveV1AdapterStETHContract.d.ts +2 -2
  510. package/dist/types/onchain/market/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +2 -2
  511. package/dist/types/onchain/market/adapters/contracts/DaiUsdsAdapterContract.d.ts +2 -2
  512. package/dist/types/onchain/market/adapters/contracts/ERC4626AdapterContract.d.ts +2 -2
  513. package/dist/types/onchain/market/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +2 -2
  514. package/dist/types/onchain/market/adapters/contracts/FluidDexAdapterContract.d.ts +2 -2
  515. package/dist/types/onchain/market/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +2 -2
  516. package/dist/types/onchain/market/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +2 -2
  517. package/dist/types/onchain/market/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +2 -2
  518. package/dist/types/onchain/market/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +2 -2
  519. package/dist/types/onchain/market/adapters/contracts/LidoV1AdapterContract.d.ts +2 -2
  520. package/dist/types/onchain/market/adapters/contracts/MellowClaimerAdapterContract.d.ts +2 -2
  521. package/dist/types/onchain/market/adapters/contracts/MellowDVVAdapterContract.d.ts +2 -2
  522. package/dist/types/onchain/market/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +2 -2
  523. package/dist/types/onchain/market/adapters/contracts/MellowWrapperAdapterContract.d.ts +2 -2
  524. package/dist/types/onchain/market/adapters/contracts/MidasGatewayAdapterContract.d.ts +2 -2
  525. package/dist/types/onchain/market/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +2 -2
  526. package/dist/types/onchain/market/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +2 -2
  527. package/dist/types/onchain/market/adapters/contracts/PendleRouterAdapterContract.d.ts +5 -5
  528. package/dist/types/onchain/market/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +2 -2
  529. package/dist/types/onchain/market/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +2 -2
  530. package/dist/types/onchain/market/adapters/contracts/StakingRewardsAdapterContract.d.ts +2 -2
  531. package/dist/types/onchain/market/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +4 -4
  532. package/dist/types/onchain/market/adapters/contracts/UniswapV2AdapterContract.d.ts +2 -2
  533. package/dist/types/onchain/market/adapters/contracts/UniswapV3AdapterContract.d.ts +2 -2
  534. package/dist/types/onchain/market/adapters/contracts/UniswapV4AdapterContract.d.ts +2 -2
  535. package/dist/types/onchain/market/adapters/contracts/UpshiftVaultAdapterContract.d.ts +2 -2
  536. package/dist/types/onchain/market/adapters/contracts/VelodromeV2AdapterContract.d.ts +2 -2
  537. package/dist/types/onchain/market/adapters/contracts/WstETHV1AdapterContract.d.ts +2 -2
  538. package/dist/types/onchain/market/adapters/createAdapter.d.ts +3 -4
  539. package/dist/types/onchain/market/adapters/legacyAdapterOperations.d.ts +27 -28
  540. package/dist/types/onchain/market/adapters/transferHelpers.d.ts +10 -11
  541. package/dist/types/onchain/market/adapters/transfers.d.ts +2 -3
  542. package/dist/types/onchain/market/adapters/types.d.ts +9 -10
  543. package/dist/types/onchain/market/credit/CreditConfiguratorV310Contract.d.ts +3 -3
  544. package/dist/types/onchain/market/credit/CreditFacadeV310BaseContract.d.ts +2 -2
  545. package/dist/types/onchain/market/credit/CreditFacadeV310Contract.d.ts +3 -3
  546. package/dist/types/onchain/market/credit/CreditManagerV310Contract.d.ts +3 -3
  547. package/dist/types/onchain/market/credit/CreditSuite.d.ts +2 -3
  548. package/dist/types/onchain/market/credit/CreditSuiteStrategy.d.ts +2 -3
  549. package/dist/types/onchain/market/credit/collateralUtils.d.ts +5 -6
  550. package/dist/types/onchain/market/credit/createCreditConfigurator.d.ts +2 -3
  551. package/dist/types/onchain/market/credit/createCreditFacade.d.ts +2 -3
  552. package/dist/types/onchain/market/credit/createCreditManager.d.ts +2 -3
  553. package/dist/types/onchain/market/credit/expectedBalanceDeltas.d.ts +4 -5
  554. package/dist/types/onchain/market/credit/types.d.ts +10 -11
  555. package/dist/types/onchain/market/loss-policy/AliasLossPolicyV310Contract.d.ts +3 -3
  556. package/dist/types/onchain/market/loss-policy/LossPolicyContract.d.ts +2 -2
  557. package/dist/types/onchain/market/loss-policy/constants.d.ts +5 -6
  558. package/dist/types/onchain/market/loss-policy/createLossPolicy.d.ts +2 -3
  559. package/dist/types/onchain/market/loss-policy/types.d.ts +2 -3
  560. package/dist/types/onchain/market/math.d.ts +23 -24
  561. package/dist/types/onchain/market/oracle/PriceFeedAnswerMap.d.ts +2 -3
  562. package/dist/types/onchain/market/oracle/PriceOracleBaseContract.d.ts +2 -3
  563. package/dist/types/onchain/market/oracle/PriceOracleV310Contract.d.ts +2 -2
  564. package/dist/types/onchain/market/oracle/collateralPriceInUnderlying.d.ts +2 -3
  565. package/dist/types/onchain/market/oracle/createPriceOracle.d.ts +2 -3
  566. package/dist/types/onchain/market/oracle/types.d.ts +5 -6
  567. package/dist/types/onchain/market/pool/GaugeContract.d.ts +3 -3
  568. package/dist/types/onchain/market/pool/LinearInterestRateModelContract.d.ts +2 -2
  569. package/dist/types/onchain/market/pool/PoolQuotaKeeperV310Contract.d.ts +2 -2
  570. package/dist/types/onchain/market/pool/PoolSuite.d.ts +2 -3
  571. package/dist/types/onchain/market/pool/PoolV310Contract.d.ts +3 -3
  572. package/dist/types/onchain/market/pool/TumblerContract.d.ts +2 -2
  573. package/dist/types/onchain/market/pool/createInterestRateModel.d.ts +2 -3
  574. package/dist/types/onchain/market/pool/createPool.d.ts +2 -3
  575. package/dist/types/onchain/market/pool/createPoolQuotaKeeper.d.ts +2 -3
  576. package/dist/types/onchain/market/pool/createRateKeeper.d.ts +2 -3
  577. package/dist/types/onchain/market/pool/math.d.ts +6 -7
  578. package/dist/types/onchain/market/pool/types.d.ts +7 -8
  579. package/dist/types/onchain/market/pricefeeds/AbstractLPPriceFeed.d.ts +3 -4
  580. package/dist/types/onchain/market/pricefeeds/AbstractPriceFeed.d.ts +5 -6
  581. package/dist/types/onchain/market/pricefeeds/PriceFeedRef.d.ts +2 -3
  582. package/dist/types/onchain/market/pricefeeds/PriceFeedRegistry.d.ts +2 -3
  583. package/dist/types/onchain/market/pricefeeds/feeds/BalancerStablePriceFeed.d.ts +2 -2
  584. package/dist/types/onchain/market/pricefeeds/feeds/BalancerWeightedPriceFeed.d.ts +2 -2
  585. package/dist/types/onchain/market/pricefeeds/feeds/BoundedPriceFeed.d.ts +2 -2
  586. package/dist/types/onchain/market/pricefeeds/feeds/CompositePriceFeed.d.ts +2 -2
  587. package/dist/types/onchain/market/pricefeeds/feeds/ConstantPriceFeed.d.ts +2 -2
  588. package/dist/types/onchain/market/pricefeeds/feeds/CurveCryptoPriceFeed.d.ts +2 -2
  589. package/dist/types/onchain/market/pricefeeds/feeds/CurveStablePriceFeed.d.ts +2 -2
  590. package/dist/types/onchain/market/pricefeeds/feeds/CurveUSDPriceFeed.d.ts +2 -2
  591. package/dist/types/onchain/market/pricefeeds/feeds/Erc4626PriceFeed.d.ts +2 -2
  592. package/dist/types/onchain/market/pricefeeds/feeds/ExternalPriceFeed.d.ts +2 -2
  593. package/dist/types/onchain/market/pricefeeds/feeds/MellowLRTPriceFeed.d.ts +2 -2
  594. package/dist/types/onchain/market/pricefeeds/feeds/PendleTWAPPTPriceFeed.d.ts +2 -2
  595. package/dist/types/onchain/market/pricefeeds/feeds/PythPriceFeed.d.ts +2 -2
  596. package/dist/types/onchain/market/pricefeeds/feeds/RedstonePriceFeed.d.ts +2 -2
  597. package/dist/types/onchain/market/pricefeeds/feeds/WstETHPriceFeed.d.ts +2 -2
  598. package/dist/types/onchain/market/pricefeeds/feeds/YearnPriceFeed.d.ts +2 -2
  599. package/dist/types/onchain/market/pricefeeds/feeds/ZeroPriceFeed.d.ts +2 -2
  600. package/dist/types/onchain/market/pricefeeds/types.d.ts +5 -6
  601. package/dist/types/onchain/market/pricefeeds/updates/PriceUpdateTx.d.ts +2 -3
  602. package/dist/types/onchain/market/pricefeeds/updates/PriceUpdatesCache.d.ts +3 -4
  603. package/dist/types/onchain/market/pricefeeds/updates/UpdatablePriceFeedRegistry.d.ts +2 -3
  604. package/dist/types/onchain/market/pricefeeds/updates/getRawPriceUpdates.d.ts +2 -3
  605. package/dist/types/onchain/market/pricefeeds/updates/isUpdatablePriceFeed.d.ts +2 -3
  606. package/dist/types/onchain/market/pricefeeds/updates/types.d.ts +8 -9
  607. package/dist/types/onchain/market/pricefeeds/updates/updatableDependencies.d.ts +2 -3
  608. package/dist/types/onchain/market/rwa/RWARegistry.d.ts +3 -4
  609. package/dist/types/onchain/market/rwa/createDegenNFT.d.ts +2 -3
  610. package/dist/types/onchain/market/rwa/midas/MidasDegenNFT.d.ts +2 -2
  611. package/dist/types/onchain/market/rwa/midas/MidasLiquidatorContract.d.ts +2 -2
  612. package/dist/types/onchain/market/rwa/midas/constants.d.ts +4 -5
  613. package/dist/types/onchain/market/rwa/securitize/SecuritizeDegenNFT.d.ts +2 -2
  614. package/dist/types/onchain/market/rwa/securitize/SecuritizeLiquidatorContract.d.ts +2 -2
  615. package/dist/types/onchain/market/rwa/securitize/SecuritizeRWAFactory.d.ts +2 -2
  616. package/dist/types/onchain/market/rwa/securitize/constants.d.ts +4 -5
  617. package/dist/types/onchain/market/rwa/securitize/types.d.ts +5 -6
  618. package/dist/types/onchain/market/rwa/types.d.ts +16 -16
  619. package/dist/types/onchain/market/strategyName.d.ts +2 -3
  620. package/dist/types/onchain/market/types.d.ts +3 -4
  621. package/dist/types/onchain/market/zapper/IERC20ZapperContract.d.ts +2 -2
  622. package/dist/types/onchain/market/zapper/IETHZapperContract.d.ts +2 -2
  623. package/dist/types/onchain/market/zapper/ZapperContract.d.ts +2 -3
  624. package/dist/types/onchain/market/zapper/createZapper.d.ts +2 -3
  625. package/dist/types/onchain/market/zapper/types.d.ts +5 -6
  626. package/dist/types/onchain/opportunities/MultichainOpportunitiesService.d.ts +2 -3
  627. package/dist/types/onchain/opportunities/OpportunitiesService.d.ts +2 -3
  628. package/dist/types/onchain/opportunities/types.d.ts +2 -3
  629. package/dist/types/onchain/options.d.ts +4 -5
  630. package/dist/types/onchain/plugins/BasePlugin.d.ts +2 -3
  631. package/dist/types/onchain/plugins/errors.d.ts +2 -3
  632. package/dist/types/onchain/plugins/types.d.ts +9 -10
  633. package/dist/types/onchain/pools/PoolService.d.ts +2 -3
  634. package/dist/types/onchain/pools/types.d.ts +12 -13
  635. package/dist/types/onchain/positions/MultichainPositionsService.d.ts +2 -3
  636. package/dist/types/onchain/positions/PositionsService.d.ts +3 -4
  637. package/dist/types/onchain/positions/calcBorrowRate.d.ts +3 -4
  638. package/dist/types/onchain/positions/calcHealthFactor.d.ts +3 -4
  639. package/dist/types/onchain/positions/calcLiquidationPrice.d.ts +3 -4
  640. package/dist/types/onchain/positions/calcLiquidationPriceForTarget.d.ts +4 -5
  641. package/dist/types/onchain/positions/calcTimeToLiquidationMs.d.ts +2 -3
  642. package/dist/types/onchain/positions/types.d.ts +9 -10
  643. package/dist/types/onchain/preview/parse/classifyInnerOperations.d.ts +3 -4
  644. package/dist/types/onchain/preview/parse/parseFacadeOperationCalldata.d.ts +2 -3
  645. package/dist/types/onchain/preview/parse/parseOperationCalldata.d.ts +2 -3
  646. package/dist/types/onchain/preview/parse/parsePoolOperationCalldata.d.ts +2 -3
  647. package/dist/types/onchain/preview/parse/parseRWAFactoryOperationCalldata.d.ts +2 -3
  648. package/dist/types/onchain/preview/parse/types-adapters.d.ts +4 -5
  649. package/dist/types/onchain/preview/parse/types-facades.d.ts +20 -21
  650. package/dist/types/onchain/preview/parse/types-pools.d.ts +6 -7
  651. package/dist/types/onchain/preview/parse/types-rwa.d.ts +5 -6
  652. package/dist/types/onchain/preview/parse/types.d.ts +4 -4
  653. package/dist/types/onchain/preview/preview/CreditAccountState.d.ts +5 -5
  654. package/dist/types/onchain/preview/preview/buildDelayedStrategyPositionOperationPreview.d.ts +2 -3
  655. package/dist/types/onchain/preview/preview/detectCloseOrRepay.d.ts +3 -4
  656. package/dist/types/onchain/preview/preview/detectDelayedClaim.d.ts +4 -5
  657. package/dist/types/onchain/preview/preview/detectDelayedOperation.d.ts +3 -4
  658. package/dist/types/onchain/preview/preview/estimateClaimableAt.d.ts +2 -3
  659. package/dist/types/onchain/preview/preview/midasGreenlistsAccount.d.ts +2 -3
  660. package/dist/types/onchain/preview/preview/previewAdjustStrategyPosition.d.ts +2 -3
  661. package/dist/types/onchain/preview/preview/previewExitOrRepayStrategyPosition.d.ts +3 -4
  662. package/dist/types/onchain/preview/preview/previewOpenStrategyPosition.d.ts +2 -2
  663. package/dist/types/onchain/preview/preview/previewOperation.d.ts +3 -4
  664. package/dist/types/onchain/preview/preview/previewPoolPositionOperation.d.ts +2 -3
  665. package/dist/types/onchain/preview/preview/replayInnerOperations.d.ts +4 -5
  666. package/dist/types/onchain/preview/preview/replayMulticall.d.ts +4 -5
  667. package/dist/types/onchain/preview/preview/unwrapNativeCollateral.d.ts +2 -3
  668. package/dist/types/onchain/router/AbstractRouterContract.d.ts +4 -5
  669. package/dist/types/onchain/router/RouterV310Contract.d.ts +2 -2
  670. package/dist/types/onchain/router/createRouter.d.ts +2 -3
  671. package/dist/types/onchain/router/helpers.d.ts +3 -4
  672. package/dist/types/onchain/router/types.d.ts +15 -16
  673. package/dist/types/onchain/types/logger.d.ts +3 -4
  674. package/dist/types/onchain/types/multichain.d.ts +6 -7
  675. package/dist/types/onchain/types/state-human.d.ts +36 -37
  676. package/dist/types/onchain/types/state.d.ts +3 -4
  677. package/dist/types/onchain/types/transactions.d.ts +5 -6
  678. package/dist/types/onchain/utils/AddressMap.d.ts +2 -3
  679. package/dist/types/onchain/utils/AddressSet.d.ts +2 -3
  680. package/dist/types/onchain/utils/AssetsMap.d.ts +2 -3
  681. package/dist/types/onchain/utils/abi-decode.d.ts +4 -5
  682. package/dist/types/onchain/utils/bigint-math.d.ts +2 -3
  683. package/dist/types/onchain/utils/bytes32ToString.d.ts +2 -3
  684. package/dist/types/onchain/utils/childLogger.d.ts +2 -3
  685. package/dist/types/onchain/utils/createRawTx.d.ts +2 -3
  686. package/dist/types/onchain/utils/etherscan.d.ts +4 -5
  687. package/dist/types/onchain/utils/filterDust.d.ts +4 -5
  688. package/dist/types/onchain/utils/formatter.d.ts +17 -17
  689. package/dist/types/onchain/utils/hex.d.ts +2 -3
  690. package/dist/types/onchain/utils/internal/Hooks.d.ts +3 -4
  691. package/dist/types/onchain/utils/isDust.d.ts +3 -4
  692. package/dist/types/onchain/utils/json.d.ts +3 -4
  693. package/dist/types/onchain/utils/mappers.d.ts +5 -6
  694. package/dist/types/onchain/utils/retry.d.ts +3 -4
  695. package/dist/types/onchain/utils/toAddress.d.ts +2 -3
  696. package/dist/types/onchain/utils/trace.d.ts +8 -9
  697. package/dist/types/onchain/utils/type-utils.d.ts +2 -3
  698. package/dist/types/onchain/utils/viem/cast.d.ts +3 -4
  699. package/dist/types/onchain/utils/viem/executeDelegatedMulticalls.d.ts +3 -4
  700. package/dist/types/onchain/utils/viem/executeMulticallBatches.d.ts +4 -5
  701. package/dist/types/onchain/utils/viem/sendRawTx.d.ts +5 -6
  702. package/dist/types/onchain/utils/viem/simulateCall.d.ts +7 -8
  703. package/dist/types/onchain/utils/viem/simulateMulticall.d.ts +4 -5
  704. package/dist/types/onchain/utils/viem/simulateWithPriceUpdates.d.ts +8 -9
  705. package/dist/types/onchain/utils/viem/watchBlocksAsync.d.ts +4 -4
  706. package/dist/types/onchain/utils/zod.d.ts +4 -5
  707. package/dist/types/onchain/validation/bundles/checkAccountQuotas.d.ts +2 -3
  708. package/dist/types/onchain/validation/bundles/checkCollateralFunding.d.ts +4 -5
  709. package/dist/types/onchain/validation/bundles/checkCreditOperation.d.ts +6 -7
  710. package/dist/types/onchain/validation/bundles/checkHealthFactors.d.ts +4 -5
  711. package/dist/types/onchain/validation/bundles/checkIncreaseDebt.d.ts +2 -3
  712. package/dist/types/onchain/validation/bundles/checkIncreaseQuota.d.ts +2 -3
  713. package/dist/types/onchain/validation/bundles/checkLiquidationEligibility.d.ts +7 -7
  714. package/dist/types/onchain/validation/bundles/checkLiquidationFunding.d.ts +5 -5
  715. package/dist/types/onchain/validation/bundles/checkMarket.d.ts +3 -4
  716. package/dist/types/onchain/validation/bundles/checkMidasAccountGreenlist.d.ts +3 -4
  717. package/dist/types/onchain/validation/bundles/checkObtained.d.ts +2 -3
  718. package/dist/types/onchain/validation/bundles/checkPoolFunding.d.ts +3 -4
  719. package/dist/types/onchain/validation/bundles/checkPoolOperation.d.ts +4 -5
  720. package/dist/types/onchain/validation/bundles/checkQuotaUpdates.d.ts +15 -0
  721. package/dist/types/onchain/validation/bundles/checkRWAOpenRequirements.d.ts +3 -4
  722. package/dist/types/onchain/validation/bundles/checkRWAOpening.d.ts +4 -5
  723. package/dist/types/onchain/validation/bundles/checkWallet.d.ts +4 -5
  724. package/dist/types/onchain/validation/bundles/checkWalletAllowance.d.ts +3 -4
  725. package/dist/types/onchain/validation/bundles/checkWalletBalance.d.ts +3 -4
  726. package/dist/types/onchain/validation/bundles/index.d.ts +2 -1
  727. package/dist/types/onchain/validation/checkLiquidation.d.ts +7 -7
  728. package/dist/types/onchain/validation/checkOperation.d.ts +5 -6
  729. package/dist/types/onchain/validation/checkSimulation.d.ts +5 -6
  730. package/dist/types/onchain/validation/checks/checkBorrowLimit.d.ts +3 -4
  731. package/dist/types/onchain/validation/checks/checkCollateralised.d.ts +3 -4
  732. package/dist/types/onchain/validation/checks/checkCreditAccountFrozen.d.ts +3 -4
  733. package/dist/types/onchain/validation/checks/checkCreditManagerPaused.d.ts +3 -4
  734. package/dist/types/onchain/validation/checks/checkDebtLimits.d.ts +3 -4
  735. package/dist/types/onchain/validation/checks/checkEmergencyLiquidator.d.ts +3 -4
  736. package/dist/types/onchain/validation/checks/checkForbiddenToken.d.ts +3 -4
  737. package/dist/types/onchain/validation/checks/checkLeverage.d.ts +3 -4
  738. package/dist/types/onchain/validation/checks/checkLiquidatorEligible.d.ts +3 -4
  739. package/dist/types/onchain/validation/checks/checkMarketExpired.d.ts +3 -4
  740. package/dist/types/onchain/validation/checks/checkMaxQuota.d.ts +15 -0
  741. package/dist/types/onchain/validation/checks/checkPartiallyLiquidatable.d.ts +16 -0
  742. package/dist/types/onchain/validation/checks/checkPoolLiquidity.d.ts +3 -4
  743. package/dist/types/onchain/validation/checks/checkPoolPaused.d.ts +3 -4
  744. package/dist/types/onchain/validation/checks/checkPoolSunset.d.ts +3 -4
  745. package/dist/types/onchain/validation/checks/checkQuotaActive.d.ts +12 -0
  746. package/dist/types/onchain/validation/checks/checkQuotaChange.d.ts +16 -0
  747. package/dist/types/onchain/validation/checks/checkQuotaCount.d.ts +3 -4
  748. package/dist/types/onchain/validation/checks/checkQuotaLimit.d.ts +3 -4
  749. package/dist/types/onchain/validation/checks/checkReservePriceLimited.d.ts +3 -4
  750. package/dist/types/onchain/validation/checks/index.d.ts +5 -1
  751. package/dist/types/onchain/validation/helpers/amount.d.ts +2 -3
  752. package/dist/types/onchain/validation/helpers/health-factor-limits.d.ts +5 -6
  753. package/dist/types/onchain/validation/helpers/token.d.ts +3 -4
  754. package/dist/types/onchain/validation/index.d.ts +6 -1
  755. package/dist/types/onchain/validation/raise.d.ts +5 -6
  756. package/dist/types/permissionless/api/GearboxPermissionless.d.ts +2 -3
  757. package/dist/types/permissionless/api/chains/ChainsNamespace.d.ts +2 -3
  758. package/dist/types/permissionless/api/chains/schemas.d.ts +5 -6
  759. package/dist/types/permissionless/api/chains/types.d.ts +6 -7
  760. package/dist/types/permissionless/api/deploy/PermissionlessDeploy.d.ts +4 -5
  761. package/dist/types/permissionless/api/deploy/effective-staleness.d.ts +2 -3
  762. package/dist/types/permissionless/api/deploy/types.d.ts +6 -7
  763. package/dist/types/permissionless/api/errors.d.ts +6 -7
  764. package/dist/types/permissionless/api/oracles/PermissionlessOracles.d.ts +4 -5
  765. package/dist/types/permissionless/api/oracles/schemas.d.ts +5 -6
  766. package/dist/types/permissionless/api/oracles/types.d.ts +5 -6
  767. package/dist/types/permissionless/api/schemas.d.ts +4 -5
  768. package/dist/types/permissionless/api/transactions/InstanceOwnerTransactions.d.ts +2 -3
  769. package/dist/types/permissionless/api/transactions/lp-price-feeds.d.ts +3 -4
  770. package/dist/types/permissionless/api/transactions/types.d.ts +7 -8
  771. package/dist/types/permissionless/api/types.d.ts +2 -3
  772. package/dist/types/permissionless/bindings/address-provider.d.ts +2 -3
  773. package/dist/types/permissionless/bindings/bytecode-repository.d.ts +2 -2
  774. package/dist/types/permissionless/bindings/compressors/token-compressor.d.ts +2 -2
  775. package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +2 -2
  776. package/dist/types/permissionless/bindings/cross-chain-multisig.d.ts +4 -4
  777. package/dist/types/permissionless/bindings/factory/abstract-factory.d.ts +2 -3
  778. package/dist/types/permissionless/bindings/factory/credit-factory.d.ts +2 -2
  779. package/dist/types/permissionless/bindings/factory/loss-policy-factory.d.ts +2 -2
  780. package/dist/types/permissionless/bindings/factory/pool-factory.d.ts +2 -2
  781. package/dist/types/permissionless/bindings/factory/price-oracle-factory.d.ts +2 -2
  782. package/dist/types/permissionless/bindings/factory/rate-keeper-factory.d.ts +2 -2
  783. package/dist/types/permissionless/bindings/governance/batches-chain.d.ts +2 -2
  784. package/dist/types/permissionless/bindings/governance/governor.d.ts +2 -2
  785. package/dist/types/permissionless/bindings/governance/timelock.d.ts +2 -3
  786. package/dist/types/permissionless/bindings/governance/types.d.ts +7 -8
  787. package/dist/types/permissionless/bindings/instance-manager.d.ts +2 -2
  788. package/dist/types/permissionless/bindings/market-configurator-factory.d.ts +2 -2
  789. package/dist/types/permissionless/bindings/market-configurator.d.ts +2 -2
  790. package/dist/types/permissionless/bindings/price-feed-store.d.ts +2 -2
  791. package/dist/types/permissionless/bindings/pricefeeds/balancer-stable.d.ts +2 -3
  792. package/dist/types/permissionless/bindings/pricefeeds/balancer-weighted.d.ts +2 -3
  793. package/dist/types/permissionless/bindings/pricefeeds/bounded.d.ts +2 -3
  794. package/dist/types/permissionless/bindings/pricefeeds/composite.d.ts +2 -3
  795. package/dist/types/permissionless/bindings/pricefeeds/constant.d.ts +2 -3
  796. package/dist/types/permissionless/bindings/pricefeeds/curve-crypto.d.ts +2 -3
  797. package/dist/types/permissionless/bindings/pricefeeds/curve-stable.d.ts +2 -3
  798. package/dist/types/permissionless/bindings/pricefeeds/curve-twap.d.ts +2 -3
  799. package/dist/types/permissionless/bindings/pricefeeds/curve-usd.d.ts +2 -3
  800. package/dist/types/permissionless/bindings/pricefeeds/erc4626.d.ts +2 -3
  801. package/dist/types/permissionless/bindings/pricefeeds/external.d.ts +2 -3
  802. package/dist/types/permissionless/bindings/pricefeeds/index.d.ts +2 -3
  803. package/dist/types/permissionless/bindings/pricefeeds/kodiak.d.ts +2 -3
  804. package/dist/types/permissionless/bindings/pricefeeds/mellow-lrt.d.ts +2 -3
  805. package/dist/types/permissionless/bindings/pricefeeds/pendle-pt-twap.d.ts +2 -3
  806. package/dist/types/permissionless/bindings/pricefeeds/pyth.d.ts +2 -3
  807. package/dist/types/permissionless/bindings/pricefeeds/redstone.d.ts +2 -3
  808. package/dist/types/permissionless/bindings/pricefeeds/wsteth.d.ts +2 -3
  809. package/dist/types/permissionless/bindings/pricefeeds/zero.d.ts +2 -3
  810. package/dist/types/permissionless/bindings/router/routing-manager.d.ts +2 -2
  811. package/dist/types/permissionless/bindings/treasury-splitter.d.ts +2 -2
  812. package/dist/types/permissionless/bindings/types.d.ts +17 -18
  813. package/dist/types/permissionless/chains/archive-transport.d.ts +3 -4
  814. package/dist/types/permissionless/chains/chunked-log-transport.d.ts +2 -2
  815. package/dist/types/permissionless/core/auditor.d.ts +2 -3
  816. package/dist/types/permissionless/core/bytecode.d.ts +5 -6
  817. package/dist/types/permissionless/core/pricefeed-builder.d.ts +6 -7
  818. package/dist/types/permissionless/core/pricefeed.d.ts +2 -3
  819. package/dist/types/permissionless/core/proposal.d.ts +5 -6
  820. package/dist/types/permissionless/core/raw-tx.d.ts +2 -3
  821. package/dist/types/permissionless/deployment/addresses.d.ts +2 -3
  822. package/dist/types/permissionless/deployment/mainnet.d.ts +6 -7
  823. package/dist/types/permissionless/plugins/irm/constructor-params-abi.d.ts +8 -8
  824. package/dist/types/permissionless/plugins/loss-policies/constructor-params-abi.d.ts +8 -8
  825. package/dist/types/permissionless/plugins/rate-keepers/constructor-params-abi.d.ts +9 -9
  826. package/dist/types/permissionless/utils/abi-encoder.d.ts +4 -5
  827. package/dist/types/permissionless/utils/block-utils.d.ts +2 -3
  828. package/dist/types/permissionless/utils/create2.d.ts +9 -10
  829. package/dist/types/permissionless/utils/format.d.ts +7 -8
  830. package/dist/types/permissionless/utils/governance/batch.d.ts +5 -6
  831. package/dist/types/permissionless/utils/governance/timelock-txs.d.ts +2 -3
  832. package/dist/types/permissionless/utils/governance/types.d.ts +3 -4
  833. package/dist/types/permissionless/utils/literals.d.ts +8 -9
  834. package/dist/types/permissionless/utils/price-update/get-price-update-tx.d.ts +2 -3
  835. package/dist/types/permissionless/utils/price-update/get-prices.d.ts +2 -3
  836. package/dist/types/permissionless/utils/price-update/get-updatable-feeds.d.ts +3 -4
  837. package/dist/types/permissionless/utils/signature.d.ts +2 -3
  838. package/dist/types/plugins/accounts/AccountsPlugin.d.ts +3 -4
  839. package/dist/types/plugins/accounts-counter/AccountsCounterPlugin.d.ts +3 -4
  840. package/dist/types/plugins/bots/BotsPlugin.d.ts +2 -3
  841. package/dist/types/plugins/bots/PartialLiquidationBotV310Contract.d.ts +3 -3
  842. package/dist/types/plugins/bots/abi/iPartialLiquidationBotV310.d.ts +2 -3
  843. package/dist/types/plugins/bots/config.d.ts +6 -7
  844. package/dist/types/plugins/bots/deserializePartialLiquidationBotParams.d.ts +2 -3
  845. package/dist/types/plugins/bots/types.d.ts +11 -12
  846. package/dist/types/sdk/AbstractNamespace.d.ts +3 -4
  847. package/dist/types/sdk/GearboxSDK.d.ts +3 -4
  848. package/dist/types/sdk/analytics/AnalyticsNamespace.d.ts +2 -3
  849. package/dist/types/sdk/analytics/types.d.ts +3 -4
  850. package/dist/types/sdk/errors/AllSourcesFailedError.d.ts +2 -3
  851. package/dist/types/sdk/errors/MissingSourceError.d.ts +2 -3
  852. package/dist/types/sdk/errors/NoSourceServedError.d.ts +2 -3
  853. package/dist/types/sdk/errors/SourceChainMismatchError.d.ts +3 -4
  854. package/dist/types/sdk/errors/SourceUnavailableError.d.ts +2 -3
  855. package/dist/types/sdk/errors/assertSameChains.d.ts +2 -3
  856. package/dist/types/sdk/errors/everyChainFailed.d.ts +2 -3
  857. package/dist/types/sdk/execute/ExecuteApi.d.ts +2 -3
  858. package/dist/types/sdk/execute/types.d.ts +9 -10
  859. package/dist/types/sdk/index.d.ts +2 -2
  860. package/dist/types/sdk/liquidations/LiquidationsNamespace.d.ts +11 -4
  861. package/dist/types/sdk/liquidations/types.d.ts +24 -9
  862. package/dist/types/sdk/opportunities/OpportunitiesNamespace.d.ts +2 -3
  863. package/dist/types/sdk/opportunities/types.d.ts +9 -10
  864. package/dist/types/sdk/positions/PositionsNamespace.d.ts +2 -3
  865. package/dist/types/sdk/positions/mergePositionList.d.ts +2 -3
  866. package/dist/types/sdk/positions/types.d.ts +9 -10
  867. package/dist/types/sdk/prepare/PrepareApi.d.ts +14 -7
  868. package/dist/types/sdk/prepare/index.d.ts +2 -2
  869. package/dist/types/sdk/prepare/types.d.ts +72 -33
  870. package/dist/types/sdk/prepare/withdrawable-collaterals.d.ts +2 -3
  871. package/dist/types/sdk/preview/PreviewNamespace.d.ts +2 -3
  872. package/dist/types/sdk/preview/types.d.ts +4 -5
  873. package/dist/types/sdk/rewards/RewardsNamespace.d.ts +2 -3
  874. package/dist/types/sdk/rewards/errors.d.ts +3 -4
  875. package/dist/types/sdk/rewards/helpers.d.ts +7 -8
  876. package/dist/types/sdk/rewards/merkl-api.d.ts +6 -6
  877. package/dist/types/sdk/rewards/toMerklRewards.d.ts +2 -3
  878. package/dist/types/sdk/rewards/toTurtleRewards.d.ts +2 -3
  879. package/dist/types/sdk/rewards/turtle-api.d.ts +7 -8
  880. package/dist/types/sdk/rewards/types.d.ts +5 -6
  881. package/dist/types/sdk/types.d.ts +13 -14
  882. package/dist/types/sdk/utils/filterResponse.d.ts +2 -3
  883. package/dist/types/sdk/utils/mergeChains.d.ts +4 -5
  884. package/dist/types/sdk/utils/types.d.ts +5 -5
  885. package/package.json +15 -15
@@ -0,0 +1,149 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_onchain_utils_bigint_math = require("../../utils/bigint-math.js");
3
+ const require_onchain_constants_math = require("../../constants/math.js");
4
+ const require_onchain_validation_helpers_token = require("../../validation/helpers/token.js");
5
+ const require_onchain_validation_checks_checkForbiddenToken = require("../../validation/checks/checkForbiddenToken.js");
6
+ const require_onchain_validation_checks_checkMaxQuota = require("../../validation/checks/checkMaxQuota.js");
7
+ const require_onchain_validation_checks_checkQuotaActive = require("../../validation/checks/checkQuotaActive.js");
8
+ const require_onchain_validation_checks_checkQuotaChange = require("../../validation/checks/checkQuotaChange.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");
12
+ const require_onchain_accounts_intents_utils_common = require("./utils/common.js");
13
+ const require_onchain_accounts_intents_guards = require("./guards.js");
14
+ const require_onchain_accounts_quota_utils = require("../quota-utils.js");
15
+ const require_onchain_accounts_intents_utils_quotas_for_update = require("./utils/quotas-for-update.js");
16
+ //#region src/onchain/accounts/intents/resolveQuotaUpdate.ts
17
+ /**
18
+ * Synchronous calculation from the SDK's loaded market state; no RPC reads.
19
+ * @throws IntentPreviewError when quota validation rejects the change.
20
+ *
21
+ * The single `updateQuota` an `UPDATE_QUOTA` intent sends, checked against
22
+ * what the facade and the quota keeper would revert on.
23
+ *
24
+ * A target is taken as named and refused when the market cannot meet it. A
25
+ * sized quota is held to what the market can give instead: an increase is capped
26
+ * at the pool's available quota, and `minQuota` accepts a partial fill so long as the
27
+ * token stays enabled.
28
+ */
29
+ function resolveQuotaUpdate(props) {
30
+ const { sdk, creditAccount, quotaReserve, limits } = props;
31
+ const suite = sdk.marketRegister.findCreditManager(creditAccount.creditManager);
32
+ const { market } = suite;
33
+ const { pqk } = market.pool;
34
+ const tokenLc = props.token.toLowerCase();
35
+ const token = require_onchain_validation_helpers_token.toToken(sdk, tokenLc);
36
+ const underlying = require_onchain_validation_helpers_token.toToken(sdk, market.pool.underlying);
37
+ const current = creditAccount.tokens.find((t) => require_onchain_accounts_intents_utils_common.eq(t.token, tokenLc))?.quota ?? 0n;
38
+ require_onchain_validation_raise.raise(require_onchain_validation_checks_checkQuotaActive.checkQuotaActive({
39
+ token,
40
+ isActive: pqk.quotas.get(tokenLc)?.isActive ?? false
41
+ }), `updateQuota: ${tokenLc} has no active quota`);
42
+ let resolved;
43
+ if (props.quota === void 0) {
44
+ const price = (from, to, amount) => market.priceOracle.safeConvert(from, to, amount).value;
45
+ resolved = sizedChange(current, require_onchain_accounts_intents_utils_quotas_for_update.resizedQuota({
46
+ token: tokenLc,
47
+ assets: creditAccount.tokens,
48
+ initialQuotas: creditAccount.tokens,
49
+ quotaReserve,
50
+ underlyingToken: market.pool.underlying,
51
+ liquidationThresholds: suite.creditManager.liquidationThresholds,
52
+ quotas: pqk.quotas,
53
+ maxDebt: suite.creditFacade.maxDebt,
54
+ convert: price
55
+ }), tokenLc, require_onchain_accounts_quota_utils.roundUpQuota(pqk.quotaAvailable(tokenLc)));
56
+ if (resolved.change === 0n && resolved.requested > current) require_onchain_validation_raise.raise(require_onchain_validation_checks_checkQuotaLimit.checkQuotaLimit({
57
+ token,
58
+ requested: resolved.requested - current,
59
+ available: 0n,
60
+ ...limits,
61
+ underlying
62
+ }), `updateQuota: the pool has no quota left for ${tokenLc}`);
63
+ } else resolved = targetChange(current, props.quota);
64
+ const { requested, change, resulting } = resolved;
65
+ require_onchain_validation_raise.raise(require_onchain_validation_checks_checkQuotaChange.checkQuotaChange({
66
+ token,
67
+ current,
68
+ requested,
69
+ change,
70
+ underlying
71
+ }), `updateQuota: ${requested} rounds to the current ${current}`);
72
+ if (change > 0n) require_onchain_validation_raise.raise(require_onchain_validation_checks_checkForbiddenToken.checkForbiddenToken({
73
+ token,
74
+ isForbidden: suite.isForbidden(tokenLc)
75
+ }), `updateQuota: ${tokenLc} is forbidden, its quota cannot grow`);
76
+ if (props.quota !== void 0) {
77
+ const maxQuota = require_onchain_constants_math.MAX_QUOTA_MULTIPLIER * suite.creditFacade.maxDebt;
78
+ require_onchain_validation_raise.raise(require_onchain_validation_checks_checkMaxQuota.checkMaxQuota({
79
+ token,
80
+ requested: resulting,
81
+ maxQuota,
82
+ underlying
83
+ }), `updateQuota: ${resulting} exceeds maxQuota ${maxQuota}`);
84
+ if (change > 0n) require_onchain_accounts_intents_guards.assertQuotaAvailable(sdk, market, [{
85
+ token: tokenLc,
86
+ balance: change
87
+ }], limits);
88
+ }
89
+ const entry = {
90
+ token: tokenLc,
91
+ balance: change
92
+ };
93
+ return {
94
+ update: {
95
+ desiredQuota: { [tokenLc]: {
96
+ token: tokenLc,
97
+ balance: resulting
98
+ } },
99
+ quotaIncrease: change > 0n ? [entry] : [],
100
+ quotaDecrease: change < 0n ? [entry] : []
101
+ },
102
+ minQuota: [{
103
+ token: tokenLc,
104
+ balance: resolved.minQuota
105
+ }]
106
+ };
107
+ }
108
+ function targetChange(current, quota) {
109
+ const target = require_onchain_utils_bigint_math.BigIntMath.max(quota, 0n);
110
+ if (target === 0n) return {
111
+ requested: 0n,
112
+ change: current > 0n ? require_onchain_constants_math.MIN_INT96 : 0n,
113
+ resulting: 0n,
114
+ minQuota: 0n
115
+ };
116
+ const change = require_onchain_accounts_quota_utils.roundUpQuota(target - current);
117
+ return {
118
+ requested: target,
119
+ change,
120
+ resulting: current + change,
121
+ minQuota: current + change
122
+ };
123
+ }
124
+ /**
125
+ * Reads the one token's change back out of {@link resizedQuota}, then caps an
126
+ * increase at `available`.
127
+ */
128
+ function sizedChange(current, sized, token, available) {
129
+ const requested = sized.desiredQuota[token]?.balance ?? current;
130
+ const decrease = sized.quotaDecrease.find((a) => a.token === token)?.balance;
131
+ if (decrease !== void 0) {
132
+ const resulting = decrease === -39614081257132168796771975168n ? 0n : current + decrease;
133
+ return {
134
+ requested,
135
+ change: decrease,
136
+ resulting,
137
+ minQuota: resulting
138
+ };
139
+ }
140
+ const increase = require_onchain_utils_bigint_math.BigIntMath.min(sized.quotaIncrease.find((a) => a.token === token)?.balance ?? 0n, available);
141
+ return {
142
+ requested,
143
+ change: increase,
144
+ resulting: current + increase,
145
+ minQuota: increase > 0n ? require_onchain_utils_bigint_math.BigIntMath.max(current, require_onchain_constants_math.PERCENTAGE_FACTOR) : current
146
+ };
147
+ }
148
+ //#endregion
149
+ exports.resolveQuotaUpdate = resolveQuotaUpdate;
@@ -340,6 +340,7 @@ function buildMockSdk(args) {
340
340
  } }
341
341
  },
342
342
  marketRegister: {
343
+ creditManagers: [creditManagerSuite],
343
344
  findByCreditManager: vitest.vi.fn(() => market),
344
345
  findCreditManager: vitest.vi.fn(() => creditManagerSuite)
345
346
  },
@@ -0,0 +1,102 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_onchain_constants_math = require("../../../constants/math.js");
3
+ const require_market = require("../testing/market.js");
4
+ //#region src/onchain/accounts/intents/tests/update-quota.fixtures.ts
5
+ /**
6
+ * Start update-quota fixtures.
7
+ *
8
+ * The account holds 1000 UND and 2000 ANY (another 1000 UND) against 500 UND of
9
+ * debt. Nothing moves, so every case is a single `changeQuota` and the totals
10
+ * stand still.
11
+ */
12
+ const BASE_UND = 100000000000n;
13
+ const BALANCE_ANY = 2000000000000000000000n;
14
+ const DEBT = 50000000000n;
15
+ /** What 2000 ANY is sized to: 1000 UND × 92%. */
16
+ const SIZED_ANY = 92000000000n;
17
+ const TOTAL_VALUE = BASE_UND + require_market.valueInUnd(BALANCE_ANY, require_market.ANY);
18
+ /** Omitted quota on an unquoted balance: bought at balance × LT. */
19
+ const case_auto_increase = {
20
+ intent: {
21
+ type: "UPDATE_QUOTA",
22
+ token: require_market.ANY
23
+ },
24
+ current: 0n,
25
+ ops: [{
26
+ type: "changeQuota",
27
+ quotaIncrease: [{
28
+ token: require_market.ANY,
29
+ balance: SIZED_ANY
30
+ }],
31
+ quotaDecrease: [],
32
+ desiredQuota: {}
33
+ }],
34
+ quotaAfter: SIZED_ANY,
35
+ minQuota: 10000n
36
+ };
37
+ /** A lower target: the quota drops to exactly it. */
38
+ const case_target_decrease = {
39
+ intent: {
40
+ type: "UPDATE_QUOTA",
41
+ token: require_market.ANY,
42
+ quota: 40000000000n
43
+ },
44
+ current: SIZED_ANY,
45
+ ops: [{
46
+ type: "changeQuota",
47
+ quotaIncrease: [],
48
+ quotaDecrease: [{
49
+ token: require_market.ANY,
50
+ balance: 40000000000n - SIZED_ANY
51
+ }],
52
+ desiredQuota: {}
53
+ }],
54
+ quotaAfter: 40000000000n,
55
+ minQuota: 40000000000n
56
+ };
57
+ /** Target 0: the quota is reset with the sentinel. */
58
+ const case_target_disable = {
59
+ intent: {
60
+ type: "UPDATE_QUOTA",
61
+ token: require_market.ANY,
62
+ quota: 0n
63
+ },
64
+ current: SIZED_ANY,
65
+ ops: [{
66
+ type: "changeQuota",
67
+ quotaIncrease: [],
68
+ quotaDecrease: [{
69
+ token: require_market.ANY,
70
+ balance: require_onchain_constants_math.MIN_INT96
71
+ }],
72
+ desiredQuota: {}
73
+ }],
74
+ quotaAfter: 0n,
75
+ minQuota: 0n
76
+ };
77
+ function buildUpdateQuotaSdk(c) {
78
+ return require_market.buildMarketSdk(c.extras);
79
+ }
80
+ function buildUpdateQuotaProps(c, sdk) {
81
+ return {
82
+ intent: c.intent,
83
+ creditAccount: require_market.buildFixtureCreditAccount({
84
+ totalDebt: c.totalDebt ?? 50000000000n,
85
+ tokens: [...c.others ?? [require_market.caToken("0x3333333333333333333333333333333333333333", 100000000000n)], require_market.caToken(require_market.ANY, BALANCE_ANY, c.current)]
86
+ }),
87
+ sdk,
88
+ quotaReserve: void 0,
89
+ slippage: void 0
90
+ };
91
+ }
92
+ //#endregion
93
+ exports.BALANCE_ANY = BALANCE_ANY;
94
+ exports.BASE_UND = BASE_UND;
95
+ exports.DEBT = DEBT;
96
+ exports.SIZED_ANY = SIZED_ANY;
97
+ exports.TOTAL_VALUE = TOTAL_VALUE;
98
+ exports.buildUpdateQuotaProps = buildUpdateQuotaProps;
99
+ exports.buildUpdateQuotaSdk = buildUpdateQuotaSdk;
100
+ exports.case_auto_increase = case_auto_increase;
101
+ exports.case_target_decrease = case_target_decrease;
102
+ exports.case_target_disable = case_target_disable;
@@ -27,6 +27,7 @@ exports.pickFattestNonPhantomToken = require_onchain_accounts_intents_utils_pick
27
27
  exports.quotaIncreaseLimit = require_onchain_accounts_intents_utils_quotas_for_update.quotaIncreaseLimit;
28
28
  exports.quotasAfterUpdate = require_onchain_accounts_intents_utils_quotas_for_update.quotasAfterUpdate;
29
29
  exports.rankAccountTokens = require_onchain_accounts_intents_utils_pick_token.rankAccountTokens;
30
+ exports.resizedQuota = require_onchain_accounts_intents_utils_quotas_for_update.resizedQuota;
30
31
  exports.resolveCreditManager = require_onchain_accounts_intents_utils_common.resolveCreditManager;
31
32
  exports.startProbe = require_onchain_accounts_intents_utils_price_impact.startProbe;
32
33
  exports.toCreditAccountSlice = require_onchain_accounts_intents_utils_credit_account_slice.toCreditAccountSlice;
@@ -5,17 +5,28 @@ const require_onchain_utils_mappers = require("../../../utils/mappers.js");
5
5
  require("../../../constants/index.js");
6
6
  const require_onchain_accounts_quota_utils = require("../../quota-utils.js");
7
7
  //#region src/onchain/accounts/intents/utils/quotas-for-update.ts
8
- function getQuotasForUpdate({ assetsBefore, assetsAfter, initialQuotas, quotaReserve = 0, liquidationThresholds: liquidationThresholdsMap, quotas: quotasMap, maxDebt, underlyingToken, convert }) {
8
+ function getQuotasForUpdate(props) {
9
+ const assetsAfterLc = lowercased(props.assetsAfter);
10
+ const { spend, obtain } = collectQuotaChange(lowercased(props.assetsBefore), assetsAfterLc);
11
+ return sizeQuotas(assetsAfterLc, spend, obtain, props);
12
+ }
13
+ /**
14
+ * The update that sizes one token's quota to the balance the account holds of
15
+ * it, whatever moved.
16
+ *
17
+ * Sits beside {@link getQuotasForUpdate} because that one only resizes what an
18
+ * operation spent or obtained, and an operation that changes a quota alone
19
+ * moves no balance at all.
20
+ */
21
+ function resizedQuota(props) {
22
+ const entry = [{
23
+ token: props.token.toLowerCase(),
24
+ balance: 0n
25
+ }];
26
+ return sizeQuotas(lowercased(props.assets), entry, entry, props);
27
+ }
28
+ function sizeQuotas(assetsAfterLc, spend, obtain, { initialQuotas, quotaReserve = 0, liquidationThresholds: liquidationThresholdsMap, quotas: quotasMap, maxDebt, underlyingToken, convert }) {
9
29
  const underlyingTokenLc = underlyingToken.toLowerCase();
10
- const assetsBeforeLc = assetsBefore.map((a) => ({
11
- ...a,
12
- token: a.token.toLowerCase()
13
- }));
14
- const assetsAfterLc = assetsAfter.map((a) => ({
15
- ...a,
16
- token: a.token.toLowerCase()
17
- }));
18
- const { spend, obtain } = collectQuotaChange(assetsBeforeLc, assetsAfterLc);
19
30
  const initialQuotasLc = initialQuotas.map((a) => {
20
31
  const tokenLc = a.token.toLowerCase();
21
32
  return [tokenLc, {
@@ -131,6 +142,12 @@ function quotasAfterUpdate(initialQuotas, desiredQuota) {
131
142
  else delete after[token];
132
143
  return after;
133
144
  }
145
+ function lowercased(assets) {
146
+ return assets.map((a) => ({
147
+ ...a,
148
+ token: a.token.toLowerCase()
149
+ }));
150
+ }
134
151
  function collectQuotaChange(assetsBefore, assetsAfter) {
135
152
  const before = new Map(assetsBefore.map((a) => [a.token, a.balance]));
136
153
  const after = new Map(assetsAfter.map((a) => [a.token, a.balance]));
@@ -238,4 +255,5 @@ exports.clearedQuotas = clearedQuotas;
238
255
  exports.getQuotasForUpdate = getQuotasForUpdate;
239
256
  exports.quotaIncreaseLimit = quotaIncreaseLimit;
240
257
  exports.quotasAfterUpdate = quotasAfterUpdate;
258
+ exports.resizedQuota = resizedQuota;
241
259
  exports.withDirectTransferQuota = withDirectTransferQuota;
@@ -23,6 +23,7 @@ require("../../market/index.js");
23
23
  const require_onchain_accounts_liquidations_constants = require("./constants.js");
24
24
  const require_onchain_accounts_liquidations_partialLiquidation = require("./partialLiquidation.js");
25
25
  const require_onchain_accounts_liquidations_skipLiquidatableAccount = require("./skipLiquidatableAccount.js");
26
+ let viem = require("viem");
26
27
  //#region src/onchain/accounts/liquidations/LiquidationsService.ts
27
28
  /**
28
29
  * Service for discovering liquidatable credit accounts and previewing manual
@@ -71,7 +72,8 @@ var LiquidationsService = class extends require_onchain_base_SDKConstruct.SDKCon
71
72
  isCreditAccountFrozen: data.isCreditAccountFrozen,
72
73
  kycProtocol: data.kycProtocol || void 0,
73
74
  kycToken: require_onchain_utils_hex.hexEq(data.kycToken, "0x0000000000000000000000000000000000000000") ? void 0 : this.sdk.tokensMeta.getToken(data.kycToken),
74
- approve: this.#liquidationApproval(data, suite, priceOracle)
75
+ approve: this.#liquidationApproval(data, suite, priceOracle),
76
+ isPartial: false
75
77
  };
76
78
  }
77
79
  /**
@@ -89,41 +91,127 @@ var LiquidationsService = class extends require_onchain_base_SDKConstruct.SDKCon
89
91
  };
90
92
  }
91
93
  /**
94
+ * Builds the transaction that fully liquidates a credit account, repaying
95
+ * the debt by swapping the account's own collateral through the router.
96
+ * The underlying left after the swaps is sent to `to`.
97
+ **/
98
+ async fullyLiquidate(props) {
99
+ const { account, to, slippage = 50n, keepAssets, ignoreReservePrices, applyLossPolicy, debtOnly } = props;
100
+ const cm = this.sdk.marketRegister.findCreditManager(account.creditManager);
101
+ const routerCloseResult = await this.sdk.routerFor(account).findBestClosePath({
102
+ creditAccount: account,
103
+ creditManager: cm.creditManager,
104
+ slippage,
105
+ keepAssets,
106
+ debtOnly
107
+ });
108
+ const calls = await this.sdk.accounts.prependPriceUpdates(account.creditManager, routerCloseResult.calls, account, { ignoreReservePrices });
109
+ let lossPolicyData;
110
+ if (applyLossPolicy) {
111
+ lossPolicyData = await cm.market.lossPolicy.getLiquidationData(account.creditAccount);
112
+ this.logger?.debug({ lossPolicyData }, "loss policy data");
113
+ }
114
+ return {
115
+ tx: cm.creditFacade.liquidateCreditAccount(account.creditAccount, to, calls, lossPolicyData),
116
+ calls,
117
+ routerCloseResult
118
+ };
119
+ }
120
+ /**
121
+ * Details of a partial liquidation of a credit account, in the shape of a
122
+ * full one: what the liquidator pays, what it receives and what it must
123
+ * approve, plus {@link LiquidationDetails.isPartiallyLiquidatable}.
124
+ *
125
+ * A local estimate, not onchain read: no price feed updates are applied, so
126
+ * `ignoreReservePrices` has no effect here.
127
+ * Parameters left out of `props` are derived from current state.
128
+ *
129
+ * @throws For markets with a wrapped RWA underlying (Securitize), for a
130
+ * `tokenOut` that cannot be seized, and when no `tokenOut` can be picked.
131
+ **/
132
+ async getPartialLiquidationDetails(props) {
133
+ const { creditAccount, liquidator, blockNumber } = props;
134
+ const ca = await this.#getCreditAccountData(creditAccount, blockNumber);
135
+ const suite = this.sdk.marketRegister.findCreditManager(ca.creditManager);
136
+ const { priceOracle } = suite.market;
137
+ const { underlying } = suite;
138
+ const { tokenOut, repaidAmount, isPartiallyLiquidatable } = this.#getPartialLiquidationParams(ca, suite, props);
139
+ const { liquidationDiscount } = suite.liquidationFees();
140
+ const seizedValue = repaidAmount * require_onchain_constants_math.PERCENTAGE_FACTOR / BigInt(liquidationDiscount);
141
+ const seizedAmount = priceOracle.convert(underlying, tokenOut, repaidAmount) * require_onchain_constants_math.PERCENTAGE_FACTOR / BigInt(liquidationDiscount);
142
+ const nft = await suite.degenNFT();
143
+ let isLiquidatorEligible = !nft;
144
+ if (nft && liquidator) {
145
+ const requirements = await nft.getOpenAccountRequirements(liquidator, { tokenOutAddress: tokenOut });
146
+ isLiquidatorEligible = nft.isRegistered(requirements);
147
+ }
148
+ const [kycToken] = nft && !isLiquidatorEligible ? await nft.getTokens() : [];
149
+ return {
150
+ ...this.#buildAccount(ca, suite),
151
+ repaymentAmount: priceOracle.toTokenAmount(underlying, repaidAmount),
152
+ estimatedProfit: priceOracle.toTokenAmount(underlying, seizedValue - repaidAmount),
153
+ isDelayed: false,
154
+ receivedAssets: [{
155
+ isDelayed: false,
156
+ ...priceOracle.toTokenAmount(tokenOut, seizedAmount),
157
+ token: this.sdk.tokensMeta.mustGetToken(this.sdk.tokensMeta.depositedToken(tokenOut))
158
+ }],
159
+ isLiquidatorEligible,
160
+ kycProtocol: isLiquidatorEligible ? void 0 : nft?.protocol,
161
+ kycToken: kycToken ? this.sdk.tokensMeta.getToken(kycToken) : void 0,
162
+ isCreditAccountFrozen: false,
163
+ approve: repaidAmount === 0n ? void 0 : {
164
+ spender: suite.creditManager.address,
165
+ ...priceOracle.toTokenAmount(underlying, repaidAmount * (require_onchain_constants_math.PERCENTAGE_FACTOR + require_onchain_accounts_liquidations_constants.LIQUIDATION_APPROVAL_BUFFER) / require_onchain_constants_math.PERCENTAGE_FACTOR)
166
+ },
167
+ isPartiallyLiquidatable,
168
+ isPartial: true
169
+ };
170
+ }
171
+ /**
172
+ * Builds the transaction that partially liquidates a credit account,
173
+ * repaying part of its debt from the liquidator's funds in exchange for
174
+ * discounted collateral sent to the liquidator. Parameters left out of
175
+ * `props` are derived from current state.
176
+ *
177
+ * @throws For markets with a wrapped RWA underlying (Securitize), for a
178
+ * `tokenOut` that cannot be seized, when no `tokenOut` can be picked, and
179
+ * when the account cannot be partially liquidated, see
180
+ * {@link LiquidationDetails.isPartiallyLiquidatable}.
181
+ **/
182
+ async buildPartialLiquidationTx(props) {
183
+ const { creditAccount, liquidator, ignoreReservePrices, blockNumber } = props;
184
+ const ca = await this.#getCreditAccountData(creditAccount, blockNumber);
185
+ const suite = this.sdk.marketRegister.findCreditManager(ca.creditManager);
186
+ const params = this.#getPartialLiquidationParams(ca, suite, props);
187
+ if (!params.isPartiallyLiquidatable) throw new Error(`credit account ${this.labelAddress(creditAccount)} cannot be partially liquidated`);
188
+ const updates = await this.sdk.accounts.getOnDemandPriceUpdates(ca, ignoreReservePrices);
189
+ const tx = suite.creditFacade.partiallyLiquidateCreditAccount(ca.creditAccount, params.tokenOut, params.repaidAmount, params.minSeizedAmount, liquidator, updates);
190
+ this.logger?.debug(`built tx to partially liquidate credit account ${this.labelAddress(creditAccount)} to ${this.labelAddress(liquidator)}`);
191
+ return {
192
+ to: tx.to,
193
+ callData: tx.callData
194
+ };
195
+ }
196
+ /**
92
197
  * Optimal partial liquidation of a credit account: the collateral to seize
93
198
  * and the amounts that bring its health factor close to `optimalHF`.
94
199
  *
95
- * Prices come from the last synced oracle state and `ca`, not from fresh
96
- * price updates. Withdrawal phantom tokens are never seized.
97
- *
98
200
  * @param ca - Credit account to partially liquidate.
99
201
  * @param optimalHF - Health factor to aim for, in basis points. Defaults to
100
202
  * {@link CreditSuite.optimalHFForPartialLiquidation}.
203
+ * @param liquidationThresholds - Liquidation thresholds to use instead of
204
+ * the credit manager's cached ones, for example LTs just set on a fork.
101
205
  * @throws If no `tokenOut` can be picked.
102
206
  **/
103
- getOptimalPartialLiquidation(ca, optimalHF) {
207
+ getOptimalPartialLiquidation(ca, optimalHF, liquidationThresholds) {
208
+ const suite = this.sdk.marketRegister.findCreditManager(ca.creditManager);
104
209
  return require_onchain_accounts_liquidations_partialLiquidation.optimalPartialLiquidation({
105
- suite: this.sdk.marketRegister.findCreditManager(ca.creditManager),
210
+ suite,
106
211
  account: ca,
107
212
  optimalHF,
108
- exclude: (token) => this.#isWithdrawalPhantom(token)
109
- });
110
- }
111
- /**
112
- * Everything a partial liquidation of a credit account needs, with any
113
- * parameter the caller pinned down taken as given and the rest derived from
114
- * current state. A derived `tokenOut` is never a withdrawal phantom token.
115
- *
116
- * @param ca - Credit account to partially liquidate.
117
- * @param overrides - Parameters to use instead of the derived defaults.
118
- * @throws If a derived `tokenOut` cannot be picked, or if the seized token is
119
- * not a collateral token of the credit manager.
120
- **/
121
- getPartialLiquidationParams(ca, overrides) {
122
- return require_onchain_accounts_liquidations_partialLiquidation.partialLiquidationParams({
123
- suite: this.sdk.marketRegister.findCreditManager(ca.creditManager),
124
- account: ca,
125
- overrides,
126
- exclude: (token) => this.#isWithdrawalPhantom(token)
213
+ exclude: (token) => this.#isUnseizable(suite, token),
214
+ liquidationThresholds
127
215
  });
128
216
  }
129
217
  /**
@@ -248,11 +336,42 @@ var LiquidationsService = class extends require_onchain_base_SDKConstruct.SDKCon
248
336
  #liquidationApproval(data, suite, priceOracle) {
249
337
  const { requiredToken, requiredAmount, liquidationCall } = data;
250
338
  if (requiredAmount === 0n) return;
339
+ const spender = require_onchain_utils_hex.hexEq(liquidationCall.target, suite.creditFacade.address) ? suite.creditManager.address : liquidationCall.target;
340
+ const bufferedAmount = requiredAmount * (require_onchain_constants_math.PERCENTAGE_FACTOR + require_onchain_accounts_liquidations_constants.LIQUIDATION_APPROVAL_BUFFER) / require_onchain_constants_math.PERCENTAGE_FACTOR;
251
341
  return {
252
- spender: require_onchain_utils_hex.hexEq(liquidationCall.target, suite.creditFacade.address) ? suite.creditManager.address : liquidationCall.target,
253
- ...priceOracle.toTokenAmount(requiredToken, requiredAmount * (require_onchain_constants_math.PERCENTAGE_FACTOR + require_onchain_accounts_liquidations_constants.LIQUIDATION_APPROVAL_BUFFER) / require_onchain_constants_math.PERCENTAGE_FACTOR)
342
+ spender,
343
+ ...priceOracle.toTokenAmount(requiredToken, bufferedAmount)
254
344
  };
255
345
  }
346
+ /**
347
+ * Everything a partial liquidation of a credit account needs, with any
348
+ * parameter the caller pinned down taken as given and the rest derived from
349
+ * current state. A derived `tokenOut` is never a token that cannot be seized.
350
+ *
351
+ * @throws For markets with a wrapped RWA underlying (Securitize), whose
352
+ * repayment the liquidator cannot fund, for a `tokenOut` that cannot be
353
+ * seized (a withdrawal phantom token, which does not redeem instantly, or a
354
+ * phantom token that unwraps to the underlying), if a derived `tokenOut`
355
+ * cannot be picked, and if the seized token is not a collateral token of the
356
+ * credit manager.
357
+ **/
358
+ #getPartialLiquidationParams(ca, suite, overrides) {
359
+ const label = this.labelAddress(ca.creditAccount);
360
+ if (this.sdk.tokensMeta.isRWAUnderlying(this.sdk.tokensMeta.mustGet(suite.underlying))) throw new Error(`cannot partially liquidate ${label}: markets with a wrapped RWA underlying are not supported`);
361
+ if (overrides.tokenOut && this.#isUnseizable(suite, overrides.tokenOut)) throw new Error(`cannot partially liquidate ${label}: ${this.labelAddress(overrides.tokenOut)} cannot be seized`);
362
+ return require_onchain_accounts_liquidations_partialLiquidation.partialLiquidationParams({
363
+ suite,
364
+ account: ca,
365
+ overrides,
366
+ exclude: (token) => this.#isUnseizable(suite, token)
367
+ });
368
+ }
369
+ /**
370
+ * The facade reverts when a phantom tokenOut unwraps to the underlying
371
+ **/
372
+ #isUnseizable(suite, token) {
373
+ return this.#isWithdrawalPhantom(token) || (0, viem.isAddressEqual)(this.sdk.tokensMeta.depositedToken(token), suite.underlying);
374
+ }
256
375
  async #getCreditAccountData(creditAccount, blockNumber) {
257
376
  const ca = await this.sdk.accounts.getCreditAccountData(creditAccount, blockNumber);
258
377
  if (!ca) throw new Error(`credit account ${creditAccount} not found`);
@@ -320,9 +439,18 @@ var LiquidationsService = class extends require_onchain_base_SDKConstruct.SDKCon
320
439
  },
321
440
  isDelayed: ca.tokens.some((t) => t.balance > 10n && this.#isWithdrawalPhantom(t.token)),
322
441
  paused: suite.creditFacade.isPaused,
323
- rwa: market.rwa
442
+ rwa: market.rwa,
443
+ isPartiallyLiquidatable: this.#isPartiallyLiquidatable(ca, suite)
324
444
  };
325
445
  }
446
+ #isPartiallyLiquidatable(ca, suite) {
447
+ try {
448
+ return this.#getPartialLiquidationParams(ca, suite, {}).isPartiallyLiquidatable;
449
+ } catch (e) {
450
+ this.logger?.debug(e, `credit account ${this.labelAddress(ca.creditAccount)} cannot be partially liquidated`);
451
+ return false;
452
+ }
453
+ }
326
454
  #isWithdrawalPhantom(token) {
327
455
  return !!this.sdk.withdrawalCompressor?.getWithdrawalSourceToken(token);
328
456
  }
@@ -53,6 +53,34 @@ var MultichainLiquidationsService = class extends require_onchain_base_Multichai
53
53
  });
54
54
  }
55
55
  /**
56
+ * {@inheritDoc LiquidationsService.getPartialLiquidationDetails}
57
+ **/
58
+ async getPartialLiquidationDetails(props) {
59
+ return this.queryChain({
60
+ network: props.network,
61
+ block: props.blockNumber ?? "latest",
62
+ run: (sdk, block) => sdk.liquidations.getPartialLiquidationDetails({
63
+ ...props,
64
+ blockNumber: block.blockNumber
65
+ })
66
+ });
67
+ }
68
+ /**
69
+ * {@inheritDoc LiquidationsService.buildPartialLiquidationTx}
70
+ *
71
+ * The reported block is the one the transaction was built against.
72
+ **/
73
+ async buildPartialLiquidationTx(props) {
74
+ return this.queryChain({
75
+ network: props.network,
76
+ block: props.blockNumber ?? "latest",
77
+ run: (sdk, block) => sdk.liquidations.buildPartialLiquidationTx({
78
+ ...props,
79
+ blockNumber: block.blockNumber
80
+ })
81
+ });
82
+ }
83
+ /**
56
84
  * Liquidation positions of all queried chains, see
57
85
  * {@link LiquidationsService.getLiquidationPositions}.
58
86
  **/
@@ -4,7 +4,7 @@ const LIQUIDATION_COMPRESSOR_V313_ADDRESS = "0xB70C4500a0afF02107eB983a348F22492
4
4
  /**
5
5
  * Headroom (in bps) added on top of the amount the liquidation pulls when
6
6
  * building the liquidator's approval, so that the transaction does not revert
7
- * when prices move between the preview and the execution.
7
+ * when prices move or interest accrues between the preview and the execution.
8
8
  **/
9
9
  const LIQUIDATION_APPROVAL_BUFFER = 50n;
10
10
  //#endregion
@@ -1,4 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_onchain_constants_math = require("../../constants/math.js");
3
+ require("../../constants/index.js");
2
4
  const require_onchain_market_math = require("../../market/math.js");
3
5
  const require_onchain_market_credit_collateralUtils = require("../../market/credit/collateralUtils.js");
4
6
  require("../../market/index.js");
@@ -12,11 +14,11 @@ require("../../market/index.js");
12
14
  *
13
15
  * @throws If no `tokenOut` can be picked.
14
16
  **/
15
- function optimalPartialLiquidation({ suite, account, optimalHF = suite.optimalHFForPartialLiquidation(account), exclude }) {
17
+ function optimalPartialLiquidation({ suite, account, optimalHF = suite.optimalHFForPartialLiquidation(account), exclude, liquidationThresholds }) {
16
18
  const tokenOut = bestTokenOut(suite, account, exclude);
17
19
  return {
18
20
  tokenOut,
19
- ...optimalAmounts(suite, account, tokenOut, optimalHF)
21
+ ...optimalAmounts(suite, account, tokenOut, optimalHF, liquidationThresholds)
20
22
  };
21
23
  }
22
24
  /**
@@ -29,12 +31,15 @@ function optimalPartialLiquidation({ suite, account, optimalHF = suite.optimalHF
29
31
  function partialLiquidationParams({ suite, account, overrides = {}, exclude }) {
30
32
  const tokenOut = overrides.tokenOut ?? bestTokenOut(suite, account, exclude);
31
33
  const optimalHF = overrides.optimalHF ?? suite.optimalHFForPartialLiquidation(account);
32
- const repaidAmount = overrides.repaidAmount ?? optimalAmounts(suite, account, tokenOut, optimalHF).repaidAmount;
34
+ const { market } = suite;
35
+ const { optimalAmount, isOptimalRepayable } = optimalAmounts(suite, account, tokenOut, optimalHF);
36
+ const repaidAmount = overrides.repaidAmount ?? optimalAmount;
33
37
  return {
34
38
  tokenOut,
35
39
  optimalHF,
36
40
  repaidAmount,
37
- minSeizedAmount: overrides.minSeizedAmount ?? minSeizedAmountOf(suite, tokenOut, repaidAmount)
41
+ minSeizedAmount: overrides.minSeizedAmount ?? require_onchain_market_math.minSeizedAmount(market.priceOracle.convert(market.underlying, tokenOut, repaidAmount), suite.liquidationFees().liquidationDiscount),
42
+ isPartiallyLiquidatable: (account.healthFactor < require_onchain_constants_math.WAD || suite.isExpired) && isOptimalRepayable && optimalAmount > 0n
38
43
  };
39
44
  }
40
45
  function bestTokenOut(suite, account, exclude) {
@@ -45,10 +50,10 @@ function bestTokenOut(suite, account, exclude) {
45
50
  /**
46
51
  * @throws If `tokenOut` is not a collateral token of the credit manager.
47
52
  **/
48
- function optimalAmounts(suite, account, tokenOut, optimalHF) {
53
+ function optimalAmounts(suite, account, tokenOut, optimalHF, liquidationThresholds) {
49
54
  const { creditManager: cm, market } = suite;
50
55
  const { feeLiquidation, liquidationDiscount } = suite.liquidationFees();
51
- const ltTokenOut = cm.liquidationThresholds.get(tokenOut);
56
+ const ltTokenOut = liquidationThresholds?.get(tokenOut) ?? cm.liquidationThresholds.get(tokenOut);
52
57
  if (ltTokenOut === void 0) throw new Error(`token ${suite.register.labelAddress(tokenOut)} is not a collateral token in credit manager ${suite.register.labelAddress(cm.address)}`);
53
58
  return require_onchain_market_math.optimalPartialLiquidationAmounts({
54
59
  totalDebt: account.debt + account.accruedInterest + account.accruedFees,
@@ -60,15 +65,6 @@ function optimalAmounts(suite, account, tokenOut, optimalHF) {
60
65
  ltTokenOut: BigInt(ltTokenOut)
61
66
  });
62
67
  }
63
- /**
64
- * Minimum amount of `token` that must be seized when repaying `repaidAmount`
65
- * of underlying.
66
- **/
67
- function minSeizedAmountOf(suite, token, repaidAmount) {
68
- const { market } = suite;
69
- const tokenAmount = market.priceOracle.convert(market.underlying, token, repaidAmount);
70
- return require_onchain_market_math.minSeizedAmount(tokenAmount, suite.liquidationFees().liquidationDiscount);
71
- }
72
68
  //#endregion
73
69
  exports.optimalPartialLiquidation = optimalPartialLiquidation;
74
70
  exports.partialLiquidationParams = partialLiquidationParams;