module Stratosphere.ACMPCA.CertificateAuthority.CrlDistributionPointExtensionConfigurationProperty (
        CrlDistributionPointExtensionConfigurationProperty(..),
        mkCrlDistributionPointExtensionConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data CrlDistributionPointExtensionConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crldistributionpointextensionconfiguration.html>
    CrlDistributionPointExtensionConfigurationProperty {CrlDistributionPointExtensionConfigurationProperty -> ()
haddock_workaround_ :: (),
                                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crldistributionpointextensionconfiguration.html#cfn-acmpca-certificateauthority-crldistributionpointextensionconfiguration-omitextension>
                                                        CrlDistributionPointExtensionConfigurationProperty -> Value Bool
omitExtension :: (Value Prelude.Bool)}
  deriving stock (CrlDistributionPointExtensionConfigurationProperty
-> CrlDistributionPointExtensionConfigurationProperty -> Bool
(CrlDistributionPointExtensionConfigurationProperty
 -> CrlDistributionPointExtensionConfigurationProperty -> Bool)
-> (CrlDistributionPointExtensionConfigurationProperty
    -> CrlDistributionPointExtensionConfigurationProperty -> Bool)
-> Eq CrlDistributionPointExtensionConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: CrlDistributionPointExtensionConfigurationProperty
-> CrlDistributionPointExtensionConfigurationProperty -> Bool
== :: CrlDistributionPointExtensionConfigurationProperty
-> CrlDistributionPointExtensionConfigurationProperty -> Bool
$c/= :: CrlDistributionPointExtensionConfigurationProperty
-> CrlDistributionPointExtensionConfigurationProperty -> Bool
/= :: CrlDistributionPointExtensionConfigurationProperty
-> CrlDistributionPointExtensionConfigurationProperty -> Bool
Prelude.Eq, Int -> CrlDistributionPointExtensionConfigurationProperty -> ShowS
[CrlDistributionPointExtensionConfigurationProperty] -> ShowS
CrlDistributionPointExtensionConfigurationProperty -> String
(Int
 -> CrlDistributionPointExtensionConfigurationProperty -> ShowS)
-> (CrlDistributionPointExtensionConfigurationProperty -> String)
-> ([CrlDistributionPointExtensionConfigurationProperty] -> ShowS)
-> Show CrlDistributionPointExtensionConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CrlDistributionPointExtensionConfigurationProperty -> ShowS
showsPrec :: Int -> CrlDistributionPointExtensionConfigurationProperty -> ShowS
$cshow :: CrlDistributionPointExtensionConfigurationProperty -> String
show :: CrlDistributionPointExtensionConfigurationProperty -> String
$cshowList :: [CrlDistributionPointExtensionConfigurationProperty] -> ShowS
showList :: [CrlDistributionPointExtensionConfigurationProperty] -> ShowS
Prelude.Show)
mkCrlDistributionPointExtensionConfigurationProperty ::
  Value Prelude.Bool
  -> CrlDistributionPointExtensionConfigurationProperty
mkCrlDistributionPointExtensionConfigurationProperty :: Value Bool -> CrlDistributionPointExtensionConfigurationProperty
mkCrlDistributionPointExtensionConfigurationProperty Value Bool
omitExtension
  = CrlDistributionPointExtensionConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), omitExtension :: Value Bool
omitExtension = Value Bool
omitExtension}
instance ToResourceProperties CrlDistributionPointExtensionConfigurationProperty where
  toResourceProperties :: CrlDistributionPointExtensionConfigurationProperty
-> ResourceProperties
toResourceProperties
    CrlDistributionPointExtensionConfigurationProperty {()
Value Bool
haddock_workaround_ :: CrlDistributionPointExtensionConfigurationProperty -> ()
omitExtension :: CrlDistributionPointExtensionConfigurationProperty -> Value Bool
haddock_workaround_ :: ()
omitExtension :: Value Bool
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::ACMPCA::CertificateAuthority.CrlDistributionPointExtensionConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"OmitExtension" 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
omitExtension]}
instance JSON.ToJSON CrlDistributionPointExtensionConfigurationProperty where
  toJSON :: CrlDistributionPointExtensionConfigurationProperty -> Value
toJSON CrlDistributionPointExtensionConfigurationProperty {()
Value Bool
haddock_workaround_ :: CrlDistributionPointExtensionConfigurationProperty -> ()
omitExtension :: CrlDistributionPointExtensionConfigurationProperty -> Value Bool
haddock_workaround_ :: ()
omitExtension :: Value Bool
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"OmitExtension" 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
omitExtension]
instance Property "OmitExtension" CrlDistributionPointExtensionConfigurationProperty where
  type PropertyType "OmitExtension" CrlDistributionPointExtensionConfigurationProperty = Value Prelude.Bool
  set :: PropertyType
  "OmitExtension" CrlDistributionPointExtensionConfigurationProperty
-> CrlDistributionPointExtensionConfigurationProperty
-> CrlDistributionPointExtensionConfigurationProperty
set
    PropertyType
  "OmitExtension" CrlDistributionPointExtensionConfigurationProperty
newValue
    CrlDistributionPointExtensionConfigurationProperty {()
Value Bool
haddock_workaround_ :: CrlDistributionPointExtensionConfigurationProperty -> ()
omitExtension :: CrlDistributionPointExtensionConfigurationProperty -> Value Bool
haddock_workaround_ :: ()
omitExtension :: Value Bool
..}
    = CrlDistributionPointExtensionConfigurationProperty
        {omitExtension :: Value Bool
omitExtension = PropertyType
  "OmitExtension" CrlDistributionPointExtensionConfigurationProperty
Value Bool
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}