aws-sdk-budgets 1.62.0 → 1.64.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/sig/client.rbs ADDED
@@ -0,0 +1,623 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module Budgets
10
+ class Client < ::Seahorse::Client::Base
11
+ include ::Aws::ClientStubs
12
+
13
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#initialize-instance_method
14
+ def self.new: (
15
+ ?credentials: untyped,
16
+ ?region: String,
17
+ ?access_key_id: String,
18
+ ?active_endpoint_cache: bool,
19
+ ?adaptive_retry_wait_to_fill: bool,
20
+ ?client_side_monitoring: bool,
21
+ ?client_side_monitoring_client_id: String,
22
+ ?client_side_monitoring_host: String,
23
+ ?client_side_monitoring_port: Integer,
24
+ ?client_side_monitoring_publisher: untyped,
25
+ ?convert_params: bool,
26
+ ?correct_clock_skew: bool,
27
+ ?defaults_mode: String,
28
+ ?disable_host_prefix_injection: bool,
29
+ ?disable_request_compression: bool,
30
+ ?endpoint: String,
31
+ ?endpoint_cache_max_entries: Integer,
32
+ ?endpoint_cache_max_threads: Integer,
33
+ ?endpoint_cache_poll_interval: Integer,
34
+ ?endpoint_discovery: bool,
35
+ ?ignore_configured_endpoint_urls: bool,
36
+ ?log_formatter: untyped,
37
+ ?log_level: Symbol,
38
+ ?logger: untyped,
39
+ ?max_attempts: Integer,
40
+ ?profile: String,
41
+ ?request_min_compression_size_bytes: Integer,
42
+ ?retry_backoff: Proc,
43
+ ?retry_base_delay: Float,
44
+ ?retry_jitter: (:none | :equal | :full | ^(Integer) -> Integer),
45
+ ?retry_limit: Integer,
46
+ ?retry_max_delay: Integer,
47
+ ?retry_mode: ("legacy" | "standard" | "adaptive"),
48
+ ?sdk_ua_app_id: String,
49
+ ?secret_access_key: String,
50
+ ?session_token: String,
51
+ ?simple_json: bool,
52
+ ?stub_responses: untyped,
53
+ ?token_provider: untyped,
54
+ ?use_dualstack_endpoint: bool,
55
+ ?use_fips_endpoint: bool,
56
+ ?validate_params: bool,
57
+ ?endpoint_provider: untyped,
58
+ ?http_proxy: String,
59
+ ?http_open_timeout: (Float | Integer),
60
+ ?http_read_timeout: (Float | Integer),
61
+ ?http_idle_timeout: (Float | Integer),
62
+ ?http_continue_timeout: (Float | Integer),
63
+ ?ssl_timeout: (Float | Integer | nil),
64
+ ?http_wire_trace: bool,
65
+ ?ssl_verify_peer: bool,
66
+ ?ssl_ca_bundle: String,
67
+ ?ssl_ca_directory: String,
68
+ ?ssl_ca_store: String,
69
+ ?on_chunk_received: Proc,
70
+ ?on_chunk_sent: Proc,
71
+ ?raise_response_errors: bool
72
+ ) -> instance
73
+ | (?Hash[Symbol, untyped]) -> instance
74
+
75
+
76
+ interface _CreateBudgetResponseSuccess
77
+ include ::Seahorse::Client::_ResponseSuccess[Types::CreateBudgetResponse]
78
+ end
79
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#create_budget-instance_method
80
+ def create_budget: (
81
+ account_id: ::String,
82
+ budget: {
83
+ budget_name: ::String,
84
+ budget_limit: {
85
+ amount: ::String,
86
+ unit: ::String
87
+ }?,
88
+ planned_budget_limits: Hash[::String, {
89
+ amount: ::String,
90
+ unit: ::String
91
+ }]?,
92
+ cost_filters: Hash[::String, Array[::String]]?,
93
+ cost_types: {
94
+ include_tax: bool?,
95
+ include_subscription: bool?,
96
+ use_blended: bool?,
97
+ include_refund: bool?,
98
+ include_credit: bool?,
99
+ include_upfront: bool?,
100
+ include_recurring: bool?,
101
+ include_other_subscription: bool?,
102
+ include_support: bool?,
103
+ include_discount: bool?,
104
+ use_amortized: bool?
105
+ }?,
106
+ time_unit: ("DAILY" | "MONTHLY" | "QUARTERLY" | "ANNUALLY"),
107
+ time_period: {
108
+ start: ::Time?,
109
+ end: ::Time?
110
+ }?,
111
+ calculated_spend: {
112
+ actual_spend: {
113
+ amount: ::String,
114
+ unit: ::String
115
+ },
116
+ forecasted_spend: {
117
+ amount: ::String,
118
+ unit: ::String
119
+ }?
120
+ }?,
121
+ budget_type: ("USAGE" | "COST" | "RI_UTILIZATION" | "RI_COVERAGE" | "SAVINGS_PLANS_UTILIZATION" | "SAVINGS_PLANS_COVERAGE"),
122
+ last_updated_time: ::Time?,
123
+ auto_adjust_data: {
124
+ auto_adjust_type: ("HISTORICAL" | "FORECAST"),
125
+ historical_options: {
126
+ budget_adjustment_period: ::Integer,
127
+ look_back_available_periods: ::Integer?
128
+ }?,
129
+ last_auto_adjust_time: ::Time?
130
+ }?
131
+ },
132
+ ?notifications_with_subscribers: Array[
133
+ {
134
+ notification: {
135
+ notification_type: ("ACTUAL" | "FORECASTED"),
136
+ comparison_operator: ("GREATER_THAN" | "LESS_THAN" | "EQUAL_TO"),
137
+ threshold: ::Float,
138
+ threshold_type: ("PERCENTAGE" | "ABSOLUTE_VALUE")?,
139
+ notification_state: ("OK" | "ALARM")?
140
+ },
141
+ subscribers: Array[
142
+ {
143
+ subscription_type: ("SNS" | "EMAIL"),
144
+ address: ::String
145
+ },
146
+ ]
147
+ },
148
+ ]
149
+ ) -> _CreateBudgetResponseSuccess
150
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateBudgetResponseSuccess
151
+
152
+ interface _CreateBudgetActionResponseSuccess
153
+ include ::Seahorse::Client::_ResponseSuccess[Types::CreateBudgetActionResponse]
154
+ def account_id: () -> ::String
155
+ def budget_name: () -> ::String
156
+ def action_id: () -> ::String
157
+ end
158
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#create_budget_action-instance_method
159
+ def create_budget_action: (
160
+ account_id: ::String,
161
+ budget_name: ::String,
162
+ notification_type: ("ACTUAL" | "FORECASTED"),
163
+ action_type: ("APPLY_IAM_POLICY" | "APPLY_SCP_POLICY" | "RUN_SSM_DOCUMENTS"),
164
+ action_threshold: {
165
+ action_threshold_value: ::Float,
166
+ action_threshold_type: ("PERCENTAGE" | "ABSOLUTE_VALUE")
167
+ },
168
+ definition: {
169
+ iam_action_definition: {
170
+ policy_arn: ::String,
171
+ roles: Array[::String]?,
172
+ groups: Array[::String]?,
173
+ users: Array[::String]?
174
+ }?,
175
+ scp_action_definition: {
176
+ policy_id: ::String,
177
+ target_ids: Array[::String]
178
+ }?,
179
+ ssm_action_definition: {
180
+ action_sub_type: ("STOP_EC2_INSTANCES" | "STOP_RDS_INSTANCES"),
181
+ region: ::String,
182
+ instance_ids: Array[::String]
183
+ }?
184
+ },
185
+ execution_role_arn: ::String,
186
+ approval_model: ("AUTOMATIC" | "MANUAL"),
187
+ subscribers: Array[
188
+ {
189
+ subscription_type: ("SNS" | "EMAIL"),
190
+ address: ::String
191
+ },
192
+ ]
193
+ ) -> _CreateBudgetActionResponseSuccess
194
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateBudgetActionResponseSuccess
195
+
196
+ interface _CreateNotificationResponseSuccess
197
+ include ::Seahorse::Client::_ResponseSuccess[Types::CreateNotificationResponse]
198
+ end
199
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#create_notification-instance_method
200
+ def create_notification: (
201
+ account_id: ::String,
202
+ budget_name: ::String,
203
+ notification: {
204
+ notification_type: ("ACTUAL" | "FORECASTED"),
205
+ comparison_operator: ("GREATER_THAN" | "LESS_THAN" | "EQUAL_TO"),
206
+ threshold: ::Float,
207
+ threshold_type: ("PERCENTAGE" | "ABSOLUTE_VALUE")?,
208
+ notification_state: ("OK" | "ALARM")?
209
+ },
210
+ subscribers: Array[
211
+ {
212
+ subscription_type: ("SNS" | "EMAIL"),
213
+ address: ::String
214
+ },
215
+ ]
216
+ ) -> _CreateNotificationResponseSuccess
217
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateNotificationResponseSuccess
218
+
219
+ interface _CreateSubscriberResponseSuccess
220
+ include ::Seahorse::Client::_ResponseSuccess[Types::CreateSubscriberResponse]
221
+ end
222
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#create_subscriber-instance_method
223
+ def create_subscriber: (
224
+ account_id: ::String,
225
+ budget_name: ::String,
226
+ notification: {
227
+ notification_type: ("ACTUAL" | "FORECASTED"),
228
+ comparison_operator: ("GREATER_THAN" | "LESS_THAN" | "EQUAL_TO"),
229
+ threshold: ::Float,
230
+ threshold_type: ("PERCENTAGE" | "ABSOLUTE_VALUE")?,
231
+ notification_state: ("OK" | "ALARM")?
232
+ },
233
+ subscriber: {
234
+ subscription_type: ("SNS" | "EMAIL"),
235
+ address: ::String
236
+ }
237
+ ) -> _CreateSubscriberResponseSuccess
238
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateSubscriberResponseSuccess
239
+
240
+ interface _DeleteBudgetResponseSuccess
241
+ include ::Seahorse::Client::_ResponseSuccess[Types::DeleteBudgetResponse]
242
+ end
243
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#delete_budget-instance_method
244
+ def delete_budget: (
245
+ account_id: ::String,
246
+ budget_name: ::String
247
+ ) -> _DeleteBudgetResponseSuccess
248
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteBudgetResponseSuccess
249
+
250
+ interface _DeleteBudgetActionResponseSuccess
251
+ include ::Seahorse::Client::_ResponseSuccess[Types::DeleteBudgetActionResponse]
252
+ def account_id: () -> ::String
253
+ def budget_name: () -> ::String
254
+ def action: () -> Types::Action
255
+ end
256
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#delete_budget_action-instance_method
257
+ def delete_budget_action: (
258
+ account_id: ::String,
259
+ budget_name: ::String,
260
+ action_id: ::String
261
+ ) -> _DeleteBudgetActionResponseSuccess
262
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteBudgetActionResponseSuccess
263
+
264
+ interface _DeleteNotificationResponseSuccess
265
+ include ::Seahorse::Client::_ResponseSuccess[Types::DeleteNotificationResponse]
266
+ end
267
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#delete_notification-instance_method
268
+ def delete_notification: (
269
+ account_id: ::String,
270
+ budget_name: ::String,
271
+ notification: {
272
+ notification_type: ("ACTUAL" | "FORECASTED"),
273
+ comparison_operator: ("GREATER_THAN" | "LESS_THAN" | "EQUAL_TO"),
274
+ threshold: ::Float,
275
+ threshold_type: ("PERCENTAGE" | "ABSOLUTE_VALUE")?,
276
+ notification_state: ("OK" | "ALARM")?
277
+ }
278
+ ) -> _DeleteNotificationResponseSuccess
279
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteNotificationResponseSuccess
280
+
281
+ interface _DeleteSubscriberResponseSuccess
282
+ include ::Seahorse::Client::_ResponseSuccess[Types::DeleteSubscriberResponse]
283
+ end
284
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#delete_subscriber-instance_method
285
+ def delete_subscriber: (
286
+ account_id: ::String,
287
+ budget_name: ::String,
288
+ notification: {
289
+ notification_type: ("ACTUAL" | "FORECASTED"),
290
+ comparison_operator: ("GREATER_THAN" | "LESS_THAN" | "EQUAL_TO"),
291
+ threshold: ::Float,
292
+ threshold_type: ("PERCENTAGE" | "ABSOLUTE_VALUE")?,
293
+ notification_state: ("OK" | "ALARM")?
294
+ },
295
+ subscriber: {
296
+ subscription_type: ("SNS" | "EMAIL"),
297
+ address: ::String
298
+ }
299
+ ) -> _DeleteSubscriberResponseSuccess
300
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteSubscriberResponseSuccess
301
+
302
+ interface _DescribeBudgetResponseSuccess
303
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeBudgetResponse]
304
+ def budget: () -> Types::Budget
305
+ end
306
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#describe_budget-instance_method
307
+ def describe_budget: (
308
+ account_id: ::String,
309
+ budget_name: ::String
310
+ ) -> _DescribeBudgetResponseSuccess
311
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeBudgetResponseSuccess
312
+
313
+ interface _DescribeBudgetActionResponseSuccess
314
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeBudgetActionResponse]
315
+ def account_id: () -> ::String
316
+ def budget_name: () -> ::String
317
+ def action: () -> Types::Action
318
+ end
319
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#describe_budget_action-instance_method
320
+ def describe_budget_action: (
321
+ account_id: ::String,
322
+ budget_name: ::String,
323
+ action_id: ::String
324
+ ) -> _DescribeBudgetActionResponseSuccess
325
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeBudgetActionResponseSuccess
326
+
327
+ interface _DescribeBudgetActionHistoriesResponseSuccess
328
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeBudgetActionHistoriesResponse]
329
+ def action_histories: () -> ::Array[Types::ActionHistory]
330
+ def next_token: () -> ::String
331
+ end
332
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#describe_budget_action_histories-instance_method
333
+ def describe_budget_action_histories: (
334
+ account_id: ::String,
335
+ budget_name: ::String,
336
+ action_id: ::String,
337
+ ?time_period: {
338
+ start: ::Time?,
339
+ end: ::Time?
340
+ },
341
+ ?max_results: ::Integer,
342
+ ?next_token: ::String
343
+ ) -> _DescribeBudgetActionHistoriesResponseSuccess
344
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeBudgetActionHistoriesResponseSuccess
345
+
346
+ interface _DescribeBudgetActionsForAccountResponseSuccess
347
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeBudgetActionsForAccountResponse]
348
+ def actions: () -> ::Array[Types::Action]
349
+ def next_token: () -> ::String
350
+ end
351
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#describe_budget_actions_for_account-instance_method
352
+ def describe_budget_actions_for_account: (
353
+ account_id: ::String,
354
+ ?max_results: ::Integer,
355
+ ?next_token: ::String
356
+ ) -> _DescribeBudgetActionsForAccountResponseSuccess
357
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeBudgetActionsForAccountResponseSuccess
358
+
359
+ interface _DescribeBudgetActionsForBudgetResponseSuccess
360
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeBudgetActionsForBudgetResponse]
361
+ def actions: () -> ::Array[Types::Action]
362
+ def next_token: () -> ::String
363
+ end
364
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#describe_budget_actions_for_budget-instance_method
365
+ def describe_budget_actions_for_budget: (
366
+ account_id: ::String,
367
+ budget_name: ::String,
368
+ ?max_results: ::Integer,
369
+ ?next_token: ::String
370
+ ) -> _DescribeBudgetActionsForBudgetResponseSuccess
371
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeBudgetActionsForBudgetResponseSuccess
372
+
373
+ interface _DescribeBudgetNotificationsForAccountResponseSuccess
374
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeBudgetNotificationsForAccountResponse]
375
+ def budget_notifications_for_account: () -> ::Array[Types::BudgetNotificationsForAccount]
376
+ def next_token: () -> ::String
377
+ end
378
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#describe_budget_notifications_for_account-instance_method
379
+ def describe_budget_notifications_for_account: (
380
+ account_id: ::String,
381
+ ?max_results: ::Integer,
382
+ ?next_token: ::String
383
+ ) -> _DescribeBudgetNotificationsForAccountResponseSuccess
384
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeBudgetNotificationsForAccountResponseSuccess
385
+
386
+ interface _DescribeBudgetPerformanceHistoryResponseSuccess
387
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeBudgetPerformanceHistoryResponse]
388
+ def budget_performance_history: () -> Types::BudgetPerformanceHistory
389
+ def next_token: () -> ::String
390
+ end
391
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#describe_budget_performance_history-instance_method
392
+ def describe_budget_performance_history: (
393
+ account_id: ::String,
394
+ budget_name: ::String,
395
+ ?time_period: {
396
+ start: ::Time?,
397
+ end: ::Time?
398
+ },
399
+ ?max_results: ::Integer,
400
+ ?next_token: ::String
401
+ ) -> _DescribeBudgetPerformanceHistoryResponseSuccess
402
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeBudgetPerformanceHistoryResponseSuccess
403
+
404
+ interface _DescribeBudgetsResponseSuccess
405
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeBudgetsResponse]
406
+ def budgets: () -> ::Array[Types::Budget]
407
+ def next_token: () -> ::String
408
+ end
409
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#describe_budgets-instance_method
410
+ def describe_budgets: (
411
+ account_id: ::String,
412
+ ?max_results: ::Integer,
413
+ ?next_token: ::String
414
+ ) -> _DescribeBudgetsResponseSuccess
415
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeBudgetsResponseSuccess
416
+
417
+ interface _DescribeNotificationsForBudgetResponseSuccess
418
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeNotificationsForBudgetResponse]
419
+ def notifications: () -> ::Array[Types::Notification]
420
+ def next_token: () -> ::String
421
+ end
422
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#describe_notifications_for_budget-instance_method
423
+ def describe_notifications_for_budget: (
424
+ account_id: ::String,
425
+ budget_name: ::String,
426
+ ?max_results: ::Integer,
427
+ ?next_token: ::String
428
+ ) -> _DescribeNotificationsForBudgetResponseSuccess
429
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeNotificationsForBudgetResponseSuccess
430
+
431
+ interface _DescribeSubscribersForNotificationResponseSuccess
432
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeSubscribersForNotificationResponse]
433
+ def subscribers: () -> ::Array[Types::Subscriber]
434
+ def next_token: () -> ::String
435
+ end
436
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#describe_subscribers_for_notification-instance_method
437
+ def describe_subscribers_for_notification: (
438
+ account_id: ::String,
439
+ budget_name: ::String,
440
+ notification: {
441
+ notification_type: ("ACTUAL" | "FORECASTED"),
442
+ comparison_operator: ("GREATER_THAN" | "LESS_THAN" | "EQUAL_TO"),
443
+ threshold: ::Float,
444
+ threshold_type: ("PERCENTAGE" | "ABSOLUTE_VALUE")?,
445
+ notification_state: ("OK" | "ALARM")?
446
+ },
447
+ ?max_results: ::Integer,
448
+ ?next_token: ::String
449
+ ) -> _DescribeSubscribersForNotificationResponseSuccess
450
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeSubscribersForNotificationResponseSuccess
451
+
452
+ interface _ExecuteBudgetActionResponseSuccess
453
+ include ::Seahorse::Client::_ResponseSuccess[Types::ExecuteBudgetActionResponse]
454
+ def account_id: () -> ::String
455
+ def budget_name: () -> ::String
456
+ def action_id: () -> ::String
457
+ def execution_type: () -> ("APPROVE_BUDGET_ACTION" | "RETRY_BUDGET_ACTION" | "REVERSE_BUDGET_ACTION" | "RESET_BUDGET_ACTION")
458
+ end
459
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#execute_budget_action-instance_method
460
+ def execute_budget_action: (
461
+ account_id: ::String,
462
+ budget_name: ::String,
463
+ action_id: ::String,
464
+ execution_type: ("APPROVE_BUDGET_ACTION" | "RETRY_BUDGET_ACTION" | "REVERSE_BUDGET_ACTION" | "RESET_BUDGET_ACTION")
465
+ ) -> _ExecuteBudgetActionResponseSuccess
466
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ExecuteBudgetActionResponseSuccess
467
+
468
+ interface _UpdateBudgetResponseSuccess
469
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateBudgetResponse]
470
+ end
471
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#update_budget-instance_method
472
+ def update_budget: (
473
+ account_id: ::String,
474
+ new_budget: {
475
+ budget_name: ::String,
476
+ budget_limit: {
477
+ amount: ::String,
478
+ unit: ::String
479
+ }?,
480
+ planned_budget_limits: Hash[::String, {
481
+ amount: ::String,
482
+ unit: ::String
483
+ }]?,
484
+ cost_filters: Hash[::String, Array[::String]]?,
485
+ cost_types: {
486
+ include_tax: bool?,
487
+ include_subscription: bool?,
488
+ use_blended: bool?,
489
+ include_refund: bool?,
490
+ include_credit: bool?,
491
+ include_upfront: bool?,
492
+ include_recurring: bool?,
493
+ include_other_subscription: bool?,
494
+ include_support: bool?,
495
+ include_discount: bool?,
496
+ use_amortized: bool?
497
+ }?,
498
+ time_unit: ("DAILY" | "MONTHLY" | "QUARTERLY" | "ANNUALLY"),
499
+ time_period: {
500
+ start: ::Time?,
501
+ end: ::Time?
502
+ }?,
503
+ calculated_spend: {
504
+ actual_spend: {
505
+ amount: ::String,
506
+ unit: ::String
507
+ },
508
+ forecasted_spend: {
509
+ amount: ::String,
510
+ unit: ::String
511
+ }?
512
+ }?,
513
+ budget_type: ("USAGE" | "COST" | "RI_UTILIZATION" | "RI_COVERAGE" | "SAVINGS_PLANS_UTILIZATION" | "SAVINGS_PLANS_COVERAGE"),
514
+ last_updated_time: ::Time?,
515
+ auto_adjust_data: {
516
+ auto_adjust_type: ("HISTORICAL" | "FORECAST"),
517
+ historical_options: {
518
+ budget_adjustment_period: ::Integer,
519
+ look_back_available_periods: ::Integer?
520
+ }?,
521
+ last_auto_adjust_time: ::Time?
522
+ }?
523
+ }
524
+ ) -> _UpdateBudgetResponseSuccess
525
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateBudgetResponseSuccess
526
+
527
+ interface _UpdateBudgetActionResponseSuccess
528
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateBudgetActionResponse]
529
+ def account_id: () -> ::String
530
+ def budget_name: () -> ::String
531
+ def old_action: () -> Types::Action
532
+ def new_action: () -> Types::Action
533
+ end
534
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#update_budget_action-instance_method
535
+ def update_budget_action: (
536
+ account_id: ::String,
537
+ budget_name: ::String,
538
+ action_id: ::String,
539
+ ?notification_type: ("ACTUAL" | "FORECASTED"),
540
+ ?action_threshold: {
541
+ action_threshold_value: ::Float,
542
+ action_threshold_type: ("PERCENTAGE" | "ABSOLUTE_VALUE")
543
+ },
544
+ ?definition: {
545
+ iam_action_definition: {
546
+ policy_arn: ::String,
547
+ roles: Array[::String]?,
548
+ groups: Array[::String]?,
549
+ users: Array[::String]?
550
+ }?,
551
+ scp_action_definition: {
552
+ policy_id: ::String,
553
+ target_ids: Array[::String]
554
+ }?,
555
+ ssm_action_definition: {
556
+ action_sub_type: ("STOP_EC2_INSTANCES" | "STOP_RDS_INSTANCES"),
557
+ region: ::String,
558
+ instance_ids: Array[::String]
559
+ }?
560
+ },
561
+ ?execution_role_arn: ::String,
562
+ ?approval_model: ("AUTOMATIC" | "MANUAL"),
563
+ ?subscribers: Array[
564
+ {
565
+ subscription_type: ("SNS" | "EMAIL"),
566
+ address: ::String
567
+ },
568
+ ]
569
+ ) -> _UpdateBudgetActionResponseSuccess
570
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateBudgetActionResponseSuccess
571
+
572
+ interface _UpdateNotificationResponseSuccess
573
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateNotificationResponse]
574
+ end
575
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#update_notification-instance_method
576
+ def update_notification: (
577
+ account_id: ::String,
578
+ budget_name: ::String,
579
+ old_notification: {
580
+ notification_type: ("ACTUAL" | "FORECASTED"),
581
+ comparison_operator: ("GREATER_THAN" | "LESS_THAN" | "EQUAL_TO"),
582
+ threshold: ::Float,
583
+ threshold_type: ("PERCENTAGE" | "ABSOLUTE_VALUE")?,
584
+ notification_state: ("OK" | "ALARM")?
585
+ },
586
+ new_notification: {
587
+ notification_type: ("ACTUAL" | "FORECASTED"),
588
+ comparison_operator: ("GREATER_THAN" | "LESS_THAN" | "EQUAL_TO"),
589
+ threshold: ::Float,
590
+ threshold_type: ("PERCENTAGE" | "ABSOLUTE_VALUE")?,
591
+ notification_state: ("OK" | "ALARM")?
592
+ }
593
+ ) -> _UpdateNotificationResponseSuccess
594
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateNotificationResponseSuccess
595
+
596
+ interface _UpdateSubscriberResponseSuccess
597
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateSubscriberResponse]
598
+ end
599
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Budgets/Client.html#update_subscriber-instance_method
600
+ def update_subscriber: (
601
+ account_id: ::String,
602
+ budget_name: ::String,
603
+ notification: {
604
+ notification_type: ("ACTUAL" | "FORECASTED"),
605
+ comparison_operator: ("GREATER_THAN" | "LESS_THAN" | "EQUAL_TO"),
606
+ threshold: ::Float,
607
+ threshold_type: ("PERCENTAGE" | "ABSOLUTE_VALUE")?,
608
+ notification_state: ("OK" | "ALARM")?
609
+ },
610
+ old_subscriber: {
611
+ subscription_type: ("SNS" | "EMAIL"),
612
+ address: ::String
613
+ },
614
+ new_subscriber: {
615
+ subscription_type: ("SNS" | "EMAIL"),
616
+ address: ::String
617
+ }
618
+ ) -> _UpdateSubscriberResponseSuccess
619
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateSubscriberResponseSuccess
620
+ end
621
+ end
622
+ end
623
+
data/sig/errors.rbs ADDED
@@ -0,0 +1,46 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module Budgets
10
+ module Errors
11
+ class ServiceError < ::Aws::Errors::ServiceError
12
+ end
13
+
14
+ class AccessDeniedException < ::Aws::Errors::ServiceError
15
+ def message: () -> ::String
16
+ end
17
+ class CreationLimitExceededException < ::Aws::Errors::ServiceError
18
+ def message: () -> ::String
19
+ end
20
+ class DuplicateRecordException < ::Aws::Errors::ServiceError
21
+ def message: () -> ::String
22
+ end
23
+ class ExpiredNextTokenException < ::Aws::Errors::ServiceError
24
+ def message: () -> ::String
25
+ end
26
+ class InternalErrorException < ::Aws::Errors::ServiceError
27
+ def message: () -> ::String
28
+ end
29
+ class InvalidNextTokenException < ::Aws::Errors::ServiceError
30
+ def message: () -> ::String
31
+ end
32
+ class InvalidParameterException < ::Aws::Errors::ServiceError
33
+ def message: () -> ::String
34
+ end
35
+ class NotFoundException < ::Aws::Errors::ServiceError
36
+ def message: () -> ::String
37
+ end
38
+ class ResourceLockedException < ::Aws::Errors::ServiceError
39
+ def message: () -> ::String
40
+ end
41
+ class ThrottlingException < ::Aws::Errors::ServiceError
42
+ def message: () -> ::String
43
+ end
44
+ end
45
+ end
46
+ end