module Stratosphere.CleanRooms.IdMappingTable.IdMappingTableInputReferenceConfigProperty (
        IdMappingTableInputReferenceConfigProperty(..),
        mkIdMappingTableInputReferenceConfigProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data IdMappingTableInputReferenceConfigProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-idmappingtable-idmappingtableinputreferenceconfig.html>
    IdMappingTableInputReferenceConfigProperty {IdMappingTableInputReferenceConfigProperty -> ()
haddock_workaround_ :: (),
                                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-idmappingtable-idmappingtableinputreferenceconfig.html#cfn-cleanrooms-idmappingtable-idmappingtableinputreferenceconfig-inputreferencearn>
                                                IdMappingTableInputReferenceConfigProperty -> Value Text
inputReferenceArn :: (Value Prelude.Text),
                                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-idmappingtable-idmappingtableinputreferenceconfig.html#cfn-cleanrooms-idmappingtable-idmappingtableinputreferenceconfig-manageresourcepolicies>
                                                IdMappingTableInputReferenceConfigProperty -> Value Bool
manageResourcePolicies :: (Value Prelude.Bool)}
  deriving stock (IdMappingTableInputReferenceConfigProperty
-> IdMappingTableInputReferenceConfigProperty -> Bool
(IdMappingTableInputReferenceConfigProperty
 -> IdMappingTableInputReferenceConfigProperty -> Bool)
-> (IdMappingTableInputReferenceConfigProperty
    -> IdMappingTableInputReferenceConfigProperty -> Bool)
-> Eq IdMappingTableInputReferenceConfigProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: IdMappingTableInputReferenceConfigProperty
-> IdMappingTableInputReferenceConfigProperty -> Bool
== :: IdMappingTableInputReferenceConfigProperty
-> IdMappingTableInputReferenceConfigProperty -> Bool
$c/= :: IdMappingTableInputReferenceConfigProperty
-> IdMappingTableInputReferenceConfigProperty -> Bool
/= :: IdMappingTableInputReferenceConfigProperty
-> IdMappingTableInputReferenceConfigProperty -> Bool
Prelude.Eq, Int -> IdMappingTableInputReferenceConfigProperty -> ShowS
[IdMappingTableInputReferenceConfigProperty] -> ShowS
IdMappingTableInputReferenceConfigProperty -> String
(Int -> IdMappingTableInputReferenceConfigProperty -> ShowS)
-> (IdMappingTableInputReferenceConfigProperty -> String)
-> ([IdMappingTableInputReferenceConfigProperty] -> ShowS)
-> Show IdMappingTableInputReferenceConfigProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> IdMappingTableInputReferenceConfigProperty -> ShowS
showsPrec :: Int -> IdMappingTableInputReferenceConfigProperty -> ShowS
$cshow :: IdMappingTableInputReferenceConfigProperty -> String
show :: IdMappingTableInputReferenceConfigProperty -> String
$cshowList :: [IdMappingTableInputReferenceConfigProperty] -> ShowS
showList :: [IdMappingTableInputReferenceConfigProperty] -> ShowS
Prelude.Show)
mkIdMappingTableInputReferenceConfigProperty ::
  Value Prelude.Text
  -> Value Prelude.Bool -> IdMappingTableInputReferenceConfigProperty
mkIdMappingTableInputReferenceConfigProperty :: Value Text
-> Value Bool -> IdMappingTableInputReferenceConfigProperty
mkIdMappingTableInputReferenceConfigProperty
  Value Text
inputReferenceArn
  Value Bool
manageResourcePolicies
  = IdMappingTableInputReferenceConfigProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), inputReferenceArn :: Value Text
inputReferenceArn = Value Text
inputReferenceArn,
       manageResourcePolicies :: Value Bool
manageResourcePolicies = Value Bool
manageResourcePolicies}
instance ToResourceProperties IdMappingTableInputReferenceConfigProperty where
  toResourceProperties :: IdMappingTableInputReferenceConfigProperty -> ResourceProperties
