module Stratosphere.SecurityHub.OrganizationConfiguration ( OrganizationConfiguration(..), mkOrganizationConfiguration ) where import qualified Data.Aeson as JSON import qualified Stratosphere.Prelude as Prelude import Stratosphere.Property import Stratosphere.ResourceProperties import Stratosphere.Value data OrganizationConfiguration = -- | See: OrganizationConfiguration {haddock_workaround_ :: (), -- | See: autoEnable :: (Value Prelude.Bool), -- | See: autoEnableStandards :: (Prelude.Maybe (Value Prelude.Text)), -- | See: configurationType :: (Prelude.Maybe (Value Prelude.Text))} deriving stock (Prelude.Eq, Prelude.Show) mkOrganizationConfiguration :: Value Prelude.Bool -> OrganizationConfiguration mkOrganizationConfiguration autoEnable = OrganizationConfiguration {haddock_workaround_ = (), autoEnable = autoEnable, autoEnableStandards = Prelude.Nothing, configurationType = Prelude.Nothing} instance ToResourceProperties OrganizationConfiguration where toResourceProperties OrganizationConfiguration {..} = ResourceProperties {awsType = "AWS::SecurityHub::OrganizationConfiguration", supportsTags = Prelude.False, properties = Prelude.fromList ((Prelude.<>) ["AutoEnable" JSON..= autoEnable] (Prelude.catMaybes [(JSON..=) "AutoEnableStandards" Prelude.<$> autoEnableStandards, (JSON..=) "ConfigurationType" Prelude.<$> configurationType]))} instance JSON.ToJSON OrganizationConfiguration where toJSON OrganizationConfiguration {..} = JSON.object (Prelude.fromList ((Prelude.<>) ["AutoEnable" JSON..= autoEnable] (Prelude.catMaybes [(JSON..=) "AutoEnableStandards" Prelude.<$> autoEnableStandards, (JSON..=) "ConfigurationType" Prelude.<$> configurationType]))) instance Property "AutoEnable" OrganizationConfiguration where type PropertyType "AutoEnable" OrganizationConfiguration = Value Prelude.Bool set newValue OrganizationConfiguration {..} = OrganizationConfiguration {autoEnable = newValue, ..} instance Property "AutoEnableStandards" OrganizationConfiguration where type PropertyType "AutoEnableStandards" OrganizationConfiguration = Value Prelude.Text set newValue OrganizationConfiguration {..} = OrganizationConfiguration {autoEnableStandards = Prelude.pure newValue, ..} instance Property "ConfigurationType" OrganizationConfiguration where type PropertyType "ConfigurationType" OrganizationConfiguration = Value Prelude.Text set newValue OrganizationConfiguration {..} = OrganizationConfiguration {configurationType = Prelude.pure newValue, ..}