module Stratosphere.QBusiness.DataAccessor.DataAccessorAuthenticationConfigurationProperty (
        module Exports,
        DataAccessorAuthenticationConfigurationProperty(..),
        mkDataAccessorAuthenticationConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.QBusiness.DataAccessor.DataAccessorIdcTrustedTokenIssuerConfigurationProperty as Exports
import Stratosphere.ResourceProperties
data DataAccessorAuthenticationConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-dataaccessor-dataaccessorauthenticationconfiguration.html>
    DataAccessorAuthenticationConfigurationProperty {DataAccessorAuthenticationConfigurationProperty -> ()
haddock_workaround_ :: (),
                                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-dataaccessor-dataaccessorauthenticationconfiguration.html#cfn-qbusiness-dataaccessor-dataaccessorauthenticationconfiguration-idctrustedtokenissuerconfiguration>
                                                     DataAccessorAuthenticationConfigurationProperty
-> DataAccessorIdcTrustedTokenIssuerConfigurationProperty
idcTrustedTokenIssuerConfiguration :: DataAccessorIdcTrustedTokenIssuerConfigurationProperty}
  deriving stock (DataAccessorAuthenticationConfigurationProperty
-> DataAccessorAuthenticationConfigurationProperty -> Bool
(DataAccessorAuthenticationConfigurationProperty
 -> DataAccessorAuthenticationConfigurationProperty -> Bool)
-> (DataAccessorAuthenticationConfigurationProperty
    -> DataAccessorAuthenticationConfigurationProperty -> Bool)
-> Eq DataAccessorAuthenticationConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DataAccessorAuthenticationConfigurationProperty
-> DataAccessorAuthenticationConfigurationProperty -> Bool
== :: DataAccessorAuthenticationConfigurationProperty
-> DataAccessorAuthenticationConfigurationProperty -> Bool
$c/= :: DataAccessorAuthenticationConfigurationProperty
-> DataAccessorAuthenticationConfigurationProperty -> Bool
/= :: DataAccessorAuthenticationConfigurationProperty
-> DataAccessorAuthenticationConfigurationProperty -> Bool
Prelude.Eq, Int -> DataAccessorAuthenticationConfigurationProperty -> ShowS
[DataAccessorAuthenticationConfigurationProperty] -> ShowS
DataAccessorAuthenticationConfigurationProperty -> String
(Int -> DataAccessorAuthenticationConfigurationProperty -> ShowS)
-> (DataAccessorAuthenticationConfigurationProperty -> String)
-> ([DataAccessorAuthenticationConfigurationProperty] -> ShowS)
-> Show DataAccessorAuthenticationConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DataAccessorAuthenticationConfigurationProperty -> ShowS
showsPrec :: Int -> DataAccessorAuthenticationConfigurationProperty -> ShowS
$cshow :: DataAccessorAuthenticationConfigurationProperty -> String
show :: DataAccessorAuthenticationConfigurationProperty -> String
$cshowList :: [DataAccessorAuthenticationConfigurationProperty] -> ShowS
showList :: [DataAccessorAuthenticationConfigurationProperty] -> ShowS
Prelude.Show)
mkDataAccessorAuthenticationConfigurationProperty ::
  DataAccessorIdcTrustedTokenIssuerConfigurationProperty
  -> DataAccessorAuthenticationConfigurationProperty
mkDataAccessorAuthenticationConfigurationProperty :: DataAccessorIdcTrustedTokenIssuerConfigurationProperty
-> DataAccessorAuthenticationConfigurationProperty
mkDataAccessorAuthenticationConfigurationProperty
  DataAccessorIdcTrustedTokenIssuerConfigurationProperty
idcTrustedTokenIssuerConfiguration
  = DataAccessorAuthenticationConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (),
       idcTrustedTokenIssuerConfiguration :: DataAccessorIdcTrustedTokenIssuerConfigurationProperty
idcTrustedTokenIssuerConfiguration = DataAccessorIdcTrustedTokenIssuerConfigurationProperty
idcTrustedTokenIssuerConfiguration}
instance ToResourceProperties DataAccessorAuthenticationConfigurationProperty where
  toResourceProperties :: DataAccessorAuthenticationConfigurationProperty
