/** * 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, getU128Decoder, getU128Encoder, getU16Decoder, getU16Encoder, getU32Decoder, getU32Encoder, getU8Decoder, getU8Encoder, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, } from "@solana/kit"; export type DynamicFeeConfig = { initialized: number; padding: Array; maxVolatilityAccumulator: number; variableFeeControl: number; binStep: number; filterPeriod: number; decayPeriod: number; reductionFactor: number; padding1: Array; binStepU128: bigint; }; export type DynamicFeeConfigArgs = { initialized: number; padding: Array; maxVolatilityAccumulator: number; variableFeeControl: number; binStep: number; filterPeriod: number; decayPeriod: number; reductionFactor: number; padding1: Array; binStepU128: number | bigint; }; export function getDynamicFeeConfigEncoder(): FixedSizeEncoder { return getStructEncoder([ ["initialized", getU8Encoder()], ["padding", getArrayEncoder(getU8Encoder(), { size: 7 })], ["maxVolatilityAccumulator", getU32Encoder()], ["variableFeeControl", getU32Encoder()], ["binStep", getU16Encoder()], ["filterPeriod", getU16Encoder()], ["decayPeriod", getU16Encoder()], ["reductionFactor", getU16Encoder()], ["padding1", getArrayEncoder(getU8Encoder(), { size: 8 })], ["binStepU128", getU128Encoder()], ]); } export function getDynamicFeeConfigDecoder(): FixedSizeDecoder { return getStructDecoder([ ["initialized", getU8Decoder()], ["padding", getArrayDecoder(getU8Decoder(), { size: 7 })], ["maxVolatilityAccumulator", getU32Decoder()], ["variableFeeControl", getU32Decoder()], ["binStep", getU16Decoder()], ["filterPeriod", getU16Decoder()], ["decayPeriod", getU16Decoder()], ["reductionFactor", getU16Decoder()], ["padding1", getArrayDecoder(getU8Decoder(), { size: 8 })], ["binStepU128", getU128Decoder()], ]); } export function getDynamicFeeConfigCodec(): FixedSizeCodec< DynamicFeeConfigArgs, DynamicFeeConfig > { return combineCodec( getDynamicFeeConfigEncoder(), getDynamicFeeConfigDecoder(), ); }