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

Core overview

Added in v0.6.0


Table of contents


main

main

Signature

export declare const main: Program<void>

Added in v0.6.0

model

Capabilities (interface)

Signature

export interface Capabilities {
  /**
   * Executes a command like:
   *
   * ```sh
   * ts-node examples/index.ts
   * ```
   *
   * where `command = ts-node` and `executable = examples/index.ts`
   */
  readonly spawn: (command: string, executable: string) => TaskEither.TaskEither<string, void>
  readonly fileSystem: FileSystem
  readonly logger: Logger
  readonly addFile: (file: File) => (project: ast.Project) => void
}

Added in v0.6.0

EnvironmentWithConfig (interface)

Signature

export interface EnvironmentWithConfig extends Capabilities {
  readonly config: Config.Config
}

Added in v0.6.0

Program (interface)

Signature

export interface Program<A> extends RTE.ReaderTaskEither<Capabilities, string, A> {}

Added in v0.6.0

ProgramWithConfig (interface)

Signature

export interface ProgramWithConfig<A> extends RTE.ReaderTaskEither<EnvironmentWithConfig, string, A> {}

Added in v0.6.0