mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-08-12 04:50:18 +00:00
node: update dgram module to Node 12.x API (#40478)
This commit is contained in:
committed by
Sheetal Nandi
parent
26f455ddc7
commit
2ce09e5a2b
Vendored
+33
-17
@@ -11,9 +11,10 @@ declare module "dgram" {
|
||||
}
|
||||
|
||||
interface BindOptions {
|
||||
port: number;
|
||||
port?: number;
|
||||
address?: string;
|
||||
exclusive?: boolean;
|
||||
fd?: number;
|
||||
}
|
||||
|
||||
type SocketType = "udp4" | "udp6";
|
||||
@@ -34,67 +35,82 @@ declare module "dgram" {
|
||||
function createSocket(options: SocketOptions, callback?: (msg: Buffer, rinfo: RemoteInfo) => void): Socket;
|
||||
|
||||
class Socket extends events.EventEmitter {
|
||||
send(msg: string | Uint8Array | any[], port: number, address?: string, callback?: (error: Error | null, bytes: number) => void): void;
|
||||
send(msg: string | Uint8Array, offset: number, length: number, port: number, address?: string, callback?: (error: Error | null, bytes: number) => void): void;
|
||||
addMembership(multicastAddress: string, multicastInterface?: string): void;
|
||||
address(): AddressInfo;
|
||||
bind(port?: number, address?: string, callback?: () => void): void;
|
||||
bind(port?: number, callback?: () => void): void;
|
||||
bind(callback?: () => void): void;
|
||||
bind(options: BindOptions, callback?: () => void): void;
|
||||
close(callback?: () => void): void;
|
||||
address(): AddressInfo | string;
|
||||
setBroadcast(flag: boolean): void;
|
||||
setTTL(ttl: number): void;
|
||||
setMulticastTTL(ttl: number): void;
|
||||
setMulticastInterface(multicastInterface: string): void;
|
||||
setMulticastLoopback(flag: boolean): void;
|
||||
addMembership(multicastAddress: string, multicastInterface?: string): void;
|
||||
connect(port: number, address?: string, callback?: () => void): void;
|
||||
connect(port: number, callback: () => void): void;
|
||||
disconnect(): void;
|
||||
dropMembership(multicastAddress: string, multicastInterface?: string): void;
|
||||
ref(): this;
|
||||
unref(): this;
|
||||
setRecvBufferSize(size: number): void;
|
||||
setSendBufferSize(size: number): void;
|
||||
getRecvBufferSize(): number;
|
||||
getSendBufferSize(): number;
|
||||
ref(): this;
|
||||
remoteAddress(): AddressInfo;
|
||||
send(msg: string | Uint8Array | any[], port?: number, address?: string, callback?: (error: Error | null, bytes: number) => void): void;
|
||||
send(msg: string | Uint8Array | any[], port?: number, callback?: (error: Error | null, bytes: number) => void): void;
|
||||
send(msg: string | Uint8Array | any[], callback?: (error: Error | null, bytes: number) => void): void;
|
||||
send(msg: string | Uint8Array, offset: number, length: number, port?: number, address?: string, callback?: (error: Error | null, bytes: number) => void): void;
|
||||
send(msg: string | Uint8Array, offset: number, length: number, port?: number, callback?: (error: Error | null, bytes: number) => void): void;
|
||||
send(msg: string | Uint8Array, offset: number, length: number, callback?: (error: Error | null, bytes: number) => void): void;
|
||||
setBroadcast(flag: boolean): void;
|
||||
setMulticastInterface(multicastInterface: string): void;
|
||||
setMulticastLoopback(flag: boolean): void;
|
||||
setMulticastTTL(ttl: number): void;
|
||||
setRecvBufferSize(size: number): void;
|
||||
setSendBufferSize(size: number): void;
|
||||
setTTL(ttl: number): void;
|
||||
unref(): this;
|
||||
|
||||
/**
|
||||
* events.EventEmitter
|
||||
* 1. close
|
||||
* 2. error
|
||||
* 3. listening
|
||||
* 4. message
|
||||
* 2. connect
|
||||
* 3. error
|
||||
* 4. listening
|
||||
* 5. message
|
||||
*/
|
||||
addListener(event: string, listener: (...args: any[]) => void): this;
|
||||
addListener(event: "close", listener: () => void): this;
|
||||
addListener(event: "connect", listener: () => void): this;
|
||||
addListener(event: "error", listener: (err: Error) => void): this;
|
||||
addListener(event: "listening", listener: () => void): this;
|
||||
addListener(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
|
||||
|
||||
emit(event: string | symbol, ...args: any[]): boolean;
|
||||
emit(event: "close"): boolean;
|
||||
emit(event: "connect"): boolean;
|
||||
emit(event: "error", err: Error): boolean;
|
||||
emit(event: "listening"): boolean;
|
||||
emit(event: "message", msg: Buffer, rinfo: RemoteInfo): boolean;
|
||||
|
||||
on(event: string, listener: (...args: any[]) => void): this;
|
||||
on(event: "close", listener: () => void): this;
|
||||
on(event: "connect", listener: () => void): this;
|
||||
on(event: "error", listener: (err: Error) => void): this;
|
||||
on(event: "listening", listener: () => void): this;
|
||||
on(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
|
||||
|
||||
once(event: string, listener: (...args: any[]) => void): this;
|
||||
once(event: "close", listener: () => void): this;
|
||||
once(event: "connect", listener: () => void): this;
|
||||
once(event: "error", listener: (err: Error) => void): this;
|
||||
once(event: "listening", listener: () => void): this;
|
||||
once(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
|
||||
|
||||
prependListener(event: string, listener: (...args: any[]) => void): this;
|
||||
prependListener(event: "close", listener: () => void): this;
|
||||
prependListener(event: "connect", listener: () => void): this;
|
||||
prependListener(event: "error", listener: (err: Error) => void): this;
|
||||
prependListener(event: "listening", listener: () => void): this;
|
||||
prependListener(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
|
||||
|
||||
prependOnceListener(event: string, listener: (...args: any[]) => void): this;
|
||||
prependOnceListener(event: "close", listener: () => void): this;
|
||||
prependOnceListener(event: "connect", listener: () => void): this;
|
||||
prependOnceListener(event: "error", listener: (err: Error) => void): this;
|
||||
prependOnceListener(event: "listening", listener: () => void): this;
|
||||
prependOnceListener(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
|
||||
|
||||
Vendored
+1
@@ -39,6 +39,7 @@
|
||||
// Marcin Kopacz <https://github.com/chyzwar>
|
||||
// Trivikram Kamat <https://github.com/trivikr>
|
||||
// Minh Son Nguyen <https://github.com/nguymin4>
|
||||
// Junxiao Shi <https://github.com/yoursunny>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
|
||||
// NOTE: These definitions support NodeJS and TypeScript 3.2.
|
||||
|
||||
@@ -10,6 +10,7 @@ import * as dns from "dns";
|
||||
import * as async_hooks from "async_hooks";
|
||||
import * as inspector from "inspector";
|
||||
import * as trace_events from "trace_events";
|
||||
import * as dgram from "dgram";
|
||||
import Module = require("module");
|
||||
|
||||
////////////////////////////////////////////////////
|
||||
@@ -855,6 +856,88 @@ import tty = require('tty');
|
||||
const stderr: tty.WriteStream = process.stderr;
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////
|
||||
/// dgram tests : https://nodejs.org/api/dgram.html ///
|
||||
/////////////////////////////////////////////////////////
|
||||
{
|
||||
let sock: dgram.Socket = dgram.createSocket("udp4");
|
||||
sock = dgram.createSocket({ type: "udp4" });
|
||||
sock = dgram.createSocket({
|
||||
type: "udp4",
|
||||
reuseAddr: true,
|
||||
ipv6Only: false,
|
||||
recvBufferSize: 4096,
|
||||
sendBufferSize: 4096,
|
||||
lookup: dns.lookup,
|
||||
});
|
||||
sock = dgram.createSocket("udp6", (msg, rinfo) => {
|
||||
msg; // $ExpectType Buffer
|
||||
rinfo; // $ExpectType RemoteInfo
|
||||
});
|
||||
sock.addMembership("233.252.0.0");
|
||||
sock.addMembership("233.252.0.0", "192.0.2.1");
|
||||
sock.address().address; // $ExpectType string
|
||||
sock.address().family; // $ExpectType string
|
||||
sock.address().port; // $ExpectType number
|
||||
sock.bind();
|
||||
sock.bind(() => undefined);
|
||||
sock.bind(8000);
|
||||
sock.bind(8000, () => undefined);
|
||||
sock.bind(8000, "192.0.2.1");
|
||||
sock.bind(8000, "192.0.2.1", () => undefined);
|
||||
sock.bind({}, () => undefined);
|
||||
sock.bind({ port: 8000, address: "192.0.2.1", exclusive: true });
|
||||
sock.bind({ fd: 7, exclusive: true });
|
||||
sock.close();
|
||||
sock.close(() => undefined);
|
||||
sock.connect(8000);
|
||||
sock.connect(8000, "192.0.2.1");
|
||||
sock.connect(8000, () => undefined);
|
||||
sock.connect(8000, "192.0.2.1", () => undefined);
|
||||
sock.disconnect();
|
||||
sock.dropMembership("233.252.0.0");
|
||||
sock.dropMembership("233.252.0.0", "192.0.2.1");
|
||||
sock.getRecvBufferSize(); // $ExpectType number
|
||||
sock.getSendBufferSize(); // $ExpectType number
|
||||
sock = sock.ref();
|
||||
sock.remoteAddress().address; // $ExpectType string
|
||||
sock.remoteAddress().family; // $ExpectType string
|
||||
sock.remoteAddress().port; // $ExpectType number
|
||||
sock.send("datagram");
|
||||
sock.send(new Uint8Array(256), 8000, (err) => {
|
||||
err; // $ExpectType Error | null
|
||||
});
|
||||
sock.send(Buffer.alloc(256), 8000, "192.0.2.1");
|
||||
sock.send(new Uint8Array(256), 128, 64);
|
||||
sock.send("datagram", 128, 64, (err) => undefined);
|
||||
sock.send(new Uint8Array(256), 128, 64, 8000);
|
||||
sock.send(new Uint8Array(256), 128, 64, 8000, (err) => undefined);
|
||||
sock.send(Buffer.alloc(256), 128, 64, 8000, "192.0.2.1");
|
||||
sock.send("datagram", 128, 64, 8000, "192.0.2.1", (err) => undefined);
|
||||
sock.setBroadcast(true);
|
||||
sock.setMulticastInterface("192.0.2.1");
|
||||
sock.setMulticastLoopback(false);
|
||||
sock.setMulticastTTL(128);
|
||||
sock.setRecvBufferSize(4096);
|
||||
sock.setSendBufferSize(4096);
|
||||
sock.setTTL(128);
|
||||
sock = sock.unref();
|
||||
|
||||
sock.on("close", () => undefined);
|
||||
sock.on("connect", () => undefined);
|
||||
sock.on("error", (exception) => {
|
||||
exception; // $ExpectType Error
|
||||
});
|
||||
sock.on("listening", () => undefined);
|
||||
sock.on("message", (msg, rinfo) => {
|
||||
msg; // $ExpectType Buffer
|
||||
rinfo.address; // $ExpectType string
|
||||
rinfo.family; // $ExpectType "IPv4" | "IPv6"
|
||||
rinfo.port; // $ExpectType number
|
||||
rinfo.size; // $ExpectType number
|
||||
});
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////
|
||||
/// Node.js ESNEXT Support
|
||||
////////////////////////////////////////////////////
|
||||
|
||||
Reference in New Issue
Block a user