UNPKG

johnycash

Version:

Easy distributed caching for Node.js

28 lines 1.34 kB
import { CacheSetting, LockCacheSettings, LockerOptions } from './cache-settings'; import { Lock } from 'redlock'; import { Logger } from './logger'; export declare class JohnyCacheService { private instanceId; private logger; private memoryCache; private redis; private redisPubSubServices; private redisCache; private redlock; private defaultLockOptions; private defaultRedlock; constructor(redisConnectionString: string, logger?: Logger, defaultLockOptions?: LockerOptions); set(cacheSettings: CacheSetting, value: any): Promise<void>; get(cacheSettings: CacheSetting): Promise<any>; deleteMulti(keys: string[]): Promise<void>; deleteByKey(key: string, localTtl?: number): Promise<void>; delete(cacheSettings: CacheSetting): Promise<void>; getOrSetCache<T>(cacheSettings: CacheSetting, promise: () => Promise<T>, forceRefresh?: boolean): Promise<T>; acquireLock(cacheSettings: LockCacheSettings): Promise<Lock | null>; releaseLock(lock: Lock): Promise<void>; sendDeleteRemoteKeysEvent(keys: string[]): Promise<void>; sendRefreshRemoteKeysEvent(keys: string[], ttl: number): Promise<void>; handleDeleteRemoteKeysEvent(event: any): Promise<void>; handleRefreshRemoteKeysEvent(event: any): Promise<void>; } //# sourceMappingURL=johny-cache.d.ts.map