Skip to content

Args

42 exports Added in v1.0.0 Source

Combinators

atLeast

Added in v1.0.0 Source

Signature

declare const atLeast: {
  (times: 0): <A>(self: Args<A>) => Args<Array<A>>;
  (times: number): <A>(self: Args<A>) => Args<[A, ...Array<A>]>;
  <A>(self: Args<A>, times: 0): Args<Array<A>>;
  <A>(self: Args<A>, times: number): Args<[A, ...Array<A>]>;
};

atMost

Added in v1.0.0 Source

Signature

declare const atMost: {
  (times: number): <A>(self: Args<A>) => Args<Array<A>>;
  <A>(self: Args<A>, times: number): Args<Array<A>>;
};

between

Added in v1.0.0 Source

Signature

declare const between: {
  (min: 0, max: number): <A>(self: Args<A>) => Args<Array<A>>;
  (min: number, max: number): <A>(self: Args<A>) => Args<[A, ...Array<A>]>;
  <A>(self: Args<A>, min: 0, max: number): Args<Array<A>>;
  <A>(self: Args<A>, min: number, max: number): Args<[A, ...Array<A>]>;
};

getHelp

Added in v1.0.0 Source

Signature

declare const getHelp: <A>(self: Args<A>) => HelpDoc;

Signature

declare const getIdentifier: <A>(self: Args<A>) => Option<string>;

getMaxSize

Added in v1.0.0 Source

Signature

declare const getMaxSize: <A>(self: Args<A>) => number;

getMinSize

Added in v1.0.0 Source

Signature

declare const getMinSize: <A>(self: Args<A>) => number;

getUsage

Added in v1.0.0 Source

Signature

declare const getUsage: <A>(self: Args<A>) => Usage;

optional

Added in v1.0.0 Source

Signature

declare const optional: <A>(self: Args<A>) => Args<Option<A>>;

repeated

Added in v1.0.0 Source

Signature

declare const repeated: <A>(self: Args<A>) => Args<Array<A>>;

validate

Added in v1.0.0 Source

Signature

declare const validate: {
  (args: readonly Array<string>, config: CliConfig): <A>(self: Args<A>) => Effect<[Array<string>, A], ValidationError, any>;
  <A>(self: Args<A>, args: readonly Array<string>, config: CliConfig): Effect<[Array<string>, A], ValidationError, any>;
}

withDefault

Added in v1.0.0 Source

Signature

declare const withDefault: {
  <B>(fallback: B): <A>(self: Args<A>) => Args<B | A>;
  <A, B>(self: Args<A>, fallback: B): Args<A | B>;
};

Signature

declare const withDescription: {
  (description: string): <A>(self: Args<A>) => Args<A>;
  <A>(self: Args<A>, description: string): Args<A>;
};

Signature

declare const withFallbackConfig: {
  <B>(config: Config<B>): <A>(self: Args<A>) => Args<B | A>;
  <A, B>(self: Args<A>, config: Config<B>): Args<A | B>;
};

withSchema

Added in v1.0.0 Source

Signature

declare const withSchema: {
  <A, I, B>(schema: any): (self: Args<A>) => Args<B>;
  <A, I, B>(self: Args<A>, schema: any): Args<B>;
};

wizard

Added in v1.0.0 Source

Signature

declare const wizard: {
  (config: CliConfig): <A>(self: Args<A>) => Effect<Array<string>, any, any>;
  <A>(self: Args<A>, config: CliConfig): Effect<Array<string>, any, any>;
};

Constructors

all

Added in v1.0.0 Source

Signature

declare const all: <Arg extends Iterable<Args<any>> | Record<string, Args<any>>>(
  arg: Arg,
) => All.Return<Arg>;

boolean

Added in v1.0.0 Source

Creates a boolean argument.

Can optionally provide a custom argument name (defaults to "boolean").

Signature

declare const boolean: (options?: Args.BaseArgsConfig) => Args<boolean>;

choice

Added in v1.0.0 Source

Creates a choice argument.

Can optionally provide a custom argument name (defaults to "choice").

Signature

declare const choice: <A>(
  choices: ReadonlyArray<[string, A]>,
  config?: Args.BaseArgsConfig,
) => Args<A>;

date

Added in v1.0.0 Source

Creates a date argument.

Can optionally provide a custom argument name (defaults to "date").

Signature

declare const date: (config?: Args.BaseArgsConfig) => Args<globalThis.Date>;

directory

Added in v1.0.0 Source

