module Stratosphere.Connect.EvaluationForm.SingleSelectQuestionRuleCategoryAutomationProperty (
        SingleSelectQuestionRuleCategoryAutomationProperty(..),
        mkSingleSelectQuestionRuleCategoryAutomationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data SingleSelectQuestionRuleCategoryAutomationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connect-evaluationform-singleselectquestionrulecategoryautomation.html>
    SingleSelectQuestionRuleCategoryAutomationProperty {SingleSelectQuestionRuleCategoryAutomationProperty -> ()
haddock_workaround_ :: (),
                                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connect-evaluationform-singleselectquestionrulecategoryautomation.html#cfn-connect-evaluationform-singleselectquestionrulecategoryautomation-category>
                                                        SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
category :: (Value Prelude.Text),
                                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connect-evaluationform-singleselectquestionrulecategoryautomation.html#cfn-connect-evaluationform-singleselectquestionrulecategoryautomation-condition>
                                                        SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
condition :: (Value Prelude.Text),
                                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connect-evaluationform-singleselectquestionrulecategoryautomation.html#cfn-connect-evaluationform-singleselectquestionrulecategoryautomation-optionrefid>
                                                        SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
optionRefId :: (Value Prelude.Text)}
  deriving stock (SingleSelectQuestionRuleCategoryAutomationProperty
-> SingleSelectQuestionRuleCategoryAutomationProperty -> Bool
(SingleSelectQuestionRuleCategoryAutomationProperty
 -> SingleSelectQuestionRuleCategoryAutomationProperty -> Bool)
-> (SingleSelectQuestionRuleCategoryAutomationProperty
    -> SingleSelectQuestionRuleCategoryAutomationProperty -> Bool)
-> Eq SingleSelectQuestionRuleCategoryAutomationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: SingleSelectQuestionRuleCategoryAutomationProperty
-> SingleSelectQuestionRuleCategoryAutomationProperty -> Bool
== :: SingleSelectQuestionRuleCategoryAutomationProperty
-> SingleSelectQuestionRuleCategoryAutomationProperty -> Bool
$c/= :: SingleSelectQuestionRuleCategoryAutomationProperty
-> SingleSelectQuestionRuleCategoryAutomationProperty -> Bool
/= :: SingleSelectQuestionRuleCategoryAutomationProperty
-> SingleSelectQuestionRuleCategoryAutomationProperty -> Bool
Prelude.Eq, Int -> SingleSelectQuestionRuleCategoryAutomationProperty -> ShowS
[SingleSelectQuestionRuleCategoryAutomationProperty] -> ShowS
SingleSelectQuestionRuleCategoryAutomationProperty -> String
(Int
 -> SingleSelectQuestionRuleCategoryAutomationProperty -> ShowS)
-> (SingleSelectQuestionRuleCategoryAutomationProperty -> String)
-> ([SingleSelectQuestionRuleCategoryAutomationProperty] -> ShowS)
-> Show SingleSelectQuestionRuleCategoryAutomationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> SingleSelectQuestionRuleCategoryAutomationProperty -> ShowS
showsPrec :: Int -> SingleSelectQuestionRuleCategoryAutomationProperty -> ShowS
$cshow :: SingleSelectQuestionRuleCategoryAutomationProperty -> String
show :: SingleSelectQuestionRuleCategoryAutomationProperty -> String
$cshowList :: [SingleSelectQuestionRuleCategoryAutomationProperty] -> ShowS
showList :: [SingleSelectQuestionRuleCategoryAutomationProperty] -> ShowS
Prelude.Show)
mkSingleSelectQuestionRuleCategoryAutomationProperty ::
  Value Prelude.Text
  -> Value Prelude.Text
     -> Value Prelude.Text
        -> SingleSelectQuestionRuleCategoryAutomationProperty
mkSingleSelectQuestionRuleCategoryAutomationProperty :: Value Text
-> Value Text
-> Value Text
-> SingleSelectQuestionRuleCategoryAutomationProperty
mkSingleSelectQuestionRuleCategoryAutomationProperty
  Value Text
category
  Value Text
condition
  Value Text
optionRefId
  = SingleSelectQuestionRuleCategoryAutomationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), category :: Value Text
category = Value Text
category,
       condition :: Value Text
condition = Value Text
condition, optionRefId :: Value Text
optionRefId = Value Text
optionRefId}
instance ToResourceProperties SingleSelectQuestionRuleCategoryAutomationProperty where
  toResourceProperties :: SingleSelectQuestionRuleCategoryAutomationProperty
