您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

dgram.d.ts 4.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. declare module "dgram" {
  2. import { AddressInfo } from "net";
  3. import * as dns from "dns";
  4. import * as events from "events";
  5. interface RemoteInfo {
  6. address: string;
  7. family: 'IPv4' | 'IPv6';
  8. port: number;
  9. size: number;
  10. }
  11. interface BindOptions {
  12. port: number;
  13. address?: string;
  14. exclusive?: boolean;
  15. }
  16. type SocketType = "udp4" | "udp6";
  17. interface SocketOptions {
  18. type: SocketType;
  19. reuseAddr?: boolean;
  20. /**
  21. * @default false
  22. */
  23. ipv6Only?: boolean;
  24. recvBufferSize?: number;
  25. sendBufferSize?: number;
  26. lookup?: (hostname: string, options: dns.LookupOneOptions, callback: (err: NodeJS.ErrnoException | null, address: string, family: number) => void) => void;
  27. }
  28. function createSocket(type: SocketType, callback?: (msg: Buffer, rinfo: RemoteInfo) => void): Socket;
  29. function createSocket(options: SocketOptions, callback?: (msg: Buffer, rinfo: RemoteInfo) => void): Socket;
  30. class Socket extends events.EventEmitter {
  31. send(msg: Buffer | string | Uint8Array | any[], port: number, address?: string, callback?: (error: Error | null, bytes: number) => void): void;
  32. send(msg: Buffer | string | Uint8Array, offset: number, length: number, port: number, address?: string, callback?: (error: Error | null, bytes: number) => void): void;
  33. bind(port?: number, address?: string, callback?: () => void): void;
  34. bind(port?: number, callback?: () => void): void;
  35. bind(callback?: () => void): void;
  36. bind(options: BindOptions, callback?: () => void): void;
  37. close(callback?: () => void): void;
  38. address(): AddressInfo | string;
  39. setBroadcast(flag: boolean): void;
  40. setTTL(ttl: number): void;
  41. setMulticastTTL(ttl: number): void;
  42. setMulticastInterface(multicastInterface: string): void;
  43. setMulticastLoopback(flag: boolean): void;
  44. addMembership(multicastAddress: string, multicastInterface?: string): void;
  45. dropMembership(multicastAddress: string, multicastInterface?: string): void;
  46. ref(): this;
  47. unref(): this;
  48. setRecvBufferSize(size: number): void;
  49. setSendBufferSize(size: number): void;
  50. getRecvBufferSize(): number;
  51. getSendBufferSize(): number;
  52. /**
  53. * events.EventEmitter
  54. * 1. close
  55. * 2. error
  56. * 3. listening
  57. * 4. message
  58. */
  59. addListener(event: string, listener: (...args: any[]) => void): this;
  60. addListener(event: "close", listener: () => void): this;
  61. addListener(event: "error", listener: (err: Error) => void): this;
  62. addListener(event: "listening", listener: () => void): this;
  63. addListener(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
  64. emit(event: string | symbol, ...args: any[]): boolean;
  65. emit(event: "close"): boolean;
  66. emit(event: "error", err: Error): boolean;
  67. emit(event: "listening"): boolean;
  68. emit(event: "message", msg: Buffer, rinfo: RemoteInfo): boolean;
  69. on(event: string, listener: (...args: any[]) => void): this;
  70. on(event: "close", listener: () => void): this;
  71. on(event: "error", listener: (err: Error) => void): this;
  72. on(event: "listening", listener: () => void): this;
  73. on(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
  74. once(event: string, listener: (...args: any[]) => void): this;
  75. once(event: "close", listener: () => void): this;
  76. once(event: "error", listener: (err: Error) => void): this;
  77. once(event: "listening", listener: () => void): this;
  78. once(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
  79. prependListener(event: string, listener: (...args: any[]) => void): this;
  80. prependListener(event: "close", listener: () => void): this;
  81. prependListener(event: "error", listener: (err: Error) => void): this;
  82. prependListener(event: "listening", listener: () => void): this;
  83. prependListener(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
  84. prependOnceListener(event: string, listener: (...args: any[]) => void): this;
  85. prependOnceListener(event: "close", listener: () => void): this;
  86. prependOnceListener(event: "error", listener: (err: Error) => void): this;
  87. prependOnceListener(event: "listening", listener: () => void): this;
  88. prependOnceListener(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
  89. }
  90. }