@alexaegis/cli-tools
Version:
Common yargs setup
23 lines • 837 B
TypeScript
import { PackageJson } from '@alexaegis/workspace-tools';
import { Argv } from 'yargs';
export type YargsMutator<T, R> = (yargs: Argv<T>) => Argv<T & R>;
export declare class YargsBuilder<T> {
private mutators;
static empty(): YargsBuilder<object>;
/**
* Creates a YargsBuilder with some default options:
* - enables help
* - adds metadata found in packageJson for
* - version
* - epilogue showing the repository url
*
* It does not add any options
*/
static withDefaults<T extends PackageJson>(packageJson?: T): YargsBuilder<object>;
add<R>(mutator: YargsMutator<T, R>): YargsBuilder<T & R>;
/***
* usage: pass
*/
build(args?: string | readonly string[] | undefined, cwd?: string | undefined): Argv<T>;
}
//# sourceMappingURL=yargs-builder.class.d.ts.map