import { AmqpChannel } from '../channel/amqp.channel';
import { ConsumerMessageBus, IMessagingConsumer } from '@nestjstools/messaging';
import { OnModuleDestroy } from '@nestjs/common';
import { ConsumerDispatchedMessageError } from '@nestjstools/messaging';
import { RabbitmqMigrator } from '../migrator/rabbitmq.migrator';
import { MessageRetrierVisitor } from './message-retrier.visitor';
import { MessageDeadLetterVisitor } from './message-dead-letter.visitor';
export declare class RabbitmqMessagingConsumer implements IMessagingConsumer<AmqpChannel>, OnModuleDestroy {
    private readonly rabbitMqMigrator;
    private readonly messageRetrier;
    private readonly messageDeadLetter;
    private readonly channelWrappers;
    private readonly channels;
    constructor(rabbitMqMigrator: RabbitmqMigrator, messageRetrier: MessageRetrierVisitor, messageDeadLetter: MessageDeadLetterVisitor);
    consume(dispatcher: ConsumerMessageBus, channel: AmqpChannel): Promise<void>;
    onError(errored: ConsumerDispatchedMessageError, channel: AmqpChannel): Promise<void>;
    onModuleDestroy(): Promise<void>;
}
