import { DomainEventMapping } from '../infrastructure/EventBus/DomainEventMapping' ; import { DomainEvent } from './DomainEvent' ; import { DomainEventSubscriber } from './DomainEventSubscriber' ; export interface EventBus { setDomainEventMapping ( domainEventMapping ) : void ; publish ( events ) : Promise < void > ; addSubscribers ( subscribers ) : void ; start ( ) : Promise < void > ; }