@perena/vault-sdk 1.0.67 → 1.0.69

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/README.md CHANGED
@@ -445,6 +445,7 @@ Use `client.quote.quote(...)` to calculate expected output amounts before
445
445
  building a transaction. Quotes fetch the current vault/tranche state and use the
446
446
  same fee formulas as the program. To quote a fee-exempt route, provide the same
447
447
  `addressSeeds`; owner allowlisting by itself does not make a quote fee-exempt.
448
+ Allowlisted wallets receive their exemption automatically without PDA seeds.
448
449
 
449
450
  All amounts are base units. `expectedAmountOut` is the net amount after fees;
450
451
  `grossAmountOut`, `feeAmount`, `feeBps`, and `feeExempt` explain the quote.
@@ -463,7 +464,7 @@ const depositQuote = await client.quote.quote({
463
464
  });
464
465
 
465
466
  console.log(depositQuote.expectedAmountOut); // regular shares to receive
466
- console.log(depositQuote.feeExempt); // false: no addressSeeds were supplied
467
+ console.log(depositQuote.feeExempt); // false for a non-allowlisted wallet
467
468
 
468
469
  const exemptDepositQuote = await client.quote.quote({
469
470
  shareClass: "regular",
@@ -490,6 +491,11 @@ console.log(withdrawQuote.expectedAmountOut); // asset tokens to receive
490
491
 
491
492
  ### Junior and senior tranches
492
493
 
494
+ Both tranche deposit types use the same vault `mintFeeBps` as regular deposits,
495
+ with fees accruing as pending curator shares. Quotes follow each path's integer
496
+ rounding: regular deposits deduct the fee from gross shares, while tranche
497
+ deposits deduct it from the deposit's accounting value before minting shares.
498
+
493
499
  ```typescript
494
500
  // Asset -> junior tranche shares
495
501
  const juniorDepositQuote = await client.quote.quote({
@@ -514,8 +520,9 @@ const seniorDepositQuote = await client.quote.quote({
514
520
 
515
521
  For junior withdrawals, pass `withdrawalMode: "instant"` to quote
516
522
  `executeTrancheWithdraw`, or `withdrawalMode: "queued"` to quote
517
- `fulfillJuniorTrancheWithdraw` after lockup. Senior withdrawals are already
518
- fee-free, but still support the same quote shape.
523
+ `fulfillJuniorTrancheWithdraw` after lockup. Senior withdrawals use the vault's
524
+ `burnFeeBps`, like regular withdrawals, and accrue the fee as pending curator
525
+ shares. The existing wallet and approved-PDA fee exemptions still apply.
519
526
 
520
527
  ```typescript
521
528
  // Junior tranche shares -> asset through instant withdrawal.
@@ -690,6 +697,13 @@ await client.sendTransaction(user, await client.tx.requestAsyncWithdraw.getTx({
690
697
  const pending = await client.account.fetchPendingRedemptionQueues(vault);
691
698
  // Optional second argument restricts the results to one owner.
692
699
 
700
+ // Optional: the HW manager locks the current net output-token payout once.
701
+ await client.sendTransaction(hwManager, await client.tx.priceAsyncWithdraw.getTx({
702
+ hwManager: fromWeb3Pk(hwManager.publicKey),
703
+ vault,
704
+ withdrawalQueue: pending[0].publicKey,
705
+ }));
706
+
693
707
  await client.sendTransaction(fulfiller, await client.tx.fulfillAsyncWithdraw.getTx({
694
708
  signer: fromWeb3Pk(fulfiller.publicKey),
695
709
  owner: fromWeb3Pk(user.publicKey),
@@ -699,15 +713,27 @@ await client.sendTransaction(fulfiller, await client.tx.fulfillAsyncWithdraw.get
699
713
  }));
700
714
  ```
701
715
 
702
- Requests escrow shares without changing supply or NAV. There is no fixed lockup:
703
- only the configured fulfiller can settle regular requests, using current NAV,
704
- asset prices, burn fees, and withdrawal limits. Settlement is all-or-nothing,
716
+ Requests escrow shares without changing supply or NAV. Only the configured
717
+ fulfiller can settle regular requests, with no minimum settlement delay.
718
+ Unpriced requests use current NAV, asset prices, and burn fees. The HW manager
719
+ can price a request once, recording `request.outputAmount` in output-token
720
+ atomic units, `pricedTs`, and `feeShareAmount`. A positive `pricedTs` marks a
721
+ locked quote, even when its payout is zero. Pricing uses fresh oracle state and
722
+ regular-share backing (excluding tranches), applies the owner's fee exemption,
723
+ and does not require liquidity, burn shares, reserve assets, or change NAV.
724
+ Repricing is rejected.
725
+
726
+ Priced requests settle the recorded net tokens and fee shares. NAV is debited
727
+ by the locked tokens' value at the current output asset price, so settlement
728
+ still requires fresh oracle state. Current withdrawal limits apply to both
729
+ paths. Settlement is all-or-nothing,
705
730
  burns the requested shares, pays the owner's asset ATA, returns surplus escrow
706
731
  shares, and refunds queue/escrow rent to the original payer. The builder creates
707
732
  missing owner ATAs and resolves the recorded rent payer. Settlement uses the
708
733
  vault's local token balance first and pulls only the net payout's shortfall from
709
- external liquidity. The builder checks fresh pricing, the queued share amount,
710
- and the live local balance; when local funds cover the payout, it omits external
734
+ external liquidity. The builder reads the queue fresh and compares its locked
735
+ payout (or a current quote when unpriced) against the live local balance.
736
+ When local funds cover the payout, it omits external
711
737
  CPI accounts and lookups. Otherwise it prepares the same single-source external
712
738
  resolution as junior queue fulfillment. Explicit CPI refs remain caller-controlled.
713
739
  Insufficient combined liquidity leaves the request pending. If liquidity or
@@ -718,16 +744,34 @@ Both share classes share the existing `VaultWithdrawalQueue` layout and the
718
744
  256 queue IDs per owner/vault. `fetchAllWithdrawalQueues` supports vault, owner,
719
745
  and input-mint filters; `fetchPendingRedemptionQueues` selects regular shares.
720
746
  `WithdrawalQueueService` routes by input mint, so previously accepted requests
721
- remain fulfillable after switching back to synchronous mode. The existing
722
- `cancelJuniorTrancheWithdraw` on-chain instruction also accepts regular queues;
723
- its SDK builder can be used with the regular mint as `juniorShareMint` and an
724
- explicit `shareTokenProgram` until a generic cancellation name is introduced.
747
+ remain fulfillable after switching back to synchronous mode. Service snapshots
748
+ include nullable `outputAmount` and `pricedTs`; fulfillment always refreshes
749
+ the queue before building its instruction.
750
+
751
+ Only the request owner can cancel a regular-share request, and only when chain
752
+ time is **strictly more than 30 days** after `requestTs`, whether priced or
753
+ unpriced. `cancelAsyncWithdraw.getTx({ user, vault, queueId })` recreates a
754
+ missing owner share ATA, returns all escrow shares (including surplus), and
755
+ refunds queue/escrow rent to the recorded payer without charging redemption fees.
756
+ The legacy `cancelJuniorTrancheWithdraw` route enforces the same delay for
757
+ regular shares; junior queue cancellation retains its existing behavior.
758
+
759
+ The curator console's **Redemptions** tab shows pending regular-share requests,
760
+ their locked payouts and pricing timestamps, and owner cancellation eligibility.
761
+ **Price all unpriced** packs instructions up to the transaction size limit and
762
+ uses the HW-manager wallet's `signAllTransactions` where supported. Each request
763
+ is priced when its transaction executes; separate transactions are not a single
764
+ atomic snapshot. Failed batches remain pending and can be refreshed and retried.
725
765
 
726
766
  The redemption mode occupies an existing zeroed vault padding byte, preserving
727
- account size and offsets. Deploy the updated program and publish SDK 1.0.67
728
- before rebuilding the backend fulfiller pinned to that version. Existing config
729
- payloads that omit the trailing mode option remain valid.
730
- Use the refreshed IDL/SDK to set the new policy.
767
+ account size and offsets. Pricing fields reuse three words of queue padding:
768
+ existing queues decode as unpriced, and queue accounts remain 296 bytes including
769
+ the discriminator. No account migration is needed. Deploy the updated program
770
+ and publish a new SDK release, then update and rebuild the backend fulfiller
771
+ with that release (including its package lock) before enabling manager pricing.
772
+ SDK 1.0.67 predates the pricing fields and cannot reliably prepare liquidity
773
+ accounts for a locked payout. Existing config payloads that omit the trailing
774
+ mode option remain valid.
731
775
 
732
776
  ### Example: junior withdrawal queue
733
777
 
package/dist/index.d.ts CHANGED
@@ -68,6 +68,8 @@ declare const MAX_PRICE_STALENESS_THRESHOLD_SECS: number;
68
68
  declare const DEFAULT_VAULT_ID = 0;
69
69
  declare const DEFAULT_MAX_ACCEPTABLE_APY_BPS = 10000;
70
70
  declare const DEFAULT_JUNIOR_WITHDRAWAL_LOCKUP_SECS: number;
71
+ /** Cancellation requires age strictly greater than this interval. */
72
+ declare const ASYNC_REDEMPTION_CANCEL_DELAY_SECS: number;
71
73
  declare const DEFAULT_JUNIOR_EARLY_UNSTAKE_FEE_BPS = 100;
72
74
  declare const DEFAULT_JUNIOR_STANDARD_UNSTAKE_FEE_BPS = 50;
73
75
  /** Mainnet USDC mint address. */
@@ -342,6 +344,113 @@ type Bankineco = {
342
344
  }
343
345
  ];
344
346
  },
347
+ {
348
+ "name": "cancelAsyncWithdraw";
349
+ "discriminator": [
350
+ 121,
351
+ 182,
352
+ 87,
353
+ 166,
354
+ 240,
355
+ 240,
356
+ 181,
357
+ 178
358
+ ];
359
+ "accounts": [
360
+ {
361
+ "name": "user";
362
+ "writable": true;
363
+ "signer": true;
364
+ },
365
+ {
366
+ "name": "payer";
367
+ "writable": true;
368
+ },
369
+ {
370
+ "name": "vault";
371
+ },
372
+ {
373
+ "name": "withdrawalQueue";
374
+ "writable": true;
375
+ },
376
+ {
377
+ "name": "inputMint";
378
+ },
379
+ {
380
+ "name": "userInputAta";
381
+ "writable": true;
382
+ },
383
+ {
384
+ "name": "queueInputAta";
385
+ "writable": true;
386
+ "pda": {
387
+ "seeds": [
388
+ {
389
+ "kind": "account";
390
+ "path": "withdrawalQueue";
391
+ },
392
+ {
393
+ "kind": "account";
394
+ "path": "shareTokenProgram";
395
+ },
396
+ {
397
+ "kind": "account";
398
+ "path": "inputMint";
399
+ }
400
+ ];
401
+ "program": {
402
+ "kind": "const";
403
+ "value": [
404
+ 140,
405
+ 151,
406
+ 37,
407
+ 143,
408
+ 78,
409
+ 36,
410
+ 137,
411
+ 241,
412
+ 187,
413
+ 61,
414
+ 16,
415
+ 41,
416
+ 20,
417
+ 142,
418
+ 13,
419
+ 131,
420
+ 11,
421
+ 90,
422
+ 19,
423
+ 153,
424
+ 218,
425
+ 255,
426
+ 16,
427
+ 132,
428
+ 4,
429
+ 142,
430
+ 123,
431
+ 216,
432
+ 219,
433
+ 233,
434
+ 248,
435
+ 89
436
+ ];
437
+ };
438
+ };
439
+ },
440
+ {
441
+ "name": "shareTokenProgram";
442
+ },
443
+ {
444
+ "name": "associatedTokenProgram";
445
+ "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
446
+ },
447
+ {
448
+ "name": "systemProgram";
449
+ "address": "11111111111111111111111111111111";
450
+ }
451
+ ];
452
+ "args": [];
453
+ },
345
454
  {
346
455
  "name": "cancelIncentiveProposal";
347
456
  "discriminator": [
@@ -6535,6 +6644,40 @@ type Bankineco = {
6535
6644
  }
6536
6645
  ];
6537
6646
  },
6647
+ {
6648
+ "name": "priceAsyncWithdraw";
6649
+ "discriminator": [
6650
+ 101,
6651
+ 85,
6652
+ 188,
6653
+ 156,
6654
+ 108,
6655
+ 105,
6656
+ 104,
6657
+ 94
6658
+ ];
6659
+ "accounts": [
6660
+ {
6661
+ "name": "hwManager";
6662
+ "signer": true;
6663
+ },
6664
+ {
6665
+ "name": "vault";
6666
+ },
6667
+ {
6668
+ "name": "vaultOracle";
6669
+ },
6670
+ {
6671
+ "name": "vaultTrancheState";
6672
+ "optional": true;
6673
+ },
6674
+ {
6675
+ "name": "withdrawalQueue";
6676
+ "writable": true;
6677
+ }
6678
+ ];
6679
+ "args": [];
6680
+ },
6538
6681
  {
6539
6682
  "name": "protocolInteraction";
6540
6683
  "discriminator": [
@@ -11653,12 +11796,33 @@ type Bankineco = {
11653
11796
  "name": "expiryTs";
11654
11797
  "type": "i64";
11655
11798
  },
11799
+ {
11800
+ "name": "outputAmount";
11801
+ "docs": [
11802
+ "Locked net payout in output-mint atomic units. Valid when priced_ts > 0."
11803
+ ];
11804
+ "type": "u64";
11805
+ },
11806
+ {
11807
+ "name": "pricedTs";
11808
+ "docs": [
11809
+ "Zero means unpriced, including queues created before pricing existed."
11810
+ ];
11811
+ "type": "i64";
11812
+ },
11813
+ {
11814
+ "name": "feeShareAmount";
11815
+ "docs": [
11816
+ "Curator fee shares fixed alongside the net payout."
11817
+ ];
11818
+ "type": "u64";
11819
+ },
11656
11820
  {
11657
11821
  "name": "padding";
11658
11822
  "type": {
11659
11823
  "array": [
11660
11824
  "u64",
11661
- 12
11825
+ 9
11662
11826
  ];
11663
11827
  };
11664
11828
  }
@@ -11818,6 +11982,9 @@ declare class AccountClient extends BaseAccountClient {
11818
11982
  inputAmount: bn_js;
11819
11983
  requestTs: bn_js;
11820
11984
  expiryTs: bn_js;
11985
+ outputAmount: bn_js;
11986
+ pricedTs: bn_js;
11987
+ feeShareAmount: bn_js;
11821
11988
  padding: bn_js[];
11822
11989
  };
11823
11990
  }>;
@@ -11874,7 +12041,8 @@ type VaultQuoteArgs = (BaseQuoteArgs & {
11874
12041
  direction: "withdraw";
11875
12042
  /**
11876
12043
  * Junior withdrawals use the early fee for instant withdrawals and the
11877
- * standard fee for queued fulfillment. Senior withdrawals are fee-free.
12044
+ * standard fee for queued fulfillment. Senior withdrawals use the vault's
12045
+ * burn fee regardless of this option.
11878
12046
  */
11879
12047
  withdrawalMode?: JuniorWithdrawalMode;
11880
12048
  });
@@ -12852,7 +13020,7 @@ interface SetExternalLiquidityTxArgs {
12852
13020
  userAccount: Address;
12853
13021
  lookupTables?: Address[];
12854
13022
  }
12855
- /** Escrow regular shares in an async-only vault. Shares are priced and burned at fulfillment. */
13023
+ /** Escrow regular shares in an async-only vault. Burned at fulfillment, optionally priced earlier. */
12856
13024
  type RequestAsyncWithdrawIxArgs = Omit<RequestJuniorTrancheWithdrawIxArgs, "vaultTrancheState">;
12857
13025
  interface RequestAsyncWithdrawTxArgs extends Omit<RequestJuniorTrancheWithdrawTxArgs, "vaultTrancheState" | "juniorShareMint"> {
12858
13026
  shareMint?: Address;
@@ -12865,6 +13033,30 @@ interface FulfillAsyncWithdrawTxArgs extends Omit<FulfillJuniorTrancheWithdrawTx
12865
13033
  signer: Address;
12866
13034
  shareMint?: Address;
12867
13035
  }
13036
+ interface PriceAsyncWithdrawIxArgs {
13037
+ hwManager: Address;
13038
+ vault: Address;
13039
+ vaultOracle: Address;
13040
+ vaultTrancheState: Address | null;
13041
+ withdrawalQueue: Address;
13042
+ }
13043
+ interface PriceAsyncWithdrawTxArgs {
13044
+ hwManager: Address;
13045
+ vault: Address;
13046
+ withdrawalQueue: Address;
13047
+ vaultTrancheState?: Address | null;
13048
+ vaultOracle?: Address;
13049
+ lookupTables?: Address[];
13050
+ }
13051
+ type CancelAsyncWithdrawIxArgs = CancelJuniorTrancheWithdrawIxArgs;
13052
+ interface CancelAsyncWithdrawTxArgs {
13053
+ user: Address;
13054
+ vault: Address;
13055
+ queueId: number;
13056
+ withdrawalQueue?: Address;
13057
+ userInputAta?: Address;
13058
+ lookupTables?: Address[];
13059
+ }
12868
13060
 
12869
13061
  interface VaultCacheInvalidation {
12870
13062
  vaultPda: Address;
@@ -13976,6 +14168,29 @@ declare class FulfillAsyncWithdrawBuilder extends VaultBuilderBase<FulfillAsyncW
13976
14168
  }>;
13977
14169
  }
13978
14170
 
14171
+ declare class PriceAsyncWithdrawBuilder extends VaultBuilderBase<PriceAsyncWithdrawIxArgs, PriceAsyncWithdrawTxArgs> {
14172
+ getIx(args: PriceAsyncWithdrawIxArgs): Promise<_solana_kit.Instruction<string, readonly (_solana_kit.AccountLookupMeta<string, string> | _solana_kit.AccountMeta<string>)[]>>;
14173
+ protected deriveIxArgs(args: PriceAsyncWithdrawTxArgs): Promise<PriceAsyncWithdrawIxArgs>;
14174
+ protected buildPlanExtras(args: PriceAsyncWithdrawIxArgs): Promise<{
14175
+ postSuccessCacheInvalidations: {
14176
+ vaultPda: _solana_kit.Address;
14177
+ withdrawalQueuePda: _solana_kit.Address;
14178
+ }[];
14179
+ }>;
14180
+ }
14181
+
14182
+ declare class CancelAsyncWithdrawBuilder extends VaultBuilderBase<CancelAsyncWithdrawIxArgs, CancelAsyncWithdrawTxArgs> {
14183
+ getIx(args: CancelAsyncWithdrawIxArgs): Promise<_solana_kit.Instruction<string, readonly (_solana_kit.AccountLookupMeta<string, string> | _solana_kit.AccountMeta<string>)[]>>;
14184
+ protected deriveIxArgs(args: CancelAsyncWithdrawTxArgs): Promise<CancelAsyncWithdrawIxArgs>;
14185
+ protected buildPreambleInstructions(args: CancelAsyncWithdrawIxArgs): Promise<_solana_kit.Instruction<string, readonly (_solana_kit.AccountLookupMeta<string, string> | _solana_kit.AccountMeta<string>)[]>[]>;
14186
+ protected buildPlanExtras(args: CancelAsyncWithdrawIxArgs): Promise<{
14187
+ postSuccessCacheInvalidations: {
14188
+ vaultPda: _solana_kit.Address;
14189
+ withdrawalQueuePda: _solana_kit.Address;
14190
+ }[];
14191
+ }>;
14192
+ }
14193
+
13979
14194
  declare class TransactionClient {
13980
14195
  readonly depositCuratorFees: DepositCuratorFeesBuilder;
13981
14196
  readonly createIncentiveV3: CreateIncentiveV3Builder;
@@ -14015,6 +14230,8 @@ declare class TransactionClient {
14015
14230
  readonly fulfillJuniorTrancheWithdraw: FulfillJuniorTrancheWithdrawBuilder;
14016
14231
  readonly requestAsyncWithdraw: RequestAsyncWithdrawBuilder;
14017
14232
  readonly fulfillAsyncWithdraw: FulfillAsyncWithdrawBuilder;
14233
+ readonly priceAsyncWithdraw: PriceAsyncWithdrawBuilder;
14234
+ readonly cancelAsyncWithdraw: CancelAsyncWithdrawBuilder;
14018
14235
  readonly executeWithdraw: ExecuteWithdrawBuilder;
14019
14236
  readonly managerWithdrawAsset: ManagerWithdrawAssetBuilder;
14020
14237
  readonly managerRedepositAsset: ManagerRedepositAssetBuilder;
@@ -14658,6 +14875,9 @@ interface WithdrawalQueueSnapshot {
14658
14875
  requestTs: number;
14659
14876
  /** Lockup expiry — fulfillable once on-chain time reaches this. */
14660
14877
  expiryTs: number;
14878
+ /** Net output tokens fixed by the HW manager; null means price at fulfillment. */
14879
+ outputAmount: bigint | null;
14880
+ pricedTs: number | null;
14661
14881
  }
14662
14882
  interface FulfillSummary {
14663
14883
  fulfilled: number;
@@ -14737,6 +14957,23 @@ interface NavCrankResult {
14737
14957
  reason?: string;
14738
14958
  readiness: NavCrankReadiness;
14739
14959
  }
14960
+ interface ConsensusAssetUpdateArgs {
14961
+ vault: Address;
14962
+ updates: {
14963
+ holdingIndex: number;
14964
+ mint?: Address;
14965
+ price: bigint;
14966
+ externalAmount: bigint;
14967
+ }[];
14968
+ assetMint?: Address;
14969
+ assetTokenProgram?: Address;
14970
+ }
14971
+ interface ConsensusOraclePublicationResult {
14972
+ updateSignature: string;
14973
+ /** The same signature as updateSignature when NAV was settled atomically. */
14974
+ crankSignature?: string;
14975
+ crankSkippedReason?: string;
14976
+ }
14740
14977
  /** A holding to refresh via `update_asset_price` (Pyth / nested-vault priced). */
14741
14978
  interface AssetPriceRefreshTarget {
14742
14979
  mint: Address;
@@ -14758,17 +14995,14 @@ declare class OracleService {
14758
14995
  * update only to register a new consensus holding (pass `assetMint` too). NAV is
14759
14996
  * NOT settled here — call {@link crankNav} afterward.
14760
14997
  */
14761
- updateAssetConsensusPrice(signer: Keypair, args: {
14762
- vault: Address;
14763
- updates: {
14764
- holdingIndex: number;
14765
- mint?: Address;
14766
- price: bigint;
14767
- externalAmount: bigint;
14768
- }[];
14769
- assetMint?: Address;
14770
- assetTokenProgram?: Address;
14771
- }, log?: LogFn$3): Promise<string>;
14998
+ updateAssetConsensusPrice(signer: Keypair, args: ConsensusAssetUpdateArgs, log?: LogFn$3): Promise<string>;
14999
+ /**
15000
+ * Simulate the update followed by NAV settlement in one transaction. If the
15001
+ * combined plan cannot be built or simulated successfully, publish only the
15002
+ * report. The caller must first verify that the report will reach consensus;
15003
+ * a successful crank alone can still settle unchanged holdings.
15004
+ */
15005
+ updateAssetConsensusPriceAndCrankNavIfReady(signer: Keypair, args: ConsensusAssetUpdateArgs, log?: LogFn$3, beforeSubmit?: () => Promise<void>): Promise<ConsensusOraclePublicationResult>;
14772
15006
  /** Settle the vault NAV from its current holdings (permissionless). */
14773
15007
  crankNav(cranker: Keypair, args: {
14774
15008
  vault: Address;
@@ -14986,7 +15220,7 @@ interface VaultOracleResult {
14986
15220
  settlementSimulationError?: string;
14987
15221
  /** `update_consensus_oracle` signature (absent on dry runs / no holdings). */
14988
15222
  updateSignature?: string;
14989
- /** `crank_nav` signature (absent on dry runs / no holdings / skipped crank). */
15223
+ /** Same as updateSignature when bundled; absent on dry runs / skipped crank. */
14990
15224
  crankSignature?: string;
14991
15225
  /** Reason `crank_nav` was skipped after a successful oracle update. */
14992
15226
  crankSkippedReason?: string;
@@ -15436,14 +15670,10 @@ declare function fetchExternalPositions(deps: ConsensusOracleDeps, target: Conse
15436
15670
  declare function fetchReceiptMints(client: VaultClient, vault: Address, vaultState: DecodedVault): Promise<Set<string>>;
15437
15671
 
15438
15672
  /**
15439
- * Settlement step: push the consensus report for all holdings, then crank NAV.
15673
+ * Settlement step: publish the report and, when ready, settle NAV atomically.
15440
15674
  */
15441
15675
 
15442
- interface SettleVaultResult {
15443
- updateSignature: string;
15444
- crankSignature?: string;
15445
- crankSkippedReason?: string;
15446
- }
15676
+ type SettleVaultResult = ConsensusOraclePublicationResult;
15447
15677
  interface SettleVaultParams {
15448
15678
  client: VaultClient;
15449
15679
  oracle: OracleService;
@@ -15457,7 +15687,7 @@ interface SettleVaultParams {
15457
15687
  /** Revalidate a wallet attribution after projections and before publication. */
15458
15688
  beforeSubmit?: () => Promise<void>;
15459
15689
  }
15460
- /** Push the consensus report for all holdings, then settle NAV. */
15690
+ /** Publish only the report unless consensus and the combined crank can pass. */
15461
15691
  declare function settleVault({ client, oracle, yieldTracker, signer, target, updates, vaultState, nowSecs, log, beforeSubmit, }: SettleVaultParams): Promise<SettleVaultResult>;
15462
15692
  interface LogProspectiveApyParams {
15463
15693
  client: VaultClient;
@@ -15786,7 +16016,7 @@ declare class MockYieldTracker implements YieldTracker {
15786
16016
  }
15787
16017
 
15788
16018
  /**
15789
- * Pure dry-run simulator for the two transactions emitted by the consensus
16019
+ * Pure dry-run simulator for the two instructions emitted by the consensus
15790
16020
  * oracle service:
15791
16021
  *
15792
16022
  * 1. `update_consensus_oracle` overlays this signer's report and averages all
@@ -16297,4 +16527,4 @@ declare function collectVaultLookupTableAccounts(client: VaultClient, vault: Add
16297
16527
  extraAccounts?: Address[];
16298
16528
  }): Promise<Address[]>;
16299
16529
 
16300
- export { ASSET_DECIMALS, ASSET_REBALANCE_COOLDOWN_SECS, type AccountBalanceResponse, AccountClient, type AccountYieldResponse, ActivateCircuitBreakerBuilder, type ActivateCircuitBreakerIxArgs, type ActivateCircuitBreakerTxArgs, type AddAprCashflowUpdateParams, type AddCashflowUpdateParams, type AddIncentiveRecipientArgs, AddIncentiveRecipientBuilder, type AddIncentiveRecipientIxArgs, AddIncentiveRecipientV3Builder, type AddIncentiveRecipientV3IxArgs, type AddIncentiveRecipientV3TxArgs, type AddNavCashflowUpdateParams, type AprAccountBalanceResponse, type AprAccountYieldResponse, type AssetPriceOracleConfigIxArgs, type AssetPriceOracleConfigTxArgs, type AssetPriceRefreshTarget, type AssetRefreshResult, type AssetType, BALANCE_CHANGE_BASELINE_MAX_AGE_SECS, type Bankineco, type BasicAuthCredentials, type Bigintish, type BuildMarginfiWithdrawInteractionArgs, CONSENSUS_ORACLE_VARIANT, type CancelIncentiveProposalArgs, CancelIncentiveProposalBuilder, CancelJuniorTrancheWithdrawBuilder, type CancelJuniorTrancheWithdrawIxArgs, type CancelJuniorTrancheWithdrawTxArgs, ClaimIncentiveBuilder, type ClaimIncentiveIxArgs, type ClaimIncentiveTxArgs, ClaimIncentiveV3Builder, type ClaimIncentiveV3IxArgs, type ClaimIncentiveV3TxArgs, type Clock, type CollectSamplesOptions, type ConsensusAssetUpdate, type ConsensusHoldingEntry, type ConsensusHoldingSimulation, type ConsensusOracleDeps, type ConsensusOracleHoldingConfig, ConsensusOracleService, type ConsensusOracleTarget, CrankNavBuilder, type CrankNavIxArgs, type CrankNavTxArgs, CrankPerformanceFeesBuilder, type CrankPerformanceFeesIxArgs, type CrankPerformanceFeesTxArgs, type CreateAccountParams, CreateAssetHoldingBuilder, type CreateAssetHoldingIxArgs, type CreateAssetHoldingTxArgs, CreateIncentiveBuilder, type CreateIncentiveIxArgs, type CreateIncentiveTxArgs, CreateIncentiveV3Builder, type CreateIncentiveV3IxArgs, type CreateIncentiveV3TxArgs, type CreateTokenMintIxs, CreateTrancheStateBuilder, type CreateTrancheStateIxArgs, type CreateTrancheStateTxArgs, CreateVaultBuilder, type CreateVaultClientOptions, type CreateVaultIxArgs, type CreateVaultParams, type CreateVaultTxArgs, type CreateYieldPaymentParams, DEFAULT_CU_PRICE_MICRO_LAMPORTS, DEFAULT_EXTERNAL_WEIGHT_BAND_BPS, DEFAULT_JUNIOR_EARLY_UNSTAKE_FEE_BPS, DEFAULT_JUNIOR_STANDARD_UNSTAKE_FEE_BPS, DEFAULT_JUNIOR_WITHDRAWAL_LOCKUP_SECS, DEFAULT_MARGINFI_WEIGHT_BPS, DEFAULT_MAX_ACCEPTABLE_APY_BPS, DEFAULT_MINTS, DEFAULT_MIN_AMOUNT_UI, DEFAULT_ORACLE_STALENESS_THRESHOLD_SECS, DEFAULT_PRICE_ORACLE_ACCOUNT, DEFAULT_PRICE_STALENESS_SECS, DEFAULT_PRICE_STALENESS_THRESHOLD_SECS, DEFAULT_REBALANCE_BAND_BPS, DEFAULT_SLIPPAGE_BPS, DEFAULT_TARGET_LOCAL_BPS, DEFAULT_TARGET_LOCAL_USDC_TVL_BPS, DEFAULT_VAULT_ID, type DecodedHolding, type DecodedVault, type DecodedVaultTrancheState, type DeleteAccountParams, DepositCuratorFeesBuilder, type DepositCuratorFeesIxArgs, type DepositCuratorFeesTxArgs, DisableCircuitBreakerBuilder, type DisableCircuitBreakerIxArgs, type DisableCircuitBreakerTxArgs, DistributeIncentiveBuilder, type DistributeIncentiveIxArgs, type DistributeIncentiveTxArgs, DistributeIncentiveV3Builder, type DistributeIncentiveV3IxArgs, type DistributeIncentiveV3TxArgs, EXTERNAL_POSITION_SAMPLES, type EvmCallArg, type EvmContractCall, type EvmContractNavPriceConfig, ExecuteDepositBuilder, type ExecuteDepositIxArgs, type ExecuteDepositTxArgs, ExecuteShareSwapBuilder, type ExecuteShareSwapIxArgs, type ExecuteShareSwapTxArgs, ExecuteTrancheDepositBuilder, type ExecuteTrancheDepositIxArgs, type ExecuteTrancheDepositTxArgs, ExecuteTrancheWithdrawBuilder, type ExecuteTrancheWithdrawIxArgs, type ExecuteTrancheWithdrawTxArgs, ExecuteWithdrawBuilder, type ExecuteWithdrawIxArgs, type ExecuteWithdrawTxArgs, type ExternalLiquidityIntegrityOptions, type ExternalLiquidityIntegrityResult, ExternalLiquidityIntegrityService, type ExternalLiquidityIntegritySummary, type ExternalLiquiditySlot, type ExternalLiquiditySourceArgs, type ExternalPosition, type ExternalPositionContext, type ExternalPositionProvider, type ExternalPositionRef, ExternalPositionRegistry, FEE_VAULT_CACHE_CATEGORY, type FeeVaultAccountData, type FetchNestTokenPriceOptions, FulfillAsyncWithdrawBuilder, type FulfillAsyncWithdrawIxArgs, type FulfillAsyncWithdrawTxArgs, FulfillJuniorTrancheWithdrawBuilder, type FulfillJuniorTrancheWithdrawIxArgs, type FulfillJuniorTrancheWithdrawTxArgs, type FulfillSummary, type HoldingNavContribution, type HoldingUpdatePreview, type HttpJsonNavPriceConfig, IDL, IDLE_RESERVE_FLOOR_BPS, IDLE_RESERVE_TARGET_BPS, type IdleLiquidityOptions, type IdleLiquidityResult, IdleLiquidityService, type IdleLiquidityStatus, type IncentiveRecipient, type IncentiveTotals, type IncentiveUsdUpdateArgs, type IncentiveV3OracleState, type IncentiveV3Recipient, type IncentiveV3Totals, InitializeVaultRolesBuilder, type InitializeVaultRolesIxArgs, type InitializeVaultRolesTxArgs, type JuniorWithdrawalMode, JupiterPriceSource, type JupiterPriceSourceOptions, JupiterSwapBuilder, type JupiterSwapIxArgs, type JupiterSwapTxArgs, KaminoLendPositionProvider, KaminoPositionProvider, LIVE_ORACLE_VARIANTS, LIVE_PRICE_REFRESH_INTERVAL_SECS, LOCAL_PROTOCOL_ADMIN, LargeBalanceChangeError, type LargeBalanceChangeViolation, type LiveConsensusOracleDepsOptions, LivePriceSource, type LivePriceSourceOptions, MANAGER_WALLET_NAV_DROP_TRIGGER_BPS, MANAGER_WALLET_NAV_TOLERANCE_BPS, MAX_APY_ANCHOR_WINDOW_SECS, MAX_APY_PREVIOUS_ANCHOR_AGE_SECS, MAX_BALANCE_CHANGE_BPS, MAX_CONSENSUS_SIGNERS, MAX_INCENTIVE_RECIPIENTS, MAX_INCENTIVE_REPORT_TTL, MAX_LUT_ADDRESSES, MAX_MANAGER_WITHDRAW_DESTINATIONS, MAX_ORACLE_IMPLIED_APY_BPS, MAX_PRICE_STALENESS_THRESHOLD_SECS, MIN_EXTERNAL_POSITION_SAMPLES, ManagerRedepositAssetBuilder, type ManagerRedepositAssetIxArgs, type ManagerRedepositAssetTxArgs, type ManagerWalletBalanceSource, type ManagerWalletReconciliation, ManagerWithdrawAssetBuilder, type ManagerWithdrawAssetIxArgs, type ManagerWithdrawAssetTxArgs, MarginfiPositionProvider, type MaxApyAnchorSnapshot, type MintConfig, type MintIdentifier, type MintInfo, MintRegistry, type MintRegistryOptions, type MockYieldAccountConfig, MockYieldTracker, type MockYieldTrackerOptions, type MpcWalletBalanceSource, type MpcWalletBalances, type MpcWalletConfig, NEST_API_BASE_URL, NEST_RWA_SHARE_MINT, NEST_VAULT_SLUG, NEST_WITHDRAWAL_MATCH_TOLERANCE_BPS, type NavAccountBalanceResponse, type NavAccountValueResponse, type NavCrankBlocker, type NavCrankBlockerReason, type NavCrankReadiness, type NavCrankResult, type NavPriceConfig, type NavPricePreview, type NavPriceProvenance, type NavYieldAccount, NestApiError, type NestApiOptions, type NestDepositPlan, NestPriceSource, type NestPriceSourceOptions, type NestRedemptionQuote, type NestRedemptionStatus, ORACLE_ENTRIES_OFFSET, ORACLE_ENTRY_SIZE, ORACLE_SETTLED_NAV_TS_OFFSET, OracleService, PRICE_ORACLE_TYPES_BY_INDEX, PROGRAM_FEE_EXEMPT_OWNER_WHITELIST, PROTOCOL_ADMIN, PROTOCOL_FEE_RECIPIENT, PST_TO_USDC_MAX_SLIPPAGE_BPS, PdaClient, type PendingConsensusSignerSet, type PreparedDirectTransaction, type PreparedSquadsTransaction, type PreparedVaultTransaction, type PreviewNavPriceParams, type PriceOracleTypeArgs, type PriceSource, ProtocolInteractionBuilder, type ProtocolInteractionIxArgs, type ProtocolInteractionTxArgs, type QuoteFeeUnit, RECONCILIATION_EXTERNAL_VALUE_TOLERANCE_BPS, REPORTABLE_ORACLE_VARIANTS, type RealizedApySimulation, type RedemptionModeArgs, type RefreshLiveOraclePricesParams, RemoveAssetHoldingBuilder, type RemoveAssetHoldingIxArgs, type RemoveAssetHoldingTxArgs, ReportIncentiveV3Builder, type ReportIncentiveV3IxArgs, type ReportIncentiveV3TxArgs, RequestAsyncWithdrawBuilder, type RequestAsyncWithdrawIxArgs, type RequestAsyncWithdrawTxArgs, RequestJuniorTrancheWithdrawBuilder, type RequestJuniorTrancheWithdrawIxArgs, type RequestJuniorTrancheWithdrawTxArgs, type ResolveExternalWithdrawArgs, type ResolvedExternalWithdraw, type ResolvedSquadsWalletRoute, type RollingLimitConfig, type RollingRebalanceLimitConfig, RpcManagerWalletBalanceSource, RpcMpcWalletBalanceSource, type RunLiveConsensusOracleOptions, type RunOptions, type RunSummary, SHARE_DECIMALS, SYSTEM_PROGRAM, SetAssetPriceOracleBuilder, type SetAssetPriceOracleIxArgs, type SetAssetPriceOracleTxArgs, SetExternalLiquidityBuilder, type SetExternalLiquidityIxArgs, type SetExternalLiquidityTxArgs, type SetIncentiveLimitsArgs, SetIncentiveLimitsBuilder, type SetIncentiveLimitsV3Args, SetIncentiveLimitsV3Builder, SetManagerWithdrawDestinationBuilder, type SetManagerWithdrawDestinationIxArgs, type SetManagerWithdrawDestinationTxArgs, SetProtocolFeeBuilder, type SetProtocolFeeIxArgs, type SetProtocolFeeTxArgs, SetVaultConfigBuilder, type SetVaultConfigIxArgs, type SetVaultConfigTxArgs, SettleIncentiveV3Builder, type SettleIncentiveV3IxArgs, type SettleIncentiveV3TxArgs, type SettleVaultParams, type SettleVaultResult, type SettlementSimulation, type SettlementSimulationSnapshot, type SimulateDryRunSettlementParams, type SimulateSettlementArgs, type SimulatedShareClass, SquadsProposalExecutionSimulationError, type SquadsProposalUpload, type SquadsWalletRouteConfig, type StaleBalanceChangeBypass, StaticPositionProvider, SubmitIncentiveBuilder, type SubmitIncentiveIxArgs, type SubmitIncentiveTxArgs, TOKEN_PROGRAM, TOKEN_PROGRAM_ID, type TimelockSettlementKind, type TimelockSettlementOptions, type TimelockSettlementRecord, TimelockSettlementService, type TimelockSettlementSummary, type TrackedAccountValue, type TrancheKindArgs, type TransactionBuilder, TransactionClient, USDC_MINT, USD_STAR_JUNIOR_MINT, USD_STAR_MINT, USD_STAR_PRINCIPAL_MINT, type UpdateAccountParams, UpdateAssetPriceBuilder, type UpdateAssetPriceIxArgs, type UpdateAssetPriceTxArgs, UpdateConsensusOracleBuilder, type UpdateConsensusOracleIxArgs, type UpdateConsensusOracleTxArgs, UpdateConsensusSignersBuilder, type UpdateConsensusSignersIxArgs, type UpdateConsensusSignersTxArgs, type UpdateDynamicAprParams, UpdateTrancheConfigBuilder, type UpdateTrancheConfigIxArgs, type UpdateTrancheConfigTxArgs, VAULT_CACHE_CATEGORY, VAULT_CREATOR_WHITELIST, VAULT_ENVIRONMENTS, VAULT_LOOKUP_TABLES, VAULT_ORACLE_CACHE_CATEGORY, VAULT_PROGRAM_ID, VAULT_PROGRAM_IDS, VAULT_PROGRAM_PUBLIC_KEY, VAULT_ROLE_UPDATE_TIMELOCK_SECS, VAULT_TRANCHE_STATE_CACHE_CATEGORY, VAULT_TRANCHE_WITHDRAWAL_QUEUE_CACHE_CATEGORY, type Vault, type VaultAccountData, VaultBuilderBase, type VaultBuilderContext, type VaultCacheInvalidation, VaultClient, type VaultClientBundle, type VaultEnv, type VaultIncentiveAccount, type VaultIncentiveAccountData, type VaultIncentiveV3Account, type VaultIncentiveV3AccountData, type VaultLookupTableMap, VaultLutManager, type VaultOracleAccountData, type VaultOracleResult, type VaultPricingInputs, type VaultQuote, type VaultQuoteArgs, VaultQuoteClient, type VaultQuoteDirection, type VaultQuoteShareClass, VaultReallocationBuilder, type VaultReallocationIxArgs, type VaultReallocationTxArgs, type VaultTrancheStateAccountData, type VaultTrancheWithdrawalQueueAccountData, type VaultTransactionPlan, type VaultWithdrawalQueueAccount, type VaultWithdrawalQueueAccountData, WALLET_FEE_EXEMPT_WHITELIST, WITHDRAWABLE_RESERVE_FLOOR_BPS, type WithdrawProtocolFeesIxArgs, type WithdrawProtocolFeesTxArgs, type WithdrawalLeg, type WithdrawalPlan, type WithdrawalPricing, WithdrawalQueueService, type WithdrawalQueueSnapshot, type YieldAccount, type YieldAccountSnapshot, type YieldCalculationLog, type YieldCashflow, type YieldPaymentResponse, type YieldPaymentSnapshot, type YieldTracker, type YieldValuationModel, accountingUnitPriceToUsd, addCashflowUpdate, applyEffectiveApy, assertNoLargeBalanceChanges, assertNoUnconfirmedYieldPayments, assertOracleImpliedApy, assertReconciliationExternalValues, buildHoldingUpdate, buildKaminoDepositInteraction, buildKaminoWithdrawInteraction, buildMarginfiWithdrawInteraction, buildNestDepositRequest, buildNestWithdrawalRequest, buildUpdates, candidateGrossNav, coerceBool, collectSamples, collectVaultLookupTableAccounts, confirmYieldPayment, createAccount, createLiveConsensusOracleDeps, createRpcFromConnection, createTokenMint, createTokenMintIxs, createVaultClient, createYieldPayment, dateToStr, decodeNestDepositRequest, decodeNestWithdrawalRequest, decodePendingConsensusSigners, defaultKeypairPath, deleteAccount, discoverVaultsForSigner, externalWithdrawComputeBudget, externalWithdrawLookupTables, fetchExternalPositions, fetchNestRedemptionQuote, fetchNestRedemptionStatus, fetchNestTokenPrice, fetchReceiptMints, filterTargetHoldings, findLargeBalanceChanges, findSquadsWalletRoute, formatSettlementSimulation, fromUiAmount, gatherPricingInputs, getAccount, getAccounts, getAprYield, getBalance, getCashflows, getIncentiveRecipientShareAtas, getIncentiveRecipients, getIncentiveReportRecipients, getIncentiveTotals, getIncentiveV3OracleState, getIncentiveV3RecipientShareAtas, getIncentiveV3Recipients, getIncentiveV3Totals, getNavValue, getRpcUrl, getTotalOutstandingYield, getTotalTrackedValue, getTotalYield, getTrackedValue, getVaultLookupTables, getVaultProgramId, getYield, getYieldPayments, indexConfigByMint, isEvmNavPriceConfig, isNavAccountBalance, isNavAccountValue, isNavYieldAccount, isVaultEnv, keypairAddress, loadKaminoDeposit, loadKaminoWithdrawal, loadKeypair, logProspectiveApy, makeProvider, managerReconciliationStateKey, mintTokensTo, mints, mostFrequent, parseExternalLiquidityRefs, planExternalAllocation, planRebalance, planWithdrawalLegs, prepareSquadsProposalUpload, prepareVaultTransaction, previewNavPrice, previousPhysicalNav, priceInAccountingUnit, publishedConsensusBlockers, quoteWithdrawalPayout, readI64LE, readSplMintSupply, reconcileManagerWalletBalances, reconciliationExternalValues, refreshLiveOraclePrices, resolveExternalWithdraw, resolveKeypairPath, resolveSquadsWalletRoute, resolveTrackedAmounts, resolveWithdrawalPlan, roundToNextUtcMidnight, runLiveConsensusOracle, selectReportableHoldings, settleVault, signerInOracleData, simulateConsensusOracleSettlement, simulateDryRunSettlement, simulateOraclePublication, simulateSquadsProposalExecution, sumPositionsByMint, systemClock, toBigInt, toUiAmount, toWeb3AccountMeta, trackedValueFromResponse, uniqueLutAddresses, updateAccount, updateDynamicApr, validateSquadsWalletRoutes, variantName, vaultAuthorityForWallet, walletReconciliationGuardUpdates, withDiscoveredYieldAccounts, withVaultLookupTables, withdrawalComputeBudget };
16530
+ export { ASSET_DECIMALS, ASSET_REBALANCE_COOLDOWN_SECS, ASYNC_REDEMPTION_CANCEL_DELAY_SECS, type AccountBalanceResponse, AccountClient, type AccountYieldResponse, ActivateCircuitBreakerBuilder, type ActivateCircuitBreakerIxArgs, type ActivateCircuitBreakerTxArgs, type AddAprCashflowUpdateParams, type AddCashflowUpdateParams, type AddIncentiveRecipientArgs, AddIncentiveRecipientBuilder, type AddIncentiveRecipientIxArgs, AddIncentiveRecipientV3Builder, type AddIncentiveRecipientV3IxArgs, type AddIncentiveRecipientV3TxArgs, type AddNavCashflowUpdateParams, type AprAccountBalanceResponse, type AprAccountYieldResponse, type AssetPriceOracleConfigIxArgs, type AssetPriceOracleConfigTxArgs, type AssetPriceRefreshTarget, type AssetRefreshResult, type AssetType, BALANCE_CHANGE_BASELINE_MAX_AGE_SECS, type Bankineco, type BasicAuthCredentials, type Bigintish, type BuildMarginfiWithdrawInteractionArgs, CONSENSUS_ORACLE_VARIANT, CancelAsyncWithdrawBuilder, type CancelAsyncWithdrawIxArgs, type CancelAsyncWithdrawTxArgs, type CancelIncentiveProposalArgs, CancelIncentiveProposalBuilder, CancelJuniorTrancheWithdrawBuilder, type CancelJuniorTrancheWithdrawIxArgs, type CancelJuniorTrancheWithdrawTxArgs, ClaimIncentiveBuilder, type ClaimIncentiveIxArgs, type ClaimIncentiveTxArgs, ClaimIncentiveV3Builder, type ClaimIncentiveV3IxArgs, type ClaimIncentiveV3TxArgs, type Clock, type CollectSamplesOptions, type ConsensusAssetUpdate, type ConsensusAssetUpdateArgs, type ConsensusHoldingEntry, type ConsensusHoldingSimulation, type ConsensusOracleDeps, type ConsensusOracleHoldingConfig, type ConsensusOraclePublicationResult, ConsensusOracleService, type ConsensusOracleTarget, CrankNavBuilder, type CrankNavIxArgs, type CrankNavTxArgs, CrankPerformanceFeesBuilder, type CrankPerformanceFeesIxArgs, type CrankPerformanceFeesTxArgs, type CreateAccountParams, CreateAssetHoldingBuilder, type CreateAssetHoldingIxArgs, type CreateAssetHoldingTxArgs, CreateIncentiveBuilder, type CreateIncentiveIxArgs, type CreateIncentiveTxArgs, CreateIncentiveV3Builder, type CreateIncentiveV3IxArgs, type CreateIncentiveV3TxArgs, type CreateTokenMintIxs, CreateTrancheStateBuilder, type CreateTrancheStateIxArgs, type CreateTrancheStateTxArgs, CreateVaultBuilder, type CreateVaultClientOptions, type CreateVaultIxArgs, type CreateVaultParams, type CreateVaultTxArgs, type CreateYieldPaymentParams, DEFAULT_CU_PRICE_MICRO_LAMPORTS, DEFAULT_EXTERNAL_WEIGHT_BAND_BPS, DEFAULT_JUNIOR_EARLY_UNSTAKE_FEE_BPS, DEFAULT_JUNIOR_STANDARD_UNSTAKE_FEE_BPS, DEFAULT_JUNIOR_WITHDRAWAL_LOCKUP_SECS, DEFAULT_MARGINFI_WEIGHT_BPS, DEFAULT_MAX_ACCEPTABLE_APY_BPS, DEFAULT_MINTS, DEFAULT_MIN_AMOUNT_UI, DEFAULT_ORACLE_STALENESS_THRESHOLD_SECS, DEFAULT_PRICE_ORACLE_ACCOUNT, DEFAULT_PRICE_STALENESS_SECS, DEFAULT_PRICE_STALENESS_THRESHOLD_SECS, DEFAULT_REBALANCE_BAND_BPS, DEFAULT_SLIPPAGE_BPS, DEFAULT_TARGET_LOCAL_BPS, DEFAULT_TARGET_LOCAL_USDC_TVL_BPS, DEFAULT_VAULT_ID, type DecodedHolding, type DecodedVault, type DecodedVaultTrancheState, type DeleteAccountParams, DepositCuratorFeesBuilder, type DepositCuratorFeesIxArgs, type DepositCuratorFeesTxArgs, DisableCircuitBreakerBuilder, type DisableCircuitBreakerIxArgs, type DisableCircuitBreakerTxArgs, DistributeIncentiveBuilder, type DistributeIncentiveIxArgs, type DistributeIncentiveTxArgs, DistributeIncentiveV3Builder, type DistributeIncentiveV3IxArgs, type DistributeIncentiveV3TxArgs, EXTERNAL_POSITION_SAMPLES, type EvmCallArg, type EvmContractCall, type EvmContractNavPriceConfig, ExecuteDepositBuilder, type ExecuteDepositIxArgs, type ExecuteDepositTxArgs, ExecuteShareSwapBuilder, type ExecuteShareSwapIxArgs, type ExecuteShareSwapTxArgs, ExecuteTrancheDepositBuilder, type ExecuteTrancheDepositIxArgs, type ExecuteTrancheDepositTxArgs, ExecuteTrancheWithdrawBuilder, type ExecuteTrancheWithdrawIxArgs, type ExecuteTrancheWithdrawTxArgs, ExecuteWithdrawBuilder, type ExecuteWithdrawIxArgs, type ExecuteWithdrawTxArgs, type ExternalLiquidityIntegrityOptions, type ExternalLiquidityIntegrityResult, ExternalLiquidityIntegrityService, type ExternalLiquidityIntegritySummary, type ExternalLiquiditySlot, type ExternalLiquiditySourceArgs, type ExternalPosition, type ExternalPositionContext, type ExternalPositionProvider, type ExternalPositionRef, ExternalPositionRegistry, FEE_VAULT_CACHE_CATEGORY, type FeeVaultAccountData, type FetchNestTokenPriceOptions, FulfillAsyncWithdrawBuilder, type FulfillAsyncWithdrawIxArgs, type FulfillAsyncWithdrawTxArgs, FulfillJuniorTrancheWithdrawBuilder, type FulfillJuniorTrancheWithdrawIxArgs, type FulfillJuniorTrancheWithdrawTxArgs, type FulfillSummary, type HoldingNavContribution, type HoldingUpdatePreview, type HttpJsonNavPriceConfig, IDL, IDLE_RESERVE_FLOOR_BPS, IDLE_RESERVE_TARGET_BPS, type IdleLiquidityOptions, type IdleLiquidityResult, IdleLiquidityService, type IdleLiquidityStatus, type IncentiveRecipient, type IncentiveTotals, type IncentiveUsdUpdateArgs, type IncentiveV3OracleState, type IncentiveV3Recipient, type IncentiveV3Totals, InitializeVaultRolesBuilder, type InitializeVaultRolesIxArgs, type InitializeVaultRolesTxArgs, type JuniorWithdrawalMode, JupiterPriceSource, type JupiterPriceSourceOptions, JupiterSwapBuilder, type JupiterSwapIxArgs, type JupiterSwapTxArgs, KaminoLendPositionProvider, KaminoPositionProvider, LIVE_ORACLE_VARIANTS, LIVE_PRICE_REFRESH_INTERVAL_SECS, LOCAL_PROTOCOL_ADMIN, LargeBalanceChangeError, type LargeBalanceChangeViolation, type LiveConsensusOracleDepsOptions, LivePriceSource, type LivePriceSourceOptions, MANAGER_WALLET_NAV_DROP_TRIGGER_BPS, MANAGER_WALLET_NAV_TOLERANCE_BPS, MAX_APY_ANCHOR_WINDOW_SECS, MAX_APY_PREVIOUS_ANCHOR_AGE_SECS, MAX_BALANCE_CHANGE_BPS, MAX_CONSENSUS_SIGNERS, MAX_INCENTIVE_RECIPIENTS, MAX_INCENTIVE_REPORT_TTL, MAX_LUT_ADDRESSES, MAX_MANAGER_WITHDRAW_DESTINATIONS, MAX_ORACLE_IMPLIED_APY_BPS, MAX_PRICE_STALENESS_THRESHOLD_SECS, MIN_EXTERNAL_POSITION_SAMPLES, ManagerRedepositAssetBuilder, type ManagerRedepositAssetIxArgs, type ManagerRedepositAssetTxArgs, type ManagerWalletBalanceSource, type ManagerWalletReconciliation, ManagerWithdrawAssetBuilder, type ManagerWithdrawAssetIxArgs, type ManagerWithdrawAssetTxArgs, MarginfiPositionProvider, type MaxApyAnchorSnapshot, type MintConfig, type MintIdentifier, type MintInfo, MintRegistry, type MintRegistryOptions, type MockYieldAccountConfig, MockYieldTracker, type MockYieldTrackerOptions, type MpcWalletBalanceSource, type MpcWalletBalances, type MpcWalletConfig, NEST_API_BASE_URL, NEST_RWA_SHARE_MINT, NEST_VAULT_SLUG, NEST_WITHDRAWAL_MATCH_TOLERANCE_BPS, type NavAccountBalanceResponse, type NavAccountValueResponse, type NavCrankBlocker, type NavCrankBlockerReason, type NavCrankReadiness, type NavCrankResult, type NavPriceConfig, type NavPricePreview, type NavPriceProvenance, type NavYieldAccount, NestApiError, type NestApiOptions, type NestDepositPlan, NestPriceSource, type NestPriceSourceOptions, type NestRedemptionQuote, type NestRedemptionStatus, ORACLE_ENTRIES_OFFSET, ORACLE_ENTRY_SIZE, ORACLE_SETTLED_NAV_TS_OFFSET, OracleService, PRICE_ORACLE_TYPES_BY_INDEX, PROGRAM_FEE_EXEMPT_OWNER_WHITELIST, PROTOCOL_ADMIN, PROTOCOL_FEE_RECIPIENT, PST_TO_USDC_MAX_SLIPPAGE_BPS, PdaClient, type PendingConsensusSignerSet, type PreparedDirectTransaction, type PreparedSquadsTransaction, type PreparedVaultTransaction, type PreviewNavPriceParams, PriceAsyncWithdrawBuilder, type PriceAsyncWithdrawIxArgs, type PriceAsyncWithdrawTxArgs, type PriceOracleTypeArgs, type PriceSource, ProtocolInteractionBuilder, type ProtocolInteractionIxArgs, type ProtocolInteractionTxArgs, type QuoteFeeUnit, RECONCILIATION_EXTERNAL_VALUE_TOLERANCE_BPS, REPORTABLE_ORACLE_VARIANTS, type RealizedApySimulation, type RedemptionModeArgs, type RefreshLiveOraclePricesParams, RemoveAssetHoldingBuilder, type RemoveAssetHoldingIxArgs, type RemoveAssetHoldingTxArgs, ReportIncentiveV3Builder, type ReportIncentiveV3IxArgs, type ReportIncentiveV3TxArgs, RequestAsyncWithdrawBuilder, type RequestAsyncWithdrawIxArgs, type RequestAsyncWithdrawTxArgs, RequestJuniorTrancheWithdrawBuilder, type RequestJuniorTrancheWithdrawIxArgs, type RequestJuniorTrancheWithdrawTxArgs, type ResolveExternalWithdrawArgs, type ResolvedExternalWithdraw, type ResolvedSquadsWalletRoute, type RollingLimitConfig, type RollingRebalanceLimitConfig, RpcManagerWalletBalanceSource, RpcMpcWalletBalanceSource, type RunLiveConsensusOracleOptions, type RunOptions, type RunSummary, SHARE_DECIMALS, SYSTEM_PROGRAM, SetAssetPriceOracleBuilder, type SetAssetPriceOracleIxArgs, type SetAssetPriceOracleTxArgs, SetExternalLiquidityBuilder, type SetExternalLiquidityIxArgs, type SetExternalLiquidityTxArgs, type SetIncentiveLimitsArgs, SetIncentiveLimitsBuilder, type SetIncentiveLimitsV3Args, SetIncentiveLimitsV3Builder, SetManagerWithdrawDestinationBuilder, type SetManagerWithdrawDestinationIxArgs, type SetManagerWithdrawDestinationTxArgs, SetProtocolFeeBuilder, type SetProtocolFeeIxArgs, type SetProtocolFeeTxArgs, SetVaultConfigBuilder, type SetVaultConfigIxArgs, type SetVaultConfigTxArgs, SettleIncentiveV3Builder, type SettleIncentiveV3IxArgs, type SettleIncentiveV3TxArgs, type SettleVaultParams, type SettleVaultResult, type SettlementSimulation, type SettlementSimulationSnapshot, type SimulateDryRunSettlementParams, type SimulateSettlementArgs, type SimulatedShareClass, SquadsProposalExecutionSimulationError, type SquadsProposalUpload, type SquadsWalletRouteConfig, type StaleBalanceChangeBypass, StaticPositionProvider, SubmitIncentiveBuilder, type SubmitIncentiveIxArgs, type SubmitIncentiveTxArgs, TOKEN_PROGRAM, TOKEN_PROGRAM_ID, type TimelockSettlementKind, type TimelockSettlementOptions, type TimelockSettlementRecord, TimelockSettlementService, type TimelockSettlementSummary, type TrackedAccountValue, type TrancheKindArgs, type TransactionBuilder, TransactionClient, USDC_MINT, USD_STAR_JUNIOR_MINT, USD_STAR_MINT, USD_STAR_PRINCIPAL_MINT, type UpdateAccountParams, UpdateAssetPriceBuilder, type UpdateAssetPriceIxArgs, type UpdateAssetPriceTxArgs, UpdateConsensusOracleBuilder, type UpdateConsensusOracleIxArgs, type UpdateConsensusOracleTxArgs, UpdateConsensusSignersBuilder, type UpdateConsensusSignersIxArgs, type UpdateConsensusSignersTxArgs, type UpdateDynamicAprParams, UpdateTrancheConfigBuilder, type UpdateTrancheConfigIxArgs, type UpdateTrancheConfigTxArgs, VAULT_CACHE_CATEGORY, VAULT_CREATOR_WHITELIST, VAULT_ENVIRONMENTS, VAULT_LOOKUP_TABLES, VAULT_ORACLE_CACHE_CATEGORY, VAULT_PROGRAM_ID, VAULT_PROGRAM_IDS, VAULT_PROGRAM_PUBLIC_KEY, VAULT_ROLE_UPDATE_TIMELOCK_SECS, VAULT_TRANCHE_STATE_CACHE_CATEGORY, VAULT_TRANCHE_WITHDRAWAL_QUEUE_CACHE_CATEGORY, type Vault, type VaultAccountData, VaultBuilderBase, type VaultBuilderContext, type VaultCacheInvalidation, VaultClient, type VaultClientBundle, type VaultEnv, type VaultIncentiveAccount, type VaultIncentiveAccountData, type VaultIncentiveV3Account, type VaultIncentiveV3AccountData, type VaultLookupTableMap, VaultLutManager, type VaultOracleAccountData, type VaultOracleResult, type VaultPricingInputs, type VaultQuote, type VaultQuoteArgs, VaultQuoteClient, type VaultQuoteDirection, type VaultQuoteShareClass, VaultReallocationBuilder, type VaultReallocationIxArgs, type VaultReallocationTxArgs, type VaultTrancheStateAccountData, type VaultTrancheWithdrawalQueueAccountData, type VaultTransactionPlan, type VaultWithdrawalQueueAccount, type VaultWithdrawalQueueAccountData, WALLET_FEE_EXEMPT_WHITELIST, WITHDRAWABLE_RESERVE_FLOOR_BPS, type WithdrawProtocolFeesIxArgs, type WithdrawProtocolFeesTxArgs, type WithdrawalLeg, type WithdrawalPlan, type WithdrawalPricing, WithdrawalQueueService, type WithdrawalQueueSnapshot, type YieldAccount, type YieldAccountSnapshot, type YieldCalculationLog, type YieldCashflow, type YieldPaymentResponse, type YieldPaymentSnapshot, type YieldTracker, type YieldValuationModel, accountingUnitPriceToUsd, addCashflowUpdate, applyEffectiveApy, assertNoLargeBalanceChanges, assertNoUnconfirmedYieldPayments, assertOracleImpliedApy, assertReconciliationExternalValues, buildHoldingUpdate, buildKaminoDepositInteraction, buildKaminoWithdrawInteraction, buildMarginfiWithdrawInteraction, buildNestDepositRequest, buildNestWithdrawalRequest, buildUpdates, candidateGrossNav, coerceBool, collectSamples, collectVaultLookupTableAccounts, confirmYieldPayment, createAccount, createLiveConsensusOracleDeps, createRpcFromConnection, createTokenMint, createTokenMintIxs, createVaultClient, createYieldPayment, dateToStr, decodeNestDepositRequest, decodeNestWithdrawalRequest, decodePendingConsensusSigners, defaultKeypairPath, deleteAccount, discoverVaultsForSigner, externalWithdrawComputeBudget, externalWithdrawLookupTables, fetchExternalPositions, fetchNestRedemptionQuote, fetchNestRedemptionStatus, fetchNestTokenPrice, fetchReceiptMints, filterTargetHoldings, findLargeBalanceChanges, findSquadsWalletRoute, formatSettlementSimulation, fromUiAmount, gatherPricingInputs, getAccount, getAccounts, getAprYield, getBalance, getCashflows, getIncentiveRecipientShareAtas, getIncentiveRecipients, getIncentiveReportRecipients, getIncentiveTotals, getIncentiveV3OracleState, getIncentiveV3RecipientShareAtas, getIncentiveV3Recipients, getIncentiveV3Totals, getNavValue, getRpcUrl, getTotalOutstandingYield, getTotalTrackedValue, getTotalYield, getTrackedValue, getVaultLookupTables, getVaultProgramId, getYield, getYieldPayments, indexConfigByMint, isEvmNavPriceConfig, isNavAccountBalance, isNavAccountValue, isNavYieldAccount, isVaultEnv, keypairAddress, loadKaminoDeposit, loadKaminoWithdrawal, loadKeypair, logProspectiveApy, makeProvider, managerReconciliationStateKey, mintTokensTo, mints, mostFrequent, parseExternalLiquidityRefs, planExternalAllocation, planRebalance, planWithdrawalLegs, prepareSquadsProposalUpload, prepareVaultTransaction, previewNavPrice, previousPhysicalNav, priceInAccountingUnit, publishedConsensusBlockers, quoteWithdrawalPayout, readI64LE, readSplMintSupply, reconcileManagerWalletBalances, reconciliationExternalValues, refreshLiveOraclePrices, resolveExternalWithdraw, resolveKeypairPath, resolveSquadsWalletRoute, resolveTrackedAmounts, resolveWithdrawalPlan, roundToNextUtcMidnight, runLiveConsensusOracle, selectReportableHoldings, settleVault, signerInOracleData, simulateConsensusOracleSettlement, simulateDryRunSettlement, simulateOraclePublication, simulateSquadsProposalExecution, sumPositionsByMint, systemClock, toBigInt, toUiAmount, toWeb3AccountMeta, trackedValueFromResponse, uniqueLutAddresses, updateAccount, updateDynamicApr, validateSquadsWalletRoutes, variantName, vaultAuthorityForWallet, walletReconciliationGuardUpdates, withDiscoveredYieldAccounts, withVaultLookupTables, withdrawalComputeBudget };