import { Exchange } from './exchange';
import { EExchangeType, IDirectExchangeParams, IRequiredConfig, TQueueParams } from '../../../types';
import { RedisClient } from 'redis-smq-common';
import { ICallback } from 'redis-smq-common/dist/types';
export declare class DirectExchange extends Exchange<TQueueParams | string, EExchangeType.DIRECT> {
    constructor(queue: TQueueParams | string);
    protected validateBindingParams(queue: TQueueParams | string): TQueueParams | string;
    getQueues(redisClient: RedisClient, config: IRequiredConfig, cb: ICallback<TQueueParams[]>): void;
    static fromJSON(json: Partial<IDirectExchangeParams>): DirectExchange;
}
