module Stratosphere.ACMPCA.Certificate.ApiPassthroughProperty ( module Exports, ApiPassthroughProperty(..), mkApiPassthroughProperty ) where import qualified Data.Aeson as JSON import qualified Stratosphere.Prelude as Prelude import Stratosphere.Property import {-# SOURCE #-} Stratosphere.ACMPCA.Certificate.ExtensionsProperty as Exports import {-# SOURCE #-} Stratosphere.ACMPCA.Certificate.SubjectProperty as Exports import Stratosphere.ResourceProperties data ApiPassthroughProperty = -- | See: ApiPassthroughProperty {haddock_workaround_ :: (), -- | See: extensions :: (Prelude.Maybe ExtensionsProperty), -- | See: subject :: (Prelude.Maybe SubjectProperty)} deriving stock (Prelude.Eq, Prelude.Show) mkApiPassthroughProperty :: ApiPassthroughProperty mkApiPassthroughProperty = ApiPassthroughProperty {haddock_workaround_ = (), extensions = Prelude.Nothing, subject = Prelude.Nothing} instance ToResourceProperties ApiPassthroughProperty where toResourceProperties ApiPassthroughProperty {..} = ResourceProperties {awsType = "AWS::ACMPCA::Certificate.ApiPassthrough", supportsTags = Prelude.False, properties = Prelude.fromList (Prelude.catMaybes [(JSON..=) "Extensions" Prelude.<$> extensions, (JSON..=) "Subject" Prelude.<$> subject])} instance JSON.ToJSON ApiPassthroughProperty where toJSON ApiPassthroughProperty {..} = JSON.object (Prelude.fromList (Prelude.catMaybes [(JSON..=) "Extensions" Prelude.<$> extensions, (JSON..=) "Subject" Prelude.<$> subject])) instance Property "Extensions" ApiPassthroughProperty where type PropertyType "Extensions" ApiPassthroughProperty = ExtensionsProperty set newValue ApiPassthroughProperty {..} = ApiPassthroughProperty {extensions = Prelude.pure newValue, ..} instance Property "Subject" ApiPassthroughProperty where type PropertyType "Subject" ApiPassthroughProperty = SubjectProperty set newValue ApiPassthroughProperty {..} = ApiPassthroughProperty {subject = Prelude.pure newValue, ..}