module Stratosphere.SSMIncidents.ResponsePlan.PagerDutyConfigurationProperty (
        module Exports, PagerDutyConfigurationProperty(..),
        mkPagerDutyConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.SSMIncidents.ResponsePlan.PagerDutyIncidentConfigurationProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data PagerDutyConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssmincidents-responseplan-pagerdutyconfiguration.html>
    PagerDutyConfigurationProperty {PagerDutyConfigurationProperty -> ()
haddock_workaround_ :: (),
                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssmincidents-responseplan-pagerdutyconfiguration.html#cfn-ssmincidents-responseplan-pagerdutyconfiguration-name>
                                    PagerDutyConfigurationProperty -> Value Text
name :: (Value Prelude.Text),
                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssmincidents-responseplan-pagerdutyconfiguration.html#cfn-ssmincidents-responseplan-pagerdutyconfiguration-pagerdutyincidentconfiguration>
                                    PagerDutyConfigurationProperty
-> PagerDutyIncidentConfigurationProperty
pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty,
                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssmincidents-responseplan-pagerdutyconfiguration.html#cfn-ssmincidents-responseplan-pagerdutyconfiguration-secretid>
                                    PagerDutyConfigurationProperty -> Value Text
secretId :: (Value Prelude.Text)}
  deriving stock (PagerDutyConfigurationProperty
-> PagerDutyConfigurationProperty -> Bool
(PagerDutyConfigurationProperty
 -> PagerDutyConfigurationProperty -> Bool)
-> (PagerDutyConfigurationProperty
    -> PagerDutyConfigurationProperty -> Bool)
-> Eq PagerDutyConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PagerDutyConfigurationProperty
-> PagerDutyConfigurationProperty -> Bool
== :: PagerDutyConfigurationProperty
-> PagerDutyConfigurationProperty -> Bool
$c/= :: PagerDutyConfigurationProperty
-> PagerDutyConfigurationProperty -> Bool
/= :: PagerDutyConfigurationProperty
-> PagerDutyConfigurationProperty -> Bool
Prelude.Eq, Int -> PagerDutyConfigurationProperty -> ShowS
[PagerDutyConfigurationProperty] -> ShowS
PagerDutyConfigurationProperty -> String
(Int -> PagerDutyConfigurationProperty -> ShowS)
-> (PagerDutyConfigurationProperty -> String)
-> ([PagerDutyConfigurationProperty] -> ShowS)
-> Show PagerDutyConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> PagerDutyConfigurationProperty -> ShowS
showsPrec :: Int -> PagerDutyConfigurationProperty -> ShowS
$cshow :: PagerDutyConfigurationProperty -> String
show :: PagerDutyConfigurationProperty -> String
$cshowList :: [PagerDutyConfigurationProperty] -> ShowS
showList :: [PagerDutyConfigurationProperty] -> ShowS
Prelude.Show)
mkPagerDutyConfigurationProperty ::
  Value Prelude.Text
  -> PagerDutyIncidentConfigurationProperty
     -> Value Prelude.Text -> PagerDutyConfigurationProperty
mkPagerDutyConfigurationProperty :: Value Text
-> PagerDutyIncidentConfigurationProperty
-> Value Text
-> PagerDutyConfigurationProperty
mkPagerDutyConfigurationProperty
  Value Text
name
  PagerDutyIncidentConfigurationProperty
pagerDutyIncidentConfiguration
  Value Text
secretId
  = PagerDutyConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), name :: Value Text
name = Value Text
name,
       pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty
pagerDutyIncidentConfiguration = PagerDutyIncidentConfigurationProperty
pagerDutyIncidentConfiguration,
       secretId :: Value Text
secretId = Value Text
secretId}
instance ToResourceProperties PagerDutyConfigurationProperty where
  toResourceProperties :: PagerDutyConfigurationProperty -> ResourceProperties
toResourceProperties PagerDutyConfigurationProperty {()
Value Text
PagerDutyIncidentConfigurationProperty
haddock_workaround_ :: PagerDutyConfigurationProperty -> ()
name :: PagerDutyConfigurationProperty -> Value Text
pagerDutyIncidentConfiguration :: PagerDutyConfigurationProperty
-> PagerDutyIncidentConfigurationProperty
secretId :: PagerDutyConfigurationProperty -> Value Text
haddock_workaround_ :: ()
name :: Value Text
pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty
secretId :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::SSMIncidents::ResponsePlan.PagerDutyConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"Name" 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
name,
                       Key
"PagerDutyIncidentConfiguration"
                         Key -> PagerDutyIncidentConfigurationProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= PagerDutyIncidentConfigurationProperty
pagerDutyIncidentConfiguration,
                       Key
"SecretId" 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
secretId]}
instance JSON.ToJSON PagerDutyConfigurationProperty where
  toJSON :: PagerDutyConfigurationProperty -> Value
