@gearbox-protocol/sdk 16.0.0-next.27 → 16.0.0-next.28

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 (69) hide show
  1. package/dist/cjs/model/index.js +1 -0
  2. package/dist/cjs/model/previews.js +23 -0
  3. package/dist/cjs/onchain/accounts/intents/open-strategy.js +4 -18
  4. package/dist/cjs/onchain/accounts/intents/realize.js +77 -50
  5. package/dist/cjs/onchain/accounts/intents/testing/market.js +1 -0
  6. package/dist/cjs/onchain/accounts/intents/testing/sdk-mock.js +13 -5
  7. package/dist/cjs/onchain/positions/PositionsService.js +79 -0
  8. package/dist/cjs/preview/index.js +6 -6
  9. package/dist/cjs/preview/preview/{buildDelayedPreview.js → buildDelayedStrategyVerify.js} +6 -25
  10. package/dist/cjs/preview/preview/index.js +6 -6
  11. package/dist/cjs/preview/preview/{previewAdjustCreditAccount.js → previewAdjustStrategyVerify.js} +6 -24
  12. package/dist/cjs/preview/preview/{previewCloseOrRepayCreditAccount.js → previewExitOrRepayStrategyVerify.js} +3 -3
  13. package/dist/cjs/preview/preview/{previewPoolOperation.js → previewLpVerify.js} +3 -3
  14. package/dist/cjs/preview/preview/{previewOpenCreditAccount.js → previewOpenStrategyVerify.js} +6 -26
  15. package/dist/cjs/preview/preview/previewOperation.js +10 -10
  16. package/dist/cjs/preview/validate/checkOperation.js +13 -9
  17. package/dist/esm/dev/AccountOpener.js +1 -1
  18. package/dist/esm/dev/withdrawalUtils.js +1 -1
  19. package/dist/esm/model/index.js +2 -2
  20. package/dist/esm/model/previews.js +23 -1
  21. package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +2 -2
  22. package/dist/esm/onchain/accounts/intents/open-strategy.js +4 -18
  23. package/dist/esm/onchain/accounts/intents/realize.js +77 -50
  24. package/dist/esm/onchain/accounts/intents/testing/market.js +1 -0
  25. package/dist/esm/onchain/accounts/intents/testing/sdk-mock.js +13 -5
  26. package/dist/esm/onchain/accounts/liquidations/LiquidationsService.js +1 -1
  27. package/dist/esm/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +1 -1
  28. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +1 -1
  29. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +1 -1
  30. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +1 -1
  31. package/dist/esm/onchain/base/TokensMeta.js +3 -3
  32. package/dist/esm/onchain/core/createAddressProvider.js +1 -1
  33. package/dist/esm/onchain/market/adapters/contracts/AccountMigratorAdapterContract.js +1 -1
  34. package/dist/esm/onchain/market/adapters/contracts/ERC4626AdapterContract.js +1 -1
  35. package/dist/esm/onchain/market/credit/CreditFacadeV310BaseContract.js +1 -1
  36. package/dist/esm/onchain/market/pool/PoolV310Contract.js +1 -1
  37. package/dist/esm/onchain/market/zapper/IETHZapperContract.js +1 -1
  38. package/dist/esm/onchain/market/zapper/ZapperContract.js +1 -1
  39. package/dist/esm/onchain/positions/PositionsService.js +79 -0
  40. package/dist/esm/onchain/utils/viem/simulateWithPriceUpdates.js +1 -1
  41. package/dist/esm/preview/index.js +4 -4
  42. package/dist/esm/preview/preview/{buildDelayedPreview.js → buildDelayedStrategyVerify.js} +7 -26
  43. package/dist/esm/preview/preview/index.js +4 -4
  44. package/dist/esm/preview/preview/{previewAdjustCreditAccount.js → previewAdjustStrategyVerify.js} +7 -25
  45. package/dist/esm/preview/preview/{previewCloseOrRepayCreditAccount.js → previewExitOrRepayStrategyVerify.js} +3 -3
  46. package/dist/esm/preview/preview/{previewPoolOperation.js → previewLpVerify.js} +3 -3
  47. package/dist/esm/preview/preview/{previewOpenCreditAccount.js → previewOpenStrategyVerify.js} +7 -27
  48. package/dist/esm/preview/preview/previewOperation.js +10 -10
  49. package/dist/esm/preview/simulate/simulatePoolOperation.js +1 -1
  50. package/dist/esm/preview/trace/extractTransfers.js +1 -1
  51. package/dist/esm/preview/validate/checkOperation.js +13 -9
  52. package/dist/types/model/index.d.ts +2 -2
  53. package/dist/types/model/previews.d.ts +202 -76
  54. package/dist/types/onchain/accounts/intents/open-strategy.d.ts +1 -7
  55. package/dist/types/onchain/accounts/intents/testing/market.d.ts +1 -0
  56. package/dist/types/onchain/accounts/intents/testing/sdk-mock.d.ts +7 -0
  57. package/dist/types/onchain/positions/PositionsService.d.ts +30 -0
  58. package/dist/types/preview/index.d.ts +5 -5
  59. package/dist/types/preview/preview/{buildDelayedPreview.d.ts → buildDelayedStrategyVerify.d.ts} +4 -4
  60. package/dist/types/preview/preview/index.d.ts +4 -4
  61. package/dist/types/preview/preview/{previewAdjustCreditAccount.d.ts → previewAdjustStrategyVerify.d.ts} +4 -4
  62. package/dist/types/preview/preview/{previewCloseOrRepayCreditAccount.d.ts → previewExitOrRepayStrategyVerify.d.ts} +4 -4
  63. package/dist/types/preview/preview/previewLpVerify.d.ts +11 -0
  64. package/dist/types/preview/preview/previewOpenStrategyVerify.d.ts +12 -0
  65. package/dist/types/preview/validate/checkOperation.d.ts +12 -4
  66. package/dist/types/preview/validate/index.d.ts +2 -2
  67. package/package.json +1 -1
  68. package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +0 -12
  69. package/dist/types/preview/preview/previewPoolOperation.d.ts +0 -11
