UNPKG

zod-opts

Version:

node.js CLI option parser / validator using Zod

37 lines (36 loc) 1.45 kB
import type { InternalCommand, InternalOption, InternalPositionalArgument } from "./type"; export interface Candidate { name: string; value: string | string[] | undefined; isNegative: boolean; } export interface PositionalCandidate { name: string; value: string | string[]; } export declare function isNumericValue(str: string): boolean; export declare function findOptionByPrefixedName(options: InternalOption[], prefixedName: string): [InternalOption, boolean] | undefined; export declare function pickPositionalArguments(targets: string[], options: InternalOption[], hasDoubleDash: boolean): { positionalArgs: string[]; shift: number; }; export declare function parsePositionalArguments(args: string[], positionalArgs: InternalPositionalArgument[]): PositionalCandidate[]; export interface Parsed { candidates: Candidate[]; positionalCandidates: PositionalCandidate[]; isHelp: boolean; isVersion: boolean; } export type CommandParsed = Parsed & { commandName: string | undefined; }; export declare function likesOptionArg(arg: string, options: InternalOption[]): boolean; export declare function parseMultipleCommands({ args, commands, }: { args: string[]; commands: InternalCommand[]; }): CommandParsed; export declare function parse({ args, options, positionalArgs, }: { args: string[]; options: InternalOption[]; positionalArgs: InternalPositionalArgument[]; }): Parsed;