import { BaseHederaTransactionTool, BaseHederaQueryTool, BaseServiceBuilder } from 'hedera-agent-kit';
import { HCS2Builder } from '../../builders/hcs2/hcs2-builder';
import { HCS2TransactionToolParams, HCS2QueryToolParams } from './hcs2-tool-params';
import { z } from 'zod';
/**
 * Base class for HCS2 transaction tools
 */
export declare abstract class BaseHCS2TransactionTool<T extends z.ZodObject<z.ZodRawShape, z.UnknownKeysParam, z.ZodTypeAny> = z.ZodObject<z.ZodRawShape>> extends BaseHederaTransactionTool<T> {
    protected hcs2Builder: HCS2Builder;
    namespace: "hcs2";
    constructor(params: HCS2TransactionToolParams);
    /**
     * Override to return the HCS2Builder
     */
    protected getServiceBuilder(): BaseServiceBuilder;
}
/**
 * Base class for HCS2 query tools
 */
export declare abstract class BaseHCS2QueryTool<T extends z.ZodObject<z.ZodRawShape, z.UnknownKeysParam, z.ZodTypeAny> = z.ZodObject<z.ZodRawShape>> extends BaseHederaQueryTool<T> {
    protected hcs2Builder: HCS2Builder;
    namespace: "hcs2";
    constructor(params: HCS2QueryToolParams);
    /**
     * Override to return the HCS2Builder
     */
    protected getServiceBuilder(): BaseServiceBuilder;
}
