13 lines
491 B
TypeScript
13 lines
491 B
TypeScript
import { ConsumeMessage } from "amqplib";
|
|
import { DomainEvent, DomainEventSubscriber } from "./DomainEvent";
|
|
|
|
export interface EventBus {
|
|
publish(events: Array<DomainEvent>): Promise<void>;
|
|
// Sacado de NEKI, posiblemente no haga falta
|
|
addSubscribers(subscribers: Array<DomainEventSubscriber<DomainEvent>>): void;
|
|
|
|
consume(queue: string, callback: (msg: ConsumeMessage | null) => void): void;
|
|
ack(msg: ConsumeMessage): Promise<void>;
|
|
nack(msg: ConsumeMessage): Promise<void>;
|
|
}
|