UNPKG

redis-smq

Version:

A simple high-performance Redis message queue for Node.js.

32 lines (31 loc) 2.29 kB
import { TConsumerMessageHandler, TConsumerRedisKeys, TConsumerInfo, TQueueParams, IConfig, TConsumerHeartbeat } from '../../../types'; import { ConsumerHeartbeat } from './consumer-heartbeat'; import { Base } from '../base'; import { MessageHandlerRunner } from './consumer-message-handler/message-handler-runner'; import { RedisClient, WorkerRunner } from 'redis-smq-common'; import { ICallback, TUnaryFunction } from 'redis-smq-common/dist/types'; export declare class Consumer extends Base { protected readonly redisKeys: TConsumerRedisKeys; protected readonly messageHandlerRunner: MessageHandlerRunner; protected heartbeat: ConsumerHeartbeat | null; protected workerRunner: WorkerRunner | null; constructor(config?: IConfig, useMultiplexing?: boolean); protected setUpHeartbeat: (cb: ICallback<void>) => void; protected tearDownHeartbeat: (cb: ICallback<void>) => void; protected setUpConsumerWorkers: (cb: ICallback<void>) => void; protected initConsumerEventListeners: (cb: ICallback<void>) => void; protected tearDownConsumerWorkers: (cb: ICallback<void>) => void; protected runMessageHandlers: (cb: ICallback<void>) => void; protected shutdownMessageHandlers: (cb: ICallback<void>) => void; protected goingUp(): TUnaryFunction<ICallback<void>>[]; protected goingDown(): TUnaryFunction<ICallback<void>>[]; consume(queue: string | TQueueParams, messageHandler: TConsumerMessageHandler, cb: ICallback<void>): void; cancel(queue: string | TQueueParams, cb: ICallback<void>): void; getQueues(): TQueueParams[]; getRedisKeys(): TConsumerRedisKeys; static getConsumersHeartbeats(redisClient: RedisClient, consumersIds: string[], cb: ICallback<Record<string, TConsumerHeartbeat | false>>): void; static getConsumerHeartbeat(redisClient: RedisClient, consumerId: string, cb: ICallback<TConsumerHeartbeat | false>): void; static getQueueConsumers(redisClient: RedisClient, queue: TQueueParams, transform: boolean | undefined, cb: ICallback<Record<string, TConsumerInfo | string>>): void; static getQueueConsumerIds(redisClient: RedisClient, queue: TQueueParams, cb: ICallback<string[]>): void; static countQueueConsumers(redisClient: RedisClient, queue: TQueueParams, cb: ICallback<number>): void; }