2026-01-16 11:14:35 +01:00
|
|
|
import { ConsumeMessage } from "amqplib";
|
2026-01-13 15:41:59 +01:00
|
|
|
import { DomainEvent, DomainEventSubscriber } from "./DomainEvent";
|
|
|
|
|
|
|
|
|
|
export interface EventBus {
|
|
|
|
|
publish(events: Array<DomainEvent>): Promise<void>;
|
2026-01-16 11:14:35 +01:00
|
|
|
// Sacado de NEKI, posiblemente no haga falta
|
2026-01-13 15:41:59 +01:00
|
|
|
addSubscribers(subscribers: Array<DomainEventSubscriber<DomainEvent>>): void;
|
2026-01-16 11:14:35 +01:00
|
|
|
|
|
|
|
|
consume(queue: string, callback: (msg: ConsumeMessage | null) => void): void;
|
2026-01-30 10:42:48 +01:00
|
|
|
ack(msg: ConsumeMessage): Promise<void>;
|
|
|
|
|
nack(msg: ConsumeMessage): Promise<void>;
|
2026-01-13 15:41:59 +01:00
|
|
|
}
|