import { Consumer } from 'sqs-consumer'; import { Producer } from 'sqs-producer'; import * as SQS from 'aws-sdk/clients/sqs'; import { OnApplicationBootstrap, OnModuleDestroy } from '@nestjs/common'; import { SqsConfig } from './sqs.config'; import { QueueName } from './sqs.types'; import { Message } from './sqs.interfaces'; import { SqsMetadataScanner } from './sqs-metadata.scanner'; export declare class SqsService implements OnApplicationBootstrap, OnModuleDestroy { private readonly scanner; private readonly sqsConfig; readonly consumers: Map; readonly producers: Map; constructor(scanner: SqsMetadataScanner, sqsConfig: SqsConfig); onApplicationBootstrap(): Promise; private createConsumer; private createProducer; onModuleDestroy(): void; private getQueueInfo; purgeQueue(name: QueueName): Promise<{ $response: import("aws-sdk").Response<{}, import("aws-sdk").AWSError>; }>; getQueueAttributes(name: QueueName): Promise<{ [x: string]: string; }>; getProducerQueueSize(name: QueueName): Promise; send(name: QueueName, payload: Message | Message[]): Promise; }