inceptum
Version:
hipages take on the foundational library for enterprise-grade apps written in NodeJS
24 lines (23 loc) • 980 B
TypeScript
import { Message, Replies, Options } from 'amqplib';
import { RabbitmqClient } from './RabbitmqClient';
import { RabbitmqConsumerConfig, RabbitmqClientConfig } from './RabbitmqConfig';
import { RabbitmqConsumerHandler } from './RabbitmqConsumerHandler';
export declare class RabbitmqConsumer extends RabbitmqClient {
protected consumerConfig: RabbitmqConsumerConfig;
protected messageHandler: RabbitmqConsumerHandler;
constructor(clientConfig: RabbitmqClientConfig, name: string, consumerConfig: any, handler: RabbitmqConsumerHandler);
init(): Promise<void>;
/**
* Subscribe to a queue
*/
subscribe(queueName: string, consumeOptions?: Options.Consume): Promise<Replies.Consume>;
handleMessage(message: Message): Promise<void>;
/**
*
* @param retriesCount number
* @reutrn number in milliseconds
*/
getTtl(retriesCount?: number): number;
allowRetry(retriesCount: number): boolean;
close(): Promise<void>;
}