UNPKG

@boringnode/bus

Version:

A simple and lean driver-based service bus implementation

26 lines (22 loc) 896 B
import { RedisTransportConfig, TransportEncoder, Transport, Serializable, SubscribeHandler } from '../types/main.js'; import 'ioredis'; import 'mqtt'; /** * @boringnode/bus * * @license MIT * @copyright BoringNode */ declare function redis(config: RedisTransportConfig, encoder?: TransportEncoder): () => RedisTransport; declare class RedisTransport implements Transport { #private; constructor(path: string, encoder?: TransportEncoder); constructor(options: RedisTransportConfig, encoder?: TransportEncoder); setId(id: string): Transport; disconnect(): Promise<void>; publish(channel: string, message: Serializable): Promise<void>; subscribe<T extends Serializable>(channel: string, handler: SubscribeHandler<T>): Promise<void>; onReconnect(callback: () => void): void; unsubscribe(channel: string): Promise<void>; } export { RedisTransport, redis };