import type { SettingsFilePrompt, AnswersHash, AnswersData } from "../types/settings";
import Prompt from './prompt';
interface PrompterOptions {
    /**
     * Use all default answers
     */
    default: boolean;
    /**
     * prompt hidden prompts to users
     */
    showHiddenPrompts: boolean;
}
export default class Prompter<TAnswers = AnswersHash> {
    opts: PrompterOptions;
    answers: TAnswers;
    prompts: Prompt[];
    answered: number;
    constructor(prompts: SettingsFilePrompt[], opts?: Partial<PrompterOptions>);
    needsAnswers(): boolean;
    hasPrompts(): boolean;
    getPrompt(name: string): Prompt;
    setAnswers(answers: Partial<TAnswers>): TAnswers;
    setAnswer(name: string, answer: AnswersData): void;
    _getPromptsThatNeedAnswers(): Prompt[];
    hasAnswerToPrompt(promptOrName: any, answers?: TAnswers): boolean;
    getAnswers(): Promise<TAnswers>;
}
export {};
