///
import { CacheInMemoryProviderService, InMemoryProviderClient } from '../in-memory-provider';
export interface ICacheService {
set(key: string, value: string, options?: CachingConfig): any;
get(key: string): any;
del(key: string): any;
delByPattern(pattern: string): any;
keys(pattern?: string): any;
getStatus(): any;
cacheEnabled(): any;
sadd(key: string, ...members: (string | number | Buffer)[]): Promise;
eval(script: string, keys: string[], args: (string | number | Buffer)[]): Promise;
}
export type CachingConfig = {
ttl?: number;
};
export declare class CacheService implements ICacheService {
private cacheInMemoryProviderService;
private cacheTtl;
private readonly TTL_VARIANT_PERCENTAGE;
constructor(cacheInMemoryProviderService: CacheInMemoryProviderService);
initialize(): Promise;
get client(): InMemoryProviderClient;
getStatus(): string;
getTtl(): number;
cacheEnabled(): boolean;
set(key: string, value: string, options?: CachingConfig): Promise;
setIfNotExist(key: string, value: string, options?: CachingConfig): Promise;
setQuery(key: string, value: string, options?: CachingConfig): Promise;
keys(pattern?: string): Promise;
get(key: string): Promise;
del(key: string | string[]): Promise;
delQuery(key: string): Promise;
private capturedExec;
delByPattern(pattern: string): Promise;
private getTtlInSeconds;
sadd(key: string, ...members: (string | number | Buffer)[]): Promise;
eval(script: string, keys: string[], args: (string | number | Buffer)[]): Promise;
}
export declare function splitKey(key: string): {
credentials: string;
query: string;
};
//# sourceMappingURL=cache.service.d.ts.map