module Stratosphere.Cognito.IdentityPoolRoleAttachment.MappingRuleProperty (
        MappingRuleProperty(..), mkMappingRuleProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data MappingRuleProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html>
    MappingRuleProperty {MappingRuleProperty -> ()
haddock_workaround_ :: (),
                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-claim>
                         MappingRuleProperty -> Value Text
claim :: (Value Prelude.Text),
                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-matchtype>
                         MappingRuleProperty -> Value Text
matchType :: (Value Prelude.Text),
                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-rolearn>
                         MappingRuleProperty -> Value Text
roleARN :: (Value Prelude.Text),
                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-value>
                         MappingRuleProperty -> Value Text
value :: (Value Prelude.Text)}
  deriving stock (MappingRuleProperty -> MappingRuleProperty -> Bool
(MappingRuleProperty -> MappingRuleProperty -> Bool)
-> (MappingRuleProperty -> MappingRuleProperty -> Bool)
-> Eq MappingRuleProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: MappingRuleProperty -> MappingRuleProperty -> Bool
== :: MappingRuleProperty -> MappingRuleProperty -> Bool
$c/= :: MappingRuleProperty -> MappingRuleProperty -> Bool
/= :: MappingRuleProperty -> MappingRuleProperty -> Bool
Prelude.Eq, Int -> MappingRuleProperty -> ShowS
[MappingRuleProperty] -> ShowS
MappingRuleProperty -> String
(Int -> MappingRuleProperty -> ShowS)
-> (MappingRuleProperty -> String)
-> ([MappingRuleProperty] -> ShowS)
-> Show MappingRuleProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> MappingRuleProperty -> ShowS
showsPrec :: Int -> MappingRuleProperty -> ShowS
$cshow :: MappingRuleProperty -> String
show :: MappingRuleProperty -> String
$cshowList :: [MappingRuleProperty] -> ShowS
showList :: [MappingRuleProperty] -> ShowS
Prelude.Show)
mkMappingRuleProperty ::
  Value Prelude.Text
  -> Value Prelude.Text
     -> Value Prelude.Text -> Value Prelude.Text -> MappingRuleProperty
mkMappingRuleProperty :: Value Text
-> Value Text -> Value Text -> Value Text -> MappingRuleProperty
mkMappingRuleProperty Value Text
claim Value Text
matchType Value Text
roleARN Value Text
value
  = MappingRuleProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), claim :: Value Text
claim = Value Text
claim, matchType :: Value Text
matchType = Value Text
matchType,
       roleARN :: Value Text
roleARN = Value Text
roleARN, value :: Value Text
value = Value Text
value}
instance ToResourceProperties MappingRuleProperty where
  toResourceProperties :: MappingRuleProperty -> ResourceProperties
toResourceProperties MappingRuleProperty {()
Value Text
haddock_workaround_ :: MappingRuleProperty -> ()
claim :: MappingRuleProperty -> Value Text
matchType :: MappingRuleProperty -> Value Text
roleARN :: MappingRuleProperty -> Value Text
value :: MappingRuleProperty -> Value Text
haddock_workaround_ :: ()
claim :: Value Text
matchType :: Value Text
roleARN :: Value Text
value :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::Cognito::IdentityPoolRoleAttachment.MappingRule",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"Claim" 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
claim, Key
"MatchType" 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
matchType,
                       Key
"RoleARN" 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
roleARN, Key
"Value" 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
value]}
instance JSON.ToJSON MappingRuleProperty where
  toJSON :: MappingRuleProperty -> Value
toJSON MappingRuleProperty {()
Value Text
haddock_workaround_ :: MappingRuleProperty -> ()
claim :: MappingRuleProperty -> Value Text
matchType :: MappingRuleProperty -> Value Text
roleARN :: MappingRuleProperty -> Value Text
value :: MappingRuleProperty -> Value Text
haddock_workaround_ :: ()
claim :: Value Text
matchType :: Value Text
roleARN :: Value Text
value :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"Claim" 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
claim, Key
"MatchType" 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
matchType,
         Key
"RoleARN" 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
roleARN, Key
"Value" 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
value]
instance Property "Claim" MappingRuleProperty where
  type PropertyType "Claim" MappingRuleProperty = Value Prelude.Text
  set :: PropertyType "Claim" MappingRuleProperty
