UNPKG

@cashfarm/plow

Version:

Library for validating input data and parameters

16 lines (15 loc) 739 B
import { ConcreteType } from '@cashfarm/lang'; import { IDomainEvent } from '../domain'; import { IEventBus } from '../eventSourcing/iEventBus'; import { IMessageTransport } from './transports/iMessageTransport'; import { IHandlerFunction } from './iHandlerFunction'; export declare class EventBus implements IEventBus { private serviceName; private transport; constructor(serviceName: string, transport: IMessageTransport); subscribeToTopic(topic: string, handler: IHandlerFunction): void; subscribe(evtClass: IDomainEvent & ConcreteType<{}>, handler: Object): void; unsubscribe(evtClass: IDomainEvent & ConcreteType<{}>, handler: any): void; publish(evt: IDomainEvent): void; private getEventName(evt); }