/** * 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 { getAddressEncoder, getBytesEncoder, getProgramDerivedAddress, getU64Encoder, type Address, type ProgramDerivedAddress, } from '@solana/kit'; import { getMinorFactionIdEncoder, type MinorFactionIdArgs } from '../types'; export type LoyaltyEpochSeeds = { gameId: Address; factionId: MinorFactionIdArgs; epochIndex: number | bigint; }; /** One faction's daily LP total, ATLAS entitlement, and legacy prepaid reserve. */ export async function findLoyaltyEpochPda( seeds: LoyaltyEpochSeeds, config: { programAddress?: Address | undefined } = {}, ): Promise { const { programAddress = 'C4SAgeKLgb3pTLWhVr6NRwWyYFuTR7ZeSXFrzoLwfMzF' as Address<'C4SAgeKLgb3pTLWhVr6NRwWyYFuTR7ZeSXFrzoLwfMzF'>, } = config; return await getProgramDerivedAddress({ programAddress, seeds: [ getBytesEncoder().encode( new Uint8Array([ 76, 111, 121, 97, 108, 116, 121, 69, 112, 111, 99, 104, ]), ), getAddressEncoder().encode(seeds.gameId), getMinorFactionIdEncoder().encode(seeds.factionId), getU64Encoder().encode(seeds.epochIndex), ], }); }