///
///
///
import { BeetStruct } from '@metaplex-foundation/beet';
import { PublicKey } from '@solana/web3.js';
import BigNumber from 'bignumber.js';
export type WithdrawRequest = {
shares: BigNumber;
value: BigNumber;
ts: BigNumber;
};
export declare const withdrawRequestStruct: BeetStruct>;
export type VaultDepositor = {
buffer: Buffer;
vault: PublicKey;
pubkey: PublicKey;
authority: PublicKey;
vaultShares: BigNumber;
lastWithdrawRequest: WithdrawRequest;
lastValidTs: BigNumber;
netDeposits: BigNumber;
totalDeposits: BigNumber;
totalWithdraws: BigNumber;
cumulativeProfitShareAmount: BigNumber;
profitShareFeePaid: BigNumber;
vaultSharesBase: number;
padding1: number;
padding: BigNumber[];
};
export declare const vaultDepositorStruct: BeetStruct>;
export type Vault = {
buffer: Buffer;
name: number[];
pubkey: PublicKey;
manager: PublicKey;
tokenAccount: PublicKey;
userStats: PublicKey;
user: PublicKey;
delegate: PublicKey;
liquidationDelegate: PublicKey;
userShares: BigNumber;
totalShares: BigNumber;
lastFeeUpdateTs: BigNumber;
liquidationStartTs: BigNumber;
redeemPeriod: BigNumber;
totalWithdrawRequested: BigNumber;
maxTokens: BigNumber;
managementFee: BigNumber;
initTs: BigNumber;
netDeposits: BigNumber;
managerNetDeposits: BigNumber;
totalDeposits: BigNumber;
totalWithdraws: BigNumber;
managerTotalDeposits: BigNumber;
managerTotalWithdraws: BigNumber;
managerTotalFee: BigNumber;
managerTotalProfitShare: BigNumber;
minDepositAmount: BigNumber;
lastManagerWithdrawRequest: WithdrawRequest;
sharesBase: number;
profitShare: number;
hurdleRate: number;
spotMarketIndex: number;
bump: number;
permissioned: boolean;
padding: BigNumber[];
};
export declare const vaultStruct: BeetStruct>;