import { ParsingInto, ArgParser } from './argparser'; import { PrintHelp, ProvidesHelp, Versioned, Named, Descriptive, Aliased } from './helpdoc'; import { Runner } from './runner'; declare type ArgTypes = Record & Partial>; declare type HandlerFunc = (args: Output) => any; declare type CommandConfig> = { args: Arguments; version?: string; name: string; description?: string; handler: Handler; aliases?: string[]; }; declare type Output = { [key in keyof Args]: ParsingInto; }; /** * A command line utility. * * A combination of multiple flags, options and arguments * with a common name and a handler that expects them as input. */ export declare function command>(config: CommandConfig): ArgParser> & PrintHelp & ProvidesHelp & Named & Runner, ReturnType> & Partial; export {};