module Stratosphere.ASK.Skill ( module Exports, Skill(..), mkSkill ) where import qualified Data.Aeson as JSON import qualified Stratosphere.Prelude as Prelude import Stratosphere.Property import {-# SOURCE #-} Stratosphere.ASK.Skill.AuthenticationConfigurationProperty as Exports import {-# SOURCE #-} Stratosphere.ASK.Skill.SkillPackageProperty as Exports import Stratosphere.ResourceProperties import Stratosphere.Value data Skill = -- | See: Skill {haddock_workaround_ :: (), -- | See: authenticationConfiguration :: AuthenticationConfigurationProperty, -- | See: skillPackage :: SkillPackageProperty, -- | See: vendorId :: (Value Prelude.Text)} deriving stock (Prelude.Eq, Prelude.Show) mkSkill :: AuthenticationConfigurationProperty -> SkillPackageProperty -> Value Prelude.Text -> Skill mkSkill authenticationConfiguration skillPackage vendorId = Skill {haddock_workaround_ = (), authenticationConfiguration = authenticationConfiguration, skillPackage = skillPackage, vendorId = vendorId} instance ToResourceProperties Skill where toResourceProperties Skill {..} = ResourceProperties {awsType = "Alexa::ASK::Skill", supportsTags = Prelude.False, properties = ["AuthenticationConfiguration" JSON..= authenticationConfiguration, "SkillPackage" JSON..= skillPackage, "VendorId" JSON..= vendorId]} instance JSON.ToJSON Skill where toJSON Skill {..} = JSON.object ["AuthenticationConfiguration" JSON..= authenticationConfiguration, "SkillPackage" JSON..= skillPackage, "VendorId" JSON..= vendorId] instance Property "AuthenticationConfiguration" Skill where type PropertyType "AuthenticationConfiguration" Skill = AuthenticationConfigurationProperty set newValue Skill {..} = Skill {authenticationConfiguration = newValue, ..} instance Property "SkillPackage" Skill where type PropertyType "SkillPackage" Skill = SkillPackageProperty set newValue Skill {..} = Skill {skillPackage = newValue, ..} instance Property "VendorId" Skill where type PropertyType "VendorId" Skill = Value Prelude.Text set newValue Skill {..} = Skill {vendorId = newValue, ..}