UNPKG

acelga-bus

Version:

An extensible typescript message bus with support for middlewares

16 lines (15 loc) 725 B
import { Constructable, EventSubscriptionCallback, IEventBus, IMiddleware } from './interfaces'; import { Publisher } from './publisher'; import { Dispatcher } from './dispatcher'; export declare class EventBus<T = {}> implements IEventBus<T> { defaultPublisher: Publisher<T>; dispatcher: Set<Dispatcher<T>>; defaultReceiver: Dispatcher<T>; createPublisher(): Publisher<T>; createReceiver(): Dispatcher<T>; protected deliver(event: T): Promise<void>; publish(event: T): Promise<void>; on<T1 extends T>(eventType: Constructable<T1>, callback: EventSubscriptionCallback<T1>): void; pushMiddleware(middleware: IMiddleware<T>): void; unshiftMiddleware(middleware: IMiddleware<T>): void; }