kamino-sdk-beta
Version:
Typescript SDK for interacting with the Kamino Liquidity (kliquidity) protocol
129 lines • 4.17 kB
TypeScript
import { PublicKey, Connection } from "@solana/web3.js";
import BN from "bn.js";
import * as types from "../types";
export interface PoolStateFields {
bump: Array<number>;
ammConfig: PublicKey;
owner: PublicKey;
tokenMint0: PublicKey;
tokenMint1: PublicKey;
tokenVault0: PublicKey;
tokenVault1: PublicKey;
observationKey: PublicKey;
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: PublicKey;
readonly owner: PublicKey;
readonly tokenMint0: PublicKey;
readonly tokenMint1: PublicKey;
readonly tokenVault0: PublicKey;
readonly tokenVault1: PublicKey;
readonly observationKey: PublicKey;
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: any;
constructor(fields: PoolStateFields);
static fetch(c: Connection, address: PublicKey, programId?: PublicKey): Promise<PoolState | null>;
static fetchMultiple(c: Connection, addresses: PublicKey[], programId?: PublicKey): Promise<Array<PoolState | null>>;
static decode(data: Buffer): PoolState;
toJSON(): PoolStateJSON;
static fromJSON(obj: PoolStateJSON): PoolState;
}
//# sourceMappingURL=PoolState.d.ts.map