import { ToolsService, ToolContext } from "./Tools";
import { Tool } from "../clients/types";
import { ToolCall } from "../clients/types";
export declare class LazyToolsService extends ToolsService {
    private allTools;
    private enabledPatterns;
    private disabledPatterns;
    constructor(context?: ToolContext);
    private registerLazyTools;
    addTools(tools: Tool[]): void;
    addTool(tool: Tool): void;
    getTools(): Tool[];
    enableTools(patterns: string[]): {
        enabled: number;
        total: number;
        patterns: string[];
    };
    disableTools(patterns: string[]): {
        enabled: number;
        total: number;
        patterns: string[];
    };
    listAvailableTools(patterns?: string[]): {
        enabled: string[];
        disabled: string[];
        total: number;
        enabledCount: number;
        disabledCount: number;
    };
    callTool(toolCall: ToolCall, enabledTools?: string[]): Promise<{
        toolMessages: any[];
        toolCallId: string;
        functionName: string;
        functionArgs: any;
        functionResp: any;
    }>;
    private updateVisibleTools;
}
