Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions typings/commander-tests.ts
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,12 @@ function collect(val: string, memo: string[]) {
memo.push(val);
return memo;
}
/*
Comment thread
shadowspawn marked this conversation as resolved.
Outdated
* Collector without return all so work
Comment thread
UrielCh marked this conversation as resolved.
Outdated
*/
function collect2(val: string, memo: string[]) {
memo.push(val);
}

function increaseVerbosity(v: any, total: number) {
return total + 1;
Expand All @@ -51,6 +57,7 @@ program
.option('-l, --list <items>', 'A list', list)
.option('-o, --optional [value]', 'An optional value')
.option('-c, --collect [value]', 'A repeatable value', collect, [])
.option('--collect2 [value]', 'A repeatable value void return', collect2, [])
.option('-v, --verbose', 'A value that can be increased', increaseVerbosity, 0)
.parse(process.argv);

Expand Down
6 changes: 4 additions & 2 deletions typings/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -165,12 +165,14 @@ declare namespace commander {
*
* @param {string} flags
* @param {string} [description]
* @param {((arg1: any, arg2: any) => void) | RegExp} [fn] function or default
* @param {((value: string, previous: any) => void) | RegExp} [fn] function or default
Comment thread
UrielCh marked this conversation as resolved.
Outdated
* @param {*} [defaultValue]
* @returns {Command} for chaining
*/
option(flags: string, description?: string, fn?: ((arg1: any, arg2: any) => void) | RegExp, defaultValue?: any): Command;
option(flags: string, description?: string, defaultValue?: any): Command;
Comment thread
UrielCh marked this conversation as resolved.
Outdated
option(flags: string, description: string, regexp: RegExp, defaultValue?: any): Command;
option<T>(flags: string, description: string, fn: (value: string, previous: T) => (T | void), defaultValue?: T): Command;
option<T>(flags: string, description: string, fn: (value: string, previous: T) => void, defaultValue: T): Command;
Comment thread
shadowspawn marked this conversation as resolved.
Outdated

/**
* Define a required option, which must have a value after parsing. This usually means
Expand Down