UNPKG

@goparrot/pubsub-event-bus

Version:
24 lines (23 loc) 1.06 kB
import type { LoggerService, OnModuleDestroy } from '@nestjs/common'; import type { AmqpConnectionManager, ChannelWrapper } from 'amqp-connection-manager'; import type { ConfirmChannel } from 'amqplib'; import { ExchangeOptions } from '../interface'; /** * Review the work with connections & channels, according to these recommendations. * https://www.cloudamqp.com/blog/2018-01-19-part4-rabbitmq-13-common-errors.html */ export declare abstract class PubsubManager implements OnModuleDestroy { private connection$; private readonly connectionName?; private readonly urls; protected readonly assertExchangeOptions: ExchangeOptions; private readonly connectionManagerOptions; protected get connection(): AmqpConnectionManager; private channelWrapper$; protected get channelWrapper(): ChannelWrapper; setupChannel(_channel: ConfirmChannel): Promise<void>; protected initConnectionIfRequired(): void; protected initChannelIfRequired(): void; onModuleDestroy(): Promise<void>; protected logger(): LoggerService; }