import { OnModuleInit } from '@nestjs/common'; import { Channel } from 'amqplib'; import { IRMQServiceOptions } from './interfaces/rmq-options.interface'; import { IPublishOptions } from './interfaces/rmq-publish-options.interface'; import { RMQMetadataAccessor } from './rmq-metadata.accessor'; import { RmqErrorService } from './rmq-error.service'; import { IRMQService } from './interfaces/rmq-service.interface'; export declare class RMQService implements OnModuleInit, IRMQService { private readonly metadataAccessor; private readonly errorService; private server; private clientChannel; private subscriptionChannel; private options; private sendResponseEmitter; private replyQueue; private routes; private logger; private isConnected; private isInitialized; constructor(options: IRMQServiceOptions, metadataAccessor: RMQMetadataAccessor, errorService: RmqErrorService); onModuleInit(): Promise; init(): Promise; ack(...params: Parameters): ReturnType; nack(...params: Parameters): ReturnType; send(topic: string, message: IMessage, options?: IPublishOptions): Promise; notify(topic: string, message: IMessage, options?: IPublishOptions): Promise; healthCheck(): boolean; disconnect(): Promise; private createConnectionUri; private createSubscriptionChannel; private createClientChannel; private listen; private bindRMQRoutes; private detachEmitters; private attachEmitters; private reply; private getRouteByTopic; private useMiddleware; private intercept; private initializationCheck; private logConnected; }