import { AbstractClientService } from '@joktec/core'; import { ChannelModel } from 'amqplib'; import { RabbitAssertExchange, RabbitAssertExchangeOptions, RabbitAssertOptions, RabbitAssertQueue, RabbitAutoBindingRegistry, RabbitBaseOptions, RabbitBindingOptions, RabbitConsumeOptions, RabbitEmpty, RabbitExchangeType, RabbitMessage, RabbitProduceOptions, RabbitProduceResult, RabbitPublishOptions, RabbitPublishResult, RabbitPurgeQueue, RabbitRejectOptions } from './models'; import { RabbitClient } from './rabbit.client'; import { RabbitConfig } from './rabbit.config'; import { RabbitMetricService } from './rabbit.metric'; export declare class RabbitService extends AbstractClientService implements RabbitClient { private autoBindingRegistry; private rabbitMetricService; private props; constructor(autoBindingRegistry: RabbitAutoBindingRegistry, rabbitMetricService: RabbitMetricService); protected init(config: RabbitConfig): Promise; protected start(client: ChannelModel, conId?: string): Promise; protected stop(client: ChannelModel, conId?: string): Promise; private createChannel; sendToQueue(queue: string, messages: string[], opts?: RabbitProduceOptions, conId?: string): Promise; publish(exchange: string, messages: { key: string; content: string; }[], opts?: RabbitPublishOptions, conId?: string): Promise; consume(queue: string, callback: (msg: RabbitMessage) => Promise, opts?: RabbitConsumeOptions, conId?: string): Promise; commit(msg: RabbitMessage, opts?: RabbitBaseOptions, conId?: string): Promise; reject(msg: RabbitMessage, opts?: RabbitRejectOptions, conId?: string): Promise; assert(name: string, opts?: RabbitAssertOptions, conId?: string): Promise; assertExchange(name: string, type?: RabbitExchangeType | string, opts?: RabbitAssertExchangeOptions, conId?: string): Promise; check(name: string, opts?: RabbitBaseOptions, conId?: string): Promise; purge(name: string, opts?: RabbitBaseOptions, conId?: string): Promise; cancel(consumerTag: string, opts?: RabbitBaseOptions, conId?: string): Promise; binding(queue: string, exchange: { exchangeKey: string; routingKey: string; type?: RabbitExchangeType | string; }, opts?: RabbitBindingOptions, conId?: string): Promise; } //# sourceMappingURL=rabbit.service.d.ts.map