///
///
///
import { BeetStruct, FixableBeetStruct } from '@metaplex-foundation/beet';
import BigNumber from 'bignumber.js';
import { PublicKey } from '@solana/web3.js';
export type PositionRewardInfo = {
growthInsideLastX64: BigNumber;
rewardAmountOwed: BigNumber;
};
export declare const positionRewardInfoStruct: BeetStruct>;
export type PersonalPositionState = {
buffer: Buffer;
bump: number;
nftMint: PublicKey;
poolId: PublicKey;
tickLowerIndex: number;
tickUpperIndex: number;
liquidity: BigNumber;
feeGrowthInside0LastX64: BigNumber;
feeGrowthInside1LastX64: BigNumber;
tokenFeesOwed0: BigNumber;
tokenFeesOwed1: BigNumber;
rewardInfos: PositionRewardInfo[];
recent_epoch: BigNumber;
padding: BigNumber[];
};
export declare const personalPositionStateStruct: BeetStruct>;
export type RewardInfo = {
rewardState: number;
openTime: BigNumber;
endTime: BigNumber;
lastUpdateTime: BigNumber;
emissionsPerSecondX64: BigNumber;
rewardTotalEmissioned: BigNumber;
rewardClaimed: BigNumber;
tokenMint: PublicKey;
tokenVault: PublicKey;
authority: PublicKey;
rewardGrowthGlobalX64: BigNumber;
};
export declare const rewardInfoStruct: BeetStruct>;
export type PoolState = {
buffer: Buffer;
bump: Buffer;
ammConfig: PublicKey;
owner: PublicKey;
tokenMint0: PublicKey;
tokenMint1: PublicKey;
tokenVault0: PublicKey;
tokenVault1: PublicKey;
observationKey: PublicKey;
mintDecimals0: number;
mintDecimals1: number;
tickSpacing: number;
liquidity: BigNumber;
sqrtPriceX64: BigNumber;
tickCurrent: number;
observationIndex: number;
observationUpdateDuration: number;
feeGrowthGlobal0X64: BigNumber;
feeGrowthGlobal1X64: BigNumber;
protocolFeesToken0: BigNumber;
protocolFeesToken1: BigNumber;
swapInAmountToken0: BigNumber;
swapOutAmountToken1: BigNumber;
swapInAmountToken1: BigNumber;
swapOutAmountToken0: BigNumber;
status: number;
rewardInfos: RewardInfo[];
padding: number[];
tickArrayBitmap: BigNumber[];
totalFeesToken0: BigNumber;
totalFeesClaimedToken0: BigNumber;
totalFeesToken1: BigNumber;
totalFeesClaimedToken1: BigNumber;
fundFeesToken0: BigNumber;
fundFeesToken1: BigNumber;
openTime: BigNumber;
padding1: BigNumber[];
padding2: BigNumber[];
};
export declare const poolStateStruct: BeetStruct>;
export type TickState = {
tick: number;
liquidityNet: BigNumber;
liquidityGross: BigNumber;
feeGrowthOutsideX64A: BigNumber;
feeGrowthOutsideX64B: BigNumber;
rewardGrowthsOutsideX640: BigNumber;
rewardGrowthsOutsideX641: BigNumber;
rewardGrowthsOutsideX642: BigNumber;
padding: number[];
};
export declare const tickStatetruct: BeetStruct>;
export type TickArrayState = {
buffer: Buffer;
poolId: PublicKey;
startTickIndex: number;
ticks: TickState[];
initializedTickCount: number;
padding: number[];
};
export declare const tickArrayStatetruct: FixableBeetStruct>;