toJSON PagerDutyConfigurationProperty {()
Value Text
PagerDutyIncidentConfigurationProperty
haddock_workaround_ :: PagerDutyConfigurationProperty -> ()
name :: PagerDutyConfigurationProperty -> Value Text
pagerDutyIncidentConfiguration :: PagerDutyConfigurationProperty
-> PagerDutyIncidentConfigurationProperty
secretId :: PagerDutyConfigurationProperty -> Value Text
haddock_workaround_ :: ()
name :: Value Text
pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty
secretId :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"Name" 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
name,
         Key
"PagerDutyIncidentConfiguration"
           Key -> PagerDutyIncidentConfigurationProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= PagerDutyIncidentConfigurationProperty
pagerDutyIncidentConfiguration,
         Key
"SecretId" 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
secretId]
instance Property "Name" PagerDutyConfigurationProperty where
  type PropertyType "Name" PagerDutyConfigurationProperty = Value Prelude.Text
  set :: PropertyType "Name" PagerDutyConfigurationProperty
-> PagerDutyConfigurationProperty -> PagerDutyConfigurationProperty
set PropertyType "Name" PagerDutyConfigurationProperty
newValue PagerDutyConfigurationProperty {()
Value Text
PagerDutyIncidentConfigurationProperty
haddock_workaround_ :: PagerDutyConfigurationProperty -> ()
name :: PagerDutyConfigurationProperty -> Value Text
pagerDutyIncidentConfiguration :: PagerDutyConfigurationProperty
-> PagerDutyIncidentConfigurationProperty
secretId :: PagerDutyConfigurationProperty -> Value Text
haddock_workaround_ :: ()
name :: Value Text
pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty
secretId :: Value Text
..}
    = PagerDutyConfigurationProperty {name :: Value Text
name = PropertyType "Name" PagerDutyConfigurationProperty
Value Text
newValue, ()
Value Text
PagerDutyIncidentConfigurationProperty
haddock_workaround_ :: ()
pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty
secretId :: Value Text
haddock_workaround_ :: ()
pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty
secretId :: Value Text
..}
instance Property "PagerDutyIncidentConfiguration" PagerDutyConfigurationProperty where
  type PropertyType "PagerDutyIncidentConfiguration" PagerDutyConfigurationProperty = PagerDutyIncidentConfigurationProperty
  set :: PropertyType
  "PagerDutyIncidentConfiguration" PagerDutyConfigurationProperty
-> PagerDutyConfigurationProperty -> PagerDutyConfigurationProperty
set PropertyType
  "PagerDutyIncidentConfiguration" PagerDutyConfigurationProperty
newValue PagerDutyConfigurationProperty {()
Value Text
PagerDutyIncidentConfigurationProperty
haddock_workaround_ :: PagerDutyConfigurationProperty -> ()
name :: PagerDutyConfigurationProperty -> Value Text
pagerDutyIncidentConfiguration :: PagerDutyConfigurationProperty
-> PagerDutyIncidentConfigurationProperty
secretId :: PagerDutyConfigurationProperty -> Value Text
haddock_workaround_ :: ()
name :: Value Text
pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty
secretId :: Value Text
..}
    = PagerDutyConfigurationProperty
        {pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty
pagerDutyIncidentConfiguration = PropertyType
  "PagerDutyIncidentConfiguration" PagerDutyConfigurationProperty
PagerDutyIncidentConfigurationProperty
newValue, ()
Value Text
haddock_workaround_ :: ()
name :: Value Text
secretId :: Value Text
haddock_workaround_ :: ()
name :: Value Text
secretId :: Value Text
..}
instance Property "SecretId" PagerDutyConfigurationProperty where
  type PropertyType "SecretId" PagerDutyConfigurationProperty = Value Prelude.Text
  set :: PropertyType "SecretId" PagerDutyConfigurationProperty
-> PagerDutyConfigurationProperty -> PagerDutyConfigurationProperty
set PropertyType "SecretId" PagerDutyConfigurationProperty
newValue PagerDutyConfigurationProperty {()
Value Text
PagerDutyIncidentConfigurationProperty
haddock_workaround_ :: PagerDutyConfigurationProperty -> ()
name :: PagerDutyConfigurationProperty -> Value Text
pagerDutyIncidentConfiguration :: PagerDutyConfigurationProperty
-> PagerDutyIncidentConfigurationProperty
secretId :: PagerDutyConfigurationProperty -> Value Text
haddock_workaround_ :: ()
name :: Value Text
pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty
secretId :: Value Text
..}
    = PagerDutyConfigurationProperty {secretId :: Value Text
secretId = PropertyType "SecretId" PagerDutyConfigurationProperty
Value Text
newValue, ()
Value Text
PagerDutyIncidentConfigurationProperty
haddock_workaround_ :: ()
name :: Value Text
pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty
haddock_workaround_ :: ()
name :: Value Text
pagerDutyIncidentConfiguration :: PagerDutyIncidentConfigurationProperty
..}