| path | string | "/" | WebSocket upgrade path. Must begin with "/". |
| port | number | 8080 | Listener port when server is omitted (0-65535). |
| server | http.Server | null | Existing Node.js HTTP/HTTPS server upgrade attachment. |
| maxPayloadBytes | number | 1,048,576 (1MB) | Maximum incoming frame size passed to ws. |
| maxConnections | number | 10,000 | Admission limit. Excess returns HTTP 503. |
| rateLimitPerSec | number | 100 | Sliding token-bucket per socket ID. |
| maxQueueMessages | number | 1,000 | Maximum pending messages per outbound connection buffer. |
| maxQueueBytes | number | 4,194,304 (4MB) | Maximum pending bytes per outbound buffer. |
| overflowPolicy | OverflowPolicy | "reject" | "reject" | "drop-oldest" | "drop-newest" | "disconnect" |
| heartbeatIntervalMs | number | 30,000 | Periodic ping sweep interval. |
| heartbeatTimeoutMs | number | 5,000 | Pong response deadline before termination. |
| authTimeoutMs | number | 5,000 | Authenticator deadline (returns HTTP 408 on timeout). |
| shutdownTimeoutMs | number | 10,000 | Drain deadline before force kill during close. |