<?php
namespace Aws\Glue;

use Aws\AwsClient;

/**
 * This client is used to interact with the **AWS Glue** service.
 * @method \Aws\Result batchCreatePartition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchCreatePartitionAsync(array $args = [])
 * @method \Aws\Result batchDeleteConnection(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchDeleteConnectionAsync(array $args = [])
 * @method \Aws\Result batchDeletePartition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchDeletePartitionAsync(array $args = [])
 * @method \Aws\Result batchDeleteTable(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchDeleteTableAsync(array $args = [])
 * @method \Aws\Result batchDeleteTableVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchDeleteTableVersionAsync(array $args = [])
 * @method \Aws\Result batchGetBlueprints(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchGetBlueprintsAsync(array $args = [])
 * @method \Aws\Result batchGetCrawlers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchGetCrawlersAsync(array $args = [])
 * @method \Aws\Result batchGetCustomEntityTypes(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchGetCustomEntityTypesAsync(array $args = [])
 * @method \Aws\Result batchGetDataQualityResult(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchGetDataQualityResultAsync(array $args = [])
 * @method \Aws\Result batchGetDevEndpoints(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchGetDevEndpointsAsync(array $args = [])
 * @method \Aws\Result batchGetJobs(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchGetJobsAsync(array $args = [])
 * @method \Aws\Result batchGetPartition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchGetPartitionAsync(array $args = [])
 * @method \Aws\Result batchGetTriggers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchGetTriggersAsync(array $args = [])
 * @method \Aws\Result batchGetWorkflows(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchGetWorkflowsAsync(array $args = [])
 * @method \Aws\Result batchStopJobRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchStopJobRunAsync(array $args = [])
 * @method \Aws\Result batchUpdatePartition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchUpdatePartitionAsync(array $args = [])
 * @method \Aws\Result cancelDataQualityRuleRecommendationRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise cancelDataQualityRuleRecommendationRunAsync(array $args = [])
 * @method \Aws\Result cancelDataQualityRulesetEvaluationRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise cancelDataQualityRulesetEvaluationRunAsync(array $args = [])
 * @method \Aws\Result cancelMLTaskRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise cancelMLTaskRunAsync(array $args = [])
 * @method \Aws\Result cancelStatement(array $args = [])
 * @method \GuzzleHttp\Promise\Promise cancelStatementAsync(array $args = [])
 * @method \Aws\Result checkSchemaVersionValidity(array $args = [])
 * @method \GuzzleHttp\Promise\Promise checkSchemaVersionValidityAsync(array $args = [])
 * @method \Aws\Result createBlueprint(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createBlueprintAsync(array $args = [])
 * @method \Aws\Result createClassifier(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createClassifierAsync(array $args = [])
 * @method \Aws\Result createConnection(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createConnectionAsync(array $args = [])
 * @method \Aws\Result createCrawler(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createCrawlerAsync(array $args = [])
 * @method \Aws\Result createCustomEntityType(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createCustomEntityTypeAsync(array $args = [])
 * @method \Aws\Result createDataQualityRuleset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDataQualityRulesetAsync(array $args = [])
 * @method \Aws\Result createDatabase(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDatabaseAsync(array $args = [])
 * @method \Aws\Result createDevEndpoint(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDevEndpointAsync(array $args = [])
 * @method \Aws\Result createJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createJobAsync(array $args = [])
 * @method \Aws\Result createMLTransform(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createMLTransformAsync(array $args = [])
 * @method \Aws\Result createPartition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createPartitionAsync(array $args = [])
 * @method \Aws\Result createPartitionIndex(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createPartitionIndexAsync(array $args = [])
 * @method \Aws\Result createRegistry(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createRegistryAsync(array $args = [])
 * @method \Aws\Result createSchema(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createSchemaAsync(array $args = [])
 * @method \Aws\Result createScript(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createScriptAsync(array $args = [])
 * @method \Aws\Result createSecurityConfiguration(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createSecurityConfigurationAsync(array $args = [])
 * @method \Aws\Result createSession(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createSessionAsync(array $args = [])
 * @method \Aws\Result createTable(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createTableAsync(array $args = [])
 * @method \Aws\Result createTrigger(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createTriggerAsync(array $args = [])
 * @method \Aws\Result createUserDefinedFunction(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createUserDefinedFunctionAsync(array $args = [])
 * @method \Aws\Result createWorkflow(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createWorkflowAsync(array $args = [])
 * @method \Aws\Result deleteBlueprint(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteBlueprintAsync(array $args = [])
 * @method \Aws\Result deleteClassifier(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteClassifierAsync(array $args = [])
 * @method \Aws\Result deleteColumnStatisticsForPartition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteColumnStatisticsForPartitionAsync(array $args = [])
 * @method \Aws\Result deleteColumnStatisticsForTable(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteColumnStatisticsForTableAsync(array $args = [])
 * @method \Aws\Result deleteConnection(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteConnectionAsync(array $args = [])
 * @method \Aws\Result deleteCrawler(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteCrawlerAsync(array $args = [])
 * @method \Aws\Result deleteCustomEntityType(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteCustomEntityTypeAsync(array $args = [])
 * @method \Aws\Result deleteDataQualityRuleset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteDataQualityRulesetAsync(array $args = [])
 * @method \Aws\Result deleteDatabase(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteDatabaseAsync(array $args = [])
 * @method \Aws\Result deleteDevEndpoint(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteDevEndpointAsync(array $args = [])
 * @method \Aws\Result deleteJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteJobAsync(array $args = [])
 * @method \Aws\Result deleteMLTransform(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteMLTransformAsync(array $args = [])
 * @method \Aws\Result deletePartition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deletePartitionAsync(array $args = [])
 * @method \Aws\Result deletePartitionIndex(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deletePartitionIndexAsync(array $args = [])
 * @method \Aws\Result deleteRegistry(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteRegistryAsync(array $args = [])
 * @method \Aws\Result deleteResourcePolicy(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteResourcePolicyAsync(array $args = [])
 * @method \Aws\Result deleteSchema(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteSchemaAsync(array $args = [])
 * @method \Aws\Result deleteSchemaVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteSchemaVersionsAsync(array $args = [])
 * @method \Aws\Result deleteSecurityConfiguration(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteSecurityConfigurationAsync(array $args = [])
 * @method \Aws\Result deleteSession(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteSessionAsync(array $args = [])
 * @method \Aws\Result deleteTable(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteTableAsync(array $args = [])
 * @method \Aws\Result deleteTableVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteTableVersionAsync(array $args = [])
 * @method \Aws\Result deleteTrigger(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteTriggerAsync(array $args = [])
 * @method \Aws\Result deleteUserDefinedFunction(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteUserDefinedFunctionAsync(array $args = [])
 * @method \Aws\Result deleteWorkflow(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteWorkflowAsync(array $args = [])
 * @method \Aws\Result getBlueprint(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getBlueprintAsync(array $args = [])
 * @method \Aws\Result getBlueprintRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getBlueprintRunAsync(array $args = [])
 * @method \Aws\Result getBlueprintRuns(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getBlueprintRunsAsync(array $args = [])
 * @method \Aws\Result getCatalogImportStatus(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getCatalogImportStatusAsync(array $args = [])
 * @method \Aws\Result getClassifier(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getClassifierAsync(array $args = [])
 * @method \Aws\Result getClassifiers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getClassifiersAsync(array $args = [])
 * @method \Aws\Result getColumnStatisticsForPartition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getColumnStatisticsForPartitionAsync(array $args = [])
 * @method \Aws\Result getColumnStatisticsForTable(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getColumnStatisticsForTableAsync(array $args = [])
 * @method \Aws\Result getConnection(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getConnectionAsync(array $args = [])
 * @method \Aws\Result getConnections(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getConnectionsAsync(array $args = [])
 * @method \Aws\Result getCrawler(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getCrawlerAsync(array $args = [])
 * @method \Aws\Result getCrawlerMetrics(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getCrawlerMetricsAsync(array $args = [])
 * @method \Aws\Result getCrawlers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getCrawlersAsync(array $args = [])
 * @method \Aws\Result getCustomEntityType(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getCustomEntityTypeAsync(array $args = [])
 * @method \Aws\Result getDataCatalogEncryptionSettings(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDataCatalogEncryptionSettingsAsync(array $args = [])
 * @method \Aws\Result getDataQualityResult(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDataQualityResultAsync(array $args = [])
 * @method \Aws\Result getDataQualityRuleRecommendationRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDataQualityRuleRecommendationRunAsync(array $args = [])
 * @method \Aws\Result getDataQualityRuleset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDataQualityRulesetAsync(array $args = [])
 * @method \Aws\Result getDataQualityRulesetEvaluationRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDataQualityRulesetEvaluationRunAsync(array $args = [])
 * @method \Aws\Result getDatabase(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDatabaseAsync(array $args = [])
 * @method \Aws\Result getDatabases(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDatabasesAsync(array $args = [])
 * @method \Aws\Result getDataflowGraph(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDataflowGraphAsync(array $args = [])
 * @method \Aws\Result getDevEndpoint(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDevEndpointAsync(array $args = [])
 * @method \Aws\Result getDevEndpoints(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDevEndpointsAsync(array $args = [])
 * @method \Aws\Result getJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getJobAsync(array $args = [])
 * @method \Aws\Result getJobBookmark(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getJobBookmarkAsync(array $args = [])
 * @method \Aws\Result getJobRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getJobRunAsync(array $args = [])
 * @method \Aws\Result getJobRuns(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getJobRunsAsync(array $args = [])
 * @method \Aws\Result getJobs(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getJobsAsync(array $args = [])
 * @method \Aws\Result getMLTaskRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMLTaskRunAsync(array $args = [])
 * @method \Aws\Result getMLTaskRuns(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMLTaskRunsAsync(array $args = [])
 * @method \Aws\Result getMLTransform(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMLTransformAsync(array $args = [])
 * @method \Aws\Result getMLTransforms(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMLTransformsAsync(array $args = [])
 * @method \Aws\Result getMapping(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMappingAsync(array $args = [])
 * @method \Aws\Result getPartition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getPartitionAsync(array $args = [])
 * @method \Aws\Result getPartitionIndexes(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getPartitionIndexesAsync(array $args = [])
 * @method \Aws\Result getPartitions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getPartitionsAsync(array $args = [])
 * @method \Aws\Result getPlan(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getPlanAsync(array $args = [])
 * @method \Aws\Result getRegistry(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getRegistryAsync(array $args = [])
 * @method \Aws\Result getResourcePolicies(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getResourcePoliciesAsync(array $args = [])
 * @method \Aws\Result getResourcePolicy(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getResourcePolicyAsync(array $args = [])
 * @method \Aws\Result getSchema(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getSchemaAsync(array $args = [])
 * @method \Aws\Result getSchemaByDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getSchemaByDefinitionAsync(array $args = [])
 * @method \Aws\Result getSchemaVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getSchemaVersionAsync(array $args = [])
 * @method \Aws\Result getSchemaVersionsDiff(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getSchemaVersionsDiffAsync(array $args = [])
 * @method \Aws\Result getSecurityConfiguration(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getSecurityConfigurationAsync(array $args = [])
 * @method \Aws\Result getSecurityConfigurations(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getSecurityConfigurationsAsync(array $args = [])
 * @method \Aws\Result getSession(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getSessionAsync(array $args = [])
 * @method \Aws\Result getStatement(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getStatementAsync(array $args = [])
 * @method \Aws\Result getTable(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getTableAsync(array $args = [])
 * @method \Aws\Result getTableVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getTableVersionAsync(array $args = [])
 * @method \Aws\Result getTableVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getTableVersionsAsync(array $args = [])
 * @method \Aws\Result getTables(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getTablesAsync(array $args = [])
 * @method \Aws\Result getTags(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getTagsAsync(array $args = [])
 * @method \Aws\Result getTrigger(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getTriggerAsync(array $args = [])
 * @method \Aws\Result getTriggers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getTriggersAsync(array $args = [])
 * @method \Aws\Result getUnfilteredPartitionMetadata(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getUnfilteredPartitionMetadataAsync(array $args = [])
 * @method \Aws\Result getUnfilteredPartitionsMetadata(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getUnfilteredPartitionsMetadataAsync(array $args = [])
 * @method \Aws\Result getUnfilteredTableMetadata(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getUnfilteredTableMetadataAsync(array $args = [])
 * @method \Aws\Result getUserDefinedFunction(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getUserDefinedFunctionAsync(array $args = [])
 * @method \Aws\Result getUserDefinedFunctions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getUserDefinedFunctionsAsync(array $args = [])
 * @method \Aws\Result getWorkflow(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getWorkflowAsync(array $args = [])
 * @method \Aws\Result getWorkflowRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getWorkflowRunAsync(array $args = [])
 * @method \Aws\Result getWorkflowRunProperties(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getWorkflowRunPropertiesAsync(array $args = [])
 * @method \Aws\Result getWorkflowRuns(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getWorkflowRunsAsync(array $args = [])
 * @method \Aws\Result importCatalogToGlue(array $args = [])
 * @method \GuzzleHttp\Promise\Promise importCatalogToGlueAsync(array $args = [])
 * @method \Aws\Result listBlueprints(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listBlueprintsAsync(array $args = [])
 * @method \Aws\Result listCrawlers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listCrawlersAsync(array $args = [])
 * @method \Aws\Result listCrawls(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listCrawlsAsync(array $args = [])
 * @method \Aws\Result listCustomEntityTypes(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listCustomEntityTypesAsync(array $args = [])
 * @method \Aws\Result listDataQualityResults(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDataQualityResultsAsync(array $args = [])
 * @method \Aws\Result listDataQualityRuleRecommendationRuns(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDataQualityRuleRecommendationRunsAsync(array $args = [])
 * @method \Aws\Result listDataQualityRulesetEvaluationRuns(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDataQualityRulesetEvaluationRunsAsync(array $args = [])
 * @method \Aws\Result listDataQualityRulesets(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDataQualityRulesetsAsync(array $args = [])
 * @method \Aws\Result listDevEndpoints(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDevEndpointsAsync(array $args = [])
 * @method \Aws\Result listJobs(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listJobsAsync(array $args = [])
 * @method \Aws\Result listMLTransforms(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listMLTransformsAsync(array $args = [])
 * @method \Aws\Result listRegistries(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listRegistriesAsync(array $args = [])
 * @method \Aws\Result listSchemaVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listSchemaVersionsAsync(array $args = [])
 * @method \Aws\Result listSchemas(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listSchemasAsync(array $args = [])
 * @method \Aws\Result listSessions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listSessionsAsync(array $args = [])
 * @method \Aws\Result listStatements(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listStatementsAsync(array $args = [])
 * @method \Aws\Result listTriggers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listTriggersAsync(array $args = [])
 * @method \Aws\Result listWorkflows(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listWorkflowsAsync(array $args = [])
 * @method \Aws\Result putDataCatalogEncryptionSettings(array $args = [])
 * @method \GuzzleHttp\Promise\Promise putDataCatalogEncryptionSettingsAsync(array $args = [])
 * @method \Aws\Result putResourcePolicy(array $args = [])
 * @method \GuzzleHttp\Promise\Promise putResourcePolicyAsync(array $args = [])
 * @method \Aws\Result putSchemaVersionMetadata(array $args = [])
 * @method \GuzzleHttp\Promise\Promise putSchemaVersionMetadataAsync(array $args = [])
 * @method \Aws\Result putWorkflowRunProperties(array $args = [])
 * @method \GuzzleHttp\Promise\Promise putWorkflowRunPropertiesAsync(array $args = [])
 * @method \Aws\Result querySchemaVersionMetadata(array $args = [])
 * @method \GuzzleHttp\Promise\Promise querySchemaVersionMetadataAsync(array $args = [])
 * @method \Aws\Result registerSchemaVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise registerSchemaVersionAsync(array $args = [])
 * @method \Aws\Result removeSchemaVersionMetadata(array $args = [])
 * @method \GuzzleHttp\Promise\Promise removeSchemaVersionMetadataAsync(array $args = [])
 * @method \Aws\Result resetJobBookmark(array $args = [])
 * @method \GuzzleHttp\Promise\Promise resetJobBookmarkAsync(array $args = [])
 * @method \Aws\Result resumeWorkflowRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise resumeWorkflowRunAsync(array $args = [])
 * @method \Aws\Result runStatement(array $args = [])
 * @method \GuzzleHttp\Promise\Promise runStatementAsync(array $args = [])
 * @method \Aws\Result searchTables(array $args = [])
 * @method \GuzzleHttp\Promise\Promise searchTablesAsync(array $args = [])
 * @method \Aws\Result startBlueprintRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startBlueprintRunAsync(array $args = [])
 * @method \Aws\Result startCrawler(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startCrawlerAsync(array $args = [])
 * @method \Aws\Result startCrawlerSchedule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startCrawlerScheduleAsync(array $args = [])
 * @method \Aws\Result startDataQualityRuleRecommendationRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startDataQualityRuleRecommendationRunAsync(array $args = [])
 * @method \Aws\Result startDataQualityRulesetEvaluationRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startDataQualityRulesetEvaluationRunAsync(array $args = [])
 * @method \Aws\Result startExportLabelsTaskRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startExportLabelsTaskRunAsync(array $args = [])
 * @method \Aws\Result startImportLabelsTaskRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startImportLabelsTaskRunAsync(array $args = [])
 * @method \Aws\Result startJobRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startJobRunAsync(array $args = [])
 * @method \Aws\Result startMLEvaluationTaskRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startMLEvaluationTaskRunAsync(array $args = [])
 * @method \Aws\Result startMLLabelingSetGenerationTaskRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startMLLabelingSetGenerationTaskRunAsync(array $args = [])
 * @method \Aws\Result startTrigger(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startTriggerAsync(array $args = [])
 * @method \Aws\Result startWorkflowRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startWorkflowRunAsync(array $args = [])
 * @method \Aws\Result stopCrawler(array $args = [])
 * @method \GuzzleHttp\Promise\Promise stopCrawlerAsync(array $args = [])
 * @method \Aws\Result stopCrawlerSchedule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise stopCrawlerScheduleAsync(array $args = [])
 * @method \Aws\Result stopSession(array $args = [])
 * @method \GuzzleHttp\Promise\Promise stopSessionAsync(array $args = [])
 * @method \Aws\Result stopTrigger(array $args = [])
 * @method \GuzzleHttp\Promise\Promise stopTriggerAsync(array $args = [])
 * @method \Aws\Result stopWorkflowRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise stopWorkflowRunAsync(array $args = [])
 * @method \Aws\Result tagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
 * @method \Aws\Result untagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
 * @method \Aws\Result updateBlueprint(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateBlueprintAsync(array $args = [])
 * @method \Aws\Result updateClassifier(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateClassifierAsync(array $args = [])
 * @method \Aws\Result updateColumnStatisticsForPartition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateColumnStatisticsForPartitionAsync(array $args = [])
 * @method \Aws\Result updateColumnStatisticsForTable(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateColumnStatisticsForTableAsync(array $args = [])
 * @method \Aws\Result updateConnection(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateConnectionAsync(array $args = [])
 * @method \Aws\Result updateCrawler(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateCrawlerAsync(array $args = [])
 * @method \Aws\Result updateCrawlerSchedule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateCrawlerScheduleAsync(array $args = [])
 * @method \Aws\Result updateDataQualityRuleset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateDataQualityRulesetAsync(array $args = [])
 * @method \Aws\Result updateDatabase(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateDatabaseAsync(array $args = [])
 * @method \Aws\Result updateDevEndpoint(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateDevEndpointAsync(array $args = [])
 * @method \Aws\Result updateJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateJobAsync(array $args = [])
 * @method \Aws\Result updateJobFromSourceControl(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateJobFromSourceControlAsync(array $args = [])
 * @method \Aws\Result updateMLTransform(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateMLTransformAsync(array $args = [])
 * @method \Aws\Result updatePartition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updatePartitionAsync(array $args = [])
 * @method \Aws\Result updateRegistry(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateRegistryAsync(array $args = [])
 * @method \Aws\Result updateSchema(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateSchemaAsync(array $args = [])
 * @method \Aws\Result updateSourceControlFromJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateSourceControlFromJobAsync(array $args = [])
 * @method \Aws\Result updateTable(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateTableAsync(array $args = [])
 * @method \Aws\Result updateTrigger(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateTriggerAsync(array $args = [])
 * @method \Aws\Result updateUserDefinedFunction(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateUserDefinedFunctionAsync(array $args = [])
 * @method \Aws\Result updateWorkflow(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateWorkflowAsync(array $args = [])
 */
