import type { Tool, ToolPermissionCategory, ToolRiskLevel } from '../types';
export interface ToolRegistryEntry {
    tool: Tool;
    toolset: string;
    source: 'builtin' | 'runtime';
    enabledByDefault: boolean;
    /** Coarse risk used by the dashboard, permission UI, and workflow runner. */
    riskLevel: ToolRiskLevel;
    /** Coarse permission category for grouping. */
    permissionCategory: ToolPermissionCategory;
    /** True when the tool implements a meaningful dry-run mode. */
    canDryRun: boolean;
}
export declare class ToolRegistry {
    private entries;
    register(entry: ToolRegistryEntry): void;
    get(name: string): ToolRegistryEntry | undefined;
    listEntries(): ToolRegistryEntry[];
    listTools(): Tool[];
    listToolsets(): string[];
    listToolsForToolset(toolset: string): Tool[];
}
export declare function createBuiltinToolRegistry(): ToolRegistry;
export declare function createToolRegistry(projectDir?: string): ToolRegistry;
export declare const BUILTIN_TOOL_ENTRIES: ToolRegistryEntry[];
//# sourceMappingURL=registry.d.ts.map