toResourceProperties
    IdMappingTableInputReferenceConfigProperty {()
Value Bool
Value Text
haddock_workaround_ :: IdMappingTableInputReferenceConfigProperty -> ()
inputReferenceArn :: IdMappingTableInputReferenceConfigProperty -> Value Text
manageResourcePolicies :: IdMappingTableInputReferenceConfigProperty -> Value Bool
haddock_workaround_ :: ()
inputReferenceArn :: Value Text
manageResourcePolicies :: Value Bool
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::CleanRooms::IdMappingTable.IdMappingTableInputReferenceConfig",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"InputReferenceArn" 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
inputReferenceArn,
                       Key
"ManageResourcePolicies" Key -> Value Bool -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Bool
manageResourcePolicies]}
instance JSON.ToJSON IdMappingTableInputReferenceConfigProperty where
  toJSON :: IdMappingTableInputReferenceConfigProperty -> Value
toJSON IdMappingTableInputReferenceConfigProperty {()
Value Bool
Value Text
haddock_workaround_ :: IdMappingTableInputReferenceConfigProperty -> ()
inputReferenceArn :: IdMappingTableInputReferenceConfigProperty -> Value Text
manageResourcePolicies :: IdMappingTableInputReferenceConfigProperty -> Value Bool
haddock_workaround_ :: ()
inputReferenceArn :: Value Text
manageResourcePolicies :: Value Bool
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"InputReferenceArn" 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
inputReferenceArn,
         Key
"ManageResourcePolicies" Key -> Value Bool -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Bool
manageResourcePolicies]
instance Property "InputReferenceArn" IdMappingTableInputReferenceConfigProperty where
  type PropertyType "InputReferenceArn" IdMappingTableInputReferenceConfigProperty = Value Prelude.Text
  set :: PropertyType
  "InputReferenceArn" IdMappingTableInputReferenceConfigProperty
-> IdMappingTableInputReferenceConfigProperty
-> IdMappingTableInputReferenceConfigProperty
set PropertyType
  "InputReferenceArn" IdMappingTableInputReferenceConfigProperty
newValue IdMappingTableInputReferenceConfigProperty {()
Value Bool
Value Text
haddock_workaround_ :: IdMappingTableInputReferenceConfigProperty -> ()
inputReferenceArn :: IdMappingTableInputReferenceConfigProperty -> Value Text
manageResourcePolicies :: IdMappingTableInputReferenceConfigProperty -> Value Bool
haddock_workaround_ :: ()
inputReferenceArn :: Value Text
manageResourcePolicies :: Value Bool
..}
    = IdMappingTableInputReferenceConfigProperty
        {inputReferenceArn :: Value Text
inputReferenceArn = PropertyType
  "InputReferenceArn" IdMappingTableInputReferenceConfigProperty
Value Text
newValue, ()
Value Bool
haddock_workaround_ :: ()
manageResourcePolicies :: Value Bool
haddock_workaround_ :: ()
manageResourcePolicies :: Value Bool
..}
instance Property "ManageResourcePolicies" IdMappingTableInputReferenceConfigProperty where
  type PropertyType "ManageResourcePolicies" IdMappingTableInputReferenceConfigProperty = Value Prelude.Bool
  set :: PropertyType
  "ManageResourcePolicies" IdMappingTableInputReferenceConfigProperty
-> IdMappingTableInputReferenceConfigProperty
-> IdMappingTableInputReferenceConfigProperty
set PropertyType
  "ManageResourcePolicies" IdMappingTableInputReferenceConfigProperty
newValue IdMappingTableInputReferenceConfigProperty {()
Value Bool
Value Text
haddock_workaround_ :: IdMappingTableInputReferenceConfigProperty -> ()
inputReferenceArn :: IdMappingTableInputReferenceConfigProperty -> Value Text
manageResourcePolicies :: IdMappingTableInputReferenceConfigProperty -> Value Bool
haddock_workaround_ :: ()
inputReferenceArn :: Value Text
manageResourcePolicies :: Value Bool
..}
    = IdMappingTableInputReferenceConfigProperty
        {manageResourcePolicies :: Value Bool
manageResourcePolicies = PropertyType
  "ManageResourcePolicies" IdMappingTableInputReferenceConfigProperty
Value Bool
newValue, ()
Value Text
haddock_workaround_ :: ()
inputReferenceArn :: Value Text
haddock_workaround_ :: ()
inputReferenceArn :: Value Text
..}