redis-smq
Version:
A high-performance, reliable, and scalable message queue for Node.js.
38 lines • 2.3 kB
TypeScript
import { Heartbeat, ICallback, IRedisClient, Runnable } from 'redis-smq-common';
import { IHeartbeatPayload } from '../common/index.js';
import { IQueueParsedParams, TQueueExtendedParams } from '../queue-manager/index.js';
import { MessageHandlerRunner } from './message-handler-runner/message-handler-runner.js';
import { TConsumerMessageHandler } from './message-handler/types/index.js';
import { IConsumerContext } from './types/consumer-context.js';
import { IConsumerOptions, IConsumerParsedOptions, IConsumerQueuesWithStatus } from './types/index.js';
import { TConsumerEvent } from '../event-bus/index.js';
export declare class Consumer extends Runnable<TConsumerEvent> {
private static defaultOptions;
protected readonly consumerContext: IConsumerContext;
protected messageHandlerRunner: MessageHandlerRunner;
protected logger: import("redis-smq-common").ILogger;
protected heartbeat: Heartbeat<IHeartbeatPayload> | null;
protected consumerOptions: IConsumerParsedOptions;
protected redisClient: IRedisClient | null;
constructor(consumerOptions?: IConsumerOptions);
protected initRedisClient: (cb: ICallback) => void;
protected releaseRedisClient: (cb: ICallback) => void;
protected setUpHeartbeat: (cb: ICallback<void>) => void;
protected shutdownHeartbeat: (cb: ICallback<void>) => void;
protected runMessageHandlers: (cb: ICallback<void>) => void;
protected shutdownMessageHandlers: (cb: ICallback<void>) => void;
protected goingUp(): ((cb: ICallback<void>) => void)[];
protected goingDown(): ((cb: ICallback<void>) => void)[];
protected finalizeUp(): void;
protected finalizeDown(): void;
protected handleError(err: Error): void;
consume(queue: TQueueExtendedParams, messageHandler: TConsumerMessageHandler): Promise<void>;
consume(queue: TQueueExtendedParams, messageHandler: TConsumerMessageHandler, cb: ICallback<void>): void;
cancel(queue: TQueueExtendedParams): Promise<void>;
cancel(queue: TQueueExtendedParams, cb: ICallback<void>): void;
getQueues(): IQueueParsedParams[];
getQueuesWithStatus(): IConsumerQueuesWithStatus[];
static setDefaultOptions(options: IConsumerOptions): void;
static getDefaultOptions(): IConsumerParsedOptions;
}
//# sourceMappingURL=consumer.d.ts.map