@1delta/margin-fetcher 5.0.50 → 5.0.51
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.
- package/dist/index.d.ts +536 -6
- package/dist/index.js +2046 -541
- package/dist/index.js.map +1 -1
- package/package.json +9 -9
package/dist/index.d.ts
CHANGED
|
@@ -53,7 +53,14 @@ type RewardsList$1 = RewardEntry$1[];
|
|
|
53
53
|
*/
|
|
54
54
|
interface OpenParameter {
|
|
55
55
|
/** Discriminator — how to interpret the matching `modes[posId]` value. */
|
|
56
|
-
|
|
56
|
+
/**
|
|
57
|
+
* Discriminator — how to interpret the matching `modes[posId]` value.
|
|
58
|
+
*
|
|
59
|
+
* `twyne-liq-ltv` is the IDENTITY case: the borrower's chosen value IS the
|
|
60
|
+
* liquidation threshold (1e4 on chain, a fraction here), so no `curve` is
|
|
61
|
+
* needed to price a position at its own parameter — see `identityMapping`.
|
|
62
|
+
*/
|
|
63
|
+
kind: 'llamalend-bands' | 'interest-rate' | 'twyne-liq-ltv';
|
|
57
64
|
/** Which of this config's numbers moves with the parameter. */
|
|
58
65
|
dimension: 'collateralFactor' | 'rate';
|
|
59
66
|
/** Allowed values: a continuous range, or a discrete set. */
|
|
@@ -90,6 +97,16 @@ interface OpenParameter {
|
|
|
90
97
|
curve?: {
|
|
91
98
|
[value: string]: number;
|
|
92
99
|
};
|
|
100
|
+
/**
|
|
101
|
+
* `true` ⇒ the parameter VALUE IS the moved dimension, so a consumer prices a
|
|
102
|
+
* position by using the value directly and needs neither a `curve` nor the
|
|
103
|
+
* default's numbers (Twyne: the borrower's chosen `twyneLiqLTV` IS the
|
|
104
|
+
* liquidation threshold). Without this flag a curve-less declaration falls
|
|
105
|
+
* back to the DEFAULT point, which for Twyne is the band's FLOOR — i.e. it
|
|
106
|
+
* would price every position as if it had bought no extra LTV at all, which
|
|
107
|
+
* is the entire product missing.
|
|
108
|
+
*/
|
|
109
|
+
identityMapping?: boolean;
|
|
93
110
|
}
|
|
94
111
|
interface ConfigEntry {
|
|
95
112
|
category: number;
|
|
@@ -1031,6 +1048,8 @@ type MarketConfigEntry = {
|
|
|
1031
1048
|
curve?: {
|
|
1032
1049
|
[value: string]: number;
|
|
1033
1050
|
};
|
|
1051
|
+
/** The value IS the moved dimension — no curve needed (Twyne). */
|
|
1052
|
+
identityMapping?: boolean;
|
|
1034
1053
|
};
|
|
1035
1054
|
};
|
|
1036
1055
|
type MarketConfigs = Record<string, MarketConfigEntry>;
|
|
@@ -4570,6 +4589,15 @@ interface TermMaxBookTop {
|
|
|
4570
4589
|
interface TermMaxMarketConfig {
|
|
4571
4590
|
/** Market contract — also the per-market lender-key body. */
|
|
4572
4591
|
market: string;
|
|
4592
|
+
/**
|
|
4593
|
+
* The router THIS market's API row points at — the **V1** router on every
|
|
4594
|
+
* live market (even `v2_01` ones), verified on-chain 2026-07-31. This is the
|
|
4595
|
+
* working `borrowTokenFromCollateral` surface: the V1 form takes the order
|
|
4596
|
+
* list directly, while the V2 router's form needs a whitelisted
|
|
4597
|
+
* `TermMaxSwapAdapter` that does not exist on Ethereum (and BNB/Arbitrum
|
|
4598
|
+
* have no V2 router at all). See TERMMAX.md → "The two routers".
|
|
4599
|
+
*/
|
|
4600
|
+
routerAddr?: string;
|
|
4573
4601
|
/** FT: the zero-coupon bond ERC-20. THE LEND POSITION. */
|
|
4574
4602
|
ft: string;
|
|
4575
4603
|
/** XT: the complement (`FT + XT = 1` debt token). */
|
|
@@ -5957,9 +5985,10 @@ interface SiloVault extends VaultClassificationFields {
|
|
|
5957
5985
|
* `displayName` for UI. */
|
|
5958
5986
|
name: string;
|
|
5959
5987
|
/** Cross-provider UI label — `${curatorName ?? 'Silo'} ${asset.symbol}`
|
|
5960
|
-
* (e.g. `
|
|
5961
|
-
*
|
|
5962
|
-
*
|
|
5988
|
+
* (e.g. `Turtle USDC`). `curatorName` is name-derived (heuristic) — the
|
|
5989
|
+
* indexer exposes only the curator ADDRESS — so this falls back to
|
|
5990
|
+
* `Silo <symbol>` when the vault name has no curator prefix. Always
|
|
5991
|
+
* non-empty. */
|
|
5963
5992
|
displayName: string;
|
|
5964
5993
|
/** Share and underlying decimals (ERC-4626 keeps them aligned). */
|
|
5965
5994
|
decimals: number;
|
|
@@ -9724,6 +9753,490 @@ declare const assetKey: (chainId: string | number, address: string) => string;
|
|
|
9724
9753
|
*/
|
|
9725
9754
|
declare function fetchPendleApiAssets(): Promise<Map<string, PendleApiAsset>>;
|
|
9726
9755
|
|
|
9756
|
+
/**
|
|
9757
|
+
* A Spectra Principal Token, modelled as a fixed-rate earn product.
|
|
9758
|
+
*
|
|
9759
|
+
* ## Why this is a provider and not an ERC-4626 vault
|
|
9760
|
+
*
|
|
9761
|
+
* A PT is a zero-coupon bond. Spectra's is **ERC-5095 + ERC-2612**, explicitly
|
|
9762
|
+
* NOT ERC-4626 — and the two entry points it does expose are not a fixed-rate
|
|
9763
|
+
* deposit:
|
|
9764
|
+
*
|
|
9765
|
+
* - `deposit()` mints PT **and** YT from the IBT. Holding both is just the IBT
|
|
9766
|
+
* re-wrapped; a fixed-rate position still requires selling the YT.
|
|
9767
|
+
* - `withdraw()` burns **both** back. It is not an exit from a PT-only
|
|
9768
|
+
* position.
|
|
9769
|
+
* - `redeem()` pays par, and only after `maturity`.
|
|
9770
|
+
*
|
|
9771
|
+
* So the only way to hold the fixed rate is to BUY the PT on its Curve
|
|
9772
|
+
* StableSwap-NG pool, and the only way out before maturity is to sell it there.
|
|
9773
|
+
* Every consequence the Pendle provider documents follows verbatim: no share
|
|
9774
|
+
* price, USD-denominated size, `liquidityUsd` is pool DEPTH rather than idle
|
|
9775
|
+
* cash, exclusion from `buildVaultLookup`, and a row that is only valid until
|
|
9776
|
+
* `expiry`.
|
|
9777
|
+
*
|
|
9778
|
+
* Field names deliberately mirror `PendlePtMarket` where the meaning is the
|
|
9779
|
+
* same (`expiry`, `supplyRate`, `impliedApyPercent`, `liquidityUsd`,
|
|
9780
|
+
* `withdrawalMode`), so the generic term-sheet and earn readers — which key off
|
|
9781
|
+
* names, not types — need no Spectra branch.
|
|
9782
|
+
*/
|
|
9783
|
+
interface SpectraPtMarket extends VaultClassificationFields {
|
|
9784
|
+
/** PT (PrincipalToken) address, lowercased. What a holder actually owns. */
|
|
9785
|
+
address: string;
|
|
9786
|
+
/**
|
|
9787
|
+
* The Curve StableSwap-NG pool, lowercased. Where the trade routes, and the
|
|
9788
|
+
* `liquidityUsd` denominator.
|
|
9789
|
+
*
|
|
9790
|
+
* Named `marketAddress` for parity with the Pendle row even though Spectra's
|
|
9791
|
+
* PT and pool are separate contracts (Pendle's "market" IS its AMM).
|
|
9792
|
+
*/
|
|
9793
|
+
marketAddress?: string;
|
|
9794
|
+
/**
|
|
9795
|
+
* Underlying/accounting asset address, lowercased — what the PT redeems for
|
|
9796
|
+
* at maturity, and the denomination of the fixed rate.
|
|
9797
|
+
*/
|
|
9798
|
+
underlying: string;
|
|
9799
|
+
/** YT address, lowercased. The complement that takes the floating yield. */
|
|
9800
|
+
ytAddress?: string;
|
|
9801
|
+
/**
|
|
9802
|
+
* The interest-bearing token the PT was minted from, lowercased.
|
|
9803
|
+
*
|
|
9804
|
+
* The analogue of Pendle's SY, but a plain ERC-4626 (or a
|
|
9805
|
+
* `Spectra4626Wrapper` over one) rather than a bespoke standard.
|
|
9806
|
+
*/
|
|
9807
|
+
ibtAddress?: string;
|
|
9808
|
+
/** The vault behind a wrapper IBT, when the IBT is a `Spectra4626Wrapper`. */
|
|
9809
|
+
baseIbtAddress?: string;
|
|
9810
|
+
/** PT symbol, e.g. `PT-stXRP(FXRP)-2026/12/31`. */
|
|
9811
|
+
symbol: string;
|
|
9812
|
+
/** Display name for the market. */
|
|
9813
|
+
name: string;
|
|
9814
|
+
/**
|
|
9815
|
+
* PT decimals.
|
|
9816
|
+
*
|
|
9817
|
+
* **NOT reliably the underlying's** — 2 of 36 live markets disagreed at
|
|
9818
|
+
* integration. The listing publishes both, so no inference is needed; a
|
|
9819
|
+
* market missing either is DROPPED rather than defaulted, since a wrong
|
|
9820
|
+
* value mis-scales every amount silently.
|
|
9821
|
+
*/
|
|
9822
|
+
decimals: number;
|
|
9823
|
+
/** Underlying asset decimals. */
|
|
9824
|
+
assetDecimals: number;
|
|
9825
|
+
/** Unix SECONDS, straight from the API's `maturity`. */
|
|
9826
|
+
expiry: number;
|
|
9827
|
+
/** ISO-8601 mirror, derived. Parity with the Pendle row's `expiryIso`. */
|
|
9828
|
+
expiryIso: string;
|
|
9829
|
+
/** Snapshot at fetch time — recompute from `expiry` for a live countdown. */
|
|
9830
|
+
secondsToExpiry: number;
|
|
9831
|
+
/** `secondsToExpiry` in days, rounded to 2dp. Convenience for display. */
|
|
9832
|
+
daysToExpiry: number;
|
|
9833
|
+
/**
|
|
9834
|
+
* The fixed yield to maturity, as a nominal APR percent.
|
|
9835
|
+
*
|
|
9836
|
+
* Converted from the pool's `impliedApy`, which is a compounded APY **already
|
|
9837
|
+
* in percent** — unlike Pendle, whose `details` block is fractions. Getting
|
|
9838
|
+
* that wrong is invisible: a doubled conversion yields 0.2 %, a missing one
|
|
9839
|
+
* yields nothing that looks out of place.
|
|
9840
|
+
*/
|
|
9841
|
+
supplyRate: number;
|
|
9842
|
+
/** Always 0 — SPECTRA emissions accrue to LPs and voters, never PT holders. */
|
|
9843
|
+
rewardsRate: number;
|
|
9844
|
+
/** `supplyRate + rewardsRate`. The headline. */
|
|
9845
|
+
depositRate: number;
|
|
9846
|
+
/** Spectra's own `impliedApy`, unconverted. Display parity with their app. */
|
|
9847
|
+
impliedApyPercent: number;
|
|
9848
|
+
/**
|
|
9849
|
+
* Spectra's `ptApy` — the rate a taker realises after price impact and fee,
|
|
9850
|
+
* as a compounded APY percent.
|
|
9851
|
+
*
|
|
9852
|
+
* **Always ≤ {@link impliedApyPercent}, and the gap measures pool thinness.**
|
|
9853
|
+
* On the deepest market they are 0.06 pp apart; on a $35 market, 9.4 pp; on
|
|
9854
|
+
* one Flare market `ptApy` is negative while the implied rate is positive.
|
|
9855
|
+
* A client that wants to show "what you would actually get" should show this
|
|
9856
|
+
* one — but ranking must use `supplyRate`, or a Spectra row and a Pendle row
|
|
9857
|
+
* in the same column would be answering different questions.
|
|
9858
|
+
*/
|
|
9859
|
+
executableApyPercent?: number;
|
|
9860
|
+
/**
|
|
9861
|
+
* The IBT's own floating yield (percent APR) — what a PT buyer GIVES UP.
|
|
9862
|
+
* Spectra's `ibt.apr.total`, often absent. Context, never the row's rate.
|
|
9863
|
+
*/
|
|
9864
|
+
underlyingApyPercent?: number;
|
|
9865
|
+
/**
|
|
9866
|
+
* Curve's static pool fee as a FRACTION of the traded amount, charged on
|
|
9867
|
+
* BOTH legs. Converted from the API's 1e10-scaled integer string.
|
|
9868
|
+
*/
|
|
9869
|
+
feeRate?: number;
|
|
9870
|
+
/**
|
|
9871
|
+
* Whole-market TVL in USD.
|
|
9872
|
+
*
|
|
9873
|
+
* `tvl.usd` where the API supplies it; otherwise `tvl.underlying × price`
|
|
9874
|
+
* from the caller's price map. **Nullable upstream** (1 of 36 at
|
|
9875
|
+
* integration), and a row sized at 0 sorts to the bottom rather than
|
|
9876
|
+
* disappearing — the quieter failure, hence the fallback.
|
|
9877
|
+
*/
|
|
9878
|
+
totalAssetsUsd: number;
|
|
9879
|
+
/** Same number. The cross-source sort field is `formatted`; see PendlePtMarket. */
|
|
9880
|
+
totalAssetsFormatted: number;
|
|
9881
|
+
/**
|
|
9882
|
+
* Pool depth in USD — what can actually be traded in or out right now.
|
|
9883
|
+
* For a PT this is the real exit constraint, not a solvency signal.
|
|
9884
|
+
*/
|
|
9885
|
+
liquidityUsd: number;
|
|
9886
|
+
/** TVL denominated in the underlying, which the API always supplies. */
|
|
9887
|
+
totalAssetsUnderlying?: number;
|
|
9888
|
+
/**
|
|
9889
|
+
* `ptRate` as a fraction of par — `1` means the PT redeems 1:1.
|
|
9890
|
+
*
|
|
9891
|
+
* **The number that says a Spectra PT is not an unconditional par claim.**
|
|
9892
|
+
* Spectra writes `ptRate` DOWN whenever the IBT loses value, and it can only
|
|
9893
|
+
* decrease; their own docs work the example where a halved IBT returns half
|
|
9894
|
+
* the deposit. So "redeems 1:1 at maturity" is the normal case, not the
|
|
9895
|
+
* guaranteed one, and this is the field that distinguishes them.
|
|
9896
|
+
*
|
|
9897
|
+
* 33 of 36 live markets read exactly 1 at integration.
|
|
9898
|
+
*/
|
|
9899
|
+
ptRate: number;
|
|
9900
|
+
/**
|
|
9901
|
+
* How far below par {@link ptRate} sits, in bps. `0` on a healthy market.
|
|
9902
|
+
*
|
|
9903
|
+
* Surfaced separately so a consumer can gate on it without knowing the
|
|
9904
|
+
* base-27 scale, and so a written-down market cannot be presented as a clean
|
|
9905
|
+
* fixed-rate bond just because its APY still parses.
|
|
9906
|
+
*/
|
|
9907
|
+
principalWriteDownBps: number;
|
|
9908
|
+
/** Permissionless — anyone can buy a PT. Always true; kept explicit. */
|
|
9909
|
+
isMintable: boolean;
|
|
9910
|
+
/** `market-sale`: exit is selling on the Curve pool at the prevailing price. */
|
|
9911
|
+
withdrawalMode: 'market-sale';
|
|
9912
|
+
/** Hydrated underlying metadata from the token list, if available. */
|
|
9913
|
+
asset?: GenericCurrency;
|
|
9914
|
+
/** USD price of one underlying unit, when a price map was supplied. */
|
|
9915
|
+
priceUsd?: number;
|
|
9916
|
+
/** USD price of one PT, from the pool's own quote when available. */
|
|
9917
|
+
ptPriceUsd?: number;
|
|
9918
|
+
/** PT price in units of the underlying — the discount that IS the yield. */
|
|
9919
|
+
ptPriceUnderlying?: number;
|
|
9920
|
+
/** Spectra's tags, e.g. `['stable']`. */
|
|
9921
|
+
categoryIds?: string[];
|
|
9922
|
+
/** The protocol behind the IBT, per Spectra, e.g. `Morpho`, `Yearn`. */
|
|
9923
|
+
protocol?: string;
|
|
9924
|
+
}
|
|
9925
|
+
/** Per-chain map, keyed by lowercased PT address (parity with the other providers). */
|
|
9926
|
+
type SpectraPtMarkets = {
|
|
9927
|
+
[ptAddress: string]: SpectraPtMarket;
|
|
9928
|
+
};
|
|
9929
|
+
|
|
9930
|
+
interface FetchSpectraPtOptions {
|
|
9931
|
+
/**
|
|
9932
|
+
* Include markets that have already matured. **Default `false`.**
|
|
9933
|
+
*
|
|
9934
|
+
* Same rule and same reasoning as the Pendle provider: a matured PT redeems
|
|
9935
|
+
* at par, so its forward yield is zero, while every rate field still carries
|
|
9936
|
+
* the last pre-expiry value. Serving those rows puts a stale fixed APY on top
|
|
9937
|
+
* of an APR-sorted list for a product that no longer exists.
|
|
9938
|
+
*
|
|
9939
|
+
* The Spectra-specific caveat is that this switch may have nothing to return.
|
|
9940
|
+
* The upstream listing appears to drop matured markets itself, so a holder of
|
|
9941
|
+
* a matured Spectra PT is not servable from this source at all — unlike
|
|
9942
|
+
* Pendle, whose `/markets/all` carries them. That is a gap in the data, not a
|
|
9943
|
+
* reason to leave the filter off.
|
|
9944
|
+
*/
|
|
9945
|
+
includeExpired?: boolean;
|
|
9946
|
+
/**
|
|
9947
|
+
* Clock override, unix seconds. Tests only — production always judges
|
|
9948
|
+
* maturity against the real clock, never against a cached flag.
|
|
9949
|
+
*/
|
|
9950
|
+
nowSecs?: number;
|
|
9951
|
+
}
|
|
9952
|
+
/**
|
|
9953
|
+
* Fetch every LIVE Spectra PT market on a chain, modelled as fixed-rate earn
|
|
9954
|
+
* products.
|
|
9955
|
+
*
|
|
9956
|
+
* **HTTP-only in every normal case, and normally ONE request.** Unlike Pendle
|
|
9957
|
+
* there is no global listing — the endpoint is per network — so this issues one
|
|
9958
|
+
* call per chain, cached in-isolate for 60 s and shared between concurrent
|
|
9959
|
+
* callers. Unlike Pendle there is also no second metadata endpoint to need: the
|
|
9960
|
+
* `/pools` response embeds decimals, symbol, name and icon for the PT, YT, IBT
|
|
9961
|
+
* and underlying alike, so the on-chain tier below fires only if that stops
|
|
9962
|
+
* being true.
|
|
9963
|
+
*
|
|
9964
|
+
* The multicall stays a last resort for the reason recorded in the Pendle
|
|
9965
|
+
* provider: viem's `allowFailure` returns `'0x'` per call rather than throwing
|
|
9966
|
+
* when the transport dies, so a decimals batch that fails does not error — it
|
|
9967
|
+
* silently empties a whole chain's listing.
|
|
9968
|
+
*
|
|
9969
|
+
* @param chainId target chain
|
|
9970
|
+
* @param multicallRetry last-resort decimals gap-fill only; normally unused
|
|
9971
|
+
* @param prices price map keyed by oracle key / address — also what
|
|
9972
|
+
* recovers a null `tvl.usd`
|
|
9973
|
+
* @param tokenList token list for PT + underlying metadata
|
|
9974
|
+
* @param options `includeExpired` and a test clock
|
|
9975
|
+
*
|
|
9976
|
+
* @returns map keyed by lowercased PT address; empty on chains without a
|
|
9977
|
+
* Spectra deployment.
|
|
9978
|
+
*/
|
|
9979
|
+
declare const fetchSpectraPtMarkets: (chainId: string, multicallRetry: MulticallRetryFunction, prices?: {
|
|
9980
|
+
[asset: string]: number;
|
|
9981
|
+
}, tokenList?: GenericTokenList, options?: FetchSpectraPtOptions) => Promise<SpectraPtMarkets>;
|
|
9982
|
+
|
|
9983
|
+
/**
|
|
9984
|
+
* Spectra V2 public market listing.
|
|
9985
|
+
*
|
|
9986
|
+
* Spectra (ex-APWine, npm org `perspectivefi`) is yield tokenisation with the
|
|
9987
|
+
* same shape as Pendle: an IBT (any yield-bearing ERC-4626) is split into a
|
|
9988
|
+
* **PT** — an ERC-5095 zero-coupon claim on the principal at `maturity` — and a
|
|
9989
|
+
* **YT** carrying the floating yield until then. The PT trades at a discount on
|
|
9990
|
+
* a rate-adjusted Curve StableSwap-NG pool, and that discount is the fixed rate.
|
|
9991
|
+
*
|
|
9992
|
+
* So this provider is the Pendle one with four substitutions, each of which is
|
|
9993
|
+
* a bug if assumed away — they are called out at the field that carries them:
|
|
9994
|
+
*
|
|
9995
|
+
* 1. the route key is a network NAME, not a chain id ({@link SPECTRA_NETWORKS});
|
|
9996
|
+
* 2. one request PER CHAIN, against Pendle's single global listing;
|
|
9997
|
+
* 3. rates arrive in PERCENT (Pendle's are fractions) and are APYs;
|
|
9998
|
+
* 4. `maturity` is unix SECONDS (Pendle's `expiry` is ISO-8601).
|
|
9999
|
+
*
|
|
10000
|
+
* **There is no documented API.** dev.spectra.finance publishes contracts,
|
|
10001
|
+
* oracles and MetaVaults; the endpoint below is the one app.spectra.finance
|
|
10002
|
+
* itself uses and its rate fields are defined nowhere. Everything asserted here
|
|
10003
|
+
* about their meaning was established by reproducing them from the published
|
|
10004
|
+
* prices — see {@link SpectraApiPool.impliedApy}.
|
|
10005
|
+
*
|
|
10006
|
+
* Docs: https://dev.spectra.finance/ · assessment: SPECTRA.md
|
|
10007
|
+
*/
|
|
10008
|
+
/**
|
|
10009
|
+
* Chain id → the network name the API routes on.
|
|
10010
|
+
*
|
|
10011
|
+
* **This mapping is hand-maintained and undiscoverable.** `/api/v1/1/pools` and
|
|
10012
|
+
* `/api/v1/ethereum/pools` both answer `400 {"error":"Invalid network"}`, and
|
|
10013
|
+
* there is no `/api/v1/networks` route to enumerate the valid names — so a new
|
|
10014
|
+
* Spectra deployment stays invisible until someone adds its name here. That is
|
|
10015
|
+
* the opposite of Pendle, whose global listing surfaces a new chain the moment
|
|
10016
|
+
* it exists.
|
|
10017
|
+
*
|
|
10018
|
+
* Verified live 2026-08-17: every name below answers 200. `polygon`, `linea`,
|
|
10019
|
+
* `gnosis`, `mode` and `fraxtal` are rejected, so Spectra is not on them under
|
|
10020
|
+
* any name we could find.
|
|
10021
|
+
*/
|
|
10022
|
+
declare const SPECTRA_NETWORKS: Readonly<Record<string, string>>;
|
|
10023
|
+
declare const spectraNetwork: (chainId: string) => string | undefined;
|
|
10024
|
+
declare const hasSpectraMarkets: (chainId: string) => boolean;
|
|
10025
|
+
declare const spectraPoolsUrl: (network: string) => string;
|
|
10026
|
+
/** A token as the listing embeds it. Decimals are always present. */
|
|
10027
|
+
interface SpectraApiToken {
|
|
10028
|
+
address?: string | null;
|
|
10029
|
+
chainId?: number | null;
|
|
10030
|
+
name?: string | null;
|
|
10031
|
+
symbol?: string | null;
|
|
10032
|
+
decimals?: number | null;
|
|
10033
|
+
logoURI?: string | null;
|
|
10034
|
+
/** The yield venue behind the IBT, e.g. `Morpho`, `Yearn`, `SMARDEX`. */
|
|
10035
|
+
protocol?: string | null;
|
|
10036
|
+
price?: {
|
|
10037
|
+
underlying?: number | null;
|
|
10038
|
+
usd?: number | null;
|
|
10039
|
+
} | null;
|
|
10040
|
+
/** IBT only — its own floating yield. **PERCENT**, and often `null`. */
|
|
10041
|
+
apr?: {
|
|
10042
|
+
total?: number | null;
|
|
10043
|
+
details?: Record<string, number | null> | null;
|
|
10044
|
+
} | null;
|
|
10045
|
+
/** IBT price in underlying, 1e18-ish fixed point as a decimal string. */
|
|
10046
|
+
rate?: string | null;
|
|
10047
|
+
spotRate?: string | null;
|
|
10048
|
+
}
|
|
10049
|
+
/**
|
|
10050
|
+
* One entry of `market.pools[]` — the Curve StableSwap-NG pool the PT trades on.
|
|
10051
|
+
*
|
|
10052
|
+
* Every live market carries exactly one (36/36 at integration), but the field
|
|
10053
|
+
* is an array and is read as one: {@link pickPool} takes the deepest rather
|
|
10054
|
+
* than `[0]`, so a second pool on a market cannot silently decide the rate.
|
|
10055
|
+
*/
|
|
10056
|
+
interface SpectraApiPool {
|
|
10057
|
+
address?: string | null;
|
|
10058
|
+
chainId?: number | null;
|
|
10059
|
+
/**
|
|
10060
|
+
* **The PT's fixed rate, as a compounded APY in PERCENT.**
|
|
10061
|
+
*
|
|
10062
|
+
* Established empirically, because nothing documents it: across all 36 live
|
|
10063
|
+
* markets on 7 chains this field reproduces
|
|
10064
|
+
* `((1 / ptPrice.underlying) ** (1 / yearsToMaturity) - 1) * 100`
|
|
10065
|
+
* to within float noise. It is the mid-price implied rate — the same quantity
|
|
10066
|
+
* as Pendle's `impliedApy`, in different units.
|
|
10067
|
+
*
|
|
10068
|
+
* See {@link ptApy} for the number that is NOT this.
|
|
10069
|
+
*/
|
|
10070
|
+
impliedApy?: number | null;
|
|
10071
|
+
/**
|
|
10072
|
+
* The rate a taker would actually realise — price impact and pool fee
|
|
10073
|
+
* included — as a compounded APY in PERCENT.
|
|
10074
|
+
*
|
|
10075
|
+
* **Not the market's rate, and not interchangeable with
|
|
10076
|
+
* {@link impliedApy}.** It is always the lower of the two, by an amount that
|
|
10077
|
+
* tracks pool thinness: 0.06 pp apart on the deepest market, 9.4 pp apart on
|
|
10078
|
+
* a $35 one, and on `PT-stXRP…2026/09/30` it is NEGATIVE (−0.06 %) while the
|
|
10079
|
+
* implied rate is +1.03 %. Carried through as
|
|
10080
|
+
* `SpectraPtMarket.executableApyPercent` because it is genuinely useful — it
|
|
10081
|
+
* is the honest "what you'd get" figure, which Pendle publishes nothing
|
|
10082
|
+
* equivalent to — but the row's `supplyRate` is the implied rate, so that a
|
|
10083
|
+
* Spectra row and a Pendle row mean the same thing when ranked together.
|
|
10084
|
+
*/
|
|
10085
|
+
ptApy?: number | null;
|
|
10086
|
+
/** LP-side total return, PERCENT. Neither PT nor YT earns this. */
|
|
10087
|
+
lpApy?: {
|
|
10088
|
+
total?: number | null;
|
|
10089
|
+
details?: Record<string, number | null> | null;
|
|
10090
|
+
} | null;
|
|
10091
|
+
/** YT leverage multiple. Not a rate. */
|
|
10092
|
+
ytLeverage?: number | null;
|
|
10093
|
+
liquidity?: {
|
|
10094
|
+
underlying?: number | null;
|
|
10095
|
+
usd?: number | null;
|
|
10096
|
+
} | null;
|
|
10097
|
+
ptPrice?: {
|
|
10098
|
+
underlying?: number | null;
|
|
10099
|
+
usd?: number | null;
|
|
10100
|
+
} | null;
|
|
10101
|
+
ytPrice?: {
|
|
10102
|
+
underlying?: number | null;
|
|
10103
|
+
usd?: number | null;
|
|
10104
|
+
} | null;
|
|
10105
|
+
/**
|
|
10106
|
+
* Curve's static pool fee — a **1e10-scaled integer string**, not a fraction
|
|
10107
|
+
* and not bps. `"1204544"` is 1.2 bps. `midFee` / `outFee` read 0 on every
|
|
10108
|
+
* live pool; `ibtToPtFee` / `ptToIbtFee` are the per-direction dynamic fees.
|
|
10109
|
+
*/
|
|
10110
|
+
feeRate?: string | null;
|
|
10111
|
+
midFee?: string | null;
|
|
10112
|
+
outFee?: string | null;
|
|
10113
|
+
ibtToPtFee?: string | null;
|
|
10114
|
+
ptToIbtFee?: string | null;
|
|
10115
|
+
/** `CURVE_SNG` on every live pool at integration. */
|
|
10116
|
+
type?: string | null;
|
|
10117
|
+
lpt?: {
|
|
10118
|
+
address?: string | null;
|
|
10119
|
+
decimals?: number | null;
|
|
10120
|
+
} | null;
|
|
10121
|
+
}
|
|
10122
|
+
/** One `pools[]` entry — a MARKET (the naming is the API's, not ours). */
|
|
10123
|
+
interface SpectraApiMarket {
|
|
10124
|
+
/** The PrincipalToken contract. This is what a holder owns. */
|
|
10125
|
+
address?: string | null;
|
|
10126
|
+
chainId?: number | null;
|
|
10127
|
+
/** PT name, e.g. `Principal Token: sw-WUSDN(USDN) 2027/01/12`. */
|
|
10128
|
+
name?: string | null;
|
|
10129
|
+
/** PT symbol, e.g. `PT-sw-WUSDN(USDN)-2027/01/12`. */
|
|
10130
|
+
symbol?: string | null;
|
|
10131
|
+
/** **PT decimals** — not the underlying's. See `SpectraPtMarket.decimals`. */
|
|
10132
|
+
decimals?: number | null;
|
|
10133
|
+
/** Unix SECONDS. */
|
|
10134
|
+
maturity?: number | null;
|
|
10135
|
+
createdAt?: number | null;
|
|
10136
|
+
/** `ptRate`, base-27. Starts at 1e27 and can only fall (negative-yield events). */
|
|
10137
|
+
rate?: string | null;
|
|
10138
|
+
tvl?: {
|
|
10139
|
+
ibt?: number | null;
|
|
10140
|
+
underlying?: number | null;
|
|
10141
|
+
usd?: number | null;
|
|
10142
|
+
} | null;
|
|
10143
|
+
yt?: SpectraApiToken | null;
|
|
10144
|
+
/** The interest-bearing token the PT is minted from. */
|
|
10145
|
+
ibt?: SpectraApiToken | null;
|
|
10146
|
+
/** The vault behind a `Spectra4626Wrapper` IBT, when the IBT is a wrapper. */
|
|
10147
|
+
baseIbt?: SpectraApiToken | null;
|
|
10148
|
+
/** What the PT redeems for at maturity, and the rate's denomination. */
|
|
10149
|
+
underlying?: SpectraApiToken | null;
|
|
10150
|
+
pools?: SpectraApiPool[] | null;
|
|
10151
|
+
maturityValue?: {
|
|
10152
|
+
underlying?: number | null;
|
|
10153
|
+
usd?: number | null;
|
|
10154
|
+
} | null;
|
|
10155
|
+
tags?: string[] | null;
|
|
10156
|
+
multipliers?: unknown;
|
|
10157
|
+
}
|
|
10158
|
+
/** Lowercased address, or `undefined` for anything that is not one. */
|
|
10159
|
+
declare const spectraAddress: (v: string | null | undefined) => string | undefined;
|
|
10160
|
+
/**
|
|
10161
|
+
* Is this market still live?
|
|
10162
|
+
*
|
|
10163
|
+
* **Judged against the clock, every time.** The listing appears to filter
|
|
10164
|
+
* matured markets already — zero of 36 had a past maturity on a protocol that
|
|
10165
|
+
* has been running V2 since 2024 — but that is an observation about today's
|
|
10166
|
+
* upstream behaviour, not a contract, and "the API already handles it" is
|
|
10167
|
+
* exactly the assumption `PENDLE_PT.md` §2 exists to refuse. A matured PT keeps
|
|
10168
|
+
* publishing its last pre-expiry implied APY, which on a rate-sorted earn list
|
|
10169
|
+
* puts a dead product on top.
|
|
10170
|
+
*
|
|
10171
|
+
* A market with no parseable maturity is NOT live: an unbounded fixed-rate row
|
|
10172
|
+
* is never the safe default.
|
|
10173
|
+
*/
|
|
10174
|
+
declare function isLiveSpectraMarket(market: SpectraApiMarket, nowSecs?: number): boolean;
|
|
10175
|
+
/**
|
|
10176
|
+
* Pick the pool that prices the market.
|
|
10177
|
+
*
|
|
10178
|
+
* The DEEPEST, not the first. Every live market has exactly one pool today, so
|
|
10179
|
+
* this never fires — which is why it is written now rather than after a second
|
|
10180
|
+
* pool quietly halves a published rate.
|
|
10181
|
+
*/
|
|
10182
|
+
declare function pickPool(pools: SpectraApiPool[] | null | undefined): SpectraApiPool | undefined;
|
|
10183
|
+
/**
|
|
10184
|
+
* Curve's 1e10-scaled fee integer → a FRACTION, the unit
|
|
10185
|
+
* `VaultTermInput.swapFeeRate` is documented in.
|
|
10186
|
+
*/
|
|
10187
|
+
declare function parseCurveFee(raw: string | null | undefined): number | undefined;
|
|
10188
|
+
/**
|
|
10189
|
+
* Bounds a published rate must clear to be believed, in PERCENT.
|
|
10190
|
+
*
|
|
10191
|
+
* **Spectra does not sanity-check its own rate fields.** HyperEVM publishes
|
|
10192
|
+
* `impliedApy: 549844464093797600` and `12307.1` on its two markets — raw fixed
|
|
10193
|
+
* point leaking through on pools holding $318 and $599 — and Hemi publishes
|
|
10194
|
+
* `null` for both rate fields. That is 3 of 36 markets, i.e. ~8 %, and an
|
|
10195
|
+
* unbounded value does not merely look odd: it takes the top of any
|
|
10196
|
+
* rate-sorted earn listing instantly.
|
|
10197
|
+
*
|
|
10198
|
+
* The floor is below zero on purpose. A PT trading ABOVE par is a real, if
|
|
10199
|
+
* unusual, market state and reporting it as such is correct; only the
|
|
10200
|
+
* impossible is rejected.
|
|
10201
|
+
*/
|
|
10202
|
+
declare const SPECTRA_RATE_MIN_PERCENT = -99;
|
|
10203
|
+
declare const SPECTRA_RATE_MAX_PERCENT = 1000;
|
|
10204
|
+
/**
|
|
10205
|
+
* A published rate, or `undefined` when it is absent or impossible.
|
|
10206
|
+
*
|
|
10207
|
+
* Callers DROP the market on `undefined` rather than substituting 0 — a
|
|
10208
|
+
* fixed-rate product whose rate we cannot establish is not an offer, and 0 %
|
|
10209
|
+
* is a specific claim rather than a neutral one.
|
|
10210
|
+
*/
|
|
10211
|
+
declare function sanePercent(v: number | null | undefined): number | undefined;
|
|
10212
|
+
/**
|
|
10213
|
+
* `ptRate` as a fraction of par (`1` = par, `0.5` = half).
|
|
10214
|
+
*
|
|
10215
|
+
* **This is the field that says a Spectra PT does NOT unconditionally redeem
|
|
10216
|
+
* 1:1.** Spectra's docs are explicit: "The `ptRate` starts as 1 and decreases
|
|
10217
|
+
* if the `ibtRate` … decreases. The `ptRate` can only decrease" — their own
|
|
10218
|
+
* worked example has a holder receive half their deposit back after the IBT
|
|
10219
|
+
* halves. Pendle carries the same economic exposure through its SY and
|
|
10220
|
+
* publishes no equivalent number, so this is strictly better disclosure, and it
|
|
10221
|
+
* is why the row surfaces {@link SpectraPtMarket.principalWriteDownBps}.
|
|
10222
|
+
*
|
|
10223
|
+
* It is also a live integrity check that costs nothing. The three markets whose
|
|
10224
|
+
* `impliedApy` is absent or nonsense (Hemi, both HyperEVM) are EXACTLY the
|
|
10225
|
+
* three whose `ptRate` has been written down to ~0 — two independent signals
|
|
10226
|
+
* agreeing that those rows are not offers.
|
|
10227
|
+
*/
|
|
10228
|
+
declare function parsePtRate(raw: string | null | undefined): number | undefined;
|
|
10229
|
+
/** Drop every cached listing. Tests only. */
|
|
10230
|
+
declare function clearSpectraMarketsCache(): void;
|
|
10231
|
+
/**
|
|
10232
|
+
* Fetch one network's live PT listing.
|
|
10233
|
+
*
|
|
10234
|
+
* Chain filtering, maturity filtering and normalization happen in
|
|
10235
|
+
* `fetchPublic`. A non-200 throws — the caller logs and omits the provider for
|
|
10236
|
+
* that chain rather than serving a partial listing as a complete one.
|
|
10237
|
+
*/
|
|
10238
|
+
declare function fetchSpectraApiMarkets(chainId: string): Promise<SpectraApiMarket[]>;
|
|
10239
|
+
|
|
9727
10240
|
/**
|
|
9728
10241
|
* Vault interface family, detected via ERC-165 `supportsInterface`.
|
|
9729
10242
|
*
|
|
@@ -9851,7 +10364,7 @@ declare function buildVaultLookup(data: VaultPublicDataAll): Map<string, VaultLo
|
|
|
9851
10364
|
* input (`parseEarnUid` on an action route's query param) can pass this as
|
|
9852
10365
|
* `knownProviders` instead of accepting any `vault.<x>` string.
|
|
9853
10366
|
*/
|
|
9854
|
-
declare const VAULT_PROVIDERS: readonly ["fluid", "gearbox", "morpho", "lista", "silo", "euler-earn", "termmax", "lst", "savings", "lagoon", "aave-earn", "upshift", "yearn", "hypercore", "gmx", "pendle"];
|
|
10367
|
+
declare const VAULT_PROVIDERS: readonly ["fluid", "gearbox", "morpho", "lista", "silo", "euler-earn", "termmax", "lst", "savings", "lagoon", "aave-earn", "upshift", "yearn", "hypercore", "gmx", "pendle", "spectra"];
|
|
9855
10368
|
type VaultProvider = (typeof VAULT_PROVIDERS)[number];
|
|
9856
10369
|
/**
|
|
9857
10370
|
* Per-provider payload returned by `getVaultPublicDataAll`. Each entry is
|
|
@@ -9905,6 +10418,13 @@ interface VaultPublicDataAll {
|
|
|
9905
10418
|
* size, and excluded from `buildVaultLookup` — the GMX/HyperCore
|
|
9906
10419
|
* precedent. */
|
|
9907
10420
|
pendle?: PendlePtMarkets;
|
|
10421
|
+
/** Spectra V2 Principal Tokens as fixed-rate earn products — one row per
|
|
10422
|
+
* LIVE market, keyed by lowercased PT address. Same instrument and same
|
|
10423
|
+
* rules as `pendle` (matured markets never included; pass
|
|
10424
|
+
* `spectraIncludeExpired` to override), over a rate-adjusted Curve
|
|
10425
|
+
* StableSwap-NG pool instead of Pendle's own AMM. Not a share token:
|
|
10426
|
+
* USD-denominated size, no share price, excluded from `buildVaultLookup`. */
|
|
10427
|
+
spectra?: SpectraPtMarkets;
|
|
9908
10428
|
}
|
|
9909
10429
|
interface GetVaultPublicDataAllOptions {
|
|
9910
10430
|
/** Narrow Silo to a single protocol version (`v2` or `v3`). */
|
|
@@ -9920,6 +10440,16 @@ interface GetVaultPublicDataAllOptions {
|
|
|
9920
10440
|
* APY, and that number is not an offer.
|
|
9921
10441
|
*/
|
|
9922
10442
|
pendleIncludeExpired?: boolean;
|
|
10443
|
+
/**
|
|
10444
|
+
* Include MATURED Spectra PT markets. Default `false`.
|
|
10445
|
+
*
|
|
10446
|
+
* Same rule as {@link pendleIncludeExpired}, with one caveat worth knowing
|
|
10447
|
+
* before relying on it: Spectra's listing appears to drop matured markets
|
|
10448
|
+
* upstream, so this switch may return nothing at all. The filter stays
|
|
10449
|
+
* regardless — "the API already handles it" is an observation about today,
|
|
10450
|
+
* not a contract.
|
|
10451
|
+
*/
|
|
10452
|
+
spectraIncludeExpired?: boolean;
|
|
9923
10453
|
}
|
|
9924
10454
|
/**
|
|
9925
10455
|
* Combined output of `getVaultPublicDataAll`: the rich per-provider
|
|
@@ -13315,4 +13845,4 @@ declare const fetchFluidDexState: (chainId: string, multicallRetry: MulticallRet
|
|
|
13315
13845
|
/** Synchronous read of whatever `fetchFluidDexState` last cached for a chain. */
|
|
13316
13846
|
declare const getCachedFluidDexState: (chainId: string) => FluidDexStateMap | undefined;
|
|
13317
13847
|
|
|
13318
|
-
export { type AaveMetadata, type AaveV2Public, type AaveV2UserReserveResponse, type AaveV3Public, type AaveV3UserReserveResponse, type AdditionalYields, type AdminKind, ApiBookSource, type AprData, type AprPercent, type AssetQuality, type AssetRiskIndex, type AuctionWindow, type AvailabilityTerms, type BalanceData, type BaseLendingPosition, type BasicReserveResponse, type BorrowExitTerms, type BorrowTermSheet, type BuildTermSheetOptions, type BuildVaultTermSheetOptions, type ChainDiagnostic, type ChainLinkResponse, type ChainQuery, type ChainSummary, type CompoundV2Metadata, type CompoundV3Public, type CompoundV3UserReserveResponse, type ConfigEntry, type ConvertLenderUserDataOptions, type CoreValidators, type CounterpartyTerms, type CoverageInfo, DEFAULT_MIDNIGHT_API, DEFAULT_OUTLIER_GUARD, DEFAULT_PROFILE_ID, DEFAULT_STALE_REJECT_SECONDS, DEFAULT_TERMMAX_API, type DeepPartial, type Denomination, type DepthMap, type DssMarketRaw, type DssMarketsRaw, type DssPositionInfo, EARN_DESCRIPTIONS, EARN_LABELS, EMPTY_BALANCE, type EModeAssets, type EModeData, type EModeResult, EXACTLY_LENDER_KEY, type EarnActionInput, type EarnActionKind, type EarnAmount, type EarnAppliedDefaults, type EarnAprBreakdown, type EarnAsset, type EarnAvailability, type EarnBasket, type EarnBasketLeg, type EarnCapability, type EarnCurator, type EarnExclusions, type EarnExit, type EarnFacetBucket, type EarnFacets, type EarnGating, type EarnLabelDimension, type EarnLendingPosition, type EarnMarket, type EarnMarketLabelInput, type EarnPosition, type EarnPositionAsset, type EarnPositionBase, type EarnPositionLeg, type EarnPositionSourceStatus, type EarnPositionSubAccount, type EarnPositionTotals, type EarnPositionUid, type EarnPositionsResponse, type EarnProtocol, type EarnProtocolAndCurator, type EarnRate, type EarnRateSource, type EarnRefs, type EarnResponse, type EarnRisk, type EarnShareToken, type EarnSourceStatus, type EarnVaultNormalizeOptions, type EarnVaultPosition, type EarnVenueKind, type EarnVocabulary, type EndpointFailure, type EnrichmentIndex, type EulerEarnVault, type EulerEarnVaults, type EulerV2Metadata, type ExactlyFixedPool, type ExactlyFixedPosition, type ExactlyMarketAccount, type ExactlyMarketsRaw, type ExactlyUserFixedPosition, type ExposureEntry, type ExposureTerms, type ExtraValidationCall, FRACTION_RATE_PROVIDERS, type FeeTerm, type FeeWhen, type FeedObservation, type FeedStat, type FeedStatsMap, type FeedTimestampMap, type FetchListaVaultsFromChainOptions, type FetchMorphoVaultsFromChainOptions, type FetchOraclePricesOptions, type FetchPendlePtOptions, type FetchTokenBalancesOptions, type FlattenPriorityConfig, type FluidDexShareState, type FluidDexStateMap, type FluidFToken, type FluidFTokens, type FrankencoinMarketRaw, type FrankencoinMarketsRaw, type FrankencoinPositionInfo, type FraxlendPairRaw, type FraxlendPairsRaw, type FullLenderRewardsMap, GMX_API_HOSTS, GMX_READ_CONTRACTS, GMX_SUPPORTED_CHAINS, type GenericCurrency, type GenericTokenList, type GetVaultPublicDataAllOptions, type GmxExecutionFees, type GmxPendingDeposit, type GmxPendingWithdrawal, type GmxReadContracts, type GmxUserBalance, type GmxUserPositions, type GmxUserPositionsOptions, type GmxVault, type GmxVaultKind, type GmxVaults, type GmxVaultsFetchOptions, type GovernancePower, type GovernanceRow, type GovernanceTerms, type GroupAccumulator, HYPERCORE_VAULT_REGISTRY, type HypercoreLockStatus, type HypercoreUserPositionsOptions, type HypercoreVault, type HypercoreVaultPosition, type HypercoreVaultRegistryEntry, type HypercoreVaults, type HypercoreVaultsFetchOptions, IDLE_MARKET_ID, INTERFACE_IDS, type IncompleteLenderRead, type IncompleteReason, type InitMetadata, type InitPublic, type InitUserReserveResponse, type InterfaceKind, type InvariantViolation, type InverseMarketRaw, type InverseMarketsRaw, type InversePositionInfo, LAGOON_API_URL, LAGOON_CHAIN_IDS, type LagoonApiVault, type LagoonSyncMode, type LagoonVault, type LagoonVaults, type LenderAssetReward, type LenderConfigData, type LenderConfigMap, type LenderCrossPoolMeta, type LenderData, type LenderDataEntry, type LenderInfo, type LenderInfoMap, type LenderPublicBase, type LenderRewardsMap, type LenderSummary, type LenderToLenderCrossPoolMeta, type LenderTotalAmounts, type LenderUserQuery, type LenderUserResponse, type LenderYieldComplete, type LenderYields$1 as LenderYields, LendingMode, type LiquidationPenaltyTerm, type LiquidationTerms, type LiquityBranchRaw, type LiquityDiscoveredTrove, type LiquityDiscovery, type LiquityMarketsRaw, type LiquitySpInfo, type LiquityTroveInfo, type ListaMarketOverrides, type LlamaLendMarketOverride, type LlamaLendMarketOverrides, type LlamaLendMarketRaw, type LlamaLendMarketsRaw, type LlamaLendPositionInfo, type LoopPostTradeMetrics, type LstDelegation, type LstDelegationKind, type LstValidator, type LstWithdrawalFetchOptions, type LstWithdrawalRegistryEntry, type LstWithdrawalRequest, type LstWithdrawalRequestsByLst, type LstWithdrawalStatus, MORPHO_LENS, MULTICALL_FAILURE, type MaturityTerms, MaxParamThresholds, type MergedUserData, type MidnightBook, type MidnightBookLevel, type MidnightBookSource, type ModeBase, type ModeVariant, type MorphoMarketOverrides, type MorphoSubgraphProxyConfig, type MorphoUserMarketBalance, type MorphoUserReserveResponse, type MorphoVault, type MorphoVaults, type MulticallEndpointOptions, type MulticallRpcBatch, type NumberMap, type Open, type OracleBand, type OracleDiagnostics, type OraclePriceEntry, type OraclePricesResult, type OracleRiskRow, type OracleTerms, type OutlierGuardConfig, PASSTHROUGH_RATE_EPSILON, PENDLE_ASSETS_URL, PENDLE_CHAIN_IDS, PENDLE_MARKETS_URL, type ParsedBalanceData, type ParsedEarnUid, type ParsedLendingEarnUid, type ParsedResponse, type ParsedUserBalance, type ParsedVaultEarnUid, type PendleApiAsset, type PendleApiMarket, type PendleApiMarketDetails, type PendlePtMarket, type PendlePtMarkets, type PermissionKind, type PermissionParams, type PoolData, type PoolSourceRow, type PoolWithMeta, type PortfolioSummary, type PortfolioTotals, type PositionConstraints, type PostTradeMetrics, type PreparedCall, type PreparedMergedMulticallParams, type PreparedMergedRpcCalls, type PreparedTokenBalanceRpcCalls, type PreparedUserDataRpcCalls, type PriceDerivation, type PriceSelection, type ProtocolParams, type ProviderOptions, type RateKind, type RateMenuEntry, type RateTerms, type RawRpcBatch, type RawRpcCall, type RawRpcResponse, type ReadFailurePolicy, type RedemptionTerms, type ResupplyMarketsRaw, type ResupplyPairIdentity, type ResupplyPairRaw, type ResupplyPositionInfo, type ResupplyWrappedMarket, type RewardSourceRef, type RewardStream, type RewardTerm, type RewardTokenRef, type RiverMarketRaw, type RiverMarketsRaw, type RiverPositionInfo, SDK_FRACTION_RATE_PROVIDERS, STABLECOIN_SYMBOLS, STCELO_MANAGER_ADDRESS, type SelectPricesOptions, type Severity, type SeverityFinding, type SiloVault, type SiloVaults, type StCeloValidatorGroup, type StaleFeedEntry, type StampOptions, type StructuredOraclePrices, type SubAccountSummary, type SumerPositionInput, type SummaryAprData, type SummaryBalanceData, type SupplyExitMode, type SupplyExitTerms, type SupplyTermSheet, TELLER_CALLS_PER_BID, TERMMAX_CALLS_PER_ACCOUNT, DECIMAL_BASE as TERMMAX_DECIMAL_BASE, TERMMAX_LIQUIDATION_PENALTY, TERMMAX_LIQUIDATION_WINDOW_SECS, TERMMAX_LIQUIDATOR_BONUS, TERMMAX_PARTIAL_CLOSE_FACTOR, TERMMAX_PARTIAL_LIQUIDATION_THRESHOLD_USD, TERM_ADAPTERS, TERM_PROFILES, TERM_SHEET_SCHEMA_VERSION, type TellerDiscoveredBid, type TellerDiscovery, type TellerMarketsRaw, type TellerPoolRaw, type TermAdapter, type TermAssetRef, type TermAuctionOrder, type TermAuctionOrders, type TermBookSource, type TermBookTop, type TermInfo, type TermListing, type TermMarketRaw, TermMaxApiSource, type TermMaxBookTop, type TermMaxCurveSegment, type TermMaxDataSource, type TermMaxDiscovery, type TermMaxFeeConfig, type TermMaxMarketConfig, type TermMaxMarketRaw, type TermMaxOrderState, type TermProfile, type TermSheet, type TermSheetDigest, type TermSheetInput, type TermSheetViolation, TermSubgraphSource, type TermTag, type TokenApprovalMeta, type TokenApprovalParams, type TokenBalanceEntry, type TokenBalanceQuery, type TokenBalanceResult, type TokenEntry, type TokenList, type TokenListInput, type TrackerDiagnostic, UPSHIFT_CHAIN_IDS, UPSHIFT_VAULTS_URL, type USDPriceMap, type UpshiftApiAsset, type UpshiftApiVault, type UpshiftVault, type UpshiftVaults, type UsddMarketRaw, type UsddMarketsRaw, type DssPositionInfo as UsddPositionInfo, type UserApr, type UserConfig, type UserData, type UserDataResult, type UserLendingPosition, type UtilizationTerms, VAULT_PROVIDERS, VAULT_PROVIDER_PROFILE, VAULT_PROVIDER_TRAITS, VAULT_SHARE_PRICE_PROBE, VAULT_VENUE_PREFIX, VOLATILE_VAULT_OVERRIDES, type ValidationResult, type VaultAprResult, type VaultBalanceInput, type VaultClassification, type VaultClassificationFields, type VaultLookupEntry, type VaultMarketExposure, type VaultProvider, type VaultProviderTraits, type VaultPublicDataAll, type VaultPublicDataResult, type VaultSourceRow, type VaultTermInput, type VaultYieldSeries, type VaultYieldSnapshot, type YDaemonVault, YEARN_CHAIN_IDS, YEARN_YDAEMON_BASE, type YearnVault, type YearnVaultKind, type YearnVaults, type YieldProfile, __resetResupplyUserCaches, accountDepositListKey, accountWithdrawalListKey, appendSnapshot, applyPositionDelta, attachImplications, attachPricesToFlashLiquidity, borrowDescription, borrowFindings, borrowHeadline, buildExposures, buildFluidFTokensCall, buildLendingPositionUid, buildLiquityUserCall, buildLoopResult, buildMorphoTypeCall, buildMorphoTypeUserCallWithLens, buildPortfolioTotals, buildSumerAccumulators, buildSummaries, buildTellerUserCall, buildTermMaxUserCall, buildTermSheet, buildTermSheetsForGroup, buildVaultEarnUid, buildVaultLookup, buildVaultTermSheet, calculateLeverage, calculateNetApr, calculateOverallNetApr, calculateWeightedAverage, classifyFreshness, classifyReliability, classifyVault, clearPendleMarketsCache, collateralSymbolsByVenue, collectFeedObservations, computeBorrowDelta, computeCloseTradeDeltas, computeCollateralSwapDeltas, computeDebtSwapDeltas, computeDepositDelta, computeEModeAnalysis, computeOpenTradeDeltas, computePostTradeMetrics, computeRepayDelta, computeSumerBorrowDelta, computeSumerDepositDelta, computeSumerRepayDelta, computeSumerWaterfall, computeSumerWithdrawDelta, computeVaultApr, computeWithdrawDelta, computeZapTradeDeltas, consensusReference, convertDssMarketsToResponse, convertExactlyMarketsToResponse, convertFrankencoinMarketsToResponse, convertFraxlendPairsToResponse, convertInverseMarketsToResponse, convertLenderUserDataResult, convertLiquityMarketsToResponse, convertLlamaLendMarketsToResponse, convertResupplyMarketsToResponse, convertRiverMarketsToResponse, convertTellerMarketsToResponse, convertTermMarketsToResponse, convertTermMaxMarketsToResponse, convertUsddMarketsToResponse, createMarketUid, createMidnightBookSource, createMulticallRpcCall, createRawRpcCalls, createTermBookSource, createTermMaxDataSource, decodeListaMarkets, decodeMarkets, decodePackedListaUserDataset, decodePackedMorphoUserDataset, deriveBorrowTags, deriveSupplyTags, detectInterfaceKinds, dexResolverFor, disambiguateEarnNames, dssIlkBytes32, dssKeyParts, dssLenderKey, duration, earnDescription, earnLabel, earnMarketFromPool, earnMarketFromVault, earnMarketLabel, earnPositionFromLenderEntry, earnPositionFromVaultBalance, earnPositionTotals, earnRowSubtitle, earnUidFromMarketUid, earnVaultTerms, earnVenueKind, encodeBalanceFetcherCalldata, enrichTermSheet, enrichmentIndexFromRows, exactlyPairLtv, exactlyPenaltyRateToAprPercent, exactlyWadRateToPercent, feePhrase, feedKeyOf, feedStatKey, fetchDolomiteAccountNumbers, fetchDssMarkets, fetchEulerEarnVaults, fetchEulerEarnVaultsFromSubgraph, fetchEulerSubAccountIndexes, fetchExactlyMarkets, fetchFlashLiquidityForChain, fetchFluidDexState, fetchFluidFTokens, fetchFrankencoinMarkets, fetchFraxlendPairs, fetchGeneralYields, fetchGeneralYieldsByMarketUid, fetchGmxExecutionFees, fetchGmxTickerPrices, fetchGmxVaults, fetchHypercoreVaults, fetchInverseMarkets, fetchLagoonApiVaults, fetchLagoonVaults, fetchLiquityMarkets, fetchListaVaultsFromChain, fetchLlamaLendMarkets, fetchMorphoUserBalances, fetchMorphoUserPositionMarkets, fetchMorphoVaults, fetchMorphoVaultsFromApi, fetchMorphoVaultsFromChain, fetchOraclePrices, fetchPendleApiAssets, fetchPendleApiMarkets, fetchPendlePrices, fetchPendlePtMarkets, fetchResupplyMarkets, fetchRiverMarkets, fetchSiloVaults, fetchTellerMarkets, fetchTermMarkets, fetchTermMaxMarkets, fetchTokenBalances, fetchTokenMetadata, fetchUpshiftApiVaults, fetchUpshiftVaults, fetchUsddMarkets, fetchYearnApiVaults, fetchYearnVaults, filterActiveLenders, filterLendersByProtocol, finalizeInfo, findingsFor, formatRaw, frankencoinKeyParts, frankencoinLenderKey, fraxlendAssetPerCollateral, fraxlendKeyParts, fraxlendLenderKey, fuseLenderData, generateLendingPools, getAavesForChain, getAssetConfig, getBalanceForMarketUid, getBorrowCapacity, getCachedFluidDexState, getCachedLiquityTroves, getCachedTellerBids, getCachedTermMaxDiscovery, getCachedTermMaxMarket, getCachedTermMaxMarkets, getCoreValidators, getFluidFTokensConverter, getGmxApiHost, getGmxReadContracts, getGmxUserPositions, getHealthFactor, getHypercoreUserPositions, getHypercoreVaultRegistry, getLenderAssets, getLenderPublicData, getLenderPublicDataAll, getLenderPublicDataViaApi, getLenderUserDataMulti, getLenderUserDataResult, getLendersForChain, getLstDelegation, getLstValidators, getLstWithdrawalRegistry, getLstWithdrawalRequests, getMaxAmountClose, getMaxAmountCollateralSwap, getMaxAmountDebtSwap, getMaxAmountOpen, getMergedUserData, getMorphoTypeMarketConverter, getReadFailurePolicy, getResolvedDolomiteAccountNumbers, getStCeloValidatorGroups, getSubAccountAddress, getSubAccountIndex, getTermProfile, getVaultPublicDataAll, getVaultWithdrawalRequests, hasCritical, hasEulerEarnVaultSubgraph, hasLagoonVaults, hasMorphoPositionIndex, hasMorphoUserApi, hasMorphoUserSubgraph, hasPendleMarkets, hasUpshiftVaults, hasYearnVaults, ilkToKeySegment, implausibleRatePercent, inverseKeyParts, inverseLenderKey, isBoundNeed, isFailedCall, isIlliquid, isLendingPosition, isLiveMarket as isLivePendleMarket, isStablecoinSymbol, isVaultPosition, isVaultVenue, isYearnV3, keySegmentToIlk, keysFromMaps, lenderApiOnly, lenderFamily, liquityCandidateTroveIds, liquityKeyParts, liquityLenderKey, llamaLendKeyParts, llamaLendLenderKey, mergeDeep, multicall3Abi, nanTo, needsLenderApproval, needsTokenApproval, noOpResult, normalizeToBytes, parseBalanceFetcherResult, parseEarnUid, parseMergedResult, parseMulticallRpcResponses, parseExpirySeconds as parsePendleExpirySeconds, parseRawRpcBatchResponses, parseRawRpcResponses, parseTermMaxLtv, parseTokenBalanceResult, pct, assetKey as pendleAssetKey, positivePart, predictInverseEscrow, prepareLenderUserDataRpcCalls, prepareMergedMulticallParams, prepareMergedRpcCalls, prepareMulticallInputs, prepareTokenBalanceRpcCalls, priceGlvVaults, priceGmMarkets, probeAaveFeedTimestamps, pruneFeedStats, rankFindings, ratePercent, readVaultSharePrices, rejectOutliers as rejectPriceOutliers, resolveAdapter, resolveDerivation, resolveEarnIdentity, resolveModeConfig, resolveStCeloDepositGroup, resolveVaultProfileId, resupplyKeyParts, resupplyLenderKey, resupplyMarketLabel, riverKeyParts, riverLenderKey, savingsAddresses, savingsBalanceKind, selectAssetGroupPrices, shortDate, splitChainScopedAddress as splitPendleChainScopedAddress, stampCapabilities, stampEarnSubtitles, stampVaultClassification, stampVaultTermSheets, stripLeadingBrand, supplyDescription, supplyFindings, supplyHeadline, swapRoutedProvidersArePriceConsistent, tellerBpsToPercent, tellerImpliedLtv, tellerLenderKey, tellerPoolFromLenderKey, termLenderKey, termMaxApiBase, borrowNif as termMaxBorrowNif, curveApr as termMaxCurveApr, curveAprNumber as termMaxCurveAprNumber, daysToMaturity as termMaxDaysToMaturity, lendNif as termMaxLendNif, mintGtFeeRatio as termMaxMintGtFeeRatio, ratioToNumber as termMaxRatioToNumber, ratioToPercent as termMaxRatioToPercent, tickToAprNumber, tickToPrice, toDigest, toTermSheetInput, toVaultTermInput, trancheFromCounterparty, tryParseEarnUid, unflattenLenderData, updateFeedStats, usdValue, usddIlkBytes32, usddKeyParts, usddLenderKey, validateTermSheet, validateTermSheets, validateUserData, vaultSharesToAssets, vaultTermInputFromEarnMarket, vaultTermInputFromSourceRow, vaultTraits, vaultVenue, venueBrand, venueBrandKey, withMaturityLabel, withTrancheLabel };
|
|
13848
|
+
export { type AaveMetadata, type AaveV2Public, type AaveV2UserReserveResponse, type AaveV3Public, type AaveV3UserReserveResponse, type AdditionalYields, type AdminKind, ApiBookSource, type AprData, type AprPercent, type AssetQuality, type AssetRiskIndex, type AuctionWindow, type AvailabilityTerms, type BalanceData, type BaseLendingPosition, type BasicReserveResponse, type BorrowExitTerms, type BorrowTermSheet, type BuildTermSheetOptions, type BuildVaultTermSheetOptions, type ChainDiagnostic, type ChainLinkResponse, type ChainQuery, type ChainSummary, type CompoundV2Metadata, type CompoundV3Public, type CompoundV3UserReserveResponse, type ConfigEntry, type ConvertLenderUserDataOptions, type CoreValidators, type CounterpartyTerms, type CoverageInfo, DEFAULT_MIDNIGHT_API, DEFAULT_OUTLIER_GUARD, DEFAULT_PROFILE_ID, DEFAULT_STALE_REJECT_SECONDS, DEFAULT_TERMMAX_API, type DeepPartial, type Denomination, type DepthMap, type DssMarketRaw, type DssMarketsRaw, type DssPositionInfo, EARN_DESCRIPTIONS, EARN_LABELS, EMPTY_BALANCE, type EModeAssets, type EModeData, type EModeResult, EXACTLY_LENDER_KEY, type EarnActionInput, type EarnActionKind, type EarnAmount, type EarnAppliedDefaults, type EarnAprBreakdown, type EarnAsset, type EarnAvailability, type EarnBasket, type EarnBasketLeg, type EarnCapability, type EarnCurator, type EarnExclusions, type EarnExit, type EarnFacetBucket, type EarnFacets, type EarnGating, type EarnLabelDimension, type EarnLendingPosition, type EarnMarket, type EarnMarketLabelInput, type EarnPosition, type EarnPositionAsset, type EarnPositionBase, type EarnPositionLeg, type EarnPositionSourceStatus, type EarnPositionSubAccount, type EarnPositionTotals, type EarnPositionUid, type EarnPositionsResponse, type EarnProtocol, type EarnProtocolAndCurator, type EarnRate, type EarnRateSource, type EarnRefs, type EarnResponse, type EarnRisk, type EarnShareToken, type EarnSourceStatus, type EarnVaultNormalizeOptions, type EarnVaultPosition, type EarnVenueKind, type EarnVocabulary, type EndpointFailure, type EnrichmentIndex, type EulerEarnVault, type EulerEarnVaults, type EulerV2Metadata, type ExactlyFixedPool, type ExactlyFixedPosition, type ExactlyMarketAccount, type ExactlyMarketsRaw, type ExactlyUserFixedPosition, type ExposureEntry, type ExposureTerms, type ExtraValidationCall, FRACTION_RATE_PROVIDERS, type FeeTerm, type FeeWhen, type FeedObservation, type FeedStat, type FeedStatsMap, type FeedTimestampMap, type FetchListaVaultsFromChainOptions, type FetchMorphoVaultsFromChainOptions, type FetchOraclePricesOptions, type FetchPendlePtOptions, type FetchSpectraPtOptions, type FetchTokenBalancesOptions, type FlattenPriorityConfig, type FluidDexShareState, type FluidDexStateMap, type FluidFToken, type FluidFTokens, type FrankencoinMarketRaw, type FrankencoinMarketsRaw, type FrankencoinPositionInfo, type FraxlendPairRaw, type FraxlendPairsRaw, type FullLenderRewardsMap, GMX_API_HOSTS, GMX_READ_CONTRACTS, GMX_SUPPORTED_CHAINS, type GenericCurrency, type GenericTokenList, type GetVaultPublicDataAllOptions, type GmxExecutionFees, type GmxPendingDeposit, type GmxPendingWithdrawal, type GmxReadContracts, type GmxUserBalance, type GmxUserPositions, type GmxUserPositionsOptions, type GmxVault, type GmxVaultKind, type GmxVaults, type GmxVaultsFetchOptions, type GovernancePower, type GovernanceRow, type GovernanceTerms, type GroupAccumulator, HYPERCORE_VAULT_REGISTRY, type HypercoreLockStatus, type HypercoreUserPositionsOptions, type HypercoreVault, type HypercoreVaultPosition, type HypercoreVaultRegistryEntry, type HypercoreVaults, type HypercoreVaultsFetchOptions, IDLE_MARKET_ID, INTERFACE_IDS, type IncompleteLenderRead, type IncompleteReason, type InitMetadata, type InitPublic, type InitUserReserveResponse, type InterfaceKind, type InvariantViolation, type InverseMarketRaw, type InverseMarketsRaw, type InversePositionInfo, LAGOON_API_URL, LAGOON_CHAIN_IDS, type LagoonApiVault, type LagoonSyncMode, type LagoonVault, type LagoonVaults, type LenderAssetReward, type LenderConfigData, type LenderConfigMap, type LenderCrossPoolMeta, type LenderData, type LenderDataEntry, type LenderInfo, type LenderInfoMap, type LenderPublicBase, type LenderRewardsMap, type LenderSummary, type LenderToLenderCrossPoolMeta, type LenderTotalAmounts, type LenderUserQuery, type LenderUserResponse, type LenderYieldComplete, type LenderYields$1 as LenderYields, LendingMode, type LiquidationPenaltyTerm, type LiquidationTerms, type LiquityBranchRaw, type LiquityDiscoveredTrove, type LiquityDiscovery, type LiquityMarketsRaw, type LiquitySpInfo, type LiquityTroveInfo, type ListaMarketOverrides, type LlamaLendMarketOverride, type LlamaLendMarketOverrides, type LlamaLendMarketRaw, type LlamaLendMarketsRaw, type LlamaLendPositionInfo, type LoopPostTradeMetrics, type LstDelegation, type LstDelegationKind, type LstValidator, type LstWithdrawalFetchOptions, type LstWithdrawalRegistryEntry, type LstWithdrawalRequest, type LstWithdrawalRequestsByLst, type LstWithdrawalStatus, MORPHO_LENS, MULTICALL_FAILURE, type MaturityTerms, MaxParamThresholds, type MergedUserData, type MidnightBook, type MidnightBookLevel, type MidnightBookSource, type ModeBase, type ModeVariant, type MorphoMarketOverrides, type MorphoSubgraphProxyConfig, type MorphoUserMarketBalance, type MorphoUserReserveResponse, type MorphoVault, type MorphoVaults, type MulticallEndpointOptions, type MulticallRpcBatch, type NumberMap, type Open, type OracleBand, type OracleDiagnostics, type OraclePriceEntry, type OraclePricesResult, type OracleRiskRow, type OracleTerms, type OutlierGuardConfig, PASSTHROUGH_RATE_EPSILON, PENDLE_ASSETS_URL, PENDLE_CHAIN_IDS, PENDLE_MARKETS_URL, type ParsedBalanceData, type ParsedEarnUid, type ParsedLendingEarnUid, type ParsedResponse, type ParsedUserBalance, type ParsedVaultEarnUid, type PendleApiAsset, type PendleApiMarket, type PendleApiMarketDetails, type PendlePtMarket, type PendlePtMarkets, type PermissionKind, type PermissionParams, type PoolData, type PoolSourceRow, type PoolWithMeta, type PortfolioSummary, type PortfolioTotals, type PositionConstraints, type PostTradeMetrics, type PreparedCall, type PreparedMergedMulticallParams, type PreparedMergedRpcCalls, type PreparedTokenBalanceRpcCalls, type PreparedUserDataRpcCalls, type PriceDerivation, type PriceSelection, type ProtocolParams, type ProviderOptions, type RateKind, type RateMenuEntry, type RateTerms, type RawRpcBatch, type RawRpcCall, type RawRpcResponse, type ReadFailurePolicy, type RedemptionTerms, type ResupplyMarketsRaw, type ResupplyPairIdentity, type ResupplyPairRaw, type ResupplyPositionInfo, type ResupplyWrappedMarket, type RewardSourceRef, type RewardStream, type RewardTerm, type RewardTokenRef, type RiverMarketRaw, type RiverMarketsRaw, type RiverPositionInfo, SDK_FRACTION_RATE_PROVIDERS, SPECTRA_NETWORKS, SPECTRA_RATE_MAX_PERCENT, SPECTRA_RATE_MIN_PERCENT, STABLECOIN_SYMBOLS, STCELO_MANAGER_ADDRESS, type SelectPricesOptions, type Severity, type SeverityFinding, type SiloVault, type SiloVaults, type SpectraApiMarket, type SpectraApiPool, type SpectraApiToken, type SpectraPtMarket, type SpectraPtMarkets, type StCeloValidatorGroup, type StaleFeedEntry, type StampOptions, type StructuredOraclePrices, type SubAccountSummary, type SumerPositionInput, type SummaryAprData, type SummaryBalanceData, type SupplyExitMode, type SupplyExitTerms, type SupplyTermSheet, TELLER_CALLS_PER_BID, TERMMAX_CALLS_PER_ACCOUNT, DECIMAL_BASE as TERMMAX_DECIMAL_BASE, TERMMAX_LIQUIDATION_PENALTY, TERMMAX_LIQUIDATION_WINDOW_SECS, TERMMAX_LIQUIDATOR_BONUS, TERMMAX_PARTIAL_CLOSE_FACTOR, TERMMAX_PARTIAL_LIQUIDATION_THRESHOLD_USD, TERM_ADAPTERS, TERM_PROFILES, TERM_SHEET_SCHEMA_VERSION, type TellerDiscoveredBid, type TellerDiscovery, type TellerMarketsRaw, type TellerPoolRaw, type TermAdapter, type TermAssetRef, type TermAuctionOrder, type TermAuctionOrders, type TermBookSource, type TermBookTop, type TermInfo, type TermListing, type TermMarketRaw, TermMaxApiSource, type TermMaxBookTop, type TermMaxCurveSegment, type TermMaxDataSource, type TermMaxDiscovery, type TermMaxFeeConfig, type TermMaxMarketConfig, type TermMaxMarketRaw, type TermMaxOrderState, type TermProfile, type TermSheet, type TermSheetDigest, type TermSheetInput, type TermSheetViolation, TermSubgraphSource, type TermTag, type TokenApprovalMeta, type TokenApprovalParams, type TokenBalanceEntry, type TokenBalanceQuery, type TokenBalanceResult, type TokenEntry, type TokenList, type TokenListInput, type TrackerDiagnostic, UPSHIFT_CHAIN_IDS, UPSHIFT_VAULTS_URL, type USDPriceMap, type UpshiftApiAsset, type UpshiftApiVault, type UpshiftVault, type UpshiftVaults, type UsddMarketRaw, type UsddMarketsRaw, type DssPositionInfo as UsddPositionInfo, type UserApr, type UserConfig, type UserData, type UserDataResult, type UserLendingPosition, type UtilizationTerms, VAULT_PROVIDERS, VAULT_PROVIDER_PROFILE, VAULT_PROVIDER_TRAITS, VAULT_SHARE_PRICE_PROBE, VAULT_VENUE_PREFIX, VOLATILE_VAULT_OVERRIDES, type ValidationResult, type VaultAprResult, type VaultBalanceInput, type VaultClassification, type VaultClassificationFields, type VaultLookupEntry, type VaultMarketExposure, type VaultProvider, type VaultProviderTraits, type VaultPublicDataAll, type VaultPublicDataResult, type VaultSourceRow, type VaultTermInput, type VaultYieldSeries, type VaultYieldSnapshot, type YDaemonVault, YEARN_CHAIN_IDS, YEARN_YDAEMON_BASE, type YearnVault, type YearnVaultKind, type YearnVaults, type YieldProfile, __resetResupplyUserCaches, accountDepositListKey, accountWithdrawalListKey, appendSnapshot, applyPositionDelta, attachImplications, attachPricesToFlashLiquidity, borrowDescription, borrowFindings, borrowHeadline, buildExposures, buildFluidFTokensCall, buildLendingPositionUid, buildLiquityUserCall, buildLoopResult, buildMorphoTypeCall, buildMorphoTypeUserCallWithLens, buildPortfolioTotals, buildSumerAccumulators, buildSummaries, buildTellerUserCall, buildTermMaxUserCall, buildTermSheet, buildTermSheetsForGroup, buildVaultEarnUid, buildVaultLookup, buildVaultTermSheet, calculateLeverage, calculateNetApr, calculateOverallNetApr, calculateWeightedAverage, classifyFreshness, classifyReliability, classifyVault, clearPendleMarketsCache, clearSpectraMarketsCache, collateralSymbolsByVenue, collectFeedObservations, computeBorrowDelta, computeCloseTradeDeltas, computeCollateralSwapDeltas, computeDebtSwapDeltas, computeDepositDelta, computeEModeAnalysis, computeOpenTradeDeltas, computePostTradeMetrics, computeRepayDelta, computeSumerBorrowDelta, computeSumerDepositDelta, computeSumerRepayDelta, computeSumerWaterfall, computeSumerWithdrawDelta, computeVaultApr, computeWithdrawDelta, computeZapTradeDeltas, consensusReference, convertDssMarketsToResponse, convertExactlyMarketsToResponse, convertFrankencoinMarketsToResponse, convertFraxlendPairsToResponse, convertInverseMarketsToResponse, convertLenderUserDataResult, convertLiquityMarketsToResponse, convertLlamaLendMarketsToResponse, convertResupplyMarketsToResponse, convertRiverMarketsToResponse, convertTellerMarketsToResponse, convertTermMarketsToResponse, convertTermMaxMarketsToResponse, convertUsddMarketsToResponse, createMarketUid, createMidnightBookSource, createMulticallRpcCall, createRawRpcCalls, createTermBookSource, createTermMaxDataSource, decodeListaMarkets, decodeMarkets, decodePackedListaUserDataset, decodePackedMorphoUserDataset, deriveBorrowTags, deriveSupplyTags, detectInterfaceKinds, dexResolverFor, disambiguateEarnNames, dssIlkBytes32, dssKeyParts, dssLenderKey, duration, earnDescription, earnLabel, earnMarketFromPool, earnMarketFromVault, earnMarketLabel, earnPositionFromLenderEntry, earnPositionFromVaultBalance, earnPositionTotals, earnRowSubtitle, earnUidFromMarketUid, earnVaultTerms, earnVenueKind, encodeBalanceFetcherCalldata, enrichTermSheet, enrichmentIndexFromRows, exactlyPairLtv, exactlyPenaltyRateToAprPercent, exactlyWadRateToPercent, feePhrase, feedKeyOf, feedStatKey, fetchDolomiteAccountNumbers, fetchDssMarkets, fetchEulerEarnVaults, fetchEulerEarnVaultsFromSubgraph, fetchEulerSubAccountIndexes, fetchExactlyMarkets, fetchFlashLiquidityForChain, fetchFluidDexState, fetchFluidFTokens, fetchFrankencoinMarkets, fetchFraxlendPairs, fetchGeneralYields, fetchGeneralYieldsByMarketUid, fetchGmxExecutionFees, fetchGmxTickerPrices, fetchGmxVaults, fetchHypercoreVaults, fetchInverseMarkets, fetchLagoonApiVaults, fetchLagoonVaults, fetchLiquityMarkets, fetchListaVaultsFromChain, fetchLlamaLendMarkets, fetchMorphoUserBalances, fetchMorphoUserPositionMarkets, fetchMorphoVaults, fetchMorphoVaultsFromApi, fetchMorphoVaultsFromChain, fetchOraclePrices, fetchPendleApiAssets, fetchPendleApiMarkets, fetchPendlePrices, fetchPendlePtMarkets, fetchResupplyMarkets, fetchRiverMarkets, fetchSiloVaults, fetchSpectraApiMarkets, fetchSpectraPtMarkets, fetchTellerMarkets, fetchTermMarkets, fetchTermMaxMarkets, fetchTokenBalances, fetchTokenMetadata, fetchUpshiftApiVaults, fetchUpshiftVaults, fetchUsddMarkets, fetchYearnApiVaults, fetchYearnVaults, filterActiveLenders, filterLendersByProtocol, finalizeInfo, findingsFor, formatRaw, frankencoinKeyParts, frankencoinLenderKey, fraxlendAssetPerCollateral, fraxlendKeyParts, fraxlendLenderKey, fuseLenderData, generateLendingPools, getAavesForChain, getAssetConfig, getBalanceForMarketUid, getBorrowCapacity, getCachedFluidDexState, getCachedLiquityTroves, getCachedTellerBids, getCachedTermMaxDiscovery, getCachedTermMaxMarket, getCachedTermMaxMarkets, getCoreValidators, getFluidFTokensConverter, getGmxApiHost, getGmxReadContracts, getGmxUserPositions, getHealthFactor, getHypercoreUserPositions, getHypercoreVaultRegistry, getLenderAssets, getLenderPublicData, getLenderPublicDataAll, getLenderPublicDataViaApi, getLenderUserDataMulti, getLenderUserDataResult, getLendersForChain, getLstDelegation, getLstValidators, getLstWithdrawalRegistry, getLstWithdrawalRequests, getMaxAmountClose, getMaxAmountCollateralSwap, getMaxAmountDebtSwap, getMaxAmountOpen, getMergedUserData, getMorphoTypeMarketConverter, getReadFailurePolicy, getResolvedDolomiteAccountNumbers, getStCeloValidatorGroups, getSubAccountAddress, getSubAccountIndex, getTermProfile, getVaultPublicDataAll, getVaultWithdrawalRequests, hasCritical, hasEulerEarnVaultSubgraph, hasLagoonVaults, hasMorphoPositionIndex, hasMorphoUserApi, hasMorphoUserSubgraph, hasPendleMarkets, hasSpectraMarkets, hasUpshiftVaults, hasYearnVaults, ilkToKeySegment, implausibleRatePercent, inverseKeyParts, inverseLenderKey, isBoundNeed, isFailedCall, isIlliquid, isLendingPosition, isLiveMarket as isLivePendleMarket, isLiveSpectraMarket, isStablecoinSymbol, isVaultPosition, isVaultVenue, isYearnV3, keySegmentToIlk, keysFromMaps, lenderApiOnly, lenderFamily, liquityCandidateTroveIds, liquityKeyParts, liquityLenderKey, llamaLendKeyParts, llamaLendLenderKey, mergeDeep, multicall3Abi, nanTo, needsLenderApproval, needsTokenApproval, noOpResult, normalizeToBytes, parseBalanceFetcherResult, parseEarnUid, parseMergedResult, parseMulticallRpcResponses, parseExpirySeconds as parsePendleExpirySeconds, parseRawRpcBatchResponses, parseRawRpcResponses, parseCurveFee as parseSpectraCurveFee, parsePtRate as parseSpectraPtRate, parseTermMaxLtv, parseTokenBalanceResult, pct, assetKey as pendleAssetKey, pickPool as pickSpectraPool, positivePart, predictInverseEscrow, prepareLenderUserDataRpcCalls, prepareMergedMulticallParams, prepareMergedRpcCalls, prepareMulticallInputs, prepareTokenBalanceRpcCalls, priceGlvVaults, priceGmMarkets, probeAaveFeedTimestamps, pruneFeedStats, rankFindings, ratePercent, readVaultSharePrices, rejectOutliers as rejectPriceOutliers, resolveAdapter, resolveDerivation, resolveEarnIdentity, resolveModeConfig, resolveStCeloDepositGroup, resolveVaultProfileId, resupplyKeyParts, resupplyLenderKey, resupplyMarketLabel, riverKeyParts, riverLenderKey, sanePercent as saneSpectraPercent, savingsAddresses, savingsBalanceKind, selectAssetGroupPrices, shortDate, spectraAddress, spectraNetwork, spectraPoolsUrl, splitChainScopedAddress as splitPendleChainScopedAddress, stampCapabilities, stampEarnSubtitles, stampVaultClassification, stampVaultTermSheets, stripLeadingBrand, supplyDescription, supplyFindings, supplyHeadline, swapRoutedProvidersArePriceConsistent, tellerBpsToPercent, tellerImpliedLtv, tellerLenderKey, tellerPoolFromLenderKey, termLenderKey, termMaxApiBase, borrowNif as termMaxBorrowNif, curveApr as termMaxCurveApr, curveAprNumber as termMaxCurveAprNumber, daysToMaturity as termMaxDaysToMaturity, lendNif as termMaxLendNif, mintGtFeeRatio as termMaxMintGtFeeRatio, ratioToNumber as termMaxRatioToNumber, ratioToPercent as termMaxRatioToPercent, tickToAprNumber, tickToPrice, toDigest, toTermSheetInput, toVaultTermInput, trancheFromCounterparty, tryParseEarnUid, unflattenLenderData, updateFeedStats, usdValue, usddIlkBytes32, usddKeyParts, usddLenderKey, validateTermSheet, validateTermSheets, validateUserData, vaultSharesToAssets, vaultTermInputFromEarnMarket, vaultTermInputFromSourceRow, vaultTraits, vaultVenue, venueBrand, venueBrandKey, withMaturityLabel, withTrancheLabel };
|