import type { AgentConfig, ToolDefinition, ToolSchema } from "../agent/types.js";
import type { EditFileHooks } from "./edit-file.js";
import type { RunCommandHooks } from "./run-command.js";
import type { WriteFileHooks } from "./write-file.js";
export interface CoreToolHooks {
    afterWrite?: WriteFileHooks["afterWrite"];
    afterEdit?: EditFileHooks["afterEdit"];
    afterCommand?: RunCommandHooks["afterCommand"];
}
export declare class ToolRegistry {
    private readonly toolsByName;
    constructor(tools: ToolDefinition[]);
    static createDefault(config: AgentConfig, hooks?: CoreToolHooks): ToolRegistry;
    getToolSchemas(): ToolSchema[];
    getDefinitions(): ToolDefinition[];
    execute(name: string, input: unknown): Promise<string>;
}
//# sourceMappingURL=registry.d.ts.map