Skip to content

Commit 0827c0f

Browse files
committed
fix: add type definitions for params and callbacks
1 parent bec731f commit 0827c0f

File tree

3 files changed

+107
-26
lines changed

3 files changed

+107
-26
lines changed

lib/typedefs.js

+85-4
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,89 @@
2323
*/
2424

2525
/**
26-
* Children with stat
27-
* @typedef {Object} childrenWithStat
28-
* @property {Array.<string>} children
29-
* @property {stat} stat
26+
* Mkdir callback
27+
* @typedef {callback} mkdirCb
28+
* @param {Error} error
29+
* @param {boolean} [success]
30+
*/
31+
32+
/**
33+
* Connect callback
34+
* @typedef {callback} connectCb
35+
* @param {Error} error
36+
* @param {ZooKeeper} client
37+
*/
38+
39+
/**
40+
* Path callback
41+
* @typedef {callback} pathCb
42+
* @param {number} rc
43+
* @param {number} error
44+
* @param {string} path
45+
*/
46+
47+
/**
48+
* Stat callback
49+
* @typedef {callback} statCb
50+
* @param {number} rc
51+
* @param {number} error
52+
* @param {stat} stat
53+
*/
54+
55+
/**
56+
* Data callback
57+
* @typedef {callback} dataCb
58+
* @param {number} rc
59+
* @param {number} error
60+
* @param {stat} stat
61+
* @param {string|Buffer} data
62+
*/
63+
64+
/**
65+
* Child callback
66+
* @typedef {callback} childCb
67+
* @param {number} rc
68+
* @param {number} error
69+
* @param {Array.<string>} children
70+
*/
71+
72+
/**
73+
* Child2 callback
74+
* @typedef {callback} child2Cb
75+
* @param {number} rc
76+
* @param {number} error
77+
* @param {Array.<string>} children
78+
* @param {stat} stat
79+
*/
80+
81+
/**
82+
* Value callback
83+
* @typedef {callback} valueCb
84+
* @param {number} rc
85+
* @param {number} error
86+
* @param {*} value
87+
*/
88+
89+
/**
90+
* Void callback
91+
* @typedef {callback} voidCb
92+
* @param {number} rc
93+
* @param {number} error
94+
*/
95+
96+
/**
97+
* Watch callback
98+
* @typedef {callback} watchCb
99+
* @param {number} type
100+
* @param {number} state
101+
* @param {string} path
102+
*/
103+
104+
/**
105+
* ACL callback
106+
* @typedef {callback} aclCb
107+
* @param {number} rc
108+
* @param {number} error
109+
* @param {acl} acl
110+
* @param {stat} stat
30111
*/

