/** * 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 { addDecoderSizePrefix, addEncoderSizePrefix, combineCodec, getMapDecoder, getMapEncoder, getStructDecoder, getStructEncoder, getU32Decoder, getU32Encoder, getUtf8Decoder, getUtf8Encoder, type Codec, type Decoder, type Encoder, } from "@solana/kit"; import { getPayloadTypeDecoder, getPayloadTypeEncoder, type PayloadType, type PayloadTypeArgs, } from "./index.ts"; /** * The runtime values passed to `validate`, keyed by the field name a * rule expects (e.g. the destination address, amount, or a Merkle proof). */ export type Payload = { /** Field name to typed value expected by the operation's rules. */ map: Map; }; export type PayloadArgs = { /** Field name to typed value expected by the operation's rules. */ map: Map; }; export function getPayloadEncoder(): Encoder { return getStructEncoder([ [ "map", getMapEncoder( addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder()), getPayloadTypeEncoder(), ), ], ]); } export function getPayloadDecoder(): Decoder { return getStructDecoder([ [ "map", getMapDecoder( addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder()), getPayloadTypeDecoder(), ), ], ]); } export function getPayloadCodec(): Codec { return combineCodec(getPayloadEncoder(), getPayloadDecoder()); }