@redis/bloom 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/README.md +14 -0
  2. package/dist/commands/bloom/ADD.d.ts +3 -0
  3. package/dist/commands/bloom/ADD.js +10 -0
  4. package/dist/commands/bloom/EXISTS.d.ts +4 -0
  5. package/dist/commands/bloom/EXISTS.js +11 -0
  6. package/dist/commands/bloom/INFO.d.ts +23 -0
  7. package/dist/commands/bloom/INFO.js +19 -0
  8. package/dist/commands/bloom/INSERT.d.ts +10 -0
  9. package/dist/commands/bloom/INSERT.js +29 -0
  10. package/dist/commands/bloom/LOADCHUNK.d.ts +4 -0
  11. package/dist/commands/bloom/LOADCHUNK.js +8 -0
  12. package/dist/commands/bloom/MADD.d.ts +3 -0
  13. package/dist/commands/bloom/MADD.js +10 -0
  14. package/dist/commands/bloom/MEXISTS.d.ts +4 -0
  15. package/dist/commands/bloom/MEXISTS.js +11 -0
  16. package/dist/commands/bloom/RESERVE.d.ts +8 -0
  17. package/dist/commands/bloom/RESERVE.js +15 -0
  18. package/dist/commands/bloom/SCANDUMP.d.ts +13 -0
  19. package/dist/commands/bloom/SCANDUMP.js +16 -0
  20. package/dist/commands/bloom/index.d.ts +30 -0
  21. package/dist/commands/bloom/index.js +31 -0
  22. package/dist/commands/count-min-sketch/INCRBY.d.ts +8 -0
  23. package/dist/commands/count-min-sketch/INCRBY.js +20 -0
  24. package/dist/commands/count-min-sketch/INFO.d.ts +17 -0
  25. package/dist/commands/count-min-sketch/INFO.js +17 -0
  26. package/dist/commands/count-min-sketch/INITBYDIM.d.ts +3 -0
  27. package/dist/commands/count-min-sketch/INITBYDIM.js +8 -0
  28. package/dist/commands/count-min-sketch/INITBYPROB.d.ts +3 -0
  29. package/dist/commands/count-min-sketch/INITBYPROB.js +8 -0
  30. package/dist/commands/count-min-sketch/MERGE.d.ts +9 -0
  31. package/dist/commands/count-min-sketch/MERGE.js +28 -0
  32. package/dist/commands/count-min-sketch/QUERY.d.ts +5 -0
  33. package/dist/commands/count-min-sketch/QUERY.js +10 -0
  34. package/dist/commands/count-min-sketch/index.d.ts +21 -0
  35. package/dist/commands/count-min-sketch/index.js +22 -0
  36. package/dist/commands/cuckoo/ADD.d.ts +3 -0
  37. package/dist/commands/cuckoo/ADD.js +10 -0
  38. package/dist/commands/cuckoo/ADDNX.d.ts +3 -0
  39. package/dist/commands/cuckoo/ADDNX.js +10 -0
  40. package/dist/commands/cuckoo/COUNT.d.ts +3 -0
  41. package/dist/commands/cuckoo/COUNT.js +8 -0
  42. package/dist/commands/cuckoo/DEL.d.ts +3 -0
  43. package/dist/commands/cuckoo/DEL.js +10 -0
  44. package/dist/commands/cuckoo/EXISTS.d.ts +4 -0
  45. package/dist/commands/cuckoo/EXISTS.js +11 -0
  46. package/dist/commands/cuckoo/INFO.d.ts +32 -0
  47. package/dist/commands/cuckoo/INFO.js +22 -0
  48. package/dist/commands/cuckoo/INSERT.d.ts +5 -0
  49. package/dist/commands/cuckoo/INSERT.js +11 -0
  50. package/dist/commands/cuckoo/INSERTNX.d.ts +5 -0
  51. package/dist/commands/cuckoo/INSERTNX.js +11 -0
  52. package/dist/commands/cuckoo/LOADCHUNK.d.ts +4 -0
  53. package/dist/commands/cuckoo/LOADCHUNK.js +8 -0
  54. package/dist/commands/cuckoo/RESERVE.d.ts +9 -0
  55. package/dist/commands/cuckoo/RESERVE.js +18 -0
  56. package/dist/commands/cuckoo/SCANDUMP.d.ts +12 -0
  57. package/dist/commands/cuckoo/SCANDUMP.js +15 -0
  58. package/dist/commands/cuckoo/index.d.ts +42 -0
  59. package/dist/commands/cuckoo/index.js +51 -0
  60. package/dist/commands/index.d.ts +79 -0
  61. package/dist/commands/index.js +12 -0
  62. package/dist/commands/top-k/ADD.d.ts +4 -0
  63. package/dist/commands/top-k/ADD.js +9 -0
  64. package/dist/commands/top-k/COUNT.d.ts +5 -0
  65. package/dist/commands/top-k/COUNT.js +10 -0
  66. package/dist/commands/top-k/INCRBY.d.ts +8 -0
  67. package/dist/commands/top-k/INCRBY.js +20 -0
  68. package/dist/commands/top-k/INFO.d.ts +20 -0
  69. package/dist/commands/top-k/INFO.js +18 -0
  70. package/dist/commands/top-k/LIST.d.ts +4 -0
  71. package/dist/commands/top-k/LIST.js +9 -0
  72. package/dist/commands/top-k/LIST_WITHCOUNT.d.ts +10 -0
  73. package/dist/commands/top-k/LIST_WITHCOUNT.js +20 -0
  74. package/dist/commands/top-k/QUERY.d.ts +5 -0
  75. package/dist/commands/top-k/QUERY.js +10 -0
  76. package/dist/commands/top-k/RESERVE.d.ts +10 -0
  77. package/dist/commands/top-k/RESERVE.js +13 -0
  78. package/dist/commands/top-k/index.d.ts +27 -0
  79. package/dist/commands/top-k/index.js +28 -0
  80. package/dist/index.d.ts +1 -0
  81. package/dist/index.js +5 -0
  82. package/package.json +29 -0
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformReply = exports.transformArguments = exports.IS_READ_ONLY = exports.FIRST_KEY_INDEX = void 0;
4
+ exports.FIRST_KEY_INDEX = 1;
5
+ exports.IS_READ_ONLY = true;
6
+ function transformArguments(key) {
7
+ return ['CF.INFO', key];
8
+ }
9
+ exports.transformArguments = transformArguments;
10
+ function transformReply(reply) {
11
+ return {
12
+ size: reply[1],
13
+ numberOfBuckets: reply[3],
14
+ numberOfFilters: reply[5],
15
+ numberOfInsertedItems: reply[7],
16
+ numberOfDeletedItems: reply[9],
17
+ bucketSize: reply[11],
18
+ expansionRate: reply[13],
19
+ maxIteration: reply[15]
20
+ };
21
+ }
22
+ exports.transformReply = transformReply;
@@ -0,0 +1,5 @@
1
+ import { RedisCommandArguments } from '@redis/client/dist/lib/commands';
2
+ import { InsertOptions } from ".";
3
+ export declare const FIRST_KEY_INDEX = 1;
4
+ export declare function transformArguments(key: string, items: string | Array<string>, options?: InsertOptions): RedisCommandArguments;
5
+ export { transformBooleanArrayReply as transformReply } from '@redis/client/dist/lib/commands/generic-transformers';
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformReply = exports.transformArguments = exports.FIRST_KEY_INDEX = void 0;
4
+ const _1 = require(".");
5
+ exports.FIRST_KEY_INDEX = 1;
6
+ function transformArguments(key, items, options) {
7
+ return (0, _1.pushInsertOptions)(['CF.INSERT', key], items, options);
8
+ }
9
+ exports.transformArguments = transformArguments;
10
+ var generic_transformers_1 = require("@redis/client/dist/lib/commands/generic-transformers");
11
+ Object.defineProperty(exports, "transformReply", { enumerable: true, get: function () { return generic_transformers_1.transformBooleanArrayReply; } });
@@ -0,0 +1,5 @@
1
+ import { RedisCommandArguments } from '@redis/client/dist/lib/commands';
2
+ import { InsertOptions } from ".";
3
+ export declare const FIRST_KEY_INDEX = 1;
4
+ export declare function transformArguments(key: string, items: string | Array<string>, options?: InsertOptions): RedisCommandArguments;
5
+ export { transformBooleanArrayReply as transformReply } from '@redis/client/dist/lib/commands/generic-transformers';
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformReply = exports.transformArguments = exports.FIRST_KEY_INDEX = void 0;
4
+ const _1 = require(".");
5
+ exports.FIRST_KEY_INDEX = 1;
6
+ function transformArguments(key, items, options) {
7
+ return (0, _1.pushInsertOptions)(['CF.INSERTNX', key], items, options);
8
+ }
9
+ exports.transformArguments = transformArguments;
10
+ var generic_transformers_1 = require("@redis/client/dist/lib/commands/generic-transformers");
11
+ Object.defineProperty(exports, "transformReply", { enumerable: true, get: function () { return generic_transformers_1.transformBooleanArrayReply; } });
@@ -0,0 +1,4 @@
1
+ import { RedisCommandArgument, RedisCommandArguments } from '@redis/client/dist/lib/commands';
2
+ export declare const FIRST_KEY_INDEX = 1;
3
+ export declare function transformArguments(key: string, iterator: number, chunk: RedisCommandArgument): RedisCommandArguments;
4
+ export declare function transformReply(): 'OK';
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformArguments = exports.FIRST_KEY_INDEX = void 0;
4
+ exports.FIRST_KEY_INDEX = 1;
5
+ function transformArguments(key, iterator, chunk) {
6
+ return ['CF.LOADCHUNK', key, iterator.toString(), chunk];
7
+ }
8
+ exports.transformArguments = transformArguments;
@@ -0,0 +1,9 @@
1
+ export declare const FIRST_KEY_INDEX = 1;
2
+ interface ReserveOptions {
3
+ BUCKETSIZE?: number;
4
+ MAXITERATIONS?: number;
5
+ EXPANSION?: number;
6
+ }
7
+ export declare function transformArguments(key: string, capacity: number, options?: ReserveOptions): Array<string>;
8
+ export declare function transformReply(): 'OK';
9
+ export {};
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformArguments = exports.FIRST_KEY_INDEX = void 0;
4
+ exports.FIRST_KEY_INDEX = 1;
5
+ function transformArguments(key, capacity, options) {
6
+ const args = ['CF.RESERVE', key, capacity.toString()];
7
+ if (options?.BUCKETSIZE) {
8
+ args.push('BUCKETSIZE', options.BUCKETSIZE.toString());
9
+ }
10
+ if (options?.MAXITERATIONS) {
11
+ args.push('MAXITERATIONS', options.MAXITERATIONS.toString());
12
+ }
13
+ if (options?.EXPANSION) {
14
+ args.push('EXPANSION', options.EXPANSION.toString());
15
+ }
16
+ return args;
17
+ }
18
+ exports.transformArguments = transformArguments;
@@ -0,0 +1,12 @@
1
+ export declare const FIRST_KEY_INDEX = 1;
2
+ export declare function transformArguments(key: string, iterator: number): Array<string>;
3
+ declare type ScanDumpRawReply = [
4
+ iterator: number,
5
+ chunk: string | null
6
+ ];
7
+ interface ScanDumpReply {
8
+ iterator: number;
9
+ chunk: string | null;
10
+ }
11
+ export declare function transformReply([iterator, chunk]: ScanDumpRawReply): ScanDumpReply;
12
+ export {};
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformReply = exports.transformArguments = exports.FIRST_KEY_INDEX = void 0;
4
+ exports.FIRST_KEY_INDEX = 1;
5
+ function transformArguments(key, iterator) {
6
+ return ['CF.SCANDUMP', key, iterator.toString()];
7
+ }
8
+ exports.transformArguments = transformArguments;
9
+ function transformReply([iterator, chunk]) {
10
+ return {
11
+ iterator,
12
+ chunk
13
+ };
14
+ }
15
+ exports.transformReply = transformReply;
@@ -0,0 +1,42 @@
1
+ import * as ADD from './ADD';
2
+ import * as ADDNX from './ADDNX';
3
+ import * as COUNT from './COUNT';
4
+ import * as DEL from './DEL';
5
+ import * as EXISTS from './EXISTS';
6
+ import * as INFO from './INFO';
7
+ import * as INSERT from './INSERT';
8
+ import * as INSERTNX from './INSERTNX';
9
+ import * as LOADCHUNK from './LOADCHUNK';
10
+ import * as RESERVE from './RESERVE';
11
+ import * as SCANDUMP from './SCANDUMP';
12
+ import { RedisCommandArguments } from '@redis/client/dist/lib/commands';
13
+ declare const _default: {
14
+ ADD: typeof ADD;
15
+ add: typeof ADD;
16
+ ADDNX: typeof ADDNX;
17
+ addNX: typeof ADDNX;
18
+ COUNT: typeof COUNT;
19
+ count: typeof COUNT;
20
+ DEL: typeof DEL;
21
+ del: typeof DEL;
22
+ EXISTS: typeof EXISTS;
23
+ exists: typeof EXISTS;
24
+ INFO: typeof INFO;
25
+ info: typeof INFO;
26
+ INSERT: typeof INSERT;
27
+ insert: typeof INSERT;
28
+ INSERTNX: typeof INSERTNX;
29
+ insertNX: typeof INSERTNX;
30
+ LOADCHUNK: typeof LOADCHUNK;
31
+ loadChunk: typeof LOADCHUNK;
32
+ RESERVE: typeof RESERVE;
33
+ reserve: typeof RESERVE;
34
+ SCANDUMP: typeof SCANDUMP;
35
+ scanDump: typeof SCANDUMP;
36
+ };
37
+ export default _default;
38
+ export interface InsertOptions {
39
+ CAPACITY?: number;
40
+ NOCREATE?: true;
41
+ }
42
+ export declare function pushInsertOptions(args: RedisCommandArguments, items: string | Array<string>, options?: InsertOptions): RedisCommandArguments;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pushInsertOptions = void 0;
4
+ const ADD = require("./ADD");
5
+ const ADDNX = require("./ADDNX");
6
+ const COUNT = require("./COUNT");
7
+ const DEL = require("./DEL");
8
+ const EXISTS = require("./EXISTS");
9
+ const INFO = require("./INFO");
10
+ const INSERT = require("./INSERT");
11
+ const INSERTNX = require("./INSERTNX");
12
+ const LOADCHUNK = require("./LOADCHUNK");
13
+ const RESERVE = require("./RESERVE");
14
+ const SCANDUMP = require("./SCANDUMP");
15
+ const generic_transformers_1 = require("@redis/client/dist/lib/commands/generic-transformers");
16
+ exports.default = {
17
+ ADD,
18
+ add: ADD,
19
+ ADDNX,
20
+ addNX: ADDNX,
21
+ COUNT,
22
+ count: COUNT,
23
+ DEL,
24
+ del: DEL,
25
+ EXISTS,
26
+ exists: EXISTS,
27
+ INFO,
28
+ info: INFO,
29
+ INSERT,
30
+ insert: INSERT,
31
+ INSERTNX,
32
+ insertNX: INSERTNX,
33
+ LOADCHUNK,
34
+ loadChunk: LOADCHUNK,
35
+ RESERVE,
36
+ reserve: RESERVE,
37
+ SCANDUMP,
38
+ scanDump: SCANDUMP
39
+ };
40
+ function pushInsertOptions(args, items, options) {
41
+ if (options?.CAPACITY) {
42
+ args.push('CAPACITY');
43
+ args.push(options.CAPACITY.toString());
44
+ }
45
+ if (options?.NOCREATE) {
46
+ args.push('NOCREATE');
47
+ }
48
+ args.push('ITEMS');
49
+ return (0, generic_transformers_1.pushVerdictArguments)(args, items);
50
+ }
51
+ exports.pushInsertOptions = pushInsertOptions;
@@ -0,0 +1,79 @@
1
+ declare const _default: {
2
+ bf: {
3
+ ADD: typeof import("./bloom/ADD");
4
+ add: typeof import("./bloom/ADD");
5
+ EXISTS: typeof import("./bloom/EXISTS");
6
+ exists: typeof import("./bloom/EXISTS");
7
+ INFO: typeof import("./bloom/INFO");
8
+ info: typeof import("./bloom/INFO");
9
+ INSERT: typeof import("./bloom/INSERT");
10
+ insert: typeof import("./bloom/INSERT");
11
+ LOADCHUNK: typeof import("./bloom/LOADCHUNK");
12
+ loadChunk: typeof import("./bloom/LOADCHUNK");
13
+ MADD: typeof import("./bloom/MADD");
14
+ mAdd: typeof import("./bloom/MADD");
15
+ MEXISTS: typeof import("./bloom/MEXISTS");
16
+ mExists: typeof import("./bloom/MEXISTS");
17
+ RESERVE: typeof import("./bloom/RESERVE");
18
+ reserve: typeof import("./bloom/RESERVE");
19
+ SCANDUMP: typeof import("./bloom/SCANDUMP");
20
+ scanDump: typeof import("./bloom/SCANDUMP");
21
+ };
22
+ cms: {
23
+ INCRBY: typeof import("./count-min-sketch/INCRBY");
24
+ incrBy: typeof import("./count-min-sketch/INCRBY");
25
+ INFO: typeof import("./count-min-sketch/INFO");
26
+ info: typeof import("./count-min-sketch/INFO");
27
+ INITBYDIM: typeof import("./count-min-sketch/INITBYDIM");
28
+ initByDim: typeof import("./count-min-sketch/INITBYDIM");
29
+ INITBYPROB: typeof import("./count-min-sketch/INITBYPROB");
30
+ initByProb: typeof import("./count-min-sketch/INITBYPROB");
31
+ MERGE: typeof import("./count-min-sketch/MERGE");
32
+ merge: typeof import("./count-min-sketch/MERGE");
33
+ QUERY: typeof import("./count-min-sketch/QUERY");
34
+ query: typeof import("./count-min-sketch/QUERY");
35
+ };
36
+ cf: {
37
+ ADD: typeof import("./cuckoo/ADD");
38
+ add: typeof import("./cuckoo/ADD");
39
+ ADDNX: typeof import("./cuckoo/ADDNX");
40
+ addNX: typeof import("./cuckoo/ADDNX");
41
+ COUNT: typeof import("./cuckoo/COUNT");
42
+ count: typeof import("./cuckoo/COUNT");
43
+ DEL: typeof import("./cuckoo/DEL");
44
+ del: typeof import("./cuckoo/DEL");
45
+ EXISTS: typeof import("./cuckoo/EXISTS");
46
+ exists: typeof import("./cuckoo/EXISTS");
47
+ INFO: typeof import("./cuckoo/INFO");
48
+ info: typeof import("./cuckoo/INFO");
49
+ INSERT: typeof import("./cuckoo/INSERT");
50
+ insert: typeof import("./cuckoo/INSERT");
51
+ INSERTNX: typeof import("./cuckoo/INSERTNX");
52
+ insertNX: typeof import("./cuckoo/INSERTNX");
53
+ LOADCHUNK: typeof import("./cuckoo/LOADCHUNK");
54
+ loadChunk: typeof import("./cuckoo/LOADCHUNK");
55
+ RESERVE: typeof import("./cuckoo/RESERVE");
56
+ reserve: typeof import("./cuckoo/RESERVE");
57
+ SCANDUMP: typeof import("./cuckoo/SCANDUMP");
58
+ scanDump: typeof import("./cuckoo/SCANDUMP");
59
+ };
60
+ topK: {
61
+ ADD: typeof import("./top-k/ADD");
62
+ add: typeof import("./top-k/ADD");
63
+ COUNT: typeof import("./top-k/COUNT");
64
+ count: typeof import("./top-k/COUNT");
65
+ INCRBY: typeof import("./top-k/INCRBY");
66
+ incrBy: typeof import("./top-k/INCRBY");
67
+ INFO: typeof import("./top-k/INFO");
68
+ info: typeof import("./top-k/INFO");
69
+ LIST_WITHCOUNT: typeof import("./top-k/LIST_WITHCOUNT");
70
+ listWithCount: typeof import("./top-k/LIST_WITHCOUNT");
71
+ LIST: typeof import("./top-k/LIST");
72
+ list: typeof import("./top-k/LIST");
73
+ QUERY: typeof import("./top-k/QUERY");
74
+ query: typeof import("./top-k/QUERY");
75
+ RESERVE: typeof import("./top-k/RESERVE");
76
+ reserve: typeof import("./top-k/RESERVE");
77
+ };
78
+ };
79
+ export default _default;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const bloom_1 = require("./bloom");
4
+ const count_min_sketch_1 = require("./count-min-sketch");
5
+ const cuckoo_1 = require("./cuckoo");
6
+ const top_k_1 = require("./top-k");
7
+ exports.default = {
8
+ bf: bloom_1.default,
9
+ cms: count_min_sketch_1.default,
10
+ cf: cuckoo_1.default,
11
+ topK: top_k_1.default
12
+ };
@@ -0,0 +1,4 @@
1
+ import { RedisCommandArguments } from '@redis/client/dist/lib/commands';
2
+ export declare const FIRST_KEY_INDEX = 1;
3
+ export declare function transformArguments(key: string, items: string | Array<string>): RedisCommandArguments;
4
+ export declare function transformReply(): Array<null | string>;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformArguments = exports.FIRST_KEY_INDEX = void 0;
4
+ const generic_transformers_1 = require("@redis/client/dist/lib/commands/generic-transformers");
5
+ exports.FIRST_KEY_INDEX = 1;
6
+ function transformArguments(key, items) {
7
+ return (0, generic_transformers_1.pushVerdictArguments)(['TOPK.ADD', key], items);
8
+ }
9
+ exports.transformArguments = transformArguments;
@@ -0,0 +1,5 @@
1
+ import { RedisCommandArguments } from '@redis/client/dist/lib/commands';
2
+ export declare const FIRST_KEY_INDEX = 1;
3
+ export declare const IS_READ_ONLY = true;
4
+ export declare function transformArguments(key: string, items: string | Array<string>): RedisCommandArguments;
5
+ export declare function transformReply(): Array<number>;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformArguments = exports.IS_READ_ONLY = exports.FIRST_KEY_INDEX = void 0;
4
+ const generic_transformers_1 = require("@redis/client/dist/lib/commands/generic-transformers");
5
+ exports.FIRST_KEY_INDEX = 1;
6
+ exports.IS_READ_ONLY = true;
7
+ function transformArguments(key, items) {
8
+ return (0, generic_transformers_1.pushVerdictArguments)(['TOPK.COUNT', key], items);
9
+ }
10
+ exports.transformArguments = transformArguments;
@@ -0,0 +1,8 @@
1
+ export declare const FIRST_KEY_INDEX = 1;
2
+ interface IncrByItem {
3
+ item: string;
4
+ incrementBy: number;
5
+ }
6
+ export declare function transformArguments(key: string, items: IncrByItem | Array<IncrByItem>): Array<string>;
7
+ export declare function transformReply(): Array<string | null>;
8
+ export {};
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformArguments = exports.FIRST_KEY_INDEX = void 0;
4
+ exports.FIRST_KEY_INDEX = 1;
5
+ function transformArguments(key, items) {
6
+ const args = ['TOPK.INCRBY', key];
7
+ if (Array.isArray(items)) {
8
+ for (const item of items) {
9
+ pushIncrByItem(args, item);
10
+ }
11
+ }
12
+ else {
13
+ pushIncrByItem(args, items);
14
+ }
15
+ return args;
16
+ }
17
+ exports.transformArguments = transformArguments;
18
+ function pushIncrByItem(args, { item, incrementBy }) {
19
+ args.push(item, incrementBy.toString());
20
+ }
@@ -0,0 +1,20 @@
1
+ export declare const FIRST_KEY_INDEX = 1;
2
+ export declare const IS_READ_ONLY = true;
3
+ export declare function transformArguments(key: string): Array<string>;
4
+ export declare type InfoRawReply = [
5
+ _: string,
6
+ k: number,
7
+ _: string,
8
+ width: number,
9
+ _: string,
10
+ depth: number,
11
+ _: string,
12
+ decay: string
13
+ ];
14
+ export interface InfoReply {
15
+ k: number;
16
+ width: number;
17
+ depth: number;
18
+ decay: number;
19
+ }
20
+ export declare function transformReply(reply: InfoRawReply): InfoReply;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformReply = exports.transformArguments = exports.IS_READ_ONLY = exports.FIRST_KEY_INDEX = void 0;
4
+ exports.FIRST_KEY_INDEX = 1;
5
+ exports.IS_READ_ONLY = true;
6
+ function transformArguments(key) {
7
+ return ['TOPK.INFO', key];
8
+ }
9
+ exports.transformArguments = transformArguments;
10
+ function transformReply(reply) {
11
+ return {
12
+ k: reply[1],
13
+ width: reply[3],
14
+ depth: reply[5],
15
+ decay: Number(reply[7])
16
+ };
17
+ }
18
+ exports.transformReply = transformReply;
@@ -0,0 +1,4 @@
1
+ export declare const FIRST_KEY_INDEX = 1;
2
+ export declare const IS_READ_ONLY = true;
3
+ export declare function transformArguments(key: string): Array<string>;
4
+ export declare function transformReply(): Array<string | null>;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformArguments = exports.IS_READ_ONLY = exports.FIRST_KEY_INDEX = void 0;
4
+ exports.FIRST_KEY_INDEX = 1;
5
+ exports.IS_READ_ONLY = true;
6
+ function transformArguments(key) {
7
+ return ['TOPK.LIST', key];
8
+ }
9
+ exports.transformArguments = transformArguments;
@@ -0,0 +1,10 @@
1
+ export declare const FIRST_KEY_INDEX = 1;
2
+ export declare const IS_READ_ONLY = true;
3
+ export declare function transformArguments(key: string): Array<string>;
4
+ declare type ListWithCountRawReply = Array<string | number>;
5
+ declare type ListWithCountReply = Array<{
6
+ item: string;
7
+ count: number;
8
+ }>;
9
+ export declare function transformReply(rawReply: ListWithCountRawReply): ListWithCountReply;
10
+ export {};
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformReply = exports.transformArguments = exports.IS_READ_ONLY = exports.FIRST_KEY_INDEX = void 0;
4
+ exports.FIRST_KEY_INDEX = 1;
5
+ exports.IS_READ_ONLY = true;
6
+ function transformArguments(key) {
7
+ return ['TOPK.LIST', key, 'WITHCOUNT'];
8
+ }
9
+ exports.transformArguments = transformArguments;
10
+ function transformReply(rawReply) {
11
+ const reply = [];
12
+ for (let i = 0; i < rawReply.length; i++) {
13
+ reply.push({
14
+ item: rawReply[i],
15
+ count: rawReply[++i]
16
+ });
17
+ }
18
+ return reply;
19
+ }
20
+ exports.transformReply = transformReply;
@@ -0,0 +1,5 @@
1
+ import { RedisCommandArguments } from '@redis/client/dist/lib/commands';
2
+ export declare const FIRST_KEY_INDEX = 1;
3
+ export declare const IS_READ_ONLY = true;
4
+ export declare function transformArguments(key: string, items: string | Array<string>): RedisCommandArguments;
5
+ export declare function transformReply(): Array<number>;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformArguments = exports.IS_READ_ONLY = exports.FIRST_KEY_INDEX = void 0;
4
+ const generic_transformers_1 = require("@redis/client/dist/lib/commands/generic-transformers");
5
+ exports.FIRST_KEY_INDEX = 1;
6
+ exports.IS_READ_ONLY = true;
7
+ function transformArguments(key, items) {
8
+ return (0, generic_transformers_1.pushVerdictArguments)(['TOPK.QUERY', key], items);
9
+ }
10
+ exports.transformArguments = transformArguments;
@@ -0,0 +1,10 @@
1
+ export declare const FIRST_KEY_INDEX = 1;
2
+ export declare const IS_READ_ONLY = true;
3
+ interface ReserveOptions {
4
+ width: number;
5
+ depth: number;
6
+ decay: number;
7
+ }
8
+ export declare function transformArguments(key: string, topK: number, options?: ReserveOptions): Array<string>;
9
+ export declare function transformReply(): 'OK';
10
+ export {};
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformArguments = exports.IS_READ_ONLY = exports.FIRST_KEY_INDEX = void 0;
4
+ exports.FIRST_KEY_INDEX = 1;
5
+ exports.IS_READ_ONLY = true;
6
+ function transformArguments(key, topK, options) {
7
+ const args = ['TOPK.RESERVE', key, topK.toString()];
8
+ if (options) {
9
+ args.push(options.width.toString(), options.depth.toString(), options.decay.toString());
10
+ }
11
+ return args;
12
+ }
13
+ exports.transformArguments = transformArguments;
@@ -0,0 +1,27 @@
1
+ import * as ADD from './ADD';
2
+ import * as COUNT from './COUNT';
3
+ import * as INCRBY from './INCRBY';
4
+ import * as INFO from './INFO';
5
+ import * as LIST_WITHCOUNT from './LIST_WITHCOUNT';
6
+ import * as LIST from './LIST';
7
+ import * as QUERY from './QUERY';
8
+ import * as RESERVE from './RESERVE';
9
+ declare const _default: {
10
+ ADD: typeof ADD;
11
+ add: typeof ADD;
12
+ COUNT: typeof COUNT;
13
+ count: typeof COUNT;
14
+ INCRBY: typeof INCRBY;
15
+ incrBy: typeof INCRBY;
16
+ INFO: typeof INFO;
17
+ info: typeof INFO;
18
+ LIST_WITHCOUNT: typeof LIST_WITHCOUNT;
19
+ listWithCount: typeof LIST_WITHCOUNT;
20
+ LIST: typeof LIST;
21
+ list: typeof LIST;
22
+ QUERY: typeof QUERY;
23
+ query: typeof QUERY;
24
+ RESERVE: typeof RESERVE;
25
+ reserve: typeof RESERVE;
26
+ };
27
+ export default _default;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ADD = require("./ADD");
4
+ const COUNT = require("./COUNT");
5
+ const INCRBY = require("./INCRBY");
6
+ const INFO = require("./INFO");
7
+ const LIST_WITHCOUNT = require("./LIST_WITHCOUNT");
8
+ const LIST = require("./LIST");
9
+ const QUERY = require("./QUERY");
10
+ const RESERVE = require("./RESERVE");
11
+ exports.default = {
12
+ ADD,
13
+ add: ADD,
14
+ COUNT,
15
+ count: COUNT,
16
+ INCRBY,
17
+ incrBy: INCRBY,
18
+ INFO,
19
+ info: INFO,
20
+ LIST_WITHCOUNT,
21
+ listWithCount: LIST_WITHCOUNT,
22
+ LIST,
23
+ list: LIST,
24
+ QUERY,
25
+ query: QUERY,
26
+ RESERVE,
27
+ reserve: RESERVE
28
+ };
@@ -0,0 +1 @@
1
+ export { default } from './commands';
package/dist/index.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = void 0;
4
+ var commands_1 = require("./commands");
5
+ Object.defineProperty(exports, "default", { enumerable: true, get: function () { return commands_1.default; } });
package/package.json ADDED
@@ -0,0 +1,29 @@
1
+ {
2
+ "name": "@redis/bloom",
3
+ "version": "1.0.2",
4
+ "license": "MIT",
5
+ "main": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
+ "files": [
8
+ "dist/"
9
+ ],
10
+ "scripts": {
11
+ "test": "nyc -r text-summary -r lcov mocha -r source-map-support/register -r ts-node/register './lib/**/*.spec.ts'",
12
+ "build": "tsc",
13
+ "documentation": "typedoc"
14
+ },
15
+ "peerDependencies": {
16
+ "@redis/client": "^1.0.0"
17
+ },
18
+ "devDependencies": {
19
+ "@istanbuljs/nyc-config-typescript": "^1.0.2",
20
+ "@redis/test-utils": "*",
21
+ "@types/node": "^17.0.31",
22
+ "nyc": "^15.1.0",
23
+ "release-it": "^15.0.0",
24
+ "source-map-support": "^0.5.21",
25
+ "ts-node": "^10.7.0",
26
+ "typedoc": "^0.22.15",
27
+ "typescript": "^4.6.4"
28
+ }
29
+ }