module Stratosphere.RTBFabric.ResponderGateway.TrustStoreConfigurationProperty (
        TrustStoreConfigurationProperty(..),
        mkTrustStoreConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data TrustStoreConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rtbfabric-respondergateway-truststoreconfiguration.html>
    TrustStoreConfigurationProperty {TrustStoreConfigurationProperty -> ()
haddock_workaround_ :: (),
                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rtbfabric-respondergateway-truststoreconfiguration.html#cfn-rtbfabric-respondergateway-truststoreconfiguration-certificateauthoritycertificates>
                                     TrustStoreConfigurationProperty -> ValueList Text
certificateAuthorityCertificates :: (ValueList Prelude.Text)}
  deriving stock (TrustStoreConfigurationProperty
-> TrustStoreConfigurationProperty -> Bool
(TrustStoreConfigurationProperty
 -> TrustStoreConfigurationProperty -> Bool)
-> (TrustStoreConfigurationProperty
    -> TrustStoreConfigurationProperty -> Bool)
-> Eq TrustStoreConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: TrustStoreConfigurationProperty
-> TrustStoreConfigurationProperty -> Bool
== :: TrustStoreConfigurationProperty
-> TrustStoreConfigurationProperty -> Bool
$c/= :: TrustStoreConfigurationProperty
-> TrustStoreConfigurationProperty -> Bool
/= :: TrustStoreConfigurationProperty
-> TrustStoreConfigurationProperty -> Bool
Prelude.Eq, Int -> TrustStoreConfigurationProperty -> ShowS
[TrustStoreConfigurationProperty] -> ShowS
TrustStoreConfigurationProperty -> String
(Int -> TrustStoreConfigurationProperty -> ShowS)
-> (TrustStoreConfigurationProperty -> String)
-> ([TrustStoreConfigurationProperty] -> ShowS)
-> Show TrustStoreConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> TrustStoreConfigurationProperty -> ShowS
showsPrec :: Int -> TrustStoreConfigurationProperty -> ShowS
$cshow :: TrustStoreConfigurationProperty -> String
show :: TrustStoreConfigurationProperty -> String
$cshowList :: [TrustStoreConfigurationProperty] -> ShowS
showList :: [TrustStoreConfigurationProperty] -> ShowS
Prelude.Show)
mkTrustStoreConfigurationProperty ::
  ValueList Prelude.Text -> TrustStoreConfigurationProperty
mkTrustStoreConfigurationProperty :: ValueList Text -> TrustStoreConfigurationProperty
mkTrustStoreConfigurationProperty ValueList Text
certificateAuthorityCertificates
  = TrustStoreConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (),
       certificateAuthorityCertificates :: ValueList Text
certificateAuthorityCertificates = ValueList Text
certificateAuthorityCertificates}
instance ToResourceProperties TrustStoreConfigurationProperty where
  toResourceProperties :: TrustStoreConfigurationProperty -> ResourceProperties
toResourceProperties TrustStoreConfigurationProperty {()
ValueList Text
haddock_workaround_ :: TrustStoreConfigurationProperty -> ()
certificateAuthorityCertificates :: TrustStoreConfigurationProperty -> ValueList Text
haddock_workaround_ :: ()
certificateAuthorityCertificates :: ValueList Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::RTBFabric::ResponderGateway.TrustStoreConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"CertificateAuthorityCertificates"
                         Key -> ValueList Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ValueList Text
certificateAuthorityCertificates]}
instance JSON.ToJSON TrustStoreConfigurationProperty where
  toJSON :: TrustStoreConfigurationProperty -> Value
toJSON TrustStoreConfigurationProperty {()
ValueList Text
haddock_workaround_ :: TrustStoreConfigurationProperty -> ()
certificateAuthorityCertificates :: TrustStoreConfigurationProperty -> ValueList Text
haddock_workaround_ :: ()
certificateAuthorityCertificates :: ValueList Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"CertificateAuthorityCertificates"
           Key -> ValueList Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ValueList Text
certificateAuthorityCertificates]
instance Property "CertificateAuthorityCertificates" TrustStoreConfigurationProperty where
  type PropertyType "CertificateAuthorityCertificates" TrustStoreConfigurationProperty = ValueList Prelude.Text
  set :: PropertyType
  "CertificateAuthorityCertificates" TrustStoreConfigurationProperty
-> TrustStoreConfigurationProperty
-> TrustStoreConfigurationProperty
set PropertyType
  "CertificateAuthorityCertificates" TrustStoreConfigurationProperty
newValue TrustStoreConfigurationProperty {()
ValueList Text
haddock_workaround_ :: TrustStoreConfigurationProperty -> ()
certificateAuthorityCertificates :: TrustStoreConfigurationProperty -> ValueList Text
haddock_workaround_ :: ()
certificateAuthorityCertificates :: ValueList Text
..}
    = TrustStoreConfigurationProperty
        {certificateAuthorityCertificates :: ValueList Text
certificateAuthorityCertificates = PropertyType
  "CertificateAuthorityCertificates" TrustStoreConfigurationProperty
ValueList Text
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}