import { PublicKey, Connection } from "@solana/web3.js"; import BN from "bn.js"; import * as types from "../types"; export interface PositionV2Fields { /** The LB pair of this position */ lbPair: PublicKey; /** Owner of the position. Client rely on this to to fetch their positions. */ owner: PublicKey; /** Liquidity shares of this position in bins (lower_bin_id <-> upper_bin_id). This is the same as LP concept. */ liquidityShares: Array; /** Farming reward information */ rewardInfos: Array; /** Swap fee to claim information */ feeInfos: Array; /** Lower bin ID */ lowerBinId: number; /** Upper bin ID */ upperBinId: number; /** Last updated timestamp */ lastUpdatedAt: BN; /** Total claimed token fee X */ totalClaimedFeeXAmount: BN; /** Total claimed token fee Y */ totalClaimedFeeYAmount: BN; /** Total claimed rewards */ totalClaimedRewards: Array; /** Operator of position */ operator: PublicKey; /** Slot which the locked liquidity can be withdraw */ lockReleaseSlot: BN; /** Is the position subjected to liquidity locking for the launch pool. */ subjectedToBootstrapLiquidityLocking: number; /** Address is able to claim fee in this position, only valid for bootstrap_liquidity_position */ feeOwner: PublicKey; /** Reserved space for future use */ reserved: Array; } export interface PositionV2JSON { /** The LB pair of this position */ lbPair: string; /** Owner of the position. Client rely on this to to fetch their positions. */ owner: string; /** Liquidity shares of this position in bins (lower_bin_id <-> upper_bin_id). This is the same as LP concept. */ liquidityShares: Array; /** Farming reward information */ rewardInfos: Array; /** Swap fee to claim information */ feeInfos: Array; /** Lower bin ID */ lowerBinId: number; /** Upper bin ID */ upperBinId: number; /** Last updated timestamp */ lastUpdatedAt: string; /** Total claimed token fee X */ totalClaimedFeeXAmount: string; /** Total claimed token fee Y */ totalClaimedFeeYAmount: string; /** Total claimed rewards */ totalClaimedRewards: Array; /** Operator of position */ operator: string; /** Slot which the locked liquidity can be withdraw */ lockReleaseSlot: string; /** Is the position subjected to liquidity locking for the launch pool. */ subjectedToBootstrapLiquidityLocking: number; /** Address is able to claim fee in this position, only valid for bootstrap_liquidity_position */ feeOwner: string; /** Reserved space for future use */ reserved: Array; } export declare class PositionV2 { /** The LB pair of this position */ readonly lbPair: PublicKey; /** Owner of the position. Client rely on this to to fetch their positions. */ readonly owner: PublicKey; /** Liquidity shares of this position in bins (lower_bin_id <-> upper_bin_id). This is the same as LP concept. */ readonly liquidityShares: Array; /** Farming reward information */ readonly rewardInfos: Array; /** Swap fee to claim information */ readonly feeInfos: Array; /** Lower bin ID */ readonly lowerBinId: number; /** Upper bin ID */ readonly upperBinId: number; /** Last updated timestamp */ readonly lastUpdatedAt: BN; /** Total claimed token fee X */ readonly totalClaimedFeeXAmount: BN; /** Total claimed token fee Y */ readonly totalClaimedFeeYAmount: BN; /** Total claimed rewards */ readonly totalClaimedRewards: Array; /** Operator of position */ readonly operator: PublicKey; /** Slot which the locked liquidity can be withdraw */ readonly lockReleaseSlot: BN; /** Is the position subjected to liquidity locking for the launch pool. */ readonly subjectedToBootstrapLiquidityLocking: number; /** Address is able to claim fee in this position, only valid for bootstrap_liquidity_position */ readonly feeOwner: PublicKey; /** Reserved space for future use */ readonly reserved: Array; static readonly discriminator: Buffer; static readonly layout: any; constructor(fields: PositionV2Fields); static fetch(c: Connection, address: PublicKey, programId?: PublicKey): Promise; static fetchMultiple(c: Connection, addresses: PublicKey[], programId?: PublicKey): Promise>; static decode(data: Buffer): PositionV2; toJSON(): PositionV2JSON; static fromJSON(obj: PositionV2JSON): PositionV2; } //# sourceMappingURL=PositionV2.d.ts.map