nodejs-event-driven
Version:
NodeJS agnostic event driven with EventEmitter support
20 lines (19 loc) • 871 B
TypeScript
import { BaseEventBusService } from '../../../base-event-bus.service.js';
import type { Logger } from '../../../util/logger.js';
export type FsEventBusServiceConfig = {
logger?: Logger;
eventBusFsBaseDataDir?: string;
eventBusFsPollingDelayMs?: number;
};
export default class FsEventBusService<E extends string = string> extends BaseEventBusService<E> {
#private;
static readonly defaultDataRootDir: string;
constructor(config: FsEventBusServiceConfig);
on<T>(eventName: E, listener: (data: T) => void): void;
once<T>(eventName: E, listener: (data: T) => void): void;
off<T>(eventName: E, listener: (data: T) => void): void;
send(eventName: E, data?: unknown): void;
sendAndWait<T>(sendEventName: E, successEventName: E, errorEventName: E, data?: unknown): Promise<T>;
start(): Promise<void>;
stop(): Promise<void>;
}