UNPKG

kamino-sdk-beta

Version:

Typescript SDK for interacting with the Kamino Liquidity (kliquidity) protocol

114 lines 4.85 kB
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<BN>; /** Farming reward information */ rewardInfos: Array<types.UserRewardInfoFields>; /** Swap fee to claim information */ feeInfos: Array<types.FeeInfoFields>; /** 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<BN>; /** 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<number>; } 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<string>; /** Farming reward information */ rewardInfos: Array<types.UserRewardInfoJSON>; /** Swap fee to claim information */ feeInfos: Array<types.FeeInfoJSON>; /** 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<string>; /** 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<number>; } 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<BN>; /** Farming reward information */ readonly rewardInfos: Array<types.UserRewardInfo>; /** Swap fee to claim information */ readonly feeInfos: Array<types.FeeInfo>; /** 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<BN>; /** 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<number>; static readonly discriminator: Buffer<ArrayBuffer>; static readonly layout: any; constructor(fields: PositionV2Fields); static fetch(c: Connection, address: PublicKey, programId?: PublicKey): Promise<PositionV2 | null>; static fetchMultiple(c: Connection, addresses: PublicKey[], programId?: PublicKey): Promise<Array<PositionV2 | null>>; static decode(data: Buffer): PositionV2; toJSON(): PositionV2JSON; static fromJSON(obj: PositionV2JSON): PositionV2; } //# sourceMappingURL=PositionV2.d.ts.map