1 | import {Request} from '../lib/request';
|
2 | import {Response} from '../lib/response';
|
3 | import {AWSError} from '../lib/error';
|
4 | import {Service} from '../lib/service';
|
5 | import {ServiceConfigurationOptions} from '../lib/service';
|
6 | import {ConfigBase as Config} from '../lib/config';
|
7 | interface Blob {}
|
8 | declare class Budgets extends Service {
|
9 | |
10 |
|
11 |
|
12 | constructor(options?: Budgets.Types.ClientConfiguration)
|
13 | config: Config & Budgets.Types.ClientConfiguration;
|
14 | /**
|
15 | * Creates a budget and, if included, notifications and subscribers.
|
16 | */
|
17 | createBudget(params: Budgets.Types.CreateBudgetRequest, callback?: (err: AWSError, data: Budgets.Types.CreateBudgetResponse) => void): Request<Budgets.Types.CreateBudgetResponse, AWSError>;
|
18 | /**
|
19 | * Creates a budget and, if included, notifications and subscribers.
|
20 | */
|
21 | createBudget(callback?: (err: AWSError, data: Budgets.Types.CreateBudgetResponse) => void): Request<Budgets.Types.CreateBudgetResponse, AWSError>;
|
22 | /**
|
23 | * Creates a notification. You must create the budget before you create the associated notification.
|
24 | */
|
25 | createNotification(params: Budgets.Types.CreateNotificationRequest, callback?: (err: AWSError, data: Budgets.Types.CreateNotificationResponse) => void): Request<Budgets.Types.CreateNotificationResponse, AWSError>;
|
26 | /**
|
27 | * Creates a notification. You must create the budget before you create the associated notification.
|
28 | */
|
29 | createNotification(callback?: (err: AWSError, data: Budgets.Types.CreateNotificationResponse) => void): Request<Budgets.Types.CreateNotificationResponse, AWSError>;
|
30 | /**
|
31 | * Creates a subscriber. You must create the associated budget and notification before you create the subscriber.
|
32 | */
|
33 | createSubscriber(params: Budgets.Types.CreateSubscriberRequest, callback?: (err: AWSError, data: Budgets.Types.CreateSubscriberResponse) => void): Request<Budgets.Types.CreateSubscriberResponse, AWSError>;
|
34 | /**
|
35 | * Creates a subscriber. You must create the associated budget and notification before you create the subscriber.
|
36 | */
|
37 | createSubscriber(callback?: (err: AWSError, data: Budgets.Types.CreateSubscriberResponse) => void): Request<Budgets.Types.CreateSubscriberResponse, AWSError>;
|
38 | /**
|
39 | * Deletes a budget. You can delete your budget at any time. Deleting a budget also deletes the notifications and subscribers that are associated with that budget.
|
40 | */
|
41 | deleteBudget(params: Budgets.Types.DeleteBudgetRequest, callback?: (err: AWSError, data: Budgets.Types.DeleteBudgetResponse) => void): Request<Budgets.Types.DeleteBudgetResponse, AWSError>;
|
42 | /**
|
43 | * Deletes a budget. You can delete your budget at any time. Deleting a budget also deletes the notifications and subscribers that are associated with that budget.
|
44 | */
|
45 | deleteBudget(callback?: (err: AWSError, data: Budgets.Types.DeleteBudgetResponse) => void): Request<Budgets.Types.DeleteBudgetResponse, AWSError>;
|
46 | /**
|
47 | * Deletes a notification. Deleting a notification also deletes the subscribers that are associated with the notification.
|
48 | */
|
49 | deleteNotification(params: Budgets.Types.DeleteNotificationRequest, callback?: (err: AWSError, data: Budgets.Types.DeleteNotificationResponse) => void): Request<Budgets.Types.DeleteNotificationResponse, AWSError>;
|
50 | /**
|
51 | * Deletes a notification. Deleting a notification also deletes the subscribers that are associated with the notification.
|
52 | */
|
53 | deleteNotification(callback?: (err: AWSError, data: Budgets.Types.DeleteNotificationResponse) => void): Request<Budgets.Types.DeleteNotificationResponse, AWSError>;
|
54 | /**
|
55 | * Deletes a subscriber. Deleting the last subscriber to a notification also deletes the notification.
|
56 | */
|
57 | deleteSubscriber(params: Budgets.Types.DeleteSubscriberRequest, callback?: (err: AWSError, data: Budgets.Types.DeleteSubscriberResponse) => void): Request<Budgets.Types.DeleteSubscriberResponse, AWSError>;
|
58 | /**
|
59 | * Deletes a subscriber. Deleting the last subscriber to a notification also deletes the notification.
|
60 | */
|
61 | deleteSubscriber(callback?: (err: AWSError, data: Budgets.Types.DeleteSubscriberResponse) => void): Request<Budgets.Types.DeleteSubscriberResponse, AWSError>;
|
62 | /**
|
63 | * Describes a budget.
|
64 | */
|
65 | describeBudget(params: Budgets.Types.DescribeBudgetRequest, callback?: (err: AWSError, data: Budgets.Types.DescribeBudgetResponse) => void): Request<Budgets.Types.DescribeBudgetResponse, AWSError>;
|
66 | /**
|
67 | * Describes a budget.
|
68 | */
|
69 | describeBudget(callback?: (err: AWSError, data: Budgets.Types.DescribeBudgetResponse) => void): Request<Budgets.Types.DescribeBudgetResponse, AWSError>;
|
70 | /**
|
71 | * Describes the history for DAILY, MONTHLY, and QUARTERLY budgets. Budget history isn't available for ANNUAL budgets.
|
72 | */
|
73 | describeBudgetPerformanceHistory(params: Budgets.Types.DescribeBudgetPerformanceHistoryRequest, callback?: (err: AWSError, data: Budgets.Types.DescribeBudgetPerformanceHistoryResponse) => void): Request<Budgets.Types.DescribeBudgetPerformanceHistoryResponse, AWSError>;
|
74 | /**
|
75 | * Describes the history for DAILY, MONTHLY, and QUARTERLY budgets. Budget history isn't available for ANNUAL budgets.
|
76 | */
|
77 | describeBudgetPerformanceHistory(callback?: (err: AWSError, data: Budgets.Types.DescribeBudgetPerformanceHistoryResponse) => void): Request<Budgets.Types.DescribeBudgetPerformanceHistoryResponse, AWSError>;
|
78 | /**
|
79 | * Lists the budgets that are associated with an account.
|
80 | */
|
81 | describeBudgets(params: Budgets.Types.DescribeBudgetsRequest, callback?: (err: AWSError, data: Budgets.Types.DescribeBudgetsResponse) => void): Request<Budgets.Types.DescribeBudgetsResponse, AWSError>;
|
82 | /**
|
83 | * Lists the budgets that are associated with an account.
|
84 | */
|
85 | describeBudgets(callback?: (err: AWSError, data: Budgets.Types.DescribeBudgetsResponse) => void): Request<Budgets.Types.DescribeBudgetsResponse, AWSError>;
|
86 | /**
|
87 | * Lists the notifications that are associated with a budget.
|
88 | */
|
89 | describeNotificationsForBudget(params: Budgets.Types.DescribeNotificationsForBudgetRequest, callback?: (err: AWSError, data: Budgets.Types.DescribeNotificationsForBudgetResponse) => void): Request<Budgets.Types.DescribeNotificationsForBudgetResponse, AWSError>;
|
90 | /**
|
91 | * Lists the notifications that are associated with a budget.
|
92 | */
|
93 | describeNotificationsForBudget(callback?: (err: AWSError, data: Budgets.Types.DescribeNotificationsForBudgetResponse) => void): Request<Budgets.Types.DescribeNotificationsForBudgetResponse, AWSError>;
|
94 | /**
|
95 | * Lists the subscribers that are associated with a notification.
|
96 | */
|
97 | describeSubscribersForNotification(params: Budgets.Types.DescribeSubscribersForNotificationRequest, callback?: (err: AWSError, data: Budgets.Types.DescribeSubscribersForNotificationResponse) => void): Request<Budgets.Types.DescribeSubscribersForNotificationResponse, AWSError>;
|
98 | /**
|
99 | * Lists the subscribers that are associated with a notification.
|
100 | */
|
101 | describeSubscribersForNotification(callback?: (err: AWSError, data: Budgets.Types.DescribeSubscribersForNotificationResponse) => void): Request<Budgets.Types.DescribeSubscribersForNotificationResponse, AWSError>;
|
102 | /**
|
103 | * Updates a budget. You can change every part of a budget except for the budgetName and the calculatedSpend. When you modify a budget, the calculatedSpend drops to zero until AWS has new usage data to use for forecasting.
|
104 | */
|
105 | updateBudget(params: Budgets.Types.UpdateBudgetRequest, callback?: (err: AWSError, data: Budgets.Types.UpdateBudgetResponse) => void): Request<Budgets.Types.UpdateBudgetResponse, AWSError>;
|
106 | /**
|
107 | * Updates a budget. You can change every part of a budget except for the budgetName and the calculatedSpend. When you modify a budget, the calculatedSpend drops to zero until AWS has new usage data to use for forecasting.
|
108 | */
|
109 | updateBudget(callback?: (err: AWSError, data: Budgets.Types.UpdateBudgetResponse) => void): Request<Budgets.Types.UpdateBudgetResponse, AWSError>;
|
110 | /**
|
111 | * Updates a notification.
|
112 | */
|
113 | updateNotification(params: Budgets.Types.UpdateNotificationRequest, callback?: (err: AWSError, data: Budgets.Types.UpdateNotificationResponse) => void): Request<Budgets.Types.UpdateNotificationResponse, AWSError>;
|
114 | /**
|
115 | * Updates a notification.
|
116 | */
|
117 | updateNotification(callback?: (err: AWSError, data: Budgets.Types.UpdateNotificationResponse) => void): Request<Budgets.Types.UpdateNotificationResponse, AWSError>;
|
118 | /**
|
119 | * Updates a subscriber.
|
120 | */
|
121 | updateSubscriber(params: Budgets.Types.UpdateSubscriberRequest, callback?: (err: AWSError, data: Budgets.Types.UpdateSubscriberResponse) => void): Request<Budgets.Types.UpdateSubscriberResponse, AWSError>;
|
122 | /**
|
123 | * Updates a subscriber.
|
124 | */
|
125 | updateSubscriber(callback?: (err: AWSError, data: Budgets.Types.UpdateSubscriberResponse) => void): Request<Budgets.Types.UpdateSubscriberResponse, AWSError>;
|
126 | }
|
127 | declare namespace Budgets {
|
128 | export type AccountId = string;
|
129 | export interface Budget {
|
130 | |
131 |
|
132 |
|
133 | BudgetName: BudgetName;
|
134 | |
135 |
|
136 |
|
137 | BudgetLimit?: Spend;
|
138 | |
139 |
|
140 |
|
141 | CostFilters?: CostFilters;
|
142 | |
143 |
|
144 |
|
145 | CostTypes?: CostTypes;
|
146 | |
147 |
|
148 |
|
149 | TimeUnit: TimeUnit;
|
150 | |
151 |
|
152 |
|
153 | TimePeriod?: TimePeriod;
|
154 | |
155 |
|
156 |
|
157 | CalculatedSpend?: CalculatedSpend;
|
158 | |
159 |
|
160 |
|
161 | BudgetType: BudgetType;
|
162 | |
163 |
|
164 |
|
165 | LastUpdatedTime?: GenericTimestamp;
|
166 | }
|
167 | export type BudgetName = string;
|
168 | export interface BudgetPerformanceHistory {
|
169 | BudgetName?: BudgetName;
|
170 | BudgetType?: BudgetType;
|
171 | |
172 |
|
173 |
|
174 | CostFilters?: CostFilters;
|
175 | |
176 |
|
177 |
|
178 | CostTypes?: CostTypes;
|
179 | TimeUnit?: TimeUnit;
|
180 | |
181 |
|
182 |
|
183 | BudgetedAndActualAmountsList?: BudgetedAndActualAmountsList;
|
184 | }
|
185 | export type BudgetType = "USAGE"|"COST"|"RI_UTILIZATION"|"RI_COVERAGE"|string;
|
186 | export interface BudgetedAndActualAmounts {
|
187 | |
188 |
|
189 |
|
190 | BudgetedAmount?: Spend;
|
191 | |
192 |
|
193 |
|
194 | ActualAmount?: Spend;
|
195 | |
196 |
|
197 |
|
198 | TimePeriod?: TimePeriod;
|
199 | }
|
200 | export type BudgetedAndActualAmountsList = BudgetedAndActualAmounts[];
|
201 | export type Budgets = Budget[];
|
202 | export interface CalculatedSpend {
|
203 | |
204 |
|
205 |
|
206 | ActualSpend: Spend;
|
207 | |
208 |
|
209 |
|
210 | ForecastedSpend?: Spend;
|
211 | }
|
212 | export type ComparisonOperator = "GREATER_THAN"|"LESS_THAN"|"EQUAL_TO"|string;
|
213 | export type CostFilters = {[key: string]: DimensionValues};
|
214 | export interface CostTypes {
|
215 | |
216 |
|
217 |
|
218 | IncludeTax?: NullableBoolean;
|
219 | |
220 |
|
221 |
|
222 | IncludeSubscription?: NullableBoolean;
|
223 | |
224 |
|
225 |
|
226 | UseBlended?: NullableBoolean;
|
227 | |
228 |
|
229 |
|
230 | IncludeRefund?: NullableBoolean;
|
231 | |
232 |
|
233 |
|
234 | IncludeCredit?: NullableBoolean;
|
235 | |
236 |
|
237 |
|
238 | IncludeUpfront?: NullableBoolean;
|
239 | |
240 |
|
241 |
|
242 | IncludeRecurring?: NullableBoolean;
|
243 | |
244 |
|
245 |
|
246 | IncludeOtherSubscription?: NullableBoolean;
|
247 | |
248 |
|
249 |
|
250 | IncludeSupport?: NullableBoolean;
|
251 | |
252 |
|
253 |
|
254 | IncludeDiscount?: NullableBoolean;
|
255 | |
256 |
|
257 |
|
258 | UseAmortized?: NullableBoolean;
|
259 | }
|
260 | export interface CreateBudgetRequest {
|
261 | |
262 |
|
263 |
|
264 | AccountId: AccountId;
|
265 | |
266 |
|
267 |
|
268 | Budget: Budget;
|
269 | |
270 |
|
271 |
|
272 | NotificationsWithSubscribers?: NotificationWithSubscribersList;
|
273 | }
|
274 | export interface CreateBudgetResponse {
|
275 | }
|
276 | export interface CreateNotificationRequest {
|
277 | |
278 |
|
279 |
|
280 | AccountId: AccountId;
|
281 | |
282 |
|
283 |
|
284 | BudgetName: BudgetName;
|
285 | |
286 |
|
287 |
|
288 | Notification: Notification;
|
289 | |
290 |
|
291 |
|
292 | Subscribers: Subscribers;
|
293 | }
|
294 | export interface CreateNotificationResponse {
|
295 | }
|
296 | export interface CreateSubscriberRequest {
|
297 | |
298 |
|
299 |
|
300 | AccountId: AccountId;
|
301 | |
302 |
|
303 |
|
304 | BudgetName: BudgetName;
|
305 | |
306 |
|
307 |
|
308 | Notification: Notification;
|
309 | |
310 |
|
311 |
|
312 | Subscriber: Subscriber;
|
313 | }
|
314 | export interface CreateSubscriberResponse {
|
315 | }
|
316 | export interface DeleteBudgetRequest {
|
317 | |
318 |
|
319 |
|
320 | AccountId: AccountId;
|
321 | |
322 |
|
323 |
|
324 | BudgetName: BudgetName;
|
325 | }
|
326 | export interface DeleteBudgetResponse {
|
327 | }
|
328 | export interface DeleteNotificationRequest {
|
329 | |
330 |
|
331 |
|
332 | AccountId: AccountId;
|
333 | |
334 |
|
335 |
|
336 | BudgetName: BudgetName;
|
337 | |
338 |
|
339 |
|
340 | Notification: Notification;
|
341 | }
|
342 | export interface DeleteNotificationResponse {
|
343 | }
|
344 | export interface DeleteSubscriberRequest {
|
345 | |
346 |
|
347 |
|
348 | AccountId: AccountId;
|
349 | |
350 |
|
351 |
|
352 | BudgetName: BudgetName;
|
353 | |
354 |
|
355 |
|
356 | Notification: Notification;
|
357 | |
358 |
|
359 |
|
360 | Subscriber: Subscriber;
|
361 | }
|
362 | export interface DeleteSubscriberResponse {
|
363 | }
|
364 | export interface DescribeBudgetPerformanceHistoryRequest {
|
365 | AccountId: AccountId;
|
366 | BudgetName: BudgetName;
|
367 | |
368 |
|
369 |
|
370 | TimePeriod?: TimePeriod;
|
371 | MaxResults?: MaxResults;
|
372 | NextToken?: GenericString;
|
373 | }
|
374 | export interface DescribeBudgetPerformanceHistoryResponse {
|
375 | |
376 |
|
377 |
|
378 | BudgetPerformanceHistory?: BudgetPerformanceHistory;
|
379 | NextToken?: GenericString;
|
380 | }
|
381 | export interface DescribeBudgetRequest {
|
382 | |
383 |
|
384 |
|
385 | AccountId: AccountId;
|
386 | |
387 |
|
388 |
|
389 | BudgetName: BudgetName;
|
390 | }
|
391 | export interface DescribeBudgetResponse {
|
392 | |
393 |
|
394 |
|
395 | Budget?: Budget;
|
396 | }
|
397 | export interface DescribeBudgetsRequest {
|
398 | |
399 |
|
400 |
|
401 | AccountId: AccountId;
|
402 | |
403 |
|
404 |
|
405 | MaxResults?: MaxResults;
|
406 | |
407 |
|
408 |
|
409 | NextToken?: GenericString;
|
410 | }
|
411 | export interface DescribeBudgetsResponse {
|
412 | |
413 |
|
414 |
|
415 | Budgets?: Budgets;
|
416 | |
417 |
|
418 |
|
419 | NextToken?: GenericString;
|
420 | }
|
421 | export interface DescribeNotificationsForBudgetRequest {
|
422 | |
423 |
|
424 |
|
425 | AccountId: AccountId;
|
426 | |
427 |
|
428 |
|
429 | BudgetName: BudgetName;
|
430 | |
431 |
|
432 |
|
433 | MaxResults?: MaxResults;
|
434 | |
435 |
|
436 |
|
437 | NextToken?: GenericString;
|
438 | }
|
439 | export interface DescribeNotificationsForBudgetResponse {
|
440 | |
441 |
|
442 |
|
443 | Notifications?: Notifications;
|
444 | |
445 |
|
446 |
|
447 | NextToken?: GenericString;
|
448 | }
|
449 | export interface DescribeSubscribersForNotificationRequest {
|
450 | |
451 |
|
452 |
|
453 | AccountId: AccountId;
|
454 | |
455 |
|
456 |
|
457 | BudgetName: BudgetName;
|
458 | |
459 |
|
460 |
|
461 | Notification: Notification;
|
462 | |
463 |
|
464 |
|
465 | MaxResults?: MaxResults;
|
466 | |
467 |
|
468 |
|
469 | NextToken?: GenericString;
|
470 | }
|
471 | export interface DescribeSubscribersForNotificationResponse {
|
472 | |
473 |
|
474 |
|
475 | Subscribers?: Subscribers;
|
476 | |
477 |
|
478 |
|
479 | NextToken?: GenericString;
|
480 | }
|
481 | export type DimensionValues = GenericString[];
|
482 | export type GenericString = string;
|
483 | export type GenericTimestamp = Date;
|
484 | export type MaxResults = number;
|
485 | export interface Notification {
|
486 | |
487 |
|
488 |
|
489 | NotificationType: NotificationType;
|
490 | |
491 |
|
492 |
|
493 | ComparisonOperator: ComparisonOperator;
|
494 | |
495 |
|
496 |
|
497 | Threshold: NotificationThreshold;
|
498 | |
499 |
|
500 |
|
501 | ThresholdType?: ThresholdType;
|
502 | |
503 |
|
504 |
|
505 | NotificationState?: NotificationState;
|
506 | }
|
507 | export type NotificationState = "OK"|"ALARM"|string;
|
508 | export type NotificationThreshold = number;
|
509 | export type NotificationType = "ACTUAL"|"FORECASTED"|string;
|
510 | export interface NotificationWithSubscribers {
|
511 | |
512 |
|
513 |
|
514 | Notification: Notification;
|
515 | |
516 |
|
517 |
|
518 | Subscribers: Subscribers;
|
519 | }
|
520 | export type NotificationWithSubscribersList = NotificationWithSubscribers[];
|
521 | export type Notifications = Notification[];
|
522 | export type NullableBoolean = boolean;
|
523 | export type NumericValue = string;
|
524 | export interface Spend {
|
525 | |
526 |
|
527 |
|
528 | Amount: NumericValue;
|
529 | |
530 |
|
531 |
|
532 | Unit: UnitValue;
|
533 | }
|
534 | export interface Subscriber {
|
535 | |
536 |
|
537 |
|
538 | SubscriptionType: SubscriptionType;
|
539 | |
540 |
|
541 |
|
542 | Address: SubscriberAddress;
|
543 | }
|
544 | export type SubscriberAddress = string;
|
545 | export type Subscribers = Subscriber[];
|
546 | export type SubscriptionType = "SNS"|"EMAIL"|string;
|
547 | export type ThresholdType = "PERCENTAGE"|"ABSOLUTE_VALUE"|string;
|
548 | export interface TimePeriod {
|
549 | |
550 |
|
551 |
|
552 | Start?: GenericTimestamp;
|
553 | |
554 |
|
555 |
|
556 | End?: GenericTimestamp;
|
557 | }
|
558 | export type TimeUnit = "DAILY"|"MONTHLY"|"QUARTERLY"|"ANNUALLY"|string;
|
559 | export type UnitValue = string;
|
560 | export interface UpdateBudgetRequest {
|
561 | |
562 |
|
563 |
|
564 | AccountId: AccountId;
|
565 | |
566 |
|
567 |
|
568 | NewBudget: Budget;
|
569 | }
|
570 | export interface UpdateBudgetResponse {
|
571 | }
|
572 | export interface UpdateNotificationRequest {
|
573 | |
574 |
|
575 |
|
576 | AccountId: AccountId;
|
577 | |
578 |
|
579 |
|
580 | BudgetName: BudgetName;
|
581 | |
582 |
|
583 |
|
584 | OldNotification: Notification;
|
585 | |
586 |
|
587 |
|
588 | NewNotification: Notification;
|
589 | }
|
590 | export interface UpdateNotificationResponse {
|
591 | }
|
592 | export interface UpdateSubscriberRequest {
|
593 | |
594 |
|
595 |
|
596 | AccountId: AccountId;
|
597 | |
598 |
|
599 |
|
600 | BudgetName: BudgetName;
|
601 | |
602 |
|
603 |
|
604 | Notification: Notification;
|
605 | |
606 |
|
607 |
|
608 | OldSubscriber: Subscriber;
|
609 | |
610 |
|
611 |
|
612 | NewSubscriber: Subscriber;
|
613 | }
|
614 | export interface UpdateSubscriberResponse {
|
615 | }
|
616 | |
617 |
|
618 |
|
619 | export type apiVersion = "2016-10-20"|"latest"|string;
|
620 | export interface ClientApiVersions {
|
621 | |
622 |
|
623 |
|
624 | apiVersion?: apiVersion;
|
625 | }
|
626 | export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
|
627 | |
628 |
|
629 |
|
630 | export import Types = Budgets;
|
631 | }
|
632 | export = Budgets;
|