///
///
import * as child_process from 'child_process';
import { Deferred } from 'everyday-utils';
import type { exec as execType, execSync as execSyncType } from 'get-pty-output';
import type { Key } from 'readline';
export interface CharKey {
char: string;
key: Key;
}
export declare const execCapture: typeof execType;
export declare const execCaptureSync: typeof execSyncType;
export declare function exists(pathname: string): Promise;
export declare function discoverFileWithSuffixes(pathname: string, suffixes: string[]): Promise;
export declare function keypressSync(msg: string): string;
export declare function keypress(msg: string, cb: (char: string, key: Key) => void): Promise<() => void>;
export declare function singleKeypress(msg: string): Promise>;
export declare function exec(cmd: string, args?: string[], options?: child_process.SpawnOptions): Promise;
export declare function waitForFileExists(pathname: string, timeout?: number): Promise | undefined>;