///
import type { AccountInfo, PublicKey } from "@solana/web3.js";
import type Decimal from "decimal.js";
import type { Parser } from "./util/layout";
export declare const POSITIONS_ACCOUNT_SIZE = 360000;
export interface SwapPositionData {
nftTokenId: PublicKey;
lowerTick: number;
upperTick: number;
liquity: Decimal;
feeGrowthInsideALast: Decimal;
feeGrowthInsideBLast: Decimal;
tokenAFee: Decimal;
tokenBFee: Decimal;
}
export interface PositionsAccount {
swapVersion: number;
tokenSwapKey: PublicKey;
accountType: number;
len: number;
positions: SwapPositionData[];
}
export interface PositionsAccountDataFlat {
swapVersion: number;
tokenSwapKey: PublicKey;
accountType: number;
len: number;
dataFlat: Uint8Array;
}
export interface SwapPosition extends SwapPositionData {
positionKey: PublicKey;
}
export interface UserSwapPoition extends SwapPosition {
nftAccount: PublicKey;
}
export declare const PositionLayout: import("@solana/buffer-layout").Structure;
export declare const PositionsAccountLayout: import("@solana/buffer-layout").Structure;
export declare const MAX_ACCOUNT_POSITION_LENGTH: number;
export declare const isPositionsAccount: (info: AccountInfo) => boolean;
export declare const parsePositionsAccount: Parser;
//# sourceMappingURL=positions.d.ts.map