@@ -1,4 +1,4 @@
1
- import { CloseCreditAccountPreview, RepayCreditAccountPreview } from "../../model/previews.js";
1
+ import { PreviewExitStrategyVerify, PreviewRepayStrategyVerify } from "../../model/previews.js";
2
2
  import "../../model/index.js";
3
3
  import { PluginsMap } from "../../onchain/plugins/types.js";
4
4
  import "../../onchain/index.js";
@@ -6,13 +6,13 @@ import { CloseCreditAccountOperation, MulticallOperation } from "../parse/types-
6
6
  import { RWAMulticallOperation } from "../parse/types-rwa.js";
7
7
  import { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
8
8
  import "../parse/index.js";
9
- //#region src/preview/preview/previewCloseOrRepayCreditAccount.d.ts
9
+ //#region src/preview/preview/previewExitOrRepayStrategyVerify.d.ts
10
10
  /**
11
11
  * Any parsed operation that fully closes or repays a credit account: the
12
12
  * facade `closeCreditAccount` entry point (permanent closure) or a plain
13
13
  * multicall detected by `isCloseOrRepay` (`decreaseDebt(MAX)`).
14
14
  */
15
15
  type CloseOrRepayOperation = CloseCreditAccountOperation | MulticallOperation | RWAMulticallOperation;
16
- declare function previewCloseOrRepayCreditAccount<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: CloseOrRepayOperation, permanent: boolean, options: PreviewOperationOptions<true>): Promise<CloseCreditAccountPreview | RepayCreditAccountPreview>;
16
+ declare function previewExitOrRepayStrategyVerify<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: CloseOrRepayOperation, permanent: boolean, options: PreviewOperationOptions<true>): Promise<PreviewExitStrategyVerify | PreviewRepayStrategyVerify>;
17
17
  //#endregion
18
- export { CloseOrRepayOperation, previewCloseOrRepayCreditAccount };
18
+ export { CloseOrRepayOperation, previewExitOrRepayStrategyVerify };
@@ -0,0 +1,11 @@
1
+ import { PreviewLpVerify } from "../../model/previews.js";
2
+ import "../../model/index.js";
3
+ import { PluginsMap } from "../../onchain/plugins/types.js";
4
+ import "../../onchain/index.js";
5
+ import { PoolOperation } from "../parse/types-pools.js";
6
+ import { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
7
+ import "../parse/index.js";
8
+ //#region src/preview/preview/previewLpVerify.d.ts
9
+ declare function previewLpVerify<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: PoolOperation, options?: PreviewOperationOptions): Promise<PreviewLpVerify>;
10
+ //#endregion
11
+ export { previewLpVerify };
@@ -0,0 +1,12 @@
1
+ import { PreviewOpenStrategyVerify } from "../../model/previews.js";
2
+ import "../../model/index.js";
3
+ import { PluginsMap } from "../../onchain/plugins/types.js";
4
+ import "../../onchain/index.js";
5
+ import { OpenCreditAccountOperation } from "../parse/types-facades.js";
6
+ import { RWAOpenCreditAccountOperation } from "../parse/types-rwa.js";
7
+ import { PreviewOperationInput } from "../types.js";
8
+ import "../parse/index.js";
9
+ //#region src/preview/preview/previewOpenStrategyVerify.d.ts
10
+ declare function previewOpenStrategyVerify<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: OpenCreditAccountOperation | RWAOpenCreditAccountOperation): Promise<PreviewOpenStrategyVerify>;
11
+ //#endregion
12
+ export { previewOpenStrategyVerify };
@@ -1,5 +1,5 @@
1
1
  import { Bps } from "../../model/primitives.js";
