module Stratosphere.Lex.BotAlias.SentimentAnalysisSettingsProperty (
        SentimentAnalysisSettingsProperty(..),
        mkSentimentAnalysisSettingsProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data SentimentAnalysisSettingsProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-botalias-sentimentanalysissettings.html>
    SentimentAnalysisSettingsProperty {SentimentAnalysisSettingsProperty -> ()
haddock_workaround_ :: (),
                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-botalias-sentimentanalysissettings.html#cfn-lex-botalias-sentimentanalysissettings-detectsentiment>
                                       SentimentAnalysisSettingsProperty -> Value Bool
detectSentiment :: (Value Prelude.Bool)}
  deriving stock (SentimentAnalysisSettingsProperty
-> SentimentAnalysisSettingsProperty -> Bool
(SentimentAnalysisSettingsProperty
 -> SentimentAnalysisSettingsProperty -> Bool)
-> (SentimentAnalysisSettingsProperty
    -> SentimentAnalysisSettingsProperty -> Bool)
-> Eq SentimentAnalysisSettingsProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: SentimentAnalysisSettingsProperty
-> SentimentAnalysisSettingsProperty -> Bool
== :: SentimentAnalysisSettingsProperty
-> SentimentAnalysisSettingsProperty -> Bool
$c/= :: SentimentAnalysisSettingsProperty
-> SentimentAnalysisSettingsProperty -> Bool
/= :: SentimentAnalysisSettingsProperty
-> SentimentAnalysisSettingsProperty -> Bool
Prelude.Eq, Int -> SentimentAnalysisSettingsProperty -> ShowS
[SentimentAnalysisSettingsProperty] -> ShowS
SentimentAnalysisSettingsProperty -> String
(Int -> SentimentAnalysisSettingsProperty -> ShowS)
-> (SentimentAnalysisSettingsProperty -> String)
-> ([SentimentAnalysisSettingsProperty] -> ShowS)
-> Show SentimentAnalysisSettingsProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> SentimentAnalysisSettingsProperty -> ShowS
showsPrec :: Int -> SentimentAnalysisSettingsProperty -> ShowS
$cshow :: SentimentAnalysisSettingsProperty -> String
show :: SentimentAnalysisSettingsProperty -> String
$cshowList :: [SentimentAnalysisSettingsProperty] -> ShowS
showList :: [SentimentAnalysisSettingsProperty] -> ShowS
Prelude.Show)
mkSentimentAnalysisSettingsProperty ::
  Value Prelude.Bool -> SentimentAnalysisSettingsProperty
mkSentimentAnalysisSettingsProperty :: Value Bool -> SentimentAnalysisSettingsProperty
mkSentimentAnalysisSettingsProperty Value Bool
detectSentiment
  = SentimentAnalysisSettingsProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), detectSentiment :: Value Bool
detectSentiment = Value Bool
detectSentiment}
instance ToResourceProperties SentimentAnalysisSettingsProperty where
  toResourceProperties :: SentimentAnalysisSettingsProperty -> ResourceProperties
toResourceProperties SentimentAnalysisSettingsProperty {()
Value Bool
haddock_workaround_ :: SentimentAnalysisSettingsProperty -> ()
detectSentiment :: SentimentAnalysisSettingsProperty -> Value Bool
haddock_workaround_ :: ()
detectSentiment :: Value Bool
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::Lex::BotAlias.SentimentAnalysisSettings",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"DetectSentiment" 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
detectSentiment]}
instance JSON.ToJSON SentimentAnalysisSettingsProperty where
  toJSON :: SentimentAnalysisSettingsProperty -> Value
toJSON SentimentAnalysisSettingsProperty {()
Value Bool
haddock_workaround_ :: SentimentAnalysisSettingsProperty -> ()
detectSentiment :: SentimentAnalysisSettingsProperty -> Value Bool
haddock_workaround_ :: ()
detectSentiment :: Value Bool
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"DetectSentiment" 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
detectSentiment]
instance Property "DetectSentiment" SentimentAnalysisSettingsProperty where
  type PropertyType "DetectSentiment" SentimentAnalysisSettingsProperty = Value Prelude.Bool
  set :: PropertyType "DetectSentiment" SentimentAnalysisSettingsProperty
-> SentimentAnalysisSettingsProperty
-> SentimentAnalysisSettingsProperty
set PropertyType "DetectSentiment" SentimentAnalysisSettingsProperty
newValue SentimentAnalysisSettingsProperty {()
Value Bool
haddock_workaround_ :: SentimentAnalysisSettingsProperty -> ()
detectSentiment :: SentimentAnalysisSettingsProperty -> Value Bool
haddock_workaround_ :: ()
detectSentiment :: Value Bool
..}
    = SentimentAnalysisSettingsProperty
        {detectSentiment :: Value Bool
detectSentiment = PropertyType "DetectSentiment" SentimentAnalysisSettingsProperty
Value Bool
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}