@aws-sdk/client-budgets 3.782.0 → 3.793.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.
@@ -602,190 +602,193 @@ export interface CostTypes {
602
602
  UseAmortized?: boolean | undefined;
603
603
  }
604
604
  /**
605
- * <p>The period of time that's covered by a budget. The period has a start date and an end
606
- * date. The start date must come before the end date. There are no restrictions on the end
607
- * date. </p>
608
605
  * @public
606
+ * @enum
609
607
  */
610
- export interface TimePeriod {
608
+ export declare const MatchOption: {
609
+ readonly ABSENT: "ABSENT";
610
+ readonly CASE_INSENSITIVE: "CASE_INSENSITIVE";
611
+ readonly CASE_SENSITIVE: "CASE_SENSITIVE";
612
+ readonly CONTAINS: "CONTAINS";
613
+ readonly ENDS_WITH: "ENDS_WITH";
614
+ readonly EQUALS: "EQUALS";
615
+ readonly GREATER_THAN_OR_EQUAL: "GREATER_THAN_OR_EQUAL";
616
+ readonly STARTS_WITH: "STARTS_WITH";
617
+ };
618
+ /**
619
+ * @public
620
+ */
621
+ export type MatchOption = (typeof MatchOption)[keyof typeof MatchOption];
622
+ /**
623
+ * <p>The cost category values used for filtering the costs.</p>
624
+ * @public
625
+ */
626
+ export interface CostCategoryValues {
611
627
  /**
612
- * <p>The start date for a budget. If you created your budget and didn't specify a start
613
- * date, Amazon Web Services defaults to the start of your chosen time period (DAILY,
614
- * MONTHLY, QUARTERLY, or ANNUALLY). For example, if you created your budget on January 24,
615
- * 2018, chose <code>DAILY</code>, and didn't set a start date, Amazon Web Services set your
616
- * start date to <code>01/24/18 00:00 UTC</code>. If you chose <code>MONTHLY</code>,
617
- * Amazon Web Services set your start date to <code>01/01/18 00:00 UTC</code>. The
618
- * defaults are the same for the Billing and Cost Management console and the API.</p>
619
- * <p>You can change your start date with the <code>UpdateBudget</code> operation.</p>
628
+ * <p>The unique name of the cost category.</p>
620
629
  * @public
621
630
  */
622
- Start?: Date | undefined;
631
+ Key?: string | undefined;
623
632
  /**
624
- * <p>The end date for a budget. If you didn't specify an end date, Amazon Web Services set
625
- * your end date to <code>06/15/87 00:00 UTC</code>. The defaults are the same for the
626
- * Billing and Cost Management console and the API.</p>
627
- * <p>After the end date, Amazon Web Services deletes the budget and all the associated
628
- * notifications and subscribers. You can change your end date with the
629
- * <code>UpdateBudget</code> operation.</p>
633
+ * <p>The specific value of the cost category.</p>
630
634
  * @public
631
635
  */
632
- End?: Date | undefined;
636
+ Values?: string[] | undefined;
637
+ /**
638
+ * <p>The match options that you can use to filter your results. </p>
639
+ * @public
640
+ */
641
+ MatchOptions?: MatchOption[] | undefined;
633
642
  }
634
643
  /**
635
644
  * @public
636
645
  * @enum
637
646
  */
638
- export declare const TimeUnit: {
639
- readonly ANNUALLY: "ANNUALLY";
640
- readonly DAILY: "DAILY";
641
- readonly MONTHLY: "MONTHLY";
642
- readonly QUARTERLY: "QUARTERLY";
647
+ export declare const Dimension: {
648
+ readonly AZ: "AZ";
649
+ readonly BILLING_ENTITY: "BILLING_ENTITY";
650
+ readonly CACHE_ENGINE: "CACHE_ENGINE";
651
+ readonly COST_CATEGORY_NAME: "COST_CATEGORY_NAME";
652
+ readonly DATABASE_ENGINE: "DATABASE_ENGINE";
653
+ readonly DEPLOYMENT_OPTION: "DEPLOYMENT_OPTION";
654
+ readonly INSTANCE_TYPE: "INSTANCE_TYPE";
655
+ readonly INSTANCE_TYPE_FAMILY: "INSTANCE_TYPE_FAMILY";
656
+ readonly INVOICING_ENTITY: "INVOICING_ENTITY";
657
+ readonly LEGAL_ENTITY_NAME: "LEGAL_ENTITY_NAME";
658
+ readonly LINKED_ACCOUNT: "LINKED_ACCOUNT";
659
+ readonly LINKED_ACCOUNT_NAME: "LINKED_ACCOUNT_NAME";
660
+ readonly OPERATING_SYSTEM: "OPERATING_SYSTEM";
661
+ readonly OPERATION: "OPERATION";
662
+ readonly PAYMENT_OPTION: "PAYMENT_OPTION";
663
+ readonly PLATFORM: "PLATFORM";
664
+ readonly PURCHASE_TYPE: "PURCHASE_TYPE";
665
+ readonly RECORD_TYPE: "RECORD_TYPE";
666
+ readonly REGION: "REGION";
667
+ readonly RESERVATION_ID: "RESERVATION_ID";
668
+ readonly RESERVATION_MODIFIED: "RESERVATION_MODIFIED";
669
+ readonly RESOURCE_ID: "RESOURCE_ID";
670
+ readonly RIGHTSIZING_TYPE: "RIGHTSIZING_TYPE";
671
+ readonly SAVINGS_PLANS_TYPE: "SAVINGS_PLANS_TYPE";
672
+ readonly SAVINGS_PLAN_ARN: "SAVINGS_PLAN_ARN";
673
+ readonly SCOPE: "SCOPE";
674
+ readonly SERVICE: "SERVICE";
675
+ readonly SERVICE_CODE: "SERVICE_CODE";
676
+ readonly SUBSCRIPTION_ID: "SUBSCRIPTION_ID";
677
+ readonly TAG_KEY: "TAG_KEY";
678
+ readonly TENANCY: "TENANCY";
679
+ readonly USAGE_TYPE: "USAGE_TYPE";
680
+ readonly USAGE_TYPE_GROUP: "USAGE_TYPE_GROUP";
643
681
  };
644
682
  /**
645
683
  * @public
646
684
  */
647
- export type TimeUnit = (typeof TimeUnit)[keyof typeof TimeUnit];
685
+ export type Dimension = (typeof Dimension)[keyof typeof Dimension];
648
686
  /**
649
- * <p>Represents the output of the <code>CreateBudget</code> operation. The content consists
650
- * of the detailed metadata and data file information, and the current status of the
651
- * <code>budget</code> object.</p>
652
- * <p>This is the Amazon Resource Name (ARN) pattern for a budget: </p>
653
- * <p>
654
- * <code>arn:aws:budgets::AccountId:budget/budgetName</code>
655
- * </p>
687
+ * <p>Contains the specifications for the filters to use for your request.</p>
656
688
  * @public
657
689
  */
658
- export interface Budget {
659
- /**
660
- * <p>The name of a budget. The name must be unique within an account. The <code>:</code>
661
- * and <code>\</code> characters, and the "/action/" substring, aren't allowed in
662
- * <code>BudgetName</code>.</p>
663
- * @public
664
- */
665
- BudgetName: string | undefined;
666
- /**
667
- * <p>The total amount of cost, usage, RI utilization, RI coverage, Savings Plans
668
- * utilization, or Savings Plans coverage that you want to track with your budget.</p>
669
- * <p>
670
- * <code>BudgetLimit</code> is required for cost or usage budgets, but optional for RI or
671
- * Savings Plans utilization or coverage budgets. RI and Savings Plans utilization or
672
- * coverage budgets default to <code>100</code>. This is the only valid value for RI or
673
- * Savings Plans utilization or coverage budgets. You can't use <code>BudgetLimit</code>
674
- * with <code>PlannedBudgetLimits</code> for <code>CreateBudget</code> and
675
- * <code>UpdateBudget</code> actions. </p>
676
- * @public
677
- */
678
- BudgetLimit?: Spend | undefined;
679
- /**
680
- * <p>A map containing multiple <code>BudgetLimit</code>, including current or future
681
- * limits.</p>
682
- * <p>
683
- * <code>PlannedBudgetLimits</code> is available for cost or usage budget and supports
684
- * both monthly and quarterly <code>TimeUnit</code>. </p>
685
- * <p>For monthly budgets, provide 12 months of <code>PlannedBudgetLimits</code> values.
686
- * This must start from the current month and include the next 11 months. The
687
- * <code>key</code> is the start of the month, <code>UTC</code> in epoch seconds. </p>
688
- * <p>For quarterly budgets, provide four quarters of <code>PlannedBudgetLimits</code> value
689
- * entries in standard calendar quarter increments. This must start from the current
690
- * quarter and include the next three quarters. The <code>key</code> is the start of the
691
- * quarter, <code>UTC</code> in epoch seconds. </p>
692
- * <p>If the planned budget expires before 12 months for monthly or four quarters for
693
- * quarterly, provide the <code>PlannedBudgetLimits</code> values only for the remaining
694
- * periods.</p>
695
- * <p>If the budget begins at a date in the future, provide <code>PlannedBudgetLimits</code>
696
- * values from the start date of the budget. </p>
697
- * <p>After all of the <code>BudgetLimit</code> values in <code>PlannedBudgetLimits</code>
698
- * are used, the budget continues to use the last limit as the <code>BudgetLimit</code>. At
699
- * that point, the planned budget provides the same experience as a fixed budget. </p>
700
- * <p>
701
- * <code>DescribeBudget</code> and <code>DescribeBudgets</code> response along with
702
- * <code>PlannedBudgetLimits</code> also contain <code>BudgetLimit</code> representing
703
- * the current month or quarter limit present in <code>PlannedBudgetLimits</code>. This
704
- * only applies to budgets that are created with <code>PlannedBudgetLimits</code>. Budgets
705
- * that are created without <code>PlannedBudgetLimits</code> only contain
706
- * <code>BudgetLimit</code>. They don't contain
707
- * <code>PlannedBudgetLimits</code>.</p>
708
- * @public
709
- */
710
- PlannedBudgetLimits?: Record<string, Spend> | undefined;
690
+ export interface ExpressionDimensionValues {
711
691
  /**
712
- * <p>The cost filters, such as <code>Region</code>, <code>Service</code>,
713
- * <code>LinkedAccount</code>, <code>Tag</code>, or <code>CostCategory</code>, that are
714
- * applied to a budget.</p>
715
- * <p>Amazon Web Services Budgets supports the following services as a <code>Service</code> filter for RI budgets:</p>
716
- * <ul>
717
- * <li>
718
- * <p>Amazon EC2</p>
719
- * </li>
720
- * <li>
721
- * <p>Amazon Redshift</p>
722
- * </li>
723
- * <li>
724
- * <p>Amazon Relational Database Service</p>
725
- * </li>
726
- * <li>
727
- * <p>Amazon ElastiCache</p>
728
- * </li>
729
- * <li>
730
- * <p>Amazon OpenSearch Service</p>
731
- * </li>
732
- * </ul>
692
+ * <p>The name of the dimension that you want to filter on.</p>
733
693
  * @public
734
694
  */
735
- CostFilters?: Record<string, string[]> | undefined;
695
+ Key: Dimension | undefined;
736
696
  /**
737
- * <p>The types of costs that are included in this <code>COST</code> budget.</p>
738
- * <p>
739
- * <code>USAGE</code>, <code>RI_UTILIZATION</code>, <code>RI_COVERAGE</code>,
740
- * <code>SAVINGS_PLANS_UTILIZATION</code>, and <code>SAVINGS_PLANS_COVERAGE</code>
741
- * budgets do not have <code>CostTypes</code>.</p>
697
+ * <p>The metadata values you can specify to filter upon, so that the results all match at least
698
+ * one of the specified values.</p>
742
699
  * @public
743
700
  */
744
- CostTypes?: CostTypes | undefined;
701
+ Values: string[] | undefined;
745
702
  /**
746
- * <p>The length of time until a budget resets the actual and forecasted spend.</p>
703
+ * <p>The match options that you can use to filter your results. You can specify only one of these
704
+ * values in the array.</p>
747
705
  * @public
748
706
  */
749
- TimeUnit: TimeUnit | undefined;
707
+ MatchOptions?: MatchOption[] | undefined;
708
+ }
709
+ /**
710
+ * <p>The values that are available for a tag.</p>
711
+ * @public
712
+ */
713
+ export interface TagValues {
750
714
  /**
751
- * <p>The period of time that's covered by a budget. You setthe start date and end date. The
752
- * start date must come before the end date. The end date must come before <code>06/15/87
753
- * 00:00 UTC</code>. </p>
754
- * <p>If you create your budget and don't specify a start date, Amazon Web Services defaults
755
- * to the start of your chosen time period (DAILY, MONTHLY, QUARTERLY, or ANNUALLY). For
756
- * example, if you created your budget on January 24, 2018, chose <code>DAILY</code>, and
757
- * didn't set a start date, Amazon Web Services set your start date to <code>01/24/18 00:00
758
- * UTC</code>. If you chose <code>MONTHLY</code>, Amazon Web Services set your start
759
- * date to <code>01/01/18 00:00 UTC</code>. If you didn't specify an end date, Amazon Web Services set your end date to <code>06/15/87 00:00 UTC</code>. The defaults are
760
- * the same for the Billing and Cost Management console and the API. </p>
761
- * <p>You can change either date with the <code>UpdateBudget</code> operation.</p>
762
- * <p>After the end date, Amazon Web Services deletes the budget and all the associated
763
- * notifications and subscribers.</p>
715
+ * <p>The key for the tag.</p>
764
716
  * @public
765
717
  */
766
- TimePeriod?: TimePeriod | undefined;
718
+ Key?: string | undefined;
767
719
  /**
768
- * <p>The actual and forecasted cost or usage that the budget tracks.</p>
720
+ * <p>The specific value of the tag.</p>
769
721
  * @public
770
722
  */
771
- CalculatedSpend?: CalculatedSpend | undefined;
723
+ Values?: string[] | undefined;
772
724
  /**
773
- * <p>Specifies whether this budget tracks costs, usage, RI utilization, RI coverage,
774
- * Savings Plans utilization, or Savings Plans coverage.</p>
725
+ * <p>The match options that you can use to filter your results.</p>
775
726
  * @public
776
727
  */
777
- BudgetType: BudgetType | undefined;
728
+ MatchOptions?: MatchOption[] | undefined;
729
+ }
730
+ /**
731
+ * @public
732
+ * @enum
733
+ */
734
+ export declare const Metric: {
735
+ readonly AMORTIZED_COST: "AmortizedCost";
736
+ readonly BLENDED_COST: "BlendedCost";
737
+ readonly HOURS: "Hours";
738
+ readonly NET_AMORTIZED_COST: "NetAmortizedCost";
739
+ readonly NET_UNBLENDED_COST: "NetUnblendedCost";
740
+ readonly NORMALIZED_USAGE_AMOUNT: "NormalizedUsageAmount";
741
+ readonly UNBLENDED_COST: "UnblendedCost";
742
+ readonly USAGE_QUANTITY: "UsageQuantity";
743
+ };
744
+ /**
745
+ * @public
746
+ */
747
+ export type Metric = (typeof Metric)[keyof typeof Metric];
748
+ /**
749
+ * <p>The period of time that's covered by a budget. The period has a start date and an end
750
+ * date. The start date must come before the end date. There are no restrictions on the end
751
+ * date. </p>
752
+ * @public
753
+ */
754
+ export interface TimePeriod {
778
755
  /**
779
- * <p>The last time that you updated this budget.</p>
756
+ * <p>The start date for a budget. If you created your budget and didn't specify a start
757
+ * date, Amazon Web Services defaults to the start of your chosen time period (DAILY,
758
+ * MONTHLY, QUARTERLY, or ANNUALLY). For example, if you created your budget on January 24,
759
+ * 2018, chose <code>DAILY</code>, and didn't set a start date, Amazon Web Services set your
760
+ * start date to <code>01/24/18 00:00 UTC</code>. If you chose <code>MONTHLY</code>,
761
+ * Amazon Web Services set your start date to <code>01/01/18 00:00 UTC</code>. The
762
+ * defaults are the same for the Billing and Cost Management console and the API.</p>
763
+ * <p>You can change your start date with the <code>UpdateBudget</code> operation.</p>
780
764
  * @public
781
765
  */
782
- LastUpdatedTime?: Date | undefined;
766
+ Start?: Date | undefined;
783
767
  /**
784
- * <p>The parameters that determine the budget amount for an auto-adjusting budget.</p>
768
+ * <p>The end date for a budget. If you didn't specify an end date, Amazon Web Services set
769
+ * your end date to <code>06/15/87 00:00 UTC</code>. The defaults are the same for the
770
+ * Billing and Cost Management console and the API.</p>
771
+ * <p>After the end date, Amazon Web Services deletes the budget and all the associated
772
+ * notifications and subscribers. You can change your end date with the
773
+ * <code>UpdateBudget</code> operation.</p>
785
774
  * @public
786
775
  */
787
- AutoAdjustData?: AutoAdjustData | undefined;
776
+ End?: Date | undefined;
788
777
  }
778
+ /**
779
+ * @public
780
+ * @enum
781
+ */
782
+ export declare const TimeUnit: {
783
+ readonly ANNUALLY: "ANNUALLY";
784
+ readonly DAILY: "DAILY";
785
+ readonly MONTHLY: "MONTHLY";
786
+ readonly QUARTERLY: "QUARTERLY";
787
+ };
788
+ /**
789
+ * @public
790
+ */
791
+ export type TimeUnit = (typeof TimeUnit)[keyof typeof TimeUnit];
789
792
  /**
790
793
  * @public
791
794
  * @enum
@@ -910,33 +913,6 @@ export interface ResourceTag {
910
913
  */
911
914
  Value: string | undefined;
912
915
  }
913
- /**
914
- * <p> Request of CreateBudget </p>
915
- * @public
916
- */
917
- export interface CreateBudgetRequest {
918
- /**
919
- * <p>The <code>accountId</code> that is associated with the budget.</p>
920
- * @public
921
- */
922
- AccountId: string | undefined;
923
- /**
924
- * <p>The budget object that you want to create.</p>
925
- * @public
926
- */
927
- Budget: Budget | undefined;
928
- /**
929
- * <p>A notification that you want to associate with a budget. A budget can have up to five notifications, and each notification can have one SNS subscriber and up to 10 email subscribers. If you include notifications and subscribers in your <code>CreateBudget</code> call, Amazon Web Services creates the notifications and subscribers for you.</p>
930
- * @public
931
- */
932
- NotificationsWithSubscribers?: NotificationWithSubscribers[] | undefined;
933
- /**
934
- * <p>An optional list of tags to associate with the specified budget. Each tag consists of a
935
- * key and a value, and each key must be unique for the resource.</p>
936
- * @public
937
- */
938
- ResourceTags?: ResourceTag[] | undefined;
939
- }
940
916
  /**
941
917
  * <p> Response of CreateBudget </p>
942
918
  * @public
@@ -1371,17 +1347,13 @@ export interface DescribeBudgetRequest {
1371
1347
  * @public
1372
1348
  */
1373
1349
  BudgetName: string | undefined;
1374
- }
1375
- /**
1376
- * <p> Response of DescribeBudget </p>
1377
- * @public
1378
- */
1379
- export interface DescribeBudgetResponse {
1380
1350
  /**
1381
- * <p>The description of the budget.</p>
1351
+ * <p>Specifies whether the response includes the filter expression associated with the
1352
+ * budget. By showing the filter expression, you can see detailed filtering logic applied to
1353
+ * the budget, such as Amazon Web Services services or tags that are being tracked.</p>
1382
1354
  * @public
1383
1355
  */
1384
- Budget?: Budget | undefined;
1356
+ ShowFilterExpression?: boolean | undefined;
1385
1357
  }
1386
1358
  /**
1387
1359
  * @public
@@ -1793,22 +1765,13 @@ export interface DescribeBudgetsRequest {
1793
1765
  * @public
1794
1766
  */
1795
1767
  NextToken?: string | undefined;
1796
- }
1797
- /**
1798
- * <p> Response of DescribeBudgets </p>
1799
- * @public
1800
- */
1801
- export interface DescribeBudgetsResponse {
1802
1768
  /**
1803
- * <p>A list of budgets.</p>
1804
- * @public
1805
- */
1806
- Budgets?: Budget[] | undefined;
1807
- /**
1808
- * <p>The pagination token in the service response that indicates the next set of results that you can retrieve.</p>
1769
+ * <p>Specifies whether the response includes the filter expression associated with the
1770
+ * budgets. By showing the filter expression, you can see detailed filtering logic applied to
1771
+ * the budgets, such as Amazon Web Services services or tags that are being tracked.</p>
1809
1772
  * @public
1810
1773
  */
1811
- NextToken?: string | undefined;
1774
+ ShowFilterExpression?: boolean | undefined;
1812
1775
  }
