/**
 * This code was AUTOGENERATED using the kinobi library.
 * Please DO NOT EDIT THIS FILE, instead use visitors
 * to add features, then rerun kinobi to update it.
 *
 * @see https://github.com/metaplex-foundation/kinobi
 */
import { Context, Pda, PublicKey, Signer, TransactionBuilder } from '@metaplex-foundation/umi';
import { Serializer } from '@metaplex-foundation/umi/serializers';
export type TransferTokensCheckedInstructionAccounts = {
    source: PublicKey | Pda;
    mint: PublicKey | Pda;
    destination: PublicKey | Pda;
    authority?: Signer;
};
export type TransferTokensCheckedInstructionData = {
    discriminator: number;
    amount: bigint;
    decimals: number;
};
export type TransferTokensCheckedInstructionDataArgs = {
    amount: number | bigint;
    decimals: number;
};
export declare function getTransferTokensCheckedInstructionDataSerializer(): Serializer<TransferTokensCheckedInstructionDataArgs, TransferTokensCheckedInstructionData>;
export type TransferTokensCheckedInstructionArgs = TransferTokensCheckedInstructionDataArgs;
export declare function transferTokensChecked(context: Pick<Context, 'identity' | 'programs'>, input: TransferTokensCheckedInstructionAccounts & TransferTokensCheckedInstructionArgs): TransactionBuilder;