class GlueClient extends AwsClient {}


<?php
namespace Aws\Glue\Exception;

use Aws\Exception\AwsException;

/**
 * Represents an error interacting with the **AWS Glue** service.
 */
class GlueException extends AwsException {}


<?php
namespace Aws\GlueDataBrew;

use Aws\AwsClient;

/**
 * This client is used to interact with the **AWS Glue DataBrew** service.
 * @method \Aws\Result batchDeleteRecipeVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchDeleteRecipeVersionAsync(array $args = [])
 * @method \Aws\Result createDataset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDatasetAsync(array $args = [])
 * @method \Aws\Result createProfileJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createProfileJobAsync(array $args = [])
 * @method \Aws\Result createProject(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createProjectAsync(array $args = [])
 * @method \Aws\Result createRecipe(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createRecipeAsync(array $args = [])
 * @method \Aws\Result createRecipeJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createRecipeJobAsync(array $args = [])
 * @method \Aws\Result createRuleset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createRulesetAsync(array $args = [])
 * @method \Aws\Result createSchedule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createScheduleAsync(array $args = [])
 * @method \Aws\Result deleteDataset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteDatasetAsync(array $args = [])
 * @method \Aws\Result deleteJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteJobAsync(array $args = [])
 * @method \Aws\Result deleteProject(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteProjectAsync(array $args = [])
 * @method \Aws\Result deleteRecipeVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteRecipeVersionAsync(array $args = [])
 * @method \Aws\Result deleteRuleset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteRulesetAsync(array $args = [])
 * @method \Aws\Result deleteSchedule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteScheduleAsync(array $args = [])
 * @method \Aws\Result describeDataset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeDatasetAsync(array $args = [])
 * @method \Aws\Result describeJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeJobAsync(array $args = [])
 * @method \Aws\Result describeJobRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeJobRunAsync(array $args = [])
 * @method \Aws\Result describeProject(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeProjectAsync(array $args = [])
 * @method \Aws\Result describeRecipe(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeRecipeAsync(array $args = [])
 * @method \Aws\Result describeRuleset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeRulesetAsync(array $args = [])
 * @method \Aws\Result describeSchedule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeScheduleAsync(array $args = [])
 * @method \Aws\Result listDatasets(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDatasetsAsync(array $args = [])
 * @method \Aws\Result listJobRuns(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listJobRunsAsync(array $args = [])
 * @method \Aws\Result listJobs(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listJobsAsync(array $args = [])
 * @method \Aws\Result listProjects(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listProjectsAsync(array $args = [])
 * @method \Aws\Result listRecipeVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listRecipeVersionsAsync(array $args = [])
 * @method \Aws\Result listRecipes(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listRecipesAsync(array $args = [])
 * @method \Aws\Result listRulesets(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listRulesetsAsync(array $args = [])
 * @method \Aws\Result listSchedules(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listSchedulesAsync(array $args = [])
 * @method \Aws\Result listTagsForResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
 * @method \Aws\Result publishRecipe(array $args = [])
 * @method \GuzzleHttp\Promise\Promise publishRecipeAsync(array $args = [])
 * @method \Aws\Result sendProjectSessionAction(array $args = [])
 * @method \GuzzleHttp\Promise\Promise sendProjectSessionActionAsync(array $args = [])
 * @method \Aws\Result startJobRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startJobRunAsync(array $args = [])
 * @method \Aws\Result startProjectSession(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startProjectSessionAsync(array $args = [])
 * @method \Aws\Result stopJobRun(array $args = [])
 * @method \GuzzleHttp\Promise\Promise stopJobRunAsync(array $args = [])
 * @method \Aws\Result tagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
 * @method \Aws\Result untagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
 * @method \Aws\Result updateDataset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateDatasetAsync(array $args = [])
 * @method \Aws\Result updateProfileJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateProfileJobAsync(array $args = [])
 * @method \Aws\Result updateProject(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateProjectAsync(array $args = [])
 * @method \Aws\Result updateRecipe(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateRecipeAsync(array $args = [])
 * @method \Aws\Result updateRecipeJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateRecipeJobAsync(array $args = [])
 * @method \Aws\Result updateRuleset(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateRulesetAsync(array $args = [])
 * @method \Aws\Result updateSchedule(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateScheduleAsync(array $args = [])
 */
