module Stratosphere.QuickSight.Template.AnalysisDefaultsProperty (
        module Exports, AnalysisDefaultsProperty(..),
        mkAnalysisDefaultsProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.QuickSight.Template.DefaultNewSheetConfigurationProperty as Exports
import Stratosphere.ResourceProperties
data AnalysisDefaultsProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-analysisdefaults.html>
    AnalysisDefaultsProperty {AnalysisDefaultsProperty -> ()
haddock_workaround_ :: (),
                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-analysisdefaults.html#cfn-quicksight-template-analysisdefaults-defaultnewsheetconfiguration>
                              AnalysisDefaultsProperty -> DefaultNewSheetConfigurationProperty
defaultNewSheetConfiguration :: DefaultNewSheetConfigurationProperty}
  deriving stock (AnalysisDefaultsProperty -> AnalysisDefaultsProperty -> Bool
(AnalysisDefaultsProperty -> AnalysisDefaultsProperty -> Bool)
-> (AnalysisDefaultsProperty -> AnalysisDefaultsProperty -> Bool)
-> Eq AnalysisDefaultsProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: AnalysisDefaultsProperty -> AnalysisDefaultsProperty -> Bool
== :: AnalysisDefaultsProperty -> AnalysisDefaultsProperty -> Bool
$c/= :: AnalysisDefaultsProperty -> AnalysisDefaultsProperty -> Bool
/= :: AnalysisDefaultsProperty -> AnalysisDefaultsProperty -> Bool
Prelude.Eq, Int -> AnalysisDefaultsProperty -> ShowS
[AnalysisDefaultsProperty] -> ShowS
AnalysisDefaultsProperty -> String
(Int -> AnalysisDefaultsProperty -> ShowS)
-> (AnalysisDefaultsProperty -> String)
-> ([AnalysisDefaultsProperty] -> ShowS)
-> Show AnalysisDefaultsProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> AnalysisDefaultsProperty -> ShowS
showsPrec :: Int -> AnalysisDefaultsProperty -> ShowS
$cshow :: AnalysisDefaultsProperty -> String
show :: AnalysisDefaultsProperty -> String
$cshowList :: [AnalysisDefaultsProperty] -> ShowS
showList :: [AnalysisDefaultsProperty] -> ShowS
Prelude.Show)
mkAnalysisDefaultsProperty ::
  DefaultNewSheetConfigurationProperty -> AnalysisDefaultsProperty
mkAnalysisDefaultsProperty :: DefaultNewSheetConfigurationProperty -> AnalysisDefaultsProperty
mkAnalysisDefaultsProperty DefaultNewSheetConfigurationProperty
defaultNewSheetConfiguration
  = AnalysisDefaultsProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (),
       defaultNewSheetConfiguration :: DefaultNewSheetConfigurationProperty
defaultNewSheetConfiguration = DefaultNewSheetConfigurationProperty
defaultNewSheetConfiguration}
instance ToResourceProperties AnalysisDefaultsProperty where
  toResourceProperties :: AnalysisDefaultsProperty -> ResourceProperties
toResourceProperties AnalysisDefaultsProperty {()
DefaultNewSheetConfigurationProperty
haddock_workaround_ :: AnalysisDefaultsProperty -> ()
defaultNewSheetConfiguration :: AnalysisDefaultsProperty -> DefaultNewSheetConfigurationProperty
haddock_workaround_ :: ()
defaultNewSheetConfiguration :: DefaultNewSheetConfigurationProperty
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::QuickSight::Template.AnalysisDefaults",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"DefaultNewSheetConfiguration"
                         Key -> DefaultNewSheetConfigurationProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= DefaultNewSheetConfigurationProperty
defaultNewSheetConfiguration]}
instance JSON.ToJSON AnalysisDefaultsProperty where
  toJSON :: AnalysisDefaultsProperty -> Value
toJSON AnalysisDefaultsProperty {()
DefaultNewSheetConfigurationProperty
haddock_workaround_ :: AnalysisDefaultsProperty -> ()
defaultNewSheetConfiguration :: AnalysisDefaultsProperty -> DefaultNewSheetConfigurationProperty
haddock_workaround_ :: ()
defaultNewSheetConfiguration :: DefaultNewSheetConfigurationProperty
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"DefaultNewSheetConfiguration"
           Key -> DefaultNewSheetConfigurationProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= DefaultNewSheetConfigurationProperty
defaultNewSheetConfiguration]
instance Property "DefaultNewSheetConfiguration" AnalysisDefaultsProperty where
  type PropertyType "DefaultNewSheetConfiguration" AnalysisDefaultsProperty = DefaultNewSheetConfigurationProperty
  set :: PropertyType
  "DefaultNewSheetConfiguration" AnalysisDefaultsProperty
-> AnalysisDefaultsProperty -> AnalysisDefaultsProperty
set PropertyType
  "DefaultNewSheetConfiguration" AnalysisDefaultsProperty
newValue AnalysisDefaultsProperty {()
DefaultNewSheetConfigurationProperty
haddock_workaround_ :: AnalysisDefaultsProperty -> ()
defaultNewSheetConfiguration :: AnalysisDefaultsProperty -> DefaultNewSheetConfigurationProperty
haddock_workaround_ :: ()
defaultNewSheetConfiguration :: DefaultNewSheetConfigurationProperty
..}
    = AnalysisDefaultsProperty
        {defaultNewSheetConfiguration :: DefaultNewSheetConfigurationProperty
defaultNewSheetConfiguration = PropertyType
  "DefaultNewSheetConfiguration" AnalysisDefaultsProperty
DefaultNewSheetConfigurationProperty
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}