/* * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { Budget, BudgetsListOptionalParams, BudgetsGetOptionalParams, BudgetsGetResponse, BudgetsCreateOrUpdateOptionalParams, BudgetsCreateOrUpdateResponse, BudgetsDeleteOptionalParams } from "../models"; /// /** Interface representing a Budgets. */ export interface Budgets { /** * Lists all budgets for the defined scope. * @param scope The scope associated with budget operations. This includes * '/subscriptions/{subscriptionId}/' for subscription scope, * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for * Department scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' * for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' * for Management Group scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' * for billingProfile scope, * 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' * for invoiceSection scope. * @param options The options parameters. */ list( scope: string, options?: BudgetsListOptionalParams ): PagedAsyncIterableIterator; /** * Gets the budget for the scope by budget name. * @param scope The scope associated with budget operations. This includes * '/subscriptions/{subscriptionId}/' for subscription scope, * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for * Department scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' * for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' * for Management Group scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' * for billingProfile scope, * 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' * for invoiceSection scope. * @param budgetName Budget Name. * @param options The options parameters. */ get( scope: string, budgetName: string, options?: BudgetsGetOptionalParams ): Promise; /** * The operation to create or update a budget. You can optionally provide an eTag if desired as a form * of concurrency control. To obtain the latest eTag for a given budget, perform a get operation prior * to your put operation. * @param scope The scope associated with budget operations. This includes * '/subscriptions/{subscriptionId}/' for subscription scope, * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for * Department scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' * for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' * for Management Group scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' * for billingProfile scope, * 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' * for invoiceSection scope. * @param budgetName Budget Name. * @param parameters Parameters supplied to the Create Budget operation. * @param options The options parameters. */ createOrUpdate( scope: string, budgetName: string, parameters: Budget, options?: BudgetsCreateOrUpdateOptionalParams ): Promise; /** * The operation to delete a budget. * @param scope The scope associated with budget operations. This includes * '/subscriptions/{subscriptionId}/' for subscription scope, * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for * Department scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' * for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId}' * for Management Group scope, * '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' * for billingProfile scope, * 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' * for invoiceSection scope. * @param budgetName Budget Name. * @param options The options parameters. */ delete( scope: string, budgetName: string, options?: BudgetsDeleteOptionalParams ): Promise; }