/// /// /// import { BeetStruct, FixableBeetStruct } from '@metaplex-foundation/beet'; import BigNumber from 'bignumber.js'; import { PublicKey } from '@solana/web3.js'; export type VaultBumps = { vaultBump: number; tokenVaultBump: number; }; export declare const vaultBumpsStruct: BeetStruct>; export type LockedProfitTracker = { lastUpdatedLockedProfit: BigNumber; lastReport: BigNumber; lockedProfitDegradation: BigNumber; }; export declare const lockedProfitTrackerStruct: BeetStruct>; export type Vault = { buffer: Buffer; enabled: number; bumps: VaultBumps; total_amount: BigNumber; token_vault: PublicKey; fee_vault: PublicKey; token_mint: PublicKey; lp_mint: PublicKey; strategies: PublicKey[]; base: PublicKey; admin: PublicKey; operator: PublicKey; locked_profit_tracker: LockedProfitTracker; }; export declare const vaultStruct: BeetStruct>; export type Padding = { padding0: number[]; padding: BigNumber[]; }; export declare const paddingStruct: FixableBeetStruct>; export type Padding2 = { padding0: number[]; padding1: BigNumber[]; padding2: BigNumber[]; }; export declare const padding2Struct: FixableBeetStruct>; export declare enum DepegType { None = 0, Marinade = 1, Lido = 2, SplStake = 3 } export type Depeg = { baseVirtualPrice: BigNumber; baseCacheUpdated: BigNumber; depegType: DepegType; }; export declare const depegStruct: BeetStruct>; export type TokenMultiplier = { tokenAMultiplier: BigNumber; tokenBMultiplier: BigNumber; precisionFactor: number; }; export declare const TokenMultiplierStruct: BeetStruct>; export type StableParams = { amp: BigNumber; token_multiplier: TokenMultiplier; depeg: Depeg; last_amp_updated_timestamp: BigNumber; }; export declare const stableParamsStruct: BeetStruct>; export declare enum CurveType { ConstantProduct = 0, Stable = 1 } export declare enum PoolType { Permissioned = 0, Permissionless = 1 } export type PoolFees = { tradeFeeNumerator: BigNumber; tradeFeeDenominator: BigNumber; ownerTradeFeeNumerator: BigNumber; ownerTradeFeeDenominator: BigNumber; }; export declare const poolFeesStruct: BeetStruct>; export type Boostrapping = { activationPoint: BigNumber; whitelistedVault: PublicKey; poolCreator: PublicKey; activationType: number; }; export declare const boostrappingStruct: BeetStruct>; export type PartnerInfo = { feeNumerator: BigNumber; partnerAuthority: PublicKey; pendingFeeA: BigNumber; pendingFeeB: BigNumber; }; export declare const partnerInfoStruct: BeetStruct>; export type PoolState = { accountDiscriminator: number[]; lpMint: PublicKey; tokenAMint: PublicKey; tokenBMint: PublicKey; aVault: PublicKey; bVault: PublicKey; aVaultLp: PublicKey; bVaultLp: PublicKey; aVaultLpBump: number; enabled: boolean; }; export declare const poolStateStruct: BeetStruct>; export type Farm = { buffer: Buffer; authority: PublicKey; paused: boolean; stakingMint: PublicKey; stakingVault: PublicKey; rewardAMint: PublicKey; rewardAVault: PublicKey; rewardBMint: PublicKey; rewardBVault: PublicKey; rewardDuration: BigNumber; rewardDurationEnd: BigNumber; lastUpdateTime: BigNumber; rewardARate: BigNumber; rewardBRate: BigNumber; rewardAPerTokenStored: BigNumber; rewardBPerTokenStored: BigNumber; userStakeCount: number; funders: PublicKey[]; rewardARateU128: BigNumber; rewardBRateU128: BigNumber; poolBump: number; totalStaked: BigNumber; }; export declare const farmStruct: BeetStruct>; export type FarmAccount = { buffer: Buffer; pool: PublicKey; owner: PublicKey; rewardAPerTokenComplete: BigNumber; rewardBPerTokenComplete: BigNumber; rewardAPerTokenPending: BigNumber; rewardBPerTokenPending: BigNumber; balanceStaked: BigNumber; nonce: number; }; export declare const farmAccountStruct: BeetStruct>; export type Escrow = { buffer: Buffer; dlmmVault: PublicKey; owner: PublicKey; totalDeposit: BigNumber; claimedToken: BigNumber; lastClaimedTs: BigNumber; refunded: number; padding1: number[]; padding: BigNumber[]; }; export declare const escrowStruct: BeetStruct>;