// Type definitions for prompts 1.1 // Project: https://github.com/terkelg/prompts // Definitions by: Berkay GURSOY // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.1 export = prompts; declare function prompts(questions: prompts.PromptObject | prompts.PromptObject[], options?: prompts.Options): any; declare namespace prompts { // Circular reference from prompts const prompt: any; function inject(obj: any): void; namespace inject { const prototype: { }; } namespace prompts { function autocomplete(args: PromptObject): any; function confirm(args: PromptObject): void; function invisible(args: PromptObject): any; function list(args: PromptObject): any; function multiselect(args: PromptObject): any; function number(args: PromptObject): void; function password(args: PromptObject): any; function select(args: PromptObject): void; function text(args: PromptObject): void; function toggle(args: PromptObject): void; } interface Choice { title: string; value: string; } interface Options { onSubmit: (prompt: PromptObject, answer: any, answers: any[]) => void; onCancel: (prompt: PromptObject, answers: any) => void; } interface PromptObject { type: string | ((prev: any, values: any, prompt: PromptObject) => void); name: string | ((prev: any, values: any, prompt: PromptObject) => void); message?: string | ((prev: any, values: any, prompt: PromptObject) => void); initial?: string; style?: string; format?: ((prev: any, values: any, prompt: PromptObject) => void); validate?: ((prev: any, values: any, prompt: PromptObject) => void); onState?: ((prev: any, values: any, prompt: PromptObject) => void); min?: number; max?: number; float?: boolean; round?: number; increment?: number; seperator?: string; active?: string; inactive?: string; choices?: Choice[]; hint?: string; suggest?: ((prev: any, values: any, prompt: PromptObject) => void); limit?: number; } }