import type { Choice, ICommandResult, ILogger, IUserInterface, MessageType } from '../../interfaces';
export declare class CliUserInterface implements IUserInterface {
    private logger;
    constructor(logger: ILogger);
    showMessage(message: string, type?: MessageType): void;
    promptConfirm(_message: string): Promise<boolean>;
    promptSelect<T>(_message: string, _choices: Choice<T>[]): Promise<T>;
    promptInput(_message: string, _validator?: (input: string) => boolean | string): Promise<string>;
    handleCommandResult(result: ICommandResult): Promise<void>;
    private handleSudoRequired;
    private isTestEnvironment;
    private executeSudo;
    private handleConfirmationRequired;
    private handleResult;
    private displayData;
}
//# sourceMappingURL=CliUserInterface.d.ts.map