Creates a directory argument.

Can optionally provide a custom argument name (defaults to "directory").

Signature

declare const directory: (config?: Args.PathArgsConfig) => Args<string>;

file

Added in v1.0.0 Source

Creates a file argument.

Can optionally provide a custom argument name (defaults to "file").

Signature

declare const file: (config?: Args.PathArgsConfig) => Args<string>;

fileContent

Added in v1.0.0 Source

Creates a file argument that reads its contents.

Can optionally provide a custom argument name (defaults to "file").

Signature

declare const fileContent: (
  config?: Args.BaseArgsConfig,
) => Args<readonly [path: string, content: Uint8Array]>;

fileParse

Added in v1.0.0 Source

Creates a file argument that reads and parses its contents.

Can optionally provide a custom argument name (defaults to "file").

Signature

declare const fileParse: (config?: Args.FormatArgsConfig) => Args<unknown>;

fileSchema

Added in v1.0.0 Source

Creates a file argument that reads, parses and validates its contents.

Can optionally provide a custom argument name (defaults to "file").

Signature

declare const fileSchema: <I, A>(
  schema: Schema<A, I, FileSystem | Path | Terminal>,
  config?: Args.FormatArgsConfig,
) => Args<A>;

fileText

Added in v1.0.0 Source

Creates a file argument that reads it's contents.

Can optionally provide a custom argument name (defaults to "file").

Signature

declare const fileText: (
  config?: Args.BaseArgsConfig,
) => Args<readonly [path: string, content: string]>;

float

Added in v1.0.0 Source

Creates a floating point number argument.

Can optionally provide a custom argument name (defaults to "float").

Signature

declare const float: (config?: Args.BaseArgsConfig) => Args<number>;

integer

Added in v1.0.0 Source

Creates an integer argument.

Can optionally provide a custom argument name (defaults to "integer").

Signature

declare const integer: (config?: Args.BaseArgsConfig) => Args<number>;

none

Added in v1.0.0 Source

Creates an empty argument.

Signature

declare const none: Args<void>;

path

Added in v1.0.0 Source

Creates a path argument.

Can optionally provide a custom argument name (defaults to "path").

Signature

declare const path: (config?: Args.PathArgsConfig) => Args<string>;

redacted

Added in v1.0.0 Source

Creates a text argument.

Can optionally provide a custom argument name (defaults to "redacted").

Signature

declare const redacted: (config?: Args.BaseArgsConfig) => Args<Redacted>;

secret

Added in v1.0.0 Source

Creates a text argument.

Can optionally provide a custom argument name (defaults to "secret").

Signature

declare const secret: (config?: Args.BaseArgsConfig) => Args<Secret>;

text

Added in v1.0.0 Source

Creates a text argument.

Can optionally provide a custom argument name (defaults to "text").

Signature

declare const text: (config?: Args.BaseArgsConfig) => Args<string>;

Mapping

map

Added in v1.0.0 Source

Signature

declare const map: {
  <A, B>(f: (a: A) => B): (self: Args<A>) => Args<B>;
  <A, B>(self: Args<A>, f: (a: A) => B): Args<B>;
};

mapEffect

Added in v1.0.0 Source

Signature

declare const mapEffect: {
  <A, B>(f: (a: A) => Effect<B, HelpDoc, any>): (self: Args<A>) => Args<B>;
  <A, B>(self: Args<A>, f: (a: A) => Effect<B, HelpDoc, any>): Args<B>;
};

mapTryCatch

Added in v1.0.0 Source

Signature

declare const mapTryCatch: {
  <A, B>(f: (a: A) => B, onError: (e: unknown) => HelpDoc): (self: Args<A>) => Args<B>;
  <A, B>(self: Args<A>, f: (a: A) => B, onError: (e: unknown) => HelpDoc): Args<B>;
};

Models

Args interface

Added in v1.0.0 Source

Represents arguments that can be passed to a command-line application.

Signature

interface Args<A> extends Variance<A>, Pipeable {}

Other

All

Added in v1.0.0 Source

Args

Added in v1.0.0 Source

Refinements

isArgs

Added in v1.0.0 Source

Signature

declare const isArgs: (u: unknown) => u is Args<unknown>;

Symbols

ArgsTypeId

Added in v1.0.0 Source

Signature

declare const ArgsTypeId: unique symbol;

ArgsTypeId type

Added in v1.0.0 Source

Signature

type ArgsTypeId = typeof ArgsTypeId;