import { type CommandOutputSink } from "./builtins/shellCommandRunner.js";
export type JsonValue = string | number | boolean | null | JsonValue[] | {
    [key: string]: JsonValue;
};
export type JsonObject = {
    [key: string]: JsonValue;
};
export interface ACodeBuiltInTool {
    kind: "builtin";
    toolName: string;
    exposedName: string;
    description: string;
    inputSchema: JsonObject;
    execute(args: JsonObject, context?: ACodeBuiltInToolExecutionContext): Promise<unknown>;
}
export interface ACodeBuiltInToolExecutionContext {
    readonly onOutput?: CommandOutputSink;
}
export declare function createBuiltInFileTools(workingDirectory: string): ACodeBuiltInTool[];
//# sourceMappingURL=built-in-file-tools.d.ts.map