@kamino-finance/kliquidity-sdk
Version:
Typescript SDK for interacting with the Kamino Liquidity (kliquidity) protocol
25 lines (19 loc) • 2.02 kB
text/typescript
/**
* This code was AUTOGENERATED using the Codama library.
* Please DO NOT EDIT THIS FILE, instead use visitors
* to add features, then rerun Codama to update it.
*
* @see https://github.com/codama-idl/codama
*/
import { combineCodec, getArrayDecoder, getArrayEncoder, getI128Decoder, getI128Encoder, getI32Decoder, getI32Encoder, getStructDecoder, getStructEncoder, getU128Decoder, getU128Encoder, getU32Decoder, getU32Encoder, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder } from '@solana/kit';
export type TickState = { tick: number; liquidityNet: bigint; liquidityGross: bigint; feeGrowthOutside0X64: bigint; feeGrowthOutside1X64: bigint; rewardGrowthsOutsideX64: Array<bigint>; padding: Array<number>; };
export type TickStateArgs = { tick: number; liquidityNet: number | bigint; liquidityGross: number | bigint; feeGrowthOutside0X64: number | bigint; feeGrowthOutside1X64: number | bigint; rewardGrowthsOutsideX64: Array<number | bigint>; padding: Array<number>; };
export function getTickStateEncoder(): FixedSizeEncoder<TickStateArgs> {
return getStructEncoder([['tick', getI32Encoder()], ['liquidityNet', getI128Encoder()], ['liquidityGross', getU128Encoder()], ['feeGrowthOutside0X64', getU128Encoder()], ['feeGrowthOutside1X64', getU128Encoder()], ['rewardGrowthsOutsideX64', getArrayEncoder(getU128Encoder(), { size: 3 })], ['padding', getArrayEncoder(getU32Encoder(), { size: 13 })]]);
}
export function getTickStateDecoder(): FixedSizeDecoder<TickState> {
return getStructDecoder([['tick', getI32Decoder()], ['liquidityNet', getI128Decoder()], ['liquidityGross', getU128Decoder()], ['feeGrowthOutside0X64', getU128Decoder()], ['feeGrowthOutside1X64', getU128Decoder()], ['rewardGrowthsOutsideX64', getArrayDecoder(getU128Decoder(), { size: 3 })], ['padding', getArrayDecoder(getU32Decoder(), { size: 13 })]]);
}
export function getTickStateCodec(): FixedSizeCodec<TickStateArgs, TickState> {
return combineCodec(getTickStateEncoder(), getTickStateDecoder());
}