UNPKG

1.5 kBTypeScriptView Raw
1import { Arg } from './args';
2import { defaultFlags } from './flags';
3import { InputFlags } from '.';
4export declare type DefaultFlags = {
5 [P in keyof typeof defaultFlags]: typeof defaultFlags[P]['value'];
6};
7export declare type OutputArgs = {
8 [k: string]: any;
9};
10export declare type OutputFlags<T extends InputFlags | undefined> = {
11 [P in keyof T]: T[P]['value'];
12} & DefaultFlags;
13export declare type ParserOutput<T extends InputFlags | undefined> = {
14 flags: OutputFlags<T>;
15 args: {
16 [k: string]: any;
17 };
18 argv: string[];
19 raw: ParsingToken[];
20};
21export declare type ArgToken = {
22 type: 'arg';
23 input: string;
24};
25export declare type FlagToken = {
26 type: 'flag';
27 flag: string;
28 input: string;
29};
30export declare type ParsingToken = ArgToken | FlagToken;
31export declare type ParserInput = {
32 argv: string[];
33 flags: InputFlags;
34 args: Arg<any>[];
35 strict: boolean;
36 parseContext: {
37 [k: string]: any;
38 };
39};
40export declare class Parser {
41 readonly input: ParserInput;
42 private argv;
43 private raw;
44 private booleanFlags;
45 constructor(input: ParserInput);
46 parse(): {
47 args: OutputArgs;
48 argv: any[];
49 flags: any;
50 raw: ParsingToken[];
51 };
52 private _args(argv);
53 private _flags();
54 private _argv();
55 private _debugOutput(args, flags, argv);
56 private _debugInput();
57 private readonly _argTokens;
58 private readonly _flagTokens;
59 private _setNames();
60}