API Reference/WorkerClient
interface

WorkerClient

typescript
interface WorkerClient<TMessages, TCapabilities>

Base worker client interface for type-safe messaging.

The availability of certain methods depends on the driver's capabilities:

  • disconnect() / reconnect(): Only available with child_process driver
  • pid: Returns number for child_process, undefined for worker_threads

Properties

capabilities(readonly)

TCapabilities

The driver capabilities for this worker

disconnect

TCapabilities["reconnect"] extends true ? () => Promise<void> : never

Disconnect from worker but keep process alive. Only available when driver supports reconnect capability.

isActive

boolean

Whether the worker process is active

isConnected

boolean

Whether connection to worker is active

pid

number

Process ID of the worker. Returns undefined for worker_threads (they share the parent's PID).

reconnect

TCapabilities["reconnect"] extends true ? () => Promise<void> : never

Reconnect to existing worker. Only available when driver supports reconnect capability.

Methods

close(): Promise<void>

Close the worker gracefully

Returns

Promise<void>
send(type: K, payload: TMessages[K]["payload"]): Promise<TMessages[K] extends { result: R } ? R : void>

Send a message and await response

Parameters

type:K
payload:TMessages[K]["payload"]

Returns

Promise<TMessages[K] extends { result: R } ? R : void>