@1delta/margin-fetcher 0.0.321 → 0.0.323

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.
@@ -127,13 +127,22 @@ export interface AaveV4TokenEntry {
127
127
  variableBorrowRate: number;
128
128
  stableBorrowRate: number;
129
129
  /**
130
- * Hub-level borrow utilization (0..1) — `hubTotalOwed / hubTotalSupply`.
131
- * The V4 IRM lives on the hub and aggregates drawn liquidity across all
132
- * spokes sharing this asset, so this is the IRM-relevant utilization, NOT
133
- * the per-spoke ratio. Per-spoke `(suppliedAssets/totalDebt)` would be
130
+ * Hub-level borrow utilization (0..1) — the exact IRM input
131
+ * `drawn / (liquidity + drawn + swept)` (premium debt excluded, deficit
132
+ * ignored mirrors the hub's AssetInterestRateStrategy). The V4 IRM
133
+ * lives on the hub and aggregates drawn liquidity across all spokes
134
+ * sharing this asset, so this is the IRM-relevant utilization, NOT the
135
+ * per-spoke ratio. Per-spoke `(suppliedAssets/totalDebt)` would be
134
136
  * misleading here (e.g. always negative for borrow-only spokes).
135
137
  */
136
138
  utilization: number;
139
+ /**
140
+ * Totals in the hub IRM's utilization basis (token units):
141
+ * `irmTotalDeposits = liquidity + drawn + swept`, `irmTotalDebt = drawn`.
142
+ * Rate-impact simulations must shift these, not the spoke-local totals.
143
+ */
144
+ irmTotalDeposits: number;
145
+ irmTotalDebt: number;
137
146
  intrinsicYield: number;
138
147
  rewards: any[];
139
148
  decimals: number;
@@ -1 +1 @@
1
- {"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../../../../src/lending/public-data/aave-v4-type/fetcher/normalize.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../../../../src/lending/public-data/aave-v4-type/fetcher/normalize.ts"],"names":[],"mappings":"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"}
@@ -6,14 +6,18 @@ export declare const VAULT_CHUNK_SIZE = 25;
6
6
  /**
7
7
  * Builds the multicall descriptor for Fluid public data.
8
8
  *
9
- * Returns a single call to VaultResolver.getVaultsEntireData() — the
10
- * resolver returns every vault on the chain in one shot.
9
+ * Two calls:
10
+ * [0] VaultResolver.getVaultsEntireData() — every vault in one shot
11
+ * [1] LiquidityResolver.getAllOverallTokensData() — per-token Liquidity-layer
12
+ * state. Vaults borrow from the shared Liquidity Layer, so the IRM input
13
+ * for every vault rate is the **Liquidity-layer token utilization**
14
+ * (`lastStoredUtilization`), not any vault-level ratio.
11
15
  *
12
16
  * fTokens are intentionally NOT fetched: they are standalone ERC-4626 vaults
13
17
  * on the shared Liquidity Layer (not a lending market), so they live outside
14
18
  * this module.
15
19
  *
16
- * Resolver address is constant across chains but sourced via the SDK so a
20
+ * Resolver addresses are constant across chains but sourced via the SDK so a
17
21
  * future chain with a divergent address can be added without code changes.
18
22
  */
