@perena/vault-sdk 1.0.30 → 1.0.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.d.ts +713 -11
  2. package/dist/index.js +683 -129
  3. package/package.json +2 -1
package/dist/index.d.ts CHANGED
@@ -1,15 +1,11 @@
1
1
  import * as _solana_kit from '@solana/kit';
2
- import { Address, ProgramDerivedAddressBump, Rpc, SolanaRpcApi, Instruction } from '@solana/kit';
2
+ import { Address, AccountRole, Instruction, Rpc, SolanaRpcApi, ProgramDerivedAddressBump } from '@solana/kit';
3
3
  export { address } from '@solana/kit';
4
4
  import * as _solana_web3_js from '@solana/web3.js';
5
5
  import { PublicKey, Connection, Keypair, SimulatedTransactionResponse, Transaction, TransactionInstruction } from '@solana/web3.js';
6
6
  import * as _anchor_lang_core from '@anchor-lang/core';
7
7
  import { Program, IdlAccounts, BN, AnchorProvider } from '@anchor-lang/core';
8
- import * as common from 'common';
9
- import { BaseAccountClient, InstructionRefs, CustomAccountMeta, TransactionPlan, SingleInstructionBuilderService } from 'common';
10
- import { FetchJupiterUsdPricesOptions, FetchJupiterBalancesOptions } from 'jupiter';
11
- import { FetchNestVaultSharePriceOptions } from 'nest';
12
- export { NEST_API_BASE_URL } from 'nest';
8
+ import { AssociatedTokenSeeds } from '@solana-program/token';
13
9
 
14
10
  /** Bankineco program id (local). Hosts new vault instructions. */
15
11
  declare const VAULT_PROGRAM_ID: Address;
@@ -3400,6 +3396,524 @@ type Bankineco = {
3400
3396
  }
3401
3397
  ];
3402
3398
  },
