<?php

namespace Aws\Sns;

use Aws\AwsClient;
use Aws\Result;
use GuzzleHttp\Promise\Promise;

/**
 * This client is used to interact with the **Amazon Simple Notification Service (Amazon SNS)**.
 *
 * @method Result addPermission( array $args = [] )
 * @method Promise addPermissionAsync( array $args = [] )
 * @method Result checkIfPhoneNumberIsOptedOut( array $args = [] )
 * @method Promise checkIfPhoneNumberIsOptedOutAsync( array $args = [] )
 * @method Result confirmSubscription( array $args = [] )
 * @method Promise confirmSubscriptionAsync( array $args = [] )
 * @method Result createPlatformApplication( array $args = [] )
 * @method Promise createPlatformApplicationAsync( array $args = [] )
 * @method Result createPlatformEndpoint( array $args = [] )
 * @method Promise createPlatformEndpointAsync( array $args = [] )
 * @method Result createTopic( array $args = [] )
 * @method Promise createTopicAsync( array $args = [] )
 * @method Result deleteEndpoint( array $args = [] )
 * @method Promise deleteEndpointAsync( array $args = [] )
 * @method Result deletePlatformApplication( array $args = [] )
 * @method Promise deletePlatformApplicationAsync( array $args = [] )
 * @method Result deleteTopic( array $args = [] )
 * @method Promise deleteTopicAsync( array $args = [] )
 * @method Result getEndpointAttributes( array $args = [] )
 * @method Promise getEndpointAttributesAsync( array $args = [] )
 * @method Result getPlatformApplicationAttributes( array $args = [] )
 * @method Promise getPlatformApplicationAttributesAsync( array $args = [] )
 * @method Result getSMSAttributes( array $args = [] )
 * @method Promise getSMSAttributesAsync( array $args = [] )
 * @method Result getSubscriptionAttributes( array $args = [] )
 * @method Promise getSubscriptionAttributesAsync( array $args = [] )
 * @method Result getTopicAttributes( array $args = [] )
 * @method Promise getTopicAttributesAsync( array $args = [] )
 * @method Result listEndpointsByPlatformApplication( array $args = [] )
 * @method Promise listEndpointsByPlatformApplicationAsync( array $args = [] )
 * @method Result listPhoneNumbersOptedOut( array $args = [] )
 * @method Promise listPhoneNumbersOptedOutAsync( array $args = [] )
 * @method Result listPlatformApplications( array $args = [] )
 * @method Promise listPlatformApplicationsAsync( array $args = [] )
 * @method Result listSubscriptions( array $args = [] )
 * @method Promise listSubscriptionsAsync( array $args = [] )
 * @method Result listSubscriptionsByTopic( array $args = [] )
 * @method Promise listSubscriptionsByTopicAsync( array $args = [] )
 * @method Result listTagsForResource( array $args = [] )
 * @method Promise listTagsForResourceAsync( array $args = [] )
 * @method Result listTopics( array $args = [] )
 * @method Promise listTopicsAsync( array $args = [] )
 * @method Result optInPhoneNumber( array $args = [] )
 * @method Promise optInPhoneNumberAsync( array $args = [] )
 * @method Result publish( array $args = [] )
 * @method Promise publishAsync( array $args = [] )
 * @method Result removePermission( array $args = [] )
 * @method Promise removePermissionAsync( array $args = [] )
 * @method Result setEndpointAttributes( array $args = [] )
 * @method Promise setEndpointAttributesAsync( array $args = [] )
 * @method Result setPlatformApplicationAttributes( array $args = [] )
 * @method Promise setPlatformApplicationAttributesAsync( array $args = [] )
 * @method Result setSMSAttributes( array $args = [] )
 * @method Promise setSMSAttributesAsync( array $args = [] )
 * @method Result setSubscriptionAttributes( array $args = [] )
 * @method Promise setSubscriptionAttributesAsync( array $args = [] )
 * @method Result setTopicAttributes( array $args = [] )
 * @method Promise setTopicAttributesAsync( array $args = [] )
 * @method Result subscribe( array $args = [] )
 * @method Promise subscribeAsync( array $args = [] )
 * @method Result tagResource( array $args = [] )
 * @method Promise tagResourceAsync( array $args = [] )
 * @method Result unsubscribe( array $args = [] )
 * @method Promise unsubscribeAsync( array $args = [] )
 * @method Result untagResource( array $args = [] )
 * @method Promise untagResourceAsync( array $args = [] )
 */
class SnsClient extends AwsClient {
}
