/** * 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_CONFIDENTIAL_TRANSFER_MINT_DISCRIMINATOR = 27; export declare function getInitializeConfidentialTransferMintDiscriminatorBytes(): ReadonlyUint8Array; export declare const INITIALIZE_CONFIDENTIAL_TRANSFER_MINT_CONFIDENTIAL_TRANSFER_DISCRIMINATOR = 0; export declare function getInitializeConfidentialTransferMintConfidentialTransferDiscriminatorBytes(): ReadonlyUint8Array; export type InitializeConfidentialTransferMintInstruction = string, TRemainingAccounts extends readonly AccountMeta[] = []> = Instruction & InstructionWithData & InstructionWithAccounts<[ TAccountMint extends string ? WritableAccount : TAccountMint, ...TRemainingAccounts ]>; export type InitializeConfidentialTransferMintInstructionData = { discriminator: number; confidentialTransferDiscriminator: number; /** * Authority to modify the `ConfidentialTransferMint` configuration and to * approve new accounts. */ authority: Option
; /** * Determines if newly configured accounts must be approved by the * `authority` before they may be used by the user. */ autoApproveNewAccounts: boolean; /** New authority to decode any transfer amount in a confidential transfer. */ auditorElgamalPubkey: Option
; }; export type InitializeConfidentialTransferMintInstructionDataArgs = { /** * Authority to modify the `ConfidentialTransferMint` configuration and to * approve new accounts. */ authority: OptionOrNullable
; /** * Determines if newly configured accounts must be approved by the * `authority` before they may be used by the user. */ autoApproveNewAccounts: boolean; /** New authority to decode any transfer amount in a confidential transfer. */ auditorElgamalPubkey: OptionOrNullable
; }; export declare function getInitializeConfidentialTransferMintInstructionDataEncoder(): FixedSizeEncoder; export declare function getInitializeConfidentialTransferMintInstructionDataDecoder(): FixedSizeDecoder; export declare function getInitializeConfidentialTransferMintInstructionDataCodec(): FixedSizeCodec; export type InitializeConfidentialTransferMintInput = { /** The SPL Token mint. */ mint: Address; authority: InitializeConfidentialTransferMintInstructionDataArgs['authority']; autoApproveNewAccounts: InitializeConfidentialTransferMintInstructionDataArgs['autoApproveNewAccounts']; auditorElgamalPubkey: InitializeConfidentialTransferMintInstructionDataArgs['auditorElgamalPubkey']; }; export declare function getInitializeConfidentialTransferMintInstruction(input: InitializeConfidentialTransferMintInput, config?: { programAddress?: TProgramAddress; }): InitializeConfidentialTransferMintInstruction; export type ParsedInitializeConfidentialTransferMintInstruction = { programAddress: Address; accounts: { /** The SPL Token mint. */ mint: TAccountMetas[0]; }; data: InitializeConfidentialTransferMintInstructionData; }; export declare function parseInitializeConfidentialTransferMintInstruction(instruction: Instruction & InstructionWithAccounts & InstructionWithData): ParsedInitializeConfidentialTransferMintInstruction; //# sourceMappingURL=initializeConfidentialTransferMint.d.ts.map