-> ResourceProperties
toResourceProperties
    SingleSelectQuestionRuleCategoryAutomationProperty {()
Value Text
haddock_workaround_ :: SingleSelectQuestionRuleCategoryAutomationProperty -> ()
category :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
condition :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
optionRefId :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
haddock_workaround_ :: ()
category :: Value Text
condition :: Value Text
optionRefId :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::Connect::EvaluationForm.SingleSelectQuestionRuleCategoryAutomation",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"Category" 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
category,
                       Key
"Condition" 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
condition, Key
"OptionRefId" 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
optionRefId]}
instance JSON.ToJSON SingleSelectQuestionRuleCategoryAutomationProperty where
  toJSON :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value
toJSON SingleSelectQuestionRuleCategoryAutomationProperty {()
Value Text
haddock_workaround_ :: SingleSelectQuestionRuleCategoryAutomationProperty -> ()
category :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
condition :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
optionRefId :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
haddock_workaround_ :: ()
category :: Value Text
condition :: Value Text
optionRefId :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"Category" 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
category, Key
"Condition" 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
condition,
         Key
"OptionRefId" 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
optionRefId]
instance Property "Category" SingleSelectQuestionRuleCategoryAutomationProperty where
  type PropertyType "Category" SingleSelectQuestionRuleCategoryAutomationProperty = Value Prelude.Text
  set :: PropertyType
  "Category" SingleSelectQuestionRuleCategoryAutomationProperty
-> SingleSelectQuestionRuleCategoryAutomationProperty
-> SingleSelectQuestionRuleCategoryAutomationProperty
set
    PropertyType
  "Category" SingleSelectQuestionRuleCategoryAutomationProperty
newValue
    SingleSelectQuestionRuleCategoryAutomationProperty {()
Value Text
haddock_workaround_ :: SingleSelectQuestionRuleCategoryAutomationProperty -> ()
category :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
condition :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
optionRefId :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
haddock_workaround_ :: ()
category :: Value Text
condition :: Value Text
optionRefId :: Value Text
..}
    = SingleSelectQuestionRuleCategoryAutomationProperty
        {category :: Value Text
category = PropertyType
  "Category" SingleSelectQuestionRuleCategoryAutomationProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
condition :: Value Text
optionRefId :: Value Text
haddock_workaround_ :: ()
condition :: Value Text
optionRefId :: Value Text
..}
instance Property "Condition" SingleSelectQuestionRuleCategoryAutomationProperty where
  type PropertyType "Condition" SingleSelectQuestionRuleCategoryAutomationProperty = Value Prelude.Text
  set :: PropertyType
  "Condition" SingleSelectQuestionRuleCategoryAutomationProperty
-> SingleSelectQuestionRuleCategoryAutomationProperty
-> SingleSelectQuestionRuleCategoryAutomationProperty
set
    PropertyType
  "Condition" SingleSelectQuestionRuleCategoryAutomationProperty
newValue
    SingleSelectQuestionRuleCategoryAutomationProperty {()
Value Text
haddock_workaround_ :: SingleSelectQuestionRuleCategoryAutomationProperty -> ()
category :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
condition :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
optionRefId :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
haddock_workaround_ :: ()
category :: Value Text
condition :: Value Text
optionRefId :: Value Text
..}
    = SingleSelectQuestionRuleCategoryAutomationProperty
        {condition :: Value Text
condition = PropertyType
  "Condition" SingleSelectQuestionRuleCategoryAutomationProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
category :: Value Text
optionRefId :: Value Text
haddock_workaround_ :: ()
category :: Value Text
optionRefId :: Value Text
..}
instance Property "OptionRefId" SingleSelectQuestionRuleCategoryAutomationProperty where
  type PropertyType "OptionRefId" SingleSelectQuestionRuleCategoryAutomationProperty = Value Prelude.Text
  set :: PropertyType
  "OptionRefId" SingleSelectQuestionRuleCategoryAutomationProperty
-> SingleSelectQuestionRuleCategoryAutomationProperty
-> SingleSelectQuestionRuleCategoryAutomationProperty
set
    PropertyType
  "OptionRefId" SingleSelectQuestionRuleCategoryAutomationProperty
newValue
    SingleSelectQuestionRuleCategoryAutomationProperty {()
Value Text
haddock_workaround_ :: SingleSelectQuestionRuleCategoryAutomationProperty -> ()
category :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
condition :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
optionRefId :: SingleSelectQuestionRuleCategoryAutomationProperty -> Value Text
haddock_workaround_ :: ()
category :: Value Text
condition :: Value Text
optionRefId :: Value Text
..}
    = SingleSelectQuestionRuleCategoryAutomationProperty
        {optionRefId :: Value Text
optionRefId = PropertyType
  "OptionRefId" SingleSelectQuestionRuleCategoryAutomationProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
category :: Value Text
condition :: Value Text
haddock_workaround_ :: ()
category :: Value Text
condition :: Value Text
..}