Skip to main content
Using Deno in production at your company? Earn free Deno merch.
Give us feedback


The next-gen web framework.
Extremely Popular
Go to Latest
function parse
import { parse } from "";

Take a set of command line arguments, optionally with a set of options, and return an object representing the flags found in the passed arguments.

By default, any arguments starting with - or -- are considered boolean flags. If the argument name is followed by an equal sign (=) it is considered a key-value pair. Any arguments which could not be parsed are available in the _ property of the returned object.

By default, the flags module tries to determine the type of all arguments automatically and the return type of the parse method will have an index signature with any as value ({ [x: string]: any }).

If the string, boolean or collect option is set, the return value of the parse method will be fully typed and the index signature of the return type will change to { [x: string]: unknown }.

Any arguments after '--' will not be parsed and will end up in parsedArgs._.

Numeric-looking arguments will be returned as numbers unless options.string or options.boolean is set for that argument name.


Example 1

import { parse } from "";
const parsedArgs = parse(Deno.args);

Example 2

import { parse } from "";
const parsedArgs = parse(["--foo", "--bar=baz", "./quux.txt"]);
// parsedArgs: { foo: true, bar: "baz", _: ["./quux.txt"] }

Type Parameters

TDoubleDash extends boolean | undefined = undefined
TBooleans extends BooleanType = undefined
TStrings extends StringType = undefined
TCollectable extends Collectable = undefined
TNegatable extends Negatable = undefined
TDefaults extends Record<string, unknown> | undefined = undefined
TAliases extends Aliases<TAliasArgNames, TAliasNames> | undefined = undefined
TAliasArgNames extends string = string
TAliasNames extends string = string


args: string[]
unnamed 1: ParseOptions<TBooleans, TStrings, TCollectable, TNegatable, TDefaults, TAliases, TDoubleDash> = [UNSUPPORTED]