@warlock.js/cache 4.0.47 → 4.0.59

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 (101) hide show
  1. package/cjs/cache-manager.d.ts +159 -0
  2. package/cjs/cache-manager.d.ts.map +1 -0
  3. package/cjs/cache-manager.js +312 -0
  4. package/cjs/cache-manager.js.map +1 -0
  5. package/cjs/drivers/base-cache-driver.d.ts +144 -0
  6. package/cjs/drivers/base-cache-driver.d.ts.map +1 -0
  7. package/cjs/drivers/base-cache-driver.js +308 -0
  8. package/cjs/drivers/base-cache-driver.js.map +1 -0
  9. package/cjs/drivers/file-cache-driver.d.ts +45 -0
  10. package/cjs/drivers/file-cache-driver.d.ts.map +1 -0
  11. package/cjs/drivers/file-cache-driver.js +133 -0
  12. package/cjs/drivers/file-cache-driver.js.map +1 -0
  13. package/cjs/drivers/index.d.ts +8 -0
  14. package/cjs/drivers/index.d.ts.map +1 -0
  15. package/cjs/drivers/lru-memory-cache-driver.d.ts +98 -0
  16. package/cjs/drivers/lru-memory-cache-driver.d.ts.map +1 -0
  17. package/cjs/drivers/lru-memory-cache-driver.js +252 -0
  18. package/cjs/drivers/lru-memory-cache-driver.js.map +1 -0
  19. package/cjs/drivers/memory-cache-driver.d.ts +82 -0
  20. package/cjs/drivers/memory-cache-driver.d.ts.map +1 -0
  21. package/cjs/drivers/memory-cache-driver.js +218 -0
  22. package/cjs/drivers/memory-cache-driver.js.map +1 -0
  23. package/cjs/drivers/memory-extended-cache-driver.d.ts +13 -0
  24. package/cjs/drivers/memory-extended-cache-driver.d.ts.map +1 -0
  25. package/cjs/drivers/memory-extended-cache-driver.js +25 -0
  26. package/cjs/drivers/memory-extended-cache-driver.js.map +1 -0
  27. package/cjs/drivers/null-cache-driver.d.ts +58 -0
  28. package/cjs/drivers/null-cache-driver.d.ts.map +1 -0
  29. package/cjs/drivers/null-cache-driver.js +84 -0
  30. package/cjs/drivers/null-cache-driver.js.map +1 -0
  31. package/cjs/drivers/redis-cache-driver.d.ts +57 -0
  32. package/cjs/drivers/redis-cache-driver.d.ts.map +1 -0
  33. package/cjs/drivers/redis-cache-driver.js +222 -0
  34. package/cjs/drivers/redis-cache-driver.js.map +1 -0
  35. package/cjs/index.d.ts +6 -0
  36. package/cjs/index.d.ts.map +1 -0
  37. package/cjs/index.js +1 -42
  38. package/cjs/index.js.map +1 -1
  39. package/cjs/tagged-cache.d.ts +77 -0
  40. package/cjs/tagged-cache.d.ts.map +1 -0
  41. package/cjs/tagged-cache.js +160 -0
  42. package/cjs/tagged-cache.js.map +1 -0
  43. package/cjs/types.d.ts +381 -0
  44. package/cjs/types.d.ts.map +1 -0
  45. package/cjs/types.js +36 -0
  46. package/cjs/types.js.map +1 -0
  47. package/cjs/utils.d.ts +50 -0
  48. package/cjs/utils.d.ts.map +1 -0
  49. package/cjs/utils.js +55 -0
  50. package/cjs/utils.js.map +1 -0
  51. package/esm/cache-manager.d.ts +159 -0
  52. package/esm/cache-manager.d.ts.map +1 -0
  53. package/esm/cache-manager.js +312 -0
  54. package/esm/cache-manager.js.map +1 -0
  55. package/esm/drivers/base-cache-driver.d.ts +144 -0
  56. package/esm/drivers/base-cache-driver.d.ts.map +1 -0
  57. package/esm/drivers/base-cache-driver.js +308 -0
  58. package/esm/drivers/base-cache-driver.js.map +1 -0
  59. package/esm/drivers/file-cache-driver.d.ts +45 -0
  60. package/esm/drivers/file-cache-driver.d.ts.map +1 -0
  61. package/esm/drivers/file-cache-driver.js +133 -0
  62. package/esm/drivers/file-cache-driver.js.map +1 -0
  63. package/esm/drivers/index.d.ts +8 -0
  64. package/esm/drivers/index.d.ts.map +1 -0
  65. package/esm/drivers/lru-memory-cache-driver.d.ts +98 -0
  66. package/esm/drivers/lru-memory-cache-driver.d.ts.map +1 -0
  67. package/esm/drivers/lru-memory-cache-driver.js +252 -0
  68. package/esm/drivers/lru-memory-cache-driver.js.map +1 -0
  69. package/esm/drivers/memory-cache-driver.d.ts +82 -0
  70. package/esm/drivers/memory-cache-driver.d.ts.map +1 -0
  71. package/esm/drivers/memory-cache-driver.js +218 -0
  72. package/esm/drivers/memory-cache-driver.js.map +1 -0
  73. package/esm/drivers/memory-extended-cache-driver.d.ts +13 -0
  74. package/esm/drivers/memory-extended-cache-driver.d.ts.map +1 -0
  75. package/esm/drivers/memory-extended-cache-driver.js +25 -0
  76. package/esm/drivers/memory-extended-cache-driver.js.map +1 -0
  77. package/esm/drivers/null-cache-driver.d.ts +58 -0
  78. package/esm/drivers/null-cache-driver.d.ts.map +1 -0
  79. package/esm/drivers/null-cache-driver.js +84 -0
  80. package/esm/drivers/null-cache-driver.js.map +1 -0
  81. package/esm/drivers/redis-cache-driver.d.ts +57 -0
  82. package/esm/drivers/redis-cache-driver.d.ts.map +1 -0
  83. package/esm/drivers/redis-cache-driver.js +222 -0
  84. package/esm/drivers/redis-cache-driver.js.map +1 -0
  85. package/esm/index.d.ts +6 -0
  86. package/esm/index.d.ts.map +1 -0
  87. package/esm/index.js +1 -7
  88. package/esm/index.js.map +1 -1
  89. package/esm/tagged-cache.d.ts +77 -0
  90. package/esm/tagged-cache.d.ts.map +1 -0
  91. package/esm/tagged-cache.js +160 -0
  92. package/esm/tagged-cache.js.map +1 -0
  93. package/esm/types.d.ts +381 -0
  94. package/esm/types.d.ts.map +1 -0
  95. package/esm/types.js +36 -0
  96. package/esm/types.js.map +1 -0
  97. package/esm/utils.d.ts +50 -0
  98. package/esm/utils.d.ts.map +1 -0
  99. package/esm/utils.js +55 -0
  100. package/esm/utils.js.map +1 -0
  101. package/package.json +38 -51
