<?php

namespace Aws\Kms;

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

/**
 * This client is used to interact with the **AWS Key Management Service**.
 *
 * @method Result cancelKeyDeletion( array $args = [] )
 * @method Promise cancelKeyDeletionAsync( array $args = [] )
 * @method Result connectCustomKeyStore( array $args = [] )
 * @method Promise connectCustomKeyStoreAsync( array $args = [] )
 * @method Result createAlias( array $args = [] )
 * @method Promise createAliasAsync( array $args = [] )
 * @method Result createCustomKeyStore( array $args = [] )
 * @method Promise createCustomKeyStoreAsync( array $args = [] )
 * @method Result createGrant( array $args = [] )
 * @method Promise createGrantAsync( array $args = [] )
 * @method Result createKey( array $args = [] )
 * @method Promise createKeyAsync( array $args = [] )
 * @method Result decrypt( array $args = [] )
 * @method Promise decryptAsync( array $args = [] )
 * @method Result deleteAlias( array $args = [] )
 * @method Promise deleteAliasAsync( array $args = [] )
 * @method Result deleteCustomKeyStore( array $args = [] )
 * @method Promise deleteCustomKeyStoreAsync( array $args = [] )
 * @method Result deleteImportedKeyMaterial( array $args = [] )
 * @method Promise deleteImportedKeyMaterialAsync( array $args = [] )
 * @method Result describeCustomKeyStores( array $args = [] )
 * @method Promise describeCustomKeyStoresAsync( array $args = [] )
 * @method Result describeKey( array $args = [] )
 * @method Promise describeKeyAsync( array $args = [] )
 * @method Result disableKey( array $args = [] )
 * @method Promise disableKeyAsync( array $args = [] )
 * @method Result disableKeyRotation( array $args = [] )
 * @method Promise disableKeyRotationAsync( array $args = [] )
 * @method Result disconnectCustomKeyStore( array $args = [] )
 * @method Promise disconnectCustomKeyStoreAsync( array $args = [] )
 * @method Result enableKey( array $args = [] )
 * @method Promise enableKeyAsync( array $args = [] )
 * @method Result enableKeyRotation( array $args = [] )
 * @method Promise enableKeyRotationAsync( array $args = [] )
 * @method Result encrypt( array $args = [] )
 * @method Promise encryptAsync( array $args = [] )
 * @method Result generateDataKey( array $args = [] )
 * @method Promise generateDataKeyAsync( array $args = [] )
 * @method Result generateDataKeyWithoutPlaintext( array $args = [] )
 * @method Promise generateDataKeyWithoutPlaintextAsync( array $args = [] )
 * @method Result generateRandom( array $args = [] )
 * @method Promise generateRandomAsync( array $args = [] )
 * @method Result getKeyPolicy( array $args = [] )
 * @method Promise getKeyPolicyAsync( array $args = [] )
 * @method Result getKeyRotationStatus( array $args = [] )
 * @method Promise getKeyRotationStatusAsync( array $args = [] )
 * @method Result getParametersForImport( array $args = [] )
 * @method Promise getParametersForImportAsync( array $args = [] )
 * @method Result importKeyMaterial( array $args = [] )
 * @method Promise importKeyMaterialAsync( array $args = [] )
 * @method Result listAliases( array $args = [] )
 * @method Promise listAliasesAsync( array $args = [] )
 * @method Result listGrants( array $args = [] )
 * @method Promise listGrantsAsync( array $args = [] )
 * @method Result listKeyPolicies( array $args = [] )
 * @method Promise listKeyPoliciesAsync( array $args = [] )
 * @method Result listKeys( array $args = [] )
 * @method Promise listKeysAsync( array $args = [] )
 * @method Result listResourceTags( array $args = [] )
 * @method Promise listResourceTagsAsync( array $args = [] )
 * @method Result listRetirableGrants( array $args = [] )
 * @method Promise listRetirableGrantsAsync( array $args = [] )
 * @method Result putKeyPolicy( array $args = [] )
 * @method Promise putKeyPolicyAsync( array $args = [] )
 * @method Result reEncrypt( array $args = [] )
 * @method Promise reEncryptAsync( array $args = [] )
 * @method Result retireGrant( array $args = [] )
 * @method Promise retireGrantAsync( array $args = [] )
 * @method Result revokeGrant( array $args = [] )
 * @method Promise revokeGrantAsync( array $args = [] )
 * @method Result scheduleKeyDeletion( array $args = [] )
 * @method Promise scheduleKeyDeletionAsync( array $args = [] )
 * @method Result tagResource( array $args = [] )
 * @method Promise tagResourceAsync( array $args = [] )
 * @method Result untagResource( array $args = [] )
 * @method Promise untagResourceAsync( array $args = [] )
 * @method Result updateAlias( array $args = [] )
 * @method Promise updateAliasAsync( array $args = [] )
 * @method Result updateCustomKeyStore( array $args = [] )
 * @method Promise updateCustomKeyStoreAsync( array $args = [] )
 * @method Result updateKeyDescription( array $args = [] )
 * @method Promise updateKeyDescriptionAsync( array $args = [] )
 */
class KmsClient extends AwsClient {
}
