redis-smq
Version:
A high-performance, reliable, and scalable message queue for Node.js.
25 lines • 1.24 kB
TypeScript
import { MessageEnvelope } from '../../../message/message-envelope.js';
import { ICallback, ILogger, Runnable } from 'redis-smq-common';
import { IQueueParsedParams } from '../../../queue-manager/index.js';
import { IConsumerParsedOptions } from '../../types/index.js';
export type TMessageAcknowledgerEvent = {
'messageAcknowledger.error': (error: unknown) => void;
'messageAcknowledger.messageAcknowledged': (message: MessageEnvelope) => void;
};
export declare class MessageAcknowledger extends Runnable<TMessageAcknowledgerEvent> {
private pending;
private timer;
private pendingCallbacks;
protected readonly consumerId: string;
protected readonly queue: IQueueParsedParams;
protected readonly logger: ILogger;
protected readonly useBatchAcks: boolean;
protected readonly batchSize: number;
protected readonly batchTimeoutMs: number;
constructor(queue: IQueueParsedParams, consumerId: string, logger: ILogger, consumerOptions: IConsumerParsedOptions);
add(message: MessageEnvelope): void;
flush(cb?: ICallback<void>): void;
protected goingDown(): Array<(cb: ICallback<void>) => void>;
private handleAcknowledgementResult;
}
//# sourceMappingURL=message-acknowledger.d.ts.map