import { Message, ReceiveMessageCommandInput, SendMessageCommandInput, SQSClient, SQSClientConfig } from '@aws-sdk/client-sqs'; /** * Service client for AWS SQS */ export declare class SQSServiceClient { readonly sqs: SQSClient; constructor(options?: SQSClientConfig); /** * Send a message to the SQS queue * @param queueUrl - SQS queue url * @param message - Message * @param options - Send options * @returns */ send(queueUrl: string, message: string, options?: Omit): Promise; sendMessage(queueUrl: string, message: Message, options?: Omit): Promise; /** * Send a json object as message to SQS * @param queueUrl - SQS queue url * @param message - JSON message * @param options - Send options * @returns */ sendJson(queueUrl: string, message: object, options?: Omit): Promise; /** * Receive and delete messages from the queue * @param queueUrl - SQS queue url * @param options - SQS receive options * @returns */ dequeueMessages(queueUrl: string, options?: Omit): Promise; /** * Delete messages from the queue * @param queueUrl - SQS queue url * @param messages - Messages to be deleted * @returns */ deleteMessages(queueUrl: string, messages?: Message[]): Promise; /** * Receive messages from the SQS queue * @param queueUrl - SQS queue url * @param options - Receive options * @returns */ receive(queueUrl: string, options: Omit): Promise; /** * Fetch messages from the queue as async iterator * @param queueUrl - Queue url * @param options - ReceiveMessage options * @returns */ fetchMessages(queueUrl: string, options?: Omit & { DeleteReceivedMessages?: boolean; }): AsyncGenerator; fetchMessagesByBatch(queueUrl: string, options?: Omit & { DeleteReceivedMessages?: boolean; }): AsyncGenerator; getMessageAttributes(message: Message, ...names: string[]): Record; } /** * Get url for a SQS queue * @param queueName - Queue name * @param region - AWS region * @param accountId - AWS account id * @returns */ export declare function getSQSQueueUrl(queueName: string, region?: string, accountId?: string): string;