import { StructuredTool } from '@langchain/core/tools';
import { z } from 'zod';

export declare class AirdropToolWrapper extends StructuredTool {
    name: string;
    description: string;
    schema: z.ZodObject<{
        tokenId: z.ZodString;
        recipients: z.ZodArray<z.ZodObject<{
            accountId: z.ZodString;
            amount: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
        }, "strip", z.ZodTypeAny, {
            accountId: string;
            amount: string | number;
        }, {
            accountId: string;
            amount: string | number;
        }>, "many">;
        memo: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        tokenId: string;
        recipients: {
            accountId: string;
            amount: string | number;
        }[];
        memo?: string | undefined;
    }, {
        tokenId: string;
        recipients: {
            accountId: string;
            amount: string | number;
        }[];
        memo?: string | undefined;
    }>;
    private originalTool;
    private agentKit;
    private logger;
    constructor(originalTool: StructuredTool, agentKit: unknown);
    _call(input: z.infer<typeof this.schema>): Promise<string>;
    private convertToSmallestUnits;
    private getTokenInfo;
    private queryTokenInfo;
}
