NodeSocket.ts
NodeSocket.ts overview
Section titled “NodeSocket.ts overview”Node.js socket constructors and layers for Effect sockets.
This module re-exports the shared Node socket support for TCP connections,
Unix domain socket connections, and Node Duplex streams. It also provides
WebSocket constructor layers: one that uses globalThis.WebSocket when
present and falls back to ws, one that always uses ws, and one that
creates a Socket.Socket layer for a WebSocket URL.
Since v4.0.0
Exports Grouped by Category
Section titled “Exports Grouped by Category”layers
Section titled “layers”layerWebSocket
Section titled “layerWebSocket”Creates a Socket.Socket layer for a WebSocket URL using the Node WebSocket
constructor layer, honoring protocol, open-timeout, and close-code error
options.
Signature
declare const layerWebSocket: ( url: string | Effect.Effect<string>, options?: | { readonly closeCodeIsError?: ((code: number) => boolean) | undefined readonly openTimeout?: Duration.Input | undefined readonly protocols?: string | Array<string> | undefined } | undefined) => Layer.Layer<Socket.Socket, never, never>Since v4.0.0
layerWebSocketConstructor
Section titled “layerWebSocketConstructor”Provides a Socket.WebSocketConstructor, using globalThis.WebSocket when
available and falling back to the ws package otherwise.
Signature
declare const layerWebSocketConstructor: Layer.Layer<Socket.WebSocketConstructor, never, never>Since v4.0.0
layerWebSocketConstructorWS
Section titled “layerWebSocketConstructorWS”Provides a Socket.WebSocketConstructor backed explicitly by the ws
package.
Signature
declare const layerWebSocketConstructorWS: Layer.Layer<Socket.WebSocketConstructor, never, never>Since v4.0.0
“@effect/platform-node-shared/NodeSocket” (namespace export)
Section titled ““@effect/platform-node-shared/NodeSocket” (namespace export)”Re-exports all named exports from the “@effect/platform-node-shared/NodeSocket” module.
Signature
export * from "@effect/platform-node-shared/NodeSocket"Since v4.0.0