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