19
23
  export declare const buildFluidCall: (chainId: string, _lender?: string) => {
@@ -21,16 +25,6 @@ export declare const buildFluidCall: (chainId: string, _lender?: string) => {
21
25
  name: string;
22
26
  params: never[];
23
27
  }[];
24
- /**
25
- * Variant that also pulls the Liquidity resolver overall token data.
26
- * Use when you need per-token utilization / rate curves separate from
27
- * what's already embedded in the vault response.
28
- */
29
- export declare const buildFluidCallWithLiquidity: (chainId: string) => {
30
- address: string;
31
- name: string;
32
- params: never[];
33
- }[];
34
28
  /**
35
29
  * Chunked fallback for chains where the single `getVaultsEntireData()` call
36
30
  * exceeds eth_call gas limits. Uses the cached vault address list from
@@ -1 +1 @@
1
- {"version":3,"file":"publicCallBuild.d.ts","sourceRoot":"","sources":["../../../../src/lending/public-data/fluid/publicCallBuild.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAE3B,QAAA,MAAQ,KAAK,uEAAW,CAAA;AAExB;oEACoE;AACpE,eAAO,MAAM,gBAAgB,KAAK,CAAA;AAElC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,EAAE,UAAU,MAAM;;;;GAW/D,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,GAAI,SAAS,MAAM;;;;GAY1D,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,GAAI,SAAS,MAAM;;;;GAWpD,CAAA;AAID,OAAO,EAAE,KAAK,EAAE,CAAA"}
1
+ {"version":3,"file":"publicCallBuild.d.ts","sourceRoot":"","sources":["../../../../src/lending/public-data/fluid/publicCallBuild.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAE3B,QAAA,MAAQ,KAAK,uEAAW,CAAA;AAExB;oEACoE;AACpE,eAAO,MAAM,gBAAgB,KAAK,CAAA;AAElC;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,EAAE,UAAU,MAAM;;;;GAgB/D,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,GAAI,SAAS,MAAM;;;;GAWpD,CAAA;AAID,OAAO,EAAE,KAAK,EAAE,CAAA"}
@@ -1,8 +1,33 @@
1
1
  import { AdditionalYields, GenericTokenList } from '../../../types';
2
2
  /**
3
- * Parser for the single-call Fluid public data fetch built by `buildFluidCall`.
3
+ * Per-token Liquidity-layer state relevant for the IRM.
4
4
  *
5
- * data[0] = VaultEntireData[] (from VaultResolver.getVaultsEntireData)
5
+ * `utilization` is `lastStoredUtilization` scaled to a 0-1 fraction. It is
6
+ * read from the same packed storage slot as the current borrow rate, so it is
7
+ * the exact x-coordinate on the token's rate curve that produced the rate —
8
+ * the canonical "current utilization" for IRM charts and simulations.
9
+ */
10
+ export interface FluidLiquidityTokenState {
11
+ /** Liquidity-layer utilization (0-1 fraction; the IRM input) */
12
+ utilization: number;
13
+ /** Liquidity revenue fee (0-1 fraction of borrow interest) */
14
+ fee: number;
15
+ /** Utilization cap (0-1 fraction; 1 when unset) */
16
+ maxUtilization: number;
17
+ /** Total token supply at the Liquidity layer (raw token units, string) */
18
+ totalSupply: string;
19
+ /** Total token borrow at the Liquidity layer (raw token units, string) */
20
+ totalBorrow: string;
21
+ /** Liquidity-layer borrow APR % */
22
+ borrowRate: number;
23
+ /** Liquidity-layer supply APR % */
24
+ supplyRate: number;
25
+ }
26
+ /**
27
+ * Parser for the two-call Fluid public data fetch built by `buildFluidCall`.
28
+ *
29
+ * data[0] = VaultEntireData[] (VaultResolver.getVaultsEntireData)
30
+ * data[1] = OverallTokenData[] (LiquidityResolver.getAllOverallTokensData)
6
31
  *
7
32
  * Emits one bucket per vault under lender key `FLUID_<vaultId>` (mirrors the
8
33
  * Morpho Blue pattern of one lender per isolated market).
@@ -1 +1 @@
1
- {"version":3,"file":"publicCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/public-data/fluid/publicCallParse.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAyBnE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,2BAA2B,GACtC,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,kBAAkB,gBAAgB,EAClC,YAAW,gBAAqB,KAC/B,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GAAG,SAAS,EAAE,MAAM,CA+BjE,CAAA"}
1
+ {"version":3,"file":"publicCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/public-data/fluid/publicCallParse.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAyBnE;;;;;;;GAOG;AACH,MAAM,WAAW,wBAAwB;IACvC,gEAAgE;IAChE,WAAW,EAAE,MAAM,CAAA;IACnB,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAA;IACX,mDAAmD;IACnD,cAAc,EAAE,MAAM,CAAA;IACtB,0EAA0E;IAC1E,WAAW,EAAE,MAAM,CAAA;IACnB,0EAA0E;IAC1E,WAAW,EAAE,MAAM,CAAA;IACnB,mCAAmC;IACnC,UAAU,EAAE,MAAM,CAAA;IAClB,mCAAmC;IACnC,UAAU,EAAE,MAAM,CAAA;CACnB;AA4CD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,2BAA2B,GACtC,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,kBAAkB,gBAAgB,EAClC,YAAW,gBAAqB,KAC/B,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GAAG,SAAS,EAAE,MAAM,CAmCjE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"publicCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/public-data/gearbox/publicCallParse.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAmBnE;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,+BAA+B,GAC1C,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,kBAAkB,gBAAgB,EAClC,YAAW,gBAAqB,KAC/B,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GAAG,SAAS,EAAE,MAAM,CA2RjE,CAAA"}
1
+ {"version":3,"file":"publicCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/public-data/gearbox/publicCallParse.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAmBnE;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,+BAA+B,GAC1C,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,kBAAkB,gBAAgB,EAClC,YAAW,gBAAqB,KAC/B,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GAAG,SAAS,EAAE,MAAM,CAqSjE,CAAA"}
@@ -64,8 +64,29 @@ export interface PoolData {
64
64
  totalDebtUSD: number;
65
65
  totalLiquidityUSD: number;
66
66
  borrowLiquidityUSD: number;
67
- /** Borrow utilization as a 0..1 fraction (totalDebt / totalDeposits). */
67
+ /**
68
+ * Borrow utilization as a 0..1 fraction — the IRM input for this market.
69
+ * Pool protocols: `totalDebt / totalDeposits` of the market itself.
70
+ * Shared-liquidity protocols (Fluid): the Liquidity-layer utilization of
71
+ * this row's token, since rates are set at that layer — never a
72
+ * vault-level ratio.
73
+ */
68
74
  utilization: number;
75
+ /**
76
+ * Fluid collateral rows only: share of the vault's collateral currently
77
+ * locked below the Liquidity-layer withdrawal limit
78
+ * (`withdrawLimit / totalSupplyVault`, 0..1).
79
+ */
80
+ lockupRatio?: number;
81
+ /**
82
+ * Totals in the IRM's own utilization basis (token units), for protocols
83
+ * where the rate curve is defined over a larger pool than this row:
84
+ * Aave V4 hub (`liquidity + drawn + swept` / `drawn`), Fluid Liquidity
85
+ * layer, Gearbox pool. `irmTotalDebt / irmTotalDeposits == utilization`.
86
+ * Rate-impact simulations must shift these, not the row totals.
87
+ */
88
+ irmTotalDeposits?: number;
89
+ irmTotalDebt?: number;
69
90
  depositRate: number;
70
91
  variableBorrowRate: number;
71
92
  stableBorrowRate: number;
@@ -1 +1 @@
1
- {"version":3,"file":"apiReturnType.d.ts","sourceRoot":"","sources":["../../src/types/apiReturnType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAE3C,MAAM,WAAW,UAAU;IAEzB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,gBAAgB,EAAE,MAAM,CAAA;IAExB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,MAAM,UAAU,GAAG;IAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAAA;CAAE,CAAA;AAE3D,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC7C,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,MAAM,WAAW,GAAG,WAAW,EAAE,CAAA;AAEvC,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,sBAAsB,EAAE,MAAM,CAAA;IAC9B,gBAAgB,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB;;;;;;OAMG;IACH,kBAAkB,EAAE,MAAM,CAAA;IAC1B;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED,UAAU,UAAU;IAClB,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAAA;CAChC;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,eAAe,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,YAAY,EAAE,MAAM,CAAA;IACpB,iBAAiB,EAAE,MAAM,CAAA;IACzB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,yEAAyE;IACzE,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,WAAW,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,UAAU,CAAA;IAClB,gBAAgB,EAAE,OAAO,CAAA;IACzB,gBAAgB,EAAE,OAAO,CAAA;IACzB,eAAe,EAAE,OAAO,CAAA;IACxB,SAAS,EAAE,OAAO,CAAA;IAClB,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB;;;;;;;OAOG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,CAAC,OAAO,EAAE,MAAM,GAAG;QACjB,IAAI,EAAE;YACJ,CAAC,MAAM,EAAE,MAAM,GAAG;gBAChB,IAAI,EAAE;oBACJ,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAA;iBAC3B,CAAA;gBACD,OAAO,EAAE,MAAM,CAAA;aAChB,CAAA;SACF,CAAA;QACD,WAAW,EAAE,MAAM,CAAA;KACpB,CAAA;CACF,CAAA"}
1
+ {"version":3,"file":"apiReturnType.d.ts","sourceRoot":"","sources":["../../src/types/apiReturnType.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/fluid/fetchPublic.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAMtE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEtC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,MAAM,EACf,gBAAgB,sBAAsB,EACtC,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,KAC/B,OAAO,CAAC,YAAY,CA2DtB,CAAA"}
1
+ {"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/fluid/fetchPublic.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAMtE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEtC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,MAAM,EACf,gBAAgB,sBAAsB,EACtC,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,KAC/B,OAAO,CAAC,YAAY,CA2DtB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1delta/margin-fetcher",
3
- "version": "0.0.321",
3
+ "version": "0.0.323",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "files": [
@@ -22,13 +22,13 @@
22
22
  "dependencies": {
23
23
  "async-retry": "^1.3.3",
24
24
  "lodash": "^4.17.23",
25
- "@1delta/abis": "0.0.22",
26
- "@1delta/dex-registry": "0.0.103",
25
+ "@1delta/abis": "0.0.23",
27
26
  "@1delta/calldata-sdk": "0.0.157",
28
- "@1delta/data-sdk": "0.0.30",
29
- "@1delta/providers": "0.0.62",
27
+ "@1delta/dex-registry": "0.0.103",
28
+ "@1delta/data-sdk": "0.0.31",
30
29
  "@1delta/lender-registry": "0.0.34",
31
- "@1delta/proxy-fetch": "0.0.1"
30
+ "@1delta/proxy-fetch": "0.0.1",
31
+ "@1delta/providers": "0.0.62"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@types/async-retry": "^1.4.9",