import * as readline from "readline";
export interface PromptChoice {
    name: string;
    value: string;
}
export declare class Prompt {
    protected rl: readline.Interface;
    constructor();
    close(): void;
    private ensureCookedMode;
    input(message: string, defaultValue?: string, validate?: (input: string) => string | boolean): Promise<string>;
    number(message: string, defaultValue?: number, validate?: (input: number | undefined) => string | boolean): Promise<number>;
    confirm(message: string, defaultValue?: boolean): Promise<boolean>;
    list(message: string, choices: PromptChoice[]): Promise<string>;
}
export declare const createPrompt: <T>(callback: (prompt: Prompt) => Promise<T>) => Promise<T>;
//# sourceMappingURL=prompts.d.ts.map