module Stratosphere.SecurityHub.AutomationRuleV2.MapFilterProperty ( MapFilterProperty(..), mkMapFilterProperty ) where import qualified Data.Aeson as JSON import qualified Stratosphere.Prelude as Prelude import Stratosphere.Property import Stratosphere.ResourceProperties import Stratosphere.Value data MapFilterProperty = -- | See: MapFilterProperty {haddock_workaround_ :: (), -- | See: comparison :: (Value Prelude.Text), -- | See: key :: (Value Prelude.Text), -- | See: value :: (Value Prelude.Text)} deriving stock (Prelude.Eq, Prelude.Show) mkMapFilterProperty :: Value Prelude.Text -> Value Prelude.Text -> Value Prelude.Text -> MapFilterProperty mkMapFilterProperty comparison key value = MapFilterProperty {haddock_workaround_ = (), comparison = comparison, key = key, value = value} instance ToResourceProperties MapFilterProperty where toResourceProperties MapFilterProperty {..} = ResourceProperties {awsType = "AWS::SecurityHub::AutomationRuleV2.MapFilter", supportsTags = Prelude.False, properties = ["Comparison" JSON..= comparison, "Key" JSON..= key, "Value" JSON..= value]} instance JSON.ToJSON MapFilterProperty where toJSON MapFilterProperty {..} = JSON.object ["Comparison" JSON..= comparison, "Key" JSON..= key, "Value" JSON..= value] instance Property "Comparison" MapFilterProperty where type PropertyType "Comparison" MapFilterProperty = Value Prelude.Text set newValue MapFilterProperty {..} = MapFilterProperty {comparison = newValue, ..} instance Property "Key" MapFilterProperty where type PropertyType "Key" MapFilterProperty = Value Prelude.Text set newValue MapFilterProperty {..} = MapFilterProperty {key = newValue, ..} instance Property "Value" MapFilterProperty where type PropertyType "Value" MapFilterProperty = Value Prelude.Text set newValue MapFilterProperty {..} = MapFilterProperty {value = newValue, ..}