-> MappingRuleProperty -> MappingRuleProperty
set PropertyType "Claim" MappingRuleProperty
newValue MappingRuleProperty {()
Value Text
haddock_workaround_ :: MappingRuleProperty -> ()
claim :: MappingRuleProperty -> Value Text
matchType :: MappingRuleProperty -> Value Text
roleARN :: MappingRuleProperty -> Value Text
value :: MappingRuleProperty -> Value Text
haddock_workaround_ :: ()
claim :: Value Text
matchType :: Value Text
roleARN :: Value Text
value :: Value Text
..}
    = MappingRuleProperty {claim :: Value Text
claim = PropertyType "Claim" MappingRuleProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
matchType :: Value Text
roleARN :: Value Text
value :: Value Text
haddock_workaround_ :: ()
matchType :: Value Text
roleARN :: Value Text
value :: Value Text
..}
instance Property "MatchType" MappingRuleProperty where
  type PropertyType "MatchType" MappingRuleProperty = Value Prelude.Text
  set :: PropertyType "MatchType" MappingRuleProperty
-> MappingRuleProperty -> MappingRuleProperty
set PropertyType "MatchType" MappingRuleProperty
newValue MappingRuleProperty {()
Value Text
haddock_workaround_ :: MappingRuleProperty -> ()
claim :: MappingRuleProperty -> Value Text
matchType :: MappingRuleProperty -> Value Text
roleARN :: MappingRuleProperty -> Value Text
value :: MappingRuleProperty -> Value Text
haddock_workaround_ :: ()
claim :: Value Text
matchType :: Value Text
roleARN :: Value Text
value :: Value Text
..}
    = MappingRuleProperty {matchType :: Value Text
matchType = PropertyType "MatchType" MappingRuleProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
claim :: Value Text
roleARN :: Value Text
value :: Value Text
haddock_workaround_ :: ()
claim :: Value Text
roleARN :: Value Text
value :: Value Text
..}
instance Property "RoleARN" MappingRuleProperty where
  type PropertyType "RoleARN" MappingRuleProperty = Value Prelude.Text
  set :: PropertyType "RoleARN" MappingRuleProperty
-> MappingRuleProperty -> MappingRuleProperty
set PropertyType "RoleARN" MappingRuleProperty
newValue MappingRuleProperty {()
Value Text
haddock_workaround_ :: MappingRuleProperty -> ()
claim :: MappingRuleProperty -> Value Text
matchType :: MappingRuleProperty -> Value Text
roleARN :: MappingRuleProperty -> Value Text
value :: MappingRuleProperty -> Value Text
haddock_workaround_ :: ()
claim :: Value Text
matchType :: Value Text
roleARN :: Value Text
value :: Value Text
..}
    = MappingRuleProperty {roleARN :: Value Text
roleARN = PropertyType "RoleARN" MappingRuleProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
claim :: Value Text
matchType :: Value Text
value :: Value Text
haddock_workaround_ :: ()
claim :: Value Text
matchType :: Value Text
value :: Value Text
..}
instance Property "Value" MappingRuleProperty where
  type PropertyType "Value" MappingRuleProperty = Value Prelude.Text
  set :: PropertyType "Value" MappingRuleProperty
-> MappingRuleProperty -> MappingRuleProperty
set PropertyType "Value" MappingRuleProperty
newValue MappingRuleProperty {()
Value Text
haddock_workaround_ :: MappingRuleProperty -> ()
claim :: MappingRuleProperty -> Value Text
matchType :: MappingRuleProperty -> Value Text
roleARN :: MappingRuleProperty -> Value Text
value :: MappingRuleProperty -> Value Text
haddock_workaround_ :: ()
claim :: Value Text
matchType :: Value Text
roleARN :: Value Text
value :: Value Text
..}
    = MappingRuleProperty {value :: Value Text
value = PropertyType "Value" MappingRuleProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
claim :: Value Text
matchType :: Value Text
roleARN :: Value Text
haddock_workaround_ :: ()
claim :: Value Text
matchType :: Value Text
roleARN :: Value Text
..}