/** * 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, getStructDecoder, getStructEncoder, getU16Decoder, getU16Encoder, getU64Decoder, getU64Encoder, getU8Decoder, getU8Encoder, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, } from "@solana/kit"; export type BaseFeeParameters = { cliffFeeNumerator: bigint; firstFactor: number; secondFactor: Array; thirdFactor: bigint; baseFeeMode: number; }; export type BaseFeeParametersArgs = { cliffFeeNumerator: number | bigint; firstFactor: number; secondFactor: Array; thirdFactor: number | bigint; baseFeeMode: number; }; export function getBaseFeeParametersEncoder(): FixedSizeEncoder { return getStructEncoder([ ["cliffFeeNumerator", getU64Encoder()], ["firstFactor", getU16Encoder()], ["secondFactor", getArrayEncoder(getU8Encoder(), { size: 8 })], ["thirdFactor", getU64Encoder()], ["baseFeeMode", getU8Encoder()], ]); } export function getBaseFeeParametersDecoder(): FixedSizeDecoder { return getStructDecoder([ ["cliffFeeNumerator", getU64Decoder()], ["firstFactor", getU16Decoder()], ["secondFactor", getArrayDecoder(getU8Decoder(), { size: 8 })], ["thirdFactor", getU64Decoder()], ["baseFeeMode", getU8Decoder()], ]); } export function getBaseFeeParametersCodec(): FixedSizeCodec< BaseFeeParametersArgs, BaseFeeParameters > { return combineCodec( getBaseFeeParametersEncoder(), getBaseFeeParametersDecoder(), ); }