3399
+ {
3400
+ "name": "executeTrancheWithdrawFromExternal";
3401
+ "docs": [
3402
+ "Instant tranche redemption that may first pull the shortfall out of an",
3403
+ "external liquidity source. `external_withdraw_ix_refs` and",
3404
+ "`external_liquidity_source` are optional but must be passed together;",
3405
+ "with both `None` this is equivalent to `execute_tranche_withdraw`."
3406
+ ];
3407
+ "discriminator": [
3408
+ 36,
3409
+ 174,
3410
+ 206,
3411
+ 234,
3412
+ 239,
3413
+ 177,
3414
+ 233,
3415
+ 249
3416
+ ];
3417
+ "accounts": [
3418
+ {
3419
+ "name": "user";
3420
+ "writable": true;
3421
+ "signer": true;
3422
+ },
3423
+ {
3424
+ "name": "vault";
3425
+ "writable": true;
3426
+ },
3427
+ {
3428
+ "name": "vaultOracle";
3429
+ },
3430
+ {
3431
+ "name": "vaultTrancheState";
3432
+ "writable": true;
3433
+ },
3434
+ {
3435
+ "name": "assetMint";
3436
+ },
3437
+ {
3438
+ "name": "trancheShareMint";
3439
+ "writable": true;
3440
+ },
3441
+ {
3442
+ "name": "userAssetAta";
3443
+ "writable": true;
3444
+ "pda": {
3445
+ "seeds": [
3446
+ {
3447
+ "kind": "account";
3448
+ "path": "user";
3449
+ },
3450
+ {
3451
+ "kind": "account";
3452
+ "path": "assetTokenProgram";
3453
+ },
3454
+ {
3455
+ "kind": "account";
3456
+ "path": "assetMint";
3457
+ }
3458
+ ];
3459
+ "program": {
3460
+ "kind": "const";
3461
+ "value": [
3462
+ 140,
3463
+ 151,
3464
+ 37,
3465
+ 143,
3466
+ 78,
3467
+ 36,
3468
+ 137,
3469
+ 241,
3470
+ 187,
3471
+ 61,
3472
+ 16,
3473
+ 41,
3474
+ 20,
3475
+ 142,
3476
+ 13,
3477
+ 131,
3478
+ 11,
3479
+ 90,
3480
+ 19,
3481
+ 153,
3482
+ 218,
3483
+ 255,
3484
+ 16,
3485
+ 132,
3486
+ 4,
3487
+ 142,
3488
+ 123,
3489
+ 216,
3490
+ 219,
3491
+ 233,
3492
+ 248,
3493
+ 89
3494
+ ];
3495
+ };
3496
+ };
3497
+ },
3498
+ {
3499
+ "name": "vaultAssetAta";
3500
+ "writable": true;
3501
+ "pda": {
3502
+ "seeds": [
3503
+ {
3504
+ "kind": "account";
3505
+ "path": "vault";
3506
+ },
3507
+ {
3508
+ "kind": "account";
3509
+ "path": "assetTokenProgram";
3510
+ },
3511
+ {
3512
+ "kind": "account";
3513
+ "path": "assetMint";
3514
+ }
3515
+ ];
3516
+ "program": {
3517
+ "kind": "const";
3518
+ "value": [
3519
+ 140,
3520
+ 151,
3521
+ 37,
3522
+ 143,
3523
+ 78,
3524
+ 36,
3525
+ 137,
3526
+ 241,
3527
+ 187,
3528
+ 61,
3529
+ 16,
3530
+ 41,
3531
+ 20,
3532
+ 142,
3533
+ 13,
3534
+ 131,
3535
+ 11,
3536
+ 90,
3537
+ 19,
3538
+ 153,
3539
+ 218,
3540
+ 255,
3541
+ 16,
3542
+ 132,
3543
+ 4,
3544
+ 142,
3545
+ 123,
3546
+ 216,
3547
+ 219,
3548
+ 233,
3549
+ 248,
3550
+ 89
3551
+ ];
3552
+ };
3553
+ };
3554
+ },
3555
+ {
3556
+ "name": "userTrancheShareAta";
3557
+ "writable": true;
3558
+ "pda": {
3559
+ "seeds": [
3560
+ {
3561
+ "kind": "account";
3562
+ "path": "user";
3563
+ },
3564
+ {
3565
+ "kind": "account";
3566
+ "path": "shareTokenProgram";
3567
+ },
3568
+ {
3569
+ "kind": "account";
3570
+ "path": "trancheShareMint";
3571
+ }
3572
+ ];
3573
+ "program": {
3574
+ "kind": "const";
3575
+ "value": [
3576
+ 140,
3577
+ 151,
3578
+ 37,
3579
+ 143,
3580
+ 78,
3581
+ 36,
3582
+ 137,
3583
+ 241,
3584
+ 187,
3585
+ 61,
3586
+ 16,
3587
+ 41,
3588
+ 20,
3589
+ 142,
3590
+ 13,
3591
+ 131,
3592
+ 11,
3593
+ 90,
3594
+ 19,
3595
+ 153,
3596
+ 218,
3597
+ 255,
3598
+ 16,
3599
+ 132,
3600
+ 4,
3601
+ 142,
3602
+ 123,
3603
+ 216,
3604
+ 219,
3605
+ 233,
3606
+ 248,
3607
+ 89
3608
+ ];
3609
+ };
3610
+ };
3611
+ },
3612
+ {
3613
+ "name": "assetTokenProgram";
3614
+ },
3615
+ {
3616
+ "name": "shareTokenProgram";
3617
+ },
3618
+ {
3619
+ "name": "associatedTokenProgram";
3620
+ "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
3621
+ },
3622
+ {
3623
+ "name": "systemProgram";
3624
+ "address": "11111111111111111111111111111111";
3625
+ }
3626
+ ];
3627
+ "args": [
3628
+ {
3629
+ "name": "kind";
3630
+ "type": {
3631
+ "defined": {
3632
+ "name": "trancheKind";
3633
+ };
3634
+ };
3635
+ },
3636
+ {
3637
+ "name": "shareAmount";
3638
+ "type": "u64";
3639
+ },
3640
+ {
3641
+ "name": "externalWithdrawIxRefs";
3642
+ "type": {
3643
+ "option": {
3644
+ "defined": {
3645
+ "name": "instructionRefs";
3646
+ };
3647
+ };
3648
+ };
3649
+ },
3650
+ {
3651
+ "name": "externalLiquiditySource";
3652
+ "type": {
3653
+ "option": "u8";
3654
+ };
3655
+ }
3656
+ ];
3657
+ },
3658
+ {
3659
+ "name": "executeTrancheWithdrawFromExternalFeeExempt";
3660
+ "discriminator": [
3661
+ 217,
3662
+ 186,
3663
+ 123,
3664
+ 85,
3665
+ 254,
3666
+ 115,
3667
+ 196,
3668
+ 110
3669
+ ];
3670
+ "accounts": [
3671
+ {
3672
+ "name": "user";
3673
+ "writable": true;
3674
+ "signer": true;
3675
+ },
3676
+ {
3677
+ "name": "vault";
3678
+ "writable": true;
3679
+ },
3680
+ {
3681
+ "name": "vaultOracle";
3682
+ },
3683
+ {
3684
+ "name": "vaultTrancheState";
3685
+ "writable": true;
3686
+ },
3687
+ {
3688
+ "name": "assetMint";
3689
+ },
3690
+ {
3691
+ "name": "trancheShareMint";
3692
+ "writable": true;
3693
+ },
3694
+ {
3695
+ "name": "userAssetAta";
3696
+ "writable": true;
3697
+ "pda": {
3698
+ "seeds": [
3699
+ {
3700
+ "kind": "account";
3701
+ "path": "user";
3702
+ },
3703
+ {
3704
+ "kind": "account";
3705
+ "path": "assetTokenProgram";
3706
+ },
3707
+ {
3708
+ "kind": "account";
3709
+ "path": "assetMint";
3710
+ }
3711
+ ];
3712
+ "program": {
3713
+ "kind": "const";
3714
+ "value": [
3715
+ 140,
3716
+ 151,
3717
+ 37,
3718
+ 143,
3719
+ 78,
3720
+ 36,
3721
+ 137,
3722
+ 241,
3723
+ 187,
3724
+ 61,
3725
+ 16,
3726
+ 41,
3727
+ 20,
3728
+ 142,
3729
+ 13,
3730
+ 131,
3731
+ 11,
3732
+ 90,
3733
+ 19,
3734
+ 153,
3735
+ 218,
3736
+ 255,
3737
+ 16,
3738
+ 132,
3739
+ 4,
3740
+ 142,
3741
+ 123,
3742
+ 216,
3743
+ 219,
3744
+ 233,
3745
+ 248,
3746
+ 89
3747
+ ];
3748
+ };
3749
+ };
3750
+ },
3751
+ {
3752
+ "name": "vaultAssetAta";
3753
+ "writable": true;
3754
+ "pda": {
3755
+ "seeds": [
3756
+ {
3757
+ "kind": "account";
3758
+ "path": "vault";
3759
+ },
3760
+ {
3761
+ "kind": "account";
3762
+ "path": "assetTokenProgram";
3763
+ },
3764
+ {
3765
+ "kind": "account";
3766
+ "path": "assetMint";
3767
+ }
3768
+ ];
3769
+ "program": {
3770
+ "kind": "const";
3771
+ "value": [
3772
+ 140,
3773
+ 151,
3774
+ 37,
3775
+ 143,
3776
+ 78,
3777
+ 36,
3778
+ 137,
3779
+ 241,
3780
+ 187,
3781
+ 61,
3782
+ 16,
3783
+ 41,
3784
+ 20,
3785
+ 142,
3786
+ 13,
3787
+ 131,
3788
+ 11,
3789
+ 90,
3790
+ 19,
3791
+ 153,
3792
+ 218,
3793
+ 255,
3794
+ 16,
3795
+ 132,
3796
+ 4,
3797
+ 142,
3798
+ 123,
3799
+ 216,
3800
+ 219,
3801
+ 233,
3802
+ 248,
3803
+ 89
3804
+ ];
3805
+ };
3806
+ };
3807
+ },
3808
+ {
3809
+ "name": "userTrancheShareAta";
3810
+ "writable": true;
3811
+ "pda": {
3812
+ "seeds": [
3813
+ {
3814
+ "kind": "account";
3815
+ "path": "user";
3816
+ },
3817
+ {
3818
+ "kind": "account";
3819
+ "path": "shareTokenProgram";
3820
+ },
3821
+ {
3822
+ "kind": "account";
3823
+ "path": "trancheShareMint";
3824
+ }
3825
+ ];
3826
+ "program": {
3827
+ "kind": "const";
3828
+ "value": [
3829
+ 140,
3830
+ 151,
3831
+ 37,
3832
+ 143,
3833
+ 78,
3834
+ 36,
3835
+ 137,
3836
+ 241,
3837
+ 187,
3838
+ 61,
3839
+ 16,
3840
+ 41,
3841
+ 20,
3842
+ 142,
3843
+ 13,
3844
+ 131,
3845
+ 11,
3846
+ 90,
3847
+ 19,
3848
+ 153,
3849
+ 218,
3850
+ 255,
3851
+ 16,
3852
+ 132,
3853
+ 4,
3854
+ 142,
3855
+ 123,
3856
+ 216,
3857
+ 219,
3858
+ 233,
3859
+ 248,
3860
+ 89
3861
+ ];
3862
+ };
3863
+ };
3864
+ },
3865
+ {
3866
+ "name": "assetTokenProgram";
3867
+ },
3868
+ {
3869
+ "name": "shareTokenProgram";
3870
+ },
3871
+ {
3872
+ "name": "associatedTokenProgram";
3873
+ "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
3874
+ },
3875
+ {
3876
+ "name": "systemProgram";
3877
+ "address": "11111111111111111111111111111111";
3878
+ }
3879
+ ];
3880
+ "args": [
3881
+ {
3882
+ "name": "kind";
3883
+ "type": {
3884
+ "defined": {
3885
+ "name": "trancheKind";
3886
+ };
3887
+ };
3888
+ },
3889
+ {
3890
+ "name": "shareAmount";
3891
+ "type": "u64";
3892
+ },
3893
+ {
3894
+ "name": "externalWithdrawIxRefs";
3895
+ "type": {
3896
+ "option": {
3897
+ "defined": {
3898
+ "name": "instructionRefs";
3899
+ };
3900
+ };
3901
+ };
3902
+ },
3903
+ {
3904
+ "name": "externalLiquiditySource";
3905
+ "type": {
3906
+ "option": "u8";
3907
+ };
3908
+ },
3909
+ {
3910
+ "name": "signerSeeds";
3911
+ "type": {
3912
+ "vec": "bytes";
3913
+ };
3914
+ }
3915
+ ];
3916
+ },
3403
3917
  {
3404
3918
  "name": "executeWithdraw";
3405
3919
  "discriminator": [
@@ -13840,6 +14354,129 @@ type Bankineco = {
13840
14354
  type Vault = Bankineco;
13841
14355
  declare const IDL: Vault;
13842
14356
 
14357
+ interface CpiMapping {
14358
+ indices: Buffer;
14359
+ lengths: Buffer;
14360
+ }
14361
+
14362
+ interface CpiRefs {
14363
+ accounts: CpiMapping;
14364
+ types: Buffer;
14365
+ args: Buffer;
14366
+ }
14367
+ interface InstructionRefs {
14368
+ cpi: CpiRefs;
14369
+ tracked: Buffer;
14370
+ }
14371
+
14372
+ type CustomAccountMeta = {
14373
+ address: Address;
14374
+ role: AccountRole;
14375
+ isRequiredAta?: AssociatedTokenSeeds;
14376
+ };
14377
+
14378
+ interface TransactionPlan {
14379
+ instructions: Instruction[];
14380
+ lookupTables?: Address[];
14381
+ }
14382
+
14383
+ type AssetType = "LST" | "YBA" | "Stablecoin" | "Standard";
14384
+ type MintIdentifier = string | Address;
14385
+ interface MintConfig {
14386
+ address: Address;
14387
+ symbol: string;
14388
+ decimals: number;
14389
+ name?: string;
14390
+ assetType: AssetType;
14391
+ isToken2022?: boolean;
14392
+ }
14393
+ interface MintInfo extends MintConfig {
14394
+ tokenProgram: Address;
14395
+ toUiAmount: (amount: bigint) => number;
14396
+ fromUiAmount: (amount: number) => bigint;
14397
+ }
14398
+ interface MintRegistryOptions {
14399
+ includeDefaults?: boolean;
14400
+ custom?: MintConfig[];
14401
+ }
14402
+
14403
+ declare const DEFAULT_MINTS: MintConfig[];
14404
+
14405
+ declare class MintRegistry {
14406
+ private byAddress;
14407
+ private bySymbol;
14408
+ constructor(options?: MintRegistryOptions);
14409
+ register(config: MintConfig): void;
14410
+ get(mint: MintIdentifier): MintInfo | undefined;
14411
+ all(): MintInfo[];
14412
+ standardAssets(): MintInfo[];
14413
+ stablecoins(): MintInfo[];
14414
+ lsts(): MintInfo[];
14415
+ yieldBearingAssets(): MintInfo[];
14416
+ filterAssetsByType(assetType: AssetType): MintInfo[];
14417
+ symbols(): string[];
14418
+ addresses(): MintInfo["address"][];
14419
+ }
14420
+ declare const mints: MintRegistry;
14421
+
14422
+ interface CacheEntry<T> {
14423
+ data: T;
14424
+ timestamp: number;
14425
+ }
14426
+ interface CacheTtlConfig {
14427
+ defaultTtlMs?: number;
14428
+ categoryTtlMs?: Record<string, number>;
14429
+ }
14430
+ declare class DataCache {
14431
+ protected cache: Map<string, Map<string, CacheEntry<unknown>>>;
14432
+ protected ttlConfig: CacheTtlConfig;
14433
+ constructor(ttlConfig?: CacheTtlConfig);
14434
+ getData<T>(fetchFn: () => Promise<T | null>, category: string, id: string, options?: {
14435
+ cacheNull?: boolean;
14436
+ }): Promise<{
14437
+ data: T | null;
14438
+ fromCache: boolean;
14439
+ }>;
14440
+ getDataOrThrow<T>(fetchFn: () => Promise<T | null>, category: string, id: string, options?: {
14441
+ cacheNull?: boolean;
14442
+ }): Promise<{
14443
+ data: T;
14444
+ fromCache: boolean;
14445
+ }>;
14446
+ getDataBatch<T>(fetchFn: () => Promise<(T | null)[]>, category: string, ids: string[]): Promise<{
14447
+ data: T[];
14448
+ fromCache: boolean;
14449
+ }>;
14450
+ private getTtlForCategory;
14451
+ protected isStale(entry: CacheEntry<unknown>, category: string): boolean;
14452
+ protected tryFromCache<T>(category: string, id: string): T | null;
14453
+ protected setCache<T>(category: string, id: string, data: T): void;
14454
+ clearCacheEntry(category: string, id: string): void;
14455
+ clearCategory(category: string): void;
14456
+ clearAllCache(): void;
14457
+ }
14458
+
14459
+ declare class BaseAccountClient {
14460
+ protected readonly rpc: Rpc<SolanaRpcApi>;
14461
+ readonly dataCache: DataCache;
14462
+ protected constructor(rpc: Rpc<SolanaRpcApi>, options?: Pick<CacheTtlConfig, "defaultTtlMs" | "categoryTtlMs">);
14463
+ splAtaExists(ata: Address): Promise<boolean>;
14464
+ }
14465
+
14466
+ declare abstract class BaseIXBuilderService<TContext, TIxArgs, TTxArgs = TIxArgs, TTxResult = TransactionPlan> {
14467
+ protected readonly context: TContext;
14468
+ constructor(context: TContext);
14469
+ abstract getIx(args: TIxArgs): Promise<Instruction>;
14470
+ abstract getTx(args: TTxArgs): Promise<TTxResult>;
14471
+ }
14472
+ declare abstract class SingleInstructionBuilderService<TContext, TIxArgs, TTxArgs = TIxArgs, TTxPlan extends TransactionPlan = TransactionPlan> extends BaseIXBuilderService<TContext, TIxArgs, TTxArgs, TTxPlan> {
14473
+ protected deriveIxArgs(txArgs: TTxArgs): Promise<TIxArgs>;
14474
+ protected buildPreambleInstructions(_args: TIxArgs, _txArgs: TTxArgs): Promise<Instruction[]>;
14475
+ protected buildLookupTables(_args: TIxArgs, _txArgs: TTxArgs): Promise<readonly Address[] | undefined>;
14476
+ protected buildPlanExtras(_args: TIxArgs, _txArgs: TTxArgs): Promise<Omit<TTxPlan, "instructions" | "lookupTables"> | undefined>;
14477
+ getTx(txArgs: TTxArgs): Promise<TTxPlan>;
14478
+ }
14479
+
13843
14480
  /**
13844
14481
  * PDA derivation for the vault program.
13845
14482
  *
@@ -14605,6 +15242,9 @@ interface ExecuteTrancheWithdrawIxArgs {
14605
15242
  shareTokenProgram: Address;
14606
15243
  kind: TrancheKindArgs;
14607
15244
  shareAmount: BN;
15245
+ externalWithdrawIxRefs: InstructionRefs | null;
15246
+ externalLiquiditySource: number | null;
15247
+ externalWithdrawAccounts: CustomAccountMeta[];
14608
15248
  /** PDA derivation seeds, including the bump, for the fee-exempt route. */
14609
15249
  addressSeeds?: readonly Uint8Array[];
14610
15250
  }
@@ -14619,6 +15259,16 @@ interface ExecuteTrancheWithdrawTxArgs {
14619
15259
  shareAmount: bigint;
14620
15260
  assetTokenProgram?: Address;
14621
15261
  shareTokenProgram?: Address;
15262
+ externalWithdrawIxRefs?: InstructionRefs;
15263
+ externalLiquiditySource?: number;
15264
+ externalWithdrawAccounts?: CustomAccountMeta[];
15265
+ lookupTables?: Address[];
15266
+ /**
15267
+ * When true, skips the automatic detection of on-chain Marginfi external
15268
+ * liquidity and always generates the local-only `ExecuteTrancheWithdraw`
15269
+ * instruction.
15270
+ */
15271
+ skipExternalLiquidity?: boolean;
14622
15272
  /** PDA derivation seeds, including the bump, for the fee-exempt route. */
14623
15273
  addressSeeds?: readonly Uint8Array[];
14624
15274
  }
@@ -15250,18 +15900,20 @@ declare class ExecuteTrancheWithdrawBuilder extends VaultBuilderBase<ExecuteTran
15250
15900
  getIxData(args: ExecuteTrancheWithdrawIxArgs): {
15251
15901
  kind: TrancheKindArgs;
15252
15902
  shareAmount: BN;
15903
+ externalWithdrawIxRefs: InstructionRefs | null;
15904
+ externalLiquiditySource: number | null;
15253
15905
  addressSeeds: readonly Uint8Array<ArrayBufferLike>[] | undefined;
15254
15906
  };
15255
15907
  getIx(args: ExecuteTrancheWithdrawIxArgs): Promise<_solana_kit.Instruction<string, readonly (_solana_kit.AccountLookupMeta<string, string> | _solana_kit.AccountMeta<string>)[]>>;
15256
15908
  protected deriveIxArgs(txArgs: ExecuteTrancheWithdrawTxArgs): Promise<ExecuteTrancheWithdrawIxArgs>;
15909
+ protected buildLookupTables(_args: ExecuteTrancheWithdrawIxArgs, txArgs: ExecuteTrancheWithdrawTxArgs): Promise<readonly Address[] | undefined>;
15257
15910
  protected buildPreambleInstructions(args: ExecuteTrancheWithdrawIxArgs): Promise<_solana_kit.Instruction<string, readonly (_solana_kit.AccountLookupMeta<string, string> | _solana_kit.AccountMeta<string>)[]>[]>;
15258
15911
  protected buildPlanExtras(args: ExecuteTrancheWithdrawIxArgs): Promise<{
15259
15912
  postSuccessCacheInvalidations: {
15260
- vaultPda: _solana_kit.Address;
15261
- vaultTrancheStatePda: _solana_kit.Address;
15913
+ vaultPda: Address;
15914
+ vaultTrancheStatePda: Address;
15262
15915
  }[];
15263
15916
  }>;
15264
- getTx(txArgs: ExecuteTrancheWithdrawTxArgs): Promise<VaultTransactionPlan>;
15265
15917
  }
15266
15918
 
15267
15919
  declare class ExecuteWithdrawBuilder extends VaultBuilderBase<ExecuteWithdrawIxArgs, ExecuteWithdrawTxArgs> {
@@ -15282,7 +15934,7 @@ declare class ExecuteWithdrawBuilder extends VaultBuilderBase<ExecuteWithdrawIxA
15282
15934
  };
15283
15935
  getIxData(args: ExecuteWithdrawIxArgs): {
15284
15936
  shareAmount: BN;
15285
- externalWithdrawIxRefs: common.InstructionRefs | null;
15937
+ externalWithdrawIxRefs: InstructionRefs | null;
15286
15938
  externalLiquiditySource: number | null;
15287
15939
  addressSeeds: readonly Uint8Array<ArrayBufferLike>[] | undefined;
15288
15940
  };
@@ -16478,6 +17130,41 @@ declare function assertNoUnconfirmedYieldPayments(yieldTracker: YieldTracker | u
16478
17130
  */
16479
17131
  declare function withDiscoveredYieldAccounts(yieldTracker: YieldTracker | undefined, target: ConsensusOracleTarget, vaultState: DecodedVault, excludedMints: ReadonlySet<string>, log: (msg: string) => void): Promise<ConsensusOracleTarget>;
16480
17132
 
17133
+ /**
17134
+ * Wallet token balances, from the Jupiter Ultra balances API with an on-chain
17135
+ * RPC fallback.
17136
+ *
17137
+ * Jupiter: GET https://lite-api.jup.ag/ultra/v1/balances/{owner}
17138
+ * → { "<mint>": { amount, uiAmount, slot, isFrozen }, "SOL": {…} }
17139
+ * RPC: `getParsedTokenAccountsByOwner` over the SPL Token and Token-2022
17140
+ * programs, summed per mint.
17141
+ *
17142
+ * Amounts are raw base units in both paths — no decimal conversion is applied.
17143
+ * Native SOL is skipped; these are SPL holdings only.
17144
+ */
17145
+
17146
+ interface FetchJupiterBalancesOptions {
17147
+ baseUrl?: string;
17148
+ fetchFn?: typeof fetch;
17149
+ }
17150
+
17151
+ /**
17152
+ * Jupiter price API (`GET /price/v3`).
17153
+ *
17154
+ * Batched at 50 ids with a small retry, reading `usdPrice` from each entry.
17155
+ * Returns a plain `mint -> USD price` record; callers decide what to do with
17156
+ * mints the API had no positive price for (they are simply absent).
17157
+ */
17158
+
17159
+ interface FetchJupiterUsdPricesOptions {
17160
+ /** Override the price endpoint (e.g. the keyed `api.jup.ag` host). */
17161
+ baseUrl?: string;
17162
+ /** Retry attempts per batch request. */
17163
+ retries?: number;
17164
+ /** Injectable fetch (for tests); defaults to global `fetch`. */
17165
+ fetchFn?: typeof fetch;
17166
+ }
17167
+
16481
17168
  /**
16482
17169
  * {@link PriceSource} adapter over the `jupiter` package's price API.
16483
17170
  *
@@ -16493,6 +17180,21 @@ declare class JupiterPriceSource implements PriceSource {
16493
17180
  fetchUsdPrices(mints: Address[]): Promise<Record<string, number>>;
16494
17181
  }
16495
17182
 
17183
+ /**
17184
+ * Nest Credit vault price API.
17185
+ *
17186
+ * GET {baseUrl}/vaults/{slug}/price
17187
+ * → { data: { interpolatedPrice, price } }
17188
+ *
17189
+ * `interpolatedPrice` is preferred when present; `price` is the fallback. Both
17190
+ * are USD per vault share.
17191
+ */
17192
+ declare const NEST_API_BASE_URL = "https://api.nest.credit/v1";
17193
+ interface FetchNestVaultSharePriceOptions {
17194
+ baseUrl?: string;
17195
+ fetchFn?: typeof fetch;
17196
+ }
17197
+
16496
17198
  /**
16497
17199
  * {@link PriceSource} adapter over the `nest` package's price API, bound to the
16498
17200
  * Perena vault's Nest slug and share mint.
@@ -16985,4 +17687,4 @@ declare class IdleLiquidityService {
16985
17687
  private executeSwap;
16986
17688
  }
16987
17689
 
16988
- export { ASSET_DECIMALS, ASSET_REBALANCE_COOLDOWN_SECS, type AccountBalanceResponse, AccountClient, type AccountYieldResponse, ActivateCircuitBreakerBuilder, type ActivateCircuitBreakerIxArgs, type ActivateCircuitBreakerTxArgs, type AssetPriceOracleConfigIxArgs, type AssetPriceOracleConfigTxArgs, type AssetPriceRefreshTarget, type AssetRefreshResult, type Bankineco, type BasicAuthCredentials, type Bigintish, CONSENSUS_ORACLE_VARIANT, CancelJuniorTrancheWithdrawBuilder, type CancelJuniorTrancheWithdrawIxArgs, type CancelJuniorTrancheWithdrawTxArgs, 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, type CreateTokenMintIxs, CreateTrancheStateBuilder, type CreateTrancheStateIxArgs, type CreateTrancheStateTxArgs, CreateVaultBuilder, type CreateVaultClientOptions, type CreateVaultIxArgs, type CreateVaultParams, type CreateVaultTxArgs, type CreateYieldPaymentParams, DEFAULT_CU_PRICE_MICRO_LAMPORTS, DEFAULT_JUNIOR_EARLY_UNSTAKE_FEE_BPS, DEFAULT_JUNIOR_STANDARD_UNSTAKE_FEE_BPS, DEFAULT_JUNIOR_WITHDRAWAL_LOCKUP_SECS, DEFAULT_MAX_ACCEPTABLE_APY_BPS, DEFAULT_MAX_ACCOUNTS, 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_VAULT_ID, type DecodedHolding, type DecodedVault, type DecodedVaultTrancheState, type DeleteAccountParams, DisableCircuitBreakerBuilder, type DisableCircuitBreakerIxArgs, type DisableCircuitBreakerTxArgs, EXTERNAL_POSITION_SAMPLES, 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, FulfillJuniorTrancheWithdrawBuilder, type FulfillJuniorTrancheWithdrawIxArgs, type FulfillJuniorTrancheWithdrawTxArgs, type FulfillSummary, type HoldingNavContribution, type HoldingUpdatePreview, IDL, IDLE_RESERVE_FLOOR_BPS, IDLE_RESERVE_TARGET_BPS, type IdleLiquidityOptions, type IdleLiquidityResult, IdleLiquidityService, type IdleLiquidityStatus, InitializeVaultRolesBuilder, type InitializeVaultRolesIxArgs, type InitializeVaultRolesTxArgs, type JuniorWithdrawalMode, JupiterBalanceSource, type JupiterBalanceSourceOptions, JupiterPriceSource, type JupiterPriceSourceOptions, JupiterSwapBuilder, type JupiterSwapIxArgs, type JupiterSwapTxArgs, KaminoPositionProvider, LIVE_ORACLE_VARIANTS, LIVE_PRICE_REFRESH_INTERVAL_SECS, LOCAL_PROTOCOL_ADMIN, type LiveConsensusOracleDepsOptions, LivePriceSource, type LivePriceSourceOptions, MAX_CONSENSUS_SIGNERS, MAX_PRICE_STALENESS_THRESHOLD_SECS, MIN_EXTERNAL_POSITION_SAMPLES, ManagerRedepositAssetBuilder, type ManagerRedepositAssetIxArgs, type ManagerRedepositAssetTxArgs, ManagerWithdrawAssetBuilder, type ManagerWithdrawAssetIxArgs, type ManagerWithdrawAssetTxArgs, MarginfiPositionProvider, type MockYieldAccountConfig, MockYieldTracker, type MockYieldTrackerOptions, NEST_RWA_SHARE_MINT, NEST_VAULT_SLUG, type NavCrankBlocker, type NavCrankBlockerReason, type NavCrankReadiness, type NavCrankResult, NestPriceSource, type NestPriceSourceOptions, 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, PdaClient, type PreparedDirectTransaction, type PreparedSquadsTransaction, type PreparedVaultTransaction, type PriceOracleTypeArgs, type PriceSource, ProtocolInteractionBuilder, type ProtocolInteractionIxArgs, type ProtocolInteractionTxArgs, type QuoteFeeUnit, REPORTABLE_ORACLE_VARIANTS, type RefreshLiveOraclePricesParams, RemoveAssetHoldingBuilder, type RemoveAssetHoldingIxArgs, type RemoveAssetHoldingTxArgs, RequestJuniorTrancheWithdrawBuilder, type RequestJuniorTrancheWithdrawIxArgs, type RequestJuniorTrancheWithdrawTxArgs, type ResolvedSquadsWalletRoute, type RollingLimitConfig, type RollingRebalanceLimitConfig, type RunLiveConsensusOracleOptions, type RunOptions, type RunSummary, SHARE_DECIMALS, SYSTEM_PROGRAM, SetAssetPriceOracleBuilder, type SetAssetPriceOracleIxArgs, type SetAssetPriceOracleTxArgs, SetExternalLiquidityBuilder, type SetExternalLiquidityIxArgs, type SetExternalLiquidityTxArgs, SetProtocolFeeBuilder, type SetProtocolFeeIxArgs, type SetProtocolFeeTxArgs, SetVaultConfigBuilder, type SetVaultConfigIxArgs, type SetVaultConfigTxArgs, type SettleVaultParams, type SettleVaultResult, type SettlementSimulation, type SettlementSimulationSnapshot, type SimulateDryRunSettlementParams, type SimulateSettlementArgs, type SimulatedShareClass, type SquadsWalletRouteConfig, StaticPositionProvider, TOKEN_PROGRAM, TOKEN_PROGRAM_ID, 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_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 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 WalletBalanceSource, type WithdrawProtocolFeesIxArgs, type WithdrawProtocolFeesTxArgs, type WithdrawTrancheFeesIxArgs, type WithdrawTrancheFeesTxArgs, WithdrawalQueueService, type WithdrawalQueueSnapshot, type YieldAccount, type YieldAccountSnapshot, type YieldCalculationLog, type YieldPaymentResponse, type YieldPaymentSnapshot, type YieldTracker, accountingUnitPriceToUsd, addCashflowUpdate, applyEffectiveApy, assertNoUnconfirmedYieldPayments, buildHoldingUpdate, buildUpdates, coerceBool, collectSamples, confirmYieldPayment, createAccount, createLiveConsensusOracleDeps, createRpcFromConnection, createTokenMint, createTokenMintIxs, createVaultClient, createYieldPayment, dateToStr, defaultKeypairPath, deleteAccount, discoverVaultsForSigner, fetchExternalPositions, fetchNestTokenPrice, fetchReceiptMints, filterTargetHoldings, findSquadsWalletRoute, formatSettlementSimulation, fromUiAmount, gatherPricingInputs, getAccounts, getBalance, getCashflows, getRpcUrl, getTotalOutstandingYield, getTotalYield, getVaultProgramId, getYield, getYieldPayments, indexConfigByMint, isVaultEnv, keypairAddress, loadKeypair, logProspectiveApy, makeProvider, mintTokensTo, mostFrequent, parseExternalLiquidityRefs, planRebalance, prepareVaultTransaction, priceInAccountingUnit, readI64LE, readSplMintSupply, refreshLiveOraclePrices, resolveKeypairPath, resolveSquadsWalletRoute, resolveTrackedAmounts, roundToNextUtcMidnight, runLiveConsensusOracle, selectReportableHoldings, settleVault, signerInOracleData, simulateConsensusOracleSettlement, simulateDryRunSettlement, sumPositionsByMint, systemClock, toBigInt, toUiAmount, updateAccount, updateDynamicApr, validateSquadsWalletRoutes, variantName, vaultAuthorityForWallet, withDiscoveredYieldAccounts };
17690
+ export { ASSET_DECIMALS, ASSET_REBALANCE_COOLDOWN_SECS, type AccountBalanceResponse, AccountClient, type AccountYieldResponse, ActivateCircuitBreakerBuilder, type ActivateCircuitBreakerIxArgs, type ActivateCircuitBreakerTxArgs, type AssetPriceOracleConfigIxArgs, type AssetPriceOracleConfigTxArgs, type AssetPriceRefreshTarget, type AssetRefreshResult, type AssetType, type Bankineco, type BasicAuthCredentials, type Bigintish, CONSENSUS_ORACLE_VARIANT, CancelJuniorTrancheWithdrawBuilder, type CancelJuniorTrancheWithdrawIxArgs, type CancelJuniorTrancheWithdrawTxArgs, 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, type CreateTokenMintIxs, CreateTrancheStateBuilder, type CreateTrancheStateIxArgs, type CreateTrancheStateTxArgs, CreateVaultBuilder, type CreateVaultClientOptions, type CreateVaultIxArgs, type CreateVaultParams, type CreateVaultTxArgs, type CreateYieldPaymentParams, DEFAULT_CU_PRICE_MICRO_LAMPORTS, DEFAULT_JUNIOR_EARLY_UNSTAKE_FEE_BPS, DEFAULT_JUNIOR_STANDARD_UNSTAKE_FEE_BPS, DEFAULT_JUNIOR_WITHDRAWAL_LOCKUP_SECS, DEFAULT_MAX_ACCEPTABLE_APY_BPS, DEFAULT_MAX_ACCOUNTS, 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_VAULT_ID, type DecodedHolding, type DecodedVault, type DecodedVaultTrancheState, type DeleteAccountParams, DisableCircuitBreakerBuilder, type DisableCircuitBreakerIxArgs, type DisableCircuitBreakerTxArgs, EXTERNAL_POSITION_SAMPLES, 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, FulfillJuniorTrancheWithdrawBuilder, type FulfillJuniorTrancheWithdrawIxArgs, type FulfillJuniorTrancheWithdrawTxArgs, type FulfillSummary, type HoldingNavContribution, type HoldingUpdatePreview, IDL, IDLE_RESERVE_FLOOR_BPS, IDLE_RESERVE_TARGET_BPS, type IdleLiquidityOptions, type IdleLiquidityResult, IdleLiquidityService, type IdleLiquidityStatus, InitializeVaultRolesBuilder, type InitializeVaultRolesIxArgs, type InitializeVaultRolesTxArgs, type JuniorWithdrawalMode, JupiterBalanceSource, type JupiterBalanceSourceOptions, JupiterPriceSource, type JupiterPriceSourceOptions, JupiterSwapBuilder, type JupiterSwapIxArgs, type JupiterSwapTxArgs, KaminoPositionProvider, LIVE_ORACLE_VARIANTS, LIVE_PRICE_REFRESH_INTERVAL_SECS, LOCAL_PROTOCOL_ADMIN, type LiveConsensusOracleDepsOptions, LivePriceSource, type LivePriceSourceOptions, MAX_CONSENSUS_SIGNERS, MAX_PRICE_STALENESS_THRESHOLD_SECS, MIN_EXTERNAL_POSITION_SAMPLES, ManagerRedepositAssetBuilder, type ManagerRedepositAssetIxArgs, type ManagerRedepositAssetTxArgs, ManagerWithdrawAssetBuilder, type ManagerWithdrawAssetIxArgs, type ManagerWithdrawAssetTxArgs, MarginfiPositionProvider, type MintConfig, type MintIdentifier, type MintInfo, MintRegistry, type MintRegistryOptions, type MockYieldAccountConfig, MockYieldTracker, type MockYieldTrackerOptions, NEST_API_BASE_URL, NEST_RWA_SHARE_MINT, NEST_VAULT_SLUG, type NavCrankBlocker, type NavCrankBlockerReason, type NavCrankReadiness, type NavCrankResult, NestPriceSource, type NestPriceSourceOptions, 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, PdaClient, type PreparedDirectTransaction, type PreparedSquadsTransaction, type PreparedVaultTransaction, type PriceOracleTypeArgs, type PriceSource, ProtocolInteractionBuilder, type ProtocolInteractionIxArgs, type ProtocolInteractionTxArgs, type QuoteFeeUnit, REPORTABLE_ORACLE_VARIANTS, type RefreshLiveOraclePricesParams, RemoveAssetHoldingBuilder, type RemoveAssetHoldingIxArgs, type RemoveAssetHoldingTxArgs, RequestJuniorTrancheWithdrawBuilder, type RequestJuniorTrancheWithdrawIxArgs, type RequestJuniorTrancheWithdrawTxArgs, type ResolvedSquadsWalletRoute, type RollingLimitConfig, type RollingRebalanceLimitConfig, type RunLiveConsensusOracleOptions, type RunOptions, type RunSummary, SHARE_DECIMALS, SYSTEM_PROGRAM, SetAssetPriceOracleBuilder, type SetAssetPriceOracleIxArgs, type SetAssetPriceOracleTxArgs, SetExternalLiquidityBuilder, type SetExternalLiquidityIxArgs, type SetExternalLiquidityTxArgs, SetProtocolFeeBuilder, type SetProtocolFeeIxArgs, type SetProtocolFeeTxArgs, SetVaultConfigBuilder, type SetVaultConfigIxArgs, type SetVaultConfigTxArgs, type SettleVaultParams, type SettleVaultResult, type SettlementSimulation, type SettlementSimulationSnapshot, type SimulateDryRunSettlementParams, type SimulateSettlementArgs, type SimulatedShareClass, type SquadsWalletRouteConfig, StaticPositionProvider, TOKEN_PROGRAM, TOKEN_PROGRAM_ID, 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_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 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 WalletBalanceSource, type WithdrawProtocolFeesIxArgs, type WithdrawProtocolFeesTxArgs, type WithdrawTrancheFeesIxArgs, type WithdrawTrancheFeesTxArgs, WithdrawalQueueService, type WithdrawalQueueSnapshot, type YieldAccount, type YieldAccountSnapshot, type YieldCalculationLog, type YieldPaymentResponse, type YieldPaymentSnapshot, type YieldTracker, accountingUnitPriceToUsd, addCashflowUpdate, applyEffectiveApy, assertNoUnconfirmedYieldPayments, buildHoldingUpdate, buildUpdates, coerceBool, collectSamples, confirmYieldPayment, createAccount, createLiveConsensusOracleDeps, createRpcFromConnection, createTokenMint, createTokenMintIxs, createVaultClient, createYieldPayment, dateToStr, defaultKeypairPath, deleteAccount, discoverVaultsForSigner, fetchExternalPositions, fetchNestTokenPrice, fetchReceiptMints, filterTargetHoldings, findSquadsWalletRoute, formatSettlementSimulation, fromUiAmount, gatherPricingInputs, getAccounts, getBalance, getCashflows, getRpcUrl, getTotalOutstandingYield, getTotalYield, getVaultProgramId, getYield, getYieldPayments, indexConfigByMint, isVaultEnv, keypairAddress, loadKeypair, logProspectiveApy, makeProvider, mintTokensTo, mints, mostFrequent, parseExternalLiquidityRefs, planRebalance, prepareVaultTransaction, priceInAccountingUnit, readI64LE, readSplMintSupply, refreshLiveOraclePrices, resolveKeypairPath, resolveSquadsWalletRoute, resolveTrackedAmounts, roundToNextUtcMidnight, runLiveConsensusOracle, selectReportableHoldings, settleVault, signerInOracleData, simulateConsensusOracleSettlement, simulateDryRunSettlement, sumPositionsByMint, systemClock, toBigInt, toUiAmount, updateAccount, updateDynamicApr, validateSquadsWalletRoutes, variantName, vaultAuthorityForWallet, withDiscoveredYieldAccounts };