UNPKG

@jbagatta/johnny-cache

Version:

A robust distributed dictionary for coordinating and caching expensive operations in a distributed environment

23 lines (22 loc) 946 B
import { NatsConnection } from "nats"; import { BuildCompleteSignal, MessageBroker } from "../../ports/message-broker"; export declare class JetstreamMessageBroker implements MessageBroker { private readonly client; private readonly stream; constructor(client: NatsConnection, stream: string); 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 class NatsConnectionOptions { urls: string[]; stream: string; token?: string; userPass?: { user: string; pass: string; }; } export declare function createJetstreamMessageBroker(natsConnectionOptions: NatsConnectionOptions): Promise<JetstreamMessageBroker>;