import { CLI } from "./index"; export interface FlagOption { alias?: string; type?: CliFlagTypes; help?: string; } export interface FlagWithValues { name?: string; type?: CliFlagTypes; values?: any[]; help?: string; } /** * As given by the user, eg: * * { verbose: {alias: 'v', count: true } } */ export interface FlagOptions { [flagname: string]: FlagOption; } export interface Flags { [flagname: string]: FlagWithValues; help?: boolean; version?: boolean; } export interface FlagsWithValues extends FlagOption { values: string[]; } export declare enum CliFlagTypes { Array, String, Boolean, Number, Count, } export interface CliInputAndFlags { input: string[]; flags: Array; } export interface FlagsOutput extends CLI { command: string; input: string[]; rawFlags: Array; flagValues: FlagWithValues; flags: Flags; trailing: string; } /** * Accept either string or array input */ export default function parse(input: string | string[], opts?: FlagOptions): FlagsOutput;