import { Transport } from '../transport';
import * as amqp from 'amqplib';
import { RabbitMqConfig } from './rabbitMQ.transport.config';
import { RabbitMqMessageConfig } from './rabbitMQ.message.config';
export declare class RabbitMqTransport extends Transport {
    amqpConnection: amqp.Connection;
    amqpChannel: amqp.Channel;
    config: RabbitMqConfig;
    constructor(config: RabbitMqConfig);
    init(): Promise<amqp.Connection>;
    private connect;
    close(): Promise<void>;
    private startPublisher;
    private publish;
    protected pass(message: string, messageConfig: RabbitMqMessageConfig): void;
    configure(config: RabbitMqConfig): Promise<void>;
}
