import { Exchange, ExchangeDirect, ExchangeFanout, ExchangeTopic, IExchangeParams, IQueueParams } from 'redis-smq'; export declare class ExchangesService { protected exchange: { getAllExchangesAsync: () => Promise; getNamespaceExchangesAsync: (ns: string) => Promise; getQueueExchangesAsync: (queue: string | IQueueParams) => Promise; } & Exchange; protected exchangeDirect: { getRoutingKeysAsync: (exchange: string | IExchangeParams) => Promise; getRoutingKeyBoundQueuesAsync: (exchange: string | IExchangeParams, routingKey: string) => Promise; matchQueuesAsync: (exchange: string | IExchangeParams, routingKey: string) => Promise; createAsync: ((exchange: string | IExchangeParams, queuePolicy: import("redis-smq").EExchangeQueuePolicy) => Promise) | ((exchange: string | IExchangeParams, queuePolicy: import("redis-smq").EExchangeQueuePolicy) => Promise); bindQueueAsync: ((queue: string | IQueueParams, exchange: string | IExchangeParams, routingKey: string) => Promise) | ((queue: string | IQueueParams, exchange: string | IExchangeParams, routingKey: string) => Promise); unbindQueueAsync: ((queue: string | IQueueParams, exchange: string | IExchangeParams, routingKey: string) => Promise) | ((queue: string | IQueueParams, exchange: string | IExchangeParams, routingKey: string) => Promise); deleteAsync: ((exchange: string | IExchangeParams) => Promise) | ((exchange: string | IExchangeParams) => Promise); getBindingsAsync: (exchange: string | IExchangeParams) => Promise>; } & ExchangeDirect; protected exchangeFanout: { matchQueuesAsync: (exchange: string | IExchangeParams) => Promise; createAsync: ((exchange: string | IExchangeParams, queuePolicy: import("redis-smq").EExchangeQueuePolicy) => Promise) | ((exchange: string | IExchangeParams, queuePolicy: import("redis-smq").EExchangeQueuePolicy) => Promise); deleteAsync: ((exchange: string | IExchangeParams) => Promise) | ((exchange: string | IExchangeParams) => Promise); bindQueueAsync: ((queue: string | IQueueParams, exchange: string | IExchangeParams) => Promise) | ((queue: string | IQueueParams, exchange: string | IExchangeParams) => Promise); unbindQueueAsync: ((queue: string | IQueueParams, exchange: string | IExchangeParams) => Promise) | ((queue: string | IQueueParams, exchange: string | IExchangeParams) => Promise); getBindingsAsync: (exchange: string | IExchangeParams) => Promise; } & ExchangeFanout; protected exchangeTopic: { matchQueuesAsync: (exchange: string | IExchangeParams, routingKey: string) => Promise; getRoutingPatternsAsync: (exchange: string | IExchangeParams) => Promise; getRoutingPatternBoundQueuesAsync: (exchange: string | IExchangeParams, bindingPattern: string) => Promise; bindQueueAsync: ((queue: string | IQueueParams, exchange: string | IExchangeParams, routingPattern: string) => Promise) | ((queue: string | IQueueParams, exchange: string | IExchangeParams, routingPattern: string) => Promise); unbindQueueAsync: ((queue: string | IQueueParams, exchange: string | IExchangeParams, routingPattern: string) => Promise) | ((queue: string | IQueueParams, exchange: string | IExchangeParams, routingPattern: string) => Promise); createAsync: ((exchange: string | IExchangeParams, queuePolicy: import("redis-smq").EExchangeQueuePolicy) => Promise) | ((exchange: string | IExchangeParams, queuePolicy: import("redis-smq").EExchangeQueuePolicy) => Promise); deleteAsync: ((exchange: string | IExchangeParams) => Promise) | ((exchange: string | IExchangeParams) => Promise); getBindingsAsync: (exchange: string | IExchangeParams) => Promise>; } & ExchangeTopic; constructor(exchange: Exchange, exchangeDirect: ExchangeDirect, exchangeFanout: ExchangeFanout, exchangeTopic: ExchangeTopic); getExchange(exchangeParams: IExchangeParams): Promise; matchQueues(exchangeParams: IExchangeParams, params: { routingKey?: string; }): Promise; bindQueue(queueParams: IQueueParams, exchangeParams: IExchangeParams, params: { routingKey?: string; routingPattern?: string; }): Promise; unbindQueue(queueParams: IQueueParams, exchangeParams: IExchangeParams, params: { routingKey?: string; routingPattern?: string; }): Promise; getRoutingKeys(exchangeParams: IExchangeParams): Promise; getRoutingPatterns(exchangeParams: IExchangeParams): Promise; getBindings(exchangeParams: IExchangeParams, params: { routingKey?: string; routingPattern?: string; }): Promise>; deleteExchange(exchangeParams: IExchangeParams): Promise; getQueueExchanges(queue: IQueueParams): Promise; getNamespaceExchanges(ns: string): Promise; getAllExchanges(): Promise; } //# sourceMappingURL=ExchangesService.d.ts.map