/** * 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, getStructDecoder, getStructEncoder, getU128Decoder, getU128Encoder, getU16Decoder, getU16Encoder, getU32Decoder, getU32Encoder, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, } from "@solana/kit"; export type DynamicFeeParameters = { binStep: number; binStepU128: bigint; filterPeriod: number; decayPeriod: number; reductionFactor: number; maxVolatilityAccumulator: number; variableFeeControl: number; }; export type DynamicFeeParametersArgs = { binStep: number; binStepU128: number | bigint; filterPeriod: number; decayPeriod: number; reductionFactor: number; maxVolatilityAccumulator: number; variableFeeControl: number; }; export function getDynamicFeeParametersEncoder(): FixedSizeEncoder { return getStructEncoder([ ["binStep", getU16Encoder()], ["binStepU128", getU128Encoder()], ["filterPeriod", getU16Encoder()], ["decayPeriod", getU16Encoder()], ["reductionFactor", getU16Encoder()], ["maxVolatilityAccumulator", getU32Encoder()], ["variableFeeControl", getU32Encoder()], ]); } export function getDynamicFeeParametersDecoder(): FixedSizeDecoder { return getStructDecoder([ ["binStep", getU16Decoder()], ["binStepU128", getU128Decoder()], ["filterPeriod", getU16Decoder()], ["decayPeriod", getU16Decoder()], ["reductionFactor", getU16Decoder()], ["maxVolatilityAccumulator", getU32Decoder()], ["variableFeeControl", getU32Decoder()], ]); } export function getDynamicFeeParametersCodec(): FixedSizeCodec< DynamicFeeParametersArgs, DynamicFeeParameters > { return combineCodec( getDynamicFeeParametersEncoder(), getDynamicFeeParametersDecoder(), ); }