Skip to content

NodeTerminal.ts

Shared Node.js implementation of Effect’s Terminal service.

NodeTerminal adapts Node’s readline APIs plus the current process stdin and stdout streams into Terminal.Terminal. The service can display output, read a line, stream key input, and read terminal dimensions. make manages readline and TTY raw mode in a scope, while layer provides the default service that ends key input on Ctrl+C or Ctrl+D.

Since v4.0.0



Creates a scoped process-backed Terminal using Node readline, enabling TTY raw mode while in scope and using the supplied predicate to decide when key input should end.

Signature

declare const make: (
shouldQuit?: (input: Terminal.UserInput) => boolean
) => Effect.Effect<Terminal.Terminal, never, Scope.Scope>

Source

Since v4.0.0

Provides the default process-backed Terminal service, ending key input on Ctrl+C or Ctrl+D.

Signature

declare const layer: Layer.Layer<Terminal.Terminal, never, never>

Source

Since v4.0.0