/// import { PublicKey, Connection } from "@solana/web3.js"; import BN from "bn.js"; import * as types from "../types"; export interface WhirlpoolStrategyFields { adminAuthority: PublicKey; globalConfig: PublicKey; baseVaultAuthority: PublicKey; baseVaultAuthorityBump: BN; pool: PublicKey; poolTokenVaultA: PublicKey; poolTokenVaultB: PublicKey; tickArrayLower: PublicKey; tickArrayUpper: PublicKey; position: PublicKey; positionMint: PublicKey; positionMetadata: PublicKey; positionTokenAccount: PublicKey; tokenAVault: PublicKey; tokenBVault: PublicKey; tokenAVaultAuthority: PublicKey; tokenBVaultAuthority: PublicKey; tokenAVaultAuthorityBump: BN; tokenBVaultAuthorityBump: BN; tokenAMint: PublicKey; tokenBMint: PublicKey; tokenAMintDecimals: BN; tokenBMintDecimals: BN; tokenAAmounts: BN; tokenBAmounts: BN; tokenACollateralId: BN; tokenBCollateralId: BN; scopePrices: PublicKey; scopeProgram: PublicKey; sharesMint: PublicKey; sharesMintDecimals: BN; sharesMintAuthority: PublicKey; sharesMintAuthorityBump: BN; sharesIssued: BN; status: BN; reward0Amount: BN; reward0Vault: PublicKey; reward0CollateralId: BN; reward0Decimals: BN; reward1Amount: BN; reward1Vault: PublicKey; reward1CollateralId: BN; reward1Decimals: BN; reward2Amount: BN; reward2Vault: PublicKey; reward2CollateralId: BN; reward2Decimals: BN; depositCapUsd: BN; feesACumulative: BN; feesBCumulative: BN; reward0AmountCumulative: BN; reward1AmountCumulative: BN; reward2AmountCumulative: BN; depositCapUsdPerIxn: BN; withdrawalCapA: types.WithdrawalCapsFields; withdrawalCapB: types.WithdrawalCapsFields; maxPriceDeviationBps: BN; swapVaultMaxSlippageBps: number; swapVaultMaxSlippageFromReferenceBps: number; strategyType: BN; padding0: BN; withdrawFee: BN; feesFee: BN; reward0Fee: BN; reward1Fee: BN; reward2Fee: BN; positionTimestamp: BN; kaminoRewards: Array; strategyDex: BN; raydiumProtocolPositionOrBaseVaultAuthority: PublicKey; allowDepositWithoutInvest: BN; raydiumPoolConfigOrBaseVaultAuthority: PublicKey; depositBlocked: number; creationStatus: number; investBlocked: number; /** share_calculation_method can be either DOLAR_BASED=0 or PROPORTION_BASED=1 */ shareCalculationMethod: number; withdrawBlocked: number; reservedFlag2: number; localAdminBlocked: number; flashVaultSwapAllowed: number; referenceSwapPriceA: types.PriceFields; referenceSwapPriceB: types.PriceFields; isCommunity: number; rebalanceType: number; padding1: Array; rebalanceRaw: types.RebalanceRawFields; padding2: Array; tokenAFeesFromRewardsCumulative: BN; tokenBFeesFromRewardsCumulative: BN; strategyLookupTable: PublicKey; lastSwapUnevenStepTimestamp: BN; padding3: BN; padding4: Array; padding5: Array; padding6: Array; padding7: Array; } export interface WhirlpoolStrategyJSON { adminAuthority: string; globalConfig: string; baseVaultAuthority: string; baseVaultAuthorityBump: string; pool: string; poolTokenVaultA: string; poolTokenVaultB: string; tickArrayLower: string; tickArrayUpper: string; position: string; positionMint: string; positionMetadata: string; positionTokenAccount: string; tokenAVault: string; tokenBVault: string; tokenAVaultAuthority: string; tokenBVaultAuthority: string; tokenAVaultAuthorityBump: string; tokenBVaultAuthorityBump: string; tokenAMint: string; tokenBMint: string; tokenAMintDecimals: string; tokenBMintDecimals: string; tokenAAmounts: string; tokenBAmounts: string; tokenACollateralId: string; tokenBCollateralId: string; scopePrices: string; scopeProgram: string; sharesMint: string; sharesMintDecimals: string; sharesMintAuthority: string; sharesMintAuthorityBump: string; sharesIssued: string; status: string; reward0Amount: string; reward0Vault: string; reward0CollateralId: string; reward0Decimals: string; reward1Amount: string; reward1Vault: string; reward1CollateralId: string; reward1Decimals: string; reward2Amount: string; reward2Vault: string; reward2CollateralId: string; reward2Decimals: string; depositCapUsd: string; feesACumulative: string; feesBCumulative: string; reward0AmountCumulative: string; reward1AmountCumulative: string; reward2AmountCumulative: string; depositCapUsdPerIxn: string; withdrawalCapA: types.WithdrawalCapsJSON; withdrawalCapB: types.WithdrawalCapsJSON; maxPriceDeviationBps: string; swapVaultMaxSlippageBps: number; swapVaultMaxSlippageFromReferenceBps: number; strategyType: string; padding0: string; withdrawFee: string; feesFee: string; reward0Fee: string; reward1Fee: string; reward2Fee: string; positionTimestamp: string; kaminoRewards: Array; strategyDex: string; raydiumProtocolPositionOrBaseVaultAuthority: string; allowDepositWithoutInvest: string; raydiumPoolConfigOrBaseVaultAuthority: string; depositBlocked: number; creationStatus: number; investBlocked: number; /** share_calculation_method can be either DOLAR_BASED=0 or PROPORTION_BASED=1 */ shareCalculationMethod: number; withdrawBlocked: number; reservedFlag2: number; localAdminBlocked: number; flashVaultSwapAllowed: number; referenceSwapPriceA: types.PriceJSON; referenceSwapPriceB: types.PriceJSON; isCommunity: number; rebalanceType: number; padding1: Array; rebalanceRaw: types.RebalanceRawJSON; padding2: Array; tokenAFeesFromRewardsCumulative: string; tokenBFeesFromRewardsCumulative: string; strategyLookupTable: string; lastSwapUnevenStepTimestamp: string; padding3: string; padding4: Array; padding5: Array; padding6: Array; padding7: Array; } export declare class WhirlpoolStrategy { readonly adminAuthority: PublicKey; readonly globalConfig: PublicKey; readonly baseVaultAuthority: PublicKey; readonly baseVaultAuthorityBump: BN; readonly pool: PublicKey; readonly poolTokenVaultA: PublicKey; readonly poolTokenVaultB: PublicKey; readonly tickArrayLower: PublicKey; readonly tickArrayUpper: PublicKey; readonly position: PublicKey; readonly positionMint: PublicKey; readonly positionMetadata: PublicKey; readonly positionTokenAccount: PublicKey; readonly tokenAVault: PublicKey; readonly tokenBVault: PublicKey; readonly tokenAVaultAuthority: PublicKey; readonly tokenBVaultAuthority: PublicKey; readonly tokenAVaultAuthorityBump: BN; readonly tokenBVaultAuthorityBump: BN; readonly tokenAMint: PublicKey; readonly tokenBMint: PublicKey; readonly tokenAMintDecimals: BN; readonly tokenBMintDecimals: BN; readonly tokenAAmounts: BN; readonly tokenBAmounts: BN; readonly tokenACollateralId: BN; readonly tokenBCollateralId: BN; readonly scopePrices: PublicKey; readonly scopeProgram: PublicKey; readonly sharesMint: PublicKey; readonly sharesMintDecimals: BN; readonly sharesMintAuthority: PublicKey; readonly sharesMintAuthorityBump: BN; readonly sharesIssued: BN; readonly status: BN; readonly reward0Amount: BN; readonly reward0Vault: PublicKey; readonly reward0CollateralId: BN; readonly reward0Decimals: BN; readonly reward1Amount: BN; readonly reward1Vault: PublicKey; readonly reward1CollateralId: BN; readonly reward1Decimals: BN; readonly reward2Amount: BN; readonly reward2Vault: PublicKey; readonly reward2CollateralId: BN; readonly reward2Decimals: BN; readonly depositCapUsd: BN; readonly feesACumulative: BN; readonly feesBCumulative: BN; readonly reward0AmountCumulative: BN; readonly reward1AmountCumulative: BN; readonly reward2AmountCumulative: BN; readonly depositCapUsdPerIxn: BN; readonly withdrawalCapA: types.WithdrawalCaps; readonly withdrawalCapB: types.WithdrawalCaps; readonly maxPriceDeviationBps: BN; readonly swapVaultMaxSlippageBps: number; readonly swapVaultMaxSlippageFromReferenceBps: number; readonly strategyType: BN; readonly padding0: BN; readonly withdrawFee: BN; readonly feesFee: BN; readonly reward0Fee: BN; readonly reward1Fee: BN; readonly reward2Fee: BN; readonly positionTimestamp: BN; readonly kaminoRewards: Array; readonly strategyDex: BN; readonly raydiumProtocolPositionOrBaseVaultAuthority: PublicKey; readonly allowDepositWithoutInvest: BN; readonly raydiumPoolConfigOrBaseVaultAuthority: PublicKey; readonly depositBlocked: number; readonly creationStatus: number; readonly investBlocked: number; /** share_calculation_method can be either DOLAR_BASED=0 or PROPORTION_BASED=1 */ readonly shareCalculationMethod: number; readonly withdrawBlocked: number; readonly reservedFlag2: number; readonly localAdminBlocked: number; readonly flashVaultSwapAllowed: number; readonly referenceSwapPriceA: types.Price; readonly referenceSwapPriceB: types.Price; readonly isCommunity: number; readonly rebalanceType: number; readonly padding1: Array; readonly rebalanceRaw: types.RebalanceRaw; readonly padding2: Array; readonly tokenAFeesFromRewardsCumulative: BN; readonly tokenBFeesFromRewardsCumulative: BN; readonly strategyLookupTable: PublicKey; readonly lastSwapUnevenStepTimestamp: BN; readonly padding3: BN; readonly padding4: Array; readonly padding5: Array; readonly padding6: Array; readonly padding7: Array; static readonly discriminator: Buffer; static readonly layout: any; constructor(fields: WhirlpoolStrategyFields); static fetch(c: Connection, address: PublicKey): Promise; static fetchMultiple(c: Connection, addresses: PublicKey[]): Promise>; static decode(data: Buffer): WhirlpoolStrategy; toJSON(): WhirlpoolStrategyJSON; static fromJSON(obj: WhirlpoolStrategyJSON): WhirlpoolStrategy; }