@myria/redis-js
Version:
Interact with redis cache follow CQRS pattern
24 lines (23 loc) • 1 kB
TypeScript
import Redis from "ioredis";
import { Config } from "../config";
import { ResponseItem } from "../type";
export declare class RedisService {
private readonly redisMaster;
private readonly redisReplica;
private readonly configService;
private static instance;
private constructor();
static getInstance(configService?: Config): RedisService;
get writer(): Redis;
get reader(): Redis;
setValue(key: string, value: any, expireTime?: number): Promise<void>;
getValue<T>(key: string): Promise<T | null>;
deleteValue(key: string): Promise<number>;
deleteItemsByPrefixKey(itemPrefix?: string): Promise<string[] | undefined>;
getItemWithCache<T>(getCacheKey: () => string, getItem: () => Promise<T | null>, ttl?: number): Promise<ResponseItem<T | null>>;
getValueList(keys: string[]): Promise<(string | null)[]>;
flushAll(): Promise<string>;
getTTL(key: string): Promise<number>;
disconnect(): Promise<void>;
private verifyConnections;
}