Skip to main content Link Search Menu Expand Document (external link)

CliApp overview

Added in v1.0.0


Table of contents


constructors

make

Signature

export declare const make: <A>(config: CliApp.ConstructorArgs<A>) => CliApp<A>

Added in v1.0.0

execution

run

Signature

export declare const run: {
  <R, E, A>(
    args: ReadonlyArray<string>,
    execute: (a: A) => Effect<void, E, R>
  ): (self: CliApp<A>) => Effect<void | E, CliApp.Environment | R, ValidationError>
  <R, E, A>(
    self: CliApp<A>,
    args: ReadonlyArray<string>,
    execute: (a: A) => Effect<void, E, R>
  ): Effect<void | E, CliApp.Environment | R, ValidationError>
}

Added in v1.0.0

models

CliApp (interface)

A CliApp<A> is a complete description of a command-line application.

Signature

export interface CliApp<A> extends Pipeable {
  readonly name: string
  readonly version: string
  readonly executable: string
  readonly command: Command<A>
  readonly summary: Span
  readonly footer: HelpDoc
}

Added in v1.0.0

utils

CliApp (namespace)

Added in v1.0.0

ConstructorArgs (interface)

Signature

export interface ConstructorArgs<A> {
  readonly name: string
  readonly version: string
  readonly command: Command<A>
  readonly executable?: string | undefined
  readonly summary?: Span | undefined
  readonly footer?: HelpDoc | undefined
}

Added in v1.0.0

Environment (type alias)

Signature

export type Environment = FileSystem | Path | Terminal

Added in v1.0.0