import { Channel } from 'amqplib';
import { IInfrastructure } from '../../application/iInfrastructure';
import { BindTopicInput } from '../../application/utils/types';
export declare class RabbitMqInfrastructure implements IInfrastructure {
    private channel;
    constructor(channel: Channel);
    createQueue(queueName: string): Promise<void>;
    bindTopic(binder: BindTopicInput): Promise<void>;
    bindTemporaryTopic(queueName: string): Promise<string>;
    deleteTopic(queueName: string, topicName: string): Promise<void>;
}
