module Stratosphere.DataZone.EnvironmentBlueprintConfiguration.ProvisioningConfigurationProperty (
        module Exports, ProvisioningConfigurationProperty(..),
        mkProvisioningConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.DataZone.EnvironmentBlueprintConfiguration.LakeFormationConfigurationProperty as Exports
import Stratosphere.ResourceProperties
data ProvisioningConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-environmentblueprintconfiguration-provisioningconfiguration.html>
    ProvisioningConfigurationProperty {ProvisioningConfigurationProperty -> ()
haddock_workaround_ :: (),
                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-environmentblueprintconfiguration-provisioningconfiguration.html#cfn-datazone-environmentblueprintconfiguration-provisioningconfiguration-lakeformationconfiguration>
                                       ProvisioningConfigurationProperty
-> LakeFormationConfigurationProperty
lakeFormationConfiguration :: LakeFormationConfigurationProperty}
  deriving stock (ProvisioningConfigurationProperty
-> ProvisioningConfigurationProperty -> Bool
(ProvisioningConfigurationProperty
 -> ProvisioningConfigurationProperty -> Bool)
-> (ProvisioningConfigurationProperty
    -> ProvisioningConfigurationProperty -> Bool)
-> Eq ProvisioningConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ProvisioningConfigurationProperty
-> ProvisioningConfigurationProperty -> Bool
== :: ProvisioningConfigurationProperty
-> ProvisioningConfigurationProperty -> Bool
$c/= :: ProvisioningConfigurationProperty
-> ProvisioningConfigurationProperty -> Bool
/= :: ProvisioningConfigurationProperty
-> ProvisioningConfigurationProperty -> Bool
Prelude.Eq, Int -> ProvisioningConfigurationProperty -> ShowS
[ProvisioningConfigurationProperty] -> ShowS
ProvisioningConfigurationProperty -> String
(Int -> ProvisioningConfigurationProperty -> ShowS)
-> (ProvisioningConfigurationProperty -> String)
-> ([ProvisioningConfigurationProperty] -> ShowS)
-> Show ProvisioningConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ProvisioningConfigurationProperty -> ShowS
showsPrec :: Int -> ProvisioningConfigurationProperty -> ShowS
$cshow :: ProvisioningConfigurationProperty -> String
show :: ProvisioningConfigurationProperty -> String
$cshowList :: [ProvisioningConfigurationProperty] -> ShowS
showList :: [ProvisioningConfigurationProperty] -> ShowS
Prelude.Show)
mkProvisioningConfigurationProperty ::
  LakeFormationConfigurationProperty
  -> ProvisioningConfigurationProperty
mkProvisioningConfigurationProperty :: LakeFormationConfigurationProperty
-> ProvisioningConfigurationProperty
mkProvisioningConfigurationProperty LakeFormationConfigurationProperty
lakeFormationConfiguration
  = ProvisioningConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (),
       lakeFormationConfiguration :: LakeFormationConfigurationProperty
lakeFormationConfiguration = LakeFormationConfigurationProperty
lakeFormationConfiguration}
instance ToResourceProperties ProvisioningConfigurationProperty where
  toResourceProperties :: ProvisioningConfigurationProperty -> ResourceProperties
toResourceProperties ProvisioningConfigurationProperty {()
LakeFormationConfigurationProperty
haddock_workaround_ :: ProvisioningConfigurationProperty -> ()
lakeFormationConfiguration :: ProvisioningConfigurationProperty
-> LakeFormationConfigurationProperty
haddock_workaround_ :: ()
lakeFormationConfiguration :: LakeFormationConfigurationProperty
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::DataZone::EnvironmentBlueprintConfiguration.ProvisioningConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"LakeFormationConfiguration"
                         Key -> LakeFormationConfigurationProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= LakeFormationConfigurationProperty
lakeFormationConfiguration]}
instance JSON.ToJSON ProvisioningConfigurationProperty where
  toJSON :: ProvisioningConfigurationProperty -> Value
toJSON ProvisioningConfigurationProperty {()
LakeFormationConfigurationProperty
haddock_workaround_ :: ProvisioningConfigurationProperty -> ()
lakeFormationConfiguration :: ProvisioningConfigurationProperty
-> LakeFormationConfigurationProperty
haddock_workaround_ :: ()
lakeFormationConfiguration :: LakeFormationConfigurationProperty
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"LakeFormationConfiguration" Key -> LakeFormationConfigurationProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= LakeFormationConfigurationProperty
lakeFormationConfiguration]
instance Property "LakeFormationConfiguration" ProvisioningConfigurationProperty where
  type PropertyType "LakeFormationConfiguration" ProvisioningConfigurationProperty = LakeFormationConfigurationProperty
  set :: PropertyType
  "LakeFormationConfiguration" ProvisioningConfigurationProperty
-> ProvisioningConfigurationProperty
-> ProvisioningConfigurationProperty
set PropertyType
  "LakeFormationConfiguration" ProvisioningConfigurationProperty
newValue ProvisioningConfigurationProperty {()
LakeFormationConfigurationProperty
haddock_workaround_ :: ProvisioningConfigurationProperty -> ()
lakeFormationConfiguration :: ProvisioningConfigurationProperty
-> LakeFormationConfigurationProperty
haddock_workaround_ :: ()
lakeFormationConfiguration :: LakeFormationConfigurationProperty
..}
    = ProvisioningConfigurationProperty
        {lakeFormationConfiguration :: LakeFormationConfigurationProperty
lakeFormationConfiguration = PropertyType
  "LakeFormationConfiguration" ProvisioningConfigurationProperty
LakeFormationConfigurationProperty
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}