import type { CommandContext } from '../../../app/command-context.js';
import type { ScanToolsOptions } from '../../tools/shared/scan-tools.js';
import type { ToolInfo } from '../../tools/shared/types.js';
export interface ToolDetail extends ToolInfo {
    description: string | null;
    argumentHint: string | null;
    allowedTools: string | null;
    userInvocable: boolean;
}
export interface InfoToolDependencies {
    scanTools: (options: ScanToolsOptions) => Promise<ToolInfo[]>;
    resolveScopeRoot: (scope: 'project' | 'user', cwd: string, home: string) => Promise<string>;
    resolveAssetsRoot: () => Promise<string>;
    getToolDetail: (tool: ToolInfo, scopeRoot: string) => Promise<Omit<ToolDetail, keyof ToolInfo>>;
}
export interface InfoToolResult {
    found: boolean;
    tool: ToolDetail | null;
}
export declare function runInfoTool(context: CommandContext, name: string, dependencies: InfoToolDependencies): Promise<InfoToolResult>;
//# sourceMappingURL=info-tool.d.ts.map