Budgets.Budget
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-timeperiod.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-subscriber.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-spend.html
and cost_types = {
include_support : bool option;
include_other_subscription : bool option;
include_tax : bool option;
include_subscription : bool option;
use_blended : bool option;
include_upfront : bool option;
include_discount : bool option;
include_credit : bool option;
include_recurring : bool option;
use_amortized : bool option;
include_refund : bool option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-costtypes.html
and notification = {
comparison_operator : string;
notification_type : string;
threshold : float;
threshold_type : string option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notification.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-historicaloptions.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-autoadjustdata.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-notificationwithsubscribers.html
and budget_data = {
budget_limit : spend option;
time_period : time_period option;
auto_adjust_data : auto_adjust_data option;
time_unit : string;
planned_budget_limits : Yojson.Safe.t option;
cost_filters : Yojson.Safe.t option;
budget_name : string option;
cost_types : cost_types option;
budget_type : string;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-budgetdata.html
type properties = {
notifications_with_subscribers : notification_with_subscribers list option;
budget : budget_data;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html;
val make_properties :
?notifications_with_subscribers:notification_with_subscribers list ->
budget:budget_data ->
unit ->
properties
val make_time_period : ?start:string -> ?end_:string -> unit -> time_period
val make_subscriber :
subscription_type:string ->
address:string ->
unit ->
subscriber
val make_spend : amount:float -> unit:string -> unit -> spend
val make_cost_types :
?include_support:bool ->
?include_other_subscription:bool ->
?include_tax:bool ->
?include_subscription:bool ->
?use_blended:bool ->
?include_upfront:bool ->
?include_discount:bool ->
?include_credit:bool ->
?include_recurring:bool ->
?use_amortized:bool ->
?include_refund:bool ->
unit ->
cost_types
val make_notification :
comparison_operator:string ->
notification_type:string ->
threshold:float ->
?threshold_type:string ->
unit ->
notification
val make_historical_options :
budget_adjustment_period:int ->
unit ->
historical_options
val make_auto_adjust_data :
auto_adjust_type:string ->
?historical_options:historical_options ->
unit ->
auto_adjust_data
val make_notification_with_subscribers :
subscribers:subscriber list ->
notification:notification ->
unit ->
notification_with_subscribers
val make_budget_data :
?budget_limit:spend ->
?time_period:time_period ->
?auto_adjust_data:auto_adjust_data ->
time_unit:string ->
?planned_budget_limits:Yojson.Safe.t ->
?cost_filters:Yojson.Safe.t ->
?budget_name:string ->
?cost_types:cost_types ->
budget_type:string ->
unit ->
budget_data
val yojson_of_time_period : time_period -> Yojson.Safe.t
val yojson_of_subscriber :
subscriber ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_spend : spend -> Yojson.Safe.t
val yojson_of_cost_types : cost_types -> Yojson.Safe.t
val yojson_of_notification :
notification ->
[> `Assoc of (string * Yojson.Safe.t) list
| `List of [> `Assoc of (string * Yojson.Safe.t) list ] list ]
val yojson_of_historical_options : historical_options -> Yojson.Safe.t
val yojson_of_auto_adjust_data : auto_adjust_data -> Yojson.Safe.t
val yojson_of_notification_with_subscribers :
notification_with_subscribers ->
[> `Assoc of
(string
* [> `Assoc of (string * Yojson.Safe.t) list
| `List of [> `Assoc of (string * Yojson.Safe.t) list ] list ])
list ]
val yojson_of_budget_data :
budget_data ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties :
properties ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val create_attributes : string -> attributes