@inv2/common
Version:
A common module for v2
16 lines (15 loc) • 486 B
TypeScript
import { Connection } from "amqplib";
import { Subjects } from "../subjects";
interface Event {
subject: Subjects;
data: any;
}
export declare abstract class Publisher<T extends Event> {
protected connection: Connection;
protected exchangeName: string;
protected exchangeType: string;
abstract subject: T['subject'];
constructor(connection: Connection, exchangeName?: string, exchangeType?: string);
publish(data: T['data']): Promise<void>;
}
export {};