module Stratosphere.AppFlow.Flow.DatadogSourcePropertiesProperty (
        DatadogSourcePropertiesProperty(..),
        mkDatadogSourcePropertiesProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data DatadogSourcePropertiesProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-datadogsourceproperties.html>
    DatadogSourcePropertiesProperty {DatadogSourcePropertiesProperty -> ()
haddock_workaround_ :: (),
                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-datadogsourceproperties.html#cfn-appflow-flow-datadogsourceproperties-object>
                                     DatadogSourcePropertiesProperty -> Value Text
object :: (Value Prelude.Text)}
  deriving stock (DatadogSourcePropertiesProperty
-> DatadogSourcePropertiesProperty -> Bool
(DatadogSourcePropertiesProperty
 -> DatadogSourcePropertiesProperty -> Bool)
-> (DatadogSourcePropertiesProperty
    -> DatadogSourcePropertiesProperty -> Bool)
-> Eq DatadogSourcePropertiesProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DatadogSourcePropertiesProperty
-> DatadogSourcePropertiesProperty -> Bool
== :: DatadogSourcePropertiesProperty
-> DatadogSourcePropertiesProperty -> Bool
$c/= :: DatadogSourcePropertiesProperty
-> DatadogSourcePropertiesProperty -> Bool
/= :: DatadogSourcePropertiesProperty
-> DatadogSourcePropertiesProperty -> Bool
Prelude.Eq, Int -> DatadogSourcePropertiesProperty -> ShowS
[DatadogSourcePropertiesProperty] -> ShowS
DatadogSourcePropertiesProperty -> String
(Int -> DatadogSourcePropertiesProperty -> ShowS)
-> (DatadogSourcePropertiesProperty -> String)
-> ([DatadogSourcePropertiesProperty] -> ShowS)
-> Show DatadogSourcePropertiesProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DatadogSourcePropertiesProperty -> ShowS
showsPrec :: Int -> DatadogSourcePropertiesProperty -> ShowS
$cshow :: DatadogSourcePropertiesProperty -> String
show :: DatadogSourcePropertiesProperty -> String
$cshowList :: [DatadogSourcePropertiesProperty] -> ShowS
showList :: [DatadogSourcePropertiesProperty] -> ShowS
Prelude.Show)
mkDatadogSourcePropertiesProperty ::
  Value Prelude.Text -> DatadogSourcePropertiesProperty
mkDatadogSourcePropertiesProperty :: Value Text -> DatadogSourcePropertiesProperty
mkDatadogSourcePropertiesProperty Value Text
object
  = DatadogSourcePropertiesProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), object :: Value Text
object = Value Text
object}
instance ToResourceProperties DatadogSourcePropertiesProperty where
  toResourceProperties :: DatadogSourcePropertiesProperty -> ResourceProperties
toResourceProperties DatadogSourcePropertiesProperty {()
Value Text
haddock_workaround_ :: DatadogSourcePropertiesProperty -> ()
object :: DatadogSourcePropertiesProperty -> Value Text
haddock_workaround_ :: ()
object :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::AppFlow::Flow.DatadogSourceProperties",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"Object" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
object]}
instance JSON.ToJSON DatadogSourcePropertiesProperty where
  toJSON :: DatadogSourcePropertiesProperty -> Value
toJSON DatadogSourcePropertiesProperty {()
Value Text
haddock_workaround_ :: DatadogSourcePropertiesProperty -> ()
object :: DatadogSourcePropertiesProperty -> Value Text
haddock_workaround_ :: ()
object :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"Object" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
object]
instance Property "Object" DatadogSourcePropertiesProperty where
  type PropertyType "Object" DatadogSourcePropertiesProperty = Value Prelude.Text
  set :: PropertyType "Object" DatadogSourcePropertiesProperty
-> DatadogSourcePropertiesProperty
-> DatadogSourcePropertiesProperty
set PropertyType "Object" DatadogSourcePropertiesProperty
newValue DatadogSourcePropertiesProperty {()
Value Text
haddock_workaround_ :: DatadogSourcePropertiesProperty -> ()
object :: DatadogSourcePropertiesProperty -> Value Text
haddock_workaround_ :: ()
object :: Value Text
..}
    = DatadogSourcePropertiesProperty {object :: Value Text
object = PropertyType "Object" DatadogSourcePropertiesProperty
Value Text
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}