packages feed

stratosphere-elasticsearch (empty) → 1.0.0

raw patch · 29 files changed

+1174/−0 lines, 29 filesdep +aesondep +basedep +stratosphere

Dependencies added: aeson, base, stratosphere

Files

+ LICENSE.md view
@@ -0,0 +1,20 @@+Copyright (c) 2016 David Reaver+Copyright (c) 2022 Markus Schirp++Permission is hereby granted, free of charge, to any person obtaining a copy of+this software and associated documentation files (the "Software"), to deal in+the Software without restriction, including without limitation the rights to+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies+of the Software, and to permit persons to whom the Software is furnished to do+so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.
+ gen/Stratosphere/Elasticsearch/Domain.hs view
@@ -0,0 +1,181 @@+module Stratosphere.Elasticsearch.Domain (+        module Exports, Domain(..), mkDomain+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.AdvancedSecurityOptionsInputProperty as Exports+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.CognitoOptionsProperty as Exports+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.DomainEndpointOptionsProperty as Exports+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.EBSOptionsProperty as Exports+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.ElasticsearchClusterConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.EncryptionAtRestOptionsProperty as Exports+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.LogPublishingOptionProperty as Exports+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.NodeToNodeEncryptionOptionsProperty as Exports+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.SnapshotOptionsProperty as Exports+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.VPCOptionsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data Domain+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html>+    Domain {haddock_workaround_ :: (),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-accesspolicies>+            accessPolicies :: (Prelude.Maybe JSON.Object),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-advancedoptions>+            advancedOptions :: (Prelude.Maybe (Prelude.Map Prelude.Text (Value Prelude.Text))),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-advancedsecurityoptions>+            advancedSecurityOptions :: (Prelude.Maybe AdvancedSecurityOptionsInputProperty),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-cognitooptions>+            cognitoOptions :: (Prelude.Maybe CognitoOptionsProperty),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-domainendpointoptions>+            domainEndpointOptions :: (Prelude.Maybe DomainEndpointOptionsProperty),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-domainname>+            domainName :: (Prelude.Maybe (Value Prelude.Text)),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-ebsoptions>+            eBSOptions :: (Prelude.Maybe EBSOptionsProperty),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-elasticsearchclusterconfig>+            elasticsearchClusterConfig :: (Prelude.Maybe ElasticsearchClusterConfigProperty),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-elasticsearchversion>+            elasticsearchVersion :: (Prelude.Maybe (Value Prelude.Text)),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-encryptionatrestoptions>+            encryptionAtRestOptions :: (Prelude.Maybe EncryptionAtRestOptionsProperty),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-logpublishingoptions>+            logPublishingOptions :: (Prelude.Maybe (Prelude.Map Prelude.Text LogPublishingOptionProperty)),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-nodetonodeencryptionoptions>+            nodeToNodeEncryptionOptions :: (Prelude.Maybe NodeToNodeEncryptionOptionsProperty),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-snapshotoptions>+            snapshotOptions :: (Prelude.Maybe SnapshotOptionsProperty),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-tags>+            tags :: (Prelude.Maybe [Tag]),+            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-vpcoptions>+            vPCOptions :: (Prelude.Maybe VPCOptionsProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkDomain :: Domain+mkDomain+  = Domain+      {haddock_workaround_ = (), accessPolicies = Prelude.Nothing,+       advancedOptions = Prelude.Nothing,+       advancedSecurityOptions = Prelude.Nothing,+       cognitoOptions = Prelude.Nothing,+       domainEndpointOptions = Prelude.Nothing,+       domainName = Prelude.Nothing, eBSOptions = Prelude.Nothing,+       elasticsearchClusterConfig = Prelude.Nothing,+       elasticsearchVersion = Prelude.Nothing,+       encryptionAtRestOptions = Prelude.Nothing,+       logPublishingOptions = Prelude.Nothing,+       nodeToNodeEncryptionOptions = Prelude.Nothing,+       snapshotOptions = Prelude.Nothing, tags = Prelude.Nothing,+       vPCOptions = Prelude.Nothing}+instance ToResourceProperties Domain where+  toResourceProperties Domain {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AccessPolicies" Prelude.<$> accessPolicies,+                            (JSON..=) "AdvancedOptions" Prelude.<$> advancedOptions,+                            (JSON..=) "AdvancedSecurityOptions"+                              Prelude.<$> advancedSecurityOptions,+                            (JSON..=) "CognitoOptions" Prelude.<$> cognitoOptions,+                            (JSON..=) "DomainEndpointOptions"+                              Prelude.<$> domainEndpointOptions,+                            (JSON..=) "DomainName" Prelude.<$> domainName,+                            (JSON..=) "EBSOptions" Prelude.<$> eBSOptions,+                            (JSON..=) "ElasticsearchClusterConfig"+                              Prelude.<$> elasticsearchClusterConfig,+                            (JSON..=) "ElasticsearchVersion" Prelude.<$> elasticsearchVersion,+                            (JSON..=) "EncryptionAtRestOptions"+                              Prelude.<$> encryptionAtRestOptions,+                            (JSON..=) "LogPublishingOptions" Prelude.<$> logPublishingOptions,+                            (JSON..=) "NodeToNodeEncryptionOptions"+                              Prelude.<$> nodeToNodeEncryptionOptions,+                            (JSON..=) "SnapshotOptions" Prelude.<$> snapshotOptions,+                            (JSON..=) "Tags" Prelude.<$> tags,+                            (JSON..=) "VPCOptions" Prelude.<$> vPCOptions])}+instance JSON.ToJSON Domain where+  toJSON Domain {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AccessPolicies" Prelude.<$> accessPolicies,+               (JSON..=) "AdvancedOptions" Prelude.<$> advancedOptions,+               (JSON..=) "AdvancedSecurityOptions"+                 Prelude.<$> advancedSecurityOptions,+               (JSON..=) "CognitoOptions" Prelude.<$> cognitoOptions,+               (JSON..=) "DomainEndpointOptions"+                 Prelude.<$> domainEndpointOptions,+               (JSON..=) "DomainName" Prelude.<$> domainName,+               (JSON..=) "EBSOptions" Prelude.<$> eBSOptions,+               (JSON..=) "ElasticsearchClusterConfig"+                 Prelude.<$> elasticsearchClusterConfig,+               (JSON..=) "ElasticsearchVersion" Prelude.<$> elasticsearchVersion,+               (JSON..=) "EncryptionAtRestOptions"+                 Prelude.<$> encryptionAtRestOptions,+               (JSON..=) "LogPublishingOptions" Prelude.<$> logPublishingOptions,+               (JSON..=) "NodeToNodeEncryptionOptions"+                 Prelude.<$> nodeToNodeEncryptionOptions,+               (JSON..=) "SnapshotOptions" Prelude.<$> snapshotOptions,+               (JSON..=) "Tags" Prelude.<$> tags,+               (JSON..=) "VPCOptions" Prelude.<$> vPCOptions]))+instance Property "AccessPolicies" Domain where+  type PropertyType "AccessPolicies" Domain = JSON.Object+  set newValue Domain {..}+    = Domain {accessPolicies = Prelude.pure newValue, ..}+instance Property "AdvancedOptions" Domain where+  type PropertyType "AdvancedOptions" Domain = Prelude.Map Prelude.Text (Value Prelude.Text)+  set newValue Domain {..}+    = Domain {advancedOptions = Prelude.pure newValue, ..}+instance Property "AdvancedSecurityOptions" Domain where+  type PropertyType "AdvancedSecurityOptions" Domain = AdvancedSecurityOptionsInputProperty+  set newValue Domain {..}+    = Domain {advancedSecurityOptions = Prelude.pure newValue, ..}+instance Property "CognitoOptions" Domain where+  type PropertyType "CognitoOptions" Domain = CognitoOptionsProperty+  set newValue Domain {..}+    = Domain {cognitoOptions = Prelude.pure newValue, ..}+instance Property "DomainEndpointOptions" Domain where+  type PropertyType "DomainEndpointOptions" Domain = DomainEndpointOptionsProperty+  set newValue Domain {..}+    = Domain {domainEndpointOptions = Prelude.pure newValue, ..}+instance Property "DomainName" Domain where+  type PropertyType "DomainName" Domain = Value Prelude.Text+  set newValue Domain {..}+    = Domain {domainName = Prelude.pure newValue, ..}+instance Property "EBSOptions" Domain where+  type PropertyType "EBSOptions" Domain = EBSOptionsProperty+  set newValue Domain {..}+    = Domain {eBSOptions = Prelude.pure newValue, ..}+instance Property "ElasticsearchClusterConfig" Domain where+  type PropertyType "ElasticsearchClusterConfig" Domain = ElasticsearchClusterConfigProperty+  set newValue Domain {..}+    = Domain {elasticsearchClusterConfig = Prelude.pure newValue, ..}+instance Property "ElasticsearchVersion" Domain where+  type PropertyType "ElasticsearchVersion" Domain = Value Prelude.Text+  set newValue Domain {..}+    = Domain {elasticsearchVersion = Prelude.pure newValue, ..}+instance Property "EncryptionAtRestOptions" Domain where+  type PropertyType "EncryptionAtRestOptions" Domain = EncryptionAtRestOptionsProperty+  set newValue Domain {..}+    = Domain {encryptionAtRestOptions = Prelude.pure newValue, ..}+instance Property "LogPublishingOptions" Domain where+  type PropertyType "LogPublishingOptions" Domain = Prelude.Map Prelude.Text LogPublishingOptionProperty+  set newValue Domain {..}+    = Domain {logPublishingOptions = Prelude.pure newValue, ..}+instance Property "NodeToNodeEncryptionOptions" Domain where+  type PropertyType "NodeToNodeEncryptionOptions" Domain = NodeToNodeEncryptionOptionsProperty+  set newValue Domain {..}+    = Domain {nodeToNodeEncryptionOptions = Prelude.pure newValue, ..}+instance Property "SnapshotOptions" Domain where+  type PropertyType "SnapshotOptions" Domain = SnapshotOptionsProperty+  set newValue Domain {..}+    = Domain {snapshotOptions = Prelude.pure newValue, ..}+instance Property "Tags" Domain where+  type PropertyType "Tags" Domain = [Tag]+  set newValue Domain {..}+    = Domain {tags = Prelude.pure newValue, ..}+instance Property "VPCOptions" Domain where+  type PropertyType "VPCOptions" Domain = VPCOptionsProperty+  set newValue Domain {..}+    = Domain {vPCOptions = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/AdvancedSecurityOptionsInputProperty.hs view
@@ -0,0 +1,72 @@+module Stratosphere.Elasticsearch.Domain.AdvancedSecurityOptionsInputProperty (+        module Exports, AdvancedSecurityOptionsInputProperty(..),+        mkAdvancedSecurityOptionsInputProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.MasterUserOptionsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data AdvancedSecurityOptionsInputProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html>+    AdvancedSecurityOptionsInputProperty {haddock_workaround_ :: (),+                                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html#cfn-elasticsearch-domain-advancedsecurityoptionsinput-anonymousauthenabled>+                                          anonymousAuthEnabled :: (Prelude.Maybe (Value Prelude.Bool)),+                                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html#cfn-elasticsearch-domain-advancedsecurityoptionsinput-enabled>+                                          enabled :: (Prelude.Maybe (Value Prelude.Bool)),+                                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html#cfn-elasticsearch-domain-advancedsecurityoptionsinput-internaluserdatabaseenabled>+                                          internalUserDatabaseEnabled :: (Prelude.Maybe (Value Prelude.Bool)),+                                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html#cfn-elasticsearch-domain-advancedsecurityoptionsinput-masteruseroptions>+                                          masterUserOptions :: (Prelude.Maybe MasterUserOptionsProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkAdvancedSecurityOptionsInputProperty ::+  AdvancedSecurityOptionsInputProperty+mkAdvancedSecurityOptionsInputProperty+  = AdvancedSecurityOptionsInputProperty+      {haddock_workaround_ = (), anonymousAuthEnabled = Prelude.Nothing,+       enabled = Prelude.Nothing,+       internalUserDatabaseEnabled = Prelude.Nothing,+       masterUserOptions = Prelude.Nothing}+instance ToResourceProperties AdvancedSecurityOptionsInputProperty where+  toResourceProperties AdvancedSecurityOptionsInputProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.AdvancedSecurityOptionsInput",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AnonymousAuthEnabled" Prelude.<$> anonymousAuthEnabled,+                            (JSON..=) "Enabled" Prelude.<$> enabled,+                            (JSON..=) "InternalUserDatabaseEnabled"+                              Prelude.<$> internalUserDatabaseEnabled,+                            (JSON..=) "MasterUserOptions" Prelude.<$> masterUserOptions])}+instance JSON.ToJSON AdvancedSecurityOptionsInputProperty where+  toJSON AdvancedSecurityOptionsInputProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AnonymousAuthEnabled" Prelude.<$> anonymousAuthEnabled,+               (JSON..=) "Enabled" Prelude.<$> enabled,+               (JSON..=) "InternalUserDatabaseEnabled"+                 Prelude.<$> internalUserDatabaseEnabled,+               (JSON..=) "MasterUserOptions" Prelude.<$> masterUserOptions]))+instance Property "AnonymousAuthEnabled" AdvancedSecurityOptionsInputProperty where+  type PropertyType "AnonymousAuthEnabled" AdvancedSecurityOptionsInputProperty = Value Prelude.Bool+  set newValue AdvancedSecurityOptionsInputProperty {..}+    = AdvancedSecurityOptionsInputProperty+        {anonymousAuthEnabled = Prelude.pure newValue, ..}+instance Property "Enabled" AdvancedSecurityOptionsInputProperty where+  type PropertyType "Enabled" AdvancedSecurityOptionsInputProperty = Value Prelude.Bool+  set newValue AdvancedSecurityOptionsInputProperty {..}+    = AdvancedSecurityOptionsInputProperty+        {enabled = Prelude.pure newValue, ..}+instance Property "InternalUserDatabaseEnabled" AdvancedSecurityOptionsInputProperty where+  type PropertyType "InternalUserDatabaseEnabled" AdvancedSecurityOptionsInputProperty = Value Prelude.Bool+  set newValue AdvancedSecurityOptionsInputProperty {..}+    = AdvancedSecurityOptionsInputProperty+        {internalUserDatabaseEnabled = Prelude.pure newValue, ..}+instance Property "MasterUserOptions" AdvancedSecurityOptionsInputProperty where+  type PropertyType "MasterUserOptions" AdvancedSecurityOptionsInputProperty = MasterUserOptionsProperty+  set newValue AdvancedSecurityOptionsInputProperty {..}+    = AdvancedSecurityOptionsInputProperty+        {masterUserOptions = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/AdvancedSecurityOptionsInputProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.AdvancedSecurityOptionsInputProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data AdvancedSecurityOptionsInputProperty :: Prelude.Type+instance ToResourceProperties AdvancedSecurityOptionsInputProperty+instance Prelude.Eq AdvancedSecurityOptionsInputProperty+instance Prelude.Show AdvancedSecurityOptionsInputProperty+instance JSON.ToJSON AdvancedSecurityOptionsInputProperty
+ gen/Stratosphere/Elasticsearch/Domain/CognitoOptionsProperty.hs view
@@ -0,0 +1,63 @@+module Stratosphere.Elasticsearch.Domain.CognitoOptionsProperty (+        CognitoOptionsProperty(..), mkCognitoOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CognitoOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-cognitooptions.html>+    CognitoOptionsProperty {haddock_workaround_ :: (),+                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-cognitooptions.html#cfn-elasticsearch-domain-cognitooptions-enabled>+                            enabled :: (Prelude.Maybe (Value Prelude.Bool)),+                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-cognitooptions.html#cfn-elasticsearch-domain-cognitooptions-identitypoolid>+                            identityPoolId :: (Prelude.Maybe (Value Prelude.Text)),+                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-cognitooptions.html#cfn-elasticsearch-domain-cognitooptions-rolearn>+                            roleArn :: (Prelude.Maybe (Value Prelude.Text)),+                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-cognitooptions.html#cfn-elasticsearch-domain-cognitooptions-userpoolid>+                            userPoolId :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCognitoOptionsProperty :: CognitoOptionsProperty+mkCognitoOptionsProperty+  = CognitoOptionsProperty+      {haddock_workaround_ = (), enabled = Prelude.Nothing,+       identityPoolId = Prelude.Nothing, roleArn = Prelude.Nothing,+       userPoolId = Prelude.Nothing}+instance ToResourceProperties CognitoOptionsProperty where+  toResourceProperties CognitoOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.CognitoOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Enabled" Prelude.<$> enabled,+                            (JSON..=) "IdentityPoolId" Prelude.<$> identityPoolId,+                            (JSON..=) "RoleArn" Prelude.<$> roleArn,+                            (JSON..=) "UserPoolId" Prelude.<$> userPoolId])}+instance JSON.ToJSON CognitoOptionsProperty where+  toJSON CognitoOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Enabled" Prelude.<$> enabled,+               (JSON..=) "IdentityPoolId" Prelude.<$> identityPoolId,+               (JSON..=) "RoleArn" Prelude.<$> roleArn,+               (JSON..=) "UserPoolId" Prelude.<$> userPoolId]))+instance Property "Enabled" CognitoOptionsProperty where+  type PropertyType "Enabled" CognitoOptionsProperty = Value Prelude.Bool+  set newValue CognitoOptionsProperty {..}+    = CognitoOptionsProperty {enabled = Prelude.pure newValue, ..}+instance Property "IdentityPoolId" CognitoOptionsProperty where+  type PropertyType "IdentityPoolId" CognitoOptionsProperty = Value Prelude.Text+  set newValue CognitoOptionsProperty {..}+    = CognitoOptionsProperty+        {identityPoolId = Prelude.pure newValue, ..}+instance Property "RoleArn" CognitoOptionsProperty where+  type PropertyType "RoleArn" CognitoOptionsProperty = Value Prelude.Text+  set newValue CognitoOptionsProperty {..}+    = CognitoOptionsProperty {roleArn = Prelude.pure newValue, ..}+instance Property "UserPoolId" CognitoOptionsProperty where+  type PropertyType "UserPoolId" CognitoOptionsProperty = Value Prelude.Text+  set newValue CognitoOptionsProperty {..}+    = CognitoOptionsProperty {userPoolId = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/CognitoOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.CognitoOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CognitoOptionsProperty :: Prelude.Type+instance ToResourceProperties CognitoOptionsProperty+instance Prelude.Eq CognitoOptionsProperty+instance Prelude.Show CognitoOptionsProperty+instance JSON.ToJSON CognitoOptionsProperty
+ gen/Stratosphere/Elasticsearch/Domain/ColdStorageOptionsProperty.hs view
@@ -0,0 +1,34 @@+module Stratosphere.Elasticsearch.Domain.ColdStorageOptionsProperty (+        ColdStorageOptionsProperty(..), mkColdStorageOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ColdStorageOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-coldstorageoptions.html>+    ColdStorageOptionsProperty {haddock_workaround_ :: (),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-coldstorageoptions.html#cfn-elasticsearch-domain-coldstorageoptions-enabled>+                                enabled :: (Prelude.Maybe (Value Prelude.Bool))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkColdStorageOptionsProperty :: ColdStorageOptionsProperty+mkColdStorageOptionsProperty+  = ColdStorageOptionsProperty+      {haddock_workaround_ = (), enabled = Prelude.Nothing}+instance ToResourceProperties ColdStorageOptionsProperty where+  toResourceProperties ColdStorageOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.ColdStorageOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes [(JSON..=) "Enabled" Prelude.<$> enabled])}+instance JSON.ToJSON ColdStorageOptionsProperty where+  toJSON ColdStorageOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes [(JSON..=) "Enabled" Prelude.<$> enabled]))+instance Property "Enabled" ColdStorageOptionsProperty where+  type PropertyType "Enabled" ColdStorageOptionsProperty = Value Prelude.Bool+  set newValue ColdStorageOptionsProperty {..}+    = ColdStorageOptionsProperty {enabled = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/ColdStorageOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.ColdStorageOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ColdStorageOptionsProperty :: Prelude.Type+instance ToResourceProperties ColdStorageOptionsProperty+instance Prelude.Eq ColdStorageOptionsProperty+instance Prelude.Show ColdStorageOptionsProperty+instance JSON.ToJSON ColdStorageOptionsProperty
+ gen/Stratosphere/Elasticsearch/Domain/DomainEndpointOptionsProperty.hs view
@@ -0,0 +1,81 @@+module Stratosphere.Elasticsearch.Domain.DomainEndpointOptionsProperty (+        DomainEndpointOptionsProperty(..), mkDomainEndpointOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data DomainEndpointOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html>+    DomainEndpointOptionsProperty {haddock_workaround_ :: (),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-customendpoint>+                                   customEndpoint :: (Prelude.Maybe (Value Prelude.Text)),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-customendpointcertificatearn>+                                   customEndpointCertificateArn :: (Prelude.Maybe (Value Prelude.Text)),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-customendpointenabled>+                                   customEndpointEnabled :: (Prelude.Maybe (Value Prelude.Bool)),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-enforcehttps>+                                   enforceHTTPS :: (Prelude.Maybe (Value Prelude.Bool)),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-tlssecuritypolicy>+                                   tLSSecurityPolicy :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkDomainEndpointOptionsProperty :: DomainEndpointOptionsProperty+mkDomainEndpointOptionsProperty+  = DomainEndpointOptionsProperty+      {haddock_workaround_ = (), customEndpoint = Prelude.Nothing,+       customEndpointCertificateArn = Prelude.Nothing,+       customEndpointEnabled = Prelude.Nothing,+       enforceHTTPS = Prelude.Nothing,+       tLSSecurityPolicy = Prelude.Nothing}+instance ToResourceProperties DomainEndpointOptionsProperty where+  toResourceProperties DomainEndpointOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.DomainEndpointOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "CustomEndpoint" Prelude.<$> customEndpoint,+                            (JSON..=) "CustomEndpointCertificateArn"+                              Prelude.<$> customEndpointCertificateArn,+                            (JSON..=) "CustomEndpointEnabled"+                              Prelude.<$> customEndpointEnabled,+                            (JSON..=) "EnforceHTTPS" Prelude.<$> enforceHTTPS,+                            (JSON..=) "TLSSecurityPolicy" Prelude.<$> tLSSecurityPolicy])}+instance JSON.ToJSON DomainEndpointOptionsProperty where+  toJSON DomainEndpointOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "CustomEndpoint" Prelude.<$> customEndpoint,+               (JSON..=) "CustomEndpointCertificateArn"+                 Prelude.<$> customEndpointCertificateArn,+               (JSON..=) "CustomEndpointEnabled"+                 Prelude.<$> customEndpointEnabled,+               (JSON..=) "EnforceHTTPS" Prelude.<$> enforceHTTPS,+               (JSON..=) "TLSSecurityPolicy" Prelude.<$> tLSSecurityPolicy]))+instance Property "CustomEndpoint" DomainEndpointOptionsProperty where+  type PropertyType "CustomEndpoint" DomainEndpointOptionsProperty = Value Prelude.Text+  set newValue DomainEndpointOptionsProperty {..}+    = DomainEndpointOptionsProperty+        {customEndpoint = Prelude.pure newValue, ..}+instance Property "CustomEndpointCertificateArn" DomainEndpointOptionsProperty where+  type PropertyType "CustomEndpointCertificateArn" DomainEndpointOptionsProperty = Value Prelude.Text+  set newValue DomainEndpointOptionsProperty {..}+    = DomainEndpointOptionsProperty+        {customEndpointCertificateArn = Prelude.pure newValue, ..}+instance Property "CustomEndpointEnabled" DomainEndpointOptionsProperty where+  type PropertyType "CustomEndpointEnabled" DomainEndpointOptionsProperty = Value Prelude.Bool+  set newValue DomainEndpointOptionsProperty {..}+    = DomainEndpointOptionsProperty+        {customEndpointEnabled = Prelude.pure newValue, ..}+instance Property "EnforceHTTPS" DomainEndpointOptionsProperty where+  type PropertyType "EnforceHTTPS" DomainEndpointOptionsProperty = Value Prelude.Bool+  set newValue DomainEndpointOptionsProperty {..}+    = DomainEndpointOptionsProperty+        {enforceHTTPS = Prelude.pure newValue, ..}+instance Property "TLSSecurityPolicy" DomainEndpointOptionsProperty where+  type PropertyType "TLSSecurityPolicy" DomainEndpointOptionsProperty = Value Prelude.Text+  set newValue DomainEndpointOptionsProperty {..}+    = DomainEndpointOptionsProperty+        {tLSSecurityPolicy = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/DomainEndpointOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.DomainEndpointOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data DomainEndpointOptionsProperty :: Prelude.Type+instance ToResourceProperties DomainEndpointOptionsProperty+instance Prelude.Eq DomainEndpointOptionsProperty+instance Prelude.Show DomainEndpointOptionsProperty+instance JSON.ToJSON DomainEndpointOptionsProperty
+ gen/Stratosphere/Elasticsearch/Domain/EBSOptionsProperty.hs view
@@ -0,0 +1,62 @@+module Stratosphere.Elasticsearch.Domain.EBSOptionsProperty (+        EBSOptionsProperty(..), mkEBSOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EBSOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html>+    EBSOptionsProperty {haddock_workaround_ :: (),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-ebsenabled>+                        eBSEnabled :: (Prelude.Maybe (Value Prelude.Bool)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-iops>+                        iops :: (Prelude.Maybe (Value Prelude.Integer)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-volumesize>+                        volumeSize :: (Prelude.Maybe (Value Prelude.Integer)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-volumetype>+                        volumeType :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEBSOptionsProperty :: EBSOptionsProperty+mkEBSOptionsProperty+  = EBSOptionsProperty+      {haddock_workaround_ = (), eBSEnabled = Prelude.Nothing,+       iops = Prelude.Nothing, volumeSize = Prelude.Nothing,+       volumeType = Prelude.Nothing}+instance ToResourceProperties EBSOptionsProperty where+  toResourceProperties EBSOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.EBSOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "EBSEnabled" Prelude.<$> eBSEnabled,+                            (JSON..=) "Iops" Prelude.<$> iops,+                            (JSON..=) "VolumeSize" Prelude.<$> volumeSize,+                            (JSON..=) "VolumeType" Prelude.<$> volumeType])}+instance JSON.ToJSON EBSOptionsProperty where+  toJSON EBSOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "EBSEnabled" Prelude.<$> eBSEnabled,+               (JSON..=) "Iops" Prelude.<$> iops,+               (JSON..=) "VolumeSize" Prelude.<$> volumeSize,+               (JSON..=) "VolumeType" Prelude.<$> volumeType]))+instance Property "EBSEnabled" EBSOptionsProperty where+  type PropertyType "EBSEnabled" EBSOptionsProperty = Value Prelude.Bool+  set newValue EBSOptionsProperty {..}+    = EBSOptionsProperty {eBSEnabled = Prelude.pure newValue, ..}+instance Property "Iops" EBSOptionsProperty where+  type PropertyType "Iops" EBSOptionsProperty = Value Prelude.Integer+  set newValue EBSOptionsProperty {..}+    = EBSOptionsProperty {iops = Prelude.pure newValue, ..}+instance Property "VolumeSize" EBSOptionsProperty where+  type PropertyType "VolumeSize" EBSOptionsProperty = Value Prelude.Integer+  set newValue EBSOptionsProperty {..}+    = EBSOptionsProperty {volumeSize = Prelude.pure newValue, ..}+instance Property "VolumeType" EBSOptionsProperty where+  type PropertyType "VolumeType" EBSOptionsProperty = Value Prelude.Text+  set newValue EBSOptionsProperty {..}+    = EBSOptionsProperty {volumeType = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/EBSOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.EBSOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EBSOptionsProperty :: Prelude.Type+instance ToResourceProperties EBSOptionsProperty+instance Prelude.Eq EBSOptionsProperty+instance Prelude.Show EBSOptionsProperty+instance JSON.ToJSON EBSOptionsProperty
+ gen/Stratosphere/Elasticsearch/Domain/ElasticsearchClusterConfigProperty.hs view
@@ -0,0 +1,142 @@+module Stratosphere.Elasticsearch.Domain.ElasticsearchClusterConfigProperty (+        module Exports, ElasticsearchClusterConfigProperty(..),+        mkElasticsearchClusterConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.ColdStorageOptionsProperty as Exports+import {-# SOURCE #-} Stratosphere.Elasticsearch.Domain.ZoneAwarenessConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ElasticsearchClusterConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html>+    ElasticsearchClusterConfigProperty {haddock_workaround_ :: (),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticsearchclusterconfig-coldstorageoptions>+                                        coldStorageOptions :: (Prelude.Maybe ColdStorageOptionsProperty),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmastercount>+                                        dedicatedMasterCount :: (Prelude.Maybe (Value Prelude.Integer)),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmasterenabled>+                                        dedicatedMasterEnabled :: (Prelude.Maybe (Value Prelude.Bool)),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmastertype>+                                        dedicatedMasterType :: (Prelude.Maybe (Value Prelude.Text)),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-instancecount>+                                        instanceCount :: (Prelude.Maybe (Value Prelude.Integer)),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-instnacetype>+                                        instanceType :: (Prelude.Maybe (Value Prelude.Text)),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticsearchclusterconfig-warmcount>+                                        warmCount :: (Prelude.Maybe (Value Prelude.Integer)),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticsearchclusterconfig-warmenabled>+                                        warmEnabled :: (Prelude.Maybe (Value Prelude.Bool)),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticsearchclusterconfig-warmtype>+                                        warmType :: (Prelude.Maybe (Value Prelude.Text)),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticsearchclusterconfig-zoneawarenessconfig>+                                        zoneAwarenessConfig :: (Prelude.Maybe ZoneAwarenessConfigProperty),+                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-zoneawarenessenabled>+                                        zoneAwarenessEnabled :: (Prelude.Maybe (Value Prelude.Bool))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkElasticsearchClusterConfigProperty ::+  ElasticsearchClusterConfigProperty+mkElasticsearchClusterConfigProperty+  = ElasticsearchClusterConfigProperty+      {haddock_workaround_ = (), coldStorageOptions = Prelude.Nothing,+       dedicatedMasterCount = Prelude.Nothing,+       dedicatedMasterEnabled = Prelude.Nothing,+       dedicatedMasterType = Prelude.Nothing,+       instanceCount = Prelude.Nothing, instanceType = Prelude.Nothing,+       warmCount = Prelude.Nothing, warmEnabled = Prelude.Nothing,+       warmType = Prelude.Nothing, zoneAwarenessConfig = Prelude.Nothing,+       zoneAwarenessEnabled = Prelude.Nothing}+instance ToResourceProperties ElasticsearchClusterConfigProperty where+  toResourceProperties ElasticsearchClusterConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.ElasticsearchClusterConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "ColdStorageOptions" Prelude.<$> coldStorageOptions,+                            (JSON..=) "DedicatedMasterCount" Prelude.<$> dedicatedMasterCount,+                            (JSON..=) "DedicatedMasterEnabled"+                              Prelude.<$> dedicatedMasterEnabled,+                            (JSON..=) "DedicatedMasterType" Prelude.<$> dedicatedMasterType,+                            (JSON..=) "InstanceCount" Prelude.<$> instanceCount,+                            (JSON..=) "InstanceType" Prelude.<$> instanceType,+                            (JSON..=) "WarmCount" Prelude.<$> warmCount,+                            (JSON..=) "WarmEnabled" Prelude.<$> warmEnabled,+                            (JSON..=) "WarmType" Prelude.<$> warmType,+                            (JSON..=) "ZoneAwarenessConfig" Prelude.<$> zoneAwarenessConfig,+                            (JSON..=) "ZoneAwarenessEnabled"+                              Prelude.<$> zoneAwarenessEnabled])}+instance JSON.ToJSON ElasticsearchClusterConfigProperty where+  toJSON ElasticsearchClusterConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "ColdStorageOptions" Prelude.<$> coldStorageOptions,+               (JSON..=) "DedicatedMasterCount" Prelude.<$> dedicatedMasterCount,+               (JSON..=) "DedicatedMasterEnabled"+                 Prelude.<$> dedicatedMasterEnabled,+               (JSON..=) "DedicatedMasterType" Prelude.<$> dedicatedMasterType,+               (JSON..=) "InstanceCount" Prelude.<$> instanceCount,+               (JSON..=) "InstanceType" Prelude.<$> instanceType,+               (JSON..=) "WarmCount" Prelude.<$> warmCount,+               (JSON..=) "WarmEnabled" Prelude.<$> warmEnabled,+               (JSON..=) "WarmType" Prelude.<$> warmType,+               (JSON..=) "ZoneAwarenessConfig" Prelude.<$> zoneAwarenessConfig,+               (JSON..=) "ZoneAwarenessEnabled"+                 Prelude.<$> zoneAwarenessEnabled]))+instance Property "ColdStorageOptions" ElasticsearchClusterConfigProperty where+  type PropertyType "ColdStorageOptions" ElasticsearchClusterConfigProperty = ColdStorageOptionsProperty+  set newValue ElasticsearchClusterConfigProperty {..}+    = ElasticsearchClusterConfigProperty+        {coldStorageOptions = Prelude.pure newValue, ..}+instance Property "DedicatedMasterCount" ElasticsearchClusterConfigProperty where+  type PropertyType "DedicatedMasterCount" ElasticsearchClusterConfigProperty = Value Prelude.Integer+  set newValue ElasticsearchClusterConfigProperty {..}+    = ElasticsearchClusterConfigProperty+        {dedicatedMasterCount = Prelude.pure newValue, ..}+instance Property "DedicatedMasterEnabled" ElasticsearchClusterConfigProperty where+  type PropertyType "DedicatedMasterEnabled" ElasticsearchClusterConfigProperty = Value Prelude.Bool+  set newValue ElasticsearchClusterConfigProperty {..}+    = ElasticsearchClusterConfigProperty+        {dedicatedMasterEnabled = Prelude.pure newValue, ..}+instance Property "DedicatedMasterType" ElasticsearchClusterConfigProperty where+  type PropertyType "DedicatedMasterType" ElasticsearchClusterConfigProperty = Value Prelude.Text+  set newValue ElasticsearchClusterConfigProperty {..}+    = ElasticsearchClusterConfigProperty+        {dedicatedMasterType = Prelude.pure newValue, ..}+instance Property "InstanceCount" ElasticsearchClusterConfigProperty where+  type PropertyType "InstanceCount" ElasticsearchClusterConfigProperty = Value Prelude.Integer+  set newValue ElasticsearchClusterConfigProperty {..}+    = ElasticsearchClusterConfigProperty+        {instanceCount = Prelude.pure newValue, ..}+instance Property "InstanceType" ElasticsearchClusterConfigProperty where+  type PropertyType "InstanceType" ElasticsearchClusterConfigProperty = Value Prelude.Text+  set newValue ElasticsearchClusterConfigProperty {..}+    = ElasticsearchClusterConfigProperty+        {instanceType = Prelude.pure newValue, ..}+instance Property "WarmCount" ElasticsearchClusterConfigProperty where+  type PropertyType "WarmCount" ElasticsearchClusterConfigProperty = Value Prelude.Integer+  set newValue ElasticsearchClusterConfigProperty {..}+    = ElasticsearchClusterConfigProperty+        {warmCount = Prelude.pure newValue, ..}+instance Property "WarmEnabled" ElasticsearchClusterConfigProperty where+  type PropertyType "WarmEnabled" ElasticsearchClusterConfigProperty = Value Prelude.Bool+  set newValue ElasticsearchClusterConfigProperty {..}+    = ElasticsearchClusterConfigProperty+        {warmEnabled = Prelude.pure newValue, ..}+instance Property "WarmType" ElasticsearchClusterConfigProperty where+  type PropertyType "WarmType" ElasticsearchClusterConfigProperty = Value Prelude.Text+  set newValue ElasticsearchClusterConfigProperty {..}+    = ElasticsearchClusterConfigProperty+        {warmType = Prelude.pure newValue, ..}+instance Property "ZoneAwarenessConfig" ElasticsearchClusterConfigProperty where+  type PropertyType "ZoneAwarenessConfig" ElasticsearchClusterConfigProperty = ZoneAwarenessConfigProperty+  set newValue ElasticsearchClusterConfigProperty {..}+    = ElasticsearchClusterConfigProperty+        {zoneAwarenessConfig = Prelude.pure newValue, ..}+instance Property "ZoneAwarenessEnabled" ElasticsearchClusterConfigProperty where+  type PropertyType "ZoneAwarenessEnabled" ElasticsearchClusterConfigProperty = Value Prelude.Bool+  set newValue ElasticsearchClusterConfigProperty {..}+    = ElasticsearchClusterConfigProperty+        {zoneAwarenessEnabled = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/ElasticsearchClusterConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.ElasticsearchClusterConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ElasticsearchClusterConfigProperty :: Prelude.Type+instance ToResourceProperties ElasticsearchClusterConfigProperty+instance Prelude.Eq ElasticsearchClusterConfigProperty+instance Prelude.Show ElasticsearchClusterConfigProperty+instance JSON.ToJSON ElasticsearchClusterConfigProperty
+ gen/Stratosphere/Elasticsearch/Domain/EncryptionAtRestOptionsProperty.hs view
@@ -0,0 +1,49 @@+module Stratosphere.Elasticsearch.Domain.EncryptionAtRestOptionsProperty (+        EncryptionAtRestOptionsProperty(..),+        mkEncryptionAtRestOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EncryptionAtRestOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html>+    EncryptionAtRestOptionsProperty {haddock_workaround_ :: (),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html#cfn-elasticsearch-domain-encryptionatrestoptions-enabled>+                                     enabled :: (Prelude.Maybe (Value Prelude.Bool)),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-encryptionatrestoptions.html#cfn-elasticsearch-domain-encryptionatrestoptions-kmskeyid>+                                     kmsKeyId :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEncryptionAtRestOptionsProperty ::+  EncryptionAtRestOptionsProperty+mkEncryptionAtRestOptionsProperty+  = EncryptionAtRestOptionsProperty+      {haddock_workaround_ = (), enabled = Prelude.Nothing,+       kmsKeyId = Prelude.Nothing}+instance ToResourceProperties EncryptionAtRestOptionsProperty where+  toResourceProperties EncryptionAtRestOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.EncryptionAtRestOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Enabled" Prelude.<$> enabled,+                            (JSON..=) "KmsKeyId" Prelude.<$> kmsKeyId])}+instance JSON.ToJSON EncryptionAtRestOptionsProperty where+  toJSON EncryptionAtRestOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Enabled" Prelude.<$> enabled,+               (JSON..=) "KmsKeyId" Prelude.<$> kmsKeyId]))+instance Property "Enabled" EncryptionAtRestOptionsProperty where+  type PropertyType "Enabled" EncryptionAtRestOptionsProperty = Value Prelude.Bool+  set newValue EncryptionAtRestOptionsProperty {..}+    = EncryptionAtRestOptionsProperty+        {enabled = Prelude.pure newValue, ..}+instance Property "KmsKeyId" EncryptionAtRestOptionsProperty where+  type PropertyType "KmsKeyId" EncryptionAtRestOptionsProperty = Value Prelude.Text+  set newValue EncryptionAtRestOptionsProperty {..}+    = EncryptionAtRestOptionsProperty+        {kmsKeyId = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/EncryptionAtRestOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.EncryptionAtRestOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EncryptionAtRestOptionsProperty :: Prelude.Type+instance ToResourceProperties EncryptionAtRestOptionsProperty+instance Prelude.Eq EncryptionAtRestOptionsProperty+instance Prelude.Show EncryptionAtRestOptionsProperty+instance JSON.ToJSON EncryptionAtRestOptionsProperty
+ gen/Stratosphere/Elasticsearch/Domain/LogPublishingOptionProperty.hs view
@@ -0,0 +1,49 @@+module Stratosphere.Elasticsearch.Domain.LogPublishingOptionProperty (+        LogPublishingOptionProperty(..), mkLogPublishingOptionProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data LogPublishingOptionProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-logpublishingoption.html>+    LogPublishingOptionProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-logpublishingoption.html#cfn-elasticsearch-domain-logpublishingoption-cloudwatchlogsloggrouparn>+                                 cloudWatchLogsLogGroupArn :: (Prelude.Maybe (Value Prelude.Text)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-logpublishingoption.html#cfn-elasticsearch-domain-logpublishingoption-enabled>+                                 enabled :: (Prelude.Maybe (Value Prelude.Bool))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLogPublishingOptionProperty :: LogPublishingOptionProperty+mkLogPublishingOptionProperty+  = LogPublishingOptionProperty+      {haddock_workaround_ = (),+       cloudWatchLogsLogGroupArn = Prelude.Nothing,+       enabled = Prelude.Nothing}+instance ToResourceProperties LogPublishingOptionProperty where+  toResourceProperties LogPublishingOptionProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.LogPublishingOption",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "CloudWatchLogsLogGroupArn"+                              Prelude.<$> cloudWatchLogsLogGroupArn,+                            (JSON..=) "Enabled" Prelude.<$> enabled])}+instance JSON.ToJSON LogPublishingOptionProperty where+  toJSON LogPublishingOptionProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "CloudWatchLogsLogGroupArn"+                 Prelude.<$> cloudWatchLogsLogGroupArn,+               (JSON..=) "Enabled" Prelude.<$> enabled]))+instance Property "CloudWatchLogsLogGroupArn" LogPublishingOptionProperty where+  type PropertyType "CloudWatchLogsLogGroupArn" LogPublishingOptionProperty = Value Prelude.Text+  set newValue LogPublishingOptionProperty {..}+    = LogPublishingOptionProperty+        {cloudWatchLogsLogGroupArn = Prelude.pure newValue, ..}+instance Property "Enabled" LogPublishingOptionProperty where+  type PropertyType "Enabled" LogPublishingOptionProperty = Value Prelude.Bool+  set newValue LogPublishingOptionProperty {..}+    = LogPublishingOptionProperty {enabled = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/LogPublishingOptionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.LogPublishingOptionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data LogPublishingOptionProperty :: Prelude.Type+instance ToResourceProperties LogPublishingOptionProperty+instance Prelude.Eq LogPublishingOptionProperty+instance Prelude.Show LogPublishingOptionProperty+instance JSON.ToJSON LogPublishingOptionProperty
+ gen/Stratosphere/Elasticsearch/Domain/MasterUserOptionsProperty.hs view
@@ -0,0 +1,57 @@+module Stratosphere.Elasticsearch.Domain.MasterUserOptionsProperty (+        MasterUserOptionsProperty(..), mkMasterUserOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data MasterUserOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html>+    MasterUserOptionsProperty {haddock_workaround_ :: (),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html#cfn-elasticsearch-domain-masteruseroptions-masteruserarn>+                               masterUserARN :: (Prelude.Maybe (Value Prelude.Text)),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html#cfn-elasticsearch-domain-masteruseroptions-masterusername>+                               masterUserName :: (Prelude.Maybe (Value Prelude.Text)),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html#cfn-elasticsearch-domain-masteruseroptions-masteruserpassword>+                               masterUserPassword :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkMasterUserOptionsProperty :: MasterUserOptionsProperty+mkMasterUserOptionsProperty+  = MasterUserOptionsProperty+      {haddock_workaround_ = (), masterUserARN = Prelude.Nothing,+       masterUserName = Prelude.Nothing,+       masterUserPassword = Prelude.Nothing}+instance ToResourceProperties MasterUserOptionsProperty where+  toResourceProperties MasterUserOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.MasterUserOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "MasterUserARN" Prelude.<$> masterUserARN,+                            (JSON..=) "MasterUserName" Prelude.<$> masterUserName,+                            (JSON..=) "MasterUserPassword" Prelude.<$> masterUserPassword])}+instance JSON.ToJSON MasterUserOptionsProperty where+  toJSON MasterUserOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "MasterUserARN" Prelude.<$> masterUserARN,+               (JSON..=) "MasterUserName" Prelude.<$> masterUserName,+               (JSON..=) "MasterUserPassword" Prelude.<$> masterUserPassword]))+instance Property "MasterUserARN" MasterUserOptionsProperty where+  type PropertyType "MasterUserARN" MasterUserOptionsProperty = Value Prelude.Text+  set newValue MasterUserOptionsProperty {..}+    = MasterUserOptionsProperty+        {masterUserARN = Prelude.pure newValue, ..}+instance Property "MasterUserName" MasterUserOptionsProperty where+  type PropertyType "MasterUserName" MasterUserOptionsProperty = Value Prelude.Text+  set newValue MasterUserOptionsProperty {..}+    = MasterUserOptionsProperty+        {masterUserName = Prelude.pure newValue, ..}+instance Property "MasterUserPassword" MasterUserOptionsProperty where+  type PropertyType "MasterUserPassword" MasterUserOptionsProperty = Value Prelude.Text+  set newValue MasterUserOptionsProperty {..}+    = MasterUserOptionsProperty+        {masterUserPassword = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/MasterUserOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.MasterUserOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data MasterUserOptionsProperty :: Prelude.Type+instance ToResourceProperties MasterUserOptionsProperty+instance Prelude.Eq MasterUserOptionsProperty+instance Prelude.Show MasterUserOptionsProperty+instance JSON.ToJSON MasterUserOptionsProperty
+ gen/Stratosphere/Elasticsearch/Domain/NodeToNodeEncryptionOptionsProperty.hs view
@@ -0,0 +1,37 @@+module Stratosphere.Elasticsearch.Domain.NodeToNodeEncryptionOptionsProperty (+        NodeToNodeEncryptionOptionsProperty(..),+        mkNodeToNodeEncryptionOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data NodeToNodeEncryptionOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-nodetonodeencryptionoptions.html>+    NodeToNodeEncryptionOptionsProperty {haddock_workaround_ :: (),+                                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-nodetonodeencryptionoptions.html#cfn-elasticsearch-domain-nodetonodeencryptionoptions-enabled>+                                         enabled :: (Prelude.Maybe (Value Prelude.Bool))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkNodeToNodeEncryptionOptionsProperty ::+  NodeToNodeEncryptionOptionsProperty+mkNodeToNodeEncryptionOptionsProperty+  = NodeToNodeEncryptionOptionsProperty+      {haddock_workaround_ = (), enabled = Prelude.Nothing}+instance ToResourceProperties NodeToNodeEncryptionOptionsProperty where+  toResourceProperties NodeToNodeEncryptionOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.NodeToNodeEncryptionOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes [(JSON..=) "Enabled" Prelude.<$> enabled])}+instance JSON.ToJSON NodeToNodeEncryptionOptionsProperty where+  toJSON NodeToNodeEncryptionOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes [(JSON..=) "Enabled" Prelude.<$> enabled]))+instance Property "Enabled" NodeToNodeEncryptionOptionsProperty where+  type PropertyType "Enabled" NodeToNodeEncryptionOptionsProperty = Value Prelude.Bool+  set newValue NodeToNodeEncryptionOptionsProperty {..}+    = NodeToNodeEncryptionOptionsProperty+        {enabled = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/NodeToNodeEncryptionOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.NodeToNodeEncryptionOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data NodeToNodeEncryptionOptionsProperty :: Prelude.Type+instance ToResourceProperties NodeToNodeEncryptionOptionsProperty+instance Prelude.Eq NodeToNodeEncryptionOptionsProperty+instance Prelude.Show NodeToNodeEncryptionOptionsProperty+instance JSON.ToJSON NodeToNodeEncryptionOptionsProperty
+ gen/Stratosphere/Elasticsearch/Domain/SnapshotOptionsProperty.hs view
@@ -0,0 +1,40 @@+module Stratosphere.Elasticsearch.Domain.SnapshotOptionsProperty (+        SnapshotOptionsProperty(..), mkSnapshotOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SnapshotOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html>+    SnapshotOptionsProperty {haddock_workaround_ :: (),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html#cfn-elasticsearch-domain-snapshotoptions-automatedsnapshotstarthour>+                             automatedSnapshotStartHour :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSnapshotOptionsProperty :: SnapshotOptionsProperty+mkSnapshotOptionsProperty+  = SnapshotOptionsProperty+      {haddock_workaround_ = (),+       automatedSnapshotStartHour = Prelude.Nothing}+instance ToResourceProperties SnapshotOptionsProperty where+  toResourceProperties SnapshotOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.SnapshotOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AutomatedSnapshotStartHour"+                              Prelude.<$> automatedSnapshotStartHour])}+instance JSON.ToJSON SnapshotOptionsProperty where+  toJSON SnapshotOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AutomatedSnapshotStartHour"+                 Prelude.<$> automatedSnapshotStartHour]))+instance Property "AutomatedSnapshotStartHour" SnapshotOptionsProperty where+  type PropertyType "AutomatedSnapshotStartHour" SnapshotOptionsProperty = Value Prelude.Integer+  set newValue SnapshotOptionsProperty {..}+    = SnapshotOptionsProperty+        {automatedSnapshotStartHour = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/SnapshotOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.SnapshotOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SnapshotOptionsProperty :: Prelude.Type+instance ToResourceProperties SnapshotOptionsProperty+instance Prelude.Eq SnapshotOptionsProperty+instance Prelude.Show SnapshotOptionsProperty+instance JSON.ToJSON SnapshotOptionsProperty
+ gen/Stratosphere/Elasticsearch/Domain/VPCOptionsProperty.hs view
@@ -0,0 +1,45 @@+module Stratosphere.Elasticsearch.Domain.VPCOptionsProperty (+        VPCOptionsProperty(..), mkVPCOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data VPCOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html>+    VPCOptionsProperty {haddock_workaround_ :: (),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html#cfn-elasticsearch-domain-vpcoptions-securitygroupids>+                        securityGroupIds :: (Prelude.Maybe (ValueList Prelude.Text)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-vpcoptions.html#cfn-elasticsearch-domain-vpcoptions-subnetids>+                        subnetIds :: (Prelude.Maybe (ValueList Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkVPCOptionsProperty :: VPCOptionsProperty+mkVPCOptionsProperty+  = VPCOptionsProperty+      {haddock_workaround_ = (), securityGroupIds = Prelude.Nothing,+       subnetIds = Prelude.Nothing}+instance ToResourceProperties VPCOptionsProperty where+  toResourceProperties VPCOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.VPCOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "SecurityGroupIds" Prelude.<$> securityGroupIds,+                            (JSON..=) "SubnetIds" Prelude.<$> subnetIds])}+instance JSON.ToJSON VPCOptionsProperty where+  toJSON VPCOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "SecurityGroupIds" Prelude.<$> securityGroupIds,+               (JSON..=) "SubnetIds" Prelude.<$> subnetIds]))+instance Property "SecurityGroupIds" VPCOptionsProperty where+  type PropertyType "SecurityGroupIds" VPCOptionsProperty = ValueList Prelude.Text+  set newValue VPCOptionsProperty {..}+    = VPCOptionsProperty {securityGroupIds = Prelude.pure newValue, ..}+instance Property "SubnetIds" VPCOptionsProperty where+  type PropertyType "SubnetIds" VPCOptionsProperty = ValueList Prelude.Text+  set newValue VPCOptionsProperty {..}+    = VPCOptionsProperty {subnetIds = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/VPCOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.VPCOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data VPCOptionsProperty :: Prelude.Type+instance ToResourceProperties VPCOptionsProperty+instance Prelude.Eq VPCOptionsProperty+instance Prelude.Show VPCOptionsProperty+instance JSON.ToJSON VPCOptionsProperty
+ gen/Stratosphere/Elasticsearch/Domain/ZoneAwarenessConfigProperty.hs view
@@ -0,0 +1,39 @@+module Stratosphere.Elasticsearch.Domain.ZoneAwarenessConfigProperty (+        ZoneAwarenessConfigProperty(..), mkZoneAwarenessConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ZoneAwarenessConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-zoneawarenessconfig.html>+    ZoneAwarenessConfigProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-zoneawarenessconfig.html#cfn-elasticsearch-domain-zoneawarenessconfig-availabilityzonecount>+                                 availabilityZoneCount :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkZoneAwarenessConfigProperty :: ZoneAwarenessConfigProperty+mkZoneAwarenessConfigProperty+  = ZoneAwarenessConfigProperty+      {haddock_workaround_ = (), availabilityZoneCount = Prelude.Nothing}+instance ToResourceProperties ZoneAwarenessConfigProperty where+  toResourceProperties ZoneAwarenessConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::Elasticsearch::Domain.ZoneAwarenessConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AvailabilityZoneCount"+                              Prelude.<$> availabilityZoneCount])}+instance JSON.ToJSON ZoneAwarenessConfigProperty where+  toJSON ZoneAwarenessConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AvailabilityZoneCount"+                 Prelude.<$> availabilityZoneCount]))+instance Property "AvailabilityZoneCount" ZoneAwarenessConfigProperty where+  type PropertyType "AvailabilityZoneCount" ZoneAwarenessConfigProperty = Value Prelude.Integer+  set newValue ZoneAwarenessConfigProperty {..}+    = ZoneAwarenessConfigProperty+        {availabilityZoneCount = Prelude.pure newValue, ..}
+ gen/Stratosphere/Elasticsearch/Domain/ZoneAwarenessConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Elasticsearch.Domain.ZoneAwarenessConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ZoneAwarenessConfigProperty :: Prelude.Type+instance ToResourceProperties ZoneAwarenessConfigProperty+instance Prelude.Eq ZoneAwarenessConfigProperty+instance Prelude.Show ZoneAwarenessConfigProperty+instance JSON.ToJSON ZoneAwarenessConfigProperty
+ stratosphere-elasticsearch.cabal view
@@ -0,0 +1,86 @@+cabal-version: 1.12++-- This file has been generated from package.yaml by hpack version 0.38.2.+--+-- see: https://github.com/sol/hpack++name:           stratosphere-elasticsearch+version:        1.0.0+synopsis:       Stratosphere integration for AWS Elasticsearch.+description:    Integration into stratosphere to generate resources and properties for AWS Elasticsearch+category:       AWS, Cloud, Elasticsearch+stability:      experimental+homepage:       https://github.com/mbj/stratosphere#readme+bug-reports:    https://github.com/mbj/stratosphere/issues+maintainer:     Markus Schirp+license:        MIT+license-file:   LICENSE.md+build-type:     Simple++source-repository head+  type: git+  location: https://github.com/mbj/stratosphere++flag development+  description: Run GHC with development flags+  manual: True+  default: False++library+  exposed-modules:+      Stratosphere.Elasticsearch.Domain+      Stratosphere.Elasticsearch.Domain.AdvancedSecurityOptionsInputProperty+      Stratosphere.Elasticsearch.Domain.CognitoOptionsProperty+      Stratosphere.Elasticsearch.Domain.ColdStorageOptionsProperty+      Stratosphere.Elasticsearch.Domain.DomainEndpointOptionsProperty+      Stratosphere.Elasticsearch.Domain.EBSOptionsProperty+      Stratosphere.Elasticsearch.Domain.ElasticsearchClusterConfigProperty+      Stratosphere.Elasticsearch.Domain.EncryptionAtRestOptionsProperty+      Stratosphere.Elasticsearch.Domain.LogPublishingOptionProperty+      Stratosphere.Elasticsearch.Domain.MasterUserOptionsProperty+      Stratosphere.Elasticsearch.Domain.NodeToNodeEncryptionOptionsProperty+      Stratosphere.Elasticsearch.Domain.SnapshotOptionsProperty+      Stratosphere.Elasticsearch.Domain.VPCOptionsProperty+      Stratosphere.Elasticsearch.Domain.ZoneAwarenessConfigProperty+  other-modules:+      Paths_stratosphere_elasticsearch+  hs-source-dirs:+      gen+  default-extensions:+      DataKinds+      DeriveGeneric+      DerivingStrategies+      DerivingVia+      DuplicateRecordFields+      FlexibleContexts+      FlexibleInstances+      GADTs+      GeneralizedNewtypeDeriving+      InstanceSigs+      LambdaCase+      MultiParamTypeClasses+      NoFieldSelectors+      NoImplicitPrelude+      NumericUnderscores+      OverloadedLists+      OverloadedRecordDot+      OverloadedStrings+      PolyKinds+      RecordWildCards+      ScopedTypeVariables+      StandaloneDeriving+      Strict+      TemplateHaskell+      TupleSections+      TypeApplications+      TypeFamilies+  ghc-options: -Wall -Wcompat -Widentities -Wimplicit-prelude -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-local-signatures -Wmissing-signatures -Wmonomorphism-restriction -Wredundant-constraints -fhide-source-paths -funbox-strict-fields -optP-Wno-nonportable-include-path -Wno-unused-imports+  build-depends:+      aeson ==2.*+    , base >=4.8 && <4.22+    , stratosphere ==1.0.0+  default-language: Haskell2010+  if flag(development)+    ghc-options: -Werror+  else+    ghc-options: -Wwarn