/** * 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 BaseFeeStruct = { cliffFeeNumerator: bigint; baseFeeMode: number; padding0: Array; firstFactor: number; secondFactor: Array; thirdFactor: bigint; padding1: bigint; }; export type BaseFeeStructArgs = { cliffFeeNumerator: number | bigint; baseFeeMode: number; padding0: Array; firstFactor: number; secondFactor: Array; thirdFactor: number | bigint; padding1: number | bigint; }; export function getBaseFeeStructEncoder(): FixedSizeEncoder { return getStructEncoder([ ["cliffFeeNumerator", getU64Encoder()], ["baseFeeMode", getU8Encoder()], ["padding0", getArrayEncoder(getU8Encoder(), { size: 5 })], ["firstFactor", getU16Encoder()], ["secondFactor", getArrayEncoder(getU8Encoder(), { size: 8 })], ["thirdFactor", getU64Encoder()], ["padding1", getU64Encoder()], ]); } export function getBaseFeeStructDecoder(): FixedSizeDecoder { return getStructDecoder([ ["cliffFeeNumerator", getU64Decoder()], ["baseFeeMode", getU8Decoder()], ["padding0", getArrayDecoder(getU8Decoder(), { size: 5 })], ["firstFactor", getU16Decoder()], ["secondFactor", getArrayDecoder(getU8Decoder(), { size: 8 })], ["thirdFactor", getU64Decoder()], ["padding1", getU64Decoder()], ]); } export function getBaseFeeStructCodec(): FixedSizeCodec< BaseFeeStructArgs, BaseFeeStruct > { return combineCodec(getBaseFeeStructEncoder(), getBaseFeeStructDecoder()); }