[TS] Add additional node API interface bits for net
[ldk-java] / ts / node / net.d.ts
1 // Minimal part of the Node fs API which we depend on.
2 // May be (c) Microsoft licensed under the MIT license, however API's are not generally copyrightable per recent precedent.
3 declare module 'net' {
4     import * as stream from 'node:stream';
5     class Socket extends stream.Duplex {
6         constructor();
7         write(buffer: Uint8Array | string, cb?: (err?: Error) => void): boolean;
8         connect(port: number, host: string, connectionListener?: () => void): this;
9         pause(): this;
10         resume(): this;
11         setNoDelay(noDelay?: boolean): this;
12         readonly remoteAddress?: string | undefined;
13         readonly remotePort?: number | undefined;
14         on(event: 'close', listener: (hadError: boolean) => void): this;
15         on(event: 'connect', listener: () => void): this;
16         on(event: 'data', listener: (data: Buffer) => void): this;
17         on(event: 'drain', listener: () => void): this;
18         on(event: 'error', listener: (err: Error) => void): this;
19     }
20     class Server {
21         listen(port?: number, hostname?: string, listeningListener?: () => void): this;
22         close(callback?: (err?: Error) => void): this;
23         on(event: 'error', listener: (err: Error) => void): this;
24         on(event: 'listening', listener: () => void): this;
25     }
26     function createServer(connectionListener?: (socket: Socket) => void): Server;
27     function isIPv4(input: string): boolean;
28     function isIPv6(input: string): boolean;
29 }
30 declare module 'node:net' {
31     export * from 'net';
32 }