/** * 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, getBooleanDecoder, getBooleanEncoder, getOptionDecoder, getOptionEncoder, getStructDecoder, getStructEncoder, getU16Decoder, getU16Encoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, type Codec, type Decoder, type Encoder, type Option, type OptionOrNullable, } from '@solana/kit'; import { getMedallionRewardConfigDecoder, getMedallionRewardConfigEncoder, getSalvageRewardEntryDecoder, getSalvageRewardEntryEncoder, getUpgradeLpRateDecoder, getUpgradeLpRateEncoder, type MedallionRewardConfig, type MedallionRewardConfigArgs, type SalvageRewardEntry, type SalvageRewardEntryArgs, type UpgradeLpRate, type UpgradeLpRateArgs, } from '.'; /** Partial runtime update. Every authored value in [`AtlasRewardConfigValues`] is represented. */ export type AtlasRewardConfigPartial = { enabled: Option; sourceFlags: Option; epochLenSecs: Option; claimSettlementWindowSecs: Option; atlasBankInactivityExpirySecs: Option; rewardLootReclaimSecs: Option; factionPoolLever: Option; kingSystemCurve: Option>; pveLpRateBps: Option; pvpMedallionRateBps: Option; salvageEvRateBps: Option; upgradeLpRates: Option>; repairKitLpRate: Option; lossModelTargetBps: Option>; starbaseDestructionMedallions: Option>; activeMedallion: Option; salvageEntries: Option>; medallionBuybackCapPerEpoch: Option; rewardReserveLowBalanceThreshold: Option; }; export type AtlasRewardConfigPartialArgs = { enabled: OptionOrNullable; sourceFlags: OptionOrNullable; epochLenSecs: OptionOrNullable; claimSettlementWindowSecs: OptionOrNullable; atlasBankInactivityExpirySecs: OptionOrNullable; rewardLootReclaimSecs: OptionOrNullable; factionPoolLever: OptionOrNullable; kingSystemCurve: OptionOrNullable>; pveLpRateBps: OptionOrNullable; pvpMedallionRateBps: OptionOrNullable; salvageEvRateBps: OptionOrNullable; upgradeLpRates: OptionOrNullable>; repairKitLpRate: OptionOrNullable; lossModelTargetBps: OptionOrNullable>; starbaseDestructionMedallions: OptionOrNullable>; activeMedallion: OptionOrNullable; salvageEntries: OptionOrNullable>; medallionBuybackCapPerEpoch: OptionOrNullable; rewardReserveLowBalanceThreshold: OptionOrNullable; }; export function getAtlasRewardConfigPartialEncoder(): Encoder { return getStructEncoder([ ['enabled', getOptionEncoder(getBooleanEncoder())], ['sourceFlags', getOptionEncoder(getU16Encoder())], ['epochLenSecs', getOptionEncoder(getU32Encoder())], ['claimSettlementWindowSecs', getOptionEncoder(getU32Encoder())], ['atlasBankInactivityExpirySecs', getOptionEncoder(getU64Encoder())], ['rewardLootReclaimSecs', getOptionEncoder(getU64Encoder())], ['factionPoolLever', getOptionEncoder(getU64Encoder())], ['kingSystemCurve', getOptionEncoder(getArrayEncoder(getU64Encoder()))], ['pveLpRateBps', getOptionEncoder(getU32Encoder())], ['pvpMedallionRateBps', getOptionEncoder(getU32Encoder())], ['salvageEvRateBps', getOptionEncoder(getU32Encoder())], [ 'upgradeLpRates', getOptionEncoder(getArrayEncoder(getUpgradeLpRateEncoder())), ], ['repairKitLpRate', getOptionEncoder(getU64Encoder())], [ 'lossModelTargetBps', getOptionEncoder(getArrayEncoder(getU16Encoder(), { size: 3 })), ], [ 'starbaseDestructionMedallions', getOptionEncoder(getArrayEncoder(getU64Encoder(), { size: 7 })), ], ['activeMedallion', getOptionEncoder(getMedallionRewardConfigEncoder())], [ 'salvageEntries', getOptionEncoder(getArrayEncoder(getSalvageRewardEntryEncoder())), ], ['medallionBuybackCapPerEpoch', getOptionEncoder(getU64Encoder())], ['rewardReserveLowBalanceThreshold', getOptionEncoder(getU64Encoder())], ]); } export function getAtlasRewardConfigPartialDecoder(): Decoder { return getStructDecoder([ ['enabled', getOptionDecoder(getBooleanDecoder())], ['sourceFlags', getOptionDecoder(getU16Decoder())], ['epochLenSecs', getOptionDecoder(getU32Decoder())], ['claimSettlementWindowSecs', getOptionDecoder(getU32Decoder())], ['atlasBankInactivityExpirySecs', getOptionDecoder(getU64Decoder())], ['rewardLootReclaimSecs', getOptionDecoder(getU64Decoder())], ['factionPoolLever', getOptionDecoder(getU64Decoder())], ['kingSystemCurve', getOptionDecoder(getArrayDecoder(getU64Decoder()))], ['pveLpRateBps', getOptionDecoder(getU32Decoder())], ['pvpMedallionRateBps', getOptionDecoder(getU32Decoder())], ['salvageEvRateBps', getOptionDecoder(getU32Decoder())], [ 'upgradeLpRates', getOptionDecoder(getArrayDecoder(getUpgradeLpRateDecoder())), ], ['repairKitLpRate', getOptionDecoder(getU64Decoder())], [ 'lossModelTargetBps', getOptionDecoder(getArrayDecoder(getU16Decoder(), { size: 3 })), ], [ 'starbaseDestructionMedallions', getOptionDecoder(getArrayDecoder(getU64Decoder(), { size: 7 })), ], ['activeMedallion', getOptionDecoder(getMedallionRewardConfigDecoder())], [ 'salvageEntries', getOptionDecoder(getArrayDecoder(getSalvageRewardEntryDecoder())), ], ['medallionBuybackCapPerEpoch', getOptionDecoder(getU64Decoder())], ['rewardReserveLowBalanceThreshold', getOptionDecoder(getU64Decoder())], ]); } export function getAtlasRewardConfigPartialCodec(): Codec< AtlasRewardConfigPartialArgs, AtlasRewardConfigPartial > { return combineCodec( getAtlasRewardConfigPartialEncoder(), getAtlasRewardConfigPartialDecoder(), ); }