lib/zk_promise.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ class ZooKeeperPromise extends ZooKeeper {
9292
* @param path {string}
9393
* @param watch {boolean}
9494
* @fulfill {childrenWithStat}
95-
* @returns {Promise.<childrenWithStat>}
95+
* @returns {Promise.<Array.<string>>,<stat>}
9696
*/
9797
get_children2(path, watch) {
9898
return this.promisify(super.a_get_children2, [path, watch]);
@@ -102,7 +102,7 @@ class ZooKeeperPromise extends ZooKeeper {
102102
* @param path {string}
103103
* @param watchCb {function}
104104
* @fulfill {childrenWithStat}
105-
* @returns {Promise.<childrenWithStat>}
105+
* @returns {Promise.<Array.<string>>,<stat>}
106106
*/
107107
w_get_children2(path, watchCb) {
108108
return this.promisify(super.aw_get_children2, [path, watchCb]);

lib/zookeeper.js

+20-20
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ const create = (con, p, cb) => {
4343
* does not support ./file or /dir/../file
4444
* @param con {ZooKeeper}
4545
* @param p {string}
46-
* @param callback {function}
46+
* @param callback {mkdirCb}
4747
*/
4848
const mkdirp = (con, p, callback) => {
4949
const dirs = normalize(p).split('/').slice(1); // remove empty string at the start.
@@ -130,7 +130,7 @@ class ZooKeeper extends EventEmitter {
130130

131131
/**
132132
* @param options {object|function}
133-
* @param cb {function}
133+
* @param cb {connectCb}
134134
*/
135135
connect(options, cb) {
136136
let callback;
@@ -168,7 +168,7 @@ class ZooKeeper extends EventEmitter {
168168
* @param path {string}
169169
* @param data {string|Buffer}
170170
* @param flags {number} an int32 value
171-
* @param pathCb {function}
171+
* @param pathCb {pathCb}
172172
* @returns {*}
173173
*/
174174
a_create(path, data, flags, pathCb) {
@@ -179,7 +179,7 @@ class ZooKeeper extends EventEmitter {
179179
/**
180180
* @param path {string}
181181
* @param watch {boolean}
182-
* @param statCb {function}
182+
* @param statCb {statCb}
183183
* @returns {*}
184184
*/
185185
a_exists(path, watch, statCb) {
@@ -189,8 +189,8 @@ class ZooKeeper extends EventEmitter {
189189

190190
/**
191191
* @param path {string}
192-
* @param watchCb {function}
193-
* @param statCb {function}
192+
* @param watchCb {watchCb}
193+
* @param statCb {statCb}
194194
* @returns {*}
195195
*/
196196
aw_exists(path, watchCb, statCb) {
@@ -201,7 +201,7 @@ class ZooKeeper extends EventEmitter {
201201
/**
202202
* @param path {string}
203203
* @param watch {bool}
204-
* @param dataCb {function}
204+
* @param dataCb {dataCb}
205205
* @returns {*}
206206
*/
207207
a_get(path, watch, dataCb) {
@@ -216,8 +216,8 @@ class ZooKeeper extends EventEmitter {
216216

217217
/**
218218
* @param path {string}
219-
* @param watchCb {function}
220-
* @param dataCb {function}
219+
* @param watchCb {watchCb}
220+
* @param dataCb {dataCb}
221221
* @returns {*}
222222
*/
223223
aw_get(path, watchCb, dataCb) {
@@ -233,7 +233,7 @@ class ZooKeeper extends EventEmitter {
233233
/**
234234
* @param path {string}
235235
* @param watch {boolean}
236-
* @param childCb {function}
236+
* @param childCb {childCb}
237237
* @returns {*}
238238
*/
239239
a_get_children(path, watch, childCb) {
@@ -243,8 +243,8 @@ class ZooKeeper extends EventEmitter {
243243

244244
/**
245245
* @param path {string}
246-
* @param watchCb {function}
247-
* @param childCb {function}
246+
* @param watchCb {watchCb}
247+
* @param childCb {childCb}
248248
* @returns {*}
249249
*/
250250
aw_get_children(path, watchCb, childCb) {
@@ -255,7 +255,7 @@ class ZooKeeper extends EventEmitter {
255255
/**
256256
* @param path {string}
257257
* @param watch {boolean}
258-
* @param childCb {function}
258+
* @param childCb {childCb}
259259
* @returns {*}
260260
*/
261261
a_get_children2(path, watch, childCb) {
@@ -265,8 +265,8 @@ class ZooKeeper extends EventEmitter {
265265

266266
/**
267267
* @param path {string}
268-
* @param watchCb {function}
269-
* @param childCb {function}
268+
* @param watchCb {watchCb}
269+
* @param childCb {childCb}
270270
* @returns {*}
271271
*/
272272
aw_get_children2(path, watchCb, childCb) {
@@ -278,7 +278,7 @@ class ZooKeeper extends EventEmitter {
278278
* @param path {string}
279279
* @param data {string|Buffer}
280280
* @param version {number} an int32 value
281-
* @param statCb {function}
281+
* @param statCb {statCb}
282282
* @returns {*}
283283
*/
284284
a_set(path, data, version, statCb) {
@@ -289,7 +289,7 @@ class ZooKeeper extends EventEmitter {
289289
/**
290290
* @param path {string}
291291
* @param version {number} an int32 value
292-
* @param voidCb {function}
292+
* @param voidCb {voidCb}
293293
* @returns {*}
294294
*/
295295
// eslint-disable-next-line no-underscore-dangle
@@ -301,7 +301,7 @@ class ZooKeeper extends EventEmitter {
301301

302302
/**
303303
* @param path {string}
304-
* @param aclCb {function}
304+
* @param aclCb {aclCb}
305305
* @returns {*}
306306
*/
307307
a_get_acl(path, aclCb) {
@@ -313,7 +313,7 @@ class ZooKeeper extends EventEmitter {
313313
* @param path {string}
314314
* @param version {number} an int32 value
315315
* @param acl {acl}
316-
* @param voidCb {function}
316+
* @param voidCb {voidCb}
317317
* @returns {*}
318318
*/
319319
a_set_acl(path, version, acl, voidCb) {
@@ -333,7 +333,7 @@ class ZooKeeper extends EventEmitter {
333333

334334
/**
335335
* @param path {string}
336-
* @param cb {function}
336+
* @param cb {mkdirCb}
337337
*/
338338
mkdirp(path, cb) {
339339
this.log(`Calling mkdirp with ${util.inspect([path, cb])}`);

0 commit comments

Comments
 (0)