/** * 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 type { FixedSizeCodec, FixedSizeDecoder, FixedSizeEncoder, } from "@solana/kit"; import { combineCodec, getArrayDecoder, getArrayEncoder, getBooleanDecoder, getBooleanEncoder, getI128Decoder, getI128Encoder, getStructDecoder, getStructEncoder, getU128Decoder, getU128Encoder, } from "@solana/kit"; export interface Tick { initialized: boolean; liquidityNet: bigint; liquidityGross: bigint; feeGrowthOutsideA: bigint; feeGrowthOutsideB: bigint; rewardGrowthsOutside: bigint[]; } export interface TickArgs { initialized: boolean; liquidityNet: number | bigint; liquidityGross: number | bigint; feeGrowthOutsideA: number | bigint; feeGrowthOutsideB: number | bigint; rewardGrowthsOutside: Array; } export function getTickEncoder(): FixedSizeEncoder { return getStructEncoder([ ["initialized", getBooleanEncoder()], ["liquidityNet", getI128Encoder()], ["liquidityGross", getU128Encoder()], ["feeGrowthOutsideA", getU128Encoder()], ["feeGrowthOutsideB", getU128Encoder()], ["rewardGrowthsOutside", getArrayEncoder(getU128Encoder(), { size: 3 })], ]); } export function getTickDecoder(): FixedSizeDecoder { return getStructDecoder([ ["initialized", getBooleanDecoder()], ["liquidityNet", getI128Decoder()], ["liquidityGross", getU128Decoder()], ["feeGrowthOutsideA", getU128Decoder()], ["feeGrowthOutsideB", getU128Decoder()], ["rewardGrowthsOutside", getArrayDecoder(getU128Decoder(), { size: 3 })], ]); } export function getTickCodec(): FixedSizeCodec { return combineCodec(getTickEncoder(), getTickDecoder()); }