class GlueDataBrewClient extends AwsClient {}


<?php
namespace Aws\GlueDataBrew\Exception;

use Aws\Exception\AwsException;

/**
 * Represents an error interacting with the **AWS Glue DataBrew** service.
 */
class GlueDataBrewException extends AwsException {}


<?php
namespace Aws\Greengrass;

use Aws\AwsClient;

/**
 * This client is used to interact with the **AWS Greengrass** service.
 * @method \Aws\Result associateRoleToGroup(array $args = [])
 * @method \GuzzleHttp\Promise\Promise associateRoleToGroupAsync(array $args = [])
 * @method \Aws\Result associateServiceRoleToAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise associateServiceRoleToAccountAsync(array $args = [])
 * @method \Aws\Result createConnectorDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createConnectorDefinitionAsync(array $args = [])
 * @method \Aws\Result createConnectorDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createConnectorDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result createCoreDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createCoreDefinitionAsync(array $args = [])
 * @method \Aws\Result createCoreDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createCoreDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result createDeployment(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDeploymentAsync(array $args = [])
 * @method \Aws\Result createDeviceDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDeviceDefinitionAsync(array $args = [])
 * @method \Aws\Result createDeviceDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDeviceDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result createFunctionDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createFunctionDefinitionAsync(array $args = [])
 * @method \Aws\Result createFunctionDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createFunctionDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result createGroup(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createGroupAsync(array $args = [])
 * @method \Aws\Result createGroupCertificateAuthority(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createGroupCertificateAuthorityAsync(array $args = [])
 * @method \Aws\Result createGroupVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createGroupVersionAsync(array $args = [])
 * @method \Aws\Result createLoggerDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createLoggerDefinitionAsync(array $args = [])
 * @method \Aws\Result createLoggerDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createLoggerDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result createResourceDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createResourceDefinitionAsync(array $args = [])
 * @method \Aws\Result createResourceDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createResourceDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result createSoftwareUpdateJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createSoftwareUpdateJobAsync(array $args = [])
 * @method \Aws\Result createSubscriptionDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createSubscriptionDefinitionAsync(array $args = [])
 * @method \Aws\Result createSubscriptionDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createSubscriptionDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result deleteConnectorDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteConnectorDefinitionAsync(array $args = [])
 * @method \Aws\Result deleteCoreDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteCoreDefinitionAsync(array $args = [])
 * @method \Aws\Result deleteDeviceDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteDeviceDefinitionAsync(array $args = [])
 * @method \Aws\Result deleteFunctionDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteFunctionDefinitionAsync(array $args = [])
 * @method \Aws\Result deleteGroup(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteGroupAsync(array $args = [])
 * @method \Aws\Result deleteLoggerDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteLoggerDefinitionAsync(array $args = [])
 * @method \Aws\Result deleteResourceDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteResourceDefinitionAsync(array $args = [])
 * @method \Aws\Result deleteSubscriptionDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteSubscriptionDefinitionAsync(array $args = [])
 * @method \Aws\Result disassociateRoleFromGroup(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disassociateRoleFromGroupAsync(array $args = [])
 * @method \Aws\Result disassociateServiceRoleFromAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disassociateServiceRoleFromAccountAsync(array $args = [])
 * @method \Aws\Result getAssociatedRole(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getAssociatedRoleAsync(array $args = [])
 * @method \Aws\Result getBulkDeploymentStatus(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getBulkDeploymentStatusAsync(array $args = [])
 * @method \Aws\Result getConnectivityInfo(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getConnectivityInfoAsync(array $args = [])
 * @method \Aws\Result getConnectorDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getConnectorDefinitionAsync(array $args = [])
 * @method \Aws\Result getConnectorDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getConnectorDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result getCoreDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getCoreDefinitionAsync(array $args = [])
 * @method \Aws\Result getCoreDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getCoreDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result getDeploymentStatus(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDeploymentStatusAsync(array $args = [])
 * @method \Aws\Result getDeviceDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDeviceDefinitionAsync(array $args = [])
 * @method \Aws\Result getDeviceDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDeviceDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result getFunctionDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getFunctionDefinitionAsync(array $args = [])
 * @method \Aws\Result getFunctionDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getFunctionDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result getGroup(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getGroupAsync(array $args = [])
 * @method \Aws\Result getGroupCertificateAuthority(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getGroupCertificateAuthorityAsync(array $args = [])
 * @method \Aws\Result getGroupCertificateConfiguration(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getGroupCertificateConfigurationAsync(array $args = [])
 * @method \Aws\Result getGroupVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getGroupVersionAsync(array $args = [])
 * @method \Aws\Result getLoggerDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getLoggerDefinitionAsync(array $args = [])
 * @method \Aws\Result getLoggerDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getLoggerDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result getResourceDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getResourceDefinitionAsync(array $args = [])
 * @method \Aws\Result getResourceDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getResourceDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result getServiceRoleForAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getServiceRoleForAccountAsync(array $args = [])
 * @method \Aws\Result getSubscriptionDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getSubscriptionDefinitionAsync(array $args = [])
 * @method \Aws\Result getSubscriptionDefinitionVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getSubscriptionDefinitionVersionAsync(array $args = [])
 * @method \Aws\Result getThingRuntimeConfiguration(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getThingRuntimeConfigurationAsync(array $args = [])
 * @method \Aws\Result listBulkDeploymentDetailedReports(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listBulkDeploymentDetailedReportsAsync(array $args = [])
 * @method \Aws\Result listBulkDeployments(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listBulkDeploymentsAsync(array $args = [])
 * @method \Aws\Result listConnectorDefinitionVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listConnectorDefinitionVersionsAsync(array $args = [])
 * @method \Aws\Result listConnectorDefinitions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listConnectorDefinitionsAsync(array $args = [])
 * @method \Aws\Result listCoreDefinitionVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listCoreDefinitionVersionsAsync(array $args = [])
 * @method \Aws\Result listCoreDefinitions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listCoreDefinitionsAsync(array $args = [])
 * @method \Aws\Result listDeployments(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDeploymentsAsync(array $args = [])
 * @method \Aws\Result listDeviceDefinitionVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDeviceDefinitionVersionsAsync(array $args = [])
 * @method \Aws\Result listDeviceDefinitions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDeviceDefinitionsAsync(array $args = [])
 * @method \Aws\Result listFunctionDefinitionVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listFunctionDefinitionVersionsAsync(array $args = [])
 * @method \Aws\Result listFunctionDefinitions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listFunctionDefinitionsAsync(array $args = [])
 * @method \Aws\Result listGroupCertificateAuthorities(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listGroupCertificateAuthoritiesAsync(array $args = [])
 * @method \Aws\Result listGroupVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listGroupVersionsAsync(array $args = [])
 * @method \Aws\Result listGroups(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listGroupsAsync(array $args = [])
 * @method \Aws\Result listLoggerDefinitionVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listLoggerDefinitionVersionsAsync(array $args = [])
 * @method \Aws\Result listLoggerDefinitions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listLoggerDefinitionsAsync(array $args = [])
 * @method \Aws\Result listResourceDefinitionVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listResourceDefinitionVersionsAsync(array $args = [])
 * @method \Aws\Result listResourceDefinitions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listResourceDefinitionsAsync(array $args = [])
 * @method \Aws\Result listSubscriptionDefinitionVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listSubscriptionDefinitionVersionsAsync(array $args = [])
 * @method \Aws\Result listSubscriptionDefinitions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listSubscriptionDefinitionsAsync(array $args = [])
 * @method \Aws\Result listTagsForResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
 * @method \Aws\Result resetDeployments(array $args = [])
 * @method \GuzzleHttp\Promise\Promise resetDeploymentsAsync(array $args = [])
 * @method \Aws\Result startBulkDeployment(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startBulkDeploymentAsync(array $args = [])
 * @method \Aws\Result stopBulkDeployment(array $args = [])
 * @method \GuzzleHttp\Promise\Promise stopBulkDeploymentAsync(array $args = [])
 * @method \Aws\Result tagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
 * @method \Aws\Result untagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
 * @method \Aws\Result updateConnectivityInfo(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateConnectivityInfoAsync(array $args = [])
 * @method \Aws\Result updateConnectorDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateConnectorDefinitionAsync(array $args = [])
 * @method \Aws\Result updateCoreDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateCoreDefinitionAsync(array $args = [])
 * @method \Aws\Result updateDeviceDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateDeviceDefinitionAsync(array $args = [])
 * @method \Aws\Result updateFunctionDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateFunctionDefinitionAsync(array $args = [])
 * @method \Aws\Result updateGroup(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateGroupAsync(array $args = [])
 * @method \Aws\Result updateGroupCertificateConfiguration(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateGroupCertificateConfigurationAsync(array $args = [])
 * @method \Aws\Result updateLoggerDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateLoggerDefinitionAsync(array $args = [])
 * @method \Aws\Result updateResourceDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateResourceDefinitionAsync(array $args = [])
 * @method \Aws\Result updateSubscriptionDefinition(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateSubscriptionDefinitionAsync(array $args = [])
 * @method \Aws\Result updateThingRuntimeConfiguration(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateThingRuntimeConfigurationAsync(array $args = [])
 */
