///
import { PublicKey, Connection } from '@solana/web3.js';
import BN from 'bn.js';
import * as types from '../types';
export interface PositionFields {
whirlpool: PublicKey;
positionMint: PublicKey;
liquidity: BN;
tickLowerIndex: number;
tickUpperIndex: number;
feeGrowthCheckpointA: BN;
feeOwedA: BN;
feeGrowthCheckpointB: BN;
feeOwedB: BN;
rewardInfos: Array;
}
export interface PositionJSON {
whirlpool: string;
positionMint: string;
liquidity: string;
tickLowerIndex: number;
tickUpperIndex: number;
feeGrowthCheckpointA: string;
feeOwedA: string;
feeGrowthCheckpointB: string;
feeOwedB: string;
rewardInfos: Array;
}
export declare class Position {
readonly whirlpool: PublicKey;
readonly positionMint: PublicKey;
readonly liquidity: BN;
readonly tickLowerIndex: number;
readonly tickUpperIndex: number;
readonly feeGrowthCheckpointA: BN;
readonly feeOwedA: BN;
readonly feeGrowthCheckpointB: BN;
readonly feeOwedB: BN;
readonly rewardInfos: Array;
static readonly discriminator: Buffer;
static readonly layout: any;
constructor(fields: PositionFields);
static fetch(c: Connection, address: PublicKey): Promise;
static fetchMultiple(c: Connection, addresses: PublicKey[]): Promise>;
static decode(data: Buffer): Position;
toJSON(): PositionJSON;
static fromJSON(obj: PositionJSON): Position;
}