import { z } from 'zod';
import { Storage } from '../../storage/storage.js';
import { FileStorage as MemoryFileStorage } from '../../../agent-memories/storage/file-storage.js';
/**
 * Research tool that guides the AI agent to perform web research for tasks
 * and optionally stores findings in memories for future reference
 */
export declare function createTaskResearchTool(storage: Storage, memoryStorage: MemoryFileStorage, getWorkingDirectoryDescription: (config: any) => string, config: any): {
    name: string;
    description: string;
    inputSchema: z.ZodObject<{
        workingDirectory: z.ZodString;
        taskId: z.ZodString;
        researchAreas: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        saveToMemories: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
        checkExistingMemories: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
        researchDepth: z.ZodDefault<z.ZodOptional<z.ZodEnum<["quick", "standard", "comprehensive"]>>>;
    }, "strip", z.ZodTypeAny, {
        taskId: string;
        workingDirectory: string;
        saveToMemories: boolean;
        checkExistingMemories: boolean;
        researchDepth: "quick" | "standard" | "comprehensive";
        researchAreas?: string[] | undefined;
    }, {
        taskId: string;
        workingDirectory: string;
        researchAreas?: string[] | undefined;
        saveToMemories?: boolean | undefined;
        checkExistingMemories?: boolean | undefined;
        researchDepth?: "quick" | "standard" | "comprehensive" | undefined;
    }>;
    handler: (args: any) => Promise<{
        content: {
            type: "text";
            text: string;
        }[];
        isError: boolean;
    } | {
        content: {
            type: "text";
            text: string;
        }[];
        isError?: undefined;
    }>;
};
