stratosphere-budgets (empty) → 1.0.0
raw patch · 46 files changed
+1693/−0 lines, 46 filesdep +aesondep +basedep +stratosphere
Dependencies added: aeson, base, stratosphere
Files
- LICENSE.md +20/−0
- gen/Stratosphere/Budgets/Budget.hs +58/−0
- gen/Stratosphere/Budgets/Budget/AutoAdjustDataProperty.hs +51/−0
- gen/Stratosphere/Budgets/Budget/AutoAdjustDataProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/BudgetDataProperty.hs +137/−0
- gen/Stratosphere/Budgets/Budget/BudgetDataProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/CostCategoryValuesProperty.hs +54/−0
- gen/Stratosphere/Budgets/Budget/CostCategoryValuesProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/CostTypesProperty.hs +128/−0
- gen/Stratosphere/Budgets/Budget/CostTypesProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/ExpressionDimensionValuesProperty.hs +58/−0
- gen/Stratosphere/Budgets/Budget/ExpressionDimensionValuesProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/ExpressionProperty.hs +79/−0
- gen/Stratosphere/Budgets/Budget/ExpressionProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/HistoricalOptionsProperty.hs +35/−0
- gen/Stratosphere/Budgets/Budget/HistoricalOptionsProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/NotificationProperty.hs +70/−0
- gen/Stratosphere/Budgets/Budget/NotificationProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/NotificationWithSubscribersProperty.hs +45/−0
- gen/Stratosphere/Budgets/Budget/NotificationWithSubscribersProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/ResourceTagProperty.hs +44/−0
- gen/Stratosphere/Budgets/Budget/ResourceTagProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/SpendProperty.hs +38/−0
- gen/Stratosphere/Budgets/Budget/SpendProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/SubscriberProperty.hs +42/−0
- gen/Stratosphere/Budgets/Budget/SubscriberProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/TagValuesProperty.hs +53/−0
- gen/Stratosphere/Budgets/Budget/TagValuesProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/Budget/TimePeriodProperty.hs +45/−0
- gen/Stratosphere/Budgets/Budget/TimePeriodProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/BudgetsAction.hs +121/−0
- gen/Stratosphere/Budgets/BudgetsAction/ActionThresholdProperty.hs +39/−0
- gen/Stratosphere/Budgets/BudgetsAction/ActionThresholdProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/BudgetsAction/DefinitionProperty.hs +59/−0
- gen/Stratosphere/Budgets/BudgetsAction/DefinitionProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/BudgetsAction/IamActionDefinitionProperty.hs +65/−0
- gen/Stratosphere/Budgets/BudgetsAction/IamActionDefinitionProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/BudgetsAction/ResourceTagProperty.hs +38/−0
- gen/Stratosphere/Budgets/BudgetsAction/ResourceTagProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/BudgetsAction/ScpActionDefinitionProperty.hs +42/−0
- gen/Stratosphere/Budgets/BudgetsAction/ScpActionDefinitionProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/BudgetsAction/SsmActionDefinitionProperty.hs +50/−0
- gen/Stratosphere/Budgets/BudgetsAction/SsmActionDefinitionProperty.hs-boot +9/−0
- gen/Stratosphere/Budgets/BudgetsAction/SubscriberProperty.hs +38/−0
- gen/Stratosphere/Budgets/BudgetsAction/SubscriberProperty.hs-boot +9/−0
- stratosphere-budgets.cabal +95/−0
+ LICENSE.md view
@@ -0,0 +1,20 @@+Copyright (c) 2016 David Reaver+Copyright (c) 2022 Markus Schirp++Permission is hereby granted, free of charge, to any person obtaining a copy of+this software and associated documentation files (the "Software"), to deal in+the Software without restriction, including without limitation the rights to+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies+of the Software, and to permit persons to whom the Software is furnished to do+so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.
+ gen/Stratosphere/Budgets/Budget.hs view
@@ -0,0 +1,58 @@+module Stratosphere.Budgets.Budget (+ module Exports, Budget(..), mkBudget+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.Budgets.Budget.BudgetDataProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.Budget.NotificationWithSubscribersProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.Budget.ResourceTagProperty as Exports+import Stratosphere.ResourceProperties+data Budget+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html>+ Budget {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-budget>+ budget :: BudgetDataProperty,+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-notificationswithsubscribers>+ notificationsWithSubscribers :: (Prelude.Maybe [NotificationWithSubscribersProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-resourcetags>+ resourceTags :: (Prelude.Maybe [ResourceTagProperty])}+ deriving stock (Prelude.Eq, Prelude.Show)+mkBudget :: BudgetDataProperty -> Budget+mkBudget budget+ = Budget+ {haddock_workaround_ = (), budget = budget,+ notificationsWithSubscribers = Prelude.Nothing,+ resourceTags = Prelude.Nothing}+instance ToResourceProperties Budget where+ toResourceProperties Budget {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget", supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["Budget" JSON..= budget]+ (Prelude.catMaybes+ [(JSON..=) "NotificationsWithSubscribers"+ Prelude.<$> notificationsWithSubscribers,+ (JSON..=) "ResourceTags" Prelude.<$> resourceTags]))}+instance JSON.ToJSON Budget where+ toJSON Budget {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["Budget" JSON..= budget]+ (Prelude.catMaybes+ [(JSON..=) "NotificationsWithSubscribers"+ Prelude.<$> notificationsWithSubscribers,+ (JSON..=) "ResourceTags" Prelude.<$> resourceTags])))+instance Property "Budget" Budget where+ type PropertyType "Budget" Budget = BudgetDataProperty+ set newValue Budget {..} = Budget {budget = newValue, ..}+instance Property "NotificationsWithSubscribers" Budget where+ type PropertyType "NotificationsWithSubscribers" Budget = [NotificationWithSubscribersProperty]+ set newValue Budget {..}+ = Budget {notificationsWithSubscribers = Prelude.pure newValue, ..}+instance Property "ResourceTags" Budget where+ type PropertyType "ResourceTags" Budget = [ResourceTagProperty]+ set newValue Budget {..}+ = Budget {resourceTags = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/Budget/AutoAdjustDataProperty.hs view
@@ -0,0 +1,51 @@+module Stratosphere.Budgets.Budget.AutoAdjustDataProperty (+ module Exports, AutoAdjustDataProperty(..),+ mkAutoAdjustDataProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.Budgets.Budget.HistoricalOptionsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data AutoAdjustDataProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-autoadjustdata.html>+ AutoAdjustDataProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-autoadjustdata.html#cfn-budgets-budget-autoadjustdata-autoadjusttype>+ autoAdjustType :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-autoadjustdata.html#cfn-budgets-budget-autoadjustdata-historicaloptions>+ historicalOptions :: (Prelude.Maybe HistoricalOptionsProperty)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkAutoAdjustDataProperty ::+ Value Prelude.Text -> AutoAdjustDataProperty+mkAutoAdjustDataProperty autoAdjustType+ = AutoAdjustDataProperty+ {haddock_workaround_ = (), autoAdjustType = autoAdjustType,+ historicalOptions = Prelude.Nothing}+instance ToResourceProperties AutoAdjustDataProperty where+ toResourceProperties AutoAdjustDataProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.AutoAdjustData",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["AutoAdjustType" JSON..= autoAdjustType]+ (Prelude.catMaybes+ [(JSON..=) "HistoricalOptions" Prelude.<$> historicalOptions]))}+instance JSON.ToJSON AutoAdjustDataProperty where+ toJSON AutoAdjustDataProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["AutoAdjustType" JSON..= autoAdjustType]+ (Prelude.catMaybes+ [(JSON..=) "HistoricalOptions" Prelude.<$> historicalOptions])))+instance Property "AutoAdjustType" AutoAdjustDataProperty where+ type PropertyType "AutoAdjustType" AutoAdjustDataProperty = Value Prelude.Text+ set newValue AutoAdjustDataProperty {..}+ = AutoAdjustDataProperty {autoAdjustType = newValue, ..}+instance Property "HistoricalOptions" AutoAdjustDataProperty where+ type PropertyType "HistoricalOptions" AutoAdjustDataProperty = HistoricalOptionsProperty+ set newValue AutoAdjustDataProperty {..}+ = AutoAdjustDataProperty+ {historicalOptions = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/Budget/AutoAdjustDataProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.AutoAdjustDataProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data AutoAdjustDataProperty :: Prelude.Type+instance ToResourceProperties AutoAdjustDataProperty+instance Prelude.Eq AutoAdjustDataProperty+instance Prelude.Show AutoAdjustDataProperty+instance JSON.ToJSON AutoAdjustDataProperty
+ gen/Stratosphere/Budgets/Budget/BudgetDataProperty.hs view
@@ -0,0 +1,137 @@+module Stratosphere.Budgets.Budget.BudgetDataProperty (+ module Exports, BudgetDataProperty(..), mkBudgetDataProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.Budgets.Budget.AutoAdjustDataProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.Budget.CostTypesProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.Budget.ExpressionProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.Budget.SpendProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.Budget.TimePeriodProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data BudgetDataProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html>+ BudgetDataProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-autoadjustdata>+ autoAdjustData :: (Prelude.Maybe AutoAdjustDataProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-billingviewarn>+ billingViewArn :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-budgetlimit>+ budgetLimit :: (Prelude.Maybe SpendProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-budgetname>+ budgetName :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-budgettype>+ budgetType :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-costfilters>+ costFilters :: (Prelude.Maybe JSON.Object),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-costtypes>+ costTypes :: (Prelude.Maybe CostTypesProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-filterexpression>+ filterExpression :: (Prelude.Maybe ExpressionProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-metrics>+ metrics :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-plannedbudgetlimits>+ plannedBudgetLimits :: (Prelude.Maybe JSON.Object),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-timeperiod>+ timePeriod :: (Prelude.Maybe TimePeriodProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html#cfn-budgets-budget-budgetdata-timeunit>+ timeUnit :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkBudgetDataProperty ::+ Value Prelude.Text -> Value Prelude.Text -> BudgetDataProperty+mkBudgetDataProperty budgetType timeUnit+ = BudgetDataProperty+ {haddock_workaround_ = (), budgetType = budgetType,+ timeUnit = timeUnit, autoAdjustData = Prelude.Nothing,+ billingViewArn = Prelude.Nothing, budgetLimit = Prelude.Nothing,+ budgetName = Prelude.Nothing, costFilters = Prelude.Nothing,+ costTypes = Prelude.Nothing, filterExpression = Prelude.Nothing,+ metrics = Prelude.Nothing, plannedBudgetLimits = Prelude.Nothing,+ timePeriod = Prelude.Nothing}+instance ToResourceProperties BudgetDataProperty where+ toResourceProperties BudgetDataProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.BudgetData",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["BudgetType" JSON..= budgetType, "TimeUnit" JSON..= timeUnit]+ (Prelude.catMaybes+ [(JSON..=) "AutoAdjustData" Prelude.<$> autoAdjustData,+ (JSON..=) "BillingViewArn" Prelude.<$> billingViewArn,+ (JSON..=) "BudgetLimit" Prelude.<$> budgetLimit,+ (JSON..=) "BudgetName" Prelude.<$> budgetName,+ (JSON..=) "CostFilters" Prelude.<$> costFilters,+ (JSON..=) "CostTypes" Prelude.<$> costTypes,+ (JSON..=) "FilterExpression" Prelude.<$> filterExpression,+ (JSON..=) "Metrics" Prelude.<$> metrics,+ (JSON..=) "PlannedBudgetLimits" Prelude.<$> plannedBudgetLimits,+ (JSON..=) "TimePeriod" Prelude.<$> timePeriod]))}+instance JSON.ToJSON BudgetDataProperty where+ toJSON BudgetDataProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["BudgetType" JSON..= budgetType, "TimeUnit" JSON..= timeUnit]+ (Prelude.catMaybes+ [(JSON..=) "AutoAdjustData" Prelude.<$> autoAdjustData,+ (JSON..=) "BillingViewArn" Prelude.<$> billingViewArn,+ (JSON..=) "BudgetLimit" Prelude.<$> budgetLimit,+ (JSON..=) "BudgetName" Prelude.<$> budgetName,+ (JSON..=) "CostFilters" Prelude.<$> costFilters,+ (JSON..=) "CostTypes" Prelude.<$> costTypes,+ (JSON..=) "FilterExpression" Prelude.<$> filterExpression,+ (JSON..=) "Metrics" Prelude.<$> metrics,+ (JSON..=) "PlannedBudgetLimits" Prelude.<$> plannedBudgetLimits,+ (JSON..=) "TimePeriod" Prelude.<$> timePeriod])))+instance Property "AutoAdjustData" BudgetDataProperty where+ type PropertyType "AutoAdjustData" BudgetDataProperty = AutoAdjustDataProperty+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty {autoAdjustData = Prelude.pure newValue, ..}+instance Property "BillingViewArn" BudgetDataProperty where+ type PropertyType "BillingViewArn" BudgetDataProperty = Value Prelude.Text+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty {billingViewArn = Prelude.pure newValue, ..}+instance Property "BudgetLimit" BudgetDataProperty where+ type PropertyType "BudgetLimit" BudgetDataProperty = SpendProperty+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty {budgetLimit = Prelude.pure newValue, ..}+instance Property "BudgetName" BudgetDataProperty where+ type PropertyType "BudgetName" BudgetDataProperty = Value Prelude.Text+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty {budgetName = Prelude.pure newValue, ..}+instance Property "BudgetType" BudgetDataProperty where+ type PropertyType "BudgetType" BudgetDataProperty = Value Prelude.Text+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty {budgetType = newValue, ..}+instance Property "CostFilters" BudgetDataProperty where+ type PropertyType "CostFilters" BudgetDataProperty = JSON.Object+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty {costFilters = Prelude.pure newValue, ..}+instance Property "CostTypes" BudgetDataProperty where+ type PropertyType "CostTypes" BudgetDataProperty = CostTypesProperty+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty {costTypes = Prelude.pure newValue, ..}+instance Property "FilterExpression" BudgetDataProperty where+ type PropertyType "FilterExpression" BudgetDataProperty = ExpressionProperty+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty {filterExpression = Prelude.pure newValue, ..}+instance Property "Metrics" BudgetDataProperty where+ type PropertyType "Metrics" BudgetDataProperty = ValueList Prelude.Text+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty {metrics = Prelude.pure newValue, ..}+instance Property "PlannedBudgetLimits" BudgetDataProperty where+ type PropertyType "PlannedBudgetLimits" BudgetDataProperty = JSON.Object+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty+ {plannedBudgetLimits = Prelude.pure newValue, ..}+instance Property "TimePeriod" BudgetDataProperty where+ type PropertyType "TimePeriod" BudgetDataProperty = TimePeriodProperty+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty {timePeriod = Prelude.pure newValue, ..}+instance Property "TimeUnit" BudgetDataProperty where+ type PropertyType "TimeUnit" BudgetDataProperty = Value Prelude.Text+ set newValue BudgetDataProperty {..}+ = BudgetDataProperty {timeUnit = newValue, ..}
+ gen/Stratosphere/Budgets/Budget/BudgetDataProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.BudgetDataProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data BudgetDataProperty :: Prelude.Type+instance ToResourceProperties BudgetDataProperty+instance Prelude.Eq BudgetDataProperty+instance Prelude.Show BudgetDataProperty+instance JSON.ToJSON BudgetDataProperty
+ gen/Stratosphere/Budgets/Budget/CostCategoryValuesProperty.hs view
@@ -0,0 +1,54 @@+module Stratosphere.Budgets.Budget.CostCategoryValuesProperty (+ CostCategoryValuesProperty(..), mkCostCategoryValuesProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CostCategoryValuesProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costcategoryvalues.html>+ CostCategoryValuesProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costcategoryvalues.html#cfn-budgets-budget-costcategoryvalues-key>+ key :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costcategoryvalues.html#cfn-budgets-budget-costcategoryvalues-matchoptions>+ matchOptions :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costcategoryvalues.html#cfn-budgets-budget-costcategoryvalues-values>+ values :: (Prelude.Maybe (ValueList Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkCostCategoryValuesProperty :: CostCategoryValuesProperty+mkCostCategoryValuesProperty+ = CostCategoryValuesProperty+ {haddock_workaround_ = (), key = Prelude.Nothing,+ matchOptions = Prelude.Nothing, values = Prelude.Nothing}+instance ToResourceProperties CostCategoryValuesProperty where+ toResourceProperties CostCategoryValuesProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.CostCategoryValues",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Key" Prelude.<$> key,+ (JSON..=) "MatchOptions" Prelude.<$> matchOptions,+ (JSON..=) "Values" Prelude.<$> values])}+instance JSON.ToJSON CostCategoryValuesProperty where+ toJSON CostCategoryValuesProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Key" Prelude.<$> key,+ (JSON..=) "MatchOptions" Prelude.<$> matchOptions,+ (JSON..=) "Values" Prelude.<$> values]))+instance Property "Key" CostCategoryValuesProperty where+ type PropertyType "Key" CostCategoryValuesProperty = Value Prelude.Text+ set newValue CostCategoryValuesProperty {..}+ = CostCategoryValuesProperty {key = Prelude.pure newValue, ..}+instance Property "MatchOptions" CostCategoryValuesProperty where+ type PropertyType "MatchOptions" CostCategoryValuesProperty = ValueList Prelude.Text+ set newValue CostCategoryValuesProperty {..}+ = CostCategoryValuesProperty+ {matchOptions = Prelude.pure newValue, ..}+instance Property "Values" CostCategoryValuesProperty where+ type PropertyType "Values" CostCategoryValuesProperty = ValueList Prelude.Text+ set newValue CostCategoryValuesProperty {..}+ = CostCategoryValuesProperty {values = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/Budget/CostCategoryValuesProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.CostCategoryValuesProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CostCategoryValuesProperty :: Prelude.Type+instance ToResourceProperties CostCategoryValuesProperty+instance Prelude.Eq CostCategoryValuesProperty+instance Prelude.Show CostCategoryValuesProperty+instance JSON.ToJSON CostCategoryValuesProperty
+ gen/Stratosphere/Budgets/Budget/CostTypesProperty.hs view
@@ -0,0 +1,128 @@+module Stratosphere.Budgets.Budget.CostTypesProperty (+ CostTypesProperty(..), mkCostTypesProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CostTypesProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html>+ CostTypesProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includecredit>+ includeCredit :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includediscount>+ includeDiscount :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includeothersubscription>+ includeOtherSubscription :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includerecurring>+ includeRecurring :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includerefund>+ includeRefund :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includesubscription>+ includeSubscription :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includesupport>+ includeSupport :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includetax>+ includeTax :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-includeupfront>+ includeUpfront :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-useamortized>+ useAmortized :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html#cfn-budgets-budget-costtypes-useblended>+ useBlended :: (Prelude.Maybe (Value Prelude.Bool))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkCostTypesProperty :: CostTypesProperty+mkCostTypesProperty+ = CostTypesProperty+ {haddock_workaround_ = (), includeCredit = Prelude.Nothing,+ includeDiscount = Prelude.Nothing,+ includeOtherSubscription = Prelude.Nothing,+ includeRecurring = Prelude.Nothing,+ includeRefund = Prelude.Nothing,+ includeSubscription = Prelude.Nothing,+ includeSupport = Prelude.Nothing, includeTax = Prelude.Nothing,+ includeUpfront = Prelude.Nothing, useAmortized = Prelude.Nothing,+ useBlended = Prelude.Nothing}+instance ToResourceProperties CostTypesProperty where+ toResourceProperties CostTypesProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.CostTypes",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "IncludeCredit" Prelude.<$> includeCredit,+ (JSON..=) "IncludeDiscount" Prelude.<$> includeDiscount,+ (JSON..=) "IncludeOtherSubscription"+ Prelude.<$> includeOtherSubscription,+ (JSON..=) "IncludeRecurring" Prelude.<$> includeRecurring,+ (JSON..=) "IncludeRefund" Prelude.<$> includeRefund,+ (JSON..=) "IncludeSubscription" Prelude.<$> includeSubscription,+ (JSON..=) "IncludeSupport" Prelude.<$> includeSupport,+ (JSON..=) "IncludeTax" Prelude.<$> includeTax,+ (JSON..=) "IncludeUpfront" Prelude.<$> includeUpfront,+ (JSON..=) "UseAmortized" Prelude.<$> useAmortized,+ (JSON..=) "UseBlended" Prelude.<$> useBlended])}+instance JSON.ToJSON CostTypesProperty where+ toJSON CostTypesProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "IncludeCredit" Prelude.<$> includeCredit,+ (JSON..=) "IncludeDiscount" Prelude.<$> includeDiscount,+ (JSON..=) "IncludeOtherSubscription"+ Prelude.<$> includeOtherSubscription,+ (JSON..=) "IncludeRecurring" Prelude.<$> includeRecurring,+ (JSON..=) "IncludeRefund" Prelude.<$> includeRefund,+ (JSON..=) "IncludeSubscription" Prelude.<$> includeSubscription,+ (JSON..=) "IncludeSupport" Prelude.<$> includeSupport,+ (JSON..=) "IncludeTax" Prelude.<$> includeTax,+ (JSON..=) "IncludeUpfront" Prelude.<$> includeUpfront,+ (JSON..=) "UseAmortized" Prelude.<$> useAmortized,+ (JSON..=) "UseBlended" Prelude.<$> useBlended]))+instance Property "IncludeCredit" CostTypesProperty where+ type PropertyType "IncludeCredit" CostTypesProperty = Value Prelude.Bool+ set newValue CostTypesProperty {..}+ = CostTypesProperty {includeCredit = Prelude.pure newValue, ..}+instance Property "IncludeDiscount" CostTypesProperty where+ type PropertyType "IncludeDiscount" CostTypesProperty = Value Prelude.Bool+ set newValue CostTypesProperty {..}+ = CostTypesProperty {includeDiscount = Prelude.pure newValue, ..}+instance Property "IncludeOtherSubscription" CostTypesProperty where+ type PropertyType "IncludeOtherSubscription" CostTypesProperty = Value Prelude.Bool+ set newValue CostTypesProperty {..}+ = CostTypesProperty+ {includeOtherSubscription = Prelude.pure newValue, ..}+instance Property "IncludeRecurring" CostTypesProperty where+ type PropertyType "IncludeRecurring" CostTypesProperty = Value Prelude.Bool+ set newValue CostTypesProperty {..}+ = CostTypesProperty {includeRecurring = Prelude.pure newValue, ..}+instance Property "IncludeRefund" CostTypesProperty where+ type PropertyType "IncludeRefund" CostTypesProperty = Value Prelude.Bool+ set newValue CostTypesProperty {..}+ = CostTypesProperty {includeRefund = Prelude.pure newValue, ..}+instance Property "IncludeSubscription" CostTypesProperty where+ type PropertyType "IncludeSubscription" CostTypesProperty = Value Prelude.Bool+ set newValue CostTypesProperty {..}+ = CostTypesProperty+ {includeSubscription = Prelude.pure newValue, ..}+instance Property "IncludeSupport" CostTypesProperty where+ type PropertyType "IncludeSupport" CostTypesProperty = Value Prelude.Bool+ set newValue CostTypesProperty {..}+ = CostTypesProperty {includeSupport = Prelude.pure newValue, ..}+instance Property "IncludeTax" CostTypesProperty where+ type PropertyType "IncludeTax" CostTypesProperty = Value Prelude.Bool+ set newValue CostTypesProperty {..}+ = CostTypesProperty {includeTax = Prelude.pure newValue, ..}+instance Property "IncludeUpfront" CostTypesProperty where+ type PropertyType "IncludeUpfront" CostTypesProperty = Value Prelude.Bool+ set newValue CostTypesProperty {..}+ = CostTypesProperty {includeUpfront = Prelude.pure newValue, ..}+instance Property "UseAmortized" CostTypesProperty where+ type PropertyType "UseAmortized" CostTypesProperty = Value Prelude.Bool+ set newValue CostTypesProperty {..}+ = CostTypesProperty {useAmortized = Prelude.pure newValue, ..}+instance Property "UseBlended" CostTypesProperty where+ type PropertyType "UseBlended" CostTypesProperty = Value Prelude.Bool+ set newValue CostTypesProperty {..}+ = CostTypesProperty {useBlended = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/Budget/CostTypesProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.CostTypesProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CostTypesProperty :: Prelude.Type+instance ToResourceProperties CostTypesProperty+instance Prelude.Eq CostTypesProperty+instance Prelude.Show CostTypesProperty+instance JSON.ToJSON CostTypesProperty
+ gen/Stratosphere/Budgets/Budget/ExpressionDimensionValuesProperty.hs view
@@ -0,0 +1,58 @@+module Stratosphere.Budgets.Budget.ExpressionDimensionValuesProperty (+ ExpressionDimensionValuesProperty(..),+ mkExpressionDimensionValuesProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ExpressionDimensionValuesProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-expressiondimensionvalues.html>+ ExpressionDimensionValuesProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-expressiondimensionvalues.html#cfn-budgets-budget-expressiondimensionvalues-key>+ key :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-expressiondimensionvalues.html#cfn-budgets-budget-expressiondimensionvalues-matchoptions>+ matchOptions :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-expressiondimensionvalues.html#cfn-budgets-budget-expressiondimensionvalues-values>+ values :: (Prelude.Maybe (ValueList Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkExpressionDimensionValuesProperty ::+ ExpressionDimensionValuesProperty+mkExpressionDimensionValuesProperty+ = ExpressionDimensionValuesProperty+ {haddock_workaround_ = (), key = Prelude.Nothing,+ matchOptions = Prelude.Nothing, values = Prelude.Nothing}+instance ToResourceProperties ExpressionDimensionValuesProperty where+ toResourceProperties ExpressionDimensionValuesProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.ExpressionDimensionValues",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Key" Prelude.<$> key,+ (JSON..=) "MatchOptions" Prelude.<$> matchOptions,+ (JSON..=) "Values" Prelude.<$> values])}+instance JSON.ToJSON ExpressionDimensionValuesProperty where+ toJSON ExpressionDimensionValuesProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Key" Prelude.<$> key,+ (JSON..=) "MatchOptions" Prelude.<$> matchOptions,+ (JSON..=) "Values" Prelude.<$> values]))+instance Property "Key" ExpressionDimensionValuesProperty where+ type PropertyType "Key" ExpressionDimensionValuesProperty = Value Prelude.Text+ set newValue ExpressionDimensionValuesProperty {..}+ = ExpressionDimensionValuesProperty+ {key = Prelude.pure newValue, ..}+instance Property "MatchOptions" ExpressionDimensionValuesProperty where+ type PropertyType "MatchOptions" ExpressionDimensionValuesProperty = ValueList Prelude.Text+ set newValue ExpressionDimensionValuesProperty {..}+ = ExpressionDimensionValuesProperty+ {matchOptions = Prelude.pure newValue, ..}+instance Property "Values" ExpressionDimensionValuesProperty where+ type PropertyType "Values" ExpressionDimensionValuesProperty = ValueList Prelude.Text+ set newValue ExpressionDimensionValuesProperty {..}+ = ExpressionDimensionValuesProperty+ {values = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/Budget/ExpressionDimensionValuesProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.ExpressionDimensionValuesProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ExpressionDimensionValuesProperty :: Prelude.Type+instance ToResourceProperties ExpressionDimensionValuesProperty+instance Prelude.Eq ExpressionDimensionValuesProperty+instance Prelude.Show ExpressionDimensionValuesProperty+instance JSON.ToJSON ExpressionDimensionValuesProperty
+ gen/Stratosphere/Budgets/Budget/ExpressionProperty.hs view
@@ -0,0 +1,79 @@+module Stratosphere.Budgets.Budget.ExpressionProperty (+ module Exports, ExpressionProperty(..), mkExpressionProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.Budgets.Budget.CostCategoryValuesProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.Budget.ExpressionDimensionValuesProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.Budget.TagValuesProperty as Exports+import Stratosphere.ResourceProperties+data ExpressionProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-expression.html>+ ExpressionProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-expression.html#cfn-budgets-budget-expression-and>+ and :: (Prelude.Maybe [ExpressionProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-expression.html#cfn-budgets-budget-expression-costcategories>+ costCategories :: (Prelude.Maybe CostCategoryValuesProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-expression.html#cfn-budgets-budget-expression-dimensions>+ dimensions :: (Prelude.Maybe ExpressionDimensionValuesProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-expression.html#cfn-budgets-budget-expression-not>+ not :: (Prelude.Maybe ExpressionProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-expression.html#cfn-budgets-budget-expression-or>+ or :: (Prelude.Maybe [ExpressionProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-expression.html#cfn-budgets-budget-expression-tags>+ tags :: (Prelude.Maybe TagValuesProperty)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkExpressionProperty :: ExpressionProperty+mkExpressionProperty+ = ExpressionProperty+ {haddock_workaround_ = (), and = Prelude.Nothing,+ costCategories = Prelude.Nothing, dimensions = Prelude.Nothing,+ not = Prelude.Nothing, or = Prelude.Nothing,+ tags = Prelude.Nothing}+instance ToResourceProperties ExpressionProperty where+ toResourceProperties ExpressionProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.Expression",+ supportsTags = Prelude.True,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "And" Prelude.<$> and,+ (JSON..=) "CostCategories" Prelude.<$> costCategories,+ (JSON..=) "Dimensions" Prelude.<$> dimensions,+ (JSON..=) "Not" Prelude.<$> not, (JSON..=) "Or" Prelude.<$> or,+ (JSON..=) "Tags" Prelude.<$> tags])}+instance JSON.ToJSON ExpressionProperty where+ toJSON ExpressionProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "And" Prelude.<$> and,+ (JSON..=) "CostCategories" Prelude.<$> costCategories,+ (JSON..=) "Dimensions" Prelude.<$> dimensions,+ (JSON..=) "Not" Prelude.<$> not, (JSON..=) "Or" Prelude.<$> or,+ (JSON..=) "Tags" Prelude.<$> tags]))+instance Property "And" ExpressionProperty where+ type PropertyType "And" ExpressionProperty = [ExpressionProperty]+ set newValue ExpressionProperty {..}+ = ExpressionProperty {and = Prelude.pure newValue, ..}+instance Property "CostCategories" ExpressionProperty where+ type PropertyType "CostCategories" ExpressionProperty = CostCategoryValuesProperty+ set newValue ExpressionProperty {..}+ = ExpressionProperty {costCategories = Prelude.pure newValue, ..}+instance Property "Dimensions" ExpressionProperty where+ type PropertyType "Dimensions" ExpressionProperty = ExpressionDimensionValuesProperty+ set newValue ExpressionProperty {..}+ = ExpressionProperty {dimensions = Prelude.pure newValue, ..}+instance Property "Not" ExpressionProperty where+ type PropertyType "Not" ExpressionProperty = ExpressionProperty+ set newValue ExpressionProperty {..}+ = ExpressionProperty {not = Prelude.pure newValue, ..}+instance Property "Or" ExpressionProperty where+ type PropertyType "Or" ExpressionProperty = [ExpressionProperty]+ set newValue ExpressionProperty {..}+ = ExpressionProperty {or = Prelude.pure newValue, ..}+instance Property "Tags" ExpressionProperty where+ type PropertyType "Tags" ExpressionProperty = TagValuesProperty+ set newValue ExpressionProperty {..}+ = ExpressionProperty {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/Budget/ExpressionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.ExpressionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ExpressionProperty :: Prelude.Type+instance ToResourceProperties ExpressionProperty+instance Prelude.Eq ExpressionProperty+instance Prelude.Show ExpressionProperty+instance JSON.ToJSON ExpressionProperty
+ gen/Stratosphere/Budgets/Budget/HistoricalOptionsProperty.hs view
@@ -0,0 +1,35 @@+module Stratosphere.Budgets.Budget.HistoricalOptionsProperty (+ HistoricalOptionsProperty(..), mkHistoricalOptionsProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data HistoricalOptionsProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-historicaloptions.html>+ HistoricalOptionsProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-historicaloptions.html#cfn-budgets-budget-historicaloptions-budgetadjustmentperiod>+ budgetAdjustmentPeriod :: (Value Prelude.Integer)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkHistoricalOptionsProperty ::+ Value Prelude.Integer -> HistoricalOptionsProperty+mkHistoricalOptionsProperty budgetAdjustmentPeriod+ = HistoricalOptionsProperty+ {haddock_workaround_ = (),+ budgetAdjustmentPeriod = budgetAdjustmentPeriod}+instance ToResourceProperties HistoricalOptionsProperty where+ toResourceProperties HistoricalOptionsProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.HistoricalOptions",+ supportsTags = Prelude.False,+ properties = ["BudgetAdjustmentPeriod"+ JSON..= budgetAdjustmentPeriod]}+instance JSON.ToJSON HistoricalOptionsProperty where+ toJSON HistoricalOptionsProperty {..}+ = JSON.object+ ["BudgetAdjustmentPeriod" JSON..= budgetAdjustmentPeriod]+instance Property "BudgetAdjustmentPeriod" HistoricalOptionsProperty where+ type PropertyType "BudgetAdjustmentPeriod" HistoricalOptionsProperty = Value Prelude.Integer+ set newValue HistoricalOptionsProperty {..}+ = HistoricalOptionsProperty {budgetAdjustmentPeriod = newValue, ..}
+ gen/Stratosphere/Budgets/Budget/HistoricalOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.HistoricalOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data HistoricalOptionsProperty :: Prelude.Type+instance ToResourceProperties HistoricalOptionsProperty+instance Prelude.Eq HistoricalOptionsProperty+instance Prelude.Show HistoricalOptionsProperty+instance JSON.ToJSON HistoricalOptionsProperty
+ gen/Stratosphere/Budgets/Budget/NotificationProperty.hs view
@@ -0,0 +1,70 @@+module Stratosphere.Budgets.Budget.NotificationProperty (+ NotificationProperty(..), mkNotificationProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data NotificationProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html>+ NotificationProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-comparisonoperator>+ comparisonOperator :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-notificationtype>+ notificationType :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-threshold>+ threshold :: (Value Prelude.Double),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html#cfn-budgets-budget-notification-thresholdtype>+ thresholdType :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkNotificationProperty ::+ Value Prelude.Text+ -> Value Prelude.Text+ -> Value Prelude.Double -> NotificationProperty+mkNotificationProperty+ comparisonOperator+ notificationType+ threshold+ = NotificationProperty+ {haddock_workaround_ = (), comparisonOperator = comparisonOperator,+ notificationType = notificationType, threshold = threshold,+ thresholdType = Prelude.Nothing}+instance ToResourceProperties NotificationProperty where+ toResourceProperties NotificationProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.Notification",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["ComparisonOperator" JSON..= comparisonOperator,+ "NotificationType" JSON..= notificationType,+ "Threshold" JSON..= threshold]+ (Prelude.catMaybes+ [(JSON..=) "ThresholdType" Prelude.<$> thresholdType]))}+instance JSON.ToJSON NotificationProperty where+ toJSON NotificationProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["ComparisonOperator" JSON..= comparisonOperator,+ "NotificationType" JSON..= notificationType,+ "Threshold" JSON..= threshold]+ (Prelude.catMaybes+ [(JSON..=) "ThresholdType" Prelude.<$> thresholdType])))+instance Property "ComparisonOperator" NotificationProperty where+ type PropertyType "ComparisonOperator" NotificationProperty = Value Prelude.Text+ set newValue NotificationProperty {..}+ = NotificationProperty {comparisonOperator = newValue, ..}+instance Property "NotificationType" NotificationProperty where+ type PropertyType "NotificationType" NotificationProperty = Value Prelude.Text+ set newValue NotificationProperty {..}+ = NotificationProperty {notificationType = newValue, ..}+instance Property "Threshold" NotificationProperty where+ type PropertyType "Threshold" NotificationProperty = Value Prelude.Double+ set newValue NotificationProperty {..}+ = NotificationProperty {threshold = newValue, ..}+instance Property "ThresholdType" NotificationProperty where+ type PropertyType "ThresholdType" NotificationProperty = Value Prelude.Text+ set newValue NotificationProperty {..}+ = NotificationProperty {thresholdType = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/Budget/NotificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.NotificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data NotificationProperty :: Prelude.Type+instance ToResourceProperties NotificationProperty+instance Prelude.Eq NotificationProperty+instance Prelude.Show NotificationProperty+instance JSON.ToJSON NotificationProperty
+ gen/Stratosphere/Budgets/Budget/NotificationWithSubscribersProperty.hs view
@@ -0,0 +1,45 @@+module Stratosphere.Budgets.Budget.NotificationWithSubscribersProperty (+ module Exports, NotificationWithSubscribersProperty(..),+ mkNotificationWithSubscribersProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.Budgets.Budget.NotificationProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.Budget.SubscriberProperty as Exports+import Stratosphere.ResourceProperties+data NotificationWithSubscribersProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html>+ NotificationWithSubscribersProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html#cfn-budgets-budget-notificationwithsubscribers-notification>+ notification :: NotificationProperty,+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html#cfn-budgets-budget-notificationwithsubscribers-subscribers>+ subscribers :: [SubscriberProperty]}+ deriving stock (Prelude.Eq, Prelude.Show)+mkNotificationWithSubscribersProperty ::+ NotificationProperty+ -> [SubscriberProperty] -> NotificationWithSubscribersProperty+mkNotificationWithSubscribersProperty notification subscribers+ = NotificationWithSubscribersProperty+ {haddock_workaround_ = (), notification = notification,+ subscribers = subscribers}+instance ToResourceProperties NotificationWithSubscribersProperty where+ toResourceProperties NotificationWithSubscribersProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.NotificationWithSubscribers",+ supportsTags = Prelude.False,+ properties = ["Notification" JSON..= notification,+ "Subscribers" JSON..= subscribers]}+instance JSON.ToJSON NotificationWithSubscribersProperty where+ toJSON NotificationWithSubscribersProperty {..}+ = JSON.object+ ["Notification" JSON..= notification,+ "Subscribers" JSON..= subscribers]+instance Property "Notification" NotificationWithSubscribersProperty where+ type PropertyType "Notification" NotificationWithSubscribersProperty = NotificationProperty+ set newValue NotificationWithSubscribersProperty {..}+ = NotificationWithSubscribersProperty {notification = newValue, ..}+instance Property "Subscribers" NotificationWithSubscribersProperty where+ type PropertyType "Subscribers" NotificationWithSubscribersProperty = [SubscriberProperty]+ set newValue NotificationWithSubscribersProperty {..}+ = NotificationWithSubscribersProperty {subscribers = newValue, ..}
+ gen/Stratosphere/Budgets/Budget/NotificationWithSubscribersProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.NotificationWithSubscribersProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data NotificationWithSubscribersProperty :: Prelude.Type+instance ToResourceProperties NotificationWithSubscribersProperty+instance Prelude.Eq NotificationWithSubscribersProperty+instance Prelude.Show NotificationWithSubscribersProperty+instance JSON.ToJSON NotificationWithSubscribersProperty
+ gen/Stratosphere/Budgets/Budget/ResourceTagProperty.hs view
@@ -0,0 +1,44 @@+module Stratosphere.Budgets.Budget.ResourceTagProperty (+ ResourceTagProperty(..), mkResourceTagProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ResourceTagProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-resourcetag.html>+ ResourceTagProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-resourcetag.html#cfn-budgets-budget-resourcetag-key>+ key :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-resourcetag.html#cfn-budgets-budget-resourcetag-value>+ value :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkResourceTagProperty :: Value Prelude.Text -> ResourceTagProperty+mkResourceTagProperty key+ = ResourceTagProperty+ {haddock_workaround_ = (), key = key, value = Prelude.Nothing}+instance ToResourceProperties ResourceTagProperty where+ toResourceProperties ResourceTagProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.ResourceTag",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["Key" JSON..= key]+ (Prelude.catMaybes [(JSON..=) "Value" Prelude.<$> value]))}+instance JSON.ToJSON ResourceTagProperty where+ toJSON ResourceTagProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["Key" JSON..= key]+ (Prelude.catMaybes [(JSON..=) "Value" Prelude.<$> value])))+instance Property "Key" ResourceTagProperty where+ type PropertyType "Key" ResourceTagProperty = Value Prelude.Text+ set newValue ResourceTagProperty {..}+ = ResourceTagProperty {key = newValue, ..}+instance Property "Value" ResourceTagProperty where+ type PropertyType "Value" ResourceTagProperty = Value Prelude.Text+ set newValue ResourceTagProperty {..}+ = ResourceTagProperty {value = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/Budget/ResourceTagProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.ResourceTagProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ResourceTagProperty :: Prelude.Type+instance ToResourceProperties ResourceTagProperty+instance Prelude.Eq ResourceTagProperty+instance Prelude.Show ResourceTagProperty+instance JSON.ToJSON ResourceTagProperty
+ gen/Stratosphere/Budgets/Budget/SpendProperty.hs view
@@ -0,0 +1,38 @@+module Stratosphere.Budgets.Budget.SpendProperty (+ SpendProperty(..), mkSpendProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SpendProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-spend.html>+ SpendProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-spend.html#cfn-budgets-budget-spend-amount>+ amount :: (Value Prelude.Double),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-spend.html#cfn-budgets-budget-spend-unit>+ unit :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkSpendProperty ::+ Value Prelude.Double -> Value Prelude.Text -> SpendProperty+mkSpendProperty amount unit+ = SpendProperty+ {haddock_workaround_ = (), amount = amount, unit = unit}+instance ToResourceProperties SpendProperty where+ toResourceProperties SpendProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.Spend",+ supportsTags = Prelude.False,+ properties = ["Amount" JSON..= amount, "Unit" JSON..= unit]}+instance JSON.ToJSON SpendProperty where+ toJSON SpendProperty {..}+ = JSON.object ["Amount" JSON..= amount, "Unit" JSON..= unit]+instance Property "Amount" SpendProperty where+ type PropertyType "Amount" SpendProperty = Value Prelude.Double+ set newValue SpendProperty {..}+ = SpendProperty {amount = newValue, ..}+instance Property "Unit" SpendProperty where+ type PropertyType "Unit" SpendProperty = Value Prelude.Text+ set newValue SpendProperty {..}+ = SpendProperty {unit = newValue, ..}
+ gen/Stratosphere/Budgets/Budget/SpendProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.SpendProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SpendProperty :: Prelude.Type+instance ToResourceProperties SpendProperty+instance Prelude.Eq SpendProperty+instance Prelude.Show SpendProperty+instance JSON.ToJSON SpendProperty
+ gen/Stratosphere/Budgets/Budget/SubscriberProperty.hs view
@@ -0,0 +1,42 @@+module Stratosphere.Budgets.Budget.SubscriberProperty (+ SubscriberProperty(..), mkSubscriberProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SubscriberProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-subscriber.html>+ SubscriberProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-subscriber.html#cfn-budgets-budget-subscriber-address>+ address :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-subscriber.html#cfn-budgets-budget-subscriber-subscriptiontype>+ subscriptionType :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkSubscriberProperty ::+ Value Prelude.Text -> Value Prelude.Text -> SubscriberProperty+mkSubscriberProperty address subscriptionType+ = SubscriberProperty+ {haddock_workaround_ = (), address = address,+ subscriptionType = subscriptionType}+instance ToResourceProperties SubscriberProperty where+ toResourceProperties SubscriberProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.Subscriber",+ supportsTags = Prelude.False,+ properties = ["Address" JSON..= address,+ "SubscriptionType" JSON..= subscriptionType]}+instance JSON.ToJSON SubscriberProperty where+ toJSON SubscriberProperty {..}+ = JSON.object+ ["Address" JSON..= address,+ "SubscriptionType" JSON..= subscriptionType]+instance Property "Address" SubscriberProperty where+ type PropertyType "Address" SubscriberProperty = Value Prelude.Text+ set newValue SubscriberProperty {..}+ = SubscriberProperty {address = newValue, ..}+instance Property "SubscriptionType" SubscriberProperty where+ type PropertyType "SubscriptionType" SubscriberProperty = Value Prelude.Text+ set newValue SubscriberProperty {..}+ = SubscriberProperty {subscriptionType = newValue, ..}
+ gen/Stratosphere/Budgets/Budget/SubscriberProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.SubscriberProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SubscriberProperty :: Prelude.Type+instance ToResourceProperties SubscriberProperty+instance Prelude.Eq SubscriberProperty+instance Prelude.Show SubscriberProperty+instance JSON.ToJSON SubscriberProperty
+ gen/Stratosphere/Budgets/Budget/TagValuesProperty.hs view
@@ -0,0 +1,53 @@+module Stratosphere.Budgets.Budget.TagValuesProperty (+ TagValuesProperty(..), mkTagValuesProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data TagValuesProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-tagvalues.html>+ TagValuesProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-tagvalues.html#cfn-budgets-budget-tagvalues-key>+ key :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-tagvalues.html#cfn-budgets-budget-tagvalues-matchoptions>+ matchOptions :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-tagvalues.html#cfn-budgets-budget-tagvalues-values>+ values :: (Prelude.Maybe (ValueList Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkTagValuesProperty :: TagValuesProperty+mkTagValuesProperty+ = TagValuesProperty+ {haddock_workaround_ = (), key = Prelude.Nothing,+ matchOptions = Prelude.Nothing, values = Prelude.Nothing}+instance ToResourceProperties TagValuesProperty where+ toResourceProperties TagValuesProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.TagValues",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Key" Prelude.<$> key,+ (JSON..=) "MatchOptions" Prelude.<$> matchOptions,+ (JSON..=) "Values" Prelude.<$> values])}+instance JSON.ToJSON TagValuesProperty where+ toJSON TagValuesProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Key" Prelude.<$> key,+ (JSON..=) "MatchOptions" Prelude.<$> matchOptions,+ (JSON..=) "Values" Prelude.<$> values]))+instance Property "Key" TagValuesProperty where+ type PropertyType "Key" TagValuesProperty = Value Prelude.Text+ set newValue TagValuesProperty {..}+ = TagValuesProperty {key = Prelude.pure newValue, ..}+instance Property "MatchOptions" TagValuesProperty where+ type PropertyType "MatchOptions" TagValuesProperty = ValueList Prelude.Text+ set newValue TagValuesProperty {..}+ = TagValuesProperty {matchOptions = Prelude.pure newValue, ..}+instance Property "Values" TagValuesProperty where+ type PropertyType "Values" TagValuesProperty = ValueList Prelude.Text+ set newValue TagValuesProperty {..}+ = TagValuesProperty {values = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/Budget/TagValuesProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.TagValuesProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TagValuesProperty :: Prelude.Type+instance ToResourceProperties TagValuesProperty+instance Prelude.Eq TagValuesProperty+instance Prelude.Show TagValuesProperty+instance JSON.ToJSON TagValuesProperty
+ gen/Stratosphere/Budgets/Budget/TimePeriodProperty.hs view
@@ -0,0 +1,45 @@+module Stratosphere.Budgets.Budget.TimePeriodProperty (+ TimePeriodProperty(..), mkTimePeriodProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data TimePeriodProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-timeperiod.html>+ TimePeriodProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-timeperiod.html#cfn-budgets-budget-timeperiod-end>+ end :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-timeperiod.html#cfn-budgets-budget-timeperiod-start>+ start :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkTimePeriodProperty :: TimePeriodProperty+mkTimePeriodProperty+ = TimePeriodProperty+ {haddock_workaround_ = (), end = Prelude.Nothing,+ start = Prelude.Nothing}+instance ToResourceProperties TimePeriodProperty where+ toResourceProperties TimePeriodProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::Budget.TimePeriod",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "End" Prelude.<$> end,+ (JSON..=) "Start" Prelude.<$> start])}+instance JSON.ToJSON TimePeriodProperty where+ toJSON TimePeriodProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "End" Prelude.<$> end,+ (JSON..=) "Start" Prelude.<$> start]))+instance Property "End" TimePeriodProperty where+ type PropertyType "End" TimePeriodProperty = Value Prelude.Text+ set newValue TimePeriodProperty {..}+ = TimePeriodProperty {end = Prelude.pure newValue, ..}+instance Property "Start" TimePeriodProperty where+ type PropertyType "Start" TimePeriodProperty = Value Prelude.Text+ set newValue TimePeriodProperty {..}+ = TimePeriodProperty {start = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/Budget/TimePeriodProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.Budget.TimePeriodProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TimePeriodProperty :: Prelude.Type+instance ToResourceProperties TimePeriodProperty+instance Prelude.Eq TimePeriodProperty+instance Prelude.Show TimePeriodProperty+instance JSON.ToJSON TimePeriodProperty
+ gen/Stratosphere/Budgets/BudgetsAction.hs view
@@ -0,0 +1,121 @@+module Stratosphere.Budgets.BudgetsAction (+ module Exports, BudgetsAction(..), mkBudgetsAction+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.Budgets.BudgetsAction.ActionThresholdProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.BudgetsAction.DefinitionProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.BudgetsAction.ResourceTagProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.BudgetsAction.SubscriberProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data BudgetsAction+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html>+ BudgetsAction {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-actionthreshold>+ actionThreshold :: ActionThresholdProperty,+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-actiontype>+ actionType :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-approvalmodel>+ approvalModel :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-budgetname>+ budgetName :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-definition>+ definition :: DefinitionProperty,+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-executionrolearn>+ executionRoleArn :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-notificationtype>+ notificationType :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-resourcetags>+ resourceTags :: (Prelude.Maybe [ResourceTagProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-subscribers>+ subscribers :: [SubscriberProperty]}+ deriving stock (Prelude.Eq, Prelude.Show)+mkBudgetsAction ::+ ActionThresholdProperty+ -> Value Prelude.Text+ -> Value Prelude.Text+ -> DefinitionProperty+ -> Value Prelude.Text+ -> Value Prelude.Text -> [SubscriberProperty] -> BudgetsAction+mkBudgetsAction+ actionThreshold+ actionType+ budgetName+ definition+ executionRoleArn+ notificationType+ subscribers+ = BudgetsAction+ {haddock_workaround_ = (), actionThreshold = actionThreshold,+ actionType = actionType, budgetName = budgetName,+ definition = definition, executionRoleArn = executionRoleArn,+ notificationType = notificationType, subscribers = subscribers,+ approvalModel = Prelude.Nothing, resourceTags = Prelude.Nothing}+instance ToResourceProperties BudgetsAction where+ toResourceProperties BudgetsAction {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::BudgetsAction",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["ActionThreshold" JSON..= actionThreshold,+ "ActionType" JSON..= actionType, "BudgetName" JSON..= budgetName,+ "Definition" JSON..= definition,+ "ExecutionRoleArn" JSON..= executionRoleArn,+ "NotificationType" JSON..= notificationType,+ "Subscribers" JSON..= subscribers]+ (Prelude.catMaybes+ [(JSON..=) "ApprovalModel" Prelude.<$> approvalModel,+ (JSON..=) "ResourceTags" Prelude.<$> resourceTags]))}+instance JSON.ToJSON BudgetsAction where+ toJSON BudgetsAction {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["ActionThreshold" JSON..= actionThreshold,+ "ActionType" JSON..= actionType, "BudgetName" JSON..= budgetName,+ "Definition" JSON..= definition,+ "ExecutionRoleArn" JSON..= executionRoleArn,+ "NotificationType" JSON..= notificationType,+ "Subscribers" JSON..= subscribers]+ (Prelude.catMaybes+ [(JSON..=) "ApprovalModel" Prelude.<$> approvalModel,+ (JSON..=) "ResourceTags" Prelude.<$> resourceTags])))+instance Property "ActionThreshold" BudgetsAction where+ type PropertyType "ActionThreshold" BudgetsAction = ActionThresholdProperty+ set newValue BudgetsAction {..}+ = BudgetsAction {actionThreshold = newValue, ..}+instance Property "ActionType" BudgetsAction where+ type PropertyType "ActionType" BudgetsAction = Value Prelude.Text+ set newValue BudgetsAction {..}+ = BudgetsAction {actionType = newValue, ..}+instance Property "ApprovalModel" BudgetsAction where+ type PropertyType "ApprovalModel" BudgetsAction = Value Prelude.Text+ set newValue BudgetsAction {..}+ = BudgetsAction {approvalModel = Prelude.pure newValue, ..}+instance Property "BudgetName" BudgetsAction where+ type PropertyType "BudgetName" BudgetsAction = Value Prelude.Text+ set newValue BudgetsAction {..}+ = BudgetsAction {budgetName = newValue, ..}+instance Property "Definition" BudgetsAction where+ type PropertyType "Definition" BudgetsAction = DefinitionProperty+ set newValue BudgetsAction {..}+ = BudgetsAction {definition = newValue, ..}+instance Property "ExecutionRoleArn" BudgetsAction where+ type PropertyType "ExecutionRoleArn" BudgetsAction = Value Prelude.Text+ set newValue BudgetsAction {..}+ = BudgetsAction {executionRoleArn = newValue, ..}+instance Property "NotificationType" BudgetsAction where+ type PropertyType "NotificationType" BudgetsAction = Value Prelude.Text+ set newValue BudgetsAction {..}+ = BudgetsAction {notificationType = newValue, ..}+instance Property "ResourceTags" BudgetsAction where+ type PropertyType "ResourceTags" BudgetsAction = [ResourceTagProperty]+ set newValue BudgetsAction {..}+ = BudgetsAction {resourceTags = Prelude.pure newValue, ..}+instance Property "Subscribers" BudgetsAction where+ type PropertyType "Subscribers" BudgetsAction = [SubscriberProperty]+ set newValue BudgetsAction {..}+ = BudgetsAction {subscribers = newValue, ..}
+ gen/Stratosphere/Budgets/BudgetsAction/ActionThresholdProperty.hs view
@@ -0,0 +1,39 @@+module Stratosphere.Budgets.BudgetsAction.ActionThresholdProperty (+ ActionThresholdProperty(..), mkActionThresholdProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ActionThresholdProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-actionthreshold.html>+ ActionThresholdProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-actionthreshold.html#cfn-budgets-budgetsaction-actionthreshold-type>+ type' :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-actionthreshold.html#cfn-budgets-budgetsaction-actionthreshold-value>+ value :: (Value Prelude.Double)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkActionThresholdProperty ::+ Value Prelude.Text+ -> Value Prelude.Double -> ActionThresholdProperty+mkActionThresholdProperty type' value+ = ActionThresholdProperty+ {haddock_workaround_ = (), type' = type', value = value}+instance ToResourceProperties ActionThresholdProperty where+ toResourceProperties ActionThresholdProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::BudgetsAction.ActionThreshold",+ supportsTags = Prelude.False,+ properties = ["Type" JSON..= type', "Value" JSON..= value]}+instance JSON.ToJSON ActionThresholdProperty where+ toJSON ActionThresholdProperty {..}+ = JSON.object ["Type" JSON..= type', "Value" JSON..= value]+instance Property "Type" ActionThresholdProperty where+ type PropertyType "Type" ActionThresholdProperty = Value Prelude.Text+ set newValue ActionThresholdProperty {..}+ = ActionThresholdProperty {type' = newValue, ..}+instance Property "Value" ActionThresholdProperty where+ type PropertyType "Value" ActionThresholdProperty = Value Prelude.Double+ set newValue ActionThresholdProperty {..}+ = ActionThresholdProperty {value = newValue, ..}
+ gen/Stratosphere/Budgets/BudgetsAction/ActionThresholdProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.BudgetsAction.ActionThresholdProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ActionThresholdProperty :: Prelude.Type+instance ToResourceProperties ActionThresholdProperty+instance Prelude.Eq ActionThresholdProperty+instance Prelude.Show ActionThresholdProperty+instance JSON.ToJSON ActionThresholdProperty
+ gen/Stratosphere/Budgets/BudgetsAction/DefinitionProperty.hs view
@@ -0,0 +1,59 @@+module Stratosphere.Budgets.BudgetsAction.DefinitionProperty (+ module Exports, DefinitionProperty(..), mkDefinitionProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.Budgets.BudgetsAction.IamActionDefinitionProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.BudgetsAction.ScpActionDefinitionProperty as Exports+import {-# SOURCE #-} Stratosphere.Budgets.BudgetsAction.SsmActionDefinitionProperty as Exports+import Stratosphere.ResourceProperties+data DefinitionProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-definition.html>+ DefinitionProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-definition.html#cfn-budgets-budgetsaction-definition-iamactiondefinition>+ iamActionDefinition :: (Prelude.Maybe IamActionDefinitionProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-definition.html#cfn-budgets-budgetsaction-definition-scpactiondefinition>+ scpActionDefinition :: (Prelude.Maybe ScpActionDefinitionProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-definition.html#cfn-budgets-budgetsaction-definition-ssmactiondefinition>+ ssmActionDefinition :: (Prelude.Maybe SsmActionDefinitionProperty)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkDefinitionProperty :: DefinitionProperty+mkDefinitionProperty+ = DefinitionProperty+ {haddock_workaround_ = (), iamActionDefinition = Prelude.Nothing,+ scpActionDefinition = Prelude.Nothing,+ ssmActionDefinition = Prelude.Nothing}+instance ToResourceProperties DefinitionProperty where+ toResourceProperties DefinitionProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::BudgetsAction.Definition",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "IamActionDefinition" Prelude.<$> iamActionDefinition,+ (JSON..=) "ScpActionDefinition" Prelude.<$> scpActionDefinition,+ (JSON..=) "SsmActionDefinition" Prelude.<$> ssmActionDefinition])}+instance JSON.ToJSON DefinitionProperty where+ toJSON DefinitionProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "IamActionDefinition" Prelude.<$> iamActionDefinition,+ (JSON..=) "ScpActionDefinition" Prelude.<$> scpActionDefinition,+ (JSON..=) "SsmActionDefinition" Prelude.<$> ssmActionDefinition]))+instance Property "IamActionDefinition" DefinitionProperty where+ type PropertyType "IamActionDefinition" DefinitionProperty = IamActionDefinitionProperty+ set newValue DefinitionProperty {..}+ = DefinitionProperty+ {iamActionDefinition = Prelude.pure newValue, ..}+instance Property "ScpActionDefinition" DefinitionProperty where+ type PropertyType "ScpActionDefinition" DefinitionProperty = ScpActionDefinitionProperty+ set newValue DefinitionProperty {..}+ = DefinitionProperty+ {scpActionDefinition = Prelude.pure newValue, ..}+instance Property "SsmActionDefinition" DefinitionProperty where+ type PropertyType "SsmActionDefinition" DefinitionProperty = SsmActionDefinitionProperty+ set newValue DefinitionProperty {..}+ = DefinitionProperty+ {ssmActionDefinition = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/BudgetsAction/DefinitionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.BudgetsAction.DefinitionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data DefinitionProperty :: Prelude.Type+instance ToResourceProperties DefinitionProperty+instance Prelude.Eq DefinitionProperty+instance Prelude.Show DefinitionProperty+instance JSON.ToJSON DefinitionProperty
+ gen/Stratosphere/Budgets/BudgetsAction/IamActionDefinitionProperty.hs view
@@ -0,0 +1,65 @@+module Stratosphere.Budgets.BudgetsAction.IamActionDefinitionProperty (+ IamActionDefinitionProperty(..), mkIamActionDefinitionProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data IamActionDefinitionProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-iamactiondefinition.html>+ IamActionDefinitionProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-iamactiondefinition.html#cfn-budgets-budgetsaction-iamactiondefinition-groups>+ groups :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-iamactiondefinition.html#cfn-budgets-budgetsaction-iamactiondefinition-policyarn>+ policyArn :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-iamactiondefinition.html#cfn-budgets-budgetsaction-iamactiondefinition-roles>+ roles :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-iamactiondefinition.html#cfn-budgets-budgetsaction-iamactiondefinition-users>+ users :: (Prelude.Maybe (ValueList Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkIamActionDefinitionProperty ::+ Value Prelude.Text -> IamActionDefinitionProperty+mkIamActionDefinitionProperty policyArn+ = IamActionDefinitionProperty+ {haddock_workaround_ = (), policyArn = policyArn,+ groups = Prelude.Nothing, roles = Prelude.Nothing,+ users = Prelude.Nothing}+instance ToResourceProperties IamActionDefinitionProperty where+ toResourceProperties IamActionDefinitionProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::BudgetsAction.IamActionDefinition",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["PolicyArn" JSON..= policyArn]+ (Prelude.catMaybes+ [(JSON..=) "Groups" Prelude.<$> groups,+ (JSON..=) "Roles" Prelude.<$> roles,+ (JSON..=) "Users" Prelude.<$> users]))}+instance JSON.ToJSON IamActionDefinitionProperty where+ toJSON IamActionDefinitionProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["PolicyArn" JSON..= policyArn]+ (Prelude.catMaybes+ [(JSON..=) "Groups" Prelude.<$> groups,+ (JSON..=) "Roles" Prelude.<$> roles,+ (JSON..=) "Users" Prelude.<$> users])))+instance Property "Groups" IamActionDefinitionProperty where+ type PropertyType "Groups" IamActionDefinitionProperty = ValueList Prelude.Text+ set newValue IamActionDefinitionProperty {..}+ = IamActionDefinitionProperty {groups = Prelude.pure newValue, ..}+instance Property "PolicyArn" IamActionDefinitionProperty where+ type PropertyType "PolicyArn" IamActionDefinitionProperty = Value Prelude.Text+ set newValue IamActionDefinitionProperty {..}+ = IamActionDefinitionProperty {policyArn = newValue, ..}+instance Property "Roles" IamActionDefinitionProperty where+ type PropertyType "Roles" IamActionDefinitionProperty = ValueList Prelude.Text+ set newValue IamActionDefinitionProperty {..}+ = IamActionDefinitionProperty {roles = Prelude.pure newValue, ..}+instance Property "Users" IamActionDefinitionProperty where+ type PropertyType "Users" IamActionDefinitionProperty = ValueList Prelude.Text+ set newValue IamActionDefinitionProperty {..}+ = IamActionDefinitionProperty {users = Prelude.pure newValue, ..}
+ gen/Stratosphere/Budgets/BudgetsAction/IamActionDefinitionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.BudgetsAction.IamActionDefinitionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data IamActionDefinitionProperty :: Prelude.Type+instance ToResourceProperties IamActionDefinitionProperty+instance Prelude.Eq IamActionDefinitionProperty+instance Prelude.Show IamActionDefinitionProperty+instance JSON.ToJSON IamActionDefinitionProperty
+ gen/Stratosphere/Budgets/BudgetsAction/ResourceTagProperty.hs view
@@ -0,0 +1,38 @@+module Stratosphere.Budgets.BudgetsAction.ResourceTagProperty (+ ResourceTagProperty(..), mkResourceTagProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ResourceTagProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-resourcetag.html>+ ResourceTagProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-resourcetag.html#cfn-budgets-budgetsaction-resourcetag-key>+ key :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-resourcetag.html#cfn-budgets-budgetsaction-resourcetag-value>+ value :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkResourceTagProperty ::+ Value Prelude.Text -> Value Prelude.Text -> ResourceTagProperty+mkResourceTagProperty key value+ = ResourceTagProperty+ {haddock_workaround_ = (), key = key, value = value}+instance ToResourceProperties ResourceTagProperty where+ toResourceProperties ResourceTagProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::BudgetsAction.ResourceTag",+ supportsTags = Prelude.False,+ properties = ["Key" JSON..= key, "Value" JSON..= value]}+instance JSON.ToJSON ResourceTagProperty where+ toJSON ResourceTagProperty {..}+ = JSON.object ["Key" JSON..= key, "Value" JSON..= value]+instance Property "Key" ResourceTagProperty where+ type PropertyType "Key" ResourceTagProperty = Value Prelude.Text+ set newValue ResourceTagProperty {..}+ = ResourceTagProperty {key = newValue, ..}+instance Property "Value" ResourceTagProperty where+ type PropertyType "Value" ResourceTagProperty = Value Prelude.Text+ set newValue ResourceTagProperty {..}+ = ResourceTagProperty {value = newValue, ..}
+ gen/Stratosphere/Budgets/BudgetsAction/ResourceTagProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.BudgetsAction.ResourceTagProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ResourceTagProperty :: Prelude.Type+instance ToResourceProperties ResourceTagProperty+instance Prelude.Eq ResourceTagProperty+instance Prelude.Show ResourceTagProperty+instance JSON.ToJSON ResourceTagProperty
+ gen/Stratosphere/Budgets/BudgetsAction/ScpActionDefinitionProperty.hs view
@@ -0,0 +1,42 @@+module Stratosphere.Budgets.BudgetsAction.ScpActionDefinitionProperty (+ ScpActionDefinitionProperty(..), mkScpActionDefinitionProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ScpActionDefinitionProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-scpactiondefinition.html>+ ScpActionDefinitionProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-scpactiondefinition.html#cfn-budgets-budgetsaction-scpactiondefinition-policyid>+ policyId :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-scpactiondefinition.html#cfn-budgets-budgetsaction-scpactiondefinition-targetids>+ targetIds :: (ValueList Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkScpActionDefinitionProperty ::+ Value Prelude.Text+ -> ValueList Prelude.Text -> ScpActionDefinitionProperty+mkScpActionDefinitionProperty policyId targetIds+ = ScpActionDefinitionProperty+ {haddock_workaround_ = (), policyId = policyId,+ targetIds = targetIds}+instance ToResourceProperties ScpActionDefinitionProperty where+ toResourceProperties ScpActionDefinitionProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::BudgetsAction.ScpActionDefinition",+ supportsTags = Prelude.False,+ properties = ["PolicyId" JSON..= policyId,+ "TargetIds" JSON..= targetIds]}+instance JSON.ToJSON ScpActionDefinitionProperty where+ toJSON ScpActionDefinitionProperty {..}+ = JSON.object+ ["PolicyId" JSON..= policyId, "TargetIds" JSON..= targetIds]+instance Property "PolicyId" ScpActionDefinitionProperty where+ type PropertyType "PolicyId" ScpActionDefinitionProperty = Value Prelude.Text+ set newValue ScpActionDefinitionProperty {..}+ = ScpActionDefinitionProperty {policyId = newValue, ..}+instance Property "TargetIds" ScpActionDefinitionProperty where+ type PropertyType "TargetIds" ScpActionDefinitionProperty = ValueList Prelude.Text+ set newValue ScpActionDefinitionProperty {..}+ = ScpActionDefinitionProperty {targetIds = newValue, ..}
+ gen/Stratosphere/Budgets/BudgetsAction/ScpActionDefinitionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.BudgetsAction.ScpActionDefinitionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScpActionDefinitionProperty :: Prelude.Type+instance ToResourceProperties ScpActionDefinitionProperty+instance Prelude.Eq ScpActionDefinitionProperty+instance Prelude.Show ScpActionDefinitionProperty+instance JSON.ToJSON ScpActionDefinitionProperty
+ gen/Stratosphere/Budgets/BudgetsAction/SsmActionDefinitionProperty.hs view
@@ -0,0 +1,50 @@+module Stratosphere.Budgets.BudgetsAction.SsmActionDefinitionProperty (+ SsmActionDefinitionProperty(..), mkSsmActionDefinitionProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SsmActionDefinitionProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-ssmactiondefinition.html>+ SsmActionDefinitionProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-ssmactiondefinition.html#cfn-budgets-budgetsaction-ssmactiondefinition-instanceids>+ instanceIds :: (ValueList Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-ssmactiondefinition.html#cfn-budgets-budgetsaction-ssmactiondefinition-region>+ region :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-ssmactiondefinition.html#cfn-budgets-budgetsaction-ssmactiondefinition-subtype>+ subtype :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkSsmActionDefinitionProperty ::+ ValueList Prelude.Text+ -> Value Prelude.Text+ -> Value Prelude.Text -> SsmActionDefinitionProperty+mkSsmActionDefinitionProperty instanceIds region subtype+ = SsmActionDefinitionProperty+ {haddock_workaround_ = (), instanceIds = instanceIds,+ region = region, subtype = subtype}+instance ToResourceProperties SsmActionDefinitionProperty where+ toResourceProperties SsmActionDefinitionProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::BudgetsAction.SsmActionDefinition",+ supportsTags = Prelude.False,+ properties = ["InstanceIds" JSON..= instanceIds,+ "Region" JSON..= region, "Subtype" JSON..= subtype]}+instance JSON.ToJSON SsmActionDefinitionProperty where+ toJSON SsmActionDefinitionProperty {..}+ = JSON.object+ ["InstanceIds" JSON..= instanceIds, "Region" JSON..= region,+ "Subtype" JSON..= subtype]+instance Property "InstanceIds" SsmActionDefinitionProperty where+ type PropertyType "InstanceIds" SsmActionDefinitionProperty = ValueList Prelude.Text+ set newValue SsmActionDefinitionProperty {..}+ = SsmActionDefinitionProperty {instanceIds = newValue, ..}+instance Property "Region" SsmActionDefinitionProperty where+ type PropertyType "Region" SsmActionDefinitionProperty = Value Prelude.Text+ set newValue SsmActionDefinitionProperty {..}+ = SsmActionDefinitionProperty {region = newValue, ..}+instance Property "Subtype" SsmActionDefinitionProperty where+ type PropertyType "Subtype" SsmActionDefinitionProperty = Value Prelude.Text+ set newValue SsmActionDefinitionProperty {..}+ = SsmActionDefinitionProperty {subtype = newValue, ..}
+ gen/Stratosphere/Budgets/BudgetsAction/SsmActionDefinitionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.BudgetsAction.SsmActionDefinitionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SsmActionDefinitionProperty :: Prelude.Type+instance ToResourceProperties SsmActionDefinitionProperty+instance Prelude.Eq SsmActionDefinitionProperty+instance Prelude.Show SsmActionDefinitionProperty+instance JSON.ToJSON SsmActionDefinitionProperty
+ gen/Stratosphere/Budgets/BudgetsAction/SubscriberProperty.hs view
@@ -0,0 +1,38 @@+module Stratosphere.Budgets.BudgetsAction.SubscriberProperty (+ SubscriberProperty(..), mkSubscriberProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SubscriberProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-subscriber.html>+ SubscriberProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-subscriber.html#cfn-budgets-budgetsaction-subscriber-address>+ address :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-subscriber.html#cfn-budgets-budgetsaction-subscriber-type>+ type' :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkSubscriberProperty ::+ Value Prelude.Text -> Value Prelude.Text -> SubscriberProperty+mkSubscriberProperty address type'+ = SubscriberProperty+ {haddock_workaround_ = (), address = address, type' = type'}+instance ToResourceProperties SubscriberProperty where+ toResourceProperties SubscriberProperty {..}+ = ResourceProperties+ {awsType = "AWS::Budgets::BudgetsAction.Subscriber",+ supportsTags = Prelude.False,+ properties = ["Address" JSON..= address, "Type" JSON..= type']}+instance JSON.ToJSON SubscriberProperty where+ toJSON SubscriberProperty {..}+ = JSON.object ["Address" JSON..= address, "Type" JSON..= type']+instance Property "Address" SubscriberProperty where+ type PropertyType "Address" SubscriberProperty = Value Prelude.Text+ set newValue SubscriberProperty {..}+ = SubscriberProperty {address = newValue, ..}+instance Property "Type" SubscriberProperty where+ type PropertyType "Type" SubscriberProperty = Value Prelude.Text+ set newValue SubscriberProperty {..}+ = SubscriberProperty {type' = newValue, ..}
+ gen/Stratosphere/Budgets/BudgetsAction/SubscriberProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.Budgets.BudgetsAction.SubscriberProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SubscriberProperty :: Prelude.Type+instance ToResourceProperties SubscriberProperty+instance Prelude.Eq SubscriberProperty+instance Prelude.Show SubscriberProperty+instance JSON.ToJSON SubscriberProperty
+ stratosphere-budgets.cabal view
@@ -0,0 +1,95 @@+cabal-version: 1.12++-- This file has been generated from package.yaml by hpack version 0.38.2.+--+-- see: https://github.com/sol/hpack++name: stratosphere-budgets+version: 1.0.0+synopsis: Stratosphere integration for AWS Budgets.+description: Integration into stratosphere to generate resources and properties for AWS Budgets+category: AWS, Cloud, Budgets+stability: experimental+homepage: https://github.com/mbj/stratosphere#readme+bug-reports: https://github.com/mbj/stratosphere/issues+maintainer: Markus Schirp+license: MIT+license-file: LICENSE.md+build-type: Simple++source-repository head+ type: git+ location: https://github.com/mbj/stratosphere++flag development+ description: Run GHC with development flags+ manual: True+ default: False++library+ exposed-modules:+ Stratosphere.Budgets.Budget+ Stratosphere.Budgets.Budget.AutoAdjustDataProperty+ Stratosphere.Budgets.Budget.BudgetDataProperty+ Stratosphere.Budgets.Budget.CostCategoryValuesProperty+ Stratosphere.Budgets.Budget.CostTypesProperty+ Stratosphere.Budgets.Budget.ExpressionDimensionValuesProperty+ Stratosphere.Budgets.Budget.ExpressionProperty+ Stratosphere.Budgets.Budget.HistoricalOptionsProperty+ Stratosphere.Budgets.Budget.NotificationProperty+ Stratosphere.Budgets.Budget.NotificationWithSubscribersProperty+ Stratosphere.Budgets.Budget.ResourceTagProperty+ Stratosphere.Budgets.Budget.SpendProperty+ Stratosphere.Budgets.Budget.SubscriberProperty+ Stratosphere.Budgets.Budget.TagValuesProperty+ Stratosphere.Budgets.Budget.TimePeriodProperty+ Stratosphere.Budgets.BudgetsAction+ Stratosphere.Budgets.BudgetsAction.ActionThresholdProperty+ Stratosphere.Budgets.BudgetsAction.DefinitionProperty+ Stratosphere.Budgets.BudgetsAction.IamActionDefinitionProperty+ Stratosphere.Budgets.BudgetsAction.ResourceTagProperty+ Stratosphere.Budgets.BudgetsAction.ScpActionDefinitionProperty+ Stratosphere.Budgets.BudgetsAction.SsmActionDefinitionProperty+ Stratosphere.Budgets.BudgetsAction.SubscriberProperty+ other-modules:+ Paths_stratosphere_budgets+ hs-source-dirs:+ gen+ default-extensions:+ DataKinds+ DeriveGeneric+ DerivingStrategies+ DerivingVia+ DuplicateRecordFields+ FlexibleContexts+ FlexibleInstances+ GADTs+ GeneralizedNewtypeDeriving+ InstanceSigs+ LambdaCase+ MultiParamTypeClasses+ NoFieldSelectors+ NoImplicitPrelude+ NumericUnderscores+ OverloadedLists+ OverloadedRecordDot+ OverloadedStrings+ PolyKinds+ RecordWildCards+ ScopedTypeVariables+ StandaloneDeriving+ Strict+ TemplateHaskell+ TupleSections+ TypeApplications+ TypeFamilies+ ghc-options: -Wall -Wcompat -Widentities -Wimplicit-prelude -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-local-signatures -Wmissing-signatures -Wmonomorphism-restriction -Wredundant-constraints -fhide-source-paths -funbox-strict-fields -optP-Wno-nonportable-include-path -Wno-unused-imports+ build-depends:+ aeson ==2.*+ , base >=4.8 && <4.22+ , stratosphere ==1.0.0+ default-language: Haskell2010+ if flag(development)+ ghc-options: -Werror+ else+ ghc-options: -Wwarn