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