module Stratosphere.BillingConductor.PricingRule (
module Exports, PricingRule(..), mkPricingRule
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.BillingConductor.PricingRule.TieringProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Tag
import Stratosphere.Value
data PricingRule
=
PricingRule {PricingRule -> ()
haddock_workaround_ :: (),
PricingRule -> Maybe (Value Text)
billingEntity :: (Prelude.Maybe (Value Prelude.Text)),
PricingRule -> Maybe (Value Text)
description :: (Prelude.Maybe (Value Prelude.Text)),
PricingRule -> Maybe (Value Double)
modifierPercentage :: (Prelude.Maybe (Value Prelude.Double)),
PricingRule -> Value Text
name :: (Value Prelude.Text),
PricingRule -> Maybe (Value Text)
operation :: (Prelude.Maybe (Value Prelude.Text)),
PricingRule -> Value Text
scope :: (Value Prelude.Text),
PricingRule -> Maybe (Value Text)
service :: (Prelude.Maybe (Value Prelude.Text)),
PricingRule -> Maybe [Tag]
tags :: (Prelude.Maybe [Tag]),
PricingRule -> Maybe TieringProperty
tiering :: (Prelude.Maybe TieringProperty),
PricingRule -> Value Text
type' :: (Value Prelude.Text),
PricingRule -> Maybe (Value Text)
usageType :: (Prelude.Maybe (Value Prelude.Text))}
deriving stock (PricingRule -> PricingRule -> Bool
(PricingRule -> PricingRule -> Bool)
-> (PricingRule -> PricingRule -> Bool) -> Eq PricingRule
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: PricingRule -> PricingRule -> Bool
== :: PricingRule -> PricingRule -> Bool
$c/= :: PricingRule -> PricingRule -> Bool
/= :: PricingRule -> PricingRule -> Bool
Prelude.Eq, Int -> PricingRule -> ShowS
[PricingRule] -> ShowS
PricingRule -> String
(Int -> PricingRule -> ShowS)
-> (PricingRule -> String)
-> ([PricingRule] -> ShowS)
-> Show PricingRule
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> PricingRule -> ShowS
showsPrec :: Int -> PricingRule -> ShowS
$cshow :: PricingRule -> String
show :: PricingRule -> String
$cshowList :: [PricingRule] -> ShowS
showList :: [PricingRule] -> ShowS
Prelude.Show)
mkPricingRule ::
Value Prelude.Text
-> Value Prelude.Text -> Value Prelude.Text -> PricingRule
mkPricingRule :: Value Text -> Value Text -> Value Text -> PricingRule
mkPricingRule Value Text
name Value Text
scope Value Text
type'
= PricingRule
{haddock_workaround_ :: ()
haddock_workaround_ = (), name :: Value Text
name = Value Text
name, scope :: Value Text
scope = Value Text
scope,
type' :: Value Text
type' = Value Text
type', billingEntity :: Maybe (Value Text)
billingEntity = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing,
description :: Maybe (Value Text)
description = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing,
modifierPercentage :: Maybe (Value Double)
modifierPercentage = Maybe (Value Double)
forall a. Maybe a
Prelude.Nothing, operation :: Maybe (Value Text)
operation = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing,
service :: Maybe (Value Text)
service = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing, tags :: Maybe [Tag]
tags = Maybe [Tag]
forall a. Maybe a
Prelude.Nothing,
tiering :: Maybe TieringProperty
tiering = Maybe TieringProperty
forall a. Maybe a
Prelude.Nothing, usageType :: Maybe (Value Text)
usageType = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties PricingRule where
toResourceProperties :: PricingRule -> ResourceProperties
toResourceProperties PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::BillingConductor::PricingRule",
supportsTags :: Bool
supportsTags = Bool
Prelude.True,
properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
[Key
"Name" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
name, Key
"Scope" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
scope, Key
"Type" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
type']
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"BillingEntity" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
billingEntity,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Description" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
description,
Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ModifierPercentage" (Value Double -> (Key, Value))
-> Maybe (Value Double) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Double)
modifierPercentage,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Operation" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
operation,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Service" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
service,
Key -> [Tag] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Tags" ([Tag] -> (Key, Value)) -> Maybe [Tag] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [Tag]
tags,
Key -> TieringProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Tiering" (TieringProperty -> (Key, Value))
-> Maybe TieringProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe TieringProperty
tiering,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"UsageType" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
usageType]))}
instance JSON.ToJSON PricingRule where
toJSON :: PricingRule -> Value
toJSON PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
= [(Key, Value)] -> Value
JSON.object
([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
[Key
"Name" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
name, Key
"Scope" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
scope, Key
"Type" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
type']
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"BillingEntity" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
billingEntity,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Description" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
description,
Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ModifierPercentage" (Value Double -> (Key, Value))
-> Maybe (Value Double) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Double)
modifierPercentage,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Operation" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
operation,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Service" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
service,
Key -> [Tag] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Tags" ([Tag] -> (Key, Value)) -> Maybe [Tag] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [Tag]
tags,
Key -> TieringProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Tiering" (TieringProperty -> (Key, Value))
-> Maybe TieringProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe TieringProperty
tiering,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"UsageType" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
usageType])))
instance Property "BillingEntity" PricingRule where
type PropertyType "BillingEntity" PricingRule = Value Prelude.Text
set :: PropertyType "BillingEntity" PricingRule
-> PricingRule -> PricingRule
set PropertyType "BillingEntity" PricingRule
newValue PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
= PricingRule {billingEntity :: Maybe (Value Text)
billingEntity = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "BillingEntity" PricingRule
Value Text
newValue, Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: ()
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
haddock_workaround_ :: ()
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
instance Property "Description" PricingRule where
type PropertyType "Description" PricingRule = Value Prelude.Text
set :: PropertyType "Description" PricingRule
-> PricingRule -> PricingRule
set PropertyType "Description" PricingRule
newValue PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
= PricingRule {description :: Maybe (Value Text)
description = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Description" PricingRule
Value Text
newValue, Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
instance Property "ModifierPercentage" PricingRule where
type PropertyType "ModifierPercentage" PricingRule = Value Prelude.Double
set :: PropertyType "ModifierPercentage" PricingRule
-> PricingRule -> PricingRule
set PropertyType "ModifierPercentage" PricingRule
newValue PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
= PricingRule {modifierPercentage :: Maybe (Value Double)
modifierPercentage = Value Double -> Maybe (Value Double)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "ModifierPercentage" PricingRule
Value Double
newValue, Maybe [Tag]
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
instance Property "Name" PricingRule where
type PropertyType "Name" PricingRule = Value Prelude.Text
set :: PropertyType "Name" PricingRule -> PricingRule -> PricingRule
set PropertyType "Name" PricingRule
newValue PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..} = PricingRule {name :: Value Text
name = PropertyType "Name" PricingRule
Value Text
newValue, Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
instance Property "Operation" PricingRule where
type PropertyType "Operation" PricingRule = Value Prelude.Text
set :: PropertyType "Operation" PricingRule -> PricingRule -> PricingRule
set PropertyType "Operation" PricingRule
newValue PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
= PricingRule {operation :: Maybe (Value Text)
operation = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Operation" PricingRule
Value Text
newValue, Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
instance Property "Scope" PricingRule where
type PropertyType "Scope" PricingRule = Value Prelude.Text
set :: PropertyType "Scope" PricingRule -> PricingRule -> PricingRule
set PropertyType "Scope" PricingRule
newValue PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..} = PricingRule {scope :: Value Text
scope = PropertyType "Scope" PricingRule
Value Text
newValue, Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
instance Property "Service" PricingRule where
type PropertyType "Service" PricingRule = Value Prelude.Text
set :: PropertyType "Service" PricingRule -> PricingRule -> PricingRule
set PropertyType "Service" PricingRule
newValue PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
= PricingRule {service :: Maybe (Value Text)
service = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Service" PricingRule
Value Text
newValue, Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
instance Property "Tags" PricingRule where
type PropertyType "Tags" PricingRule = [Tag]
set :: PropertyType "Tags" PricingRule -> PricingRule -> PricingRule
set PropertyType "Tags" PricingRule
newValue PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
= PricingRule {tags :: Maybe [Tag]
tags = [Tag] -> Maybe [Tag]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [Tag]
PropertyType "Tags" PricingRule
newValue, Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
instance Property "Tiering" PricingRule where
type PropertyType "Tiering" PricingRule = TieringProperty
set :: PropertyType "Tiering" PricingRule -> PricingRule -> PricingRule
set PropertyType "Tiering" PricingRule
newValue PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
= PricingRule {tiering :: Maybe TieringProperty
tiering = TieringProperty -> Maybe TieringProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Tiering" PricingRule
TieringProperty
newValue, Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
()
Value Text
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
type' :: Value Text
usageType :: Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
type' :: Value Text
usageType :: Maybe (Value Text)
..}
instance Property "Type" PricingRule where
type PropertyType "Type" PricingRule = Value Prelude.Text
set :: PropertyType "Type" PricingRule -> PricingRule -> PricingRule
set PropertyType "Type" PricingRule
newValue PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..} = PricingRule {type' :: Value Text
type' = PropertyType "Type" PricingRule
Value Text
newValue, Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
usageType :: Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
usageType :: Maybe (Value Text)
..}
instance Property "UsageType" PricingRule where
type PropertyType "UsageType" PricingRule = Value Prelude.Text
set :: PropertyType "UsageType" PricingRule -> PricingRule -> PricingRule
set PropertyType "UsageType" PricingRule
newValue PricingRule {Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: PricingRule -> ()
billingEntity :: PricingRule -> Maybe (Value Text)
description :: PricingRule -> Maybe (Value Text)
modifierPercentage :: PricingRule -> Maybe (Value Double)
name :: PricingRule -> Value Text
operation :: PricingRule -> Maybe (Value Text)
scope :: PricingRule -> Value Text
service :: PricingRule -> Maybe (Value Text)
tags :: PricingRule -> Maybe [Tag]
tiering :: PricingRule -> Maybe TieringProperty
type' :: PricingRule -> Value Text
usageType :: PricingRule -> Maybe (Value Text)
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
usageType :: Maybe (Value Text)
..}
= PricingRule {usageType :: Maybe (Value Text)
usageType = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "UsageType" PricingRule
Value Text
newValue, Maybe [Tag]
Maybe (Value Double)
Maybe (Value Text)
Maybe TieringProperty
()
Value Text
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
haddock_workaround_ :: ()
billingEntity :: Maybe (Value Text)
description :: Maybe (Value Text)
modifierPercentage :: Maybe (Value Double)
name :: Value Text
operation :: Maybe (Value Text)
scope :: Value Text
service :: Maybe (Value Text)
tags :: Maybe [Tag]
tiering :: Maybe TieringProperty
type' :: Value Text
..}