redis-smq
Version:
A simple high-performance Redis message queue for Node.js.
22 lines (21 loc) • 1.51 kB
TypeScript
import { IConfig, IRequiredConfig, TQueueParams } from '../../../types';
import { RedisClient } from 'redis-smq-common';
import { ICallback, ICompatibleLogger } from 'redis-smq-common/dist/types';
import { FanOutExchange } from './fan-out-exchange';
export declare class FanOutExchangeManager {
protected config: IRequiredConfig;
protected redisClient: RedisClient;
protected logger: ICompatibleLogger;
protected constructor(config: IRequiredConfig, redisClient: RedisClient, logger: ICompatibleLogger);
createExchange(exchange: FanOutExchange, cb: ICallback<void>): void;
deleteExchange(exchange: FanOutExchange, cb: ICallback<void>): void;
bindQueue(queue: TQueueParams | string, exchange: FanOutExchange, cb: ICallback<void>): void;
unbindQueue(queue: TQueueParams | string, exchange: FanOutExchange, cb: ICallback<void>): void;
getExchanges(cb: ICallback<string[]>): void;
getExchangeQueues(exchange: FanOutExchange, cb: ICallback<TQueueParams[]>): void;
getQueueExchange(queue: TQueueParams | string, cb: ICallback<FanOutExchange | null>): void;
quit(cb: ICallback<void>): void;
static getExchangeQueues(redisClient: RedisClient, exchange: FanOutExchange, cb: ICallback<TQueueParams[]>): void;
static getQueueExchange(config: IRequiredConfig, redisClient: RedisClient, queue: TQueueParams | string, cb: ICallback<FanOutExchange | null>): void;
static createInstance(config: IConfig | undefined, cb: ICallback<FanOutExchangeManager>): void;
}