/** * 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 FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount, type WritableSignerAccount } from '@solana/kit'; import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS } from '../programs'; export declare const RECOVER_NESTED_ASSOCIATED_TOKEN_DISCRIMINATOR = 2; export declare function getRecoverNestedAssociatedTokenDiscriminatorBytes(): ReadonlyUint8Array; export type RecoverNestedAssociatedTokenInstruction = string, TAccountNestedTokenMintAddress extends string | AccountMeta = string, TAccountDestinationAssociatedAccountAddress extends string | AccountMeta = string, TAccountOwnerAssociatedAccountAddress extends string | AccountMeta = string, TAccountOwnerTokenMintAddress extends string | AccountMeta = string, TAccountWalletAddress extends string | AccountMeta = string, TAccountTokenProgram extends string | AccountMeta = 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb', TRemainingAccounts extends readonly AccountMeta[] = []> = Instruction & InstructionWithData & InstructionWithAccounts<[ TAccountNestedAssociatedAccountAddress extends string ? WritableAccount : TAccountNestedAssociatedAccountAddress, TAccountNestedTokenMintAddress extends string ? ReadonlyAccount : TAccountNestedTokenMintAddress, TAccountDestinationAssociatedAccountAddress extends string ? WritableAccount : TAccountDestinationAssociatedAccountAddress, TAccountOwnerAssociatedAccountAddress extends string ? ReadonlyAccount : TAccountOwnerAssociatedAccountAddress, TAccountOwnerTokenMintAddress extends string ? ReadonlyAccount : TAccountOwnerTokenMintAddress, TAccountWalletAddress extends string ? WritableSignerAccount & AccountSignerMeta : TAccountWalletAddress, TAccountTokenProgram extends string ? ReadonlyAccount : TAccountTokenProgram, ...TRemainingAccounts ]>; export type RecoverNestedAssociatedTokenInstructionData = { discriminator: number; }; export type RecoverNestedAssociatedTokenInstructionDataArgs = {}; export declare function getRecoverNestedAssociatedTokenInstructionDataEncoder(): FixedSizeEncoder; export declare function getRecoverNestedAssociatedTokenInstructionDataDecoder(): FixedSizeDecoder; export declare function getRecoverNestedAssociatedTokenInstructionDataCodec(): FixedSizeCodec; export type RecoverNestedAssociatedTokenAsyncInput = { /** Nested associated token account, must be owned by `ownerAssociatedAccountAddress`. */ nestedAssociatedAccountAddress?: Address; /** Token mint for the nested associated token account. */ nestedTokenMintAddress: Address; /** Wallet's associated token account. */ destinationAssociatedAccountAddress?: Address; /** Owner associated token account address, must be owned by `walletAddress`. */ ownerAssociatedAccountAddress?: Address; /** Token mint for the owner associated token account. */ ownerTokenMintAddress: Address; /** Wallet address for the owner associated token account. */ walletAddress: TransactionSigner; /** SPL Token program. */ tokenProgram?: Address; }; export declare function getRecoverNestedAssociatedTokenInstructionAsync(input: RecoverNestedAssociatedTokenAsyncInput, config?: { programAddress?: TProgramAddress; }): Promise>; export type RecoverNestedAssociatedTokenInput = { /** Nested associated token account, must be owned by `ownerAssociatedAccountAddress`. */ nestedAssociatedAccountAddress: Address; /** Token mint for the nested associated token account. */ nestedTokenMintAddress: Address; /** Wallet's associated token account. */ destinationAssociatedAccountAddress: Address; /** Owner associated token account address, must be owned by `walletAddress`. */ ownerAssociatedAccountAddress: Address; /** Token mint for the owner associated token account. */ ownerTokenMintAddress: Address; /** Wallet address for the owner associated token account. */ walletAddress: TransactionSigner; /** SPL Token program. */ tokenProgram?: Address; }; export declare function getRecoverNestedAssociatedTokenInstruction(input: RecoverNestedAssociatedTokenInput, config?: { programAddress?: TProgramAddress; }): RecoverNestedAssociatedTokenInstruction; export type ParsedRecoverNestedAssociatedTokenInstruction = { programAddress: Address; accounts: { /** Nested associated token account, must be owned by `ownerAssociatedAccountAddress`. */ nestedAssociatedAccountAddress: TAccountMetas[0]; /** Token mint for the nested associated token account. */ nestedTokenMintAddress: TAccountMetas[1]; /** Wallet's associated token account. */ destinationAssociatedAccountAddress: TAccountMetas[2]; /** Owner associated token account address, must be owned by `walletAddress`. */ ownerAssociatedAccountAddress: TAccountMetas[3]; /** Token mint for the owner associated token account. */ ownerTokenMintAddress: TAccountMetas[4]; /** Wallet address for the owner associated token account. */ walletAddress: TAccountMetas[5]; /** SPL Token program. */ tokenProgram: TAccountMetas[6]; }; data: RecoverNestedAssociatedTokenInstructionData; }; export declare function parseRecoverNestedAssociatedTokenInstruction(instruction: Instruction & InstructionWithAccounts & InstructionWithData): ParsedRecoverNestedAssociatedTokenInstruction; //# sourceMappingURL=recoverNestedAssociatedToken.d.ts.map