1813
1776
  /**
1814
1777
  * <p> Request of DescribeNotificationsForBudget </p>
@@ -2034,22 +1997,6 @@ export interface UntagResourceRequest {
2034
1997
  */
2035
1998
  export interface UntagResourceResponse {
2036
1999
  }
2037
- /**
2038
- * <p> Request of UpdateBudget </p>
2039
- * @public
2040
- */
2041
- export interface UpdateBudgetRequest {
2042
- /**
2043
- * <p>The <code>accountId</code> that is associated with the budget that you want to update.</p>
2044
- * @public
2045
- */
2046
- AccountId: string | undefined;
2047
- /**
2048
- * <p>The budget that you want to update your budget to.</p>
2049
- * @public
2050
- */
2051
- NewBudget: Budget | undefined;
2052
- }
2053
2000
  /**
2054
2001
  * <p> Response of UpdateBudget </p>
2055
2002
  * @public
@@ -2212,6 +2159,267 @@ export interface UpdateSubscriberRequest {
2212
2159
  */
2213
2160
  export interface UpdateSubscriberResponse {
2214
2161
  }
2162
+ /**
2163
+ * <p>Use Expression to filter in various Budgets APIs.</p>
2164
+ * @public
2165
+ */
2166
+ export interface Expression {
2167
+ /**
2168
+ * <p>Return results that match either Dimension object.</p>
2169
+ * @public
2170
+ */
2171
+ Or?: Expression[] | undefined;
2172
+ /**
2173
+ * <p>Return results that match both Dimension objects.</p>
2174
+ * @public
2175
+ */
2176
+ And?: Expression[] | undefined;
2177
+ /**
2178
+ * <p>Return results that don't match a Dimension object.</p>
2179
+ * @public
2180
+ */
2181
+ Not?: Expression | undefined;
2182
+ /**
2183
+ * <p>The specific Dimension to use for Expression.</p>
2184
+ * @public
2185
+ */
2186
+ Dimensions?: ExpressionDimensionValues | undefined;
2187
+ /**
2188
+ * <p>The specific Tag to use for Expression.</p>
2189
+ * @public
2190
+ */
2191
+ Tags?: TagValues | undefined;
2192
+ /**
2193
+ * <p>The filter that's based on CostCategoryValues.</p>
2194
+ * @public
2195
+ */
2196
+ CostCategories?: CostCategoryValues | undefined;
2197
+ }
2198
+ /**
2199
+ * <p>Represents the output of the <code>CreateBudget</code> operation. The content consists
2200
+ * of the detailed metadata and data file information, and the current status of the
2201
+ * <code>budget</code> object.</p>
2202
+ * <p>This is the Amazon Resource Name (ARN) pattern for a budget: </p>
2203
+ * <p>
2204
+ * <code>arn:aws:budgets::AccountId:budget/budgetName</code>
2205
+ * </p>
2206
+ * @public
2207
+ */
2208
+ export interface Budget {
2209
+ /**
2210
+ * <p>The name of a budget. The name must be unique within an account. The <code>:</code>
2211
+ * and <code>\</code> characters, and the "/action/" substring, aren't allowed in
2212
+ * <code>BudgetName</code>.</p>
2213
+ * @public
2214
+ */
2215
+ BudgetName: string | undefined;
2216
+ /**
2217
+ * <p>The total amount of cost, usage, RI utilization, RI coverage, Savings Plans
2218
+ * utilization, or Savings Plans coverage that you want to track with your budget.</p>
2219
+ * <p>
2220
+ * <code>BudgetLimit</code> is required for cost or usage budgets, but optional for RI or
2221
+ * Savings Plans utilization or coverage budgets. RI and Savings Plans utilization or
2222
+ * coverage budgets default to <code>100</code>. This is the only valid value for RI or
2223
+ * Savings Plans utilization or coverage budgets. You can't use <code>BudgetLimit</code>
2224
+ * with <code>PlannedBudgetLimits</code> for <code>CreateBudget</code> and
2225
+ * <code>UpdateBudget</code> actions. </p>
2226
+ * @public
2227
+ */
2228
+ BudgetLimit?: Spend | undefined;
2229
+ /**
2230
+ * <p>A map containing multiple <code>BudgetLimit</code>, including current or future
2231
+ * limits.</p>
2232
+ * <p>
2233
+ * <code>PlannedBudgetLimits</code> is available for cost or usage budget and supports
2234
+ * both monthly and quarterly <code>TimeUnit</code>. </p>
2235
+ * <p>For monthly budgets, provide 12 months of <code>PlannedBudgetLimits</code> values.
2236
+ * This must start from the current month and include the next 11 months. The
2237
+ * <code>key</code> is the start of the month, <code>UTC</code> in epoch seconds. </p>
2238
+ * <p>For quarterly budgets, provide four quarters of <code>PlannedBudgetLimits</code> value
2239
+ * entries in standard calendar quarter increments. This must start from the current
2240
+ * quarter and include the next three quarters. The <code>key</code> is the start of the
2241
+ * quarter, <code>UTC</code> in epoch seconds. </p>
2242
+ * <p>If the planned budget expires before 12 months for monthly or four quarters for
2243
+ * quarterly, provide the <code>PlannedBudgetLimits</code> values only for the remaining
2244
+ * periods.</p>
2245
+ * <p>If the budget begins at a date in the future, provide <code>PlannedBudgetLimits</code>
2246
+ * values from the start date of the budget. </p>
2247
+ * <p>After all of the <code>BudgetLimit</code> values in <code>PlannedBudgetLimits</code>
2248
+ * are used, the budget continues to use the last limit as the <code>BudgetLimit</code>. At
2249
+ * that point, the planned budget provides the same experience as a fixed budget. </p>
2250
+ * <p>
2251
+ * <code>DescribeBudget</code> and <code>DescribeBudgets</code> response along with
2252
+ * <code>PlannedBudgetLimits</code> also contain <code>BudgetLimit</code> representing
2253
+ * the current month or quarter limit present in <code>PlannedBudgetLimits</code>. This
2254
+ * only applies to budgets that are created with <code>PlannedBudgetLimits</code>. Budgets
2255
+ * that are created without <code>PlannedBudgetLimits</code> only contain
2256
+ * <code>BudgetLimit</code>. They don't contain
2257
+ * <code>PlannedBudgetLimits</code>.</p>
2258
+ * @public
2259
+ */
2260
+ PlannedBudgetLimits?: Record<string, Spend> | undefined;
2261
+ /**
2262
+ * <p>The cost filters, such as <code>Region</code>, <code>Service</code>,
2263
+ * <code>LinkedAccount</code>, <code>Tag</code>, or <code>CostCategory</code>, that are
2264
+ * applied to a budget.</p>
2265
+ * <p>Amazon Web Services Budgets supports the following services as a <code>Service</code> filter for RI budgets:</p>
2266
+ * <ul>
2267
+ * <li>
2268
+ * <p>Amazon EC2</p>
2269
+ * </li>
2270
+ * <li>
2271
+ * <p>Amazon Redshift</p>
2272
+ * </li>
2273
+ * <li>
2274
+ * <p>Amazon Relational Database Service</p>
2275
+ * </li>
2276
+ * <li>
2277
+ * <p>Amazon ElastiCache</p>
2278
+ * </li>
2279
+ * <li>
2280
+ * <p>Amazon OpenSearch Service</p>
2281
+ * </li>
2282
+ * </ul>
2283
+ *
2284
+ * @deprecated
2285
+ * @public
2286
+ */
2287
+ CostFilters?: Record<string, string[]> | undefined;
2288
+ /**
2289
+ * <p>The types of costs that are included in this <code>COST</code> budget.</p>
2290
+ * <p>
2291
+ * <code>USAGE</code>, <code>RI_UTILIZATION</code>, <code>RI_COVERAGE</code>,
2292
+ * <code>SAVINGS_PLANS_UTILIZATION</code>, and <code>SAVINGS_PLANS_COVERAGE</code>
2293
+ * budgets do not have <code>CostTypes</code>.</p>
2294
+ *
2295
+ * @deprecated
2296
+ * @public
2297
+ */
2298
+ CostTypes?: CostTypes | undefined;
2299
+ /**
2300
+ * <p>The length of time until a budget resets the actual and forecasted spend.</p>
2301
+ * @public
2302
+ */
2303
+ TimeUnit: TimeUnit | undefined;
2304
+ /**
2305
+ * <p>The period of time that's covered by a budget. You set the start date and end date. The
2306
+ * start date must come before the end date. The end date must come before <code>06/15/87
2307
+ * 00:00 UTC</code>. </p>
2308
+ * <p>If you create your budget and don't specify a start date, Amazon Web Services defaults
2309
+ * to the start of your chosen time period (DAILY, MONTHLY, QUARTERLY, or ANNUALLY). For
2310
+ * example, if you created your budget on January 24, 2018, chose <code>DAILY</code>, and
2311
+ * didn't set a start date, Amazon Web Services set your start date to <code>01/24/18 00:00
2312
+ * UTC</code>. If you chose <code>MONTHLY</code>, Amazon Web Services set your start
2313
+ * date to <code>01/01/18 00:00 UTC</code>. If you didn't specify an end date, Amazon Web Services set your end date to <code>06/15/87 00:00 UTC</code>. The defaults are
2314
+ * the same for the Billing and Cost Management console and the API. </p>
2315
+ * <p>You can change either date with the <code>UpdateBudget</code> operation.</p>
2316
+ * <p>After the end date, Amazon Web Services deletes the budget and all the associated
2317
+ * notifications and subscribers.</p>
2318
+ * @public
2319
+ */
2320
+ TimePeriod?: TimePeriod | undefined;
2321
+ /**
2322
+ * <p>The actual and forecasted cost or usage that the budget tracks.</p>
2323
+ * @public
2324
+ */
2325
+ CalculatedSpend?: CalculatedSpend | undefined;
2326
+ /**
2327
+ * <p>Specifies whether this budget tracks costs, usage, RI utilization, RI coverage,
2328
+ * Savings Plans utilization, or Savings Plans coverage.</p>
2329
+ * @public
2330
+ */
2331
+ BudgetType: BudgetType | undefined;
2332
+ /**
2333
+ * <p>The last time that you updated this budget.</p>
2334
+ * @public
2335
+ */
2336
+ LastUpdatedTime?: Date | undefined;
2337
+ /**
2338
+ * <p>The parameters that determine the budget amount for an auto-adjusting budget.</p>
2339
+ * @public
2340
+ */
2341
+ AutoAdjustData?: AutoAdjustData | undefined;
2342
+ /**
2343
+ * <p>The filtering dimensions for the budget and their corresponding values.</p>
2344
+ * @public
2345
+ */
2346
+ FilterExpression?: Expression | undefined;
2347
+ /**
2348
+ * <p>The definition for how the budget data is aggregated.</p>
2349
+ * @public
2350
+ */
2351
+ Metrics?: Metric[] | undefined;
2352
+ }
2353
+ /**
2354
+ * <p> Request of CreateBudget </p>
2355
+ * @public
2356
+ */
2357
+ export interface CreateBudgetRequest {
2358
+ /**
2359
+ * <p>The <code>accountId</code> that is associated with the budget.</p>
2360
+ * @public
2361
+ */
2362
+ AccountId: string | undefined;
2363
+ /**
2364
+ * <p>The budget object that you want to create.</p>
2365
+ * @public
2366
+ */
2367
+ Budget: Budget | undefined;
2368
+ /**
2369
+ * <p>A notification that you want to associate with a budget. A budget can have up to five notifications, and each notification can have one SNS subscriber and up to 10 email subscribers. If you include notifications and subscribers in your <code>CreateBudget</code> call, Amazon Web Services creates the notifications and subscribers for you.</p>
2370
+ * @public
2371
+ */
2372
+ NotificationsWithSubscribers?: NotificationWithSubscribers[] | undefined;
2373
+ /**
2374
+ * <p>An optional list of tags to associate with the specified budget. Each tag consists of a
2375
+ * key and a value, and each key must be unique for the resource.</p>
2376
+ * @public
2377
+ */
2378
+ ResourceTags?: ResourceTag[] | undefined;
2379
+ }
2380
+ /**
2381
+ * <p> Response of DescribeBudget </p>
2382
+ * @public
2383
+ */
2384
+ export interface DescribeBudgetResponse {
2385
+ /**
2386
+ * <p>The description of the budget.</p>
2387
+ * @public
2388
+ */
2389
+ Budget?: Budget | undefined;
2390
+ }
2391
+ /**
2392
+ * <p> Request of UpdateBudget </p>
2393
+ * @public
2394
+ */
2395
+ export interface UpdateBudgetRequest {
2396
+ /**
2397
+ * <p>The <code>accountId</code> that is associated with the budget that you want to update.</p>
2398
+ * @public
2399
+ */
2400
+ AccountId: string | undefined;
2401
+ /**
2402
+ * <p>The budget that you want to update your budget to.</p>
2403
+ * @public
2404
+ */
2405
+ NewBudget: Budget | undefined;
2406
+ }
2407
+ /**
2408
+ * <p> Response of DescribeBudgets </p>
2409
+ * @public
2410
+ */
2411
+ export interface DescribeBudgetsResponse {
2412
+ /**
2413
+ * <p>A list of budgets.</p>
2414
+ * @public
2415
+ */
2416
+ Budgets?: Budget[] | undefined;
2417
+ /**
2418
+ * <p>The pagination token in the service response that indicates the next set of results that you can retrieve.</p>
2419
+ * @public
2420
+ */
2421
+ NextToken?: string | undefined;
2422
+ }
2215
2423
  /**
2216
2424
  * @internal
2217
2425
  */
@@ -2232,10 +2440,6 @@ export declare const ActionHistoryFilterSensitiveLog: (obj: ActionHistory) => an
2232
2440
  * @internal
2233
2441
  */
2234
2442
  export declare const NotificationWithSubscribersFilterSensitiveLog: (obj: NotificationWithSubscribers) => any;
2235
- /**
2236
- * @internal
2237
- */
2238
- export declare const CreateBudgetRequestFilterSensitiveLog: (obj: CreateBudgetRequest) => any;
2239
2443
  /**
2240
2444
  * @internal
2241
2445
  */
@@ -2288,3 +2492,7 @@ export declare const UpdateBudgetActionResponseFilterSensitiveLog: (obj: UpdateB
2288
2492
  * @internal
2289
2493
  */
2290
2494
  export declare const UpdateSubscriberRequestFilterSensitiveLog: (obj: UpdateSubscriberRequest) => any;
2495
+ /**
2496
+ * @internal
2497
+ */
2498
+ export declare const CreateBudgetRequestFilterSensitiveLog: (obj: CreateBudgetRequest) => any;