@kamino-finance/kliquidity-sdk
Version:
Typescript SDK for interacting with the Kamino Liquidity (kliquidity) protocol
26 lines (20 loc) • 2.38 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, getI32Decoder, getI32Encoder, getStructDecoder, getStructEncoder, getU16Decoder, getU16Encoder, getU32Decoder, getU32Encoder, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder } from '@solana/kit';
import { getDriftDirectionDecoder, getDriftDirectionEncoder, getStakingRateSourceDecoder, getStakingRateSourceEncoder, type DriftDirection, type DriftDirectionArgs, type StakingRateSource, type StakingRateSourceArgs } from '.';
export type RebalanceAutodriftParams = { initDriftTicksPerEpoch: number; ticksBelowMid: number; ticksAboveMid: number; frontrunMultiplierBps: number; stakingRateASource: StakingRateSource; stakingRateBSource: StakingRateSource; initDriftDirection: DriftDirection; };
export type RebalanceAutodriftParamsArgs = { initDriftTicksPerEpoch: number; ticksBelowMid: number; ticksAboveMid: number; frontrunMultiplierBps: number; stakingRateASource: StakingRateSourceArgs; stakingRateBSource: StakingRateSourceArgs; initDriftDirection: DriftDirectionArgs; };
export function getRebalanceAutodriftParamsEncoder(): FixedSizeEncoder<RebalanceAutodriftParamsArgs> {
return getStructEncoder([['initDriftTicksPerEpoch', getU32Encoder()], ['ticksBelowMid', getI32Encoder()], ['ticksAboveMid', getI32Encoder()], ['frontrunMultiplierBps', getU16Encoder()], ['stakingRateASource', getStakingRateSourceEncoder()], ['stakingRateBSource', getStakingRateSourceEncoder()], ['initDriftDirection', getDriftDirectionEncoder()]]);
}
export function getRebalanceAutodriftParamsDecoder(): FixedSizeDecoder<RebalanceAutodriftParams> {
return getStructDecoder([['initDriftTicksPerEpoch', getU32Decoder()], ['ticksBelowMid', getI32Decoder()], ['ticksAboveMid', getI32Decoder()], ['frontrunMultiplierBps', getU16Decoder()], ['stakingRateASource', getStakingRateSourceDecoder()], ['stakingRateBSource', getStakingRateSourceDecoder()], ['initDriftDirection', getDriftDirectionDecoder()]]);
}
export function getRebalanceAutodriftParamsCodec(): FixedSizeCodec<RebalanceAutodriftParamsArgs, RebalanceAutodriftParams> {
return combineCodec(getRebalanceAutodriftParamsEncoder(), getRebalanceAutodriftParamsDecoder());
}