class GreengrassClient extends AwsClient {}


<?php
namespace Aws\Greengrass\Exception;

use Aws\Exception\AwsException;

/**
 * Represents an error interacting with the **AWS Greengrass** service.
 */
class GreengrassException extends AwsException {}


<?php
namespace Aws\GreengrassV2;

use Aws\AwsClient;

/**
 * This client is used to interact with the **AWS IoT Greengrass V2** service.
 * @method \Aws\Result associateServiceRoleToAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise associateServiceRoleToAccountAsync(array $args = [])
 * @method \Aws\Result batchAssociateClientDeviceWithCoreDevice(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchAssociateClientDeviceWithCoreDeviceAsync(array $args = [])
 * @method \Aws\Result batchDisassociateClientDeviceFromCoreDevice(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchDisassociateClientDeviceFromCoreDeviceAsync(array $args = [])
 * @method \Aws\Result cancelDeployment(array $args = [])
 * @method \GuzzleHttp\Promise\Promise cancelDeploymentAsync(array $args = [])
 * @method \Aws\Result createComponentVersion(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createComponentVersionAsync(array $args = [])
 * @method \Aws\Result createDeployment(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDeploymentAsync(array $args = [])
 * @method \Aws\Result deleteComponent(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteComponentAsync(array $args = [])
 * @method \Aws\Result deleteCoreDevice(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteCoreDeviceAsync(array $args = [])
 * @method \Aws\Result deleteDeployment(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteDeploymentAsync(array $args = [])
 * @method \Aws\Result describeComponent(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeComponentAsync(array $args = [])
 * @method \Aws\Result disassociateServiceRoleFromAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disassociateServiceRoleFromAccountAsync(array $args = [])
 * @method \Aws\Result getComponent(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getComponentAsync(array $args = [])
 * @method \Aws\Result getComponentVersionArtifact(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getComponentVersionArtifactAsync(array $args = [])
 * @method \Aws\Result getConnectivityInfo(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getConnectivityInfoAsync(array $args = [])
 * @method \Aws\Result getCoreDevice(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getCoreDeviceAsync(array $args = [])
 * @method \Aws\Result getDeployment(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDeploymentAsync(array $args = [])
 * @method \Aws\Result getServiceRoleForAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getServiceRoleForAccountAsync(array $args = [])
 * @method \Aws\Result listClientDevicesAssociatedWithCoreDevice(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listClientDevicesAssociatedWithCoreDeviceAsync(array $args = [])
 * @method \Aws\Result listComponentVersions(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listComponentVersionsAsync(array $args = [])
 * @method \Aws\Result listComponents(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listComponentsAsync(array $args = [])
 * @method \Aws\Result listCoreDevices(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listCoreDevicesAsync(array $args = [])
 * @method \Aws\Result listDeployments(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDeploymentsAsync(array $args = [])
 * @method \Aws\Result listEffectiveDeployments(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listEffectiveDeploymentsAsync(array $args = [])
 * @method \Aws\Result listInstalledComponents(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listInstalledComponentsAsync(array $args = [])
 * @method \Aws\Result listTagsForResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
 * @method \Aws\Result resolveComponentCandidates(array $args = [])
 * @method \GuzzleHttp\Promise\Promise resolveComponentCandidatesAsync(array $args = [])
 * @method \Aws\Result tagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
 * @method \Aws\Result untagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
 * @method \Aws\Result updateConnectivityInfo(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateConnectivityInfoAsync(array $args = [])
 */
