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