Skip to content
Effect 4.0 is here. One ecosystem. Zero dependencies.

Usage

17 exports Since v1.0.0 Source

Combinators

Signature

declare const alternation: {
(that: Usage): (self: Usage) => Usage;
(self: Usage, that: Usage): Usage;
}
Since v1.0.0

Signature

declare const concat: {
(that: Usage): (self: Usage) => Usage;
(self: Usage, that: Usage): Usage;
}
Since v1.0.0

Signature

declare const getHelp: (self: Usage) => HelpDoc
Since v1.0.0

Signature

declare const optional: (self: Usage) => Usage
Since v1.0.0

Signature

declare const repeated: (self: Usage) => Usage

Constructors

Since v1.0.0

Signature

declare const empty: Usage

Signature

declare const enumerate: {
(config: CliConfig): (self: Usage) => Array<Span>;
(self: Usage, config: CliConfig): Array<Span>;
}
Since v1.0.0

Signature

declare const mixed: Usage
Since v1.0.0

Signature

declare const named: (names: ReadonlyArray<string>, acceptedValues: Option<string>) => Usage

Models

Alternation

interface
Since v1.0.0

Signature

interface Alternation {
readonly _tag: "Alternation";
readonly left: Usage;
readonly right: Usage;
}

Concat

interface
Since v1.0.0

Signature

interface Concat {
readonly _tag: "Concat";
readonly left: Usage;
readonly right: Usage;
}

Empty

interface
Since v1.0.0

Signature

interface Empty {
readonly _tag: "Empty";
}

Mixed

interface
Since v1.0.0

Signature

interface Mixed {
readonly _tag: "Mixed";
}

Named

interface
Since v1.0.0

Signature

interface Named {
readonly _tag: "Named";
readonly acceptedValues: Option<string>;
readonly names: readonly Array<string>;
}

Optional

interface
Since v1.0.0

Signature

interface Optional {
readonly _tag: "Optional";
readonly usage: Usage;
}

Repeated

interface
Since v1.0.0

Signature

interface Repeated {
readonly _tag: "Repeated";
readonly usage: Usage;
}

Usage

type
Since v1.0.0

Signature

type Usage = Empty | Mixed | Named | Optional | Repeated | Alternation | Concat