/** * 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 Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type Option, type OptionOrNullable, type ReadonlyUint8Array, type WritableAccount } from '@solana/kit'; import { TOKEN_2022_PROGRAM_ADDRESS } from '../programs'; export declare const INITIALIZE_TRANSFER_HOOK_DISCRIMINATOR = 36; export declare function getInitializeTransferHookDiscriminatorBytes(): ReadonlyUint8Array; export declare const INITIALIZE_TRANSFER_HOOK_TRANSFER_HOOK_DISCRIMINATOR = 0; export declare function getInitializeTransferHookTransferHookDiscriminatorBytes(): ReadonlyUint8Array; export type InitializeTransferHookInstruction = string, TRemainingAccounts extends readonly AccountMeta[] = []> = Instruction & InstructionWithData & InstructionWithAccounts<[ TAccountMint extends string ? WritableAccount : TAccountMint, ...TRemainingAccounts ]>; export type InitializeTransferHookInstructionData = { discriminator: number; transferHookDiscriminator: number; /** The public key for the account that can update the program id */ authority: Option
; /** The program id that performs logic during transfers */ programId: Option
; }; export type InitializeTransferHookInstructionDataArgs = { /** The public key for the account that can update the program id */ authority: OptionOrNullable
; /** The program id that performs logic during transfers */ programId: OptionOrNullable
; }; export declare function getInitializeTransferHookInstructionDataEncoder(): FixedSizeEncoder; export declare function getInitializeTransferHookInstructionDataDecoder(): FixedSizeDecoder; export declare function getInitializeTransferHookInstructionDataCodec(): FixedSizeCodec; export type InitializeTransferHookInput = { /** The mint to initialize. */ mint: Address; authority: InitializeTransferHookInstructionDataArgs['authority']; programId: InitializeTransferHookInstructionDataArgs['programId']; }; export declare function getInitializeTransferHookInstruction(input: InitializeTransferHookInput, config?: { programAddress?: TProgramAddress; }): InitializeTransferHookInstruction; export type ParsedInitializeTransferHookInstruction = { programAddress: Address; accounts: { /** The mint to initialize. */ mint: TAccountMetas[0]; }; data: InitializeTransferHookInstructionData; }; export declare function parseInitializeTransferHookInstruction(instruction: Instruction & InstructionWithAccounts & InstructionWithData): ParsedInitializeTransferHookInstruction; //# sourceMappingURL=initializeTransferHook.d.ts.map