module Stratosphere.QuickSight.Template (
        module Exports, Template(..), mkTemplate
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.QuickSight.Template.ResourcePermissionProperty as Exports
import {-# SOURCE #-} Stratosphere.QuickSight.Template.TemplateSourceEntityProperty as Exports
import {-# SOURCE #-} Stratosphere.QuickSight.Template.TemplateVersionDefinitionProperty as Exports
import {-# SOURCE #-} Stratosphere.QuickSight.Template.ValidationStrategyProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Tag
import Stratosphere.Value
data Template
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html>
    Template {Template -> ()
haddock_workaround_ :: (),
              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-awsaccountid>
              Template -> Value Text
awsAccountId :: (Value Prelude.Text),
              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-definition>
              Template -> Maybe TemplateVersionDefinitionProperty
definition :: (Prelude.Maybe TemplateVersionDefinitionProperty),
              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-name>
              Template -> Maybe (Value Text)
name :: (Prelude.Maybe (Value Prelude.Text)),
              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-permissions>
              Template -> Maybe [ResourcePermissionProperty]
permissions :: (Prelude.Maybe [ResourcePermissionProperty]),
              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-sourceentity>
              Template -> Maybe TemplateSourceEntityProperty
sourceEntity :: (Prelude.Maybe TemplateSourceEntityProperty),
              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-tags>
              Template -> Maybe [Tag]
tags :: (Prelude.Maybe [Tag]),
              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-templateid>
              Template -> Value Text
templateId :: (Value Prelude.Text),
              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-validationstrategy>
              Template -> Maybe ValidationStrategyProperty
validationStrategy :: (Prelude.Maybe ValidationStrategyProperty),
              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html#cfn-quicksight-template-versiondescription>
              Template -> Maybe (Value Text)
versionDescription :: (Prelude.Maybe (Value Prelude.Text))}
  deriving stock (Template -> Template -> Bool
(Template -> Template -> Bool)
-> (Template -> Template -> Bool) -> Eq Template
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Template -> Template -> Bool
== :: Template -> Template -> Bool
$c/= :: Template -> Template -> Bool
/= :: Template -> Template -> Bool
Prelude.Eq, Int -> Template -> ShowS
[Template] -> ShowS
Template -> String
(Int -> Template -> ShowS)
-> (Template -> String) -> ([Template] -> ShowS) -> Show Template
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Template -> ShowS
showsPrec :: Int -> Template -> ShowS
$cshow :: Template -> String
show :: Template -> String
$cshowList :: [Template] -> ShowS
showList :: [Template] -> ShowS
Prelude.Show)
mkTemplate :: Value Prelude.Text -> Value Prelude.Text -> Template
mkTemplate :: Value Text -> Value Text -> Template
mkTemplate Value Text
awsAccountId Value Text
templateId
  = Template
      {haddock_workaround_ :: ()
haddock_workaround_ = (), awsAccountId :: Value Text
awsAccountId = Value Text
awsAccountId,
       templateId :: Value Text
templateId = Value Text
templateId, definition :: Maybe TemplateVersionDefinitionProperty
definition = Maybe TemplateVersionDefinitionProperty
forall a. Maybe a
Prelude.Nothing,
       name :: Maybe (Value Text)
name = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing, permissions :: Maybe [ResourcePermissionProperty]
permissions = Maybe [ResourcePermissionProperty]
forall a. Maybe a
Prelude.Nothing,
       sourceEntity :: Maybe TemplateSourceEntityProperty
sourceEntity = Maybe TemplateSourceEntityProperty
forall a. Maybe a
Prelude.Nothing, tags :: Maybe [Tag]
tags = Maybe [Tag]
forall a. Maybe a
Prelude.Nothing,
       validationStrategy :: Maybe ValidationStrategyProperty
validationStrategy = Maybe ValidationStrategyProperty
forall a. Maybe a
Prelude.Nothing,
       versionDescription :: Maybe (Value Text)
versionDescription = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties Template where
  toResourceProperties :: Template -> ResourceProperties
toResourceProperties Template {Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: Template -> ()
awsAccountId :: Template -> Value Text
definition :: Template -> Maybe TemplateVersionDefinitionProperty
name :: Template -> Maybe (Value Text)
permissions :: Template -> Maybe [ResourcePermissionProperty]
sourceEntity :: Template -> Maybe TemplateSourceEntityProperty
tags :: Template -> Maybe [Tag]
templateId :: Template -> Value Text
validationStrategy :: Template -> Maybe ValidationStrategyProperty
versionDescription :: Template -> Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::QuickSight::Template",
         supportsTags :: Bool
supportsTags = Bool
Prelude.True,
         properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
                        ([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
                           [Key
"AwsAccountId" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
awsAccountId,
                            Key
"TemplateId" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
templateId]
                           ([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
                              [Key -> TemplateVersionDefinitionProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Definition" (TemplateVersionDefinitionProperty -> (Key, Value))
-> Maybe TemplateVersionDefinitionProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe TemplateVersionDefinitionProperty
definition,
                               Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Name" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
name,
                               Key -> [ResourcePermissionProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Permissions" ([ResourcePermissionProperty] -> (Key, Value))
-> Maybe [ResourcePermissionProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [ResourcePermissionProperty]
permissions,
                               Key -> TemplateSourceEntityProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"SourceEntity" (TemplateSourceEntityProperty -> (Key, Value))
-> Maybe TemplateSourceEntityProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe TemplateSourceEntityProperty
sourceEntity,
                               Key -> [Tag] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Tags" ([Tag] -> (Key, Value)) -> Maybe [Tag] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [Tag]
tags,
                               Key -> ValidationStrategyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ValidationStrategy" (ValidationStrategyProperty -> (Key, Value))
-> Maybe ValidationStrategyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ValidationStrategyProperty
validationStrategy,
                               Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"VersionDescription" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
versionDescription]))}
instance JSON.ToJSON Template where
  toJSON :: Template -> Value
toJSON Template {Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: Template -> ()
awsAccountId :: Template -> Value Text
definition :: Template -> Maybe TemplateVersionDefinitionProperty
name :: Template -> Maybe (Value Text)
permissions :: Template -> Maybe [ResourcePermissionProperty]
sourceEntity :: Template -> Maybe TemplateSourceEntityProperty
tags :: Template -> Maybe [Tag]
templateId :: Template -> Value Text
validationStrategy :: Template -> Maybe ValidationStrategyProperty
versionDescription :: Template -> Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
    = [(Key, Value)] -> Value
JSON.object
        ([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
           ([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
              [Key
"AwsAccountId" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
awsAccountId,
               Key
"TemplateId" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
templateId]
              ([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
                 [Key -> TemplateVersionDefinitionProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Definition" (TemplateVersionDefinitionProperty -> (Key, Value))
-> Maybe TemplateVersionDefinitionProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe TemplateVersionDefinitionProperty
definition,
                  Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Name" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
name,
                  Key -> [ResourcePermissionProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Permissions" ([ResourcePermissionProperty] -> (Key, Value))
-> Maybe [ResourcePermissionProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [ResourcePermissionProperty]
permissions,
                  Key -> TemplateSourceEntityProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"SourceEntity" (TemplateSourceEntityProperty -> (Key, Value))
-> Maybe TemplateSourceEntityProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe TemplateSourceEntityProperty
sourceEntity,
                  Key -> [Tag] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Tags" ([Tag] -> (Key, Value)) -> Maybe [Tag] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [Tag]
tags,
                  Key -> ValidationStrategyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ValidationStrategy" (ValidationStrategyProperty -> (Key, Value))
-> Maybe ValidationStrategyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ValidationStrategyProperty
validationStrategy,
                  Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"VersionDescription" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
versionDescription])))
instance Property "AwsAccountId" Template where
  type PropertyType "AwsAccountId" Template = Value Prelude.Text
  set :: PropertyType "AwsAccountId" Template -> Template -> Template
set PropertyType "AwsAccountId" Template
newValue Template {Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: Template -> ()
awsAccountId :: Template -> Value Text
definition :: Template -> Maybe TemplateVersionDefinitionProperty
name :: Template -> Maybe (Value Text)
permissions :: Template -> Maybe [ResourcePermissionProperty]
sourceEntity :: Template -> Maybe TemplateSourceEntityProperty
tags :: Template -> Maybe [Tag]
templateId :: Template -> Value Text
validationStrategy :: Template -> Maybe ValidationStrategyProperty
versionDescription :: Template -> Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..} = Template {awsAccountId :: Value Text
awsAccountId = PropertyType "AwsAccountId" Template
Value Text
newValue, Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: ()
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
haddock_workaround_ :: ()
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
instance Property "Definition" Template where
  type PropertyType "Definition" Template = TemplateVersionDefinitionProperty
  set :: PropertyType "Definition" Template -> Template -> Template
set PropertyType "Definition" Template
newValue Template {Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: Template -> ()
awsAccountId :: Template -> Value Text
definition :: Template -> Maybe TemplateVersionDefinitionProperty
name :: Template -> Maybe (Value Text)
permissions :: Template -> Maybe [ResourcePermissionProperty]
sourceEntity :: Template -> Maybe TemplateSourceEntityProperty
tags :: Template -> Maybe [Tag]
templateId :: Template -> Value Text
validationStrategy :: Template -> Maybe ValidationStrategyProperty
versionDescription :: Template -> Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
    = Template {definition :: Maybe TemplateVersionDefinitionProperty
definition = TemplateVersionDefinitionProperty
-> Maybe TemplateVersionDefinitionProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Definition" Template
TemplateVersionDefinitionProperty
newValue, Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
()
Value Text
haddock_workaround_ :: ()
awsAccountId :: Value Text
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
instance Property "Name" Template where
  type PropertyType "Name" Template = Value Prelude.Text
  set :: PropertyType "Name" Template -> Template -> Template
set PropertyType "Name" Template
newValue Template {Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: Template -> ()
awsAccountId :: Template -> Value Text
definition :: Template -> Maybe TemplateVersionDefinitionProperty
name :: Template -> Maybe (Value Text)
permissions :: Template -> Maybe [ResourcePermissionProperty]
sourceEntity :: Template -> Maybe TemplateSourceEntityProperty
tags :: Template -> Maybe [Tag]
templateId :: Template -> Value Text
validationStrategy :: Template -> Maybe ValidationStrategyProperty
versionDescription :: Template -> Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
    = Template {name :: Maybe (Value Text)
name = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Name" Template
Value Text
newValue, Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
instance Property "Permissions" Template where
  type PropertyType "Permissions" Template = [ResourcePermissionProperty]
  set :: PropertyType "Permissions" Template -> Template -> Template
set PropertyType "Permissions" Template
newValue Template {Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: Template -> ()
awsAccountId :: Template -> Value Text
definition :: Template -> Maybe TemplateVersionDefinitionProperty
name :: Template -> Maybe (Value Text)
permissions :: Template -> Maybe [ResourcePermissionProperty]
sourceEntity :: Template -> Maybe TemplateSourceEntityProperty
tags :: Template -> Maybe [Tag]
templateId :: Template -> Value Text
validationStrategy :: Template -> Maybe ValidationStrategyProperty
versionDescription :: Template -> Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
    = Template {permissions :: Maybe [ResourcePermissionProperty]
permissions = [ResourcePermissionProperty] -> Maybe [ResourcePermissionProperty]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [ResourcePermissionProperty]
PropertyType "Permissions" Template
newValue, Maybe [Tag]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
instance Property "SourceEntity" Template where
  type PropertyType "SourceEntity" Template = TemplateSourceEntityProperty
  set :: PropertyType "SourceEntity" Template -> Template -> Template
set PropertyType "SourceEntity" Template
newValue Template {Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: Template -> ()
awsAccountId :: Template -> Value Text
definition :: Template -> Maybe TemplateVersionDefinitionProperty
name :: Template -> Maybe (Value Text)
permissions :: Template -> Maybe [ResourcePermissionProperty]
sourceEntity :: Template -> Maybe TemplateSourceEntityProperty
tags :: Template -> Maybe [Tag]
templateId :: Template -> Value Text
validationStrategy :: Template -> Maybe ValidationStrategyProperty
versionDescription :: Template -> Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
    = Template {sourceEntity :: Maybe TemplateSourceEntityProperty
sourceEntity = TemplateSourceEntityProperty -> Maybe TemplateSourceEntityProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "SourceEntity" Template
TemplateSourceEntityProperty
newValue, Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
instance Property "Tags" Template where
  type PropertyType "Tags" Template = [Tag]
  set :: PropertyType "Tags" Template -> Template -> Template
set PropertyType "Tags" Template
newValue Template {Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: Template -> ()
awsAccountId :: Template -> Value Text
definition :: Template -> Maybe TemplateVersionDefinitionProperty
name :: Template -> Maybe (Value Text)
permissions :: Template -> Maybe [ResourcePermissionProperty]
sourceEntity :: Template -> Maybe TemplateSourceEntityProperty
tags :: Template -> Maybe [Tag]
templateId :: Template -> Value Text
validationStrategy :: Template -> Maybe ValidationStrategyProperty
versionDescription :: Template -> Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
    = Template {tags :: Maybe [Tag]
tags = [Tag] -> Maybe [Tag]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [Tag]
PropertyType "Tags" Template
newValue, Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
instance Property "TemplateId" Template where
  type PropertyType "TemplateId" Template = Value Prelude.Text
  set :: PropertyType "TemplateId" Template -> Template -> Template
set PropertyType "TemplateId" Template
newValue Template {Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: Template -> ()
awsAccountId :: Template -> Value Text
definition :: Template -> Maybe TemplateVersionDefinitionProperty
name :: Template -> Maybe (Value Text)
permissions :: Template -> Maybe [ResourcePermissionProperty]
sourceEntity :: Template -> Maybe TemplateSourceEntityProperty
tags :: Template -> Maybe [Tag]
templateId :: Template -> Value Text
validationStrategy :: Template -> Maybe ValidationStrategyProperty
versionDescription :: Template -> Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..} = Template {templateId :: Value Text
templateId = PropertyType "TemplateId" Template
Value Text
newValue, Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
instance Property "ValidationStrategy" Template where
  type PropertyType "ValidationStrategy" Template = ValidationStrategyProperty
  set :: PropertyType "ValidationStrategy" Template -> Template -> Template
set PropertyType "ValidationStrategy" Template
newValue Template {Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: Template -> ()
awsAccountId :: Template -> Value Text
definition :: Template -> Maybe TemplateVersionDefinitionProperty
name :: Template -> Maybe (Value Text)
permissions :: Template -> Maybe [ResourcePermissionProperty]
sourceEntity :: Template -> Maybe TemplateSourceEntityProperty
tags :: Template -> Maybe [Tag]
templateId :: Template -> Value Text
validationStrategy :: Template -> Maybe ValidationStrategyProperty
versionDescription :: Template -> Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
    = Template {validationStrategy :: Maybe ValidationStrategyProperty
validationStrategy = ValidationStrategyProperty -> Maybe ValidationStrategyProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "ValidationStrategy" Template
ValidationStrategyProperty
newValue, Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
versionDescription :: Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
versionDescription :: Maybe (Value Text)
..}
instance Property "VersionDescription" Template where
  type PropertyType "VersionDescription" Template = Value Prelude.Text
  set :: PropertyType "VersionDescription" Template -> Template -> Template
set PropertyType "VersionDescription" Template
newValue Template {Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: Template -> ()
awsAccountId :: Template -> Value Text
definition :: Template -> Maybe TemplateVersionDefinitionProperty
name :: Template -> Maybe (Value Text)
permissions :: Template -> Maybe [ResourcePermissionProperty]
sourceEntity :: Template -> Maybe TemplateSourceEntityProperty
tags :: Template -> Maybe [Tag]
templateId :: Template -> Value Text
validationStrategy :: Template -> Maybe ValidationStrategyProperty
versionDescription :: Template -> Maybe (Value Text)
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
versionDescription :: Maybe (Value Text)
..}
    = Template {versionDescription :: Maybe (Value Text)
versionDescription = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "VersionDescription" Template
Value Text
newValue, Maybe [Tag]
Maybe [ResourcePermissionProperty]
Maybe (Value Text)
Maybe TemplateSourceEntityProperty
Maybe ValidationStrategyProperty
Maybe TemplateVersionDefinitionProperty
()
Value Text
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
haddock_workaround_ :: ()
awsAccountId :: Value Text
definition :: Maybe TemplateVersionDefinitionProperty
name :: Maybe (Value Text)
permissions :: Maybe [ResourcePermissionProperty]
sourceEntity :: Maybe TemplateSourceEntityProperty
tags :: Maybe [Tag]
templateId :: Value Text
validationStrategy :: Maybe ValidationStrategyProperty
..}