@kamino-finance/kliquidity-sdk
Version:
Typescript SDK for interacting with the Kamino Liquidity (kliquidity) protocol
129 lines • 4.23 kB
TypeScript
import { Address, GetAccountInfoApi, GetMultipleAccountsApi, Rpc } from "@solana/kit";
import BN from "bn.js";
import * as types from "../types";
export interface PoolStateFields {
bump: Array<number>;
ammConfig: Address;
owner: Address;
tokenMint0: Address;
tokenMint1: Address;
tokenVault0: Address;
tokenVault1: Address;
observationKey: Address;
mintDecimals0: number;
mintDecimals1: number;
tickSpacing: number;
liquidity: BN;
sqrtPriceX64: BN;
tickCurrent: number;
observationIndex: number;
observationUpdateDuration: number;
feeGrowthGlobal0X64: BN;
feeGrowthGlobal1X64: BN;
protocolFeesToken0: BN;
protocolFeesToken1: BN;
swapInAmountToken0: BN;
swapOutAmountToken1: BN;
swapInAmountToken1: BN;
swapOutAmountToken0: BN;
status: number;
padding: Array<number>;
rewardInfos: Array<types.RewardInfoFields>;
tickArrayBitmap: Array<BN>;
totalFeesToken0: BN;
totalFeesClaimedToken0: BN;
totalFeesToken1: BN;
totalFeesClaimedToken1: BN;
fundFeesToken0: BN;
fundFeesToken1: BN;
openTime: BN;
padding1: Array<BN>;
padding2: Array<BN>;
}
export interface PoolStateJSON {
bump: Array<number>;
ammConfig: string;
owner: string;
tokenMint0: string;
tokenMint1: string;
tokenVault0: string;
tokenVault1: string;
observationKey: string;
mintDecimals0: number;
mintDecimals1: number;
tickSpacing: number;
liquidity: string;
sqrtPriceX64: string;
tickCurrent: number;
observationIndex: number;
observationUpdateDuration: number;
feeGrowthGlobal0X64: string;
feeGrowthGlobal1X64: string;
protocolFeesToken0: string;
protocolFeesToken1: string;
swapInAmountToken0: string;
swapOutAmountToken1: string;
swapInAmountToken1: string;
swapOutAmountToken0: string;
status: number;
padding: Array<number>;
rewardInfos: Array<types.RewardInfoJSON>;
tickArrayBitmap: Array<string>;
totalFeesToken0: string;
totalFeesClaimedToken0: string;
totalFeesToken1: string;
totalFeesClaimedToken1: string;
fundFeesToken0: string;
fundFeesToken1: string;
openTime: string;
padding1: Array<string>;
padding2: Array<string>;
}
export declare class PoolState {
readonly bump: Array<number>;
readonly ammConfig: Address;
readonly owner: Address;
readonly tokenMint0: Address;
readonly tokenMint1: Address;
readonly tokenVault0: Address;
readonly tokenVault1: Address;
readonly observationKey: Address;
readonly mintDecimals0: number;
readonly mintDecimals1: number;
readonly tickSpacing: number;
readonly liquidity: BN;
readonly sqrtPriceX64: BN;
readonly tickCurrent: number;
readonly observationIndex: number;
readonly observationUpdateDuration: number;
readonly feeGrowthGlobal0X64: BN;
readonly feeGrowthGlobal1X64: BN;
readonly protocolFeesToken0: BN;
readonly protocolFeesToken1: BN;
readonly swapInAmountToken0: BN;
readonly swapOutAmountToken1: BN;
readonly swapInAmountToken1: BN;
readonly swapOutAmountToken0: BN;
readonly status: number;
readonly padding: Array<number>;
readonly rewardInfos: Array<types.RewardInfo>;
readonly tickArrayBitmap: Array<BN>;
readonly totalFeesToken0: BN;
readonly totalFeesClaimedToken0: BN;
readonly totalFeesToken1: BN;
readonly totalFeesClaimedToken1: BN;
readonly fundFeesToken0: BN;
readonly fundFeesToken1: BN;
readonly openTime: BN;
readonly padding1: Array<BN>;
readonly padding2: Array<BN>;
static readonly discriminator: Buffer<ArrayBuffer>;
static readonly layout: import("buffer-layout").Layout<PoolState>;
constructor(fields: PoolStateFields);
static fetch(rpc: Rpc<GetAccountInfoApi>, address: Address, programId?: Address): Promise<PoolState | null>;
static fetchMultiple(rpc: Rpc<GetMultipleAccountsApi>, addresses: Address[], programId?: Address): Promise<Array<PoolState | null>>;
static decode(data: Buffer): PoolState;
toJSON(): PoolStateJSON;
static fromJSON(obj: PoolStateJSON): PoolState;
}
//# sourceMappingURL=PoolState.d.ts.map