Skip to content

gunshi / default / resolveArgs

Function: resolveArgs()

ts
function resolveArgs<A>(
   args, 
   tokens, 
   resolveArgs?): object;

Resolve command line arguments.

Type Parameters

Type ParameterDescription
A extends ArgsArguments, which is an object that defines the command line arguments.

Parameters

ParameterTypeDescription
argsAAn arguments that contains arguments schema.
tokensArgToken[]An array of tokens.
resolveArgs?ResolveArgsAn arguments that contains ResolveArgs | resolve arguments.

Returns

object

An object that contains the values of the arguments, positional arguments, rest arguments, AggregateError | validation errors, and explicit provision status.

error

ts
error: undefined | AggregateError;

explicit

ts
explicit: ArgExplicitlyProvided<A>;

positionals

ts
positionals: string[];

rest

ts
rest: string[];

values

ts
values: ArgValues<A>;

Example

typescript
// passed tokens: --port 3000

const { values, explicit } = resolveArgs({
  port: {
    type: 'number',
    default: 8080
  },
  host: {
    type: 'string',
    default: 'localhost'
  }
}, parsedTokens)

values.port // 3000
values.host // 'localhost'

explicit.port // true (explicitly provided)
explicit.host // false (not provided, fallback to default)

Released under the MIT License.