///
import Base from 'inquirer/lib/prompts/base.js';
import Choices from 'inquirer/lib/objects/choices.js';
import Paginator from 'inquirer/lib/utils/paginator.js';
import inquirer, { Answers, Question } from 'inquirer';
import { Interface as ReadLineInterface } from 'readline';
declare class AwfulAutocompletePrompt extends Base {
currentChoices: Choices;
firstRender: boolean;
selected: number;
initialValue: Question;
paginator: Paginator;
nbChoices: number;
answer?: string;
answerName?: string;
shortAnswer?: string;
searchedOnce?: boolean;
searching?: boolean;
lastSearchTerm?: string;
done?: Function;
opt: inquirer.prompts.PromptOptions & {
source: (answers: Answers, searchTerm?: string) => string[];
}>;
constructor(questions: Array, rl: ReadLineInterface, answers: Answers);
_run(cb: Function): this;
/**
* Render the prompt to screen
* @return {undefined}
*/
render(error?: string): void;
/**
* When user press `enter` key
*/
onSubmit(line: string): void;
onSubmitAfterValidation(line: string): void;
search(searchTerm?: string): Promise;
ensureSelectedInRange(): void;
/**
* When user type
*/
onKeypress(e: {
key: {
name?: string;
ctrl?: boolean;
};
value: string;
}): void;
}
export default AwfulAutocompletePrompt;