/**
 * InstallToolUseCase
 *
 * Executes the installation of a tool with live output streaming support.
 * Returns detailed status information about the installation result.
 */
import type { ToolInstallationStatus } from '../../../domain/generated/output.js';
import type { IToolInstallerService } from '../../ports/output/services/index.js';
export declare class InstallToolUseCase {
    private readonly toolInstallerService;
    constructor(toolInstallerService: IToolInstallerService);
    /**
     * Executes installation of a tool with optional output streaming.
     *
     * @param toolName - Name of the tool to install
     * @param onOutput - Optional callback for streaming installation output
     * @returns Status information about the installation result
     */
    execute(toolName: string, onOutput?: (data: string) => void): Promise<ToolInstallationStatus>;
}
//# sourceMappingURL=install-tool.use-case.d.ts.map