UNPKG

@tmlmobilidade/connectors

Version:

This package provides pre-made database connectors to streamline development and reduce boilerplate. By using these connectors, you can avoid re-implementing controller classes every time, ensuring consistency and saving development time.

38 lines (37 loc) 1.06 kB
import { Options, Replies } from 'amqplib'; export interface RabbitMQConfig { socketOptions?: any; uri: Options.Connect | string; } export declare class RabbitMQConnector { private channel?; private config; private connection?; constructor(config: RabbitMQConfig); /** * Connects to RabbitMQ and creates a channel. */ connect(): Promise<void>; /** * Disconnects from RabbitMQ. */ disconnect(): Promise<void>; /** * Publishes a message to a queue. */ publish(queue: string, message: Buffer | string, options?: Options.Publish): Promise<Replies.Empty>; /** * Subscribes to a queue and processes messages. */ subscribe(queue: string, callback: (message: Buffer | string) => void): Promise<void>; } /** * Singleton class for RabbitMQConnector. */ declare class RabbitMQService extends RabbitMQConnector { private static _instance; private constructor(); static getInstance(): Promise<RabbitMQService>; } export declare const rabbitMQ: RabbitMQService; export {};