import { createLogger, ICallback } from 'redis-smq-common';
import { IQueueParams } from '../queue-manager/index.js';
import { IExchangeParsedParams } from './types/index.js';
export declare class Exchange {
    protected readonly logger: ReturnType<typeof createLogger>;
    constructor();
    getAllExchanges(cb?: ICallback<IExchangeParsedParams[]>): Promise<IExchangeParsedParams[]>;
    getAllExchanges(cb: ICallback<IExchangeParsedParams[]>): void;
    getNamespaceExchanges(ns: string): Promise<IExchangeParsedParams[]>;
    getNamespaceExchanges(ns: string, cb: ICallback<IExchangeParsedParams[]>): void;
    getQueueExchanges(queue: string | IQueueParams): Promise<IExchangeParsedParams[]>;
    getQueueExchanges(queue: string | IQueueParams, cb: ICallback<IExchangeParsedParams[]>): void;
}
//# sourceMappingURL=exchange.d.ts.map