import { PublishBatchRequestEntry, PublishCommandInput, SNSClient, SNSClientConfig, SubscribeCommandInput } from '@aws-sdk/client-sns'; export declare class SNSServiceClient { readonly sns: SNSClient; constructor(options?: SNSClientConfig); publish(topic: string, message: string, options?: Omit): Promise; /** * Publish messages to the given topic in batch * @param topic - Topic arn * @param messages - Messages * @returns */ publishBatch(topic: string, messages: { message: string; options: Omit; }[]): Promise; publishBatchJson(topic: string, messages: { message: object; options: Omit; }[]): Promise; publishJson(topic: string, message: object, options?: Omit): Promise; private serializeMessage; subscribe(topic: string, protocol: string, endpoint: string, options?: Omit): Promise; unsubscribe(subscription: string): Promise; } /** * Get ARN of a SNS topic * @param topicName - Topic name * @param region - AWS region * @param accountId - AWS account id * @returns */ export declare function getSNSTopicArn(topicName: string, region?: string, accountId?: string): string;