module Stratosphere.IoTAnalytics.Dataset.DeltaTimeSessionWindowConfigurationProperty (
        DeltaTimeSessionWindowConfigurationProperty(..),
        mkDeltaTimeSessionWindowConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data DeltaTimeSessionWindowConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatimesessionwindowconfiguration.html>
    DeltaTimeSessionWindowConfigurationProperty {DeltaTimeSessionWindowConfigurationProperty -> ()
haddock_workaround_ :: (),
                                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-deltatimesessionwindowconfiguration.html#cfn-iotanalytics-dataset-deltatimesessionwindowconfiguration-timeoutinminutes>
                                                 DeltaTimeSessionWindowConfigurationProperty -> Value Integer
timeoutInMinutes :: (Value Prelude.Integer)}
  deriving stock (DeltaTimeSessionWindowConfigurationProperty
-> DeltaTimeSessionWindowConfigurationProperty -> Bool
(DeltaTimeSessionWindowConfigurationProperty
 -> DeltaTimeSessionWindowConfigurationProperty -> Bool)
-> (DeltaTimeSessionWindowConfigurationProperty
    -> DeltaTimeSessionWindowConfigurationProperty -> Bool)
-> Eq DeltaTimeSessionWindowConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DeltaTimeSessionWindowConfigurationProperty
-> DeltaTimeSessionWindowConfigurationProperty -> Bool
== :: DeltaTimeSessionWindowConfigurationProperty
-> DeltaTimeSessionWindowConfigurationProperty -> Bool
$c/= :: DeltaTimeSessionWindowConfigurationProperty
-> DeltaTimeSessionWindowConfigurationProperty -> Bool
/= :: DeltaTimeSessionWindowConfigurationProperty
-> DeltaTimeSessionWindowConfigurationProperty -> Bool
Prelude.Eq, Int -> DeltaTimeSessionWindowConfigurationProperty -> ShowS
[DeltaTimeSessionWindowConfigurationProperty] -> ShowS
DeltaTimeSessionWindowConfigurationProperty -> String
(Int -> DeltaTimeSessionWindowConfigurationProperty -> ShowS)
-> (DeltaTimeSessionWindowConfigurationProperty -> String)
-> ([DeltaTimeSessionWindowConfigurationProperty] -> ShowS)
-> Show DeltaTimeSessionWindowConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DeltaTimeSessionWindowConfigurationProperty -> ShowS
showsPrec :: Int -> DeltaTimeSessionWindowConfigurationProperty -> ShowS
$cshow :: DeltaTimeSessionWindowConfigurationProperty -> String
show :: DeltaTimeSessionWindowConfigurationProperty -> String
$cshowList :: [DeltaTimeSessionWindowConfigurationProperty] -> ShowS
showList :: [DeltaTimeSessionWindowConfigurationProperty] -> ShowS
Prelude.Show)
mkDeltaTimeSessionWindowConfigurationProperty ::
  Value Prelude.Integer
  -> DeltaTimeSessionWindowConfigurationProperty
mkDeltaTimeSessionWindowConfigurationProperty :: Value Integer -> DeltaTimeSessionWindowConfigurationProperty
mkDeltaTimeSessionWindowConfigurationProperty Value Integer
timeoutInMinutes
  = DeltaTimeSessionWindowConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), timeoutInMinutes :: Value Integer
timeoutInMinutes = Value Integer
timeoutInMinutes}
instance ToResourceProperties DeltaTimeSessionWindowConfigurationProperty where
  toResourceProperties :: DeltaTimeSessionWindowConfigurationProperty -> ResourceProperties
toResourceProperties
    DeltaTimeSessionWindowConfigurationProperty {()
Value Integer
haddock_workaround_ :: DeltaTimeSessionWindowConfigurationProperty -> ()
timeoutInMinutes :: DeltaTimeSessionWindowConfigurationProperty -> Value Integer
haddock_workaround_ :: ()
timeoutInMinutes :: Value Integer
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::IoTAnalytics::Dataset.DeltaTimeSessionWindowConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"TimeoutInMinutes" Key -> Value Integer -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Integer
timeoutInMinutes]}
instance JSON.ToJSON DeltaTimeSessionWindowConfigurationProperty where
  toJSON :: DeltaTimeSessionWindowConfigurationProperty -> Value
toJSON DeltaTimeSessionWindowConfigurationProperty {()
Value Integer
haddock_workaround_ :: DeltaTimeSessionWindowConfigurationProperty -> ()
timeoutInMinutes :: DeltaTimeSessionWindowConfigurationProperty -> Value Integer
haddock_workaround_ :: ()
timeoutInMinutes :: Value Integer
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"TimeoutInMinutes" Key -> Value Integer -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Integer
timeoutInMinutes]
instance Property "TimeoutInMinutes" DeltaTimeSessionWindowConfigurationProperty where
  type PropertyType "TimeoutInMinutes" DeltaTimeSessionWindowConfigurationProperty = Value Prelude.Integer
  set :: PropertyType
  "TimeoutInMinutes" DeltaTimeSessionWindowConfigurationProperty
-> DeltaTimeSessionWindowConfigurationProperty
-> DeltaTimeSessionWindowConfigurationProperty
set PropertyType
  "TimeoutInMinutes" DeltaTimeSessionWindowConfigurationProperty
newValue DeltaTimeSessionWindowConfigurationProperty {()
Value Integer
haddock_workaround_ :: DeltaTimeSessionWindowConfigurationProperty -> ()
timeoutInMinutes :: DeltaTimeSessionWindowConfigurationProperty -> Value Integer
haddock_workaround_ :: ()
timeoutInMinutes :: Value Integer
..}
    = DeltaTimeSessionWindowConfigurationProperty
        {timeoutInMinutes :: Value Integer
timeoutInMinutes = PropertyType
  "TimeoutInMinutes" DeltaTimeSessionWindowConfigurationProperty
Value Integer
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}