ventiws 1.0.0-alpha

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,401 @@
1
+ /// <reference types="node" />
2
+ import { createRequire } from "node:module";
3
+ import { Agent, ClientRequest, ClientRequestArgs, IncomingMessage, OutgoingHttpHeaders, Server as Server$1 } from "node:http";
4
+ import { URL } from "node:url";
5
+ import { Server as Server$2 } from "node:https";
6
+ import { Duplex, DuplexOptions } from "node:stream";
7
+ import { EventEmitter } from "node:events";
8
+ import { createConnection } from "node:net";
9
+ import { SecureContextOptions } from "node:tls";
10
+ import { ZlibOptions } from "node:zlib";
11
+ declare namespace ws_d_exports {
12
+ export { AddressInfo, CertMeta, ClientOptions, CloseEvent, Data, ErrorEvent, Event, EventListenerOptions, FinishRequestCallback, MessageEvent, PerMessageDeflateOptions, RawData, Server, ServerOptions, VerifyClientCallbackAsync, VerifyClientCallbackSync, WebSocket$1 as WebSocket, WebSocketEventMap, WebSocketServer$1 as WebSocketServer, createWebSocketStream$1 as createWebSocketStream, WebSocket$1 as default };
13
+ }
14
+ // can not get all overload of BufferConstructor['from'], need to copy all it's first arguments here
15
+ // https://github.com/microsoft/TypeScript/issues/32164
16
+ type BufferLike = string | Buffer | DataView | number | ArrayBufferView | Uint8Array | ArrayBuffer | SharedArrayBuffer | Blob | readonly any[] | readonly number[] | {
17
+ valueOf(): ArrayBuffer;
18
+ } | {
19
+ valueOf(): SharedArrayBuffer;
20
+ } | {
21
+ valueOf(): Uint8Array;
22
+ } | {
23
+ valueOf(): readonly number[];
24
+ } | {
25
+ valueOf(): string;
26
+ } | {
27
+ [Symbol.toPrimitive](hint: string): string;
28
+ };
29
+ // WebSocket socket.
30
+ declare class WebSocket$1 extends EventEmitter {
31
+ /** The connection is not yet open. */
32
+ static readonly CONNECTING: 0;
33
+ /** The connection is open and ready to communicate. */
34
+ static readonly OPEN: 1;
35
+ /** The connection is in the process of closing. */
36
+ static readonly CLOSING: 2;
37
+ /** The connection is closed. */
38
+ static readonly CLOSED: 3;
39
+ binaryType: "nodebuffer" | "arraybuffer" | "fragments";
40
+ readonly bufferedAmount: number;
41
+ readonly extensions: string;
42
+ /** Indicates whether the websocket is paused */
43
+ readonly isPaused: boolean;
44
+ readonly protocol: string;
45
+ /** The current state of the connection */
46
+ readonly readyState: typeof WebSocket$1.CONNECTING | typeof WebSocket$1.OPEN | typeof WebSocket$1.CLOSING | typeof WebSocket$1.CLOSED;
47
+ readonly url: string;
48
+ /** The connection is not yet open. */
49
+ readonly CONNECTING: 0;
50
+ /** The connection is open and ready to communicate. */
51
+ readonly OPEN: 1;
52
+ /** The connection is in the process of closing. */
53
+ readonly CLOSING: 2;
54
+ /** The connection is closed. */
55
+ readonly CLOSED: 3;
56
+ onopen: ((event: WebSocket$1.Event) => void) | null;
57
+ onerror: ((event: WebSocket$1.ErrorEvent) => void) | null;
58
+ onclose: ((event: WebSocket$1.CloseEvent) => void) | null;
59
+ onmessage: ((event: WebSocket$1.MessageEvent) => void) | null;
60
+ constructor(address: null);
61
+ constructor(address: string | URL, options?: WebSocket$1.ClientOptions | ClientRequestArgs);
62
+ constructor(address: string | URL, protocols?: string | string[], options?: WebSocket$1.ClientOptions | ClientRequestArgs);
63
+ close(code?: number, data?: string | Buffer): void;
64
+ ping(data?: any, mask?: boolean, cb?: (err: Error) => void): void;
65
+ pong(data?: any, mask?: boolean, cb?: (err: Error) => void): void;
66
+ // https://github.com/websockets/ws/issues/2076#issuecomment-1250354722
67
+ send(data: BufferLike, cb?: (err?: Error) => void): void;
68
+ send(data: BufferLike, options: {
69
+ mask?: boolean | undefined;
70
+ binary?: boolean | undefined;
71
+ compress?: boolean | undefined;
72
+ fin?: boolean | undefined;
73
+ }, cb?: (err?: Error) => void): void;
74
+ terminate(): void;
75
+ /**
76
+ * Pause the websocket causing it to stop emitting events. Some events can still be
77
+ * emitted after this is called, until all buffered data is consumed. This method
78
+ * is a noop if the ready state is `CONNECTING` or `CLOSED`.
79
+ */
80
+ pause(): void;
81
+ /**
82
+ * Make a paused socket resume emitting events. This method is a noop if the ready
83
+ * state is `CONNECTING` or `CLOSED`.
84
+ */
85
+ resume(): void;
86
+ // HTML5 WebSocket events
87
+ addEventListener<K extends keyof WebSocket$1.WebSocketEventMap>(type: K, listener: ((event: WebSocket$1.WebSocketEventMap[K]) => void) | {
88
+ handleEvent(event: WebSocket$1.WebSocketEventMap[K]): void;
89
+ }, options?: WebSocket$1.EventListenerOptions): void;
90
+ removeEventListener<K extends keyof WebSocket$1.WebSocketEventMap>(type: K, listener: ((event: WebSocket$1.WebSocketEventMap[K]) => void) | {
91
+ handleEvent(event: WebSocket$1.WebSocketEventMap[K]): void;
92
+ }): void;
93
+ // Events
94
+ on(event: "close", listener: (this: WebSocket$1, code: number, reason: Buffer) => void): this;
95
+ on(event: "error", listener: (this: WebSocket$1, error: Error) => void): this;
96
+ on(event: "upgrade", listener: (this: WebSocket$1, request: IncomingMessage) => void): this;
97
+ on(event: "message", listener: (this: WebSocket$1, data: WebSocket$1.RawData, isBinary: boolean) => void): this;
98
+ on(event: "open", listener: (this: WebSocket$1) => void): this;
99
+ on(event: "ping" | "pong", listener: (this: WebSocket$1, data: Buffer) => void): this;
100
+ // Narrowed from @types/ws: this client owns a `net.Socket` rather than an
101
+ // `http.ClientRequest`, so there is no request object to hand a listener. The URL and
102
+ // the status are what a caller needs in order to decide, and `close()` is how it
103
+ // declines. See `docs/compliance-api.md`.
104
+ on(event: "redirect", listener: (this: WebSocket$1, url: string, request: ClientRequest) => void): this;
105
+ on(event: "unexpected-response", listener: (this: WebSocket$1, request: ClientRequest, response: IncomingMessage) => void): this;
106
+ on(event: string | symbol, listener: (this: WebSocket$1, ...args: any[]) => void): this;
107
+ once(event: "close", listener: (this: WebSocket$1, code: number, reason: Buffer) => void): this;
108
+ once(event: "error", listener: (this: WebSocket$1, error: Error) => void): this;
109
+ once(event: "upgrade", listener: (this: WebSocket$1, request: IncomingMessage) => void): this;
110
+ once(event: "message", listener: (this: WebSocket$1, data: WebSocket$1.RawData, isBinary: boolean) => void): this;
111
+ once(event: "open", listener: (this: WebSocket$1) => void): this;
112
+ once(event: "ping" | "pong", listener: (this: WebSocket$1, data: Buffer) => void): this;
113
+ once(event: "redirect", listener: (this: WebSocket$1, url: string, request: ClientRequest) => void): this;
114
+ once(event: "unexpected-response", listener: (this: WebSocket$1, request: ClientRequest, response: IncomingMessage) => void): this;
115
+ once(event: string | symbol, listener: (this: WebSocket$1, ...args: any[]) => void): this;
116
+ off(event: "close", listener: (this: WebSocket$1, code: number, reason: Buffer) => void): this;
117
+ off(event: "error", listener: (this: WebSocket$1, error: Error) => void): this;
118
+ off(event: "upgrade", listener: (this: WebSocket$1, request: IncomingMessage) => void): this;
119
+ off(event: "message", listener: (this: WebSocket$1, data: WebSocket$1.RawData, isBinary: boolean) => void): this;
120
+ off(event: "open", listener: (this: WebSocket$1) => void): this;
121
+ off(event: "ping" | "pong", listener: (this: WebSocket$1, data: Buffer) => void): this;
122
+ off(event: "redirect", listener: (this: WebSocket$1, url: string, request: ClientRequest) => void): this;
123
+ off(event: "unexpected-response", listener: (this: WebSocket$1, request: ClientRequest, response: IncomingMessage) => void): this;
124
+ off(event: string | symbol, listener: (this: WebSocket$1, ...args: any[]) => void): this;
125
+ addListener(event: "close", listener: (code: number, reason: Buffer) => void): this;
126
+ addListener(event: "error", listener: (error: Error) => void): this;
127
+ addListener(event: "upgrade", listener: (request: IncomingMessage) => void): this;
128
+ addListener(event: "message", listener: (data: WebSocket$1.RawData, isBinary: boolean) => void): this;
129
+ addListener(event: "open", listener: () => void): this;
130
+ addListener(event: "ping" | "pong", listener: (data: Buffer) => void): this;
131
+ addListener(event: "redirect", listener: (url: string, request: ClientRequest) => void): this;
132
+ addListener(event: "unexpected-response", listener: (request: ClientRequest, response: IncomingMessage) => void): this;
133
+ addListener(event: string | symbol, listener: (...args: any[]) => void): this;
134
+ removeListener(event: "close", listener: (code: number, reason: Buffer) => void): this;
135
+ removeListener(event: "error", listener: (error: Error) => void): this;
136
+ removeListener(event: "upgrade", listener: (request: IncomingMessage) => void): this;
137
+ removeListener(event: "message", listener: (data: WebSocket$1.RawData, isBinary: boolean) => void): this;
138
+ removeListener(event: "open", listener: () => void): this;
139
+ removeListener(event: "ping" | "pong", listener: (data: Buffer) => void): this;
140
+ removeListener(event: "redirect", listener: (url: string, request: ClientRequest) => void): this;
141
+ removeListener(event: "unexpected-response", listener: (request: ClientRequest, response: IncomingMessage) => void): this;
142
+ removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
143
+ }
144
+ declare const WebSocketAlias: typeof WebSocket$1;
145
+ interface WebSocketAlias extends WebSocket$1 {} // eslint-disable-line @typescript-eslint/no-empty-interface
146
+ declare namespace WebSocket$1 {
147
+ /**
148
+ * Data represents the raw message payload received over the WebSocket.
149
+ */
150
+ type RawData = Buffer | ArrayBuffer | Buffer[];
151
+ /**
152
+ * Data represents the message payload received over the WebSocket.
153
+ */
154
+ type Data = string | Buffer | ArrayBuffer | Buffer[];
155
+ /**
156
+ * CertMeta represents the accepted types for certificate & key data.
157
+ */
158
+ type CertMeta = string | string[] | Buffer | Buffer[];
159
+ /**
160
+ * VerifyClientCallbackSync is a synchronous callback used to inspect the
161
+ * incoming message. The return value (boolean) of the function determines
162
+ * whether or not to accept the handshake.
163
+ */
164
+ type VerifyClientCallbackSync<Request extends IncomingMessage = IncomingMessage> = (info: {
165
+ origin: string;
166
+ secure: boolean;
167
+ req: Request;
168
+ }) => boolean;
169
+ /**
170
+ * VerifyClientCallbackAsync is an asynchronous callback used to inspect the
171
+ * incoming message. The return value (boolean) of the function determines
172
+ * whether or not to accept the handshake.
173
+ */
174
+ type VerifyClientCallbackAsync<Request extends IncomingMessage = IncomingMessage> = (info: {
175
+ origin: string;
176
+ secure: boolean;
177
+ req: Request;
178
+ }, callback: (res: boolean, code?: number, message?: string, headers?: OutgoingHttpHeaders) => void) => void;
179
+ /**
180
+ * FinishRequestCallback is a callback for last minute customization of the
181
+ * headers. If finishRequest is set, then it has the responsibility to call
182
+ * request.end() once it is done setting request headers.
183
+ */
184
+ type FinishRequestCallback = (request: ClientRequest, websocket: WebSocket$1) => void;
185
+ interface ClientOptions extends SecureContextOptions {
186
+ protocol?: string | undefined;
187
+ followRedirects?: boolean | undefined;
188
+ generateMask?(mask: Buffer): void;
189
+ handshakeTimeout?: number | undefined;
190
+ maxRedirects?: number | undefined;
191
+ perMessageDeflate?: boolean | PerMessageDeflateOptions | undefined;
192
+ localAddress?: string | undefined;
193
+ protocolVersion?: number | undefined;
194
+ headers?: {
195
+ [key: string]: string;
196
+ } | undefined;
197
+ origin?: string | undefined;
198
+ agent?: Agent | undefined;
199
+ host?: string | undefined;
200
+ family?: number | undefined;
201
+ checkServerIdentity?(servername: string, cert: CertMeta): boolean;
202
+ rejectUnauthorized?: boolean | undefined;
203
+ allowSynchronousEvents?: boolean | undefined;
204
+ autoPong?: boolean | undefined;
205
+ maxPayload?: number | undefined;
206
+ skipUTF8Validation?: boolean | undefined;
207
+ createConnection?: typeof createConnection | undefined;
208
+ finishRequest?: FinishRequestCallback | undefined;
209
+ }
210
+ interface PerMessageDeflateOptions {
211
+ serverNoContextTakeover?: boolean | undefined;
212
+ clientNoContextTakeover?: boolean | undefined;
213
+ serverMaxWindowBits?: number | undefined;
214
+ clientMaxWindowBits?: number | undefined;
215
+ zlibDeflateOptions?: {
216
+ flush?: number | undefined;
217
+ finishFlush?: number | undefined;
218
+ chunkSize?: number | undefined;
219
+ windowBits?: number | undefined;
220
+ level?: number | undefined;
221
+ memLevel?: number | undefined;
222
+ strategy?: number | undefined;
223
+ dictionary?: Buffer | Buffer[] | DataView | undefined;
224
+ info?: boolean | undefined;
225
+ } | undefined;
226
+ zlibInflateOptions?: ZlibOptions | undefined;
227
+ threshold?: number | undefined;
228
+ concurrencyLimit?: number | undefined;
229
+ }
230
+ interface Event {
231
+ type: string;
232
+ target: WebSocket$1;
233
+ }
234
+ interface ErrorEvent {
235
+ error: any;
236
+ message: string;
237
+ type: string;
238
+ target: WebSocket$1;
239
+ }
240
+ interface CloseEvent {
241
+ wasClean: boolean;
242
+ code: number;
243
+ reason: string;
244
+ type: string;
245
+ target: WebSocket$1;
246
+ }
247
+ interface MessageEvent {
248
+ data: Data;
249
+ type: string;
250
+ target: WebSocket$1;
251
+ }
252
+ interface WebSocketEventMap {
253
+ open: Event;
254
+ error: ErrorEvent;
255
+ close: CloseEvent;
256
+ message: MessageEvent;
257
+ }
258
+ interface EventListenerOptions {
259
+ once?: boolean | undefined;
260
+ }
261
+ interface ServerOptions<U extends typeof WebSocket$1.WebSocket = typeof WebSocket$1.WebSocket, V extends typeof IncomingMessage = typeof IncomingMessage> {
262
+ host?: string | undefined;
263
+ port?: number | undefined;
264
+ backlog?: number | undefined;
265
+ server?: Server$1<V> | Server$2<V> | undefined;
266
+ verifyClient?: VerifyClientCallbackAsync<InstanceType<V>> | VerifyClientCallbackSync<InstanceType<V>> | undefined;
267
+ handleProtocols?: (protocols: Set<string>, request: InstanceType<V>) => string | false;
268
+ path?: string | undefined;
269
+ noServer?: boolean | undefined;
270
+ allowSynchronousEvents?: boolean | undefined;
271
+ autoPong?: boolean | undefined;
272
+ clientTracking?: boolean | undefined;
273
+ perMessageDeflate?: boolean | PerMessageDeflateOptions | undefined;
274
+ maxPayload?: number | undefined;
275
+ skipUTF8Validation?: boolean | undefined;
276
+ WebSocket?: U | undefined;
277
+ }
278
+ interface AddressInfo {
279
+ address: string;
280
+ family: string;
281
+ port: number;
282
+ }
283
+ // WebSocket Server
284
+ class Server<T extends typeof WebSocket$1.WebSocket = typeof WebSocket$1.WebSocket, U extends typeof IncomingMessage = typeof IncomingMessage> extends EventEmitter {
285
+ options: ServerOptions<T, U>;
286
+ path: string;
287
+ clients: Set<InstanceType<T>>;
288
+ constructor(options?: ServerOptions<T, U>, callback?: () => void);
289
+ address(): AddressInfo | string | null;
290
+ close(cb?: (err?: Error) => void): void;
291
+ handleUpgrade(request: InstanceType<U>, socket: Duplex, upgradeHead: Buffer, callback: (client: InstanceType<T>, request: InstanceType<U>) => void): void;
292
+ shouldHandle(request: InstanceType<U>): boolean | Promise<boolean>;
293
+ // Events
294
+ on(event: "connection", cb: (this: Server<T>, websocket: InstanceType<T>, request: InstanceType<U>) => void): this;
295
+ on(event: "error", cb: (this: Server<T>, error: Error) => void): this;
296
+ on(event: "headers", cb: (this: Server<T>, headers: string[], request: InstanceType<U>) => void): this;
297
+ on(event: "close" | "listening", cb: (this: Server<T>) => void): this;
298
+ on(event: "wsClientError", cb: (this: Server<T>, error: Error, socket: Duplex, request: InstanceType<U>) => void): this;
299
+ on(event: string | symbol, listener: (this: Server<T>, ...args: any[]) => void): this;
300
+ once(event: "connection", cb: (this: Server<T>, websocket: InstanceType<T>, request: InstanceType<U>) => void): this;
301
+ once(event: "error", cb: (this: Server<T>, error: Error) => void): this;
302
+ once(event: "headers", cb: (this: Server<T>, headers: string[], request: InstanceType<U>) => void): this;
303
+ once(event: "close" | "listening", cb: (this: Server<T>) => void): this;
304
+ once(event: "wsClientError", cb: (this: Server<T>, error: Error, socket: Duplex, request: InstanceType<U>) => void): this;
305
+ once(event: string | symbol, listener: (this: Server<T>, ...args: any[]) => void): this;
306
+ off(event: "connection", cb: (this: Server<T>, socket: InstanceType<T>, request: InstanceType<U>) => void): this;
307
+ off(event: "error", cb: (this: Server<T>, error: Error) => void): this;
308
+ off(event: "headers", cb: (this: Server<T>, headers: string[], request: InstanceType<U>) => void): this;
309
+ off(event: "close" | "listening", cb: (this: Server<T>) => void): this;
310
+ off(event: "wsClientError", cb: (this: Server<T>, error: Error, socket: Duplex, request: InstanceType<U>) => void): this;
311
+ off(event: string | symbol, listener: (this: Server<T>, ...args: any[]) => void): this;
312
+ addListener(event: "connection", cb: (websocket: InstanceType<T>, request: InstanceType<U>) => void): this;
313
+ addListener(event: "error", cb: (error: Error) => void): this;
314
+ addListener(event: "headers", cb: (headers: string[], request: InstanceType<U>) => void): this;
315
+ addListener(event: "close" | "listening", cb: () => void): this;
316
+ addListener(event: "wsClientError", cb: (error: Error, socket: Duplex, request: InstanceType<U>) => void): this;
317
+ addListener(event: string | symbol, listener: (...args: any[]) => void): this;
318
+ removeListener(event: "connection", cb: (websocket: InstanceType<T>, request: InstanceType<U>) => void): this;
319
+ removeListener(event: "error", cb: (error: Error) => void): this;
320
+ removeListener(event: "headers", cb: (headers: string[], request: InstanceType<U>) => void): this;
321
+ removeListener(event: "close" | "listening", cb: () => void): this;
322
+ removeListener(event: "wsClientError", cb: (error: Error, socket: Duplex, request: InstanceType<U>) => void): this;
323
+ removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
324
+ }
325
+ const WebSocketServer: typeof Server;
326
+ interface WebSocketServer extends Server {} // eslint-disable-line @typescript-eslint/no-empty-interface
327
+ const WebSocket: typeof WebSocketAlias;
328
+ interface WebSocket extends WebSocketAlias {} // eslint-disable-line @typescript-eslint/no-empty-interface
329
+ // WebSocket stream
330
+ function createWebSocketStream(websocket: WebSocket$1, options?: DuplexOptions): Duplex;
331
+ }
332
+ type Server<T extends typeof WebSocket$1.WebSocket = typeof WebSocket$1.WebSocket, U extends typeof IncomingMessage = typeof IncomingMessage> = WebSocket$1.Server<T, U>;
333
+ type RawData = WebSocket$1.RawData;
334
+ type Data = WebSocket$1.Data;
335
+ type CertMeta = WebSocket$1.CertMeta;
336
+ type VerifyClientCallbackSync<Request extends IncomingMessage = IncomingMessage> = WebSocket$1.VerifyClientCallbackSync<Request>;
337
+ type VerifyClientCallbackAsync<Request extends IncomingMessage = IncomingMessage> = WebSocket$1.VerifyClientCallbackAsync<Request>;
338
+ type FinishRequestCallback = WebSocket$1.FinishRequestCallback;
339
+ type ClientOptions = WebSocket$1.ClientOptions;
340
+ type PerMessageDeflateOptions = WebSocket$1.PerMessageDeflateOptions;
341
+ type Event = WebSocket$1.Event;
342
+ type ErrorEvent = WebSocket$1.ErrorEvent;
343
+ type CloseEvent = WebSocket$1.CloseEvent;
344
+ type MessageEvent = WebSocket$1.MessageEvent;
345
+ type WebSocketEventMap = WebSocket$1.WebSocketEventMap;
346
+ type EventListenerOptions = WebSocket$1.EventListenerOptions;
347
+ type ServerOptions<U extends typeof WebSocket$1.WebSocket = typeof WebSocket$1.WebSocket, V extends typeof IncomingMessage = typeof IncomingMessage> = WebSocket$1.ServerOptions<U, V>;
348
+ type AddressInfo = WebSocket$1.AddressInfo;
349
+ type WebSocketServer$1 = WebSocket$1.WebSocketServer;
350
+ // Type-level parity with upstream's ESM entry; the runtime value lands with
351
+ // the compat factory.
352
+ type createWebSocketStream$1 = typeof WebSocket$1.createWebSocketStream;
353
+ //#endregion
354
+ //#region src/compat/stream.d.ts
355
+ export declare function createWebSocketStream(ws: WebSocket$1, options?: DuplexOptions): Duplex;
356
+ //#endregion
357
+ //#region src/compat/constructors.d.ts
358
+ type SocketConstructor = typeof WebSocket$1;
359
+ type ServerConstructor = typeof WebSocket$1.WebSocketServer;
360
+ declare const WebSocket: SocketConstructor;
361
+ type WebSocket = WebSocket$1;
362
+ declare const WebSocketServer: ServerConstructor;
363
+ type WebSocketServer = WebSocketServer$1;
364
+ declare namespace WebSocket {
365
+ type RawData = WebSocket$1.RawData;
366
+ type Data = WebSocket$1.Data;
367
+ type CertMeta = WebSocket$1.CertMeta;
368
+ type VerifyClientCallbackSync<Request extends IncomingMessage = IncomingMessage> = WebSocket$1.VerifyClientCallbackSync<Request>;
369
+ type VerifyClientCallbackAsync<Request extends IncomingMessage = IncomingMessage> = WebSocket$1.VerifyClientCallbackAsync<Request>;
370
+ type FinishRequestCallback = WebSocket$1.FinishRequestCallback;
371
+ type ClientOptions = WebSocket$1.ClientOptions;
372
+ type PerMessageDeflateOptions = WebSocket$1.PerMessageDeflateOptions;
373
+ type Event = WebSocket$1.Event;
374
+ type ErrorEvent = WebSocket$1.ErrorEvent;
375
+ type CloseEvent = WebSocket$1.CloseEvent;
376
+ type MessageEvent = WebSocket$1.MessageEvent;
377
+ type WebSocketEventMap = WebSocket$1.WebSocketEventMap;
378
+ type EventListenerOptions = WebSocket$1.EventListenerOptions;
379
+ type ServerOptions<U extends typeof WebSocket$1 = typeof WebSocket$1, V extends typeof IncomingMessage = typeof IncomingMessage> = WebSocket$1.ServerOptions<U, V>;
380
+ type AddressInfo = WebSocket$1.AddressInfo;
381
+ type Server<T extends typeof WebSocket$1 = typeof WebSocket$1, U extends typeof IncomingMessage = typeof IncomingMessage> = WebSocket$1.Server<T, U>;
382
+ type WebSocketServer = WebSocketServer$1;
383
+ type WebSocket = WebSocket$1;
384
+ type createWebSocketStream = typeof WebSocket$1.createWebSocketStream;
385
+ }
386
+ //#endregion
387
+ //#region src/binding/native-limits.d.ts
388
+ type NativeEngineLimits = {
389
+ readonly connectionCapacity: number;
390
+ readonly messageBytes: number;
391
+ readonly frameBytes: number;
392
+ readonly inboundSlots: number;
393
+ readonly outboundSlots: number;
394
+ readonly maxFragments: number;
395
+ readonly maxPayloadBytes: number;
396
+ };
397
+ //#endregion
398
+ //#region src/binding/server.d.ts
399
+ export declare function engineLimits(): NativeEngineLimits;
400
+ //#endregion
401
+ export { type AddressInfo, type CertMeta, type ClientOptions, type CloseEvent, type Data, type NativeEngineLimits as EngineLimits, type ErrorEvent, type Event, type EventListenerOptions, type FinishRequestCallback, type MessageEvent, type PerMessageDeflateOptions, type RawData, type Server, type ServerOptions, type VerifyClientCallbackAsync, type VerifyClientCallbackSync, WebSocket, WebSocket as default, type WebSocketEventMap, WebSocketServer };