1 | import { Counter, Histogram } from 'prom-client';
|
2 | import { RabbitmqClient } from './RabbitmqClient';
|
3 | import { RabbitmqConsumerConfig, RabbitmqClientConfig } from './RabbitmqConfig';
|
4 | import { RepliesConsume } from './RabbitmqClient';
|
5 | import { RabbitmqConsumerHandler, Message } from './RabbitmqConsumerHandler';
|
6 | export declare class RabbitmqConsumer extends RabbitmqClient {
|
7 | consumeFailuresDelayed: Counter.Internal;
|
8 | consumeFailuresDLQ: Counter.Internal;
|
9 | consumeFailures: Counter.Internal;
|
10 | consumeDurationHistogram: Histogram.Internal;
|
11 | protected consumerConfig: RabbitmqConsumerConfig;
|
12 | protected messageHandler: RabbitmqConsumerHandler;
|
13 | constructor(clientConfig: RabbitmqClientConfig, name: string, consumerConfig: RabbitmqConsumerConfig, handler: RabbitmqConsumerHandler);
|
14 | init(): Promise<void>;
|
15 | /**
|
16 | * Subscribe to a queue
|
17 | */
|
18 | subscribe(queueName: string, consumerConfig: RabbitmqConsumerConfig): Promise<RepliesConsume>;
|
19 | handleMessage(message: Message): Promise<void>;
|
20 | sendMessageToDlq(message: Message): void;
|
21 | sendMessageToDelayedQueue(message: Message, retriesCount: number, e: Error): void;
|
22 | stringyifyMessageContent(message: Message): string;
|
23 | /**
|
24 | *
|
25 | * @param retriesCount number
|
26 | * @reutrn number in milliseconds
|
27 | */
|
28 | getTtl(retriesCount?: number): number;
|
29 | allowRetry(retriesCount: number): boolean;
|
30 | close(): Promise<void>;
|
31 | }
|