import { KeyedAccountInfo, PublicKey } from '@solana/web3.js'; import { Account, AsyncSigner, DecodedAccountData, InstructionReturn } from '@staratlas/data-source'; import { KeyIndexInput } from './common'; import { CraftingIDL, CraftingIDLProgram, RecipeCategoryAccount } from './constants'; /** * Checks equality between 2 Recipe Category Accounts * @param data1 - First Recipe Category Accounts * @param data2 - Second Recipe Category Account * @returns boolean */ export declare function recipeCategoryDataEquals(data1: RecipeCategoryAccount, data2: RecipeCategoryAccount): boolean; export interface RegisterRecipeCategoryInput { namespace: number[]; keyIndex: number; } export declare class RecipeCategory implements Account { private _data; private _key; static readonly ACCOUNT_NAME: NonNullable[number]['name']; static readonly MIN_DATA_SIZE: number; constructor(_data: RecipeCategoryAccount, _key: PublicKey); get data(): Readonly; get key(): PublicKey; /** * Register `RecipeCategory` * @param program - Crafting program * @param recipeCategory - the new crafting recipe category * @param key - Key authorized to use this instruction * @param profile - Profile Account with required Crafting Permissions * @param domain - the crafting domain * @param input - the input parameters * @returns InstructionReturn */ static registerRecipeCategory(program: CraftingIDLProgram, recipeCategory: AsyncSigner, key: AsyncSigner, profile: PublicKey, domain: PublicKey, input: RegisterRecipeCategoryInput): InstructionReturn; /** * Deregister `RecipeCategory` * @param program - Crafting program * @param recipeCategory - the crafting recipe category * @param key - Key authorized to use this instruction * @param profile - Profile Account with required Crafting Permissions * @param fundsTo - receives rent refund * @param domain - the crafting domain * @param input - the input parameters * @returns InstructionReturn */ static deregisterRecipeCategory(program: CraftingIDLProgram, recipeCategory: PublicKey, key: AsyncSigner, profile: PublicKey, fundsTo: PublicKey | 'funder', domain: PublicKey, input: KeyIndexInput): InstructionReturn; static decodeData(account: KeyedAccountInfo, program: CraftingIDLProgram): DecodedAccountData; } //# sourceMappingURL=recipeCategory.d.ts.map