UNPKG

1.1 kBTypeScriptView Raw
1import { CLI } from "./index";
2export interface FlagOption {
3 alias?: string;
4 type?: CliFlagTypes;
5 help?: string;
6}
7export interface FlagWithValues {
8 name?: string;
9 type?: CliFlagTypes;
10 values?: any[];
11 help?: string;
12}
13/**
14 * As given by the user, eg:
15 *
16 * { verbose: {alias: 'v', count: true } }
17 */
18export interface FlagOptions {
19 [flagname: string]: FlagOption;
20}
21export interface Flags {
22 [flagname: string]: FlagWithValues;
23 help?: boolean;
24 version?: boolean;
25}
26export interface FlagsWithValues extends FlagOption {
27 values: string[];
28}
29export declare enum CliFlagTypes {
30 Array,
31 String,
32 Boolean,
33 Number,
34 Count,
35}
36export interface CliInputAndFlags {
37 input: string[];
38 flags: Array<string[]>;
39}
40export interface FlagsOutput extends CLI {
41 command: string;
42 input: string[];
43 rawFlags: Array<string[]>;
44 flagValues: FlagWithValues;
45 flags: Flags;
46 trailing: string;
47}
48/**
49 * Accept either string or array input
50 */
51export default function parse(input: string | string[], opts?: FlagOptions): FlagsOutput;