class GreengrassV2Client extends AwsClient {}


<?php
namespace Aws\GreengrassV2\Exception;

use Aws\Exception\AwsException;

/**
 * Represents an error interacting with the **AWS IoT Greengrass V2** service.
 */
class GreengrassV2Exception extends AwsException {}


<?php
namespace Aws\GroundStation;

use Aws\AwsClient;

/**
 * This client is used to interact with the **AWS Ground Station** service.
 * @method \Aws\Result cancelContact(array $args = [])
 * @method \GuzzleHttp\Promise\Promise cancelContactAsync(array $args = [])
 * @method \Aws\Result createConfig(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createConfigAsync(array $args = [])
 * @method \Aws\Result createDataflowEndpointGroup(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDataflowEndpointGroupAsync(array $args = [])
 * @method \Aws\Result createEphemeris(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createEphemerisAsync(array $args = [])
 * @method \Aws\Result createMissionProfile(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createMissionProfileAsync(array $args = [])
 * @method \Aws\Result deleteConfig(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteConfigAsync(array $args = [])
 * @method \Aws\Result deleteDataflowEndpointGroup(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteDataflowEndpointGroupAsync(array $args = [])
 * @method \Aws\Result deleteEphemeris(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteEphemerisAsync(array $args = [])
 * @method \Aws\Result deleteMissionProfile(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteMissionProfileAsync(array $args = [])
 * @method \Aws\Result describeContact(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeContactAsync(array $args = [])
 * @method \Aws\Result describeEphemeris(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeEphemerisAsync(array $args = [])
 * @method \Aws\Result getAgentConfiguration(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getAgentConfigurationAsync(array $args = [])
 * @method \Aws\Result getMissionProfileConfig(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMissionProfileConfigAsync(array $args = [])
 * @method \Aws\Result getDataflowEndpointGroup(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDataflowEndpointGroupAsync(array $args = [])
 * @method \Aws\Result getMinuteUsage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMinuteUsageAsync(array $args = [])
 * @method \Aws\Result getMissionProfile(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMissionProfileAsync(array $args = [])
 * @method \Aws\Result getSatellite(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getSatelliteAsync(array $args = [])
 * @method \Aws\Result listConfigs(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listConfigsAsync(array $args = [])
 * @method \Aws\Result listContacts(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listContactsAsync(array $args = [])
 * @method \Aws\Result listDataflowEndpointGroups(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDataflowEndpointGroupsAsync(array $args = [])
 * @method \Aws\Result listEphemerides(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listEphemeridesAsync(array $args = [])
 * @method \Aws\Result listGroundStations(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listGroundStationsAsync(array $args = [])
 * @method \Aws\Result listMissionProfiles(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listMissionProfilesAsync(array $args = [])
 * @method \Aws\Result listSatellites(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listSatellitesAsync(array $args = [])
 * @method \Aws\Result listTagsForResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
 * @method \Aws\Result registerAgent(array $args = [])
 * @method \GuzzleHttp\Promise\Promise registerAgentAsync(array $args = [])
 * @method \Aws\Result reserveContact(array $args = [])
 * @method \GuzzleHttp\Promise\Promise reserveContactAsync(array $args = [])
 * @method \Aws\Result tagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
 * @method \Aws\Result untagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
 * @method \Aws\Result updateAgentStatus(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateAgentStatusAsync(array $args = [])
 * @method \Aws\Result updateConfig(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateConfigAsync(array $args = [])
 * @method \Aws\Result updateEphemeris(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateEphemerisAsync(array $args = [])
 * @method \Aws\Result updateMissionProfile(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateMissionProfileAsync(array $args = [])
 */
