UNPKG

@xnestjs/rabbitmq

Version:

NestJS extension library for RabbitMQ

24 lines (23 loc) 1.23 kB
import type { LoggerService } from '@nestjs/common'; import type { ModuleMetadata } from '@nestjs/common/interfaces'; import type { InjectionToken } from '@nestjs/common/interfaces/modules/injection-token.interface'; import * as rabbit from 'rabbitmq-client'; export type RmqClient = rabbit.Connection; export declare const RmqClient: typeof rabbit.Connection; export interface RabbitmqConnectionOptions extends Pick<rabbit.ConnectionOptions, 'hosts' | 'vhost' | 'username' | 'password' | 'acquireTimeout' | 'connectionName' | 'connectionTimeout' | 'frameMax' | 'heartbeat' | 'maxChannels' | 'retryHigh' | 'retryLow' | 'noDelay' | 'tls' | 'socket'> { lazyConnect?: boolean; } export interface RabbitmqModuleOptions extends BaseModuleOptions { useValue?: string | string[] | RabbitmqConnectionOptions; } export interface RabbitmqModuleAsyncOptions extends BaseModuleOptions, Pick<ModuleMetadata, 'imports'> { inject?: any[]; useFactory: (...args: any[]) => Promise<string | string[] | RabbitmqConnectionOptions> | string | string[] | RabbitmqConnectionOptions; } interface BaseModuleOptions { token?: InjectionToken; envPrefix?: string; logger?: LoggerService | string; global?: boolean; } export {};