From 0bcf782f9dc132cba866ffacbdbe6753279c2869 Mon Sep 17 00:00:00 2001 From: Eric Musgrave Date: Fri, 1 Mar 2019 11:14:03 -0500 Subject: [PATCH 1/4] Fix/add more zeromq types --- types/zeromq/index.d.ts | 75 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 72 insertions(+), 3 deletions(-) diff --git a/types/zeromq/index.d.ts b/types/zeromq/index.d.ts index d1088aba8f..29bc442723 100644 --- a/types/zeromq/index.d.ts +++ b/types/zeromq/index.d.ts @@ -1,3 +1,5 @@ +import { EventEmitter } from "events"; + // Type definitions for zeromq 4.6 // Project: https://github.com/zeromq/zeromq.js // Definitions by: Dave McKeown @@ -58,21 +60,79 @@ export interface SocketOptions { zap_domain: number; } -export class Socket { +/** + * Export all option names at the global level + */ +export const ZMQ_HWM: number; +export const ZMQ_SWAP: number; +export const ZMQ_AFFINITY: number; +export const ZMQ_IDENTITY: number; +export const ZMQ_SUBSCRIBE: number; +export const ZMQ_UNSUBSCRIBE: number; +export const ZMQ_RATE: number; +export const ZMQ_RECOVERY_IVL: number; +export const ZMQ_MCAST_LOOP: number; +export const ZMQ_SNDBUF: number; +export const ZMQ_RCVBUF: number; +export const ZMQ_RCVMORE: number; +export const ZMQ_FD: number; +export const ZMQ_EVENTS: number; +export const ZMQ_TYPE: number; +export const ZMQ_LINGER: number; +export const ZMQ_RECONNECT_IVL: number; +export const ZMQ_BACKLOG: number; +export const ZMQ_RECOVERY_IVL_MSEC: number; +export const ZMQ_RECONNECT_IVL_MAX: number; +export const ZMQ_MAXMSGSIZE: number; +export const ZMQ_SNDHWM: number; +export const ZMQ_RCVHWM: number; +export const ZMQ_MULTICAST_HOPS: number; +export const ZMQ_RCVTIMEO: number; +export const ZMQ_SNDTIMEO: number; +export const ZMQ_IPV4ONLY: number; +export const ZMQ_LAST_ENDPOINT: number; +export const ZMQ_ROUTER_MANDATORY: number; +export const ZMQ_TCP_KEEPALIVE: number; +export const ZMQ_TCP_KEEPALIVE_CNT: number; +export const ZMQ_TCP_KEEPALIVE_IDLE: number; +export const ZMQ_TCP_KEEPALIVE_INTVL: number; +export const ZMQ_TCP_ACCEPT_FILTER: number; +export const ZMQ_DELAY_ATTACH_ON_CONNECT: number; +export const ZMQ_XPUB_VERBOSE: number; +export const ZMQ_ROUTER_RAW: number; +export const ZMQ_IPV6: number; +export const ZMQ_MECHANISM: number; +export const ZMQ_PLAIN_SERVER: number; +export const ZMQ_PLAIN_USERNAME: number; +export const ZMQ_PLAIN_PASSWORD: number; +export const ZMQ_CURVE_SERVER: number; +export const ZMQ_CURVE_PUBLICKEY: number; +export const ZMQ_CURVE_SECRETKEY: number; +export const ZMQ_CURVE_SERVERKEY: number; +export const ZMQ_ZAP_DOMAIN: number; +export const ZMQ_HEARTBEAT_IVL: number; +export const ZMQ_HEARTBEAT_TTL: number; +export const ZMQ_HEARTBEAT_TIMEOUT: number; +export const ZMQ_CONNECT_TIMEOUT: number; +export const ZMQ_IO_THREADS: number; +export const ZMQ_MAX_SOCKETS: number; +export const ZMQ_ROUTER_HANDOVER: number; + +export class Socket extends EventEmitter { /** * Set `opt` to `val`. * * @param opt Option * @param val Value */ - setsocketopt(opt: number|string, val: any): Socket; + setsockopt(opt: number|string, val: any): Socket; /** * Get socket `opt`. * * @param opt Option number */ - getsocketopt(opt: number|string): any; + getsockopt(opt: number|string): any; /** * Async bind. @@ -156,6 +216,15 @@ export class Socket { */ monitor(interval?: number, numOfEvents?: number): Socket; + /** + * Disable monitoring of a Socket release idle handler + * and close the socket + * + * @return {Socket} for chaining + * @api public + */ + unmonitor(): Socket; + /** * Close the socket. * From 1a3a185d97a1ed0edf2d84684f75c63f7a6be043 Mon Sep 17 00:00:00 2001 From: Eric Date: Fri, 1 Mar 2019 12:35:56 -0500 Subject: [PATCH 2/4] Remove `on` definition --- types/zeromq/index.d.ts | 5 ----- 1 file changed, 5 deletions(-) diff --git a/types/zeromq/index.d.ts b/types/zeromq/index.d.ts index 29bc442723..7f9573555e 100644 --- a/types/zeromq/index.d.ts +++ b/types/zeromq/index.d.ts @@ -231,11 +231,6 @@ export class Socket extends EventEmitter { */ close(): Socket; - /** - * Socket event - 'message' - */ - on(eventName: string, callback: (...buffer: Buffer[]) => void): void; - pause(): void; resume(): void; From 5c448bba7fe3a96e0f472f1e32ecb8c568e74174 Mon Sep 17 00:00:00 2001 From: Eric Date: Fri, 1 Mar 2019 13:48:11 -0500 Subject: [PATCH 3/4] Use NodeJS.EventEmitter instead of importing event --- types/zeromq/index.d.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/types/zeromq/index.d.ts b/types/zeromq/index.d.ts index 7f9573555e..cb21200253 100644 --- a/types/zeromq/index.d.ts +++ b/types/zeromq/index.d.ts @@ -1,5 +1,3 @@ -import { EventEmitter } from "events"; - // Type definitions for zeromq 4.6 // Project: https://github.com/zeromq/zeromq.js // Definitions by: Dave McKeown @@ -118,7 +116,7 @@ export const ZMQ_IO_THREADS: number; export const ZMQ_MAX_SOCKETS: number; export const ZMQ_ROUTER_HANDOVER: number; -export class Socket extends EventEmitter { +export class Socket extends NodeJS.EventEmitter { /** * Set `opt` to `val`. * From 9ea4c0ba6048ceb5435345b2598fdee6652d70d4 Mon Sep 17 00:00:00 2001 From: Eric Date: Fri, 1 Mar 2019 16:35:43 -0500 Subject: [PATCH 4/4] Remove JSDoc type annotation --- types/zeromq/index.d.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/types/zeromq/index.d.ts b/types/zeromq/index.d.ts index cb21200253..e40e5cc3aa 100644 --- a/types/zeromq/index.d.ts +++ b/types/zeromq/index.d.ts @@ -218,8 +218,7 @@ export class Socket extends NodeJS.EventEmitter { * Disable monitoring of a Socket release idle handler * and close the socket * - * @return {Socket} for chaining - * @api public + * @return for chaining */ unmonitor(): Socket;