@hypernetlabs/common-redis-provider
Version:
Redis provider, ready for injection, using Neverthrow
21 lines • 1.02 kB
TypeScript
import { ResultAsync } from "neverthrow";
import redis from "redis";
import Redlock from "redlock";
import { IRedisClient } from "./IRedisClient";
import { IRedisConfig } from "./IRedisConfig";
import { IRedlockWrapper } from "./IRedlockWrapper";
import { RedisError } from "./RedisError";
export declare class RedisClient implements IRedisClient {
protected redisClient: redis.RedisClient;
protected config: IRedisConfig;
protected redlock: Redlock;
constructor(redisClient: redis.RedisClient, config: IRedisConfig);
get(key: string): ResultAsync<string | null, RedisError>;
del(key: string): ResultAsync<void, RedisError>;
set(key: string, value: string, duration: number): ResultAsync<void, RedisError>;
sendCommand<T>(command: string, args: unknown[]): ResultAsync<T, RedisError>;
lock(lockNames: string | string[], ttl: number): ResultAsync<IRedlockWrapper, RedisError>;
duplicate(): IRedisClient;
getClient(): redis.RedisClient;
}
//# sourceMappingURL=RedisClient.d.ts.map