@jbagatta/johnny-cache
Version:
A robust distributed dictionary for coordinating and caching expensive operations in a distributed environment
14 lines (13 loc) • 766 B
TypeScript
import { Redis } from "ioredis";
import { RedisConnectionOptions } from "../data-stores/redis-data-store";
import { BuildCompleteSignal, MessageBroker } from "../../ports/message-broker";
export declare class RedisMessageBroker implements MessageBroker {
private readonly client;
constructor(client: Redis);
waitForSignal(signalId: string, timeoutMs: number): Promise<BuildCompleteSignal>;
publishSignal(signal: BuildCompleteSignal): Promise<void>;
publishKeyDeleted(namespace: string, key: string): Promise<void>;
onKeyDeleted(namespace: string, handle: (key: string) => void): Promise<void>;
close(): Promise<void>;
}
export declare function createRedisMessageBroker(redisConnectionOptions: RedisConnectionOptions): RedisMessageBroker;