@goparrot/pubsub-event-bus
Version:
NestJS EventBus extension for RabbitMQ PubSub
31 lines (30 loc) • 1.21 kB
TypeScript
import type { LoggerService } from '@nestjs/common';
import type { AmqpConnectionManagerOptions } from 'amqp-connection-manager';
import type { BindingQueueOptions } from './BindingQueueOptions';
import type { ExchangeOptions } from './ExchangeOptions';
import type { IConsumerOptions } from './IConsumerOptions';
import type { IRetryOptions } from './IRetryOptions';
import type { PublishOptions } from './PublishOptions';
interface ICqrsModuleOptionsConfig {
exchange?: ExchangeOptions;
consumer?: IConsumerOptions;
producer?: PublishOptions;
bindings?: BindingQueueOptions;
connectionManagerOptions?: AmqpConnectionManagerOptions;
}
export interface ICqrsModuleOptions {
connections: string[];
config?: ICqrsModuleOptionsConfig;
logger?: LoggerService;
/**
* Name of the connection to be displayed in the server logs and management UI. Final name will have a suffix `:producer` or `:consumer` depending on the
* connection purpose
* @example `service-name-${uuid.v4()}`
*/
connectionName?: string;
/**
* Handler specific retry options. Specific options are merged with the global ones
*/
retryOptions?: IRetryOptions;
}
export {};