class GroundStationClient extends AwsClient {}


<?php
namespace Aws\GroundStation\Exception;

use Aws\Exception\AwsException;

/**
 * Represents an error interacting with the **AWS Ground Station** service.
 */
class GroundStationException extends AwsException {}


<?php
namespace Aws\GuardDuty;

use Aws\AwsClient;

/**
 * This client is used to interact with the **Amazon GuardDuty** service.
 * @method \Aws\Result acceptAdministratorInvitation(array $args = [])
 * @method \GuzzleHttp\Promise\Promise acceptAdministratorInvitationAsync(array $args = [])
 * @method \Aws\Result acceptInvitation(array $args = [])
 * @method \GuzzleHttp\Promise\Promise acceptInvitationAsync(array $args = [])
 * @method \Aws\Result archiveFindings(array $args = [])
 * @method \GuzzleHttp\Promise\Promise archiveFindingsAsync(array $args = [])
 * @method \Aws\Result createDetector(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createDetectorAsync(array $args = [])
 * @method \Aws\Result createFilter(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createFilterAsync(array $args = [])
 * @method \Aws\Result createIPSet(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createIPSetAsync(array $args = [])
 * @method \Aws\Result createMembers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createMembersAsync(array $args = [])
 * @method \Aws\Result createPublishingDestination(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createPublishingDestinationAsync(array $args = [])
 * @method \Aws\Result createSampleFindings(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createSampleFindingsAsync(array $args = [])
 * @method \Aws\Result createThreatIntelSet(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createThreatIntelSetAsync(array $args = [])
 * @method \Aws\Result declineInvitations(array $args = [])
 * @method \GuzzleHttp\Promise\Promise declineInvitationsAsync(array $args = [])
 * @method \Aws\Result deleteDetector(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteDetectorAsync(array $args = [])
 * @method \Aws\Result deleteFilter(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteFilterAsync(array $args = [])
 * @method \Aws\Result deleteIPSet(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteIPSetAsync(array $args = [])
 * @method \Aws\Result deleteInvitations(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteInvitationsAsync(array $args = [])
 * @method \Aws\Result deleteMembers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteMembersAsync(array $args = [])
 * @method \Aws\Result deletePublishingDestination(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deletePublishingDestinationAsync(array $args = [])
 * @method \Aws\Result deleteThreatIntelSet(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteThreatIntelSetAsync(array $args = [])
 * @method \Aws\Result describeMalwareScans(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeMalwareScansAsync(array $args = [])
 * @method \Aws\Result describeOrganizationConfiguration(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeOrganizationConfigurationAsync(array $args = [])
 * @method \Aws\Result describePublishingDestination(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describePublishingDestinationAsync(array $args = [])
 * @method \Aws\Result disableOrganizationAdminAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableOrganizationAdminAccountAsync(array $args = [])
 * @method \Aws\Result disassociateFromAdministratorAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disassociateFromAdministratorAccountAsync(array $args = [])
 * @method \Aws\Result disassociateFromMasterAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disassociateFromMasterAccountAsync(array $args = [])
 * @method \Aws\Result disassociateMembers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disassociateMembersAsync(array $args = [])
 * @method \Aws\Result enableOrganizationAdminAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableOrganizationAdminAccountAsync(array $args = [])
 * @method \Aws\Result getAdministratorAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getAdministratorAccountAsync(array $args = [])
 * @method \Aws\Result getCoverageStatistics(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getCoverageStatisticsAsync(array $args = [])
 * @method \Aws\Result getDetector(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getDetectorAsync(array $args = [])
 * @method \Aws\Result getFilter(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getFilterAsync(array $args = [])
 * @method \Aws\Result getFindings(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getFindingsAsync(array $args = [])
 * @method \Aws\Result getFindingsStatistics(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getFindingsStatisticsAsync(array $args = [])
 * @method \Aws\Result getIPSet(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getIPSetAsync(array $args = [])
 * @method \Aws\Result getInvitationsCount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getInvitationsCountAsync(array $args = [])
 * @method \Aws\Result getMalwareScanSettings(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMalwareScanSettingsAsync(array $args = [])
 * @method \Aws\Result getMasterAccount(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMasterAccountAsync(array $args = [])
 * @method \Aws\Result getMemberDetectors(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMemberDetectorsAsync(array $args = [])
 * @method \Aws\Result getMembers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getMembersAsync(array $args = [])
 * @method \Aws\Result getRemainingFreeTrialDays(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getRemainingFreeTrialDaysAsync(array $args = [])
 * @method \Aws\Result getThreatIntelSet(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getThreatIntelSetAsync(array $args = [])
 * @method \Aws\Result getUsageStatistics(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getUsageStatisticsAsync(array $args = [])
 * @method \Aws\Result inviteMembers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise inviteMembersAsync(array $args = [])
 * @method \Aws\Result listCoverage(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listCoverageAsync(array $args = [])
 * @method \Aws\Result listDetectors(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listDetectorsAsync(array $args = [])
 * @method \Aws\Result listFilters(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listFiltersAsync(array $args = [])
 * @method \Aws\Result listFindings(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listFindingsAsync(array $args = [])
 * @method \Aws\Result listIPSets(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listIPSetsAsync(array $args = [])
 * @method \Aws\Result listInvitations(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listInvitationsAsync(array $args = [])
 * @method \Aws\Result listMembers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listMembersAsync(array $args = [])
 * @method \Aws\Result listOrganizationAdminAccounts(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listOrganizationAdminAccountsAsync(array $args = [])
 * @method \Aws\Result listPublishingDestinations(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listPublishingDestinationsAsync(array $args = [])
 * @method \Aws\Result listTagsForResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
 * @method \Aws\Result listThreatIntelSets(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listThreatIntelSetsAsync(array $args = [])
 * @method \Aws\Result startMalwareScan(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startMalwareScanAsync(array $args = [])
 * @method \Aws\Result startMonitoringMembers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startMonitoringMembersAsync(array $args = [])
 * @method \Aws\Result stopMonitoringMembers(array $args = [])
 * @method \GuzzleHttp\Promise\Promise stopMonitoringMembersAsync(array $args = [])
 * @method \Aws\Result tagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
 * @method \Aws\Result unarchiveFindings(array $args = [])
 * @method \GuzzleHttp\Promise\Promise unarchiveFindingsAsync(array $args = [])
 * @method \Aws\Result untagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
 * @method \Aws\Result updateDetector(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateDetectorAsync(array $args = [])
 * @method \Aws\Result updateFilter(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateFilterAsync(array $args = [])
 * @method \Aws\Result updateFindingsFeedback(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateFindingsFeedbackAsync(array $args = [])
 * @method \Aws\Result updateIPSet(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateIPSetAsync(array $args = [])
 * @method \Aws\Result updateMalwareScanSettings(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateMalwareScanSettingsAsync(array $args = [])
 * @method \Aws\Result updateMemberDetectors(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateMemberDetectorsAsync(array $args = [])
 * @method \Aws\Result updateOrganizationConfiguration(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateOrganizationConfigurationAsync(array $args = [])
 * @method \Aws\Result updatePublishingDestination(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updatePublishingDestinationAsync(array $args = [])
 * @method \Aws\Result updateThreatIntelSet(array $args = [])
 * @method \GuzzleHttp\Promise\Promise updateThreatIntelSetAsync(array $args = [])
 */