2
- import { AccountProjection, OperationPreview } from "../../model/previews.js";
2
+ import { AccountHoldings, AccountMetrics, AccountProjection, OperationPreview } from "../../model/previews.js";
3
3
  import "../../model/index.js";
4
4
  import { AddressMap } from "../../onchain/utils/AddressMap.js";
5
5
  import { CreditSuite } from "../../onchain/market/credit/CreditSuite.js";
@@ -49,7 +49,15 @@ declare function marketIssues(suite: CreditSuite): PreviewIssue | null;
49
49
  * need an operation's *delta* between them, and the caller acts on the first
50
50
  * issue reported.
51
51
  */
52
- declare function quotaCountIssue(suite: CreditSuite, projection: AccountProjection): PreviewIssue | null;
52
+ declare function quotaCountIssue(suite: CreditSuite, account: Pick<AccountProjection, "quotas">): PreviewIssue | null;
53
+ /**
54
+ * An account's factors, in whichever branch of a routed leg the caller means to
55
+ * be held to: `prepare` reports the outcome the router expects, `preview` the
56
+ * floor its calldata guarantees. The bar is indifferent — it weighs the numbers
57
+ * it is handed — and passing them one by one is what makes the choice visible
58
+ * where it is made.
59
+ */
60
+ interface WeighedFactors extends Pick<AccountHoldings, "totalDebt">, Pick<AccountMetrics, "healthFactor" | "safeHealthFactor"> {}
53
61
  /**
54
62
  * The account against whichever bars the caller holds it to.
55
63
  *
@@ -58,6 +66,6 @@ declare function quotaCountIssue(suite: CreditSuite, projection: AccountProjecti
58
66
  *
59
67
  * {@inheritDoc quotaCountIssue}
60
68
  */
61
- declare function collateralIssue(projection: AccountProjection, options: CheckOperationOptions): PreviewIssue | null;
69
+ declare function collateralIssue(account: WeighedFactors, options: CheckOperationOptions): PreviewIssue | null;
62
70
  //#endregion
63
- export { CheckOperationOptions, checkOperation, collateralIssue, marketIssues, quotaCountIssue };
71
+ export { CheckOperationOptions, WeighedFactors, checkOperation, collateralIssue, marketIssues, quotaCountIssue };
@@ -1,3 +1,3 @@
1
- import { CheckOperationOptions, checkOperation, collateralIssue, marketIssues, quotaCountIssue } from "./checkOperation.js";
1
+ import { CheckOperationOptions, WeighedFactors, checkOperation, collateralIssue, marketIssues, quotaCountIssue } from "./checkOperation.js";
2
2
  import { checkSimulation } from "./checkSimulation.js";
3
- export { CheckOperationOptions, checkOperation, checkSimulation, collateralIssue, marketIssues, quotaCountIssue };
3
+ export { CheckOperationOptions, WeighedFactors, checkOperation, checkSimulation, collateralIssue, marketIssues, quotaCountIssue };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/sdk",
3
- "version": "16.0.0-next.27",
3
+ "version": "16.0.0-next.28",
4
4
  "description": "Gearbox SDK",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -1,12 +0,0 @@
1
- import { OpenCreditAccountPreview } from "../../model/previews.js";
2
- import "../../model/index.js";
3
- import { PluginsMap } from "../../onchain/plugins/types.js";
4
- import "../../onchain/index.js";
5
- import { OpenCreditAccountOperation } from "../parse/types-facades.js";
6
- import { RWAOpenCreditAccountOperation } from "../parse/types-rwa.js";
7
- import { PreviewOperationInput } from "../types.js";
8
- import "../parse/index.js";
9
- //#region src/preview/preview/previewOpenCreditAccount.d.ts
10
- declare function previewOpenCreditAccount<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: OpenCreditAccountOperation | RWAOpenCreditAccountOperation): Promise<OpenCreditAccountPreview>;
11
- //#endregion
12
- export { previewOpenCreditAccount };
@@ -1,11 +0,0 @@
1
- import { PoolOperationPreview } from "../../model/previews.js";
2
- import "../../model/index.js";
3
- import { PluginsMap } from "../../onchain/plugins/types.js";
4
- import "../../onchain/index.js";
5
- import { PoolOperation } from "../parse/types-pools.js";
6
- import { PreviewOperationInput, PreviewOperationOptions } from "../types.js";
7
- import "../parse/index.js";
8
- //#region src/preview/preview/previewPoolOperation.d.ts
9
- declare function previewPoolOperation<P extends PluginsMap>(input: PreviewOperationInput<P>, operation: PoolOperation, options?: PreviewOperationOptions): Promise<PoolOperationPreview>;
10
- //#endregion
11
- export { previewPoolOperation };