@kamino-finance/kliquidity-sdk
Version:
Typescript SDK for interacting with the Kamino Liquidity (kliquidity) protocol
48 lines • 1.76 kB
TypeScript
import { Address, GetAccountInfoApi, GetMultipleAccountsApi, Rpc } from "@solana/kit";
import BN from "bn.js";
import * as types from "../types";
export interface PositionFields {
whirlpool: Address;
positionMint: Address;
liquidity: BN;
tickLowerIndex: number;
tickUpperIndex: number;
feeGrowthCheckpointA: BN;
feeOwedA: BN;
feeGrowthCheckpointB: BN;
feeOwedB: BN;
rewardInfos: Array<types.PositionRewardInfoFields>;
}
export interface PositionJSON {
whirlpool: string;
positionMint: string;
liquidity: string;
tickLowerIndex: number;
tickUpperIndex: number;
feeGrowthCheckpointA: string;
feeOwedA: string;
feeGrowthCheckpointB: string;
feeOwedB: string;
rewardInfos: Array<types.PositionRewardInfoJSON>;
}
export declare class Position {
readonly whirlpool: Address;
readonly positionMint: Address;
readonly liquidity: BN;
readonly tickLowerIndex: number;
readonly tickUpperIndex: number;
readonly feeGrowthCheckpointA: BN;
readonly feeOwedA: BN;
readonly feeGrowthCheckpointB: BN;
readonly feeOwedB: BN;
readonly rewardInfos: Array<types.PositionRewardInfo>;
static readonly discriminator: Buffer<ArrayBuffer>;
static readonly layout: import("buffer-layout").Layout<Position>;
constructor(fields: PositionFields);
static fetch(rpc: Rpc<GetAccountInfoApi>, address: Address, programId?: Address): Promise<Position | null>;
static fetchMultiple(rpc: Rpc<GetMultipleAccountsApi>, addresses: Address[], programId?: Address): Promise<Array<Position | null>>;
static decode(data: Buffer): Position;
toJSON(): PositionJSON;
static fromJSON(obj: PositionJSON): Position;
}
//# sourceMappingURL=Position.d.ts.map