/** * 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, type Codec, type Decoder, type Encoder, } from '@solana/kit'; import { getNameDecoder, getNameEncoder, getScanCostDecoder, getScanCostEncoder, getScanLootEntryDecoder, getScanLootEntryEncoder, getScanNoiseMapBorshDecoder, getScanNoiseMapBorshEncoder, type Name, type NameArgs, type ScanCost, type ScanCostArgs, type ScanLootEntry, type ScanLootEntryArgs, type ScanNoiseMapBorsh, type ScanNoiseMapBorshArgs, } from '.'; import { getU16F16Decoder, getU16F16Encoder, type U16F16, type U16F16Args, } from '../../fixed/codecs'; export type CreateScanPatternArgs = { name: Name; cooldownMultiplier: U16F16; blankWeight: U16F16; blankXpValue: U16F16; scanCost: Array; lootTable: Array; noiseMaps: Array; }; export type CreateScanPatternArgsArgs = { name: NameArgs; cooldownMultiplier: U16F16Args; blankWeight: U16F16Args; blankXpValue: U16F16Args; scanCost: Array; lootTable: Array; noiseMaps: Array; }; export function getCreateScanPatternArgsEncoder(): Encoder { return getStructEncoder([ ['name', getNameEncoder()], ['cooldownMultiplier', getU16F16Encoder()], ['blankWeight', getU16F16Encoder()], ['blankXpValue', getU16F16Encoder()], ['scanCost', getArrayEncoder(getScanCostEncoder())], ['lootTable', getArrayEncoder(getScanLootEntryEncoder())], ['noiseMaps', getArrayEncoder(getScanNoiseMapBorshEncoder())], ]); } export function getCreateScanPatternArgsDecoder(): Decoder { return getStructDecoder([ ['name', getNameDecoder()], ['cooldownMultiplier', getU16F16Decoder()], ['blankWeight', getU16F16Decoder()], ['blankXpValue', getU16F16Decoder()], ['scanCost', getArrayDecoder(getScanCostDecoder())], ['lootTable', getArrayDecoder(getScanLootEntryDecoder())], ['noiseMaps', getArrayDecoder(getScanNoiseMapBorshDecoder())], ]); } export function getCreateScanPatternArgsCodec(): Codec< CreateScanPatternArgsArgs, CreateScanPatternArgs > { return combineCodec( getCreateScanPatternArgsEncoder(), getCreateScanPatternArgsDecoder(), ); }