@1delta/margin-fetcher 5.0.108 → 5.0.110

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 CHANGED
@@ -8316,7 +8316,9 @@ type SupplyExitMode = Open<'instant' | 'instant-capped' | 'instant-or-queued' |
8316
8316
  /** Sell the instrument on a book (Term, TermMax, Midnight). */
8317
8317
  | 'market-sale'
8318
8318
  /** No early exit at all. */
8319
- | 'at-maturity' | 'off-chain' | 'dex-only'>;
8319
+ | 'at-maturity'
8320
+ /** A dated bond: par at maturity, or earlier at a price (Usual bUSD0). */
8321
+ | 'fee-or-maturity' | 'off-chain' | 'dex-only'>;
8320
8322
  /**
8321
8323
  * One concrete way out, as published by the vault row. Re-exported from the
8322
8324
  * vault layer so a term sheet and the `/v1/data/vaults` row cannot disagree
@@ -9108,7 +9110,14 @@ type DeepPartial<T> = {
9108
9110
  * kept separate so the two providers can evolve independently without
9109
9111
  * one provider's withdrawal taxonomy creep affecting the other.
9110
9112
  */
9111
- type SavingsWithdrawalMode = 'instant' | 'instant-capped' | 'fixed-cooldown' | 'queued' | 'request-based' | 'fee-or-queued';
9113
+ type SavingsWithdrawalMode = 'instant' | 'instant-capped' | 'fixed-cooldown' | 'queued' | 'request-based' | 'fee-or-queued'
9114
+ /**
9115
+ * A fixed-maturity BOND: redeemable at par on a date, or earlier for a
9116
+ * price — Usual's bUSD0 (floor-price unlock, a par unlock paid in USUAL, or
9117
+ * par with the redemption token). There is no request and no queue; the
9118
+ * "wait" is the bond's own end, in `expiry`.
9119
+ */
9120
+ | 'fee-or-maturity';
9112
9121
  /**
9113
9122
  * Parsed savings-vault entry.
9114
9123
  *
@@ -9354,6 +9363,44 @@ interface SavingsVault extends VaultClassificationFields {
9354
9363
  * only per-share number there is.
9355
9364
  */
9356
9365
  redemptionDiscountBps?: number;
9366
+ /**
9367
+ * Unix seconds at which the position MATURES and redeems at par. The term
9368
+ * sheet reads it as a `fixed-date` maturity (`termSheet.supply.maturity`),
9369
+ * which also closes entry once it passes. Same field name and units as
9370
+ * `PendlePt.expiry`.
9371
+ */
9372
+ expiry?: number;
9373
+ /**
9374
+ * 1e18-scaled underlying paid per share by the guaranteed EARLY exit
9375
+ * (bUSD0's `getFloorPrice()`, 0.92 at integration). `withdrawFeeBps` carries
9376
+ * the same fact as a haircut on that leg. Absent ⇒ not read; `'0'` ⇒ the
9377
+ * floor exit is switched off.
9378
+ */
9379
+ floorPrice?: string;
9380
+ /**
9381
+ * Signed basis-point gap between the share's MARKET price and what it
9382
+ * redeems for (`exchangeRate` × underlying price): negative ⇒ it trades
9383
+ * below par. Only computed for `fee-or-maturity` rows, and only when the
9384
+ * caller's price map carries the share token itself — bUSD0 traded at ~0.971
9385
+ * against USD0 at integration, i.e. ≈ −290 bps, which is the yield a buyer
9386
+ * locks in by holding to `expiry`.
9387
+ */
9388
+ marketDiscountBps?: number;
9389
+ /** `true` when the protocol's user paths are paused. Absent ⇒ not read. */
9390
+ isPaused?: boolean;
9391
+ /** The rest of a bond's terms — see `SavingsOnChainState.bond`. */
9392
+ bond?: {
9393
+ /** Unix seconds the bond period began. */
9394
+ startTime?: number;
9395
+ /** Token a par exit before maturity burns one-for-one (rt-bUSD0). */
9396
+ redemptionToken?: string;
9397
+ /** Its supply, raw — the most that can EVER exit early at par. */
9398
+ redemptionTokenSupply?: string;
9399
+ /** Token the par early unlock is paid in (USUAL). */
9400
+ parUnlockToken?: string;
9401
+ /** Raw `parUnlockToken` pulled per ONE share by that unlock. */
9402
+ parUnlockCostPerShare?: string;
9403
+ };
9357
9404
  /**
9358
9405
  * Curated loss-waterfall / backing classification, straight from the
9359
9406
  * registry entry. Absent ⇒ not assessed (NOT "safe").