class GuardDutyClient extends AwsClient {}


<?php
namespace Aws\GuardDuty\Exception;

use Aws\Exception\AwsException;

/**
 * Represents an error interacting with the **Amazon GuardDuty** service.
 */
class GuardDutyException extends AwsException {}


<?php
namespace Aws\Handler\GuzzleV5;

use Exception;
use GuzzleHttp\Client;
use GuzzleHttp\ClientInterface;
use GuzzleHttp\Event\EndEvent;
use GuzzleHttp\Exception\ConnectException;
use GuzzleHttp\Exception\RequestException;
use GuzzleHttp\Message\ResponseInterface as GuzzleResponse;
use GuzzleHttp\Promise;
use GuzzleHttp\Psr7\Response as Psr7Response;
use GuzzleHttp\Stream\Stream;
use Psr\Http\Message\RequestInterface as Psr7Request;
use Psr\Http\Message\StreamInterface as Psr7StreamInterface;

/**
 * A request handler that sends PSR-7-compatible requests with Guzzle 5.
 *
 * The handler accepts a PSR-7 Request object and an array of transfer options
 * and returns a Guzzle 6 Promise. The promise is either resolved with a
 * PSR-7 Response object or rejected with an array of error data.
 *
 * @codeCoverageIgnore
 */
class GuzzleHandler
{
    private static $validOptions = [
        'proxy'             => true,
        'expect'            => true,
        'cert'              => true,
        'verify'            => true,
        'timeout'           => true,
        'debug'             => true,
        'connect_timeout'   => true,
        'stream'            => true,
        'delay'             => true,
        'sink'              => true,
    ];

    /** @var ClientInterface */
    private $client;

    /**
     * @param ClientInterface $client
     */
    public function __construct(ClientInterface $client = null)
    {
        $this->client = $client ?: new Client();
    }

    /**
     * @param Psr7Request $request
     * @param array $options
     * @return Promise\Promise|Promise\PromiseInterface
     * @throws \GuzzleHttp\Exception\GuzzleException
     */
    public function __invoke(Psr7Request $request, array $options = [])
    {
        // Create and send a Guzzle 5 request
        $guzzlePromise = $this->client->send(
            $this->createGuzzleRequest($request, $options)
        );

        $promise = new Promise\Promise(
            function () use ($guzzlePromise) {
                try {
                    $guzzlePromise->wait();
                } catch (\Exception $e) {
                    // The promise is already delivered when the exception is
                    // thrown, so don't rethrow it.
                }
            },
            [$guzzlePromise, 'cancel']
        );

        $guzzlePromise->then([$promise, 'resolve'], [$promise, 'reject']);

        return $promise->then(
            function (GuzzleResponse $response) {
                // Adapt the Guzzle 5 Future to a Guzzle 6 ResponsePromise.
                return $this->createPsr7Response($response);
            },
            function (Exception $exception) use ($options) {
                // If we got a 'sink' that's a path, set the response body to
                // the contents of the file. This will build the resulting
                // exception with more information.
                if ($exception instanceof RequestException) {
                    if (isset($options['sink'])) {
                        if (!($options['sink'] instanceof Psr7StreamInterface)) {
                            $exception->getResponse()->setBody(
                                Stream::factory(
                                    file_get_contents($options['sink'])
                                )
                            );
                        }
                    }
                }
                // Reject with information about the error.
                return new Promise\RejectedPromise($this->prepareErrorData($exception));
            }
        );
    }

    private function createGuzzleRequest(Psr7Request $psrRequest, array $options)
    {
        $ringConfig = [];
        $statsCallback = isset($options['http_stats_receiver'])
            ? $options['http_stats_receiver']
            : null;
        unset($options['http_stats_receiver']);

        // Remove unsupported options.
        foreach (array_keys($options) as $key) {
            if (!isset(self::$validOptions[$key])) {
                unset($options[$key]);
            }
        }

        // Handle delay option.
        if (isset($options['delay'])) {
            $ringConfig['delay'] = $options['delay'];
            unset($options['delay']);
        }

        // Prepare sink option.
        if (isset($options['sink'])) {
            $ringConfig['save_to'] = ($options['sink'] instanceof Psr7StreamInterface)
                ? new GuzzleStream($options['sink'])
                : $options['sink'];
            unset($options['sink']);
        }

        // Ensure that all requests are async and lazy like Guzzle 6.
        $options['future'] = 'lazy';

        // Create the Guzzle 5 request from the provided PSR7 request.
        $request = $this->client->createRequest(
            $psrRequest->getMethod(),
            $psrRequest->getUri(),
            $options
        );

        if (is_callable($statsCallback)) {
            $request->getEmitter()->on(
                'end',
                function (EndEvent $event) use ($statsCallback) {
                    $statsCallback($event->getTransferInfo());
                }
            );
        }

        // For the request body, adapt the PSR stream to a Guzzle stream.
        $body = $psrRequest->getBody();
        if ($body->getSize() === 0) {
            $request->setBody(null);
        } else {
            $request->setBody(new GuzzleStream($body));
        }

        $request->setHeaders($psrRequest->getHeaders());

        $request->setHeader(
            'User-Agent',
            $request->getHeader('User-Agent')
                . ' ' . Client::getDefaultUserAgent()
        );

        // Make sure the delay is configured, if provided.
        if ($ringConfig) {
            foreach ($ringConfig as $k => $v) {
                $request->getConfig()->set($k, $v);
            }
        }

        return $request;
    }

    private function createPsr7Response(GuzzleResponse $response)
    {
        if ($body = $response->getBody()) {
            $body = new PsrStream($body);
        }

        return new Psr7Response(
            $response->getStatusCode(),
            $response->getHeaders(),
            $body,
            $response->getReasonPhrase()
        );
    }

    private function prepareErrorData(Exception $e)
    {
        $error = [
            'exception'        => $e,
            'connection_error' => false,
            'response'         => null,
        ];

        if ($e instanceof ConnectException) {
            $error['connection_error'] = true;
        }

        if ($e instanceof RequestException && $e->getResponse()) {
            $error['response'] = $this->createPsr7Response($e->getResponse());
        }

        return $error;
    }
}


<?php
namespace Aws\Handler\GuzzleV5;

use GuzzleHttp\Stream\StreamDecoratorTrait;
use GuzzleHttp\Stream\StreamInterface as GuzzleStreamInterface;
use Psr\Http\Message\StreamInterface as Psr7StreamInterface;

/**
 * Adapts a PSR-7 Stream to a Guzzle 5 Stream.
 *
 * @codeCoverageIgnore
 */
class GuzzleStream implements GuzzleStreamInterface
{
    use StreamDecoratorTrait;

    /** @var Psr7StreamInterface */
    private $stream;

    public function __construct(Psr7StreamInterface $stream)
    {
        $this->stream = $stream;
    }
}


<?php
namespace Aws\Handler\GuzzleV5;

use GuzzleHttp\Stream\StreamDecoratorTrait;
use GuzzleHttp\Stream\StreamInterface as GuzzleStreamInterface;
use Psr\Http\Message\StreamInterface as Psr7StreamInterface;

/**
 * Adapts a Guzzle 5 Stream to a PSR-7 Stream.
 *
 * @codeCoverageIgnore
 */
class PsrStream implements Psr7StreamInterface
{
    use StreamDecoratorTrait;

    /** @var GuzzleStreamInterface */
    private $stream;

    public function __construct(GuzzleStreamInterface $stream)
    {
        $this->stream = $stream;
    }

    public function rewind()
    {
        $this->stream->seek(0);
    }

    public function getContents()
    {
        return $this->stream->getContents();
    }
}