-> ResourceProperties
toResourceProperties
    DataAccessorAuthenticationConfigurationProperty {()
DataAccessorIdcTrustedTokenIssuerConfigurationProperty
haddock_workaround_ :: DataAccessorAuthenticationConfigurationProperty -> ()
idcTrustedTokenIssuerConfiguration :: DataAccessorAuthenticationConfigurationProperty
-> DataAccessorIdcTrustedTokenIssuerConfigurationProperty
haddock_workaround_ :: ()
idcTrustedTokenIssuerConfiguration :: DataAccessorIdcTrustedTokenIssuerConfigurationProperty
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::QBusiness::DataAccessor.DataAccessorAuthenticationConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"IdcTrustedTokenIssuerConfiguration"
                         Key
-> DataAccessorIdcTrustedTokenIssuerConfigurationProperty
-> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= DataAccessorIdcTrustedTokenIssuerConfigurationProperty
idcTrustedTokenIssuerConfiguration]}
instance JSON.ToJSON DataAccessorAuthenticationConfigurationProperty where
  toJSON :: DataAccessorAuthenticationConfigurationProperty -> Value
toJSON DataAccessorAuthenticationConfigurationProperty {()
DataAccessorIdcTrustedTokenIssuerConfigurationProperty
haddock_workaround_ :: DataAccessorAuthenticationConfigurationProperty -> ()
idcTrustedTokenIssuerConfiguration :: DataAccessorAuthenticationConfigurationProperty
-> DataAccessorIdcTrustedTokenIssuerConfigurationProperty
haddock_workaround_ :: ()
idcTrustedTokenIssuerConfiguration :: DataAccessorIdcTrustedTokenIssuerConfigurationProperty
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"IdcTrustedTokenIssuerConfiguration"
           Key
-> DataAccessorIdcTrustedTokenIssuerConfigurationProperty
-> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= DataAccessorIdcTrustedTokenIssuerConfigurationProperty
idcTrustedTokenIssuerConfiguration]
instance Property "IdcTrustedTokenIssuerConfiguration" DataAccessorAuthenticationConfigurationProperty where
  type PropertyType "IdcTrustedTokenIssuerConfiguration" DataAccessorAuthenticationConfigurationProperty = DataAccessorIdcTrustedTokenIssuerConfigurationProperty
  set :: PropertyType
  "IdcTrustedTokenIssuerConfiguration"
  DataAccessorAuthenticationConfigurationProperty
-> DataAccessorAuthenticationConfigurationProperty
-> DataAccessorAuthenticationConfigurationProperty
set PropertyType
  "IdcTrustedTokenIssuerConfiguration"
  DataAccessorAuthenticationConfigurationProperty
newValue DataAccessorAuthenticationConfigurationProperty {()
DataAccessorIdcTrustedTokenIssuerConfigurationProperty
haddock_workaround_ :: DataAccessorAuthenticationConfigurationProperty -> ()
idcTrustedTokenIssuerConfiguration :: DataAccessorAuthenticationConfigurationProperty
-> DataAccessorIdcTrustedTokenIssuerConfigurationProperty
haddock_workaround_ :: ()
idcTrustedTokenIssuerConfiguration :: DataAccessorIdcTrustedTokenIssuerConfigurationProperty
..}
    = DataAccessorAuthenticationConfigurationProperty
        {idcTrustedTokenIssuerConfiguration :: DataAccessorIdcTrustedTokenIssuerConfigurationProperty
idcTrustedTokenIssuerConfiguration = PropertyType
  "IdcTrustedTokenIssuerConfiguration"
  DataAccessorAuthenticationConfigurationProperty
DataAccessorIdcTrustedTokenIssuerConfigurationProperty
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}