@diy0r/nestjs-rabbitmq
Version:
Nestjs rabbitMQ module
27 lines (26 loc) • 1.39 kB
TypeScript
import { OnModuleInit } from '@nestjs/common';
import { Channel, Options, ConfirmChannel } from 'amqplib';
import { RmqNestjsConnectService } from './rmq-connect.service';
import { INotifyReply, IPublishOptions, IRMQOptions } from './interfaces';
import { RmqErrorGlobalService } from './common';
export declare class RmqGlobalService implements OnModuleInit {
private readonly RMQOptions;
private readonly rmqNestjsConnectService;
private readonly rmqErrorGlobalService;
private replyToQueue;
private extendedOptions;
private serDes;
private sendResponseEmitter;
private logger;
private isInitialized;
constructor(RMQOptions: IRMQOptions, rmqNestjsConnectService: RmqNestjsConnectService, rmqErrorGlobalService: RmqErrorGlobalService);
onModuleInit(): Promise<void>;
get channel(): Promise<Channel | ConfirmChannel>;
send<IMessage, IReply>(exchange: string, topic: string, message: IMessage, options?: IPublishOptions): Promise<IReply>;
notify<IMessage>(exchange: string, topic: string, message: IMessage, options?: Options.Publish): Promise<INotifyReply>;
sendToQueue<IMessage>(queue: string, content: IMessage, options?: Options.Publish): Promise<boolean>;
ack(...params: Parameters<Channel['ack']>): ReturnType<Channel['ack']>;
private listenReplyQueue;
private replyQueue;
private initializationCheck;
}