<?php
namespace Aws\Handler\GuzzleV6;

use Exception;
use GuzzleHttp\Exception\ConnectException;
use GuzzleHttp\Exception\RequestException;
use GuzzleHttp\Promise;
use GuzzleHttp\Client;
use GuzzleHttp\ClientInterface;
use GuzzleHttp\TransferStats;
use Psr\Http\Message\RequestInterface as Psr7Request;

/**
 * A request handler that sends PSR-7-compatible requests with Guzzle 6.
 */
class GuzzleHandler
{
    /** @var ClientInterface */
    private $client;

    /**
     * @param ClientInterface $client
     */
    public function __construct(ClientInterface $client = null)
    {
        $this->client = $client ?: new Client();
    }

    /**
     * @param Psr7Request $request
     * @param array       $options
     *
     * @return Promise\Promise
     */
    public function __invoke(Psr7Request $request, array $options = [])
    {
        $request = $request->withHeader(
            'User-Agent',
            $request->getHeaderLine('User-Agent')
                . ' ' . \GuzzleHttp\default_user_agent()
        );

        return $this->client->sendAsync($request, $this->parseOptions($options))
            ->otherwise(
                static function ($e) {
                    $error = [
                        'exception'        => $e,
                        'connection_error' => $e instanceof ConnectException,
                        'response'         => null,
                    ];

                    if (
                        ($e instanceof RequestException)
                        && $e->getResponse()
                    ) {
                        $error['response'] = $e->getResponse();
                    }

                    return new Promise\RejectedPromise($error);
                }
            );
    }

    private function parseOptions(array $options)
    {
        if (isset($options['http_stats_receiver'])) {
            $fn = $options['http_stats_receiver'];
            unset($options['http_stats_receiver']);

            $prev = isset($options['on_stats'])
                ? $options['on_stats']
                : null;

            $options['on_stats'] = static function (
                TransferStats $stats
            ) use ($fn, $prev) {
                if (is_callable($prev)) {
                    $prev($stats);
                }
                $transferStats = ['total_time' => $stats->getTransferTime()];
                $transferStats += $stats->getHandlerStats();
                $fn($transferStats);
            };
        }

        return $options;
    }
}


<?php
namespace Aws\Health;

use Aws\AwsClient;

/**
 * This client is used to interact with the **AWS Health APIs and Notifications** service.
 * @method \Aws\Result describeAffectedAccountsForOrganization(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeAffectedAccountsForOrganizationAsync(array $args = [])
 * @method \Aws\Result describeAffectedEntities(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeAffectedEntitiesAsync(array $args = [])
 * @method \Aws\Result describeAffectedEntitiesForOrganization(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeAffectedEntitiesForOrganizationAsync(array $args = [])
 * @method \Aws\Result describeEntityAggregates(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeEntityAggregatesAsync(array $args = [])
 * @method \Aws\Result describeEventAggregates(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeEventAggregatesAsync(array $args = [])
 * @method \Aws\Result describeEventDetails(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeEventDetailsAsync(array $args = [])
 * @method \Aws\Result describeEventDetailsForOrganization(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeEventDetailsForOrganizationAsync(array $args = [])
 * @method \Aws\Result describeEventTypes(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeEventTypesAsync(array $args = [])
 * @method \Aws\Result describeEvents(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeEventsAsync(array $args = [])
 * @method \Aws\Result describeEventsForOrganization(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeEventsForOrganizationAsync(array $args = [])
 * @method \Aws\Result describeHealthServiceStatusForOrganization(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeHealthServiceStatusForOrganizationAsync(array $args = [])
 * @method \Aws\Result disableHealthServiceAccessForOrganization(array $args = [])
 * @method \GuzzleHttp\Promise\Promise disableHealthServiceAccessForOrganizationAsync(array $args = [])
 * @method \Aws\Result enableHealthServiceAccessForOrganization(array $args = [])
 * @method \GuzzleHttp\Promise\Promise enableHealthServiceAccessForOrganizationAsync(array $args = [])
 */
class HealthClient extends AwsClient {}


<?php
namespace Aws\Health\Exception;

use Aws\Exception\AwsException;

/**
 * Represents an error interacting with the **AWS Health APIs and Notifications** service.
 */
class HealthException extends AwsException {}


<?php
namespace Aws\HealthLake;

use Aws\AwsClient;

/**
 * This client is used to interact with the **Amazon HealthLake** service.
 * @method \Aws\Result createFHIRDatastore(array $args = [])
 * @method \GuzzleHttp\Promise\Promise createFHIRDatastoreAsync(array $args = [])
 * @method \Aws\Result deleteFHIRDatastore(array $args = [])
 * @method \GuzzleHttp\Promise\Promise deleteFHIRDatastoreAsync(array $args = [])
 * @method \Aws\Result describeFHIRDatastore(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeFHIRDatastoreAsync(array $args = [])
 * @method \Aws\Result describeFHIRExportJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeFHIRExportJobAsync(array $args = [])
 * @method \Aws\Result describeFHIRImportJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeFHIRImportJobAsync(array $args = [])
 * @method \Aws\Result listFHIRDatastores(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listFHIRDatastoresAsync(array $args = [])
 * @method \Aws\Result listFHIRExportJobs(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listFHIRExportJobsAsync(array $args = [])
 * @method \Aws\Result listFHIRImportJobs(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listFHIRImportJobsAsync(array $args = [])
 * @method \Aws\Result listTagsForResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
 * @method \Aws\Result startFHIRExportJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startFHIRExportJobAsync(array $args = [])
 * @method \Aws\Result startFHIRImportJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startFHIRImportJobAsync(array $args = [])
 * @method \Aws\Result tagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
 * @method \Aws\Result untagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
 */
class HealthLakeClient extends AwsClient {}


<?php
namespace Aws\HealthLake\Exception;

use Aws\Exception\AwsException;

/**
 * Represents an error interacting with the **Amazon HealthLake** service.
 */
class HealthLakeException extends AwsException {}


<?php
namespace Aws\Honeycode;

use Aws\AwsClient;

/**
 * This client is used to interact with the **Amazon Honeycode** service.
 * @method \Aws\Result batchCreateTableRows(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchCreateTableRowsAsync(array $args = [])
 * @method \Aws\Result batchDeleteTableRows(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchDeleteTableRowsAsync(array $args = [])
 * @method \Aws\Result batchUpdateTableRows(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchUpdateTableRowsAsync(array $args = [])
 * @method \Aws\Result batchUpsertTableRows(array $args = [])
 * @method \GuzzleHttp\Promise\Promise batchUpsertTableRowsAsync(array $args = [])
 * @method \Aws\Result describeTableDataImportJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise describeTableDataImportJobAsync(array $args = [])
 * @method \Aws\Result getScreenData(array $args = [])
 * @method \GuzzleHttp\Promise\Promise getScreenDataAsync(array $args = [])
 * @method \Aws\Result invokeScreenAutomation(array $args = [])
 * @method \GuzzleHttp\Promise\Promise invokeScreenAutomationAsync(array $args = [])
 * @method \Aws\Result listTableColumns(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listTableColumnsAsync(array $args = [])
 * @method \Aws\Result listTableRows(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listTableRowsAsync(array $args = [])
 * @method \Aws\Result listTables(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listTablesAsync(array $args = [])
 * @method \Aws\Result listTagsForResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
 * @method \Aws\Result queryTableRows(array $args = [])
 * @method \GuzzleHttp\Promise\Promise queryTableRowsAsync(array $args = [])
 * @method \Aws\Result startTableDataImportJob(array $args = [])
 * @method \GuzzleHttp\Promise\Promise startTableDataImportJobAsync(array $args = [])
 * @method \Aws\Result tagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
 * @method \Aws\Result untagResource(array $args = [])
 * @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
 */
class HoneycodeClient extends AwsClient {}


<?php
namespace Aws\Honeycode\Exception;

use Aws\Exception\AwsException;

/**
 * Represents an error interacting with the **Amazon Honeycode** service.
 */
class HoneycodeException extends AwsException {}