import { z } from 'zod';
import type { ToolExecutionObserver } from './observer.js';
export declare function createWriteWorkspaceFileTool(_observer?: ToolExecutionObserver): import("ai").Tool<z.ZodObject<{
    path: z.ZodString;
    content: z.ZodString;
    mode: z.ZodDefault<z.ZodEnum<["create", "overwrite", "append"]>>;
}, "strip", z.ZodTypeAny, {
    mode: "overwrite" | "create" | "append";
    content: string;
    path: string;
}, {
    content: string;
    path: string;
    mode?: "overwrite" | "create" | "append" | undefined;
}>, {
    ok: boolean;
    path: string;
    error: string;
    mode?: undefined;
    bytesWritten?: undefined;
} | {
    ok: boolean;
    path: string;
    mode: "overwrite" | "create" | "append";
    bytesWritten: number;
    error?: undefined;
}> & {
    execute: (args: {
        mode: "overwrite" | "create" | "append";
        content: string;
        path: string;
    }, options: import("ai").ToolExecutionOptions) => PromiseLike<{
        ok: boolean;
        path: string;
        error: string;
        mode?: undefined;
        bytesWritten?: undefined;
    } | {
        ok: boolean;
        path: string;
        mode: "overwrite" | "create" | "append";
        bytesWritten: number;
        error?: undefined;
    }>;
};
//# sourceMappingURL=write-workspace-file.d.ts.map