/** * 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 { type AccountMeta, type AccountSignerMeta, type Address, type Codec, type Decoder, type Encoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount, type WritableSignerAccount } from '@solana/kit'; import { TOKEN_2022_PROGRAM_ADDRESS } from '../programs'; import { type ExtensionType, type ExtensionTypeArgs } from '../types'; export declare const REALLOCATE_DISCRIMINATOR = 29; export declare function getReallocateDiscriminatorBytes(): ReadonlyUint8Array; export type ReallocateInstruction = string, TAccountPayer extends string | AccountMeta = string, TAccountSystemProgram extends string | AccountMeta = '11111111111111111111111111111111', TAccountOwner extends string | AccountMeta = string, TRemainingAccounts extends readonly AccountMeta[] = []> = Instruction & InstructionWithData & InstructionWithAccounts<[ TAccountToken extends string ? WritableAccount : TAccountToken, TAccountPayer extends string ? WritableSignerAccount & AccountSignerMeta : TAccountPayer, TAccountSystemProgram extends string ? ReadonlyAccount : TAccountSystemProgram, TAccountOwner extends string ? ReadonlyAccount : TAccountOwner, ...TRemainingAccounts ]>; export type ReallocateInstructionData = { discriminator: number; /** New extension types to include in the reallocated account. */ newExtensionTypes: Array; }; export type ReallocateInstructionDataArgs = { /** New extension types to include in the reallocated account. */ newExtensionTypes: Array; }; export declare function getReallocateInstructionDataEncoder(): Encoder; export declare function getReallocateInstructionDataDecoder(): Decoder; export declare function getReallocateInstructionDataCodec(): Codec; export type ReallocateInput = { /** The token account to reallocate. */ token: Address; /** The payer account to fund reallocation. */ payer: TransactionSigner; /** System program for reallocation funding. */ systemProgram?: Address; /** The account's owner or its multisignature account. */ owner: Address | TransactionSigner; newExtensionTypes: ReallocateInstructionDataArgs['newExtensionTypes']; multiSigners?: Array; }; export declare function getReallocateInstruction(input: ReallocateInput, config?: { programAddress?: TProgramAddress; }): ReallocateInstruction ? ReadonlySignerAccount & AccountSignerMeta : TAccountOwner>; export type ParsedReallocateInstruction = { programAddress: Address; accounts: { /** The token account to reallocate. */ token: TAccountMetas[0]; /** The payer account to fund reallocation. */ payer: TAccountMetas[1]; /** System program for reallocation funding. */ systemProgram: TAccountMetas[2]; /** The account's owner or its multisignature account. */ owner: TAccountMetas[3]; }; data: ReallocateInstructionData; }; export declare function parseReallocateInstruction(instruction: Instruction & InstructionWithAccounts & InstructionWithData): ParsedReallocateInstruction; //# sourceMappingURL=reallocate.d.ts.map