UNPKG

@rewaa/event-broker

Version:

A broker for all the events that Rewaa will ever produce or consume

28 lines (27 loc) 1.73 kB
import { Message } from "@aws-sdk/client-sqs"; import { ConsumeOptions, EmitBatchPayload, EmitPayload, EventListener, IBatchEmitOptions, IBatchMessage, IEmitOptions, IEmitter, IEmitterOptions, IFailedConsumerMessages, IFailedEmitBatchMessage, IMessage, ProcessMessageOptions, Queue, Topic } from "../types"; export declare class Emitter implements IEmitter { private localEmitter; private emitter; private options; private logger; constructor(options: IEmitterOptions); bootstrap(topics?: Topic[]): Promise<void>; emit(eventName: string, options?: IEmitOptions, payload?: any): Promise<void>; emitBatch(eventName: string, messages: IBatchMessage[], options?: IBatchEmitOptions): Promise<IFailedEmitBatchMessage[]>; emitLocal(eventName: string, ...args: any[]): boolean; on(eventName: string, listener: EventListener<any>, options?: ConsumeOptions): void; removeListener(eventName: string, listener: EventListener<any>): void; removeAllListener(): void; processMessage(message: Message, options?: ProcessMessageOptions): Promise<void>; processMessages(messages: Message[], options?: ProcessMessageOptions): Promise<IFailedConsumerMessages>; startConsumers(): Promise<void>; getTopicReference(topic: Topic): string; getInternalTopicName(topic: Topic): string; getQueues(): Queue[]; getQueueReference(topic: Topic): string; getInternalQueueName(topic: Topic): string; getEmitPayload(eventName: string, options?: IEmitOptions, ...args: any[]): EmitPayload; getBatchEmitPayload(eventName: string, messages: IBatchMessage[], options?: IBatchEmitOptions): EmitBatchPayload; parseDataFromMessage<T>(receivedMessage: Message): IMessage<T>; }