@@ -0,0 +1,159 @@
1
+ import type { CacheConfigurations, CacheDriver, CacheEventHandler, CacheEventType, CacheKey, DriverClass, TaggedCacheDriver } from "./types";
2
+ export declare class CacheManager implements CacheDriver<any, any> {
3
+ /**
4
+ * Cache Driver
5
+ */
6
+ currentDriver?: CacheDriver<any, any>;
7
+ /**
8
+ * Loaded drivers
9
+ */
10
+ loadedDrivers: Record<string, CacheDriver<any, any>>;
11
+ /**
12
+ * Configurations list
13
+ */
14
+ protected configurations: CacheConfigurations;
15
+ /**
16
+ * Global event listeners
17
+ */
18
+ protected globalEventListeners: Map<CacheEventType, Set<CacheEventHandler>>;
19
+ /**
20
+ * {@inheritdoc}
21
+ */
22
+ name: string;
23
+ /**
24
+ * {@inheritdoc}
25
+ */
26
+ get client(): any;
27
+ /**
28
+ * Set the cache configurations
29
+ */
30
+ setCacheConfigurations(configurations: CacheConfigurations): void;
31
+ /**
32
+ * Use the given driver
33
+ */
34
+ use(driver: string | CacheDriver<any, any>): Promise<this>;
35
+ /**
36
+ * Ensure driver is initialized before operations
37
+ */
38
+ protected ensureDriverInitialized(): void;
39
+ /**
40
+ * {@inheritdoc}
41
+ */
42
+ get(key: CacheKey): Promise<any>;
43
+ /**
44
+ * Set a value in the cache
45
+ *
46
+ * @param key The cache key, could be an object or string
47
+ * @param value The value to be stored in the cache
48
+ * @param ttl The time to live in seconds
49
+ */
50
+ set(key: CacheKey, value: any, ttl?: number): Promise<any>;
51
+ /**
52
+ * {@inheritdoc}
53
+ */
54
+ remove(key: CacheKey): Promise<void>;
55
+ /**
56
+ * {@inheritdoc}
57
+ */
58
+ removeNamespace(namespace: string): Promise<any>;
59
+ /**
60
+ * {@inheritdoc}
61
+ */
62
+ flush(): Promise<void>;
63
+ /**
64
+ * {@inheritdoc}
65
+ */
66
+ connect(): Promise<any>;
67
+ /**
68
+ * {@inheritdoc}
69
+ */
70
+ parseKey(key: CacheKey): string;
71
+ /**
72
+ * {@inheritdoc}
73
+ */
74
+ get options(): any;
75
+ /**
76
+ * {@inheritdoc}
77
+ */
78
+ setOptions(options: Record<string, any>): any;
79
+ /**
80
+ * Get an instance of the cache driver
81
+ */
82
+ driver(driverName: string): Promise<CacheDriver<any, any>>;
83
+ /**
84
+ * Initialize the cache manager and pick the default driver
85
+ */
86
+ init(): Promise<void>;
87
+ /**
88
+ * Load the given cache driver name
89
+ */
90
+ load(driver: string): Promise<CacheDriver<any, any>>;
91
+ /**
92
+ * Register and bind a driver
93
+ */
94
+ registerDriver(driverName: string, driverClass: DriverClass): void;
95
+ /**
96
+ * Disconnect the cache manager
97
+ */
98
+ disconnect(): Promise<void>;
99
+ /**
100
+ * {@inheritdoc}
101
+ */
102
+ has(key: CacheKey): Promise<boolean>;
103
+ /**
104
+ * {@inheritdoc}
105
+ */
106
+ remember(key: CacheKey, ttl: number, callback: () => Promise<any>): Promise<any>;
107
+ /**
108
+ * {@inheritdoc}
109
+ */
110
+ pull(key: CacheKey): Promise<any | null>;
111
+ /**
112
+ * {@inheritdoc}
113
+ */
114
+ forever(key: CacheKey, value: any): Promise<any>;
115
+ /**
116
+ * {@inheritdoc}
117
+ */
118
+ increment(key: CacheKey, value?: number): Promise<number>;
119
+ /**
120
+ * {@inheritdoc}
121
+ */
122
+ decrement(key: CacheKey, value?: number): Promise<number>;
123
+ /**
124
+ * {@inheritdoc}
125
+ */
126
+ many(keys: CacheKey[]): Promise<any[]>;
127
+ /**
128
+ * {@inheritdoc}
129
+ */
130
+ setMany(items: Record<string, any>, ttl?: number): Promise<void>;
131
+ /**
132
+ * Register a global event listener (applies to all drivers)
133
+ */
134
+ on(event: CacheEventType, handler: CacheEventHandler): this;
135
+ /**
136
+ * Remove a global event listener
137
+ */
138
+ off(event: CacheEventType, handler: CacheEventHandler): this;
139
+ /**
140
+ * Register a one-time global event listener
141
+ */
142
+ once(event: CacheEventType, handler: CacheEventHandler): this;
143
+ /**
144
+ * Attach global listeners to a driver
145
+ */
146
+ protected attachGlobalListeners(driver: CacheDriver<any, any>): void;
147
+ /**
148
+ * Set if not exists (atomic operation)
149
+ * Returns true if key was set, false if key already existed
150
+ * Note: Only supported by drivers that implement setNX (e.g., Redis)
151
+ */
152
+ setNX(key: CacheKey, value: any, ttl?: number): Promise<boolean>;
153
+ /**
154
+ * Create a tagged cache instance for the given tags
155
+ */
156
+ tags(tags: string[]): TaggedCacheDriver;
157
+ }
158
+ export declare const cache: CacheManager;
159
+ //# sourceMappingURL=cache-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache-manager.d.ts","sourceRoot":"","sources":["../src/cache-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,312 @@
1
+ 'use strict';var types=require('./types.js');class CacheManager {
2
+ /**
3
+ * Cache Driver
4
+ */
5
+ currentDriver;
6
+ /**
7
+ * Loaded drivers
8
+ */
9
+ loadedDrivers = {};
10
+ /**
11
+ * Configurations list
12
+ */
13
+ configurations = {
14
+ drivers: {},
15
+ options: {},
16
+ };
17
+ /**
18
+ * Global event listeners
19
+ */
20
+ globalEventListeners = new Map();
21
+ /**
22
+ * {@inheritdoc}
23
+ */
24
+ name = "cacheManager";
25
+ /**
26
+ * {@inheritdoc}
27
+ */
28
+ get client() {
29
+ return this.currentDriver?.client;
30
+ }
31
+ /**
32
+ * Set the cache configurations
33
+ */
34
+ setCacheConfigurations(configurations) {
35
+ this.configurations.default = configurations.default;
36
+ this.configurations.drivers = configurations.drivers;
37
+ this.configurations.options = configurations.options;
38
+ }
39
+ /**
40
+ * Use the given driver
41
+ */
42
+ async use(driver) {
43
+ if (typeof driver === "string") {
44
+ const driverInstance = await this.load(driver);
45
+ if (!driverInstance) {
46
+ throw new types.CacheConfigurationError(`Cache driver ${driver} is not found, please declare it in the cache drivers in the configurations list.`);
47
+ }
48
+ driver = driverInstance;
49
+ }
50
+ // Attach global listeners to the new driver
51
+ this.attachGlobalListeners(driver);
52
+ this.currentDriver = driver;
53
+ return this;
54
+ }
55
+ /**
56
+ * Ensure driver is initialized before operations
57
+ */
58
+ ensureDriverInitialized() {
59
+ if (!this.currentDriver) {
60
+ throw new types.CacheDriverNotInitializedError();
61
+ }
62
+ }
63
+ /**
64
+ * {@inheritdoc}
65
+ */
66
+ async get(key) {
67
+ this.ensureDriverInitialized();
68
+ return this.currentDriver.get(key);
69
+ }
70
+ /**
71
+ * Set a value in the cache
72
+ *
73
+ * @param key The cache key, could be an object or string
74
+ * @param value The value to be stored in the cache
75
+ * @param ttl The time to live in seconds
76
+ */
77
+ async set(key, value, ttl) {
78
+ this.ensureDriverInitialized();
79
+ return this.currentDriver.set(key, value, ttl);
80
+ }
81
+ /**
82
+ * {@inheritdoc}
83
+ */
84
+ async remove(key) {
85
+ this.ensureDriverInitialized();
86
+ return this.currentDriver.remove(key);
87
+ }
88
+ /**
89
+ * {@inheritdoc}
90
+ */
91
+ async removeNamespace(namespace) {
92
+ this.ensureDriverInitialized();
93
+ return this.currentDriver.removeNamespace(namespace);
94
+ }
95
+ /**
96
+ * {@inheritdoc}
97
+ */
98
+ async flush() {
99
+ this.ensureDriverInitialized();
100
+ return this.currentDriver.flush();
101
+ }
102
+ /**
103
+ * {@inheritdoc}
104
+ */
105
+ async connect() {
106
+ this.ensureDriverInitialized();
107
+ return this.currentDriver.connect();
108
+ }
109
+ /**
110
+ * {@inheritdoc}
111
+ */
112
+ parseKey(key) {
113
+ this.ensureDriverInitialized();
114
+ return this.currentDriver.parseKey(key);
115
+ }
116
+ /**
117
+ * {@inheritdoc}
118
+ */
119
+ get options() {
120
+ this.ensureDriverInitialized();
121
+ return this.currentDriver.options;
122
+ }
123
+ /**
124
+ * {@inheritdoc}
125
+ */
126
+ setOptions(options) {
127
+ this.ensureDriverInitialized();
128
+ return this.currentDriver.setOptions(options || {});
129
+ }
130
+ /**
131
+ * Get an instance of the cache driver
132
+ */
133
+ async driver(driverName) {
134
+ return this.loadedDrivers[driverName] || (await this.load(driverName));
135
+ }
136
+ /**
137
+ * Initialize the cache manager and pick the default driver
138
+ */
139
+ async init() {
140
+ const defaultCacheDriverName = this.configurations.default;
141
+ if (!defaultCacheDriverName) {
142
+ return;
143
+ }
144
+ const driver = await this.driver(defaultCacheDriverName);
145
+ await this.use(driver);
146
+ }
147
+ /**
148
+ * Load the given cache driver name
149
+ */
150
+ async load(driver) {
151
+ if (this.loadedDrivers[driver])
152
+ return this.loadedDrivers[driver];
153
+ const Driver = this.configurations.drivers[driver];
154
+ if (!Driver) {
155
+ throw new types.CacheConfigurationError(`Cache driver ${driver} is not found, please declare it in the cache drivers in the configurations list.`);
156
+ }
157
+ const driverInstance = new Driver();
158
+ driverInstance.setOptions(this.configurations.options[driver] || {});
159
+ await driverInstance.connect();
160
+ // Attach global listeners to newly loaded driver
161
+ this.attachGlobalListeners(driverInstance);
162
+ this.loadedDrivers[driver] = driverInstance;
163
+ return driverInstance;
164
+ }
165
+ /**
166
+ * Register and bind a driver
167
+ */
168
+ registerDriver(driverName, driverClass) {
169
+ this.configurations.drivers[driverName] =
170
+ driverClass;
171
+ }
172
+ /**
173
+ * Disconnect the cache manager
174
+ */
175
+ async disconnect() {
176
+ if (this.currentDriver) {
177
+ await this.currentDriver.disconnect();
178
+ }
179
+ }
180
+ /**
181
+ * {@inheritdoc}
182
+ */
183
+ async has(key) {
184
+ this.ensureDriverInitialized();
185
+ return this.currentDriver.has(key);
186
+ }
187
+ /**
188
+ * {@inheritdoc}
189
+ */
190
+ async remember(key, ttl, callback) {
191
+ this.ensureDriverInitialized();
192
+ return this.currentDriver.remember(key, ttl, callback);
193
+ }
194
+ /**
195
+ * {@inheritdoc}
196
+ */
197
+ async pull(key) {
198
+ this.ensureDriverInitialized();
199
+ return this.currentDriver.pull(key);
200
+ }
201
+ /**
202
+ * {@inheritdoc}
203
+ */
204
+ async forever(key, value) {
205
+ this.ensureDriverInitialized();
206
+ return this.currentDriver.forever(key, value);
207
+ }
208
+ /**
209
+ * {@inheritdoc}
210
+ */
211
+ async increment(key, value) {
212
+ this.ensureDriverInitialized();
213
+ return this.currentDriver.increment(key, value);
214
+ }
215
+ /**
216
+ * {@inheritdoc}
217
+ */
218
+ async decrement(key, value) {
219
+ this.ensureDriverInitialized();
220
+ return this.currentDriver.decrement(key, value);
221
+ }
222
+ /**
223
+ * {@inheritdoc}
224
+ */
225
+ async many(keys) {
226
+ this.ensureDriverInitialized();
227
+ return this.currentDriver.many(keys);
228
+ }
229
+ /**
230
+ * {@inheritdoc}
231
+ */
232
+ async setMany(items, ttl) {
233
+ this.ensureDriverInitialized();
234
+ return this.currentDriver.setMany(items, ttl);
235
+ }
236
+ /**
237
+ * Register a global event listener (applies to all drivers)
238
+ */
239
+ on(event, handler) {
240
+ if (!this.globalEventListeners.has(event)) {
241
+ this.globalEventListeners.set(event, new Set());
242
+ }
243
+ this.globalEventListeners.get(event).add(handler);
244
+ // Also attach to current driver if exists
245
+ if (this.currentDriver) {
246
+ this.currentDriver.on(event, handler);
247
+ }
248
+ // Attach to all loaded drivers
249
+ for (const driver of Object.values(this.loadedDrivers)) {
250
+ driver.on(event, handler);
251
+ }
252
+ return this;
253
+ }
254
+ /**
255
+ * Remove a global event listener
256
+ */
257
+ off(event, handler) {
258
+ const handlers = this.globalEventListeners.get(event);
259
+ if (handlers) {
260
+ handlers.delete(handler);
261
+ }
262
+ // Also remove from current driver
263
+ if (this.currentDriver) {
264
+ this.currentDriver.off(event, handler);
265
+ }
266
+ // Remove from all loaded drivers
267
+ for (const driver of Object.values(this.loadedDrivers)) {
268
+ driver.off(event, handler);
269
+ }
270
+ return this;
271
+ }
272
+ /**
273
+ * Register a one-time global event listener
274
+ */
275
+ once(event, handler) {
276
+ const onceHandler = async (data) => {
277
+ await handler(data);
278
+ this.off(event, onceHandler);
279
+ };
280
+ return this.on(event, onceHandler);
281
+ }
282
+ /**
283
+ * Attach global listeners to a driver
284
+ */
285
+ attachGlobalListeners(driver) {
286
+ for (const [event, handlers] of this.globalEventListeners) {
287
+ for (const handler of handlers) {
288
+ driver.on(event, handler);
289
+ }
290
+ }
291
+ }
292
+ /**
293
+ * Set if not exists (atomic operation)
294
+ * Returns true if key was set, false if key already existed
295
+ * Note: Only supported by drivers that implement setNX (e.g., Redis)
296
+ */
297
+ async setNX(key, value, ttl) {
298
+ this.ensureDriverInitialized();
299
+ if (!this.currentDriver.setNX) {
300
+ throw new Error(`setNX is not supported by the current cache driver: ${this.currentDriver.name}`);
301
+ }
302
+ return this.currentDriver.setNX(key, value, ttl);
303
+ }
304
+ /**
305
+ * Create a tagged cache instance for the given tags
306
+ */
307
+ tags(tags) {
308
+ this.ensureDriverInitialized();
309
+ return this.currentDriver.tags(tags);
310
+ }
311
+ }
312
+ const cache = new CacheManager();exports.CacheManager=CacheManager;exports.cache=cache;//# sourceMappingURL=cache-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache-manager.js","sources":["../src/cache-manager.ts"],"sourcesContent":[null],"names":["CacheConfigurationError","CacheDriverNotInitializedError"],"mappings":"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"}
@@ -0,0 +1,144 @@
1
+ import type { CacheData, CacheDriver, CacheEventData, CacheEventHandler, CacheEventType, CacheKey, CacheOperationType } from "../types";
2
+ export declare abstract class BaseCacheDriver<ClientType, Options extends Record<string, any>> implements CacheDriver<ClientType, Options> {
3
+ /**
4
+ * CLient driver
5
+ */
6
+ protected clientDriver: ClientType;
7
+ /**
8
+ * {@inheritdoc}
9
+ */
10
+ get client(): ClientType;
11
+ /**
12
+ * Set client driver
13
+ */
14
+ set client(client: ClientType);
15
+ /**
16
+ * Get the cache driver name
17
+ */
18
+ abstract name: string;
19
+ /**
20
+ * Options list
21
+ */
22
+ options: Options;
23
+ /**
24
+ * Event listeners storage
25
+ */
26
+ protected eventListeners: Map<CacheEventType, Set<CacheEventHandler>>;
27
+ /**
28
+ * {@inheritdoc}
29
+ */
30
+ parseKey(key: CacheKey): string;
31
+ /**
32
+ * {@inheritdoc}
33
+ */
34
+ setOptions(options: Options): this;
35
+ /**
36
+ * Register an event listener
37
+ */
38
+ on(event: CacheEventType, handler: CacheEventHandler): this;
39
+ /**
40
+ * Remove an event listener
41
+ */
42
+ off(event: CacheEventType, handler: CacheEventHandler): this;
43
+ /**
44
+ * Register a one-time event listener
45
+ */
46
+ once(event: CacheEventType, handler: CacheEventHandler): this;
47
+ /**
48
+ * Emit an event to all registered listeners
49
+ */
50
+ protected emit(event: CacheEventType, data?: Partial<CacheEventData>): Promise<void>;
51
+ /**
52
+ * {@inheritdoc}
53
+ */
54
+ abstract removeNamespace(namespace: string): Promise<any>;
55
+ /**
56
+ * {@inheritdoc}
57
+ */
58
+ abstract set(key: CacheKey, value: any, ttl?: number): Promise<any>;
59
+ /**
60
+ * {@inheritdoc}
61
+ */
62
+ abstract get(key: CacheKey): Promise<any>;
63
+ /**
64
+ * {@inheritdoc}
65
+ */
66
+ abstract remove(key: CacheKey): Promise<void>;
67
+ /**
68
+ * {@inheritdoc}
69
+ */
70
+ abstract flush(): Promise<void>;
71
+ /**
72
+ * {@inheritdoc}
73
+ */
74
+ has(key: CacheKey): Promise<boolean>;
75
+ /**
76
+ * Lock storage for preventing cache stampede
77
+ */
78
+ protected locks: Map<string, Promise<any>>;
79
+ /**
80
+ * {@inheritdoc}
81
+ */
82
+ remember(key: CacheKey, ttl: number, callback: () => Promise<any>): Promise<any>;
83
+ /**
84
+ * {@inheritdoc}
85
+ */
86
+ pull(key: CacheKey): Promise<any | null>;
87
+ /**
88
+ * {@inheritdoc}
89
+ */
90
+ forever(key: CacheKey, value: any): Promise<any>;
91
+ /**
92
+ * {@inheritdoc}
93
+ */
94
+ increment(key: CacheKey, value?: number): Promise<number>;
95
+ /**
96
+ * {@inheritdoc}
97
+ */
98
+ decrement(key: CacheKey, value?: number): Promise<number>;
99
+ /**
100
+ * {@inheritdoc}
101
+ */
102
+ many(keys: CacheKey[]): Promise<any[]>;
103
+ /**
104
+ * {@inheritdoc}
105
+ */
106
+ setMany(items: Record<string, any>, ttl?: number): Promise<void>;
107
+ /**
108
+ * Log the operation
109
+ */
110
+ protected log(operation: CacheOperationType, key?: string): any;
111
+ /**
112
+ * Log error message
113
+ */
114
+ protected logError(message: string, error?: any): void;
115
+ /**
116
+ * Get time to live value
117
+ */
118
+ get ttl(): any;
119
+ /**
120
+ * Get time to live value in milliseconds
121
+ */
122
+ getExpiresAt(ttl?: number): number;
123
+ /**
124
+ * Prepare data for storage
125
+ */
126
+ protected prepareDataForStorage(data: any, ttl?: number): CacheData;
127
+ /**
128
+ * Parse fetched data from cache
129
+ */
130
+ protected parseCachedData(key: string, data: CacheData): Promise<any>;
131
+ /**
132
+ * {@inheritdoc}
133
+ */
134
+ connect(): Promise<void>;
135
+ /**
136
+ * {@inheritdoc}
137
+ */
138
+ disconnect(): Promise<void>;
139
+ /**
140
+ * Create a tagged cache instance for the given tags
141
+ */
142
+ tags(tags: string[]): any;
143
+ }
144
+ //# sourceMappingURL=base-cache-driver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-cache-driver.d.ts","sourceRoot":"","sources":["../../src/drivers/base-cache-driver.ts"],"names":[],"mappings":"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"}