import { z } from 'zod';
import type { ToolExecutionObserver } from './observer.js';
export declare function createListDirectoryTool(_observer?: ToolExecutionObserver): import("ai").Tool<z.ZodObject<{
    path: z.ZodDefault<z.ZodString>;
    recursive: z.ZodDefault<z.ZodBoolean>;
    maxDepth: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    path: string;
    recursive: boolean;
    maxDepth: number;
}, {
    path?: string | undefined;
    recursive?: boolean | undefined;
    maxDepth?: number | undefined;
}>, {
    ok: boolean;
    path: string;
    error: string;
    entries?: undefined;
} | {
    ok: boolean;
    path: string;
    entries: {
        path: string;
        type: "file" | "directory";
    }[];
    error?: undefined;
}> & {
    execute: (args: {
        path: string;
        recursive: boolean;
        maxDepth: number;
    }, options: import("ai").ToolExecutionOptions) => PromiseLike<{
        ok: boolean;
        path: string;
        error: string;
        entries?: undefined;
    } | {
        ok: boolean;
        path: string;
        entries: {
            path: string;
            type: "file" | "directory";
        }[];
        error?: undefined;
    }>;
};
//# sourceMappingURL=list-directory.d.ts.map