View file File name : yargs-parser-types.d.ts Content :import type { Dictionary, ValueOf } from './common-types.js'; declare type KeyOf<T> = { [K in keyof T]: string extends K ? never : number extends K ? never : K; } extends { [_ in keyof T]: infer U; } ? U : never; export declare type ArgsInput = string | any[]; export declare type ArgsOutput = (string | number)[]; export interface Arguments { _: ArgsOutput; '--'?: ArgsOutput; [argName: string]: any; } export interface DetailedArguments { argv: Arguments; error: Error | null; aliases: Dictionary<string[]>; newAliases: Dictionary<boolean>; defaulted: Dictionary<boolean>; configuration: Configuration; } export interface Configuration { 'boolean-negation': boolean; 'camel-case-expansion': boolean; 'combine-arrays': boolean; 'dot-notation': boolean; 'duplicate-arguments-array': boolean; 'flatten-duplicate-arrays': boolean; 'greedy-arrays': boolean; 'halt-at-non-option': boolean; 'nargs-eats-options': boolean; 'negation-prefix': string; 'parse-positional-numbers': boolean; 'parse-numbers': boolean; 'populate--': boolean; 'set-placeholder-key': boolean; 'short-option-groups': boolean; 'strip-aliased': boolean; 'strip-dashed': boolean; 'unknown-options-as-args': boolean; } export declare type ArrayOption = string | { key: string; boolean?: boolean; string?: boolean; number?: boolean; integer?: boolean; }; export declare type CoerceCallback = (arg: any) => any; export declare type ConfigCallback = (configPath: string) => { [key: string]: any; } | Error; export interface Options { alias: Dictionary<string | string[]>; array: ArrayOption | ArrayOption[]; boolean: string | string[]; config: string | string[] | Dictionary<boolean | ConfigCallback>; configObjects: Dictionary<any>[]; configuration: Partial<Configuration>; coerce: Dictionary<CoerceCallback>; count: string | string[]; default: Dictionary<any>; envPrefix?: string; narg: Dictionary<number>; normalize: string | string[]; string: string | string[]; number: string | string[]; __: (format: any, ...param: any[]) => string; key: Dictionary<any>; } export interface PlatformShim { cwd: Function; format: Function; normalize: Function; require: Function; resolve: Function; env: Function; } export declare type OptionsDefault = ValueOf<Pick<Required<Options>, 'default'>>; export interface Parser { (args: ArgsInput, opts?: Partial<Options>): Arguments; detailed(args: ArgsInput, opts?: Partial<Options>): DetailedArguments; camelCase(str: string): string; decamelize(str: string, joinString?: string): string; looksLikeNumber(x: null | undefined | number | string): boolean; } export declare type StringFlag = Dictionary<string[]>; export declare type BooleanFlag = Dictionary<boolean>; export declare type NumberFlag = Dictionary<number>; export declare type ConfigsFlag = Dictionary<string | string[] | boolean | ConfigCallback>; export declare type CoercionsFlag = Dictionary<CoerceCallback>; export declare type KeysFlag = string[]; export interface Flags { aliases: StringFlag; arrays: BooleanFlag; bools: BooleanFlag; strings: BooleanFlag; numbers: BooleanFlag; counts: BooleanFlag; normalize: BooleanFlag; configs: ConfigsFlag; nargs: NumberFlag; coercions: CoercionsFlag; keys: KeysFlag; } export declare type Flag = ValueOf<Omit<Flags, 'keys'>>; export declare type FlagValue = ValueOf<Flag>; export declare type FlagsKey = KeyOf<Omit<Flags, 'keys'>>; export declare type ArrayFlagsKey = Extract<FlagsKey, 'bools' | 'strings' | 'numbers'>; export interface DefaultValuesForType { boolean: boolean; string: string; number: undefined; array: any[]; } export declare type DefaultValuesForTypeKey = KeyOf<DefaultValuesForType>; export {};