/**
 * 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 Address, type ReadonlyUint8Array } from '@solana/kit';
import { type ParsedClaimLockedInstruction, type ParsedClawbackInstruction, type ParsedCloseClaimStatusInstruction, type ParsedCloseDistributorInstruction, type ParsedNewClaimInstruction, type ParsedNewDistributorInstruction, type ParsedSetAdminInstruction, type ParsedSetClawbackReceiverInstruction, type ParsedSetEnableSlotInstruction } from '../instructions/index.js';
export declare const MERKLE_DISTRIBUTOR_PROGRAM_ADDRESS: Address<"">;
export declare const MerkleDistributorAccount: {
    readonly ClaimStatus: "ClaimStatus";
    readonly MerkleDistributor: "MerkleDistributor";
};
export type MerkleDistributorAccount = (typeof MerkleDistributorAccount)[keyof typeof MerkleDistributorAccount];
export declare function identifyMerkleDistributorAccount(account: {
    data: ReadonlyUint8Array;
} | ReadonlyUint8Array): MerkleDistributorAccount;
export declare const MerkleDistributorInstruction: {
    readonly NewDistributor: "NewDistributor";
    readonly CloseDistributor: "CloseDistributor";
    readonly CloseClaimStatus: "CloseClaimStatus";
    readonly SetEnableSlot: "SetEnableSlot";
    readonly NewClaim: "NewClaim";
    readonly ClaimLocked: "ClaimLocked";
    readonly Clawback: "Clawback";
    readonly SetClawbackReceiver: "SetClawbackReceiver";
    readonly SetAdmin: "SetAdmin";
};
export type MerkleDistributorInstruction = (typeof MerkleDistributorInstruction)[keyof typeof MerkleDistributorInstruction];
export declare function identifyMerkleDistributorInstruction(instruction: {
    data: ReadonlyUint8Array;
} | ReadonlyUint8Array): MerkleDistributorInstruction;
export type ParsedMerkleDistributorInstruction<TProgram extends string = ''> = ({
    instructionType: typeof MerkleDistributorInstruction.NewDistributor;
} & ParsedNewDistributorInstruction<TProgram>) | ({
    instructionType: typeof MerkleDistributorInstruction.CloseDistributor;
} & ParsedCloseDistributorInstruction<TProgram>) | ({
    instructionType: typeof MerkleDistributorInstruction.CloseClaimStatus;
} & ParsedCloseClaimStatusInstruction<TProgram>) | ({
    instructionType: typeof MerkleDistributorInstruction.SetEnableSlot;
} & ParsedSetEnableSlotInstruction<TProgram>) | ({
    instructionType: typeof MerkleDistributorInstruction.NewClaim;
} & ParsedNewClaimInstruction<TProgram>) | ({
    instructionType: typeof MerkleDistributorInstruction.ClaimLocked;
} & ParsedClaimLockedInstruction<TProgram>) | ({
    instructionType: typeof MerkleDistributorInstruction.Clawback;
} & ParsedClawbackInstruction<TProgram>) | ({
    instructionType: typeof MerkleDistributorInstruction.SetClawbackReceiver;
} & ParsedSetClawbackReceiverInstruction<TProgram>) | ({
    instructionType: typeof MerkleDistributorInstruction.SetAdmin;
} & ParsedSetAdminInstruction<TProgram>);
