stratosphere-0.32.0: library-gen/Stratosphere/Resources.hs
{-# LANGUAGE CPP #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE ExistentialQuantification #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE FunctionalDependencies #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE TypeFamilies #-}
-- | See:
-- http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html
--
-- The required Resources section declare the AWS resources that you want as
-- part of your stack, such as an Amazon EC2 instance or an Amazon S3 bucket.
-- You must declare each resource separately; however, you can specify multiple
-- resources of the same type. If you declare multiple resources, separate them
-- with commas.
module Stratosphere.Resources
( module X
, Resource (..)
, resource
, resourceName
, resourceProperties
, resourceDeletionPolicy
, resourceCreationPolicy
, resourceUpdatePolicy
, resourceDependsOn
, resourceMetadata
, resourceCondition
, ResourceProperties (..)
, DeletionPolicy (..)
, Resources (..)
) where
import Control.Lens hiding ((.=))
import Data.Aeson
import Data.Aeson.Types
import Data.Maybe (catMaybes)
import Data.Semigroup (Semigroup)
import qualified Data.Text as T
import GHC.Exts (IsList(..))
import GHC.Generics (Generic)
import Stratosphere.Resources.AmazonMQBroker as X
import Stratosphere.Resources.AmazonMQConfiguration as X
import Stratosphere.Resources.AmazonMQConfigurationAssociation as X
import Stratosphere.Resources.ApiGatewayAccount as X
import Stratosphere.Resources.ApiGatewayApiKey as X
import Stratosphere.Resources.ApiGatewayAuthorizer as X
import Stratosphere.Resources.ApiGatewayBasePathMapping as X
import Stratosphere.Resources.ApiGatewayClientCertificate as X
import Stratosphere.Resources.ApiGatewayDeployment as X
import Stratosphere.Resources.ApiGatewayDocumentationPart as X
import Stratosphere.Resources.ApiGatewayDocumentationVersion as X
import Stratosphere.Resources.ApiGatewayDomainName as X
import Stratosphere.Resources.ApiGatewayGatewayResponse as X
import Stratosphere.Resources.ApiGatewayMethod as X
import Stratosphere.Resources.ApiGatewayModel as X
import Stratosphere.Resources.ApiGatewayRequestValidator as X
import Stratosphere.Resources.ApiGatewayResource as X
import Stratosphere.Resources.ApiGatewayRestApi as X
import Stratosphere.Resources.ApiGatewayStage as X
import Stratosphere.Resources.ApiGatewayUsagePlan as X
import Stratosphere.Resources.ApiGatewayUsagePlanKey as X
import Stratosphere.Resources.ApiGatewayVpcLink as X
import Stratosphere.Resources.ApiGatewayV2Api as X
import Stratosphere.Resources.ApiGatewayV2Authorizer as X
import Stratosphere.Resources.ApiGatewayV2Deployment as X
import Stratosphere.Resources.ApiGatewayV2Integration as X
import Stratosphere.Resources.ApiGatewayV2IntegrationResponse as X
import Stratosphere.Resources.ApiGatewayV2Model as X
import Stratosphere.Resources.ApiGatewayV2Route as X
import Stratosphere.Resources.ApiGatewayV2RouteResponse as X
import Stratosphere.Resources.ApiGatewayV2Stage as X
import Stratosphere.Resources.AppStreamDirectoryConfig as X
import Stratosphere.Resources.AppStreamFleet as X
import Stratosphere.Resources.AppStreamImageBuilder as X
import Stratosphere.Resources.AppStreamStack as X
import Stratosphere.Resources.AppStreamStackFleetAssociation as X
import Stratosphere.Resources.AppStreamStackUserAssociation as X
import Stratosphere.Resources.AppStreamUser as X
import Stratosphere.Resources.AppSyncApiKey as X
import Stratosphere.Resources.AppSyncDataSource as X
import Stratosphere.Resources.AppSyncFunctionConfiguration as X
import Stratosphere.Resources.AppSyncGraphQLApi as X
import Stratosphere.Resources.AppSyncGraphQLSchema as X
import Stratosphere.Resources.AppSyncResolver as X
import Stratosphere.Resources.ApplicationAutoScalingScalableTarget as X
import Stratosphere.Resources.ApplicationAutoScalingScalingPolicy as X
import Stratosphere.Resources.AthenaNamedQuery as X
import Stratosphere.Resources.AutoScalingAutoScalingGroup as X
import Stratosphere.Resources.AutoScalingLaunchConfiguration as X
import Stratosphere.Resources.AutoScalingLifecycleHook as X
import Stratosphere.Resources.AutoScalingScalingPolicy as X
import Stratosphere.Resources.AutoScalingScheduledAction as X
import Stratosphere.Resources.AutoScalingPlansScalingPlan as X
import Stratosphere.Resources.BatchComputeEnvironment as X
import Stratosphere.Resources.BatchJobDefinition as X
import Stratosphere.Resources.BatchJobQueue as X
import Stratosphere.Resources.BudgetsBudget as X
import Stratosphere.Resources.CertificateManagerCertificate as X
import Stratosphere.Resources.Cloud9EnvironmentEC2 as X
import Stratosphere.Resources.CloudFormationCustomResource as X
import Stratosphere.Resources.CloudFormationMacro as X
import Stratosphere.Resources.CloudFormationStack as X
import Stratosphere.Resources.CloudFormationWaitCondition as X
import Stratosphere.Resources.CloudFormationWaitConditionHandle as X
import Stratosphere.Resources.CloudFrontCloudFrontOriginAccessIdentity as X
import Stratosphere.Resources.CloudFrontDistribution as X
import Stratosphere.Resources.CloudFrontStreamingDistribution as X
import Stratosphere.Resources.CloudTrailTrail as X
import Stratosphere.Resources.CloudWatchAlarm as X
import Stratosphere.Resources.CloudWatchDashboard as X
import Stratosphere.Resources.CodeBuildProject as X
import Stratosphere.Resources.CodeCommitRepository as X
import Stratosphere.Resources.CodeDeployApplication as X
import Stratosphere.Resources.CodeDeployDeploymentConfig as X
import Stratosphere.Resources.CodeDeployDeploymentGroup as X
import Stratosphere.Resources.CodePipelineCustomActionType as X
import Stratosphere.Resources.CodePipelinePipeline as X
import Stratosphere.Resources.CodePipelineWebhook as X
import Stratosphere.Resources.CognitoIdentityPool as X
import Stratosphere.Resources.CognitoIdentityPoolRoleAttachment as X
import Stratosphere.Resources.CognitoUserPool as X
import Stratosphere.Resources.CognitoUserPoolClient as X
import Stratosphere.Resources.CognitoUserPoolGroup as X
import Stratosphere.Resources.CognitoUserPoolUser as X
import Stratosphere.Resources.CognitoUserPoolUserToGroupAttachment as X
import Stratosphere.Resources.ConfigAggregationAuthorization as X
import Stratosphere.Resources.ConfigConfigRule as X
import Stratosphere.Resources.ConfigConfigurationAggregator as X
import Stratosphere.Resources.ConfigConfigurationRecorder as X
import Stratosphere.Resources.ConfigDeliveryChannel as X
import Stratosphere.Resources.DAXCluster as X
import Stratosphere.Resources.DAXParameterGroup as X
import Stratosphere.Resources.DAXSubnetGroup as X
import Stratosphere.Resources.DLMLifecyclePolicy as X
import Stratosphere.Resources.DMSCertificate as X
import Stratosphere.Resources.DMSEndpoint as X
import Stratosphere.Resources.DMSEventSubscription as X
import Stratosphere.Resources.DMSReplicationInstance as X
import Stratosphere.Resources.DMSReplicationSubnetGroup as X
import Stratosphere.Resources.DMSReplicationTask as X
import Stratosphere.Resources.DataPipelinePipeline as X
import Stratosphere.Resources.DirectoryServiceMicrosoftAD as X
import Stratosphere.Resources.DirectoryServiceSimpleAD as X
import Stratosphere.Resources.DocDBDBCluster as X
import Stratosphere.Resources.DocDBDBClusterParameterGroup as X
import Stratosphere.Resources.DocDBDBInstance as X
import Stratosphere.Resources.DocDBDBSubnetGroup as X
import Stratosphere.Resources.DynamoDBTable as X
import Stratosphere.Resources.EC2CustomerGateway as X
import Stratosphere.Resources.EC2DHCPOptions as X
import Stratosphere.Resources.EC2EC2Fleet as X
import Stratosphere.Resources.EC2EIP as X
import Stratosphere.Resources.EC2EIPAssociation as X
import Stratosphere.Resources.EC2EgressOnlyInternetGateway as X
import Stratosphere.Resources.EC2FlowLog as X
import Stratosphere.Resources.EC2Host as X
import Stratosphere.Resources.EC2Instance as X
import Stratosphere.Resources.EC2InternetGateway as X
import Stratosphere.Resources.EC2LaunchTemplate as X
import Stratosphere.Resources.EC2NatGateway as X
import Stratosphere.Resources.EC2NetworkAcl as X
import Stratosphere.Resources.EC2NetworkAclEntry as X
import Stratosphere.Resources.EC2NetworkInterface as X
import Stratosphere.Resources.EC2NetworkInterfaceAttachment as X
import Stratosphere.Resources.EC2NetworkInterfacePermission as X
import Stratosphere.Resources.EC2PlacementGroup as X
import Stratosphere.Resources.EC2Route as X
import Stratosphere.Resources.EC2RouteTable as X
import Stratosphere.Resources.EC2SecurityGroup as X
import Stratosphere.Resources.EC2SecurityGroupEgress as X
import Stratosphere.Resources.EC2SecurityGroupIngress as X
import Stratosphere.Resources.EC2SpotFleet as X
import Stratosphere.Resources.EC2Subnet as X
import Stratosphere.Resources.EC2SubnetCidrBlock as X
import Stratosphere.Resources.EC2SubnetNetworkAclAssociation as X
import Stratosphere.Resources.EC2SubnetRouteTableAssociation as X
import Stratosphere.Resources.EC2TransitGateway as X
import Stratosphere.Resources.EC2TransitGatewayAttachment as X
import Stratosphere.Resources.EC2TransitGatewayRoute as X
import Stratosphere.Resources.EC2TransitGatewayRouteTable as X
import Stratosphere.Resources.EC2TransitGatewayRouteTableAssociation as X
import Stratosphere.Resources.EC2TransitGatewayRouteTablePropagation as X
import Stratosphere.Resources.EC2TrunkInterfaceAssociation as X
import Stratosphere.Resources.EC2VPC as X
import Stratosphere.Resources.EC2VPCCidrBlock as X
import Stratosphere.Resources.EC2VPCDHCPOptionsAssociation as X
import Stratosphere.Resources.EC2VPCEndpoint as X
import Stratosphere.Resources.EC2VPCEndpointConnectionNotification as X
import Stratosphere.Resources.EC2VPCEndpointServicePermissions as X
import Stratosphere.Resources.EC2VPCGatewayAttachment as X
import Stratosphere.Resources.EC2VPCPeeringConnection as X
import Stratosphere.Resources.EC2VPNConnection as X
import Stratosphere.Resources.EC2VPNConnectionRoute as X
import Stratosphere.Resources.EC2VPNGateway as X
import Stratosphere.Resources.EC2VPNGatewayRoutePropagation as X
import Stratosphere.Resources.EC2Volume as X
import Stratosphere.Resources.EC2VolumeAttachment as X
import Stratosphere.Resources.ECRRepository as X
import Stratosphere.Resources.ECSCluster as X
import Stratosphere.Resources.ECSService as X
import Stratosphere.Resources.ECSTaskDefinition as X
import Stratosphere.Resources.EFSFileSystem as X
import Stratosphere.Resources.EFSMountTarget as X
import Stratosphere.Resources.EKSCluster as X
import Stratosphere.Resources.EMRCluster as X
import Stratosphere.Resources.EMRInstanceFleetConfig as X
import Stratosphere.Resources.EMRInstanceGroupConfig as X
import Stratosphere.Resources.EMRSecurityConfiguration as X
import Stratosphere.Resources.EMRStep as X
import Stratosphere.Resources.ElastiCacheCacheCluster as X
import Stratosphere.Resources.ElastiCacheParameterGroup as X
import Stratosphere.Resources.ElastiCacheReplicationGroup as X
import Stratosphere.Resources.ElastiCacheSecurityGroup as X
import Stratosphere.Resources.ElastiCacheSecurityGroupIngress as X
import Stratosphere.Resources.ElastiCacheSubnetGroup as X
import Stratosphere.Resources.ElasticBeanstalkApplication as X
import Stratosphere.Resources.ElasticBeanstalkApplicationVersion as X
import Stratosphere.Resources.ElasticBeanstalkConfigurationTemplate as X
import Stratosphere.Resources.ElasticBeanstalkEnvironment as X
import Stratosphere.Resources.ElasticLoadBalancingLoadBalancer as X
import Stratosphere.Resources.ElasticLoadBalancingV2Listener as X
import Stratosphere.Resources.ElasticLoadBalancingV2ListenerCertificateResource as X
import Stratosphere.Resources.ElasticLoadBalancingV2ListenerRule as X
import Stratosphere.Resources.ElasticLoadBalancingV2LoadBalancer as X
import Stratosphere.Resources.ElasticLoadBalancingV2TargetGroup as X
import Stratosphere.Resources.ElasticsearchDomain as X
import Stratosphere.Resources.EventsEventBusPolicy as X
import Stratosphere.Resources.EventsRule as X
import Stratosphere.Resources.FSxFileSystem as X
import Stratosphere.Resources.GameLiftAlias as X
import Stratosphere.Resources.GameLiftBuild as X
import Stratosphere.Resources.GameLiftFleet as X
import Stratosphere.Resources.GlueClassifier as X
import Stratosphere.Resources.GlueConnection as X
import Stratosphere.Resources.GlueCrawler as X
import Stratosphere.Resources.GlueDatabase as X
import Stratosphere.Resources.GlueDevEndpoint as X
import Stratosphere.Resources.GlueJob as X
import Stratosphere.Resources.GluePartition as X
import Stratosphere.Resources.GlueTable as X
import Stratosphere.Resources.GlueTrigger as X
import Stratosphere.Resources.GuardDutyDetector as X
import Stratosphere.Resources.GuardDutyFilter as X
import Stratosphere.Resources.GuardDutyIPSet as X
import Stratosphere.Resources.GuardDutyMaster as X
import Stratosphere.Resources.GuardDutyMember as X
import Stratosphere.Resources.GuardDutyThreatIntelSet as X
import Stratosphere.Resources.IAMAccessKey as X
import Stratosphere.Resources.IAMGroup as X
import Stratosphere.Resources.IAMInstanceProfile as X
import Stratosphere.Resources.IAMManagedPolicy as X
import Stratosphere.Resources.IAMPolicy as X
import Stratosphere.Resources.IAMRole as X
import Stratosphere.Resources.IAMServiceLinkedRole as X
import Stratosphere.Resources.IAMUser as X
import Stratosphere.Resources.IAMUserToGroupAddition as X
import Stratosphere.Resources.InspectorAssessmentTarget as X
import Stratosphere.Resources.InspectorAssessmentTemplate as X
import Stratosphere.Resources.InspectorResourceGroup as X
import Stratosphere.Resources.IoT1ClickDevice as X
import Stratosphere.Resources.IoT1ClickPlacement as X
import Stratosphere.Resources.IoT1ClickProject as X
import Stratosphere.Resources.IoTCertificate as X
import Stratosphere.Resources.IoTPolicy as X
import Stratosphere.Resources.IoTPolicyPrincipalAttachment as X
import Stratosphere.Resources.IoTThing as X
import Stratosphere.Resources.IoTThingPrincipalAttachment as X
import Stratosphere.Resources.IoTTopicRule as X
import Stratosphere.Resources.IoTAnalyticsChannel as X
import Stratosphere.Resources.IoTAnalyticsDataset as X
import Stratosphere.Resources.IoTAnalyticsDatastore as X
import Stratosphere.Resources.IoTAnalyticsPipeline as X
import Stratosphere.Resources.KMSAlias as X
import Stratosphere.Resources.KMSKey as X
import Stratosphere.Resources.KinesisStream as X
import Stratosphere.Resources.KinesisStreamConsumer as X
import Stratosphere.Resources.KinesisAnalyticsApplication as X
import Stratosphere.Resources.KinesisAnalyticsApplicationOutput as X
import Stratosphere.Resources.KinesisAnalyticsApplicationReferenceDataSource as X
import Stratosphere.Resources.KinesisAnalyticsV2Application as X
import Stratosphere.Resources.KinesisAnalyticsV2ApplicationCloudWatchLoggingOption as X
import Stratosphere.Resources.KinesisAnalyticsV2ApplicationOutput as X
import Stratosphere.Resources.KinesisAnalyticsV2ApplicationReferenceDataSource as X
import Stratosphere.Resources.KinesisFirehoseDeliveryStream as X
import Stratosphere.Resources.LambdaAlias as X
import Stratosphere.Resources.LambdaEventSourceMapping as X
import Stratosphere.Resources.LambdaFunction as X
import Stratosphere.Resources.LambdaLayerVersion as X
import Stratosphere.Resources.LambdaLayerVersionPermission as X
import Stratosphere.Resources.LambdaPermission as X
import Stratosphere.Resources.LambdaVersion as X
import Stratosphere.Resources.LogsDestination as X
import Stratosphere.Resources.LogsLogGroup as X
import Stratosphere.Resources.LogsLogStream as X
import Stratosphere.Resources.LogsMetricFilter as X
import Stratosphere.Resources.LogsSubscriptionFilter as X
import Stratosphere.Resources.NeptuneDBCluster as X
import Stratosphere.Resources.NeptuneDBClusterParameterGroup as X
import Stratosphere.Resources.NeptuneDBInstance as X
import Stratosphere.Resources.NeptuneDBParameterGroup as X
import Stratosphere.Resources.NeptuneDBSubnetGroup as X
import Stratosphere.Resources.OpsWorksApp as X
import Stratosphere.Resources.OpsWorksElasticLoadBalancerAttachment as X
import Stratosphere.Resources.OpsWorksInstance as X
import Stratosphere.Resources.OpsWorksLayer as X
import Stratosphere.Resources.OpsWorksStack as X
import Stratosphere.Resources.OpsWorksUserProfile as X
import Stratosphere.Resources.OpsWorksVolume as X
import Stratosphere.Resources.OpsWorksCMServer as X
import Stratosphere.Resources.RAMResourceShare as X
import Stratosphere.Resources.RDSDBCluster as X
import Stratosphere.Resources.RDSDBClusterParameterGroup as X
import Stratosphere.Resources.RDSDBInstance as X
import Stratosphere.Resources.RDSDBParameterGroup as X
import Stratosphere.Resources.RDSDBSecurityGroup as X
import Stratosphere.Resources.RDSDBSecurityGroupIngress as X
import Stratosphere.Resources.RDSDBSubnetGroup as X
import Stratosphere.Resources.RDSEventSubscription as X
import Stratosphere.Resources.RDSOptionGroup as X
import Stratosphere.Resources.RedshiftCluster as X
import Stratosphere.Resources.RedshiftClusterParameterGroup as X
import Stratosphere.Resources.RedshiftClusterSecurityGroup as X
import Stratosphere.Resources.RedshiftClusterSecurityGroupIngress as X
import Stratosphere.Resources.RedshiftClusterSubnetGroup as X
import Stratosphere.Resources.RoboMakerFleet as X
import Stratosphere.Resources.RoboMakerRobot as X
import Stratosphere.Resources.RoboMakerRobotApplication as X
import Stratosphere.Resources.RoboMakerRobotApplicationVersion as X
import Stratosphere.Resources.RoboMakerSimulationApplication as X
import Stratosphere.Resources.RoboMakerSimulationApplicationVersion as X
import Stratosphere.Resources.Route53HealthCheck as X
import Stratosphere.Resources.Route53HostedZone as X
import Stratosphere.Resources.Route53RecordSet as X
import Stratosphere.Resources.Route53RecordSetGroup as X
import Stratosphere.Resources.Route53ResolverResolverEndpoint as X
import Stratosphere.Resources.Route53ResolverResolverRule as X
import Stratosphere.Resources.Route53ResolverResolverRuleAssociation as X
import Stratosphere.Resources.S3Bucket as X
import Stratosphere.Resources.S3BucketPolicy as X
import Stratosphere.Resources.SDBDomain as X
import Stratosphere.Resources.SESConfigurationSet as X
import Stratosphere.Resources.SESConfigurationSetEventDestination as X
import Stratosphere.Resources.SESReceiptFilter as X
import Stratosphere.Resources.SESReceiptRule as X
import Stratosphere.Resources.SESReceiptRuleSet as X
import Stratosphere.Resources.SESTemplate as X
import Stratosphere.Resources.SNSSubscription as X
import Stratosphere.Resources.SNSTopic as X
import Stratosphere.Resources.SNSTopicPolicy as X
import Stratosphere.Resources.SQSQueue as X
import Stratosphere.Resources.SQSQueuePolicy as X
import Stratosphere.Resources.SSMAssociation as X
import Stratosphere.Resources.SSMDocument as X
import Stratosphere.Resources.SSMMaintenanceWindow as X
import Stratosphere.Resources.SSMMaintenanceWindowTask as X
import Stratosphere.Resources.SSMParameter as X
import Stratosphere.Resources.SSMPatchBaseline as X
import Stratosphere.Resources.SSMResourceDataSync as X
import Stratosphere.Resources.SageMakerEndpoint as X
import Stratosphere.Resources.SageMakerEndpointConfig as X
import Stratosphere.Resources.SageMakerModel as X
import Stratosphere.Resources.SageMakerNotebookInstance as X
import Stratosphere.Resources.SageMakerNotebookInstanceLifecycleConfig as X
import Stratosphere.Resources.SecretsManagerResourcePolicy as X
import Stratosphere.Resources.SecretsManagerRotationSchedule as X
import Stratosphere.Resources.SecretsManagerSecret as X
import Stratosphere.Resources.SecretsManagerSecretTargetAttachment as X
import Stratosphere.Resources.ServiceCatalogAcceptedPortfolioShare as X
import Stratosphere.Resources.ServiceCatalogCloudFormationProduct as X
import Stratosphere.Resources.ServiceCatalogCloudFormationProvisionedProduct as X
import Stratosphere.Resources.ServiceCatalogLaunchNotificationConstraint as X
import Stratosphere.Resources.ServiceCatalogLaunchRoleConstraint as X
import Stratosphere.Resources.ServiceCatalogLaunchTemplateConstraint as X
import Stratosphere.Resources.ServiceCatalogPortfolio as X
import Stratosphere.Resources.ServiceCatalogPortfolioPrincipalAssociation as X
import Stratosphere.Resources.ServiceCatalogPortfolioProductAssociation as X
import Stratosphere.Resources.ServiceCatalogPortfolioShare as X
import Stratosphere.Resources.ServiceCatalogTagOption as X
import Stratosphere.Resources.ServiceCatalogTagOptionAssociation as X
import Stratosphere.Resources.ServiceDiscoveryHttpNamespace as X
import Stratosphere.Resources.ServiceDiscoveryInstance as X
import Stratosphere.Resources.ServiceDiscoveryPrivateDnsNamespace as X
import Stratosphere.Resources.ServiceDiscoveryPublicDnsNamespace as X
import Stratosphere.Resources.ServiceDiscoveryService as X
import Stratosphere.Resources.StepFunctionsActivity as X
import Stratosphere.Resources.StepFunctionsStateMachine as X
import Stratosphere.Resources.WAFByteMatchSet as X
import Stratosphere.Resources.WAFIPSet as X
import Stratosphere.Resources.WAFRule as X
import Stratosphere.Resources.WAFSizeConstraintSet as X
import Stratosphere.Resources.WAFSqlInjectionMatchSet as X
import Stratosphere.Resources.WAFWebACL as X
import Stratosphere.Resources.WAFXssMatchSet as X
import Stratosphere.Resources.WAFRegionalByteMatchSet as X
import Stratosphere.Resources.WAFRegionalIPSet as X
import Stratosphere.Resources.WAFRegionalRule as X
import Stratosphere.Resources.WAFRegionalSizeConstraintSet as X
import Stratosphere.Resources.WAFRegionalSqlInjectionMatchSet as X
import Stratosphere.Resources.WAFRegionalWebACL as X
import Stratosphere.Resources.WAFRegionalWebACLAssociation as X
import Stratosphere.Resources.WAFRegionalXssMatchSet as X
import Stratosphere.Resources.WorkSpacesWorkspace as X
import Stratosphere.Resources.ASKSkill as X
import Stratosphere.ResourceProperties.AmazonMQBrokerConfigurationId as X
import Stratosphere.ResourceProperties.AmazonMQBrokerLogList as X
import Stratosphere.ResourceProperties.AmazonMQBrokerMaintenanceWindow as X
import Stratosphere.ResourceProperties.AmazonMQBrokerTagsEntry as X
import Stratosphere.ResourceProperties.AmazonMQBrokerUser as X
import Stratosphere.ResourceProperties.AmazonMQConfigurationTagsEntry as X
import Stratosphere.ResourceProperties.AmazonMQConfigurationAssociationConfigurationId as X
import Stratosphere.ResourceProperties.ApiGatewayApiKeyStageKey as X
import Stratosphere.ResourceProperties.ApiGatewayDeploymentAccessLogSetting as X
import Stratosphere.ResourceProperties.ApiGatewayDeploymentCanarySetting as X
import Stratosphere.ResourceProperties.ApiGatewayDeploymentDeploymentCanarySettings as X
import Stratosphere.ResourceProperties.ApiGatewayDeploymentMethodSetting as X
import Stratosphere.ResourceProperties.ApiGatewayDeploymentStageDescription as X
import Stratosphere.ResourceProperties.ApiGatewayDocumentationPartLocation as X
import Stratosphere.ResourceProperties.ApiGatewayDomainNameEndpointConfiguration as X
import Stratosphere.ResourceProperties.ApiGatewayMethodIntegration as X
import Stratosphere.ResourceProperties.ApiGatewayMethodIntegrationResponse as X
import Stratosphere.ResourceProperties.ApiGatewayMethodMethodResponse as X
import Stratosphere.ResourceProperties.ApiGatewayRestApiEndpointConfiguration as X
import Stratosphere.ResourceProperties.ApiGatewayRestApiS3Location as X
import Stratosphere.ResourceProperties.ApiGatewayStageAccessLogSetting as X
import Stratosphere.ResourceProperties.ApiGatewayStageCanarySetting as X
import Stratosphere.ResourceProperties.ApiGatewayStageMethodSetting as X
import Stratosphere.ResourceProperties.ApiGatewayUsagePlanApiStage as X
import Stratosphere.ResourceProperties.ApiGatewayUsagePlanQuotaSettings as X
import Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings as X
import Stratosphere.ResourceProperties.ApiGatewayV2RouteParameterConstraints as X
import Stratosphere.ResourceProperties.ApiGatewayV2RouteResponseParameterConstraints as X
import Stratosphere.ResourceProperties.ApiGatewayV2StageAccessLogSettings as X
import Stratosphere.ResourceProperties.ApiGatewayV2StageRouteSettings as X
import Stratosphere.ResourceProperties.AppStreamDirectoryConfigServiceAccountCredentials as X
import Stratosphere.ResourceProperties.AppStreamFleetComputeCapacity as X
import Stratosphere.ResourceProperties.AppStreamFleetDomainJoinInfo as X
import Stratosphere.ResourceProperties.AppStreamFleetVpcConfig as X
import Stratosphere.ResourceProperties.AppStreamImageBuilderDomainJoinInfo as X
import Stratosphere.ResourceProperties.AppStreamImageBuilderVpcConfig as X
import Stratosphere.ResourceProperties.AppStreamStackApplicationSettings as X
import Stratosphere.ResourceProperties.AppStreamStackStorageConnector as X
import Stratosphere.ResourceProperties.AppStreamStackUserSetting as X
import Stratosphere.ResourceProperties.AppSyncDataSourceAuthorizationConfig as X
import Stratosphere.ResourceProperties.AppSyncDataSourceAwsIamConfig as X
import Stratosphere.ResourceProperties.AppSyncDataSourceDynamoDBConfig as X
import Stratosphere.ResourceProperties.AppSyncDataSourceElasticsearchConfig as X
import Stratosphere.ResourceProperties.AppSyncDataSourceHttpConfig as X
import Stratosphere.ResourceProperties.AppSyncDataSourceLambdaConfig as X
import Stratosphere.ResourceProperties.AppSyncDataSourceRdsHttpEndpointConfig as X
import Stratosphere.ResourceProperties.AppSyncDataSourceRelationalDatabaseConfig as X
import Stratosphere.ResourceProperties.AppSyncGraphQLApiLogConfig as X
import Stratosphere.ResourceProperties.AppSyncGraphQLApiOpenIDConnectConfig as X
import Stratosphere.ResourceProperties.AppSyncGraphQLApiUserPoolConfig as X
import Stratosphere.ResourceProperties.AppSyncResolverPipelineConfig as X
import Stratosphere.ResourceProperties.ApplicationAutoScalingScalableTargetScalableTargetAction as X
import Stratosphere.ResourceProperties.ApplicationAutoScalingScalableTargetScheduledAction as X
import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyCustomizedMetricSpecification as X
import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyMetricDimension as X
import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyPredefinedMetricSpecification as X
import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepAdjustment as X
import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration as X
import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyTargetTrackingScalingPolicyConfiguration as X
import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupInstancesDistribution as X
import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupLaunchTemplate as X
import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupLaunchTemplateOverrides as X
import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupLaunchTemplateSpecification as X
import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupLifecycleHookSpecification as X
import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupMetricsCollection as X
import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupMixedInstancesPolicy as X
import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupNotificationConfiguration as X
import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupTagProperty as X
import Stratosphere.ResourceProperties.AutoScalingLaunchConfigurationBlockDevice as X
import Stratosphere.ResourceProperties.AutoScalingLaunchConfigurationBlockDeviceMapping as X
import Stratosphere.ResourceProperties.AutoScalingScalingPolicyCustomizedMetricSpecification as X
import Stratosphere.ResourceProperties.AutoScalingScalingPolicyMetricDimension as X
import Stratosphere.ResourceProperties.AutoScalingScalingPolicyPredefinedMetricSpecification as X
import Stratosphere.ResourceProperties.AutoScalingScalingPolicyStepAdjustment as X
import Stratosphere.ResourceProperties.AutoScalingScalingPolicyTargetTrackingConfiguration as X
import Stratosphere.ResourceProperties.AutoScalingPlansScalingPlanApplicationSource as X
import Stratosphere.ResourceProperties.AutoScalingPlansScalingPlanCustomizedLoadMetricSpecification as X
import Stratosphere.ResourceProperties.AutoScalingPlansScalingPlanCustomizedScalingMetricSpecification as X
import Stratosphere.ResourceProperties.AutoScalingPlansScalingPlanMetricDimension as X
import Stratosphere.ResourceProperties.AutoScalingPlansScalingPlanPredefinedLoadMetricSpecification as X
import Stratosphere.ResourceProperties.AutoScalingPlansScalingPlanPredefinedScalingMetricSpecification as X
import Stratosphere.ResourceProperties.AutoScalingPlansScalingPlanScalingInstruction as X
import Stratosphere.ResourceProperties.AutoScalingPlansScalingPlanTagFilter as X
import Stratosphere.ResourceProperties.AutoScalingPlansScalingPlanTargetTrackingConfiguration as X
import Stratosphere.ResourceProperties.BatchComputeEnvironmentComputeResources as X
import Stratosphere.ResourceProperties.BatchComputeEnvironmentLaunchTemplateSpecification as X
import Stratosphere.ResourceProperties.BatchJobDefinitionContainerProperties as X
import Stratosphere.ResourceProperties.BatchJobDefinitionEnvironment as X
import Stratosphere.ResourceProperties.BatchJobDefinitionMountPoints as X
import Stratosphere.ResourceProperties.BatchJobDefinitionNodeProperties as X
import Stratosphere.ResourceProperties.BatchJobDefinitionNodeRangeProperty as X
import Stratosphere.ResourceProperties.BatchJobDefinitionRetryStrategy as X
import Stratosphere.ResourceProperties.BatchJobDefinitionTimeout as X
import Stratosphere.ResourceProperties.BatchJobDefinitionUlimit as X
import Stratosphere.ResourceProperties.BatchJobDefinitionVolumes as X
import Stratosphere.ResourceProperties.BatchJobDefinitionVolumesHost as X
import Stratosphere.ResourceProperties.BatchJobQueueComputeEnvironmentOrder as X
import Stratosphere.ResourceProperties.BudgetsBudgetBudgetData as X
import Stratosphere.ResourceProperties.BudgetsBudgetCostTypes as X
import Stratosphere.ResourceProperties.BudgetsBudgetNotification as X
import Stratosphere.ResourceProperties.BudgetsBudgetNotificationWithSubscribers as X
import Stratosphere.ResourceProperties.BudgetsBudgetSpend as X
import Stratosphere.ResourceProperties.BudgetsBudgetSubscriber as X
import Stratosphere.ResourceProperties.BudgetsBudgetTimePeriod as X
import Stratosphere.ResourceProperties.CertificateManagerCertificateDomainValidationOption as X
import Stratosphere.ResourceProperties.Cloud9EnvironmentEC2Repository as X
import Stratosphere.ResourceProperties.CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig as X
import Stratosphere.ResourceProperties.CloudFrontDistributionCacheBehavior as X
import Stratosphere.ResourceProperties.CloudFrontDistributionCookies as X
import Stratosphere.ResourceProperties.CloudFrontDistributionCustomErrorResponse as X
import Stratosphere.ResourceProperties.CloudFrontDistributionCustomOriginConfig as X
import Stratosphere.ResourceProperties.CloudFrontDistributionDefaultCacheBehavior as X
import Stratosphere.ResourceProperties.CloudFrontDistributionDistributionConfig as X
import Stratosphere.ResourceProperties.CloudFrontDistributionForwardedValues as X
import Stratosphere.ResourceProperties.CloudFrontDistributionGeoRestriction as X
import Stratosphere.ResourceProperties.CloudFrontDistributionLambdaFunctionAssociation as X
import Stratosphere.ResourceProperties.CloudFrontDistributionLogging as X
import Stratosphere.ResourceProperties.CloudFrontDistributionOrigin as X
import Stratosphere.ResourceProperties.CloudFrontDistributionOriginCustomHeader as X
import Stratosphere.ResourceProperties.CloudFrontDistributionRestrictions as X
import Stratosphere.ResourceProperties.CloudFrontDistributionS3OriginConfig as X
import Stratosphere.ResourceProperties.CloudFrontDistributionViewerCertificate as X
import Stratosphere.ResourceProperties.CloudFrontStreamingDistributionLogging as X
import Stratosphere.ResourceProperties.CloudFrontStreamingDistributionS3Origin as X
import Stratosphere.ResourceProperties.CloudFrontStreamingDistributionStreamingDistributionConfig as X
import Stratosphere.ResourceProperties.CloudFrontStreamingDistributionTrustedSigners as X
import Stratosphere.ResourceProperties.CloudTrailTrailDataResource as X
import Stratosphere.ResourceProperties.CloudTrailTrailEventSelector as X
import Stratosphere.ResourceProperties.CloudWatchAlarmDimension as X
import Stratosphere.ResourceProperties.CloudWatchAlarmMetric as X
import Stratosphere.ResourceProperties.CloudWatchAlarmMetricDataQuery as X
import Stratosphere.ResourceProperties.CloudWatchAlarmMetricStat as X
import Stratosphere.ResourceProperties.CodeBuildProjectArtifacts as X
import Stratosphere.ResourceProperties.CodeBuildProjectCloudWatchLogsConfig as X
import Stratosphere.ResourceProperties.CodeBuildProjectEnvironment as X
import Stratosphere.ResourceProperties.CodeBuildProjectEnvironmentVariable as X
import Stratosphere.ResourceProperties.CodeBuildProjectLogsConfig as X
import Stratosphere.ResourceProperties.CodeBuildProjectProjectCache as X
import Stratosphere.ResourceProperties.CodeBuildProjectProjectTriggers as X
import Stratosphere.ResourceProperties.CodeBuildProjectRegistryCredential as X
import Stratosphere.ResourceProperties.CodeBuildProjectS3LogsConfig as X
import Stratosphere.ResourceProperties.CodeBuildProjectSource as X
import Stratosphere.ResourceProperties.CodeBuildProjectSourceAuth as X
import Stratosphere.ResourceProperties.CodeBuildProjectVpcConfig as X
import Stratosphere.ResourceProperties.CodeBuildProjectWebhookFilter as X
import Stratosphere.ResourceProperties.CodeCommitRepositoryRepositoryTrigger as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentConfigMinimumHealthyHosts as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupAlarm as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupAlarmConfiguration as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupAutoRollbackConfiguration as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupDeployment as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupDeploymentStyle as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupEC2TagFilter as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupEC2TagSet as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupEC2TagSetListObject as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupELBInfo as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupGitHubLocation as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupLoadBalancerInfo as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupOnPremisesTagSet as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupOnPremisesTagSetListObject as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupRevisionLocation as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupS3Location as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupTagFilter as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupTargetGroupInfo as X
import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupTriggerConfig as X
import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeArtifactDetails as X
import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeConfigurationProperties as X
import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeSettings as X
import Stratosphere.ResourceProperties.CodePipelinePipelineActionDeclaration as X
import Stratosphere.ResourceProperties.CodePipelinePipelineActionTypeId as X
import Stratosphere.ResourceProperties.CodePipelinePipelineArtifactStore as X
import Stratosphere.ResourceProperties.CodePipelinePipelineArtifactStoreMap as X
import Stratosphere.ResourceProperties.CodePipelinePipelineBlockerDeclaration as X
import Stratosphere.ResourceProperties.CodePipelinePipelineEncryptionKey as X
import Stratosphere.ResourceProperties.CodePipelinePipelineInputArtifact as X
import Stratosphere.ResourceProperties.CodePipelinePipelineOutputArtifact as X
import Stratosphere.ResourceProperties.CodePipelinePipelineStageDeclaration as X
import Stratosphere.ResourceProperties.CodePipelinePipelineStageTransition as X
import Stratosphere.ResourceProperties.CodePipelineWebhookWebhookAuthConfiguration as X
import Stratosphere.ResourceProperties.CodePipelineWebhookWebhookFilterRule as X
import Stratosphere.ResourceProperties.CognitoIdentityPoolCognitoIdentityProvider as X
import Stratosphere.ResourceProperties.CognitoIdentityPoolCognitoStreams as X
import Stratosphere.ResourceProperties.CognitoIdentityPoolPushSync as X
import Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentMappingRule as X
import Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentRoleMapping as X
import Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentRulesConfigurationType as X
import Stratosphere.ResourceProperties.CognitoUserPoolAdminCreateUserConfig as X
import Stratosphere.ResourceProperties.CognitoUserPoolDeviceConfiguration as X
import Stratosphere.ResourceProperties.CognitoUserPoolEmailConfiguration as X
import Stratosphere.ResourceProperties.CognitoUserPoolInviteMessageTemplate as X
import Stratosphere.ResourceProperties.CognitoUserPoolLambdaConfig as X
import Stratosphere.ResourceProperties.CognitoUserPoolNumberAttributeConstraints as X
import Stratosphere.ResourceProperties.CognitoUserPoolPasswordPolicy as X
import Stratosphere.ResourceProperties.CognitoUserPoolPolicies as X
import Stratosphere.ResourceProperties.CognitoUserPoolSchemaAttribute as X
import Stratosphere.ResourceProperties.CognitoUserPoolSmsConfiguration as X
import Stratosphere.ResourceProperties.CognitoUserPoolStringAttributeConstraints as X
import Stratosphere.ResourceProperties.CognitoUserPoolUserAttributeType as X
import Stratosphere.ResourceProperties.ConfigConfigRuleScope as X
import Stratosphere.ResourceProperties.ConfigConfigRuleSource as X
import Stratosphere.ResourceProperties.ConfigConfigRuleSourceDetail as X
import Stratosphere.ResourceProperties.ConfigConfigurationAggregatorAccountAggregationSource as X
import Stratosphere.ResourceProperties.ConfigConfigurationAggregatorOrganizationAggregationSource as X
import Stratosphere.ResourceProperties.ConfigConfigurationRecorderRecordingGroup as X
import Stratosphere.ResourceProperties.ConfigDeliveryChannelConfigSnapshotDeliveryProperties as X
import Stratosphere.ResourceProperties.DAXClusterSSESpecification as X
import Stratosphere.ResourceProperties.DLMLifecyclePolicyCreateRule as X
import Stratosphere.ResourceProperties.DLMLifecyclePolicyPolicyDetails as X
import Stratosphere.ResourceProperties.DLMLifecyclePolicyRetainRule as X
import Stratosphere.ResourceProperties.DLMLifecyclePolicySchedule as X
import Stratosphere.ResourceProperties.DMSEndpointDynamoDbSettings as X
import Stratosphere.ResourceProperties.DMSEndpointElasticsearchSettings as X
import Stratosphere.ResourceProperties.DMSEndpointKinesisSettings as X
import Stratosphere.ResourceProperties.DMSEndpointMongoDbSettings as X
import Stratosphere.ResourceProperties.DMSEndpointS3Settings as X
import Stratosphere.ResourceProperties.DataPipelinePipelineField as X
import Stratosphere.ResourceProperties.DataPipelinePipelineParameterAttribute as X
import Stratosphere.ResourceProperties.DataPipelinePipelineParameterObject as X
import Stratosphere.ResourceProperties.DataPipelinePipelineParameterValue as X
import Stratosphere.ResourceProperties.DataPipelinePipelinePipelineObject as X
import Stratosphere.ResourceProperties.DataPipelinePipelinePipelineTag as X
import Stratosphere.ResourceProperties.DirectoryServiceMicrosoftADVpcSettings as X
import Stratosphere.ResourceProperties.DirectoryServiceSimpleADVpcSettings as X
import Stratosphere.ResourceProperties.DynamoDBTableAttributeDefinition as X
import Stratosphere.ResourceProperties.DynamoDBTableGlobalSecondaryIndex as X
import Stratosphere.ResourceProperties.DynamoDBTableKeySchema as X
import Stratosphere.ResourceProperties.DynamoDBTableLocalSecondaryIndex as X
import Stratosphere.ResourceProperties.DynamoDBTablePointInTimeRecoverySpecification as X
import Stratosphere.ResourceProperties.DynamoDBTableProjection as X
import Stratosphere.ResourceProperties.DynamoDBTableProvisionedThroughput as X
import Stratosphere.ResourceProperties.DynamoDBTableSSESpecification as X
import Stratosphere.ResourceProperties.DynamoDBTableStreamSpecification as X
import Stratosphere.ResourceProperties.DynamoDBTableTimeToLiveSpecification as X
import Stratosphere.ResourceProperties.EC2EC2FleetFleetLaunchTemplateConfigRequest as X
import Stratosphere.ResourceProperties.EC2EC2FleetFleetLaunchTemplateOverridesRequest as X
import Stratosphere.ResourceProperties.EC2EC2FleetFleetLaunchTemplateSpecificationRequest as X
import Stratosphere.ResourceProperties.EC2EC2FleetOnDemandOptionsRequest as X
import Stratosphere.ResourceProperties.EC2EC2FleetSpotOptionsRequest as X
import Stratosphere.ResourceProperties.EC2EC2FleetTagRequest as X
import Stratosphere.ResourceProperties.EC2EC2FleetTagSpecification as X
import Stratosphere.ResourceProperties.EC2EC2FleetTargetCapacitySpecificationRequest as X
import Stratosphere.ResourceProperties.EC2InstanceAssociationParameter as X
import Stratosphere.ResourceProperties.EC2InstanceBlockDeviceMapping as X
import Stratosphere.ResourceProperties.EC2InstanceCreditSpecification as X
import Stratosphere.ResourceProperties.EC2InstanceEbs as X
import Stratosphere.ResourceProperties.EC2InstanceElasticGpuSpecification as X
import Stratosphere.ResourceProperties.EC2InstanceElasticInferenceAccelerator as X
import Stratosphere.ResourceProperties.EC2InstanceInstanceIpv6Address as X
import Stratosphere.ResourceProperties.EC2InstanceLaunchTemplateSpecification as X
import Stratosphere.ResourceProperties.EC2InstanceLicenseSpecification as X
import Stratosphere.ResourceProperties.EC2InstanceNetworkInterface as X
import Stratosphere.ResourceProperties.EC2InstanceNoDevice as X
import Stratosphere.ResourceProperties.EC2InstancePrivateIpAddressSpecification as X
import Stratosphere.ResourceProperties.EC2InstanceSsmAssociation as X
import Stratosphere.ResourceProperties.EC2InstanceVolume as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateBlockDeviceMapping as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateCapacityReservationSpecification as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateCapacityReservationTarget as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateCpuOptions as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateCreditSpecification as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateEbs as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateElasticGpuSpecification as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateHibernationOptions as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateIamInstanceProfile as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateInstanceMarketOptions as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateIpv6Add as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateLaunchTemplateData as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateLaunchTemplateElasticInferenceAccelerator as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateLicenseSpecification as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateMonitoring as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateNetworkInterface as X
import Stratosphere.ResourceProperties.EC2LaunchTemplatePlacement as X
import Stratosphere.ResourceProperties.EC2LaunchTemplatePrivateIpAdd as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateSpotOptions as X
import Stratosphere.ResourceProperties.EC2LaunchTemplateTagSpecification as X
import Stratosphere.ResourceProperties.EC2NetworkAclEntryIcmp as X
import Stratosphere.ResourceProperties.EC2NetworkAclEntryPortRange as X
import Stratosphere.ResourceProperties.EC2NetworkInterfaceInstanceIpv6Address as X
import Stratosphere.ResourceProperties.EC2NetworkInterfacePrivateIpAddressSpecification as X
import Stratosphere.ResourceProperties.EC2SecurityGroupEgressProperty as X
import Stratosphere.ResourceProperties.EC2SecurityGroupIngressProperty as X
import Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMapping as X
import Stratosphere.ResourceProperties.EC2SpotFleetClassicLoadBalancer as X
import Stratosphere.ResourceProperties.EC2SpotFleetClassicLoadBalancersConfig as X
import Stratosphere.ResourceProperties.EC2SpotFleetEbsBlockDevice as X
import Stratosphere.ResourceProperties.EC2SpotFleetFleetLaunchTemplateSpecification as X
import Stratosphere.ResourceProperties.EC2SpotFleetGroupIdentifier as X
import Stratosphere.ResourceProperties.EC2SpotFleetIamInstanceProfileSpecification as X
import Stratosphere.ResourceProperties.EC2SpotFleetInstanceIpv6Address as X
import Stratosphere.ResourceProperties.EC2SpotFleetInstanceNetworkInterfaceSpecification as X
import Stratosphere.ResourceProperties.EC2SpotFleetLaunchTemplateConfig as X
import Stratosphere.ResourceProperties.EC2SpotFleetLaunchTemplateOverrides as X
import Stratosphere.ResourceProperties.EC2SpotFleetLoadBalancersConfig as X
import Stratosphere.ResourceProperties.EC2SpotFleetPrivateIpAddressSpecification as X
import Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetLaunchSpecification as X
import Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetMonitoring as X
import Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetRequestConfigData as X
import Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetTagSpecification as X
import Stratosphere.ResourceProperties.EC2SpotFleetSpotPlacement as X
import Stratosphere.ResourceProperties.EC2SpotFleetTargetGroup as X
import Stratosphere.ResourceProperties.EC2SpotFleetTargetGroupsConfig as X
import Stratosphere.ResourceProperties.EC2VPNConnectionVpnTunnelOptionsSpecification as X
import Stratosphere.ResourceProperties.ECRRepositoryLifecyclePolicy as X
import Stratosphere.ResourceProperties.ECSServiceAwsVpcConfiguration as X
import Stratosphere.ResourceProperties.ECSServiceDeploymentConfiguration as X
import Stratosphere.ResourceProperties.ECSServiceLoadBalancer as X
import Stratosphere.ResourceProperties.ECSServiceNetworkConfiguration as X
import Stratosphere.ResourceProperties.ECSServicePlacementConstraint as X
import Stratosphere.ResourceProperties.ECSServicePlacementStrategy as X
import Stratosphere.ResourceProperties.ECSServiceServiceRegistry as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDefinition as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionDevice as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionDockerVolumeConfiguration as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionHealthCheck as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionHostEntry as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionHostVolumeProperties as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionKernelCapabilities as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionKeyValuePair as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionLinuxParameters as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionLogConfiguration as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionMountPoint as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionPortMapping as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionRepositoryCredentials as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionTaskDefinitionPlacementConstraint as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionTmpfs as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionUlimit as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionVolume as X
import Stratosphere.ResourceProperties.ECSTaskDefinitionVolumeFrom as X
import Stratosphere.ResourceProperties.EFSFileSystemElasticFileSystemTag as X
import Stratosphere.ResourceProperties.EKSClusterResourcesVpcConfig as X
import Stratosphere.ResourceProperties.EMRClusterApplication as X
import Stratosphere.ResourceProperties.EMRClusterAutoScalingPolicy as X
import Stratosphere.ResourceProperties.EMRClusterBootstrapActionConfig as X
import Stratosphere.ResourceProperties.EMRClusterCloudWatchAlarmDefinition as X
import Stratosphere.ResourceProperties.EMRClusterConfiguration as X
import Stratosphere.ResourceProperties.EMRClusterEbsBlockDeviceConfig as X
import Stratosphere.ResourceProperties.EMRClusterEbsConfiguration as X
import Stratosphere.ResourceProperties.EMRClusterHadoopJarStepConfig as X
import Stratosphere.ResourceProperties.EMRClusterInstanceFleetConfig as X
import Stratosphere.ResourceProperties.EMRClusterInstanceFleetProvisioningSpecifications as X
import Stratosphere.ResourceProperties.EMRClusterInstanceGroupConfig as X
import Stratosphere.ResourceProperties.EMRClusterInstanceTypeConfig as X
import Stratosphere.ResourceProperties.EMRClusterJobFlowInstancesConfig as X
import Stratosphere.ResourceProperties.EMRClusterKerberosAttributes as X
import Stratosphere.ResourceProperties.EMRClusterKeyValue as X
import Stratosphere.ResourceProperties.EMRClusterMetricDimension as X
import Stratosphere.ResourceProperties.EMRClusterPlacementType as X
import Stratosphere.ResourceProperties.EMRClusterScalingAction as X
import Stratosphere.ResourceProperties.EMRClusterScalingConstraints as X
import Stratosphere.ResourceProperties.EMRClusterScalingRule as X
import Stratosphere.ResourceProperties.EMRClusterScalingTrigger as X
import Stratosphere.ResourceProperties.EMRClusterScriptBootstrapActionConfig as X
import Stratosphere.ResourceProperties.EMRClusterSimpleScalingPolicyConfiguration as X
import Stratosphere.ResourceProperties.EMRClusterSpotProvisioningSpecification as X
import Stratosphere.ResourceProperties.EMRClusterStepConfig as X
import Stratosphere.ResourceProperties.EMRClusterVolumeSpecification as X
import Stratosphere.ResourceProperties.EMRInstanceFleetConfigConfiguration as X
import Stratosphere.ResourceProperties.EMRInstanceFleetConfigEbsBlockDeviceConfig as X
import Stratosphere.ResourceProperties.EMRInstanceFleetConfigEbsConfiguration as X
import Stratosphere.ResourceProperties.EMRInstanceFleetConfigInstanceFleetProvisioningSpecifications as X
import Stratosphere.ResourceProperties.EMRInstanceFleetConfigInstanceTypeConfig as X
import Stratosphere.ResourceProperties.EMRInstanceFleetConfigSpotProvisioningSpecification as X
import Stratosphere.ResourceProperties.EMRInstanceFleetConfigVolumeSpecification as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigAutoScalingPolicy as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigCloudWatchAlarmDefinition as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigConfiguration as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsBlockDeviceConfig as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsConfiguration as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigMetricDimension as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingAction as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingConstraints as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingRule as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingTrigger as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigSimpleScalingPolicyConfiguration as X
import Stratosphere.ResourceProperties.EMRInstanceGroupConfigVolumeSpecification as X
import Stratosphere.ResourceProperties.EMRStepHadoopJarStepConfig as X
import Stratosphere.ResourceProperties.EMRStepKeyValue as X
import Stratosphere.ResourceProperties.ElastiCacheReplicationGroupNodeGroupConfiguration as X
import Stratosphere.ResourceProperties.ElasticBeanstalkApplicationApplicationResourceLifecycleConfig as X
import Stratosphere.ResourceProperties.ElasticBeanstalkApplicationApplicationVersionLifecycleConfig as X
import Stratosphere.ResourceProperties.ElasticBeanstalkApplicationMaxAgeRule as X
import Stratosphere.ResourceProperties.ElasticBeanstalkApplicationMaxCountRule as X
import Stratosphere.ResourceProperties.ElasticBeanstalkApplicationVersionSourceBundle as X
import Stratosphere.ResourceProperties.ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting as X
import Stratosphere.ResourceProperties.ElasticBeanstalkConfigurationTemplateSourceConfiguration as X
import Stratosphere.ResourceProperties.ElasticBeanstalkEnvironmentOptionSetting as X
import Stratosphere.ResourceProperties.ElasticBeanstalkEnvironmentTier as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerAccessLoggingPolicy as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerConnectionSettings as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerHealthCheck as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerListeners as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerPolicies as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerAction as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerAuthenticateCognitoConfig as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerAuthenticateOidcConfig as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerCertificate as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerFixedResponseConfig as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRedirectConfig as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerCertificateCertificate as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleAction as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleAuthenticateCognitoConfig as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleAuthenticateOidcConfig as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleFixedResponseConfig as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleRedirectConfig as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleRuleCondition as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2LoadBalancerSubnetMapping as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupMatcher as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetDescription as X
import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetGroupAttribute as X
import Stratosphere.ResourceProperties.ElasticsearchDomainEBSOptions as X
import Stratosphere.ResourceProperties.ElasticsearchDomainElasticsearchClusterConfig as X
import Stratosphere.ResourceProperties.ElasticsearchDomainEncryptionAtRestOptions as X
import Stratosphere.ResourceProperties.ElasticsearchDomainNodeToNodeEncryptionOptions as X
import Stratosphere.ResourceProperties.ElasticsearchDomainSnapshotOptions as X
import Stratosphere.ResourceProperties.ElasticsearchDomainVPCOptions as X
import Stratosphere.ResourceProperties.EventsEventBusPolicyCondition as X
import Stratosphere.ResourceProperties.EventsRuleEcsParameters as X
import Stratosphere.ResourceProperties.EventsRuleInputTransformer as X
import Stratosphere.ResourceProperties.EventsRuleKinesisParameters as X
import Stratosphere.ResourceProperties.EventsRuleRunCommandParameters as X
import Stratosphere.ResourceProperties.EventsRuleRunCommandTarget as X
import Stratosphere.ResourceProperties.EventsRuleSqsParameters as X
import Stratosphere.ResourceProperties.EventsRuleTarget as X
import Stratosphere.ResourceProperties.FSxFileSystemLustreConfiguration as X
import Stratosphere.ResourceProperties.FSxFileSystemTagEntry as X
import Stratosphere.ResourceProperties.FSxFileSystemWindowsConfiguration as X
import Stratosphere.ResourceProperties.GameLiftAliasRoutingStrategy as X
import Stratosphere.ResourceProperties.GameLiftBuildS3Location as X
import Stratosphere.ResourceProperties.GameLiftFleetIpPermission as X
import Stratosphere.ResourceProperties.GlueClassifierGrokClassifier as X
import Stratosphere.ResourceProperties.GlueClassifierJsonClassifier as X
import Stratosphere.ResourceProperties.GlueClassifierXMLClassifier as X
import Stratosphere.ResourceProperties.GlueConnectionConnectionInput as X
import Stratosphere.ResourceProperties.GlueConnectionPhysicalConnectionRequirements as X
import Stratosphere.ResourceProperties.GlueCrawlerJdbcTarget as X
import Stratosphere.ResourceProperties.GlueCrawlerS3Target as X
import Stratosphere.ResourceProperties.GlueCrawlerSchedule as X
import Stratosphere.ResourceProperties.GlueCrawlerSchemaChangePolicy as X
import Stratosphere.ResourceProperties.GlueCrawlerTargets as X
import Stratosphere.ResourceProperties.GlueDatabaseDatabaseInput as X
import Stratosphere.ResourceProperties.GlueJobConnectionsList as X
import Stratosphere.ResourceProperties.GlueJobExecutionProperty as X
import Stratosphere.ResourceProperties.GlueJobJobCommand as X
import Stratosphere.ResourceProperties.GluePartitionColumn as X
import Stratosphere.ResourceProperties.GluePartitionOrder as X
import Stratosphere.ResourceProperties.GluePartitionPartitionInput as X
import Stratosphere.ResourceProperties.GluePartitionSerdeInfo as X
import Stratosphere.ResourceProperties.GluePartitionSkewedInfo as X
import Stratosphere.ResourceProperties.GluePartitionStorageDescriptor as X
import Stratosphere.ResourceProperties.GlueTableColumn as X
import Stratosphere.ResourceProperties.GlueTableOrder as X
import Stratosphere.ResourceProperties.GlueTableSerdeInfo as X
import Stratosphere.ResourceProperties.GlueTableSkewedInfo as X
import Stratosphere.ResourceProperties.GlueTableStorageDescriptor as X
import Stratosphere.ResourceProperties.GlueTableTableInput as X
import Stratosphere.ResourceProperties.GlueTriggerAction as X
import Stratosphere.ResourceProperties.GlueTriggerCondition as X
import Stratosphere.ResourceProperties.GlueTriggerPredicate as X
import Stratosphere.ResourceProperties.GuardDutyFilterCondition as X
import Stratosphere.ResourceProperties.GuardDutyFilterFindingCriteria as X
import Stratosphere.ResourceProperties.IAMGroupPolicy as X
import Stratosphere.ResourceProperties.IAMRolePolicy as X
import Stratosphere.ResourceProperties.IAMUserLoginProfile as X
import Stratosphere.ResourceProperties.IAMUserPolicy as X
import Stratosphere.ResourceProperties.IoT1ClickProjectDeviceTemplate as X
import Stratosphere.ResourceProperties.IoT1ClickProjectPlacementTemplate as X
import Stratosphere.ResourceProperties.IoTThingAttributePayload as X
import Stratosphere.ResourceProperties.IoTTopicRuleAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleCloudwatchAlarmAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleCloudwatchMetricAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleDynamoDBAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleDynamoDBV2Action as X
import Stratosphere.ResourceProperties.IoTTopicRuleElasticsearchAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleFirehoseAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleIotAnalyticsAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleKinesisAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleLambdaAction as X
import Stratosphere.ResourceProperties.IoTTopicRulePutItemInput as X
import Stratosphere.ResourceProperties.IoTTopicRuleRepublishAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleS3Action as X
import Stratosphere.ResourceProperties.IoTTopicRuleSnsAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleSqsAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleStepFunctionsAction as X
import Stratosphere.ResourceProperties.IoTTopicRuleTopicRulePayload as X
import Stratosphere.ResourceProperties.IoTAnalyticsChannelRetentionPeriod as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetAction as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetContainerAction as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetDatasetContentVersionValue as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetDeltaTime as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetFilter as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetOutputFileUriValue as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetQueryAction as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetResourceConfiguration as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetRetentionPeriod as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetSchedule as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetTrigger as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetTriggeringDataset as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatasetVariable as X
import Stratosphere.ResourceProperties.IoTAnalyticsDatastoreRetentionPeriod as X
import Stratosphere.ResourceProperties.IoTAnalyticsPipelineActivity as X
import Stratosphere.ResourceProperties.IoTAnalyticsPipelineAddAttributes as X
import Stratosphere.ResourceProperties.IoTAnalyticsPipelineChannel as X
import Stratosphere.ResourceProperties.IoTAnalyticsPipelineDatastore as X
import Stratosphere.ResourceProperties.IoTAnalyticsPipelineDeviceRegistryEnrich as X
import Stratosphere.ResourceProperties.IoTAnalyticsPipelineDeviceShadowEnrich as X
import Stratosphere.ResourceProperties.IoTAnalyticsPipelineFilter as X
import Stratosphere.ResourceProperties.IoTAnalyticsPipelineLambda as X
import Stratosphere.ResourceProperties.IoTAnalyticsPipelineMath as X
import Stratosphere.ResourceProperties.IoTAnalyticsPipelineRemoveAttributes as X
import Stratosphere.ResourceProperties.IoTAnalyticsPipelineSelectAttributes as X
import Stratosphere.ResourceProperties.KinesisStreamStreamEncryption as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationCSVMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationInput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationInputLambdaProcessor as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationInputParallelism as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationInputProcessingConfiguration as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationInputSchema as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationJSONMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationKinesisFirehoseInput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationKinesisStreamsInput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationRecordColumn as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationRecordFormat as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationOutputDestinationSchema as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationOutputKinesisFirehoseOutput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationOutputKinesisStreamsOutput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationOutputLambdaOutput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationOutputOutput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationReferenceDataSourceCSVMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationReferenceDataSourceJSONMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationReferenceDataSourceMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationReferenceDataSourceRecordColumn as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationReferenceDataSourceRecordFormat as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationReferenceDataSourceReferenceDataSource as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationReferenceDataSourceReferenceSchema as X
import Stratosphere.ResourceProperties.KinesisAnalyticsApplicationReferenceDataSourceS3ReferenceDataSource as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationApplicationCodeConfiguration as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationApplicationConfiguration as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationApplicationSnapshotConfiguration as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationCSVMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationCheckpointConfiguration as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationCodeContent as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationEnvironmentProperties as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationFlinkApplicationConfiguration as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationInput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationInputLambdaProcessor as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationInputParallelism as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationInputProcessingConfiguration as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationInputSchema as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationJSONMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationKinesisFirehoseInput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationKinesisStreamsInput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationMonitoringConfiguration as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationParallelismConfiguration as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationPropertyGroup as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationRecordColumn as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationRecordFormat as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationS3ContentLocation as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationSqlApplicationConfiguration as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationCloudWatchLoggingOptionCloudWatchLoggingOption as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationOutputDestinationSchema as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationOutputKinesisFirehoseOutput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationOutputKinesisStreamsOutput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationOutputLambdaOutput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationOutputOutput as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationReferenceDataSourceCSVMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationReferenceDataSourceJSONMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationReferenceDataSourceMappingParameters as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationReferenceDataSourceRecordColumn as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationReferenceDataSourceRecordFormat as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationReferenceDataSourceReferenceDataSource as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationReferenceDataSourceReferenceSchema as X
import Stratosphere.ResourceProperties.KinesisAnalyticsV2ApplicationReferenceDataSourceS3ReferenceDataSource as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamBufferingHints as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCopyCommand as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchBufferingHints as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchRetryOptions as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamEncryptionConfiguration as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamExtendedS3DestinationConfiguration as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamKMSEncryptionConfig as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamKinesisStreamSourceConfiguration as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamProcessingConfiguration as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamProcessor as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamProcessorParameter as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamS3DestinationConfiguration as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamSplunkDestinationConfiguration as X
import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamSplunkRetryOptions as X
import Stratosphere.ResourceProperties.LambdaAliasAliasRoutingConfiguration as X
import Stratosphere.ResourceProperties.LambdaAliasVersionWeight as X
import Stratosphere.ResourceProperties.LambdaFunctionCode as X
import Stratosphere.ResourceProperties.LambdaFunctionDeadLetterConfig as X
import Stratosphere.ResourceProperties.LambdaFunctionEnvironment as X
import Stratosphere.ResourceProperties.LambdaFunctionTracingConfig as X
import Stratosphere.ResourceProperties.LambdaFunctionVpcConfig as X
import Stratosphere.ResourceProperties.LambdaLayerVersionContent as X
import Stratosphere.ResourceProperties.LogsMetricFilterMetricTransformation as X
import Stratosphere.ResourceProperties.OpsWorksAppDataSource as X
import Stratosphere.ResourceProperties.OpsWorksAppEnvironmentVariable as X
import Stratosphere.ResourceProperties.OpsWorksAppSource as X
import Stratosphere.ResourceProperties.OpsWorksAppSslConfiguration as X
import Stratosphere.ResourceProperties.OpsWorksInstanceBlockDeviceMapping as X
import Stratosphere.ResourceProperties.OpsWorksInstanceEbsBlockDevice as X
import Stratosphere.ResourceProperties.OpsWorksInstanceTimeBasedAutoScaling as X
import Stratosphere.ResourceProperties.OpsWorksLayerAutoScalingThresholds as X
import Stratosphere.ResourceProperties.OpsWorksLayerLifecycleEventConfiguration as X
import Stratosphere.ResourceProperties.OpsWorksLayerLoadBasedAutoScaling as X
import Stratosphere.ResourceProperties.OpsWorksLayerRecipes as X
import Stratosphere.ResourceProperties.OpsWorksLayerShutdownEventConfiguration as X
import Stratosphere.ResourceProperties.OpsWorksLayerVolumeConfiguration as X
import Stratosphere.ResourceProperties.OpsWorksStackChefConfiguration as X
import Stratosphere.ResourceProperties.OpsWorksStackElasticIp as X
import Stratosphere.ResourceProperties.OpsWorksStackRdsDbInstance as X
import Stratosphere.ResourceProperties.OpsWorksStackSource as X
import Stratosphere.ResourceProperties.OpsWorksStackStackConfigurationManager as X
import Stratosphere.ResourceProperties.OpsWorksCMServerEngineAttribute as X
import Stratosphere.ResourceProperties.RDSDBClusterScalingConfiguration as X
import Stratosphere.ResourceProperties.RDSDBInstanceProcessorFeature as X
import Stratosphere.ResourceProperties.RDSDBSecurityGroupIngressProperty as X
import Stratosphere.ResourceProperties.RDSOptionGroupOptionConfiguration as X
import Stratosphere.ResourceProperties.RDSOptionGroupOptionSetting as X
import Stratosphere.ResourceProperties.RedshiftClusterLoggingProperties as X
import Stratosphere.ResourceProperties.RedshiftClusterParameterGroupParameter as X
import Stratosphere.ResourceProperties.RoboMakerRobotApplicationRobotSoftwareSuite as X
import Stratosphere.ResourceProperties.RoboMakerRobotApplicationSourceConfig as X
import Stratosphere.ResourceProperties.RoboMakerSimulationApplicationRenderingEngine as X
import Stratosphere.ResourceProperties.RoboMakerSimulationApplicationRobotSoftwareSuite as X
import Stratosphere.ResourceProperties.RoboMakerSimulationApplicationSimulationSoftwareSuite as X
import Stratosphere.ResourceProperties.RoboMakerSimulationApplicationSourceConfig as X
import Stratosphere.ResourceProperties.Route53HealthCheckAlarmIdentifier as X
import Stratosphere.ResourceProperties.Route53HealthCheckHealthCheckConfig as X
import Stratosphere.ResourceProperties.Route53HealthCheckHealthCheckTag as X
import Stratosphere.ResourceProperties.Route53HostedZoneHostedZoneConfig as X
import Stratosphere.ResourceProperties.Route53HostedZoneHostedZoneTag as X
import Stratosphere.ResourceProperties.Route53HostedZoneQueryLoggingConfig as X
import Stratosphere.ResourceProperties.Route53HostedZoneVPC as X
import Stratosphere.ResourceProperties.Route53RecordSetAliasTarget as X
import Stratosphere.ResourceProperties.Route53RecordSetGeoLocation as X
import Stratosphere.ResourceProperties.Route53RecordSetGroupAliasTarget as X
import Stratosphere.ResourceProperties.Route53RecordSetGroupGeoLocation as X
import Stratosphere.ResourceProperties.Route53RecordSetGroupRecordSet as X
import Stratosphere.ResourceProperties.Route53ResolverResolverEndpointIpAddressRequest as X
import Stratosphere.ResourceProperties.Route53ResolverResolverRuleTargetAddress as X
import Stratosphere.ResourceProperties.S3BucketAbortIncompleteMultipartUpload as X
import Stratosphere.ResourceProperties.S3BucketAccelerateConfiguration as X
import Stratosphere.ResourceProperties.S3BucketAccessControlTranslation as X
import Stratosphere.ResourceProperties.S3BucketAnalyticsConfiguration as X
import Stratosphere.ResourceProperties.S3BucketBucketEncryption as X
import Stratosphere.ResourceProperties.S3BucketCorsConfiguration as X
import Stratosphere.ResourceProperties.S3BucketCorsRule as X
import Stratosphere.ResourceProperties.S3BucketDataExport as X
import Stratosphere.ResourceProperties.S3BucketDestination as X
import Stratosphere.ResourceProperties.S3BucketEncryptionConfiguration as X
import Stratosphere.ResourceProperties.S3BucketFilterRule as X
import Stratosphere.ResourceProperties.S3BucketInventoryConfiguration as X
import Stratosphere.ResourceProperties.S3BucketLambdaConfiguration as X
import Stratosphere.ResourceProperties.S3BucketLifecycleConfiguration as X
import Stratosphere.ResourceProperties.S3BucketLoggingConfiguration as X
import Stratosphere.ResourceProperties.S3BucketMetricsConfiguration as X
import Stratosphere.ResourceProperties.S3BucketNoncurrentVersionTransition as X
import Stratosphere.ResourceProperties.S3BucketNotificationConfiguration as X
import Stratosphere.ResourceProperties.S3BucketNotificationFilter as X
import Stratosphere.ResourceProperties.S3BucketPublicAccessBlockConfiguration as X
import Stratosphere.ResourceProperties.S3BucketQueueConfiguration as X
import Stratosphere.ResourceProperties.S3BucketRedirectAllRequestsTo as X
import Stratosphere.ResourceProperties.S3BucketRedirectRule as X
import Stratosphere.ResourceProperties.S3BucketReplicationConfiguration as X
import Stratosphere.ResourceProperties.S3BucketReplicationDestination as X
import Stratosphere.ResourceProperties.S3BucketReplicationRule as X
import Stratosphere.ResourceProperties.S3BucketRoutingRule as X
import Stratosphere.ResourceProperties.S3BucketRoutingRuleCondition as X
import Stratosphere.ResourceProperties.S3BucketRule as X
import Stratosphere.ResourceProperties.S3BucketS3KeyFilter as X
import Stratosphere.ResourceProperties.S3BucketServerSideEncryptionByDefault as X
import Stratosphere.ResourceProperties.S3BucketServerSideEncryptionRule as X
import Stratosphere.ResourceProperties.S3BucketSourceSelectionCriteria as X
import Stratosphere.ResourceProperties.S3BucketSseKmsEncryptedObjects as X
import Stratosphere.ResourceProperties.S3BucketStorageClassAnalysis as X
import Stratosphere.ResourceProperties.S3BucketTagFilter as X
import Stratosphere.ResourceProperties.S3BucketTopicConfiguration as X
import Stratosphere.ResourceProperties.S3BucketTransition as X
import Stratosphere.ResourceProperties.S3BucketVersioningConfiguration as X
import Stratosphere.ResourceProperties.S3BucketWebsiteConfiguration as X
import Stratosphere.ResourceProperties.SESConfigurationSetEventDestinationCloudWatchDestination as X
import Stratosphere.ResourceProperties.SESConfigurationSetEventDestinationDimensionConfiguration as X
import Stratosphere.ResourceProperties.SESConfigurationSetEventDestinationEventDestination as X
import Stratosphere.ResourceProperties.SESConfigurationSetEventDestinationKinesisFirehoseDestination as X
import Stratosphere.ResourceProperties.SESReceiptFilterFilter as X
import Stratosphere.ResourceProperties.SESReceiptFilterIpFilter as X
import Stratosphere.ResourceProperties.SESReceiptRuleAction as X
import Stratosphere.ResourceProperties.SESReceiptRuleAddHeaderAction as X
import Stratosphere.ResourceProperties.SESReceiptRuleBounceAction as X
import Stratosphere.ResourceProperties.SESReceiptRuleLambdaAction as X
import Stratosphere.ResourceProperties.SESReceiptRuleRule as X
import Stratosphere.ResourceProperties.SESReceiptRuleS3Action as X
import Stratosphere.ResourceProperties.SESReceiptRuleSNSAction as X
import Stratosphere.ResourceProperties.SESReceiptRuleStopAction as X
import Stratosphere.ResourceProperties.SESReceiptRuleWorkmailAction as X
import Stratosphere.ResourceProperties.SESTemplateTemplate as X
import Stratosphere.ResourceProperties.SNSTopicSubscription as X
import Stratosphere.ResourceProperties.SSMAssociationInstanceAssociationOutputLocation as X
import Stratosphere.ResourceProperties.SSMAssociationParameterValues as X
import Stratosphere.ResourceProperties.SSMAssociationS3OutputLocation as X
import Stratosphere.ResourceProperties.SSMAssociationTarget as X
import Stratosphere.ResourceProperties.SSMMaintenanceWindowTaskLoggingInfo as X
import Stratosphere.ResourceProperties.SSMMaintenanceWindowTaskMaintenanceWindowAutomationParameters as X
import Stratosphere.ResourceProperties.SSMMaintenanceWindowTaskMaintenanceWindowLambdaParameters as X
import Stratosphere.ResourceProperties.SSMMaintenanceWindowTaskMaintenanceWindowRunCommandParameters as X
import Stratosphere.ResourceProperties.SSMMaintenanceWindowTaskMaintenanceWindowStepFunctionsParameters as X
import Stratosphere.ResourceProperties.SSMMaintenanceWindowTaskNotificationConfig as X
import Stratosphere.ResourceProperties.SSMMaintenanceWindowTaskTarget as X
import Stratosphere.ResourceProperties.SSMMaintenanceWindowTaskTaskInvocationParameters as X
import Stratosphere.ResourceProperties.SSMPatchBaselinePatchFilter as X
import Stratosphere.ResourceProperties.SSMPatchBaselinePatchFilterGroup as X
import Stratosphere.ResourceProperties.SSMPatchBaselinePatchSource as X
import Stratosphere.ResourceProperties.SSMPatchBaselineRule as X
import Stratosphere.ResourceProperties.SSMPatchBaselineRuleGroup as X
import Stratosphere.ResourceProperties.SageMakerEndpointConfigProductionVariant as X
import Stratosphere.ResourceProperties.SageMakerModelContainerDefinition as X
import Stratosphere.ResourceProperties.SageMakerModelVpcConfig as X
import Stratosphere.ResourceProperties.SageMakerNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHook as X
import Stratosphere.ResourceProperties.SecretsManagerRotationScheduleRotationRules as X
import Stratosphere.ResourceProperties.SecretsManagerSecretGenerateSecretString as X
import Stratosphere.ResourceProperties.ServiceCatalogCloudFormationProductProvisioningArtifactProperties as X
import Stratosphere.ResourceProperties.ServiceCatalogCloudFormationProvisionedProductProvisioningParameter as X
import Stratosphere.ResourceProperties.ServiceDiscoveryServiceDnsConfig as X
import Stratosphere.ResourceProperties.ServiceDiscoveryServiceDnsRecord as X
import Stratosphere.ResourceProperties.ServiceDiscoveryServiceHealthCheckConfig as X
import Stratosphere.ResourceProperties.ServiceDiscoveryServiceHealthCheckCustomConfig as X
import Stratosphere.ResourceProperties.WAFByteMatchSetByteMatchTuple as X
import Stratosphere.ResourceProperties.WAFByteMatchSetFieldToMatch as X
import Stratosphere.ResourceProperties.WAFIPSetIPSetDescriptor as X
import Stratosphere.ResourceProperties.WAFRulePredicate as X
import Stratosphere.ResourceProperties.WAFSizeConstraintSetFieldToMatch as X
import Stratosphere.ResourceProperties.WAFSizeConstraintSetSizeConstraint as X
import Stratosphere.ResourceProperties.WAFSqlInjectionMatchSetFieldToMatch as X
import Stratosphere.ResourceProperties.WAFSqlInjectionMatchSetSqlInjectionMatchTuple as X
import Stratosphere.ResourceProperties.WAFWebACLActivatedRule as X
import Stratosphere.ResourceProperties.WAFWebACLWafAction as X
import Stratosphere.ResourceProperties.WAFXssMatchSetFieldToMatch as X
import Stratosphere.ResourceProperties.WAFXssMatchSetXssMatchTuple as X
import Stratosphere.ResourceProperties.WAFRegionalByteMatchSetByteMatchTuple as X
import Stratosphere.ResourceProperties.WAFRegionalByteMatchSetFieldToMatch as X
import Stratosphere.ResourceProperties.WAFRegionalIPSetIPSetDescriptor as X
import Stratosphere.ResourceProperties.WAFRegionalRulePredicate as X
import Stratosphere.ResourceProperties.WAFRegionalSizeConstraintSetFieldToMatch as X
import Stratosphere.ResourceProperties.WAFRegionalSizeConstraintSetSizeConstraint as X
import Stratosphere.ResourceProperties.WAFRegionalSqlInjectionMatchSetFieldToMatch as X
import Stratosphere.ResourceProperties.WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple as X
import Stratosphere.ResourceProperties.WAFRegionalWebACLAction as X
import Stratosphere.ResourceProperties.WAFRegionalWebACLRule as X
import Stratosphere.ResourceProperties.WAFRegionalXssMatchSetFieldToMatch as X
import Stratosphere.ResourceProperties.WAFRegionalXssMatchSetXssMatchTuple as X
import Stratosphere.ResourceProperties.WorkSpacesWorkspaceWorkspaceProperties as X
import Stratosphere.ResourceProperties.ASKSkillAuthenticationConfiguration as X
import Stratosphere.ResourceProperties.ASKSkillOverrides as X
import Stratosphere.ResourceProperties.ASKSkillSkillPackage as X
import Stratosphere.ResourceProperties.Tag as X
import Stratosphere.ResourceAttributes.AutoScalingReplacingUpdatePolicy as X
import Stratosphere.ResourceAttributes.AutoScalingRollingUpdatePolicy as X
import Stratosphere.ResourceAttributes.AutoScalingScheduledActionPolicy as X
import Stratosphere.ResourceAttributes.CreationPolicy as X
import Stratosphere.ResourceAttributes.ResourceSignal as X
import Stratosphere.ResourceAttributes.UpdatePolicy as X
import Stratosphere.Helpers
import Stratosphere.Values
data ResourceProperties
= AmazonMQBrokerProperties AmazonMQBroker
| AmazonMQConfigurationProperties AmazonMQConfiguration
| AmazonMQConfigurationAssociationProperties AmazonMQConfigurationAssociation
| ApiGatewayAccountProperties ApiGatewayAccount
| ApiGatewayApiKeyProperties ApiGatewayApiKey
| ApiGatewayAuthorizerProperties ApiGatewayAuthorizer
| ApiGatewayBasePathMappingProperties ApiGatewayBasePathMapping
| ApiGatewayClientCertificateProperties ApiGatewayClientCertificate
| ApiGatewayDeploymentProperties ApiGatewayDeployment
| ApiGatewayDocumentationPartProperties ApiGatewayDocumentationPart
| ApiGatewayDocumentationVersionProperties ApiGatewayDocumentationVersion
| ApiGatewayDomainNameProperties ApiGatewayDomainName
| ApiGatewayGatewayResponseProperties ApiGatewayGatewayResponse
| ApiGatewayMethodProperties ApiGatewayMethod
| ApiGatewayModelProperties ApiGatewayModel
| ApiGatewayRequestValidatorProperties ApiGatewayRequestValidator
| ApiGatewayResourceProperties ApiGatewayResource
| ApiGatewayRestApiProperties ApiGatewayRestApi
| ApiGatewayStageProperties ApiGatewayStage
| ApiGatewayUsagePlanProperties ApiGatewayUsagePlan
| ApiGatewayUsagePlanKeyProperties ApiGatewayUsagePlanKey
| ApiGatewayVpcLinkProperties ApiGatewayVpcLink
| ApiGatewayV2ApiProperties ApiGatewayV2Api
| ApiGatewayV2AuthorizerProperties ApiGatewayV2Authorizer
| ApiGatewayV2DeploymentProperties ApiGatewayV2Deployment
| ApiGatewayV2IntegrationProperties ApiGatewayV2Integration
| ApiGatewayV2IntegrationResponseProperties ApiGatewayV2IntegrationResponse
| ApiGatewayV2ModelProperties ApiGatewayV2Model
| ApiGatewayV2RouteProperties ApiGatewayV2Route
| ApiGatewayV2RouteResponseProperties ApiGatewayV2RouteResponse
| ApiGatewayV2StageProperties ApiGatewayV2Stage
| AppStreamDirectoryConfigProperties AppStreamDirectoryConfig
| AppStreamFleetProperties AppStreamFleet
| AppStreamImageBuilderProperties AppStreamImageBuilder
| AppStreamStackProperties AppStreamStack
| AppStreamStackFleetAssociationProperties AppStreamStackFleetAssociation
| AppStreamStackUserAssociationProperties AppStreamStackUserAssociation
| AppStreamUserProperties AppStreamUser
| AppSyncApiKeyProperties AppSyncApiKey
| AppSyncDataSourceProperties AppSyncDataSource
| AppSyncFunctionConfigurationProperties AppSyncFunctionConfiguration
| AppSyncGraphQLApiProperties AppSyncGraphQLApi
| AppSyncGraphQLSchemaProperties AppSyncGraphQLSchema
| AppSyncResolverProperties AppSyncResolver
| ApplicationAutoScalingScalableTargetProperties ApplicationAutoScalingScalableTarget
| ApplicationAutoScalingScalingPolicyProperties ApplicationAutoScalingScalingPolicy
| AthenaNamedQueryProperties AthenaNamedQuery
| AutoScalingAutoScalingGroupProperties AutoScalingAutoScalingGroup
| AutoScalingLaunchConfigurationProperties AutoScalingLaunchConfiguration
| AutoScalingLifecycleHookProperties AutoScalingLifecycleHook
| AutoScalingScalingPolicyProperties AutoScalingScalingPolicy
| AutoScalingScheduledActionProperties AutoScalingScheduledAction
| AutoScalingPlansScalingPlanProperties AutoScalingPlansScalingPlan
| BatchComputeEnvironmentProperties BatchComputeEnvironment
| BatchJobDefinitionProperties BatchJobDefinition
| BatchJobQueueProperties BatchJobQueue
| BudgetsBudgetProperties BudgetsBudget
| CertificateManagerCertificateProperties CertificateManagerCertificate
| Cloud9EnvironmentEC2Properties Cloud9EnvironmentEC2
| CloudFormationCustomResourceProperties CloudFormationCustomResource
| CloudFormationMacroProperties CloudFormationMacro
| CloudFormationStackProperties CloudFormationStack
| CloudFormationWaitConditionProperties CloudFormationWaitCondition
| CloudFormationWaitConditionHandleProperties CloudFormationWaitConditionHandle
| CloudFrontCloudFrontOriginAccessIdentityProperties CloudFrontCloudFrontOriginAccessIdentity
| CloudFrontDistributionProperties CloudFrontDistribution
| CloudFrontStreamingDistributionProperties CloudFrontStreamingDistribution
| CloudTrailTrailProperties CloudTrailTrail
| CloudWatchAlarmProperties CloudWatchAlarm
| CloudWatchDashboardProperties CloudWatchDashboard
| CodeBuildProjectProperties CodeBuildProject
| CodeCommitRepositoryProperties CodeCommitRepository
| CodeDeployApplicationProperties CodeDeployApplication
| CodeDeployDeploymentConfigProperties CodeDeployDeploymentConfig
| CodeDeployDeploymentGroupProperties CodeDeployDeploymentGroup
| CodePipelineCustomActionTypeProperties CodePipelineCustomActionType
| CodePipelinePipelineProperties CodePipelinePipeline
| CodePipelineWebhookProperties CodePipelineWebhook
| CognitoIdentityPoolProperties CognitoIdentityPool
| CognitoIdentityPoolRoleAttachmentProperties CognitoIdentityPoolRoleAttachment
| CognitoUserPoolProperties CognitoUserPool
| CognitoUserPoolClientProperties CognitoUserPoolClient
| CognitoUserPoolGroupProperties CognitoUserPoolGroup
| CognitoUserPoolUserProperties CognitoUserPoolUser
| CognitoUserPoolUserToGroupAttachmentProperties CognitoUserPoolUserToGroupAttachment
| ConfigAggregationAuthorizationProperties ConfigAggregationAuthorization
| ConfigConfigRuleProperties ConfigConfigRule
| ConfigConfigurationAggregatorProperties ConfigConfigurationAggregator
| ConfigConfigurationRecorderProperties ConfigConfigurationRecorder
| ConfigDeliveryChannelProperties ConfigDeliveryChannel
| DAXClusterProperties DAXCluster
| DAXParameterGroupProperties DAXParameterGroup
| DAXSubnetGroupProperties DAXSubnetGroup
| DLMLifecyclePolicyProperties DLMLifecyclePolicy
| DMSCertificateProperties DMSCertificate
| DMSEndpointProperties DMSEndpoint
| DMSEventSubscriptionProperties DMSEventSubscription
| DMSReplicationInstanceProperties DMSReplicationInstance
| DMSReplicationSubnetGroupProperties DMSReplicationSubnetGroup
| DMSReplicationTaskProperties DMSReplicationTask
| DataPipelinePipelineProperties DataPipelinePipeline
| DirectoryServiceMicrosoftADProperties DirectoryServiceMicrosoftAD
| DirectoryServiceSimpleADProperties DirectoryServiceSimpleAD
| DocDBDBClusterProperties DocDBDBCluster
| DocDBDBClusterParameterGroupProperties DocDBDBClusterParameterGroup
| DocDBDBInstanceProperties DocDBDBInstance
| DocDBDBSubnetGroupProperties DocDBDBSubnetGroup
| DynamoDBTableProperties DynamoDBTable
| EC2CustomerGatewayProperties EC2CustomerGateway
| EC2DHCPOptionsProperties EC2DHCPOptions
| EC2EC2FleetProperties EC2EC2Fleet
| EC2EIPProperties EC2EIP
| EC2EIPAssociationProperties EC2EIPAssociation
| EC2EgressOnlyInternetGatewayProperties EC2EgressOnlyInternetGateway
| EC2FlowLogProperties EC2FlowLog
| EC2HostProperties EC2Host
| EC2InstanceProperties EC2Instance
| EC2InternetGatewayProperties EC2InternetGateway
| EC2LaunchTemplateProperties EC2LaunchTemplate
| EC2NatGatewayProperties EC2NatGateway
| EC2NetworkAclProperties EC2NetworkAcl
| EC2NetworkAclEntryProperties EC2NetworkAclEntry
| EC2NetworkInterfaceProperties EC2NetworkInterface
| EC2NetworkInterfaceAttachmentProperties EC2NetworkInterfaceAttachment
| EC2NetworkInterfacePermissionProperties EC2NetworkInterfacePermission
| EC2PlacementGroupProperties EC2PlacementGroup
| EC2RouteProperties EC2Route
| EC2RouteTableProperties EC2RouteTable
| EC2SecurityGroupProperties EC2SecurityGroup
| EC2SecurityGroupEgressProperties EC2SecurityGroupEgress
| EC2SecurityGroupIngressProperties EC2SecurityGroupIngress
| EC2SpotFleetProperties EC2SpotFleet
| EC2SubnetProperties EC2Subnet
| EC2SubnetCidrBlockProperties EC2SubnetCidrBlock
| EC2SubnetNetworkAclAssociationProperties EC2SubnetNetworkAclAssociation
| EC2SubnetRouteTableAssociationProperties EC2SubnetRouteTableAssociation
| EC2TransitGatewayProperties EC2TransitGateway
| EC2TransitGatewayAttachmentProperties EC2TransitGatewayAttachment
| EC2TransitGatewayRouteProperties EC2TransitGatewayRoute
| EC2TransitGatewayRouteTableProperties EC2TransitGatewayRouteTable
| EC2TransitGatewayRouteTableAssociationProperties EC2TransitGatewayRouteTableAssociation
| EC2TransitGatewayRouteTablePropagationProperties EC2TransitGatewayRouteTablePropagation
| EC2TrunkInterfaceAssociationProperties EC2TrunkInterfaceAssociation
| EC2VPCProperties EC2VPC
| EC2VPCCidrBlockProperties EC2VPCCidrBlock
| EC2VPCDHCPOptionsAssociationProperties EC2VPCDHCPOptionsAssociation
| EC2VPCEndpointProperties EC2VPCEndpoint
| EC2VPCEndpointConnectionNotificationProperties EC2VPCEndpointConnectionNotification
| EC2VPCEndpointServicePermissionsProperties EC2VPCEndpointServicePermissions
| EC2VPCGatewayAttachmentProperties EC2VPCGatewayAttachment
| EC2VPCPeeringConnectionProperties EC2VPCPeeringConnection
| EC2VPNConnectionProperties EC2VPNConnection
| EC2VPNConnectionRouteProperties EC2VPNConnectionRoute
| EC2VPNGatewayProperties EC2VPNGateway
| EC2VPNGatewayRoutePropagationProperties EC2VPNGatewayRoutePropagation
| EC2VolumeProperties EC2Volume
| EC2VolumeAttachmentProperties EC2VolumeAttachment
| ECRRepositoryProperties ECRRepository
| ECSClusterProperties ECSCluster
| ECSServiceProperties ECSService
| ECSTaskDefinitionProperties ECSTaskDefinition
| EFSFileSystemProperties EFSFileSystem
| EFSMountTargetProperties EFSMountTarget
| EKSClusterProperties EKSCluster
| EMRClusterProperties EMRCluster
| EMRInstanceFleetConfigProperties EMRInstanceFleetConfig
| EMRInstanceGroupConfigProperties EMRInstanceGroupConfig
| EMRSecurityConfigurationProperties EMRSecurityConfiguration
| EMRStepProperties EMRStep
| ElastiCacheCacheClusterProperties ElastiCacheCacheCluster
| ElastiCacheParameterGroupProperties ElastiCacheParameterGroup
| ElastiCacheReplicationGroupProperties ElastiCacheReplicationGroup
| ElastiCacheSecurityGroupProperties ElastiCacheSecurityGroup
| ElastiCacheSecurityGroupIngressProperties ElastiCacheSecurityGroupIngress
| ElastiCacheSubnetGroupProperties ElastiCacheSubnetGroup
| ElasticBeanstalkApplicationProperties ElasticBeanstalkApplication
| ElasticBeanstalkApplicationVersionProperties ElasticBeanstalkApplicationVersion
| ElasticBeanstalkConfigurationTemplateProperties ElasticBeanstalkConfigurationTemplate
| ElasticBeanstalkEnvironmentProperties ElasticBeanstalkEnvironment
| ElasticLoadBalancingLoadBalancerProperties ElasticLoadBalancingLoadBalancer
| ElasticLoadBalancingV2ListenerProperties ElasticLoadBalancingV2Listener
| ElasticLoadBalancingV2ListenerCertificateResourceProperties ElasticLoadBalancingV2ListenerCertificateResource
| ElasticLoadBalancingV2ListenerRuleProperties ElasticLoadBalancingV2ListenerRule
| ElasticLoadBalancingV2LoadBalancerProperties ElasticLoadBalancingV2LoadBalancer
| ElasticLoadBalancingV2TargetGroupProperties ElasticLoadBalancingV2TargetGroup
| ElasticsearchDomainProperties ElasticsearchDomain
| EventsEventBusPolicyProperties EventsEventBusPolicy
| EventsRuleProperties EventsRule
| FSxFileSystemProperties FSxFileSystem
| GameLiftAliasProperties GameLiftAlias
| GameLiftBuildProperties GameLiftBuild
| GameLiftFleetProperties GameLiftFleet
| GlueClassifierProperties GlueClassifier
| GlueConnectionProperties GlueConnection
| GlueCrawlerProperties GlueCrawler
| GlueDatabaseProperties GlueDatabase
| GlueDevEndpointProperties GlueDevEndpoint
| GlueJobProperties GlueJob
| GluePartitionProperties GluePartition
| GlueTableProperties GlueTable
| GlueTriggerProperties GlueTrigger
| GuardDutyDetectorProperties GuardDutyDetector
| GuardDutyFilterProperties GuardDutyFilter
| GuardDutyIPSetProperties GuardDutyIPSet
| GuardDutyMasterProperties GuardDutyMaster
| GuardDutyMemberProperties GuardDutyMember
| GuardDutyThreatIntelSetProperties GuardDutyThreatIntelSet
| IAMAccessKeyProperties IAMAccessKey
| IAMGroupProperties IAMGroup
| IAMInstanceProfileProperties IAMInstanceProfile
| IAMManagedPolicyProperties IAMManagedPolicy
| IAMPolicyProperties IAMPolicy
| IAMRoleProperties IAMRole
| IAMServiceLinkedRoleProperties IAMServiceLinkedRole
| IAMUserProperties IAMUser
| IAMUserToGroupAdditionProperties IAMUserToGroupAddition
| InspectorAssessmentTargetProperties InspectorAssessmentTarget
| InspectorAssessmentTemplateProperties InspectorAssessmentTemplate
| InspectorResourceGroupProperties InspectorResourceGroup
| IoT1ClickDeviceProperties IoT1ClickDevice
| IoT1ClickPlacementProperties IoT1ClickPlacement
| IoT1ClickProjectProperties IoT1ClickProject
| IoTCertificateProperties IoTCertificate
| IoTPolicyProperties IoTPolicy
| IoTPolicyPrincipalAttachmentProperties IoTPolicyPrincipalAttachment
| IoTThingProperties IoTThing
| IoTThingPrincipalAttachmentProperties IoTThingPrincipalAttachment
| IoTTopicRuleProperties IoTTopicRule
| IoTAnalyticsChannelProperties IoTAnalyticsChannel
| IoTAnalyticsDatasetProperties IoTAnalyticsDataset
| IoTAnalyticsDatastoreProperties IoTAnalyticsDatastore
| IoTAnalyticsPipelineProperties IoTAnalyticsPipeline
| KMSAliasProperties KMSAlias
| KMSKeyProperties KMSKey
| KinesisStreamProperties KinesisStream
| KinesisStreamConsumerProperties KinesisStreamConsumer
| KinesisAnalyticsApplicationProperties KinesisAnalyticsApplication
| KinesisAnalyticsApplicationOutputProperties KinesisAnalyticsApplicationOutput
| KinesisAnalyticsApplicationReferenceDataSourceProperties KinesisAnalyticsApplicationReferenceDataSource
| KinesisAnalyticsV2ApplicationProperties KinesisAnalyticsV2Application
| KinesisAnalyticsV2ApplicationCloudWatchLoggingOptionProperties KinesisAnalyticsV2ApplicationCloudWatchLoggingOption
| KinesisAnalyticsV2ApplicationOutputProperties KinesisAnalyticsV2ApplicationOutput
| KinesisAnalyticsV2ApplicationReferenceDataSourceProperties KinesisAnalyticsV2ApplicationReferenceDataSource
| KinesisFirehoseDeliveryStreamProperties KinesisFirehoseDeliveryStream
| LambdaAliasProperties LambdaAlias
| LambdaEventSourceMappingProperties LambdaEventSourceMapping
| LambdaFunctionProperties LambdaFunction
| LambdaLayerVersionProperties LambdaLayerVersion
| LambdaLayerVersionPermissionProperties LambdaLayerVersionPermission
| LambdaPermissionProperties LambdaPermission
| LambdaVersionProperties LambdaVersion
| LogsDestinationProperties LogsDestination
| LogsLogGroupProperties LogsLogGroup
| LogsLogStreamProperties LogsLogStream
| LogsMetricFilterProperties LogsMetricFilter
| LogsSubscriptionFilterProperties LogsSubscriptionFilter
| NeptuneDBClusterProperties NeptuneDBCluster
| NeptuneDBClusterParameterGroupProperties NeptuneDBClusterParameterGroup
| NeptuneDBInstanceProperties NeptuneDBInstance
| NeptuneDBParameterGroupProperties NeptuneDBParameterGroup
| NeptuneDBSubnetGroupProperties NeptuneDBSubnetGroup
| OpsWorksAppProperties OpsWorksApp
| OpsWorksElasticLoadBalancerAttachmentProperties OpsWorksElasticLoadBalancerAttachment
| OpsWorksInstanceProperties OpsWorksInstance
| OpsWorksLayerProperties OpsWorksLayer
| OpsWorksStackProperties OpsWorksStack
| OpsWorksUserProfileProperties OpsWorksUserProfile
| OpsWorksVolumeProperties OpsWorksVolume
| OpsWorksCMServerProperties OpsWorksCMServer
| RAMResourceShareProperties RAMResourceShare
| RDSDBClusterProperties RDSDBCluster
| RDSDBClusterParameterGroupProperties RDSDBClusterParameterGroup
| RDSDBInstanceProperties RDSDBInstance
| RDSDBParameterGroupProperties RDSDBParameterGroup
| RDSDBSecurityGroupProperties RDSDBSecurityGroup
| RDSDBSecurityGroupIngressProperties RDSDBSecurityGroupIngress
| RDSDBSubnetGroupProperties RDSDBSubnetGroup
| RDSEventSubscriptionProperties RDSEventSubscription
| RDSOptionGroupProperties RDSOptionGroup
| RedshiftClusterProperties RedshiftCluster
| RedshiftClusterParameterGroupProperties RedshiftClusterParameterGroup
| RedshiftClusterSecurityGroupProperties RedshiftClusterSecurityGroup
| RedshiftClusterSecurityGroupIngressProperties RedshiftClusterSecurityGroupIngress
| RedshiftClusterSubnetGroupProperties RedshiftClusterSubnetGroup
| RoboMakerFleetProperties RoboMakerFleet
| RoboMakerRobotProperties RoboMakerRobot
| RoboMakerRobotApplicationProperties RoboMakerRobotApplication
| RoboMakerRobotApplicationVersionProperties RoboMakerRobotApplicationVersion
| RoboMakerSimulationApplicationProperties RoboMakerSimulationApplication
| RoboMakerSimulationApplicationVersionProperties RoboMakerSimulationApplicationVersion
| Route53HealthCheckProperties Route53HealthCheck
| Route53HostedZoneProperties Route53HostedZone
| Route53RecordSetProperties Route53RecordSet
| Route53RecordSetGroupProperties Route53RecordSetGroup
| Route53ResolverResolverEndpointProperties Route53ResolverResolverEndpoint
| Route53ResolverResolverRuleProperties Route53ResolverResolverRule
| Route53ResolverResolverRuleAssociationProperties Route53ResolverResolverRuleAssociation
| S3BucketProperties S3Bucket
| S3BucketPolicyProperties S3BucketPolicy
| SDBDomainProperties SDBDomain
| SESConfigurationSetProperties SESConfigurationSet
| SESConfigurationSetEventDestinationProperties SESConfigurationSetEventDestination
| SESReceiptFilterProperties SESReceiptFilter
| SESReceiptRuleProperties SESReceiptRule
| SESReceiptRuleSetProperties SESReceiptRuleSet
| SESTemplateProperties SESTemplate
| SNSSubscriptionProperties SNSSubscription
| SNSTopicProperties SNSTopic
| SNSTopicPolicyProperties SNSTopicPolicy
| SQSQueueProperties SQSQueue
| SQSQueuePolicyProperties SQSQueuePolicy
| SSMAssociationProperties SSMAssociation
| SSMDocumentProperties SSMDocument
| SSMMaintenanceWindowProperties SSMMaintenanceWindow
| SSMMaintenanceWindowTaskProperties SSMMaintenanceWindowTask
| SSMParameterProperties SSMParameter
| SSMPatchBaselineProperties SSMPatchBaseline
| SSMResourceDataSyncProperties SSMResourceDataSync
| SageMakerEndpointProperties SageMakerEndpoint
| SageMakerEndpointConfigProperties SageMakerEndpointConfig
| SageMakerModelProperties SageMakerModel
| SageMakerNotebookInstanceProperties SageMakerNotebookInstance
| SageMakerNotebookInstanceLifecycleConfigProperties SageMakerNotebookInstanceLifecycleConfig
| SecretsManagerResourcePolicyProperties SecretsManagerResourcePolicy
| SecretsManagerRotationScheduleProperties SecretsManagerRotationSchedule
| SecretsManagerSecretProperties SecretsManagerSecret
| SecretsManagerSecretTargetAttachmentProperties SecretsManagerSecretTargetAttachment
| ServiceCatalogAcceptedPortfolioShareProperties ServiceCatalogAcceptedPortfolioShare
| ServiceCatalogCloudFormationProductProperties ServiceCatalogCloudFormationProduct
| ServiceCatalogCloudFormationProvisionedProductProperties ServiceCatalogCloudFormationProvisionedProduct
| ServiceCatalogLaunchNotificationConstraintProperties ServiceCatalogLaunchNotificationConstraint
| ServiceCatalogLaunchRoleConstraintProperties ServiceCatalogLaunchRoleConstraint
| ServiceCatalogLaunchTemplateConstraintProperties ServiceCatalogLaunchTemplateConstraint
| ServiceCatalogPortfolioProperties ServiceCatalogPortfolio
| ServiceCatalogPortfolioPrincipalAssociationProperties ServiceCatalogPortfolioPrincipalAssociation
| ServiceCatalogPortfolioProductAssociationProperties ServiceCatalogPortfolioProductAssociation
| ServiceCatalogPortfolioShareProperties ServiceCatalogPortfolioShare
| ServiceCatalogTagOptionProperties ServiceCatalogTagOption
| ServiceCatalogTagOptionAssociationProperties ServiceCatalogTagOptionAssociation
| ServiceDiscoveryHttpNamespaceProperties ServiceDiscoveryHttpNamespace
| ServiceDiscoveryInstanceProperties ServiceDiscoveryInstance
| ServiceDiscoveryPrivateDnsNamespaceProperties ServiceDiscoveryPrivateDnsNamespace
| ServiceDiscoveryPublicDnsNamespaceProperties ServiceDiscoveryPublicDnsNamespace
| ServiceDiscoveryServiceProperties ServiceDiscoveryService
| StepFunctionsActivityProperties StepFunctionsActivity
| StepFunctionsStateMachineProperties StepFunctionsStateMachine
| WAFByteMatchSetProperties WAFByteMatchSet
| WAFIPSetProperties WAFIPSet
| WAFRuleProperties WAFRule
| WAFSizeConstraintSetProperties WAFSizeConstraintSet
| WAFSqlInjectionMatchSetProperties WAFSqlInjectionMatchSet
| WAFWebACLProperties WAFWebACL
| WAFXssMatchSetProperties WAFXssMatchSet
| WAFRegionalByteMatchSetProperties WAFRegionalByteMatchSet
| WAFRegionalIPSetProperties WAFRegionalIPSet
| WAFRegionalRuleProperties WAFRegionalRule
| WAFRegionalSizeConstraintSetProperties WAFRegionalSizeConstraintSet
| WAFRegionalSqlInjectionMatchSetProperties WAFRegionalSqlInjectionMatchSet
| WAFRegionalWebACLProperties WAFRegionalWebACL
| WAFRegionalWebACLAssociationProperties WAFRegionalWebACLAssociation
| WAFRegionalXssMatchSetProperties WAFRegionalXssMatchSet
| WorkSpacesWorkspaceProperties WorkSpacesWorkspace
| ASKSkillProperties ASKSkill
deriving (Show, Eq)
data DeletionPolicy
= Delete
| Retain
| Snapshot
deriving (Show, Eq, Generic)
instance ToJSON DeletionPolicy where
data Resource =
Resource
{ _resourceName :: T.Text
, _resourceProperties :: ResourceProperties
, _resourceDeletionPolicy :: Maybe DeletionPolicy
, _resourceCreationPolicy :: Maybe CreationPolicy
, _resourceUpdatePolicy :: Maybe UpdatePolicy
, _resourceDependsOn :: Maybe [T.Text]
, _resourceMetadata :: Maybe Object
, _resourceCondition :: Maybe T.Text
} deriving (Show, Eq)
instance ToRef Resource b where
toRef r = Ref (_resourceName r)
-- | Convenient constructor for 'Resource' with required arguments.
resource
:: T.Text -- ^ Logical name
-> ResourceProperties
-> Resource
resource rn rp =
Resource
{ _resourceName = rn
, _resourceProperties = rp
, _resourceDeletionPolicy = Nothing
, _resourceCreationPolicy = Nothing
, _resourceUpdatePolicy = Nothing
, _resourceDependsOn = Nothing
, _resourceMetadata = Nothing
, _resourceCondition = Nothing
}
$(makeLenses ''Resource)
resourceToJSON :: Resource -> Value
resourceToJSON (Resource _ props dp cp up deps meta cond) =
object $ resourcePropertiesJSON props ++ catMaybes
[ maybeField "DeletionPolicy" dp
, maybeField "CreationPolicy" cp
, maybeField "UpdatePolicy" up
, maybeField "DependsOn" deps
, maybeField "Metadata" meta
, maybeField "Condition" cond
]
resourcePropertiesJSON :: ResourceProperties -> [Pair]
resourcePropertiesJSON (AmazonMQBrokerProperties x) =
[ "Type" .= ("AWS::AmazonMQ::Broker" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AmazonMQConfigurationProperties x) =
[ "Type" .= ("AWS::AmazonMQ::Configuration" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AmazonMQConfigurationAssociationProperties x) =
[ "Type" .= ("AWS::AmazonMQ::ConfigurationAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayAccountProperties x) =
[ "Type" .= ("AWS::ApiGateway::Account" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayApiKeyProperties x) =
[ "Type" .= ("AWS::ApiGateway::ApiKey" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayAuthorizerProperties x) =
[ "Type" .= ("AWS::ApiGateway::Authorizer" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayBasePathMappingProperties x) =
[ "Type" .= ("AWS::ApiGateway::BasePathMapping" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayClientCertificateProperties x) =
[ "Type" .= ("AWS::ApiGateway::ClientCertificate" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayDeploymentProperties x) =
[ "Type" .= ("AWS::ApiGateway::Deployment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayDocumentationPartProperties x) =
[ "Type" .= ("AWS::ApiGateway::DocumentationPart" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayDocumentationVersionProperties x) =
[ "Type" .= ("AWS::ApiGateway::DocumentationVersion" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayDomainNameProperties x) =
[ "Type" .= ("AWS::ApiGateway::DomainName" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayGatewayResponseProperties x) =
[ "Type" .= ("AWS::ApiGateway::GatewayResponse" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayMethodProperties x) =
[ "Type" .= ("AWS::ApiGateway::Method" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayModelProperties x) =
[ "Type" .= ("AWS::ApiGateway::Model" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayRequestValidatorProperties x) =
[ "Type" .= ("AWS::ApiGateway::RequestValidator" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayResourceProperties x) =
[ "Type" .= ("AWS::ApiGateway::Resource" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayRestApiProperties x) =
[ "Type" .= ("AWS::ApiGateway::RestApi" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayStageProperties x) =
[ "Type" .= ("AWS::ApiGateway::Stage" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayUsagePlanProperties x) =
[ "Type" .= ("AWS::ApiGateway::UsagePlan" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayUsagePlanKeyProperties x) =
[ "Type" .= ("AWS::ApiGateway::UsagePlanKey" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayVpcLinkProperties x) =
[ "Type" .= ("AWS::ApiGateway::VpcLink" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayV2ApiProperties x) =
[ "Type" .= ("AWS::ApiGatewayV2::Api" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayV2AuthorizerProperties x) =
[ "Type" .= ("AWS::ApiGatewayV2::Authorizer" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayV2DeploymentProperties x) =
[ "Type" .= ("AWS::ApiGatewayV2::Deployment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayV2IntegrationProperties x) =
[ "Type" .= ("AWS::ApiGatewayV2::Integration" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayV2IntegrationResponseProperties x) =
[ "Type" .= ("AWS::ApiGatewayV2::IntegrationResponse" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayV2ModelProperties x) =
[ "Type" .= ("AWS::ApiGatewayV2::Model" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayV2RouteProperties x) =
[ "Type" .= ("AWS::ApiGatewayV2::Route" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayV2RouteResponseProperties x) =
[ "Type" .= ("AWS::ApiGatewayV2::RouteResponse" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApiGatewayV2StageProperties x) =
[ "Type" .= ("AWS::ApiGatewayV2::Stage" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppStreamDirectoryConfigProperties x) =
[ "Type" .= ("AWS::AppStream::DirectoryConfig" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppStreamFleetProperties x) =
[ "Type" .= ("AWS::AppStream::Fleet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppStreamImageBuilderProperties x) =
[ "Type" .= ("AWS::AppStream::ImageBuilder" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppStreamStackProperties x) =
[ "Type" .= ("AWS::AppStream::Stack" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppStreamStackFleetAssociationProperties x) =
[ "Type" .= ("AWS::AppStream::StackFleetAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppStreamStackUserAssociationProperties x) =
[ "Type" .= ("AWS::AppStream::StackUserAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppStreamUserProperties x) =
[ "Type" .= ("AWS::AppStream::User" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppSyncApiKeyProperties x) =
[ "Type" .= ("AWS::AppSync::ApiKey" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppSyncDataSourceProperties x) =
[ "Type" .= ("AWS::AppSync::DataSource" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppSyncFunctionConfigurationProperties x) =
[ "Type" .= ("AWS::AppSync::FunctionConfiguration" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppSyncGraphQLApiProperties x) =
[ "Type" .= ("AWS::AppSync::GraphQLApi" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppSyncGraphQLSchemaProperties x) =
[ "Type" .= ("AWS::AppSync::GraphQLSchema" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AppSyncResolverProperties x) =
[ "Type" .= ("AWS::AppSync::Resolver" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApplicationAutoScalingScalableTargetProperties x) =
[ "Type" .= ("AWS::ApplicationAutoScaling::ScalableTarget" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ApplicationAutoScalingScalingPolicyProperties x) =
[ "Type" .= ("AWS::ApplicationAutoScaling::ScalingPolicy" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AthenaNamedQueryProperties x) =
[ "Type" .= ("AWS::Athena::NamedQuery" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AutoScalingAutoScalingGroupProperties x) =
[ "Type" .= ("AWS::AutoScaling::AutoScalingGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AutoScalingLaunchConfigurationProperties x) =
[ "Type" .= ("AWS::AutoScaling::LaunchConfiguration" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AutoScalingLifecycleHookProperties x) =
[ "Type" .= ("AWS::AutoScaling::LifecycleHook" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AutoScalingScalingPolicyProperties x) =
[ "Type" .= ("AWS::AutoScaling::ScalingPolicy" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AutoScalingScheduledActionProperties x) =
[ "Type" .= ("AWS::AutoScaling::ScheduledAction" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (AutoScalingPlansScalingPlanProperties x) =
[ "Type" .= ("AWS::AutoScalingPlans::ScalingPlan" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (BatchComputeEnvironmentProperties x) =
[ "Type" .= ("AWS::Batch::ComputeEnvironment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (BatchJobDefinitionProperties x) =
[ "Type" .= ("AWS::Batch::JobDefinition" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (BatchJobQueueProperties x) =
[ "Type" .= ("AWS::Batch::JobQueue" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (BudgetsBudgetProperties x) =
[ "Type" .= ("AWS::Budgets::Budget" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CertificateManagerCertificateProperties x) =
[ "Type" .= ("AWS::CertificateManager::Certificate" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (Cloud9EnvironmentEC2Properties x) =
[ "Type" .= ("AWS::Cloud9::EnvironmentEC2" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CloudFormationCustomResourceProperties x) =
[ "Type" .= ("AWS::CloudFormation::CustomResource" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CloudFormationMacroProperties x) =
[ "Type" .= ("AWS::CloudFormation::Macro" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CloudFormationStackProperties x) =
[ "Type" .= ("AWS::CloudFormation::Stack" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CloudFormationWaitConditionProperties x) =
[ "Type" .= ("AWS::CloudFormation::WaitCondition" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CloudFormationWaitConditionHandleProperties x) =
[ "Type" .= ("AWS::CloudFormation::WaitConditionHandle" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CloudFrontCloudFrontOriginAccessIdentityProperties x) =
[ "Type" .= ("AWS::CloudFront::CloudFrontOriginAccessIdentity" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CloudFrontDistributionProperties x) =
[ "Type" .= ("AWS::CloudFront::Distribution" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CloudFrontStreamingDistributionProperties x) =
[ "Type" .= ("AWS::CloudFront::StreamingDistribution" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CloudTrailTrailProperties x) =
[ "Type" .= ("AWS::CloudTrail::Trail" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CloudWatchAlarmProperties x) =
[ "Type" .= ("AWS::CloudWatch::Alarm" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CloudWatchDashboardProperties x) =
[ "Type" .= ("AWS::CloudWatch::Dashboard" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CodeBuildProjectProperties x) =
[ "Type" .= ("AWS::CodeBuild::Project" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CodeCommitRepositoryProperties x) =
[ "Type" .= ("AWS::CodeCommit::Repository" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CodeDeployApplicationProperties x) =
[ "Type" .= ("AWS::CodeDeploy::Application" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CodeDeployDeploymentConfigProperties x) =
[ "Type" .= ("AWS::CodeDeploy::DeploymentConfig" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CodeDeployDeploymentGroupProperties x) =
[ "Type" .= ("AWS::CodeDeploy::DeploymentGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CodePipelineCustomActionTypeProperties x) =
[ "Type" .= ("AWS::CodePipeline::CustomActionType" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CodePipelinePipelineProperties x) =
[ "Type" .= ("AWS::CodePipeline::Pipeline" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CodePipelineWebhookProperties x) =
[ "Type" .= ("AWS::CodePipeline::Webhook" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CognitoIdentityPoolProperties x) =
[ "Type" .= ("AWS::Cognito::IdentityPool" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CognitoIdentityPoolRoleAttachmentProperties x) =
[ "Type" .= ("AWS::Cognito::IdentityPoolRoleAttachment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CognitoUserPoolProperties x) =
[ "Type" .= ("AWS::Cognito::UserPool" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CognitoUserPoolClientProperties x) =
[ "Type" .= ("AWS::Cognito::UserPoolClient" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CognitoUserPoolGroupProperties x) =
[ "Type" .= ("AWS::Cognito::UserPoolGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CognitoUserPoolUserProperties x) =
[ "Type" .= ("AWS::Cognito::UserPoolUser" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (CognitoUserPoolUserToGroupAttachmentProperties x) =
[ "Type" .= ("AWS::Cognito::UserPoolUserToGroupAttachment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ConfigAggregationAuthorizationProperties x) =
[ "Type" .= ("AWS::Config::AggregationAuthorization" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ConfigConfigRuleProperties x) =
[ "Type" .= ("AWS::Config::ConfigRule" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ConfigConfigurationAggregatorProperties x) =
[ "Type" .= ("AWS::Config::ConfigurationAggregator" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ConfigConfigurationRecorderProperties x) =
[ "Type" .= ("AWS::Config::ConfigurationRecorder" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ConfigDeliveryChannelProperties x) =
[ "Type" .= ("AWS::Config::DeliveryChannel" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DAXClusterProperties x) =
[ "Type" .= ("AWS::DAX::Cluster" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DAXParameterGroupProperties x) =
[ "Type" .= ("AWS::DAX::ParameterGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DAXSubnetGroupProperties x) =
[ "Type" .= ("AWS::DAX::SubnetGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DLMLifecyclePolicyProperties x) =
[ "Type" .= ("AWS::DLM::LifecyclePolicy" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DMSCertificateProperties x) =
[ "Type" .= ("AWS::DMS::Certificate" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DMSEndpointProperties x) =
[ "Type" .= ("AWS::DMS::Endpoint" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DMSEventSubscriptionProperties x) =
[ "Type" .= ("AWS::DMS::EventSubscription" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DMSReplicationInstanceProperties x) =
[ "Type" .= ("AWS::DMS::ReplicationInstance" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DMSReplicationSubnetGroupProperties x) =
[ "Type" .= ("AWS::DMS::ReplicationSubnetGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DMSReplicationTaskProperties x) =
[ "Type" .= ("AWS::DMS::ReplicationTask" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DataPipelinePipelineProperties x) =
[ "Type" .= ("AWS::DataPipeline::Pipeline" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DirectoryServiceMicrosoftADProperties x) =
[ "Type" .= ("AWS::DirectoryService::MicrosoftAD" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DirectoryServiceSimpleADProperties x) =
[ "Type" .= ("AWS::DirectoryService::SimpleAD" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DocDBDBClusterProperties x) =
[ "Type" .= ("AWS::DocDB::DBCluster" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DocDBDBClusterParameterGroupProperties x) =
[ "Type" .= ("AWS::DocDB::DBClusterParameterGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DocDBDBInstanceProperties x) =
[ "Type" .= ("AWS::DocDB::DBInstance" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DocDBDBSubnetGroupProperties x) =
[ "Type" .= ("AWS::DocDB::DBSubnetGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (DynamoDBTableProperties x) =
[ "Type" .= ("AWS::DynamoDB::Table" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2CustomerGatewayProperties x) =
[ "Type" .= ("AWS::EC2::CustomerGateway" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2DHCPOptionsProperties x) =
[ "Type" .= ("AWS::EC2::DHCPOptions" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2EC2FleetProperties x) =
[ "Type" .= ("AWS::EC2::EC2Fleet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2EIPProperties x) =
[ "Type" .= ("AWS::EC2::EIP" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2EIPAssociationProperties x) =
[ "Type" .= ("AWS::EC2::EIPAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2EgressOnlyInternetGatewayProperties x) =
[ "Type" .= ("AWS::EC2::EgressOnlyInternetGateway" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2FlowLogProperties x) =
[ "Type" .= ("AWS::EC2::FlowLog" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2HostProperties x) =
[ "Type" .= ("AWS::EC2::Host" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2InstanceProperties x) =
[ "Type" .= ("AWS::EC2::Instance" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2InternetGatewayProperties x) =
[ "Type" .= ("AWS::EC2::InternetGateway" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2LaunchTemplateProperties x) =
[ "Type" .= ("AWS::EC2::LaunchTemplate" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2NatGatewayProperties x) =
[ "Type" .= ("AWS::EC2::NatGateway" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2NetworkAclProperties x) =
[ "Type" .= ("AWS::EC2::NetworkAcl" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2NetworkAclEntryProperties x) =
[ "Type" .= ("AWS::EC2::NetworkAclEntry" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2NetworkInterfaceProperties x) =
[ "Type" .= ("AWS::EC2::NetworkInterface" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2NetworkInterfaceAttachmentProperties x) =
[ "Type" .= ("AWS::EC2::NetworkInterfaceAttachment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2NetworkInterfacePermissionProperties x) =
[ "Type" .= ("AWS::EC2::NetworkInterfacePermission" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2PlacementGroupProperties x) =
[ "Type" .= ("AWS::EC2::PlacementGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2RouteProperties x) =
[ "Type" .= ("AWS::EC2::Route" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2RouteTableProperties x) =
[ "Type" .= ("AWS::EC2::RouteTable" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2SecurityGroupProperties x) =
[ "Type" .= ("AWS::EC2::SecurityGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2SecurityGroupEgressProperties x) =
[ "Type" .= ("AWS::EC2::SecurityGroupEgress" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2SecurityGroupIngressProperties x) =
[ "Type" .= ("AWS::EC2::SecurityGroupIngress" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2SpotFleetProperties x) =
[ "Type" .= ("AWS::EC2::SpotFleet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2SubnetProperties x) =
[ "Type" .= ("AWS::EC2::Subnet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2SubnetCidrBlockProperties x) =
[ "Type" .= ("AWS::EC2::SubnetCidrBlock" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2SubnetNetworkAclAssociationProperties x) =
[ "Type" .= ("AWS::EC2::SubnetNetworkAclAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2SubnetRouteTableAssociationProperties x) =
[ "Type" .= ("AWS::EC2::SubnetRouteTableAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2TransitGatewayProperties x) =
[ "Type" .= ("AWS::EC2::TransitGateway" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2TransitGatewayAttachmentProperties x) =
[ "Type" .= ("AWS::EC2::TransitGatewayAttachment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2TransitGatewayRouteProperties x) =
[ "Type" .= ("AWS::EC2::TransitGatewayRoute" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2TransitGatewayRouteTableProperties x) =
[ "Type" .= ("AWS::EC2::TransitGatewayRouteTable" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2TransitGatewayRouteTableAssociationProperties x) =
[ "Type" .= ("AWS::EC2::TransitGatewayRouteTableAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2TransitGatewayRouteTablePropagationProperties x) =
[ "Type" .= ("AWS::EC2::TransitGatewayRouteTablePropagation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2TrunkInterfaceAssociationProperties x) =
[ "Type" .= ("AWS::EC2::TrunkInterfaceAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPCProperties x) =
[ "Type" .= ("AWS::EC2::VPC" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPCCidrBlockProperties x) =
[ "Type" .= ("AWS::EC2::VPCCidrBlock" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPCDHCPOptionsAssociationProperties x) =
[ "Type" .= ("AWS::EC2::VPCDHCPOptionsAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPCEndpointProperties x) =
[ "Type" .= ("AWS::EC2::VPCEndpoint" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPCEndpointConnectionNotificationProperties x) =
[ "Type" .= ("AWS::EC2::VPCEndpointConnectionNotification" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPCEndpointServicePermissionsProperties x) =
[ "Type" .= ("AWS::EC2::VPCEndpointServicePermissions" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPCGatewayAttachmentProperties x) =
[ "Type" .= ("AWS::EC2::VPCGatewayAttachment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPCPeeringConnectionProperties x) =
[ "Type" .= ("AWS::EC2::VPCPeeringConnection" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPNConnectionProperties x) =
[ "Type" .= ("AWS::EC2::VPNConnection" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPNConnectionRouteProperties x) =
[ "Type" .= ("AWS::EC2::VPNConnectionRoute" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPNGatewayProperties x) =
[ "Type" .= ("AWS::EC2::VPNGateway" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VPNGatewayRoutePropagationProperties x) =
[ "Type" .= ("AWS::EC2::VPNGatewayRoutePropagation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VolumeProperties x) =
[ "Type" .= ("AWS::EC2::Volume" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EC2VolumeAttachmentProperties x) =
[ "Type" .= ("AWS::EC2::VolumeAttachment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ECRRepositoryProperties x) =
[ "Type" .= ("AWS::ECR::Repository" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ECSClusterProperties x) =
[ "Type" .= ("AWS::ECS::Cluster" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ECSServiceProperties x) =
[ "Type" .= ("AWS::ECS::Service" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ECSTaskDefinitionProperties x) =
[ "Type" .= ("AWS::ECS::TaskDefinition" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EFSFileSystemProperties x) =
[ "Type" .= ("AWS::EFS::FileSystem" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EFSMountTargetProperties x) =
[ "Type" .= ("AWS::EFS::MountTarget" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EKSClusterProperties x) =
[ "Type" .= ("AWS::EKS::Cluster" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EMRClusterProperties x) =
[ "Type" .= ("AWS::EMR::Cluster" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EMRInstanceFleetConfigProperties x) =
[ "Type" .= ("AWS::EMR::InstanceFleetConfig" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EMRInstanceGroupConfigProperties x) =
[ "Type" .= ("AWS::EMR::InstanceGroupConfig" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EMRSecurityConfigurationProperties x) =
[ "Type" .= ("AWS::EMR::SecurityConfiguration" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EMRStepProperties x) =
[ "Type" .= ("AWS::EMR::Step" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElastiCacheCacheClusterProperties x) =
[ "Type" .= ("AWS::ElastiCache::CacheCluster" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElastiCacheParameterGroupProperties x) =
[ "Type" .= ("AWS::ElastiCache::ParameterGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElastiCacheReplicationGroupProperties x) =
[ "Type" .= ("AWS::ElastiCache::ReplicationGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElastiCacheSecurityGroupProperties x) =
[ "Type" .= ("AWS::ElastiCache::SecurityGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElastiCacheSecurityGroupIngressProperties x) =
[ "Type" .= ("AWS::ElastiCache::SecurityGroupIngress" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElastiCacheSubnetGroupProperties x) =
[ "Type" .= ("AWS::ElastiCache::SubnetGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElasticBeanstalkApplicationProperties x) =
[ "Type" .= ("AWS::ElasticBeanstalk::Application" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElasticBeanstalkApplicationVersionProperties x) =
[ "Type" .= ("AWS::ElasticBeanstalk::ApplicationVersion" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElasticBeanstalkConfigurationTemplateProperties x) =
[ "Type" .= ("AWS::ElasticBeanstalk::ConfigurationTemplate" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElasticBeanstalkEnvironmentProperties x) =
[ "Type" .= ("AWS::ElasticBeanstalk::Environment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElasticLoadBalancingLoadBalancerProperties x) =
[ "Type" .= ("AWS::ElasticLoadBalancing::LoadBalancer" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElasticLoadBalancingV2ListenerProperties x) =
[ "Type" .= ("AWS::ElasticLoadBalancingV2::Listener" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElasticLoadBalancingV2ListenerCertificateResourceProperties x) =
[ "Type" .= ("AWS::ElasticLoadBalancingV2::ListenerCertificate" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElasticLoadBalancingV2ListenerRuleProperties x) =
[ "Type" .= ("AWS::ElasticLoadBalancingV2::ListenerRule" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElasticLoadBalancingV2LoadBalancerProperties x) =
[ "Type" .= ("AWS::ElasticLoadBalancingV2::LoadBalancer" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElasticLoadBalancingV2TargetGroupProperties x) =
[ "Type" .= ("AWS::ElasticLoadBalancingV2::TargetGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ElasticsearchDomainProperties x) =
[ "Type" .= ("AWS::Elasticsearch::Domain" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EventsEventBusPolicyProperties x) =
[ "Type" .= ("AWS::Events::EventBusPolicy" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (EventsRuleProperties x) =
[ "Type" .= ("AWS::Events::Rule" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (FSxFileSystemProperties x) =
[ "Type" .= ("AWS::FSx::FileSystem" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GameLiftAliasProperties x) =
[ "Type" .= ("AWS::GameLift::Alias" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GameLiftBuildProperties x) =
[ "Type" .= ("AWS::GameLift::Build" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GameLiftFleetProperties x) =
[ "Type" .= ("AWS::GameLift::Fleet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GlueClassifierProperties x) =
[ "Type" .= ("AWS::Glue::Classifier" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GlueConnectionProperties x) =
[ "Type" .= ("AWS::Glue::Connection" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GlueCrawlerProperties x) =
[ "Type" .= ("AWS::Glue::Crawler" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GlueDatabaseProperties x) =
[ "Type" .= ("AWS::Glue::Database" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GlueDevEndpointProperties x) =
[ "Type" .= ("AWS::Glue::DevEndpoint" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GlueJobProperties x) =
[ "Type" .= ("AWS::Glue::Job" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GluePartitionProperties x) =
[ "Type" .= ("AWS::Glue::Partition" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GlueTableProperties x) =
[ "Type" .= ("AWS::Glue::Table" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GlueTriggerProperties x) =
[ "Type" .= ("AWS::Glue::Trigger" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GuardDutyDetectorProperties x) =
[ "Type" .= ("AWS::GuardDuty::Detector" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GuardDutyFilterProperties x) =
[ "Type" .= ("AWS::GuardDuty::Filter" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GuardDutyIPSetProperties x) =
[ "Type" .= ("AWS::GuardDuty::IPSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GuardDutyMasterProperties x) =
[ "Type" .= ("AWS::GuardDuty::Master" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GuardDutyMemberProperties x) =
[ "Type" .= ("AWS::GuardDuty::Member" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (GuardDutyThreatIntelSetProperties x) =
[ "Type" .= ("AWS::GuardDuty::ThreatIntelSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IAMAccessKeyProperties x) =
[ "Type" .= ("AWS::IAM::AccessKey" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IAMGroupProperties x) =
[ "Type" .= ("AWS::IAM::Group" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IAMInstanceProfileProperties x) =
[ "Type" .= ("AWS::IAM::InstanceProfile" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IAMManagedPolicyProperties x) =
[ "Type" .= ("AWS::IAM::ManagedPolicy" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IAMPolicyProperties x) =
[ "Type" .= ("AWS::IAM::Policy" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IAMRoleProperties x) =
[ "Type" .= ("AWS::IAM::Role" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IAMServiceLinkedRoleProperties x) =
[ "Type" .= ("AWS::IAM::ServiceLinkedRole" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IAMUserProperties x) =
[ "Type" .= ("AWS::IAM::User" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IAMUserToGroupAdditionProperties x) =
[ "Type" .= ("AWS::IAM::UserToGroupAddition" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (InspectorAssessmentTargetProperties x) =
[ "Type" .= ("AWS::Inspector::AssessmentTarget" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (InspectorAssessmentTemplateProperties x) =
[ "Type" .= ("AWS::Inspector::AssessmentTemplate" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (InspectorResourceGroupProperties x) =
[ "Type" .= ("AWS::Inspector::ResourceGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoT1ClickDeviceProperties x) =
[ "Type" .= ("AWS::IoT1Click::Device" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoT1ClickPlacementProperties x) =
[ "Type" .= ("AWS::IoT1Click::Placement" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoT1ClickProjectProperties x) =
[ "Type" .= ("AWS::IoT1Click::Project" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoTCertificateProperties x) =
[ "Type" .= ("AWS::IoT::Certificate" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoTPolicyProperties x) =
[ "Type" .= ("AWS::IoT::Policy" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoTPolicyPrincipalAttachmentProperties x) =
[ "Type" .= ("AWS::IoT::PolicyPrincipalAttachment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoTThingProperties x) =
[ "Type" .= ("AWS::IoT::Thing" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoTThingPrincipalAttachmentProperties x) =
[ "Type" .= ("AWS::IoT::ThingPrincipalAttachment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoTTopicRuleProperties x) =
[ "Type" .= ("AWS::IoT::TopicRule" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoTAnalyticsChannelProperties x) =
[ "Type" .= ("AWS::IoTAnalytics::Channel" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoTAnalyticsDatasetProperties x) =
[ "Type" .= ("AWS::IoTAnalytics::Dataset" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoTAnalyticsDatastoreProperties x) =
[ "Type" .= ("AWS::IoTAnalytics::Datastore" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (IoTAnalyticsPipelineProperties x) =
[ "Type" .= ("AWS::IoTAnalytics::Pipeline" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KMSAliasProperties x) =
[ "Type" .= ("AWS::KMS::Alias" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KMSKeyProperties x) =
[ "Type" .= ("AWS::KMS::Key" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KinesisStreamProperties x) =
[ "Type" .= ("AWS::Kinesis::Stream" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KinesisStreamConsumerProperties x) =
[ "Type" .= ("AWS::Kinesis::StreamConsumer" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KinesisAnalyticsApplicationProperties x) =
[ "Type" .= ("AWS::KinesisAnalytics::Application" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KinesisAnalyticsApplicationOutputProperties x) =
[ "Type" .= ("AWS::KinesisAnalytics::ApplicationOutput" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KinesisAnalyticsApplicationReferenceDataSourceProperties x) =
[ "Type" .= ("AWS::KinesisAnalytics::ApplicationReferenceDataSource" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KinesisAnalyticsV2ApplicationProperties x) =
[ "Type" .= ("AWS::KinesisAnalyticsV2::Application" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KinesisAnalyticsV2ApplicationCloudWatchLoggingOptionProperties x) =
[ "Type" .= ("AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KinesisAnalyticsV2ApplicationOutputProperties x) =
[ "Type" .= ("AWS::KinesisAnalyticsV2::ApplicationOutput" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KinesisAnalyticsV2ApplicationReferenceDataSourceProperties x) =
[ "Type" .= ("AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (KinesisFirehoseDeliveryStreamProperties x) =
[ "Type" .= ("AWS::KinesisFirehose::DeliveryStream" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LambdaAliasProperties x) =
[ "Type" .= ("AWS::Lambda::Alias" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LambdaEventSourceMappingProperties x) =
[ "Type" .= ("AWS::Lambda::EventSourceMapping" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LambdaFunctionProperties x) =
[ "Type" .= ("AWS::Lambda::Function" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LambdaLayerVersionProperties x) =
[ "Type" .= ("AWS::Lambda::LayerVersion" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LambdaLayerVersionPermissionProperties x) =
[ "Type" .= ("AWS::Lambda::LayerVersionPermission" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LambdaPermissionProperties x) =
[ "Type" .= ("AWS::Lambda::Permission" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LambdaVersionProperties x) =
[ "Type" .= ("AWS::Lambda::Version" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LogsDestinationProperties x) =
[ "Type" .= ("AWS::Logs::Destination" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LogsLogGroupProperties x) =
[ "Type" .= ("AWS::Logs::LogGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LogsLogStreamProperties x) =
[ "Type" .= ("AWS::Logs::LogStream" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LogsMetricFilterProperties x) =
[ "Type" .= ("AWS::Logs::MetricFilter" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (LogsSubscriptionFilterProperties x) =
[ "Type" .= ("AWS::Logs::SubscriptionFilter" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (NeptuneDBClusterProperties x) =
[ "Type" .= ("AWS::Neptune::DBCluster" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (NeptuneDBClusterParameterGroupProperties x) =
[ "Type" .= ("AWS::Neptune::DBClusterParameterGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (NeptuneDBInstanceProperties x) =
[ "Type" .= ("AWS::Neptune::DBInstance" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (NeptuneDBParameterGroupProperties x) =
[ "Type" .= ("AWS::Neptune::DBParameterGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (NeptuneDBSubnetGroupProperties x) =
[ "Type" .= ("AWS::Neptune::DBSubnetGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (OpsWorksAppProperties x) =
[ "Type" .= ("AWS::OpsWorks::App" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (OpsWorksElasticLoadBalancerAttachmentProperties x) =
[ "Type" .= ("AWS::OpsWorks::ElasticLoadBalancerAttachment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (OpsWorksInstanceProperties x) =
[ "Type" .= ("AWS::OpsWorks::Instance" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (OpsWorksLayerProperties x) =
[ "Type" .= ("AWS::OpsWorks::Layer" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (OpsWorksStackProperties x) =
[ "Type" .= ("AWS::OpsWorks::Stack" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (OpsWorksUserProfileProperties x) =
[ "Type" .= ("AWS::OpsWorks::UserProfile" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (OpsWorksVolumeProperties x) =
[ "Type" .= ("AWS::OpsWorks::Volume" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (OpsWorksCMServerProperties x) =
[ "Type" .= ("AWS::OpsWorksCM::Server" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RAMResourceShareProperties x) =
[ "Type" .= ("AWS::RAM::ResourceShare" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RDSDBClusterProperties x) =
[ "Type" .= ("AWS::RDS::DBCluster" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RDSDBClusterParameterGroupProperties x) =
[ "Type" .= ("AWS::RDS::DBClusterParameterGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RDSDBInstanceProperties x) =
[ "Type" .= ("AWS::RDS::DBInstance" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RDSDBParameterGroupProperties x) =
[ "Type" .= ("AWS::RDS::DBParameterGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RDSDBSecurityGroupProperties x) =
[ "Type" .= ("AWS::RDS::DBSecurityGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RDSDBSecurityGroupIngressProperties x) =
[ "Type" .= ("AWS::RDS::DBSecurityGroupIngress" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RDSDBSubnetGroupProperties x) =
[ "Type" .= ("AWS::RDS::DBSubnetGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RDSEventSubscriptionProperties x) =
[ "Type" .= ("AWS::RDS::EventSubscription" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RDSOptionGroupProperties x) =
[ "Type" .= ("AWS::RDS::OptionGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RedshiftClusterProperties x) =
[ "Type" .= ("AWS::Redshift::Cluster" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RedshiftClusterParameterGroupProperties x) =
[ "Type" .= ("AWS::Redshift::ClusterParameterGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RedshiftClusterSecurityGroupProperties x) =
[ "Type" .= ("AWS::Redshift::ClusterSecurityGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RedshiftClusterSecurityGroupIngressProperties x) =
[ "Type" .= ("AWS::Redshift::ClusterSecurityGroupIngress" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RedshiftClusterSubnetGroupProperties x) =
[ "Type" .= ("AWS::Redshift::ClusterSubnetGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RoboMakerFleetProperties x) =
[ "Type" .= ("AWS::RoboMaker::Fleet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RoboMakerRobotProperties x) =
[ "Type" .= ("AWS::RoboMaker::Robot" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RoboMakerRobotApplicationProperties x) =
[ "Type" .= ("AWS::RoboMaker::RobotApplication" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RoboMakerRobotApplicationVersionProperties x) =
[ "Type" .= ("AWS::RoboMaker::RobotApplicationVersion" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RoboMakerSimulationApplicationProperties x) =
[ "Type" .= ("AWS::RoboMaker::SimulationApplication" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (RoboMakerSimulationApplicationVersionProperties x) =
[ "Type" .= ("AWS::RoboMaker::SimulationApplicationVersion" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (Route53HealthCheckProperties x) =
[ "Type" .= ("AWS::Route53::HealthCheck" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (Route53HostedZoneProperties x) =
[ "Type" .= ("AWS::Route53::HostedZone" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (Route53RecordSetProperties x) =
[ "Type" .= ("AWS::Route53::RecordSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (Route53RecordSetGroupProperties x) =
[ "Type" .= ("AWS::Route53::RecordSetGroup" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (Route53ResolverResolverEndpointProperties x) =
[ "Type" .= ("AWS::Route53Resolver::ResolverEndpoint" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (Route53ResolverResolverRuleProperties x) =
[ "Type" .= ("AWS::Route53Resolver::ResolverRule" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (Route53ResolverResolverRuleAssociationProperties x) =
[ "Type" .= ("AWS::Route53Resolver::ResolverRuleAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (S3BucketProperties x) =
[ "Type" .= ("AWS::S3::Bucket" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (S3BucketPolicyProperties x) =
[ "Type" .= ("AWS::S3::BucketPolicy" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SDBDomainProperties x) =
[ "Type" .= ("AWS::SDB::Domain" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SESConfigurationSetProperties x) =
[ "Type" .= ("AWS::SES::ConfigurationSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SESConfigurationSetEventDestinationProperties x) =
[ "Type" .= ("AWS::SES::ConfigurationSetEventDestination" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SESReceiptFilterProperties x) =
[ "Type" .= ("AWS::SES::ReceiptFilter" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SESReceiptRuleProperties x) =
[ "Type" .= ("AWS::SES::ReceiptRule" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SESReceiptRuleSetProperties x) =
[ "Type" .= ("AWS::SES::ReceiptRuleSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SESTemplateProperties x) =
[ "Type" .= ("AWS::SES::Template" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SNSSubscriptionProperties x) =
[ "Type" .= ("AWS::SNS::Subscription" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SNSTopicProperties x) =
[ "Type" .= ("AWS::SNS::Topic" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SNSTopicPolicyProperties x) =
[ "Type" .= ("AWS::SNS::TopicPolicy" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SQSQueueProperties x) =
[ "Type" .= ("AWS::SQS::Queue" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SQSQueuePolicyProperties x) =
[ "Type" .= ("AWS::SQS::QueuePolicy" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SSMAssociationProperties x) =
[ "Type" .= ("AWS::SSM::Association" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SSMDocumentProperties x) =
[ "Type" .= ("AWS::SSM::Document" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SSMMaintenanceWindowProperties x) =
[ "Type" .= ("AWS::SSM::MaintenanceWindow" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SSMMaintenanceWindowTaskProperties x) =
[ "Type" .= ("AWS::SSM::MaintenanceWindowTask" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SSMParameterProperties x) =
[ "Type" .= ("AWS::SSM::Parameter" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SSMPatchBaselineProperties x) =
[ "Type" .= ("AWS::SSM::PatchBaseline" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SSMResourceDataSyncProperties x) =
[ "Type" .= ("AWS::SSM::ResourceDataSync" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SageMakerEndpointProperties x) =
[ "Type" .= ("AWS::SageMaker::Endpoint" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SageMakerEndpointConfigProperties x) =
[ "Type" .= ("AWS::SageMaker::EndpointConfig" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SageMakerModelProperties x) =
[ "Type" .= ("AWS::SageMaker::Model" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SageMakerNotebookInstanceProperties x) =
[ "Type" .= ("AWS::SageMaker::NotebookInstance" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SageMakerNotebookInstanceLifecycleConfigProperties x) =
[ "Type" .= ("AWS::SageMaker::NotebookInstanceLifecycleConfig" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SecretsManagerResourcePolicyProperties x) =
[ "Type" .= ("AWS::SecretsManager::ResourcePolicy" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SecretsManagerRotationScheduleProperties x) =
[ "Type" .= ("AWS::SecretsManager::RotationSchedule" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SecretsManagerSecretProperties x) =
[ "Type" .= ("AWS::SecretsManager::Secret" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (SecretsManagerSecretTargetAttachmentProperties x) =
[ "Type" .= ("AWS::SecretsManager::SecretTargetAttachment" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogAcceptedPortfolioShareProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::AcceptedPortfolioShare" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogCloudFormationProductProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::CloudFormationProduct" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogCloudFormationProvisionedProductProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::CloudFormationProvisionedProduct" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogLaunchNotificationConstraintProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::LaunchNotificationConstraint" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogLaunchRoleConstraintProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::LaunchRoleConstraint" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogLaunchTemplateConstraintProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::LaunchTemplateConstraint" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogPortfolioProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::Portfolio" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogPortfolioPrincipalAssociationProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::PortfolioPrincipalAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogPortfolioProductAssociationProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::PortfolioProductAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogPortfolioShareProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::PortfolioShare" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogTagOptionProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::TagOption" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceCatalogTagOptionAssociationProperties x) =
[ "Type" .= ("AWS::ServiceCatalog::TagOptionAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceDiscoveryHttpNamespaceProperties x) =
[ "Type" .= ("AWS::ServiceDiscovery::HttpNamespace" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceDiscoveryInstanceProperties x) =
[ "Type" .= ("AWS::ServiceDiscovery::Instance" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceDiscoveryPrivateDnsNamespaceProperties x) =
[ "Type" .= ("AWS::ServiceDiscovery::PrivateDnsNamespace" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceDiscoveryPublicDnsNamespaceProperties x) =
[ "Type" .= ("AWS::ServiceDiscovery::PublicDnsNamespace" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ServiceDiscoveryServiceProperties x) =
[ "Type" .= ("AWS::ServiceDiscovery::Service" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (StepFunctionsActivityProperties x) =
[ "Type" .= ("AWS::StepFunctions::Activity" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (StepFunctionsStateMachineProperties x) =
[ "Type" .= ("AWS::StepFunctions::StateMachine" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFByteMatchSetProperties x) =
[ "Type" .= ("AWS::WAF::ByteMatchSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFIPSetProperties x) =
[ "Type" .= ("AWS::WAF::IPSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFRuleProperties x) =
[ "Type" .= ("AWS::WAF::Rule" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFSizeConstraintSetProperties x) =
[ "Type" .= ("AWS::WAF::SizeConstraintSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFSqlInjectionMatchSetProperties x) =
[ "Type" .= ("AWS::WAF::SqlInjectionMatchSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFWebACLProperties x) =
[ "Type" .= ("AWS::WAF::WebACL" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFXssMatchSetProperties x) =
[ "Type" .= ("AWS::WAF::XssMatchSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFRegionalByteMatchSetProperties x) =
[ "Type" .= ("AWS::WAFRegional::ByteMatchSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFRegionalIPSetProperties x) =
[ "Type" .= ("AWS::WAFRegional::IPSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFRegionalRuleProperties x) =
[ "Type" .= ("AWS::WAFRegional::Rule" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFRegionalSizeConstraintSetProperties x) =
[ "Type" .= ("AWS::WAFRegional::SizeConstraintSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFRegionalSqlInjectionMatchSetProperties x) =
[ "Type" .= ("AWS::WAFRegional::SqlInjectionMatchSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFRegionalWebACLProperties x) =
[ "Type" .= ("AWS::WAFRegional::WebACL" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFRegionalWebACLAssociationProperties x) =
[ "Type" .= ("AWS::WAFRegional::WebACLAssociation" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WAFRegionalXssMatchSetProperties x) =
[ "Type" .= ("AWS::WAFRegional::XssMatchSet" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (WorkSpacesWorkspaceProperties x) =
[ "Type" .= ("AWS::WorkSpaces::Workspace" :: String), "Properties" .= toJSON x]
resourcePropertiesJSON (ASKSkillProperties x) =
[ "Type" .= ("Alexa::ASK::Skill" :: String), "Properties" .= toJSON x]
-- | Wrapper around a list of 'Resources's to we can modify the aeson
-- instances.
newtype Resources = Resources { unResources :: [Resource] }
deriving (Show, Eq, Semigroup, Monoid)
instance IsList Resources where
type Item Resources = Resource
fromList = Resources
toList = unResources
instance NamedItem Resource where
itemName = _resourceName
nameToJSON = resourceToJSON
instance ToJSON Resources where
toJSON = namedItemToJSON . unResources