UNPKG

2.29 kBTypeScriptView Raw
1// Type definitions for prompts 1.1
2// Project: https://github.com/terkelg/prompts
3// Definitions by: Berkay GURSOY <https://github.com/Berkays>
4// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
5// TypeScript Version: 2.1
6
7export = prompts;
8
9declare function prompts(questions: prompts.PromptObject | prompts.PromptObject[], options?: prompts.Options): any;
10
11declare namespace prompts {
12 // Circular reference from prompts
13 const prompt: any;
14
15 function inject(obj: any): void;
16
17 namespace inject {
18 const prototype: {
19 };
20 }
21
22 namespace prompts {
23 function autocomplete(args: PromptObject): any;
24
25 function confirm(args: PromptObject): void;
26
27 function invisible(args: PromptObject): any;
28
29 function list(args: PromptObject): any;
30
31 function multiselect(args: PromptObject): any;
32
33 function number(args: PromptObject): void;
34
35 function password(args: PromptObject): any;
36
37 function select(args: PromptObject): void;
38
39 function text(args: PromptObject): void;
40
41 function toggle(args: PromptObject): void;
42 }
43
44 interface Choice {
45 title: string;
46 value: string;
47 }
48
49 interface Options {
50 onSubmit: (prompt: PromptObject, answer: any, answers: any[]) => void;
51 onCancel: (prompt: PromptObject, answers: any) => void;
52 }
53
54 interface PromptObject {
55 type: string | ((prev: any, values: any, prompt: PromptObject) => void);
56 name: string | ((prev: any, values: any, prompt: PromptObject) => void);
57 message?: string | ((prev: any, values: any, prompt: PromptObject) => void);
58 initial?: string;
59 style?: string;
60 format?: ((prev: any, values: any, prompt: PromptObject) => void);
61 validate?: ((prev: any, values: any, prompt: PromptObject) => void);
62 onState?: ((prev: any, values: any, prompt: PromptObject) => void);
63 min?: number;
64 max?: number;
65 float?: boolean;
66 round?: number;
67 increment?: number;
68 seperator?: string;
69 active?: string;
70 inactive?: string;
71 choices?: Choice[];
72 hint?: string;
73 suggest?: ((prev: any, values: any, prompt: PromptObject) => void);
74 limit?: number;
75 }
76}
77
\No newline at end of file