import { IBusAdapter } from '../interfaces/bus/bus-adapter.interface';
import { IOnInit } from '../interfaces/lifecycles';
import { ITransferData } from '../interfaces/transfer-data';
import { TransferDataDto } from '../interfaces/transfer-data-dto.interface';
import { ISetOptions } from '../interfaces/set-options.interface';
import { CraftsLogger } from '../logger/services/logger.service';
export declare class RabbitMQBusAdapter implements IBusAdapter, IOnInit, ISetOptions {
    private readonly logger;
    private options;
    private readonly rabbitmqPackage;
    private rabbitmq;
    private pubChannel;
    private subChannel;
    constructor(logger: CraftsLogger);
    onInit(): Promise<void>;
    publish(data: ITransferData<TransferDataDto>, options?: any): Promise<void>;
    subscribe(handle: Function, data: ITransferData<TransferDataDto>, options?: any): Promise<void>;
    private subscribeHandle;
    setOptions(options: any): void;
    close(): Promise<void>;
    private queueDefault;
    private subscribeDefault;
    private exchangeDefault;
    private publishDefault;
}
