From ba11cf3c6d5ed05b31459547de5fe349e617b0f3 Mon Sep 17 00:00:00 2001 From: Azure SDK for Python bot Date: Mon, 25 Mar 2019 15:45:22 -0700 Subject: [PATCH] Generated from d7f3f36ab83e124204a6ff6a9daabccdbdb2bee0 (#1743) typo: consumption/resource-manager/Microsoft.Consumption - chages -> charges - Cylce -> Cycle --- packages/@azure/arm-consumption/LICENSE.txt | 2 +- packages/@azure/arm-consumption/README.md | 29 +- .../lib/consumptionManagementClient.ts | 45 +- .../lib/consumptionManagementClientContext.ts | 12 +- .../models/billingProfilePricesheetMappers.ts | 36 + .../models/chargesByBillingAccountMappers.ts | 36 + .../models/chargesByBillingProfileMappers.ts | 36 + .../models/chargesByInvoiceSectionMappers.ts | 36 + .../creditSummaryByBillingProfileMappers.ts | 35 + .../models/eventsByBillingProfileMappers.ts | 36 + .../arm-consumption/lib/models/index.ts | 3975 +++-------------- .../lib/models/invoicePricesheetMappers.ts | 36 + .../lib/models/lotsByBillingProfileMappers.ts | 36 + .../arm-consumption/lib/models/mappers.ts | 1874 +++----- .../arm-consumption/lib/models/parameters.ts | 143 +- .../operations/billingProfilePricesheet.ts | 89 + .../lib/operations/chargesByBillingAccount.ts | 94 + .../lib/operations/chargesByBillingProfile.ts | 98 + .../lib/operations/chargesByInvoiceSection.ts | 99 + .../creditSummaryByBillingProfile.ts | 86 + .../lib/operations/eventsByBillingProfile.ts | 96 + .../arm-consumption/lib/operations/index.ts | 20 +- .../lib/operations/invoicePricesheet.ts | 89 + .../lib/operations/lotsByBillingProfile.ts | 86 + packages/@azure/arm-consumption/package.json | 8 +- .../@azure/arm-consumption/rollup.config.js | 22 +- 26 files changed, 2338 insertions(+), 4816 deletions(-) create mode 100644 packages/@azure/arm-consumption/lib/models/billingProfilePricesheetMappers.ts create mode 100644 packages/@azure/arm-consumption/lib/models/chargesByBillingAccountMappers.ts create mode 100644 packages/@azure/arm-consumption/lib/models/chargesByBillingProfileMappers.ts create mode 100644 packages/@azure/arm-consumption/lib/models/chargesByInvoiceSectionMappers.ts create mode 100644 packages/@azure/arm-consumption/lib/models/creditSummaryByBillingProfileMappers.ts create mode 100644 packages/@azure/arm-consumption/lib/models/eventsByBillingProfileMappers.ts create mode 100644 packages/@azure/arm-consumption/lib/models/invoicePricesheetMappers.ts create mode 100644 packages/@azure/arm-consumption/lib/models/lotsByBillingProfileMappers.ts create mode 100644 packages/@azure/arm-consumption/lib/operations/billingProfilePricesheet.ts create mode 100644 packages/@azure/arm-consumption/lib/operations/chargesByBillingAccount.ts create mode 100644 packages/@azure/arm-consumption/lib/operations/chargesByBillingProfile.ts create mode 100644 packages/@azure/arm-consumption/lib/operations/chargesByInvoiceSection.ts create mode 100644 packages/@azure/arm-consumption/lib/operations/creditSummaryByBillingProfile.ts create mode 100644 packages/@azure/arm-consumption/lib/operations/eventsByBillingProfile.ts create mode 100644 packages/@azure/arm-consumption/lib/operations/invoicePricesheet.ts create mode 100644 packages/@azure/arm-consumption/lib/operations/lotsByBillingProfile.ts diff --git a/packages/@azure/arm-consumption/LICENSE.txt b/packages/@azure/arm-consumption/LICENSE.txt index 5431ba98b936..8f3d856145c5 100644 --- a/packages/@azure/arm-consumption/LICENSE.txt +++ b/packages/@azure/arm-consumption/LICENSE.txt @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2018 Microsoft +Copyright (c) 2019 Microsoft Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/packages/@azure/arm-consumption/README.md b/packages/@azure/arm-consumption/README.md index d5a820577ea3..c0b593c0cd08 100644 --- a/packages/@azure/arm-consumption/README.md +++ b/packages/@azure/arm-consumption/README.md @@ -9,23 +9,23 @@ This package contains an isomorphic SDK for ConsumptionManagementClient. ### How to Install -``` +```bash npm install @azure/arm-consumption ``` ### How to use -#### nodejs - Authentication, client creation and list usageDetails as an example written in TypeScript. +#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. ##### Install @azure/ms-rest-nodeauth -``` +```bash npm install @azure/ms-rest-nodeauth ``` ##### Sample code -```ts +```typescript import * as msRest from "@azure/ms-rest-js"; import * as msRestAzure from "@azure/ms-rest-azure-js"; import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; @@ -34,12 +34,7 @@ const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; msRestNodeAuth.interactiveLogin().then((creds) => { const client = new ConsumptionManagementClient(creds, subscriptionId); - const expand = "testexpand"; - const filter = "testfilter"; - const skiptoken = "testskiptoken"; - const top = 1; - const apply = "testapply"; - client.usageDetails.list(expand, filter, skiptoken, top, apply).then((result) => { + client.operations.list().then((result) => { console.log("The result is:"); console.log(result); }); @@ -48,11 +43,11 @@ msRestNodeAuth.interactiveLogin().then((creds) => { }); ``` -#### browser - Authentication, client creation and list usageDetails as an example written in JavaScript. +#### browser - Authentication, client creation and list operations as an example written in JavaScript. ##### Install @azure/ms-rest-browserauth -``` +```bash npm install @azure/ms-rest-browserauth ``` @@ -82,12 +77,7 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to authManager.login(); } const client = new Azure.ArmConsumption.ConsumptionManagementClient(res.creds, subscriptionId); - const expand = "testexpand"; - const filter = "testfilter"; - const skiptoken = "testskiptoken"; - const top = 1; - const apply = "testapply"; - client.usageDetails.list(expand, filter, skiptoken, top, apply).then((result) => { + client.operations.list().then((result) => { console.log("The result is:"); console.log(result); }).catch((err) => { @@ -104,6 +94,3 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to ## Related projects - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fpackages%2F%40azure%2Farm-consumption%2FREADME.png) diff --git a/packages/@azure/arm-consumption/lib/consumptionManagementClient.ts b/packages/@azure/arm-consumption/lib/consumptionManagementClient.ts index 6157a62a09ab..395b996bb946 100644 --- a/packages/@azure/arm-consumption/lib/consumptionManagementClient.ts +++ b/packages/@azure/arm-consumption/lib/consumptionManagementClient.ts @@ -17,41 +17,32 @@ import { ConsumptionManagementClientContext } from "./consumptionManagementClien class ConsumptionManagementClient extends ConsumptionManagementClientContext { // Operation groups - usageDetails: operations.UsageDetails; - marketplaces: operations.Marketplaces; - balances: operations.Balances; - reservationsSummaries: operations.ReservationsSummaries; - reservationsDetails: operations.ReservationsDetails; - reservationRecommendations: operations.ReservationRecommendations; - budgets: operations.Budgets; - priceSheet: operations.PriceSheet; - tags: operations.Tags; - forecasts: operations.Forecasts; operations: operations.Operations; - aggregatedCost: operations.AggregatedCost; - charges: operations.Charges; + creditSummaryByBillingProfile: operations.CreditSummaryByBillingProfile; + eventsByBillingProfile: operations.EventsByBillingProfile; + lotsByBillingProfile: operations.LotsByBillingProfile; + invoicePricesheet: operations.InvoicePricesheet; + billingProfilePricesheet: operations.BillingProfilePricesheet; + chargesByBillingAccount: operations.ChargesByBillingAccount; + chargesByBillingProfile: operations.ChargesByBillingProfile; + chargesByInvoiceSection: operations.ChargesByInvoiceSection; /** * Initializes a new instance of the ConsumptionManagementClient class. * @param credentials Credentials needed for the client to connect to Azure. - * @param subscriptionId Azure Subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ConsumptionManagementClientOptions) { - super(credentials, subscriptionId, options); - this.usageDetails = new operations.UsageDetails(this); - this.marketplaces = new operations.Marketplaces(this); - this.balances = new operations.Balances(this); - this.reservationsSummaries = new operations.ReservationsSummaries(this); - this.reservationsDetails = new operations.ReservationsDetails(this); - this.reservationRecommendations = new operations.ReservationRecommendations(this); - this.budgets = new operations.Budgets(this); - this.priceSheet = new operations.PriceSheet(this); - this.tags = new operations.Tags(this); - this.forecasts = new operations.Forecasts(this); + constructor(credentials: msRest.ServiceClientCredentials, options?: Models.ConsumptionManagementClientOptions) { + super(credentials, options); this.operations = new operations.Operations(this); - this.aggregatedCost = new operations.AggregatedCost(this); - this.charges = new operations.Charges(this); + this.creditSummaryByBillingProfile = new operations.CreditSummaryByBillingProfile(this); + this.eventsByBillingProfile = new operations.EventsByBillingProfile(this); + this.lotsByBillingProfile = new operations.LotsByBillingProfile(this); + this.invoicePricesheet = new operations.InvoicePricesheet(this); + this.billingProfilePricesheet = new operations.BillingProfilePricesheet(this); + this.chargesByBillingAccount = new operations.ChargesByBillingAccount(this); + this.chargesByBillingProfile = new operations.ChargesByBillingProfile(this); + this.chargesByInvoiceSection = new operations.ChargesByInvoiceSection(this); } } diff --git a/packages/@azure/arm-consumption/lib/consumptionManagementClientContext.ts b/packages/@azure/arm-consumption/lib/consumptionManagementClientContext.ts index ae3c432891eb..064723660aa8 100644 --- a/packages/@azure/arm-consumption/lib/consumptionManagementClientContext.ts +++ b/packages/@azure/arm-consumption/lib/consumptionManagementClientContext.ts @@ -13,26 +13,21 @@ import * as msRest from "@azure/ms-rest-js"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-consumption"; -const packageVersion = "0.1.0"; +const packageVersion = "6.3.0"; export class ConsumptionManagementClientContext extends msRestAzure.AzureServiceClient { credentials: msRest.ServiceClientCredentials; apiVersion?: string; - subscriptionId: string; /** * Initializes a new instance of the ConsumptionManagementClient class. * @param credentials Credentials needed for the client to connect to Azure. - * @param subscriptionId Azure Subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ConsumptionManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials, options?: Models.ConsumptionManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } - if (subscriptionId == undefined) { - throw new Error('\'subscriptionId\' cannot be null.'); - } if (!options) { options = {}; @@ -44,13 +39,12 @@ export class ConsumptionManagementClientContext extends msRestAzure.AzureService super(credentials, options); - this.apiVersion = '2018-10-01'; + this.apiVersion = '2018-11-01-preview'; this.acceptLanguage = 'en-US'; this.longRunningOperationRetryTimeout = 30; this.baseUri = options.baseUri || this.baseUri || "https://management.azure.com"; this.requestContentType = "application/json; charset=utf-8"; this.credentials = credentials; - this.subscriptionId = subscriptionId; if(options.acceptLanguage !== null && options.acceptLanguage !== undefined) { this.acceptLanguage = options.acceptLanguage; diff --git a/packages/@azure/arm-consumption/lib/models/billingProfilePricesheetMappers.ts b/packages/@azure/arm-consumption/lib/models/billingProfilePricesheetMappers.ts new file mode 100644 index 000000000000..17570c1bffcb --- /dev/null +++ b/packages/@azure/arm-consumption/lib/models/billingProfilePricesheetMappers.ts @@ -0,0 +1,36 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + PricesheetDownloadResponse, + Resource, + BaseResource, + BillingProfilePricesheetDownloadHeaders, + ErrorResponse, + ErrorDetails, + Department, + EnrollmentAccount, + BillingProfile, + Address, + InvoiceSection, + BillingAccount, + Enrollment, + EnrollmentPolicies, + CreditSummary, + CreditBalanceSummary, + Amount, + EventSummary, + LotSummary, + ChargeSummaryByBillingAccount, + ChargeSummaryByBillingProfile, + ChargeSummaryByInvoiceSection, + ProxyResource +} from "../models/mappers"; + diff --git a/packages/@azure/arm-consumption/lib/models/chargesByBillingAccountMappers.ts b/packages/@azure/arm-consumption/lib/models/chargesByBillingAccountMappers.ts new file mode 100644 index 000000000000..817fea855f63 --- /dev/null +++ b/packages/@azure/arm-consumption/lib/models/chargesByBillingAccountMappers.ts @@ -0,0 +1,36 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + ChargesListByBillingAccount, + ChargeSummaryByBillingAccount, + Resource, + BaseResource, + Amount, + ErrorResponse, + ErrorDetails, + Department, + EnrollmentAccount, + BillingProfile, + Address, + InvoiceSection, + BillingAccount, + Enrollment, + EnrollmentPolicies, + PricesheetDownloadResponse, + CreditSummary, + CreditBalanceSummary, + EventSummary, + LotSummary, + ChargeSummaryByBillingProfile, + ChargeSummaryByInvoiceSection, + ProxyResource +} from "../models/mappers"; + diff --git a/packages/@azure/arm-consumption/lib/models/chargesByBillingProfileMappers.ts b/packages/@azure/arm-consumption/lib/models/chargesByBillingProfileMappers.ts new file mode 100644 index 000000000000..4bee6cde613d --- /dev/null +++ b/packages/@azure/arm-consumption/lib/models/chargesByBillingProfileMappers.ts @@ -0,0 +1,36 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + ChargesListByBillingProfile, + ChargeSummaryByBillingProfile, + Resource, + BaseResource, + Amount, + ErrorResponse, + ErrorDetails, + Department, + EnrollmentAccount, + BillingProfile, + Address, + InvoiceSection, + BillingAccount, + Enrollment, + EnrollmentPolicies, + PricesheetDownloadResponse, + CreditSummary, + CreditBalanceSummary, + EventSummary, + LotSummary, + ChargeSummaryByBillingAccount, + ChargeSummaryByInvoiceSection, + ProxyResource +} from "../models/mappers"; + diff --git a/packages/@azure/arm-consumption/lib/models/chargesByInvoiceSectionMappers.ts b/packages/@azure/arm-consumption/lib/models/chargesByInvoiceSectionMappers.ts new file mode 100644 index 000000000000..3865f95700af --- /dev/null +++ b/packages/@azure/arm-consumption/lib/models/chargesByInvoiceSectionMappers.ts @@ -0,0 +1,36 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + ChargesListByInvoiceSection, + ChargeSummaryByInvoiceSection, + Resource, + BaseResource, + Amount, + ErrorResponse, + ErrorDetails, + Department, + EnrollmentAccount, + BillingProfile, + Address, + InvoiceSection, + BillingAccount, + Enrollment, + EnrollmentPolicies, + PricesheetDownloadResponse, + CreditSummary, + CreditBalanceSummary, + EventSummary, + LotSummary, + ChargeSummaryByBillingAccount, + ChargeSummaryByBillingProfile, + ProxyResource +} from "../models/mappers"; + diff --git a/packages/@azure/arm-consumption/lib/models/creditSummaryByBillingProfileMappers.ts b/packages/@azure/arm-consumption/lib/models/creditSummaryByBillingProfileMappers.ts new file mode 100644 index 000000000000..baa6e4027a9a --- /dev/null +++ b/packages/@azure/arm-consumption/lib/models/creditSummaryByBillingProfileMappers.ts @@ -0,0 +1,35 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + CreditSummary, + Resource, + BaseResource, + CreditBalanceSummary, + Amount, + ErrorResponse, + ErrorDetails, + Department, + EnrollmentAccount, + BillingProfile, + Address, + InvoiceSection, + BillingAccount, + Enrollment, + EnrollmentPolicies, + PricesheetDownloadResponse, + EventSummary, + LotSummary, + ChargeSummaryByBillingAccount, + ChargeSummaryByBillingProfile, + ChargeSummaryByInvoiceSection, + ProxyResource +} from "../models/mappers"; + diff --git a/packages/@azure/arm-consumption/lib/models/eventsByBillingProfileMappers.ts b/packages/@azure/arm-consumption/lib/models/eventsByBillingProfileMappers.ts new file mode 100644 index 000000000000..b73935efc78b --- /dev/null +++ b/packages/@azure/arm-consumption/lib/models/eventsByBillingProfileMappers.ts @@ -0,0 +1,36 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + Events, + EventSummary, + Resource, + BaseResource, + Amount, + ErrorResponse, + ErrorDetails, + Department, + EnrollmentAccount, + BillingProfile, + Address, + InvoiceSection, + BillingAccount, + Enrollment, + EnrollmentPolicies, + PricesheetDownloadResponse, + CreditSummary, + CreditBalanceSummary, + LotSummary, + ChargeSummaryByBillingAccount, + ChargeSummaryByBillingProfile, + ChargeSummaryByInvoiceSection, + ProxyResource +} from "../models/mappers"; + diff --git a/packages/@azure/arm-consumption/lib/models/index.ts b/packages/@azure/arm-consumption/lib/models/index.ts index a0df6be94f6f..58aca8f67f73 100644 --- a/packages/@azure/arm-consumption/lib/models/index.ts +++ b/packages/@azure/arm-consumption/lib/models/index.ts @@ -16,71 +16,103 @@ export { BaseResource, CloudError }; /** * @interface - * An interface representing MeterDetails. - * The properties of the meter detail. + * An interface representing EnrollmentPolicies. + * The attributes associated with legacy enrollment * */ -export interface MeterDetails { +export interface EnrollmentPolicies { /** - * @member {string} [meterName] The name of the meter, within the given meter - * category + * @member {boolean} [accountOwnerViewCharges] The accountOwnerViewCharges + * flag for Enrollment * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly meterName?: string; + readonly accountOwnerViewCharges?: boolean; /** - * @member {string} [meterCategory] The category of the meter, for example, - * 'Cloud services', 'Networking', etc.. + * @member {boolean} [departmentAdminViewCharges] The + * departmentAdminViewCharges flag for Enrollment * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly meterCategory?: string; + readonly departmentAdminViewCharges?: boolean; /** - * @member {string} [meterSubCategory] The subcategory of the meter, for - * example, 'A6 Cloud services', 'ExpressRoute (IXP)', etc.. + * @member {boolean} [marketplacesEnabled] The marketplaces flag for + * Enrollment * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly meterSubCategory?: string; + readonly marketplacesEnabled?: boolean; /** - * @member {string} [unit] The unit in which the meter consumption is - * charged, for example, 'Hours', 'GB', etc. + * @member {boolean} [reservedInstancesEnabled] The reserved instances flag + * for Enrollment * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly unit?: string; + readonly reservedInstancesEnabled?: boolean; +} + +/** + * @interface + * An interface representing Enrollment. + * Current entity level details + * + */ +export interface Enrollment { + /** + * @member {Date} [startDate] Enrollment Start Date + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly startDate?: Date; + /** + * @member {Date} [endDate] Enrollment End Date + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly endDate?: Date; + /** + * @member {string} [currency] The currency associated with enrollment + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly currency?: string; + /** + * @member {string} [channel] The channel for Enrollment + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly channel?: string; /** - * @member {string} [meterLocation] The location in which the Azure service - * is available. + * @member {EnrollmentPolicies} [policies] The attributes associated with + * legacy enrollment. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly meterLocation?: string; + readonly policies?: EnrollmentPolicies; /** - * @member {number} [totalIncludedQuantity] The total included quantity - * associated with the offer. + * @member {string} [language] The language for Enrollment * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly totalIncludedQuantity?: number; + readonly language?: string; /** - * @member {number} [pretaxStandardRate] The pretax listing price. + * @member {string} [countryCode] The countryCode for Enrollment * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly pretaxStandardRate?: number; + readonly countryCode?: string; /** - * @member {string} [serviceName] The name of the service. + * @member {string} [status] Enrollment status * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly serviceName?: string; + readonly status?: string; /** - * @member {string} [serviceTier] The service tier. + * @member {string} [billingCycle] Enrollment billing cycle * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly serviceTier?: string; + readonly billingCycle?: string; } /** @@ -119,3707 +151,1016 @@ export interface Resource extends BaseResource { /** * @interface - * An interface representing UsageDetail. - * An usage detail resource. + * An interface representing Department. + * A department resource. * * @extends Resource */ -export interface UsageDetail extends Resource { +export interface Department extends Resource { /** - * @member {string} [billingPeriodId] The id of the billing period resource - * that the usage belongs to. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [departmentName] The name for department. */ - readonly billingPeriodId?: string; + departmentName?: string; /** - * @member {string} [invoiceId] The id of the invoice resource that the usage - * belongs to. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [costCenter] The cost center name. */ - readonly invoiceId?: string; + costCenter?: string; /** - * @member {Date} [usageStart] The start of the date time range covered by - * the usage detail. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [status] The status for department. */ - readonly usageStart?: Date; + status?: string; /** - * @member {Date} [usageEnd] The end of the date time range covered by the - * usage detail. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {EnrollmentAccount[]} [enrollmentAccounts] Associated enrollment + * accounts. By default this is not populated, unless it's specified in + * $expand. */ - readonly usageEnd?: Date; + enrollmentAccounts?: EnrollmentAccount[]; +} + +/** + * @interface + * An interface representing EnrollmentAccount. + * An account resource. + * + * @extends Resource + */ +export interface EnrollmentAccount extends Resource { /** - * @member {string} [instanceName] The name of the resource instance that the - * usage is about. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [accountName] The account name. */ - readonly instanceName?: string; + accountName?: string; /** - * @member {string} [instanceId] The uri of the resource instance that the - * usage is about. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [costCenter] The cost center name. */ - readonly instanceId?: string; + costCenter?: string; /** - * @member {string} [instanceLocation] The location of the resource instance - * that the usage is about. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [accountOwner] The account owner */ - readonly instanceLocation?: string; + accountOwner?: string; /** - * @member {string} [currency] The ISO currency in which the meter is - * charged, for example, USD. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [status] The status for account. */ - readonly currency?: string; + status?: string; /** - * @member {number} [usageQuantity] The quantity of usage. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {Date} [startDate] Account Start Date */ - readonly usageQuantity?: number; + startDate?: Date; /** - * @member {number} [billableQuantity] The billable usage quantity. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {Date} [endDate] Account End Date */ - readonly billableQuantity?: number; + endDate?: Date; /** - * @member {number} [pretaxCost] The amount of cost before tax. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {Department} [department] Associated department. By default this + * is not populated, unless it's specified in $expand. */ - readonly pretaxCost?: number; + department?: Department; +} + +/** + * @interface + * An interface representing Address. + * Address details. + * + */ +export interface Address { /** - * @member {boolean} [isEstimated] The estimated usage is subject to change. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [addressLine1] Address Line1. */ - readonly isEstimated?: boolean; + addressLine1?: string; /** - * @member {string} [meterId] The meter id (GUID). - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [addressLine2] Address Line2. */ - readonly meterId?: string; + addressLine2?: string; /** - * @member {MeterDetails} [meterDetails] The details about the meter. By - * default this is not populated, unless it's specified in $expand. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [addressLine3] Address Line3. */ - readonly meterDetails?: MeterDetails; + addressLine3?: string; /** - * @member {string} [subscriptionGuid] Subscription guid. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [city] Address City. */ - readonly subscriptionGuid?: string; + city?: string; /** - * @member {string} [subscriptionName] Subscription name. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [region] Address Region. */ - readonly subscriptionName?: string; + region?: string; /** - * @member {string} [accountName] Account name. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [country] Country code uses ISO2, 2-digit format.. */ - readonly accountName?: string; + country?: string; /** - * @member {string} [departmentName] Department name. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [postalCode] Postal Code. */ - readonly departmentName?: string; + postalCode?: string; /** - * @member {string} [product] Product name. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [phoneNumber] Phone Number. */ - readonly product?: string; + phoneNumber?: string; +} + +/** + * @interface + * An interface representing BillingProfile. + * A billing profile resource. + * + * @extends Resource + */ +export interface BillingProfile extends Resource { /** - * @member {string} [consumedService] Consumed service name. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [displayName] The billing profile name. */ - readonly consumedService?: string; + displayName?: string; /** - * @member {string} [costCenter] The cost center of this department if it is - * a department and a costcenter exists - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {string} [poNumber] Purchase order number. */ - readonly costCenter?: string; + poNumber?: string; /** - * @member {string} [partNumber] Part Number - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {Address} [billingAddress] Billing address. */ - readonly partNumber?: string; + billingAddress?: Address; /** - * @member {string} [resourceGuid] Resource Guid + * @member {string} [billingContact] Billing contact. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly resourceGuid?: string; + readonly billingContact?: string; /** - * @member {string} [offerId] Offer Id + * @member {boolean} [emailInvoice] Email invoice. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly offerId?: string; + readonly emailInvoice?: boolean; /** - * @member {boolean} [chargesBilledSeparately] Charges billed separately + * @member {number} [invoiceDay] Invoice day. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly chargesBilledSeparately?: boolean; + readonly invoiceDay?: number; /** - * @member {string} [location] Resource Location + * @member {string} [currency] Currency on the billing profile. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly location?: string; + readonly currency?: string; +} + +/** + * @interface + * An interface representing InvoiceSection. + * An InvoiceSection resource. + * + * @extends Resource + */ +export interface InvoiceSection extends Resource { + /** + * @member {string} [displayName] The name of the InvoiceSection. + */ + displayName?: string; /** - * @member {string} [additionalProperties] Additional details of this usage - * item. By default this is not populated, unless it's specified in $expand. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {BillingProfile[]} [billingProfiles] The billing profiles + * associated to the billing account. */ - readonly additionalProperties?: string; + billingProfiles?: BillingProfile[]; } /** * @interface - * An interface representing Marketplace. - * An marketplace resource. + * An interface representing BillingAccount. + * A billing account resource. * * @extends Resource */ -export interface Marketplace extends Resource { +export interface BillingAccount extends Resource { /** - * @member {string} [billingPeriodId] The id of the billing period resource - * that the usage belongs to. + * @member {string} [company] The Company this billing account belongs to. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly billingPeriodId?: string; + readonly company?: string; /** - * @member {Date} [usageStart] The start of the date time range covered by - * the usage detail. + * @member {AccountType} [accountType] The billing account Type. Possible + * values include: 'CommerceRoot', 'Enrollment' * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly usageStart?: Date; + readonly accountType?: AccountType; + /** + * @member {Address} [address] The address associated with billing account. + */ + address?: Address; /** - * @member {Date} [usageEnd] The end of the date time range covered by the - * usage detail. + * @member {string} [defaultCurrency] The ISO currency, for example, USD. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly usageEnd?: Date; + readonly defaultCurrency?: string; /** - * @member {number} [resourceRate] The marketplace resource rate. + * @member {string} [country] The country associated with billing account. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly resourceRate?: number; + readonly country?: string; /** - * @member {string} [offerName] The type of offer. + * @member {string} [agreements] Agreements associated with billing account * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly offerName?: string; + readonly agreements?: string; /** - * @member {string} [resourceGroup] The name of resource group. + * @member {InvoiceSection[]} [invoiceSections] The invoiceSections + * associated to the billing account. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly resourceGroup?: string; + readonly invoiceSections?: InvoiceSection[]; /** - * @member {string} [orderNumber] The order number. + * @member {BillingProfile[]} [billingProfiles] The billing profiles + * associated to the billing account. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly orderNumber?: string; + readonly billingProfiles?: BillingProfile[]; /** - * @member {string} [instanceName] The name of the resource instance that the - * usage is about. + * @member {Enrollment} [enrollmentDetails] The details about the associated + * legacy enrollment. By default this is not populated, unless it's specified + * in $expand. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly instanceName?: string; + readonly enrollmentDetails?: Enrollment; /** - * @member {string} [instanceId] The uri of the resource instance that the - * usage is about. + * @member {Department[]} [departments] The departments associated to the + * enrollment. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly instanceId?: string; + readonly departments?: Department[]; /** - * @member {string} [currency] The ISO currency in which the meter is - * charged, for example, USD. + * @member {EnrollmentAccount[]} [enrollmentAccounts] The accounts associated + * to the enrollment. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly currency?: string; + readonly enrollmentAccounts?: EnrollmentAccount[]; +} + +/** + * @interface + * An interface representing Amount. + * Object to represent monetary quantities. + * + */ +export interface Amount { /** - * @member {number} [consumedQuantity] The quantity of usage. + * @member {string} [currency] The currency for the amount value. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly consumedQuantity?: number; + readonly currency?: string; /** - * @member {string} [unitOfMeasure] The unit of measure. + * @member {number} [value] Amount value. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly unitOfMeasure?: string; + readonly value?: number; +} + +/** + * @interface + * An interface representing PricesheetDownloadResponse. + * Download response of Pricesheets. + * + * @extends Resource + */ +export interface PricesheetDownloadResponse extends Resource { /** - * @member {number} [pretaxCost] The amount of cost before tax. + * @member {string} [downloadUrl] The URL to the PDF file. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly pretaxCost?: number; + readonly downloadUrl?: string; /** - * @member {boolean} [isEstimated] The estimated usage is subject to change. + * @member {string} [expiryTime] The time in UTC at which this download URL + * will expire. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly isEstimated?: boolean; + readonly expiryTime?: string; +} + +/** + * @interface + * An interface representing CreditBalanceSummary. + * Summary of credit balances. + * + */ +export interface CreditBalanceSummary { /** - * @member {string} [meterId] The meter id (GUID). + * @member {Amount} [estimatedBalance] Estimated balance. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly meterId?: string; + readonly estimatedBalance?: Amount; /** - * @member {string} [subscriptionGuid] Subscription guid. + * @member {Amount} [currentBalance] Current balance. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly subscriptionGuid?: string; + readonly currentBalance?: Amount; +} + +/** + * @interface + * An interface representing CreditSummary. + * A credit summary resource. + * + * @extends Resource + */ +export interface CreditSummary extends Resource { + /** + * @member {CreditBalanceSummary} [balanceSummary] Summary of balances + * associated with this credit summary. + */ + balanceSummary?: CreditBalanceSummary; /** - * @member {string} [subscriptionName] Subscription name. + * @member {Amount} [pendingCreditAdjustments] Pending Credit Adjustments. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly subscriptionName?: string; + readonly pendingCreditAdjustments?: Amount; /** - * @member {string} [accountName] Account name. + * @member {Amount} [expiredCredit] Expired Credit. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly accountName?: string; + readonly expiredCredit?: Amount; /** - * @member {string} [departmentName] Department name. + * @member {Amount} [pendingEligibleCharges] Pending Eligible Charges. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly departmentName?: string; + readonly pendingEligibleCharges?: Amount; +} + +/** + * @interface + * An interface representing EventSummary. + * An event summary resource. + * + * @extends Resource + */ +export interface EventSummary extends Resource { /** - * @member {string} [consumedService] Consumed service name. + * @member {Date} [transactionDate] Transaction Date. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly consumedService?: string; + readonly transactionDate?: Date; /** - * @member {string} [costCenter] The cost center of this department if it is - * a department and a costcenter exists + * @member {string} [description] Transaction description. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly costCenter?: string; + readonly description?: string; /** - * @member {string} [additionalProperties] Additional details of this usage - * item. By default this is not populated, unless it's specified in $expand. + * @member {Amount} [newCredit] New Credit. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly additionalProperties?: string; + readonly newCredit?: Amount; /** - * @member {string} [publisherName] The name of publisher. + * @member {Amount} [adjustments] Credit Adjustments. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly publisherName?: string; + readonly adjustments?: Amount; /** - * @member {string} [planName] The name of plan. + * @member {Amount} [creditExpired] Credit Expired. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly planName?: string; + readonly creditExpired?: Amount; /** - * @member {boolean} [isRecurringCharge] Flag indicating whether this is a - * recurring charge or not. + * @member {Amount} [charges] Credit Eligible Charges. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly isRecurringCharge?: boolean; -} - -/** - * @interface - * An interface representing BalancePropertiesNewPurchasesDetailsItem. - */ -export interface BalancePropertiesNewPurchasesDetailsItem { + readonly charges?: Amount; /** - * @member {string} [name] the name of new purchase. + * @member {Amount} [closedBalance] Closed Balance. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly name?: string; + readonly closedBalance?: Amount; + /** + * @member {EventType} [eventType] The type of event. Possible values + * include: 'NewCredit', 'ExpiredCredit', 'SettledCharges' + */ + eventType?: EventType; /** - * @member {number} [value] the value of new purchase. + * @member {string} [invoiceNumber] Invoice Number. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly value?: number; + readonly invoiceNumber?: string; } /** * @interface - * An interface representing BalancePropertiesAdjustmentDetailsItem. + * An interface representing Events. + * Result of listing event summary. + * */ -export interface BalancePropertiesAdjustmentDetailsItem { - /** - * @member {string} [name] the name of new adjustment. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly name?: string; +export interface Events { /** - * @member {number} [value] the value of new adjustment. + * @member {EventSummary[]} [value] The list of event summary. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly value?: number; + readonly value?: EventSummary[]; } /** * @interface - * An interface representing Balance. - * A balance resource. + * An interface representing LotSummary. + * A lot summary resource. * * @extends Resource */ -export interface Balance extends Resource { +export interface LotSummary extends Resource { /** - * @member {string} [currency] The ISO currency in which the meter is - * charged, for example, USD. + * @member {Amount} [originalAmount] Original Amount. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly currency?: string; + readonly originalAmount?: Amount; + /** + * @member {Amount} [closedBalance] Closed Balance. + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly closedBalance?: Amount; /** - * @member {number} [beginningBalance] The beginning balance for the billing - * period. + * @member {LotSource} [source] Lot source. Possible values include: + * 'PurchasedCredit', 'PromotionalCredit' * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly beginningBalance?: number; + readonly source?: LotSource; /** - * @member {number} [endingBalance] The ending balance for the billing period - * (for open periods this will be updated daily). + * @member {Date} [startDate] Start Date. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly endingBalance?: number; + readonly startDate?: Date; /** - * @member {number} [newPurchases] Total new purchase amount. + * @member {Date} [expirationDate] Expiration Date. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly newPurchases?: number; + readonly expirationDate?: Date; + /** + * @member {string} [poNumber] PO Number. + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly poNumber?: string; +} + +/** + * @interface + * An interface representing Lots. + * Result of listing lot summary. + * + */ +export interface Lots { /** - * @member {number} [adjustments] Total adjustment amount. + * @member {LotSummary[]} [value] The list of lot summary. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly adjustments?: number; + readonly value?: LotSummary[]; +} + +/** + * @interface + * An interface representing ChargeSummaryByBillingAccount. + * A charge summary resource by billing account. + * + * @extends Resource + */ +export interface ChargeSummaryByBillingAccount extends Resource { /** - * @member {number} [utilized] Total Commitment usage. + * @member {string} [billingPeriodId] The id of the billing period resource + * that the usage belongs to. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly utilized?: number; + readonly billingPeriodId?: string; /** - * @member {number} [serviceOverage] Overage for Azure services. + * @member {string} [usageStart] Billing period start date. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly serviceOverage?: number; + readonly usageStart?: string; /** - * @member {number} [chargesBilledSeparately] Charges Billed separately. + * @member {string} [usageEnd] Billing period end date. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly chargesBilledSeparately?: number; + readonly usageEnd?: string; /** - * @member {number} [totalOverage] serviceOverage + chargesBilledSeparately. + * @member {Amount} [azureCharges] Azure Charges. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly totalOverage?: number; + readonly azureCharges?: Amount; /** - * @member {number} [totalUsage] Azure service commitment + total Overage. + * @member {Amount} [chargesBilledSeparately] Charges Billed separately. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly totalUsage?: number; + readonly chargesBilledSeparately?: Amount; /** - * @member {number} [azureMarketplaceServiceCharges] Total charges for Azure - * Marketplace. + * @member {Amount} [marketplaceCharges] Marketplace Charges. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly azureMarketplaceServiceCharges?: number; + readonly marketplaceCharges?: Amount; /** - * @member {BillingFrequency} [billingFrequency] The billing frequency. - * Possible values include: 'Month', 'Quarter', 'Year' + * @member {string} [billingAccountId] The id of the billing account resource + * that the charge belongs to. + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** */ - billingFrequency?: BillingFrequency; + readonly billingAccountId?: string; /** - * @member {boolean} [priceHidden] Price is hidden or not. + * @member {string} [billingProfileId] The id of the billing profile resource + * that the charge belongs to. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly priceHidden?: boolean; + readonly billingProfileId?: string; /** - * @member {BalancePropertiesNewPurchasesDetailsItem[]} [newPurchasesDetails] - * List of new purchases. + * @member {string} [invoiceSectionId] The id of the invoice section resource + * that the charge belongs to. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly newPurchasesDetails?: BalancePropertiesNewPurchasesDetailsItem[]; + readonly invoiceSectionId?: string; +} + +/** + * @interface + * An interface representing ChargesListByBillingAccount. + * Result of listing charge summary by billing account. It contains a list of + * available change summaries in reverse chronological order by billing period. + * + */ +export interface ChargesListByBillingAccount { /** - * @member {BalancePropertiesAdjustmentDetailsItem[]} [adjustmentDetails] - * List of Adjustments (Promo credit, SIE credit etc.). + * @member {ChargeSummaryByBillingAccount[]} [value] The list of charge + * summary by billing account. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly adjustmentDetails?: BalancePropertiesAdjustmentDetailsItem[]; + readonly value?: ChargeSummaryByBillingAccount[]; } /** * @interface - * An interface representing ReservationSummary. - * reservation summary resource. + * An interface representing ChargeSummaryByBillingProfile. + * A charge summary resource by billing profile. * * @extends Resource */ -export interface ReservationSummary extends Resource { +export interface ChargeSummaryByBillingProfile extends Resource { + /** + * @member {string} [billingPeriodId] The id of the billing period resource + * that the usage belongs to. + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly billingPeriodId?: string; /** - * @member {string} [reservationOrderId] The reservation order ID is the - * identifier for a reservation purchase. Each reservation order ID - * represents a single purchase transaction. A reservation order contains - * reservations. The reservation order specifies the VM size and region for - * the reservations. + * @member {string} [usageStart] Billing period start date. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly reservationOrderId?: string; + readonly usageStart?: string; /** - * @member {string} [reservationId] The reservation ID is the identifier of a - * reservation within a reservation order. Each reservation is the grouping - * for applying the benefit scope and also specifies the number of instances - * to which the reservation benefit can be applied to. + * @member {string} [usageEnd] Billing period end date. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly reservationId?: string; + readonly usageEnd?: string; /** - * @member {string} [skuName] This is the ARM Sku name. It can be used to - * join with the servicetype field in additoinalinfo in usage records. + * @member {Amount} [azureCharges] Azure Charges. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly skuName?: string; + readonly azureCharges?: Amount; /** - * @member {number} [reservedHours] This is the total hours reserved. E.g. if - * reservation for 1 instance was made on 1 PM, this will be 11 hours for - * that day and 24 hours from subsequent days + * @member {Amount} [chargesBilledSeparately] Charges Billed separately. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly reservedHours?: number; + readonly chargesBilledSeparately?: Amount; /** - * @member {Date} [usageDate] Data corresponding to the utilization record. - * If the grain of data is monthly, it will be first day of month. + * @member {Amount} [marketplaceCharges] Marketplace Charges. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly usageDate?: Date; + readonly marketplaceCharges?: Amount; /** - * @member {number} [usedHours] Total used hours by the reservation + * @member {string} [billingAccountId] The id of the billing account resource + * that the charge belongs to. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly usedHours?: number; + readonly billingAccountId?: string; /** - * @member {number} [minUtilizationPercentage] This is the minimum hourly - * utilization in the usage time (day or month). E.g. if usage record - * corresponds to 12/10/2017 and on that for hour 4 and 5, utilization was - * 10%, this field will return 10% for that day + * @member {string} [billingProfileId] The id of the billing profile resource + * that the charge belongs to. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly minUtilizationPercentage?: number; + readonly billingProfileId?: string; /** - * @member {number} [avgUtilizationPercentage] This is average utilization - * for the entire time range. (day or month depending on the grain) + * @member {string} [invoiceSectionId] The id of the invoice section resource + * that the charge belongs to. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly avgUtilizationPercentage?: number; + readonly invoiceSectionId?: string; +} + +/** + * @interface + * An interface representing ChargesListByBillingProfile. + * Result of listing charge summary by billing profile. It contains a list of + * available change summaries in reverse chronological order by billing period. + * + */ +export interface ChargesListByBillingProfile { /** - * @member {number} [maxUtilizationPercentage] This is the maximum hourly - * utilization in the usage time (day or month). E.g. if usage record - * corresponds to 12/10/2017 and on that for hour 4 and 5, utilization was - * 100%, this field will return 100% for that day. + * @member {ChargeSummaryByBillingProfile[]} [value] The list of charge + * summary by billing profile. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly maxUtilizationPercentage?: number; + readonly value?: ChargeSummaryByBillingProfile[]; } /** * @interface - * An interface representing ReservationDetail. - * reservation detail resource. + * An interface representing ChargeSummaryByInvoiceSection. + * A charge summary resource by invoiceSection. * * @extends Resource */ -export interface ReservationDetail extends Resource { +export interface ChargeSummaryByInvoiceSection extends Resource { + /** + * @member {string} [billingPeriodId] The id of the billing period resource + * that the usage belongs to. + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly billingPeriodId?: string; /** - * @member {string} [reservationOrderId] The reservation order ID is the - * identifier for a reservation purchase. Each reservation order ID - * represents a single purchase transaction. A reservation order contains - * reservations. The reservation order specifies the VM size and region for - * the reservations. + * @member {string} [usageStart] Billing period start date. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly reservationOrderId?: string; + readonly usageStart?: string; /** - * @member {string} [reservationId] The reservation ID is the identifier of a - * reservation within a reservation order. Each reservation is the grouping - * for applying the benefit scope and also specifies the number of instances - * to which the reservation benefit can be applied to. + * @member {string} [usageEnd] Billing period end date. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly reservationId?: string; + readonly usageEnd?: string; /** - * @member {string} [skuName] This is the ARM Sku name. It can be used to - * join with the servicetype field in additoinalinfo in usage records. + * @member {Amount} [azureCharges] Azure Charges. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly skuName?: string; + readonly azureCharges?: Amount; /** - * @member {number} [reservedHours] This is the total hours reserved for the - * day. E.g. if reservation for 1 instance was made on 1 PM, this will be 11 - * hours for that day and 24 hours from subsequent days. + * @member {Amount} [chargesBilledSeparately] Charges Billed separately. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly reservedHours?: number; + readonly chargesBilledSeparately?: Amount; /** - * @member {Date} [usageDate] The date on which consumption occurred. + * @member {Amount} [marketplaceCharges] Marketplace Charges. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly usageDate?: Date; + readonly marketplaceCharges?: Amount; /** - * @member {number} [usedHours] This is the total hours used by the instance. + * @member {string} [billingAccountId] The id of the billing account resource + * that the charge belongs to. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly usedHours?: number; + readonly billingAccountId?: string; /** - * @member {string} [instanceId] This identifier is the name of the resource - * or the fully qualified Resource ID. + * @member {string} [billingProfileId] The id of the billing profile resource + * that the charge belongs to. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly instanceId?: string; + readonly billingProfileId?: string; /** - * @member {number} [totalReservedQuantity] This is the total count of - * instances that are reserved for the reservationid. + * @member {string} [invoiceSectionId] The id of the invoice section resource + * that the charge belongs to. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly totalReservedQuantity?: number; + readonly invoiceSectionId?: string; } /** * @interface - * An interface representing ReservationRecommendation. - * Reservation recommendation resource. + * An interface representing ChargesListByInvoiceSection. + * Result of listing charge summary by invoiceSection. It contains a list of + * available change summaries in reverse chronological order by billing period. * */ -export interface ReservationRecommendation { +export interface ChargesListByInvoiceSection { /** - * @member {string} [id] Resource Id. + * @member {ChargeSummaryByInvoiceSection[]} [value] The list of charge + * summary by invoiceSection. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly id?: string; + readonly value?: ChargeSummaryByInvoiceSection[]; +} + +/** + * @interface + * An interface representing OperationDisplay. + * The object that represents the operation. + * + */ +export interface OperationDisplay { /** - * @member {string} [name] Resource name. + * @member {string} [provider] Service provider: Microsoft.Consumption. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly name?: string; + readonly provider?: string; /** - * @member {string} [type] Resource type. + * @member {string} [resource] Resource on which the operation is performed: + * UsageDetail, etc. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly type?: string; + readonly resource?: string; /** - * @member {{ [propertyName: string]: string }} [tags] Resource tags. + * @member {string} [operation] Operation type: Read, write, delete, etc. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly tags?: { [propertyName: string]: string }; - /** - * @member {string} [location] Resource location - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly location?: string; - /** - * @member {string} [sku] Resource sku - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly sku?: string; - /** - * @member {string} [lookBackPeriod] The number of days of usage to look back - * for recommendation. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly lookBackPeriod?: string; - /** - * @member {string} [meterId] The meter id (GUID) - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly meterId?: string; - /** - * @member {string} [term] RI recommendations in one or three year terms. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly term?: string; - /** - * @member {number} [costWithNoReservedInstances] The total amount of cost - * without reserved instances. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly costWithNoReservedInstances?: number; - /** - * @member {number} [recommendedQuantity] Recomended quality for reserved - * instances. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly recommendedQuantity?: number; - /** - * @member {number} [totalCostWithReservedInstances] The total amount of cost - * with reserved instances. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly totalCostWithReservedInstances?: number; - /** - * @member {number} [netSavings] Total estimated savings with reserved - * instances. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly netSavings?: number; - /** - * @member {Date} [firstUsageDate] The usage date for looking back. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly firstUsageDate?: Date; - /** - * @member {string} [scope] Shared or single recommendation. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly scope?: string; -} - -/** - * @interface - * An interface representing Tag. - * The tag resource. - * - */ -export interface Tag { - /** - * @member {string} [key] Tag key. - */ - key?: string; + readonly operation?: string; } /** * @interface - * An interface representing ProxyResource. - * The Resource model definition. + * An interface representing Operation. + * A Consumption REST API operation. * - * @extends BaseResource */ -export interface ProxyResource extends BaseResource { - /** - * @member {string} [id] Resource Id. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly id?: string; +export interface Operation { /** - * @member {string} [name] Resource name. + * @member {string} [name] Operation name: {provider}/{resource}/{operation}. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ readonly name?: string; /** - * @member {string} [type] Resource type. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly type?: string; - /** - * @member {string} [eTag] eTag of the resource. To handle concurrent update - * scenarion, this field will be used to determine whether the user is - * updating the latest version or not. - */ - eTag?: string; -} - -/** - * @interface - * An interface representing TagsResult. - * A resource listing all tags. - * - * @extends ProxyResource - */ -export interface TagsResult extends ProxyResource { - /** - * @member {Tag[]} [tags] A list of Tag. - */ - tags?: Tag[]; -} - -/** - * @interface - * An interface representing BudgetTimePeriod. - * The start and end date for a budget. - * - */ -export interface BudgetTimePeriod { - /** - * @member {Date} startDate The start date for the budget. - */ - startDate: Date; - /** - * @member {Date} [endDate] The end date for the budget. If not provided, we - * default this to 10 years from the start date. - */ - endDate?: Date; -} - -/** - * @interface - * An interface representing Filters. - * May be used to filter budgets by resource group, resource, or meter. - * - */ -export interface Filters { - /** - * @member {string[]} [resourceGroups] The list of filters on resource - * groups, allowed at subscription level only. - */ - resourceGroups?: string[]; - /** - * @member {string[]} [resources] The list of filters on resources. - */ - resources?: string[]; - /** - * @member {string[]} [meters] The list of filters on meters (GUID), - * mandatory for budgets of usage category. - */ - meters?: string[]; - /** - * @member {{ [propertyName: string]: string[] }} [tags] The dictionary of - * filters on tags. - */ - tags?: { [propertyName: string]: string[] }; -} - -/** - * @interface - * An interface representing CurrentSpend. - * The current amount of cost which is being tracked for a budget. - * - */ -export interface CurrentSpend { - /** - * @member {number} [amount] The total amount of cost which is being tracked - * by the budget. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly amount?: number; - /** - * @member {string} [unit] The unit of measure for the budget amount. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly unit?: string; -} - -/** - * @interface - * An interface representing Notification. - * The notification associated with a budget. - * - */ -export interface Notification { - /** - * @member {boolean} enabled The notification is enabled or not. - */ - enabled: boolean; - /** - * @member {OperatorType} operator The comparison operator. Possible values - * include: 'EqualTo', 'GreaterThan', 'GreaterThanOrEqualTo' - */ - operator: OperatorType; - /** - * @member {number} threshold Threshold value associated with a notification. - * Notification is sent when the cost exceeded the threshold. It is always - * percent and has to be between 0 and 1000. - */ - threshold: number; - /** - * @member {string[]} contactEmails Email addresses to send the budget - * notification to when the threshold is exceeded. - */ - contactEmails: string[]; - /** - * @member {string[]} [contactRoles] Contact roles to send the budget - * notification to when the threshold is exceeded. - */ - contactRoles?: string[]; - /** - * @member {string[]} [contactGroups] Action groups to send the budget - * notification to when the threshold is exceeded. - */ - contactGroups?: string[]; -} - -/** - * @interface - * An interface representing Budget. - * A budget resource. - * - * @extends ProxyResource - */ -export interface Budget extends ProxyResource { - /** - * @member {CategoryType} category The category of the budget, whether the - * budget tracks cost or usage. Possible values include: 'Cost', 'Usage' - */ - category: CategoryType; - /** - * @member {number} amount The total amount of cost to track with the budget - */ - amount: number; - /** - * @member {TimeGrainType} timeGrain The time covered by a budget. Tracking - * of the amount will be reset based on the time grain. Possible values - * include: 'Monthly', 'Quarterly', 'Annually' - */ - timeGrain: TimeGrainType; - /** - * @member {BudgetTimePeriod} timePeriod Has start and end date of the - * budget. The start date must be first of the month and should be less than - * the end date. Budget start date must be on or after June 1, 2017. Future - * start date should not be more than three months. Past start date should - * be selected within the timegrain preiod. There are no restrictions on the - * end date. - */ - timePeriod: BudgetTimePeriod; - /** - * @member {Filters} [filters] May be used to filter budgets by resource - * group, resource, or meter. - */ - filters?: Filters; - /** - * @member {CurrentSpend} [currentSpend] The current amount of cost which is - * being tracked for a budget. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly currentSpend?: CurrentSpend; - /** - * @member {{ [propertyName: string]: Notification }} [notifications] - * Dictionary of notifications associated with the budget. Budget can have up - * to five notifications. + * @member {OperationDisplay} [display] The object that represents the + * operation. */ - notifications?: { [propertyName: string]: Notification }; + display?: OperationDisplay; } /** * @interface - * An interface representing PriceSheetProperties. - * The properties of the price sheet. + * An interface representing ErrorDetails. + * The details of the error. * */ -export interface PriceSheetProperties { - /** - * @member {string} [billingPeriodId] The id of the billing period resource - * that the usage belongs to. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly billingPeriodId?: string; - /** - * @member {string} [meterId] The meter id (GUID) - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly meterId?: string; - /** - * @member {MeterDetails} [meterDetails] The details about the meter. By - * default this is not populated, unless it's specified in $expand. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly meterDetails?: MeterDetails; - /** - * @member {string} [unitOfMeasure] Unit of measure - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly unitOfMeasure?: string; - /** - * @member {number} [includedQuantity] Included quality for an offer - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly includedQuantity?: number; - /** - * @member {string} [partNumber] Part Number - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly partNumber?: string; - /** - * @member {number} [unitPrice] Unit Price - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly unitPrice?: number; +export interface ErrorDetails { /** - * @member {string} [currencyCode] Currency Code + * @member {string} [code] Error code. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly currencyCode?: string; + readonly code?: string; /** - * @member {string} [offerId] Offer Id + * @member {string} [message] Error message indicating why the operation + * failed. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly offerId?: string; + readonly message?: string; } /** * @interface - * An interface representing PriceSheetResult. - * An pricesheet resource. + * An interface representing ErrorResponse. + * Error response indicates that the service is not able to process the + * incoming request. The reason is provided in the error message. * - * @extends Resource */ -export interface PriceSheetResult extends Resource { - /** - * @member {PriceSheetProperties[]} [pricesheets] Price sheet - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly pricesheets?: PriceSheetProperties[]; - /** - * @member {string} [nextLink] The link (url) to the next page of results. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly nextLink?: string; -} - -/** - * @interface - * An interface representing ForecastPropertiesConfidenceLevelsItem. - */ -export interface ForecastPropertiesConfidenceLevelsItem { - /** - * @member {number} [percentage] The percentage level of the confidence - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly percentage?: number; - /** - * @member {Bound} [bound] The boundary of the percentage, values could be - * 'Upper' or 'Lower'. Possible values include: 'Upper', 'Lower' - */ - bound?: Bound; +export interface ErrorResponse { /** - * @member {number} [value] The amount of forecast within the percentage - * level - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * @member {ErrorDetails} [error] The details of the error. */ - readonly value?: number; + error?: ErrorDetails; } /** * @interface - * An interface representing Forecast. - * A forecast resource. + * An interface representing ProxyResource. + * The Resource model definition. * - * @extends Resource + * @extends BaseResource */ -export interface Forecast extends Resource { - /** - * @member {string} [usageDate] The usage date of the forecast. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly usageDate?: string; - /** - * @member {Grain} [grain] The granularity of forecast. Possible values - * include: 'Daily', 'Monthly', 'Yearly' - */ - grain?: Grain; - /** - * @member {number} [charge] The amount of charge - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly charge?: number; +export interface ProxyResource extends BaseResource { /** - * @member {string} [currency] The ISO currency in which the meter is - * charged, for example, USD. + * @member {string} [id] Resource Id. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly currency?: string; - /** - * @member {ChargeType} [chargeType] The type of the charge. Could be actual - * or forecast. Possible values include: 'Actual', 'Forecast' - */ - chargeType?: ChargeType; + readonly id?: string; /** - * @member {ForecastPropertiesConfidenceLevelsItem[]} [confidenceLevels] The - * details about the forecast confidence levels. This is populated only when - * chargeType is Forecast. + * @member {string} [name] Resource name. * **NOTE: This property will not be serialized. It can only be populated by * the server.** */ - readonly confidenceLevels?: ForecastPropertiesConfidenceLevelsItem[]; -} - -/** - * @interface - * An interface representing ManagementGroupAggregatedCostResult. - * A management group aggregated cost resource. - * - * @extends Resource - */ -export interface ManagementGroupAggregatedCostResult extends Resource { - /** - * @member {string} [billingPeriodId] The id of the billing period resource - * that the aggregated cost belongs to. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly billingPeriodId?: string; - /** - * @member {Date} [usageStart] The start of the date time range covered by - * aggregated cost. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly usageStart?: Date; - /** - * @member {Date} [usageEnd] The end of the date time range covered by the - * aggregated cost. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly usageEnd?: Date; - /** - * @member {number} [azureCharges] Azure Charges. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly azureCharges?: number; - /** - * @member {number} [marketplaceCharges] Marketplace Charges. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly marketplaceCharges?: number; - /** - * @member {number} [chargesBilledSeparately] Charges Billed Separately. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly chargesBilledSeparately?: number; - /** - * @member {string} [currency] The ISO currency in which the meter is - * charged, for example, USD. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly currency?: string; - /** - * @member {ManagementGroupAggregatedCostResult[]} [children] Children of a - * management group - */ - children?: ManagementGroupAggregatedCostResult[]; - /** - * @member {string[]} [includedSubscriptions] List of subscription Guids - * included in the calculation of aggregated cost - */ - includedSubscriptions?: string[]; - /** - * @member {string[]} [excludedSubscriptions] List of subscription Guids - * excluded from the calculation of aggregated cost - */ - excludedSubscriptions?: string[]; -} - -/** - * @interface - * An interface representing ChargeSummary. - * A charge summary resource. - * - * @extends Resource - */ -export interface ChargeSummary extends Resource { - /** - * @member {string} [billingPeriodId] The id of the billing period resource - * that the charge belongs to. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly billingPeriodId?: string; - /** - * @member {string} [usageStart] Usage start date. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly usageStart?: string; - /** - * @member {string} [usageEnd] Usage end date. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly usageEnd?: string; - /** - * @member {number} [azureCharges] Azure Charges. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly azureCharges?: number; - /** - * @member {number} [chargesBilledSeparately] Charges Billed separately. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly chargesBilledSeparately?: number; - /** - * @member {number} [marketplaceCharges] Marketplace Charges. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly marketplaceCharges?: number; - /** - * @member {string} [currency] Currency Code - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly currency?: string; -} - -/** - * @interface - * An interface representing ChargesListResult. - * Result of listing charge summary. - * - */ -export interface ChargesListResult { - /** - * @member {ChargeSummary[]} [value] The list of charge summary - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly value?: ChargeSummary[]; -} - -/** - * @interface - * An interface representing ErrorDetails. - * The details of the error. - * - */ -export interface ErrorDetails { - /** - * @member {string} [code] Error code. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly code?: string; - /** - * @member {string} [message] Error message indicating why the operation - * failed. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly message?: string; -} - -/** - * @interface - * An interface representing ErrorResponse. - * Error response indicates that the service is not able to process the - * incoming request. The reason is provided in the error message. - * - */ -export interface ErrorResponse { - /** - * @member {ErrorDetails} [error] The details of the error. - */ - error?: ErrorDetails; -} - -/** - * @interface - * An interface representing OperationDisplay. - * The object that represents the operation. - * - */ -export interface OperationDisplay { - /** - * @member {string} [provider] Service provider: Microsoft.Consumption. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly provider?: string; - /** - * @member {string} [resource] Resource on which the operation is performed: - * UsageDetail, etc. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly resource?: string; - /** - * @member {string} [operation] Operation type: Read, write, delete, etc. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly operation?: string; -} - -/** - * @interface - * An interface representing Operation. - * A Consumption REST API operation. - * - */ -export interface Operation { - /** - * @member {string} [name] Operation name: {provider}/{resource}/{operation}. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly name?: string; - /** - * @member {OperationDisplay} [display] The object that represents the - * operation. - */ - display?: OperationDisplay; -} - -/** - * @interface - * An interface representing ResourceAttributes. - * The Resource model definition. - * - */ -export interface ResourceAttributes { - /** - * @member {string} [location] Resource location - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly location?: string; - /** - * @member {string} [sku] Resource sku - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly sku?: string; -} - -/** - * @interface - * An interface representing QueryOptions. - * Additional parameters for a set of operations. - * - */ -export interface QueryOptions { - /** - * @member {string} [apply] OData apply expression to aggregate usageDetails - * by tags or (tags and properties/usageStart) - */ - apply?: string; -} - -/** - * @interface - * An interface representing UsageDetailsListOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface UsageDetailsListOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/additionalProperties or properties/meterDetails within a list - * of usage details. By default, these fields are not included when listing - * usage details. - */ - expand?: string; - /** - * @member {string} [filter] May be used to filter usageDetails by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName, properties/instanceId - * or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It - * does not currently support 'ne', 'or', or 'not'. Tag filter is a key value - * pair string where key and value is separated by a colon (:). - */ - filter?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N usageDetails. - */ - top?: number; - /** - * @member {QueryOptions} [queryOptions] Additional parameters for the - * operation - */ - queryOptions?: QueryOptions; -} - -/** - * @interface - * An interface representing UsageDetailsListByBillingPeriodOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface UsageDetailsListByBillingPeriodOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/additionalProperties or properties/meterDetails within a list - * of usage details. By default, these fields are not included when listing - * usage details. - */ - expand?: string; - /** - * @member {string} [filter] May be used to filter usageDetails by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter - * is a key value pair string where key and value is separated by a colon - * (:). - */ - filter?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N usageDetails. - */ - top?: number; - /** - * @member {QueryOptions} [queryOptions] Additional parameters for the - * operation - */ - queryOptions?: QueryOptions; -} - -/** - * @interface - * An interface representing UsageDetailsListByBillingAccountOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface UsageDetailsListByBillingAccountOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/additionalProperties or properties/meterDetails within a list - * of usage details. By default, these fields are not included when listing - * usage details. - */ - expand?: string; - /** - * @member {string} [filter] May be used to filter usageDetails by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName, properties/instanceId - * or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It - * does not currently support 'ne', 'or', or 'not'. Tag filter is a key value - * pair string where key and value is separated by a colon (:). - */ - filter?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N usageDetails. - */ - top?: number; - /** - * @member {QueryOptions} [queryOptions] Additional parameters for the - * operation - */ - queryOptions?: QueryOptions; -} - -/** - * @interface - * An interface representing UsageDetailsListForBillingPeriodByBillingAccountOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface UsageDetailsListForBillingPeriodByBillingAccountOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/additionalProperties or properties/meterDetails within a list - * of usage details. By default, these fields are not included when listing - * usage details. - */ - expand?: string; - /** - * @member {string} [filter] May be used to filter usageDetails by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter - * is a key value pair string where key and value is separated by a colon - * (:). - */ - filter?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N usageDetails. - */ - top?: number; - /** - * @member {QueryOptions} [queryOptions] Additional parameters for the - * operation - */ - queryOptions?: QueryOptions; -} - -/** - * @interface - * An interface representing UsageDetailsListByDepartmentOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface UsageDetailsListByDepartmentOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/additionalProperties or properties/meterDetails within a list - * of usage details. By default, these fields are not included when listing - * usage details. - */ - expand?: string; - /** - * @member {string} [filter] May be used to filter usageDetails by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName, properties/instanceId - * or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It - * does not currently support 'ne', 'or', or 'not'. Tag filter is a key value - * pair string where key and value is separated by a colon (:). - */ - filter?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N usageDetails. - */ - top?: number; - /** - * @member {QueryOptions} [queryOptions] Additional parameters for the - * operation - */ - queryOptions?: QueryOptions; -} - -/** - * @interface - * An interface representing UsageDetailsListForBillingPeriodByDepartmentOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface UsageDetailsListForBillingPeriodByDepartmentOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/additionalProperties or properties/meterDetails within a list - * of usage details. By default, these fields are not included when listing - * usage details. - */ - expand?: string; - /** - * @member {string} [filter] May be used to filter usageDetails by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter - * is a key value pair string where key and value is separated by a colon - * (:). - */ - filter?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N usageDetails. - */ - top?: number; - /** - * @member {QueryOptions} [queryOptions] Additional parameters for the - * operation - */ - queryOptions?: QueryOptions; -} - -/** - * @interface - * An interface representing UsageDetailsListByEnrollmentAccountOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface UsageDetailsListByEnrollmentAccountOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/additionalProperties or properties/meterDetails within a list - * of usage details. By default, these fields are not included when listing - * usage details. - */ - expand?: string; - /** - * @member {string} [filter] May be used to filter usageDetails by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName, properties/instanceId - * or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It - * does not currently support 'ne', 'or', or 'not'. Tag filter is a key value - * pair string where key and value is separated by a colon (:). - */ - filter?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N usageDetails. - */ - top?: number; - /** - * @member {QueryOptions} [queryOptions] Additional parameters for the - * operation - */ - queryOptions?: QueryOptions; -} - -/** - * @interface - * An interface representing UsageDetailsListForBillingPeriodByEnrollmentAccountOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface UsageDetailsListForBillingPeriodByEnrollmentAccountOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/additionalProperties or properties/meterDetails within a list - * of usage details. By default, these fields are not included when listing - * usage details. - */ - expand?: string; - /** - * @member {string} [filter] May be used to filter usageDetails by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter - * is a key value pair string where key and value is separated by a colon - * (:). - */ - filter?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N usageDetails. - */ - top?: number; - /** - * @member {QueryOptions} [queryOptions] Additional parameters for the - * operation - */ - queryOptions?: QueryOptions; -} - -/** - * @interface - * An interface representing UsageDetailsListByManagementGroupOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface UsageDetailsListByManagementGroupOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/additionalProperties or properties/meterDetails within a list - * of usage details. By default, these fields are not included when listing - * usage details. - */ - expand?: string; - /** - * @member {string} [filter] May be used to filter usageDetails by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName, properties/instanceId - * or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It - * does not currently support 'ne', 'or', or 'not'. Tag filter is a key value - * pair string where key and value is separated by a colon (:). - */ - filter?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N usageDetails. - */ - top?: number; - /** - * @member {QueryOptions} [queryOptions] Additional parameters for the - * operation - */ - queryOptions?: QueryOptions; -} - -/** - * @interface - * An interface representing UsageDetailsListForBillingPeriodByManagementGroupOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface UsageDetailsListForBillingPeriodByManagementGroupOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/additionalProperties or properties/meterDetails within a list - * of usage details. By default, these fields are not included when listing - * usage details. - */ - expand?: string; - /** - * @member {string} [filter] May be used to filter usageDetails by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter - * is a key value pair string where key and value is separated by a colon - * (:). - */ - filter?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N usageDetails. - */ - top?: number; - /** - * @member {QueryOptions} [queryOptions] Additional parameters for the - * operation - */ - queryOptions?: QueryOptions; -} - -/** - * @interface - * An interface representing MarketplacesListOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface MarketplacesListOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter marketplaces by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. - */ - filter?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N marketplaces. - */ - top?: number; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; -} - -/** - * @interface - * An interface representing MarketplacesListByBillingPeriodOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface MarketplacesListByBillingPeriodOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter marketplaces by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. - */ - filter?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N marketplaces. - */ - top?: number; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; -} - -/** - * @interface - * An interface representing MarketplacesListByBillingAccountOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface MarketplacesListByBillingAccountOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter marketplaces by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. - */ - filter?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N marketplaces. - */ - top?: number; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; -} - -/** - * @interface - * An interface representing MarketplacesListForBillingPeriodByBillingAccountOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface MarketplacesListForBillingPeriodByBillingAccountOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter marketplaces by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. - */ - filter?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N marketplaces. - */ - top?: number; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; -} - -/** - * @interface - * An interface representing MarketplacesListByDepartmentOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface MarketplacesListByDepartmentOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter marketplaces by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. - */ - filter?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N marketplaces. - */ - top?: number; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; -} - -/** - * @interface - * An interface representing MarketplacesListForBillingPeriodByDepartmentOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface MarketplacesListForBillingPeriodByDepartmentOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter marketplaces by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. - */ - filter?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N marketplaces. - */ - top?: number; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; -} - -/** - * @interface - * An interface representing MarketplacesListByEnrollmentAccountOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface MarketplacesListByEnrollmentAccountOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter marketplaces by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. - */ - filter?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N marketplaces. - */ - top?: number; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; -} - -/** - * @interface - * An interface representing MarketplacesListForBillingPeriodByEnrollmentAccountOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface MarketplacesListForBillingPeriodByEnrollmentAccountOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter marketplaces by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. - */ - filter?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N marketplaces. - */ - top?: number; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; -} - -/** - * @interface - * An interface representing MarketplacesListByManagementGroupOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface MarketplacesListByManagementGroupOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter marketplaces by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. - */ - filter?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N marketplaces. - */ - top?: number; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; -} - -/** - * @interface - * An interface representing MarketplacesListForBillingPeriodByManagementGroupOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface MarketplacesListForBillingPeriodByManagementGroupOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter marketplaces by - * properties/usageEnd (Utc time), properties/usageStart (Utc time), - * properties/resourceGroup, properties/instanceName or - * properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', - * and 'and'. It does not currently support 'ne', 'or', or 'not'. - */ - filter?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * most recent N marketplaces. - */ - top?: number; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; -} - -/** - * @interface - * An interface representing ReservationsSummariesListByReservationOrderOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface ReservationsSummariesListByReservationOrderOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] Required only for daily grain. The - * properties/UsageDate for start date and end date. The filter supports 'le' - * and 'ge' - */ - filter?: string; -} - -/** - * @interface - * An interface representing ReservationsSummariesListByReservationOrderAndReservationOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface ReservationsSummariesListByReservationOrderAndReservationOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] Required only for daily grain. The - * properties/UsageDate for start date and end date. The filter supports 'le' - * and 'ge' - */ - filter?: string; -} - -/** - * @interface - * An interface representing ReservationRecommendationsListOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface ReservationRecommendationsListOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter reservationRecommendations - * by properties/scope and properties/lookBackPeriod. - */ - filter?: string; -} - -/** - * @interface - * An interface representing PriceSheetGetOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface PriceSheetGetOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/meterDetails within a price sheet. By default, these fields are - * not included when returning price sheet. - */ - expand?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * top N results. - */ - top?: number; -} - -/** - * @interface - * An interface representing PriceSheetGetByBillingPeriodOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface PriceSheetGetByBillingPeriodOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [expand] May be used to expand the - * properties/meterDetails within a price sheet. By default, these fields are - * not included when returning price sheet. - */ - expand?: string; - /** - * @member {string} [skiptoken] Skiptoken is only used if a previous - * operation returned a partial result. If a previous response contains a - * nextLink element, the value of the nextLink element will include a - * skiptoken parameter that specifies a starting point to use for subsequent - * calls. - */ - skiptoken?: string; - /** - * @member {number} [top] May be used to limit the number of results to the - * top N results. - */ - top?: number; -} - -/** - * @interface - * An interface representing ForecastsListOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface ForecastsListOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter forecasts by - * properties/usageDate (Utc time), properties/chargeType or - * properties/grain. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and - * 'and'. It does not currently support 'ne', 'or', or 'not'. - */ - filter?: string; -} - -/** - * @interface - * An interface representing AggregatedCostGetByManagementGroupOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface AggregatedCostGetByManagementGroupOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter aggregated cost by - * properties/usageStart (Utc time), properties/usageEnd (Utc time). The - * filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not - * currently support 'ne', 'or', or 'not'. Tag filter is a key value pair - * string where key and value is separated by a colon (:). - */ - filter?: string; -} - -/** - * @interface - * An interface representing ChargesListByEnrollmentAccountOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface ChargesListByEnrollmentAccountOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter charges by - * properties/usageEnd (Utc time), properties/usageStart (Utc time). The - * filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not - * currently support 'ne', 'or', or 'not'. Tag filter is a key value pair - * string where key and value is separated by a colon (:). - */ - filter?: string; -} - -/** - * @interface - * An interface representing ChargesListForBillingPeriodByEnrollmentAccountOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface ChargesListForBillingPeriodByEnrollmentAccountOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter charges by - * properties/usageEnd (Utc time), properties/usageStart (Utc time). The - * filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not - * currently support 'ne', 'or', or 'not'. Tag filter is a key value pair - * string where key and value is separated by a colon (:). - */ - filter?: string; -} - -/** - * @interface - * An interface representing ChargesListByDepartmentOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface ChargesListByDepartmentOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter charges by - * properties/usageEnd (Utc time), properties/usageStart (Utc time). The - * filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not - * currently support 'ne', 'or', or 'not'. Tag filter is a key value pair - * string where key and value is separated by a colon (:). - */ - filter?: string; -} - -/** - * @interface - * An interface representing ChargesListForBillingPeriodByDepartmentOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface ChargesListForBillingPeriodByDepartmentOptionalParams extends msRest.RequestOptionsBase { - /** - * @member {string} [filter] May be used to filter charges by - * properties/usageEnd (Utc time), properties/usageStart (Utc time). The - * filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not - * currently support 'ne', 'or', or 'not'. Tag filter is a key value pair - * string where key and value is separated by a colon (:). - */ - filter?: string; -} - -/** - * @interface - * An interface representing ConsumptionManagementClientOptions. - * @extends AzureServiceClientOptions - */ -export interface ConsumptionManagementClientOptions extends AzureServiceClientOptions { - /** - * @member {string} [baseUri] - */ - baseUri?: string; -} - - -/** - * @interface - * An interface representing the UsageDetailsListResult. - * Result of listing usage details. It contains a list of available usage - * details in reverse chronological order by billing period. - * - * @extends Array - */ -export interface UsageDetailsListResult extends Array { - /** - * @member {string} [nextLink] The link (url) to the next page of results. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly nextLink?: string; -} - -/** - * @interface - * An interface representing the MarketplacesListResult. - * Result of listing marketplaces. It contains a list of available marketplaces - * in reverse chronological order by billing period. - * - * @extends Array - */ -export interface MarketplacesListResult extends Array { - /** - * @member {string} [nextLink] The link (url) to the next page of results. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly nextLink?: string; -} - -/** - * @interface - * An interface representing the ReservationSummariesListResult. - * Result of listing reservation summaries. - * - * @extends Array - */ -export interface ReservationSummariesListResult extends Array { - /** - * @member {string} [nextLink] The link (url) to the next page of results. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly nextLink?: string; -} - -/** - * @interface - * An interface representing the ReservationDetailsListResult. - * Result of listing reservation details. - * - * @extends Array - */ -export interface ReservationDetailsListResult extends Array { - /** - * @member {string} [nextLink] The link (url) to the next page of results. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly nextLink?: string; -} - -/** - * @interface - * An interface representing the ReservationRecommendationsListResult. - * Result of listing reservation recommendations. - * - * @extends Array - */ -export interface ReservationRecommendationsListResult extends Array { - /** - * @member {string} [nextLink] The link (url) to the next page of results. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly nextLink?: string; -} - -/** - * @interface - * An interface representing the BudgetsListResult. - * Result of listing budgets. It contains a list of available budgets in the - * scope provided. - * - * @extends Array - */ -export interface BudgetsListResult extends Array { - /** - * @member {string} [nextLink] The link (url) to the next page of results. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly nextLink?: string; -} - -/** - * @interface - * An interface representing the ForecastsListResult. - * Result of listing forecasts. It contains a list of available forecasts. - * - * @extends Array - */ -export interface ForecastsListResult extends Array { -} - -/** - * @interface - * An interface representing the OperationListResult. - * Result of listing consumption operations. It contains a list of operations - * and a URL link to get the next set of results. - * - * @extends Array - */ -export interface OperationListResult extends Array { - /** - * @member {string} [nextLink] URL to get the next set of operation list - * results if there are any. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly nextLink?: string; -} - -/** - * Defines values for BillingFrequency. - * Possible values include: 'Month', 'Quarter', 'Year' - * @readonly - * @enum {string} - */ -export type BillingFrequency = 'Month' | 'Quarter' | 'Year'; - -/** - * Defines values for CategoryType. - * Possible values include: 'Cost', 'Usage' - * @readonly - * @enum {string} - */ -export type CategoryType = 'Cost' | 'Usage'; - -/** - * Defines values for TimeGrainType. - * Possible values include: 'Monthly', 'Quarterly', 'Annually' - * @readonly - * @enum {string} - */ -export type TimeGrainType = 'Monthly' | 'Quarterly' | 'Annually'; - -/** - * Defines values for OperatorType. - * Possible values include: 'EqualTo', 'GreaterThan', 'GreaterThanOrEqualTo' - * @readonly - * @enum {string} - */ -export type OperatorType = 'EqualTo' | 'GreaterThan' | 'GreaterThanOrEqualTo'; - -/** - * Defines values for Grain. - * Possible values include: 'Daily', 'Monthly', 'Yearly' - * @readonly - * @enum {string} - */ -export type Grain = 'Daily' | 'Monthly' | 'Yearly'; - -/** - * Defines values for ChargeType. - * Possible values include: 'Actual', 'Forecast' - * @readonly - * @enum {string} - */ -export type ChargeType = 'Actual' | 'Forecast'; - -/** - * Defines values for Bound. - * Possible values include: 'Upper', 'Lower' - * @readonly - * @enum {string} - */ -export type Bound = 'Upper' | 'Lower'; - -/** - * Defines values for Datagrain. - * Possible values include: 'DailyGrain', 'MonthlyGrain' - * @readonly - * @enum {string} - */ -export type Datagrain = 'daily' | 'monthly'; - -/** - * Contains response data for the list operation. - */ -export type UsageDetailsListResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listByBillingPeriod operation. - */ -export type UsageDetailsListByBillingPeriodResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listByBillingAccount operation. - */ -export type UsageDetailsListByBillingAccountResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByBillingAccount operation. - */ -export type UsageDetailsListForBillingPeriodByBillingAccountResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listByDepartment operation. - */ -export type UsageDetailsListByDepartmentResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByDepartment operation. - */ -export type UsageDetailsListForBillingPeriodByDepartmentResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listByEnrollmentAccount operation. - */ -export type UsageDetailsListByEnrollmentAccountResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByEnrollmentAccount operation. - */ -export type UsageDetailsListForBillingPeriodByEnrollmentAccountResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listByManagementGroup operation. - */ -export type UsageDetailsListByManagementGroupResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByManagementGroup operation. - */ -export type UsageDetailsListForBillingPeriodByManagementGroupResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listNext operation. - */ -export type UsageDetailsListNextResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listByBillingPeriodNext operation. - */ -export type UsageDetailsListByBillingPeriodNextResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listByBillingAccountNext operation. - */ -export type UsageDetailsListByBillingAccountNextResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByBillingAccountNext operation. - */ -export type UsageDetailsListForBillingPeriodByBillingAccountNextResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listByDepartmentNext operation. - */ -export type UsageDetailsListByDepartmentNextResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByDepartmentNext operation. - */ -export type UsageDetailsListForBillingPeriodByDepartmentNextResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listByEnrollmentAccountNext operation. - */ -export type UsageDetailsListByEnrollmentAccountNextResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByEnrollmentAccountNext operation. - */ -export type UsageDetailsListForBillingPeriodByEnrollmentAccountNextResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listByManagementGroupNext operation. - */ -export type UsageDetailsListByManagementGroupNextResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByManagementGroupNext operation. - */ -export type UsageDetailsListForBillingPeriodByManagementGroupNextResponse = UsageDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: UsageDetailsListResult; - }; -}; - -/** - * Contains response data for the list operation. - */ -export type MarketplacesListResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listByBillingPeriod operation. - */ -export type MarketplacesListByBillingPeriodResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listByBillingAccount operation. - */ -export type MarketplacesListByBillingAccountResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByBillingAccount operation. - */ -export type MarketplacesListForBillingPeriodByBillingAccountResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listByDepartment operation. - */ -export type MarketplacesListByDepartmentResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByDepartment operation. - */ -export type MarketplacesListForBillingPeriodByDepartmentResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listByEnrollmentAccount operation. - */ -export type MarketplacesListByEnrollmentAccountResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByEnrollmentAccount operation. - */ -export type MarketplacesListForBillingPeriodByEnrollmentAccountResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listByManagementGroup operation. - */ -export type MarketplacesListByManagementGroupResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByManagementGroup operation. - */ -export type MarketplacesListForBillingPeriodByManagementGroupResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listNext operation. - */ -export type MarketplacesListNextResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listByBillingPeriodNext operation. - */ -export type MarketplacesListByBillingPeriodNextResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listByBillingAccountNext operation. - */ -export type MarketplacesListByBillingAccountNextResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByBillingAccountNext operation. - */ -export type MarketplacesListForBillingPeriodByBillingAccountNextResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listByDepartmentNext operation. - */ -export type MarketplacesListByDepartmentNextResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByDepartmentNext operation. - */ -export type MarketplacesListForBillingPeriodByDepartmentNextResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listByEnrollmentAccountNext operation. - */ -export type MarketplacesListByEnrollmentAccountNextResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByEnrollmentAccountNext operation. - */ -export type MarketplacesListForBillingPeriodByEnrollmentAccountNextResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listByManagementGroupNext operation. - */ -export type MarketplacesListByManagementGroupNextResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the listForBillingPeriodByManagementGroupNext operation. - */ -export type MarketplacesListForBillingPeriodByManagementGroupNextResponse = MarketplacesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: MarketplacesListResult; - }; -}; - -/** - * Contains response data for the getByBillingAccount operation. - */ -export type BalancesGetByBillingAccountResponse = Balance & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: Balance; - }; -}; - -/** - * Contains response data for the getForBillingPeriodByBillingAccount operation. - */ -export type BalancesGetForBillingPeriodByBillingAccountResponse = Balance & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: Balance; - }; -}; - -/** - * Contains response data for the listByReservationOrder operation. - */ -export type ReservationsSummariesListByReservationOrderResponse = ReservationSummariesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ReservationSummariesListResult; - }; -}; - -/** - * Contains response data for the listByReservationOrderAndReservation operation. - */ -export type ReservationsSummariesListByReservationOrderAndReservationResponse = ReservationSummariesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ReservationSummariesListResult; - }; -}; - -/** - * Contains response data for the listByReservationOrderNext operation. - */ -export type ReservationsSummariesListByReservationOrderNextResponse = ReservationSummariesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ReservationSummariesListResult; - }; -}; - -/** - * Contains response data for the listByReservationOrderAndReservationNext operation. - */ -export type ReservationsSummariesListByReservationOrderAndReservationNextResponse = ReservationSummariesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ReservationSummariesListResult; - }; -}; - -/** - * Contains response data for the listByReservationOrder operation. - */ -export type ReservationsDetailsListByReservationOrderResponse = ReservationDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ReservationDetailsListResult; - }; -}; - -/** - * Contains response data for the listByReservationOrderAndReservation operation. - */ -export type ReservationsDetailsListByReservationOrderAndReservationResponse = ReservationDetailsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ReservationDetailsListResult; - }; -}; - -/** - * Contains response data for the listByReservationOrderNext operation. - */ -export type ReservationsDetailsListByReservationOrderNextResponse = ReservationDetailsListResult & { + readonly name?: string; /** - * The underlying HTTP response. + * @member {string} [type] Resource type. + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ReservationDetailsListResult; - }; -}; - -/** - * Contains response data for the listByReservationOrderAndReservationNext operation. - */ -export type ReservationsDetailsListByReservationOrderAndReservationNextResponse = ReservationDetailsListResult & { + readonly type?: string; /** - * The underlying HTTP response. + * @member {string} [eTag] eTag of the resource. To handle concurrent update + * scenario, this field will be used to determine whether the user is + * updating the latest version or not. */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ReservationDetailsListResult; - }; -}; + eTag?: string; +} /** - * Contains response data for the list operation. + * @interface + * An interface representing ChargesByBillingAccountListOptionalParams. + * Optional Parameters. + * + * @extends RequestOptionsBase */ -export type ReservationRecommendationsListResponse = ReservationRecommendationsListResult & { +export interface ChargesByBillingAccountListOptionalParams extends msRest.RequestOptionsBase { /** - * The underlying HTTP response. + * @member {string} [apply] May be used to group charges by + * properties/billingProfileId, or properties/invoiceSectionId. */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ReservationRecommendationsListResult; - }; -}; + apply?: string; +} /** - * Contains response data for the listNext operation. + * @interface + * An interface representing ChargesByInvoiceSectionListOptionalParams. + * Optional Parameters. + * + * @extends RequestOptionsBase */ -export type ReservationRecommendationsListNextResponse = ReservationRecommendationsListResult & { +export interface ChargesByInvoiceSectionListOptionalParams extends msRest.RequestOptionsBase { /** - * The underlying HTTP response. + * @member {string} [apply] May be used to group charges by + * properties/productName. */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ReservationRecommendationsListResult; - }; -}; + apply?: string; +} /** - * Contains response data for the list operation. + * @interface + * An interface representing ConsumptionManagementClientOptions. + * @extends AzureServiceClientOptions */ -export type BudgetsListResponse = BudgetsListResult & { +export interface ConsumptionManagementClientOptions extends AzureServiceClientOptions { /** - * The underlying HTTP response. + * @member {string} [baseUri] */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: BudgetsListResult; - }; -}; + baseUri?: string; +} /** - * Contains response data for the listByResourceGroupName operation. + * @interface + * An interface representing InvoicePricesheetDownloadHeaders. + * Defines headers for Download operation. + * */ -export type BudgetsListByResourceGroupNameResponse = BudgetsListResult & { +export interface InvoicePricesheetDownloadHeaders { /** - * The underlying HTTP response. + * @member {string} [location] GET this URL to retrieve the status of the + * asynchronous operation. */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: BudgetsListResult; - }; -}; - -/** - * Contains response data for the get operation. - */ -export type BudgetsGetResponse = Budget & { + location: string; /** - * The underlying HTTP response. + * @member {string} [retryAfter] The amount of delay to use while the status + * of the operation is checked. The value is expressed in seconds. */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: Budget; - }; -}; + retryAfter: string; + /** + * @member {string} [azureAsyncOperation] To get the progress of the + * operation, call GET operation on the URL in Azure-AsyncOperation header + * field. + */ + azureAsyncOperation: string; + /** + * @member {string} [oDataEntityId] The operation entity Id GUID. + */ + oDataEntityId: string; +} /** - * Contains response data for the createOrUpdate operation. + * @interface + * An interface representing BillingProfilePricesheetDownloadHeaders. + * Defines headers for Download operation. + * */ -export type BudgetsCreateOrUpdateResponse = Budget & { +export interface BillingProfilePricesheetDownloadHeaders { /** - * The underlying HTTP response. + * @member {string} [location] GET this URL to retrieve the status of the + * asynchronous operation. */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: Budget; - }; -}; + location: string; + /** + * @member {string} [retryAfter] The amount of delay to use while the status + * of the operation is checked. The value is expressed in seconds. + */ + retryAfter: string; + /** + * @member {string} [azureAsyncOperation] To get the progress of the + * operation, call GET operation on the URL in Azure-AsyncOperation header + * field. + */ + azureAsyncOperation: string; + /** + * @member {string} [oDataEntityId] The operation entity Id GUID. + */ + oDataEntityId: string; +} + /** - * Contains response data for the getByResourceGroupName operation. + * @interface + * An interface representing the OperationListResult. + * Result of listing consumption operations. It contains a list of operations + * and a URL link to get the next set of results. + * + * @extends Array */ -export type BudgetsGetByResourceGroupNameResponse = Budget & { +export interface OperationListResult extends Array { /** - * The underlying HTTP response. + * @member {string} [nextLink] URL to get the next set of operation list + * results if there are any. + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: Budget; - }; -}; + readonly nextLink?: string; +} /** - * Contains response data for the createOrUpdateByResourceGroupName operation. + * Defines values for EventType. + * Possible values include: 'NewCredit', 'ExpiredCredit', 'SettledCharges' + * @readonly + * @enum {string} */ -export type BudgetsCreateOrUpdateByResourceGroupNameResponse = Budget & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: Budget; - }; -}; +export type EventType = 'NewCredit' | 'ExpiredCredit' | 'SettledCharges'; /** - * Contains response data for the listNext operation. + * Defines values for LotSource. + * Possible values include: 'PurchasedCredit', 'PromotionalCredit' + * @readonly + * @enum {string} */ -export type BudgetsListNextResponse = BudgetsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: BudgetsListResult; - }; -}; +export type LotSource = 'PurchasedCredit' | 'PromotionalCredit'; /** - * Contains response data for the listByResourceGroupNameNext operation. + * Defines values for AccountType. + * Possible values include: 'CommerceRoot', 'Enrollment' + * @readonly + * @enum {string} */ -export type BudgetsListByResourceGroupNameNextResponse = BudgetsListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: BudgetsListResult; - }; -}; +export type AccountType = 'CommerceRoot' | 'Enrollment'; /** - * Contains response data for the get operation. + * Contains response data for the list operation. */ -export type PriceSheetGetResponse = PriceSheetResult & { +export type OperationsListResponse = OperationListResult & { /** * The underlying HTTP response. */ @@ -3831,14 +1172,14 @@ export type PriceSheetGetResponse = PriceSheetResult & { /** * The response body as parsed JSON or XML */ - parsedBody: PriceSheetResult; + parsedBody: OperationListResult; }; }; /** - * Contains response data for the getByBillingPeriod operation. + * Contains response data for the listNext operation. */ -export type PriceSheetGetByBillingPeriodResponse = PriceSheetResult & { +export type OperationsListNextResponse = OperationListResult & { /** * The underlying HTTP response. */ @@ -3850,14 +1191,14 @@ export type PriceSheetGetByBillingPeriodResponse = PriceSheetResult & { /** * The response body as parsed JSON or XML */ - parsedBody: PriceSheetResult; + parsedBody: OperationListResult; }; }; /** * Contains response data for the get operation. */ -export type TagsGetResponse = TagsResult & { +export type CreditSummaryByBillingProfileGetResponse = CreditSummary & { /** * The underlying HTTP response. */ @@ -3869,14 +1210,14 @@ export type TagsGetResponse = TagsResult & { /** * The response body as parsed JSON or XML */ - parsedBody: TagsResult; + parsedBody: CreditSummary; }; }; /** * Contains response data for the list operation. */ -export type ForecastsListResponse = ForecastsListResult & { +export type EventsByBillingProfileListResponse = Events & { /** * The underlying HTTP response. */ @@ -3888,14 +1229,14 @@ export type ForecastsListResponse = ForecastsListResult & { /** * The response body as parsed JSON or XML */ - parsedBody: ForecastsListResult; + parsedBody: Events; }; }; /** * Contains response data for the list operation. */ -export type OperationsListResponse = OperationListResult & { +export type LotsByBillingProfileListResponse = Lots & { /** * The underlying HTTP response. */ @@ -3907,37 +1248,22 @@ export type OperationsListResponse = OperationListResult & { /** * The response body as parsed JSON or XML */ - parsedBody: OperationListResult; + parsedBody: Lots; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the download operation. */ -export type OperationsListNextResponse = OperationListResult & { +export type InvoicePricesheetDownloadResponse = PricesheetDownloadResponse & InvoicePricesheetDownloadHeaders & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML + * The parsed HTTP response headers. */ - parsedBody: OperationListResult; - }; -}; - -/** - * Contains response data for the getByManagementGroup operation. - */ -export type AggregatedCostGetByManagementGroupResponse = ManagementGroupAggregatedCostResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { + parsedHeaders: InvoicePricesheetDownloadHeaders; /** * The response body as text (string format) */ @@ -3945,37 +1271,22 @@ export type AggregatedCostGetByManagementGroupResponse = ManagementGroupAggregat /** * The response body as parsed JSON or XML */ - parsedBody: ManagementGroupAggregatedCostResult; + parsedBody: PricesheetDownloadResponse; }; }; /** - * Contains response data for the getForBillingPeriodByManagementGroup operation. + * Contains response data for the download operation. */ -export type AggregatedCostGetForBillingPeriodByManagementGroupResponse = ManagementGroupAggregatedCostResult & { +export type BillingProfilePricesheetDownloadResponse = PricesheetDownloadResponse & BillingProfilePricesheetDownloadHeaders & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** - * The response body as text (string format) - */ - bodyAsText: string; - /** - * The response body as parsed JSON or XML + * The parsed HTTP response headers. */ - parsedBody: ManagementGroupAggregatedCostResult; - }; -}; - -/** - * Contains response data for the listByEnrollmentAccount operation. - */ -export type ChargesListByEnrollmentAccountResponse = ChargesListResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { + parsedHeaders: BillingProfilePricesheetDownloadHeaders; /** * The response body as text (string format) */ @@ -3983,14 +1294,14 @@ export type ChargesListByEnrollmentAccountResponse = ChargesListResult & { /** * The response body as parsed JSON or XML */ - parsedBody: ChargesListResult; + parsedBody: PricesheetDownloadResponse; }; }; /** - * Contains response data for the listForBillingPeriodByEnrollmentAccount operation. + * Contains response data for the list operation. */ -export type ChargesListForBillingPeriodByEnrollmentAccountResponse = ChargeSummary & { +export type ChargesByBillingAccountListResponse = ChargesListByBillingAccount & { /** * The underlying HTTP response. */ @@ -4002,14 +1313,14 @@ export type ChargesListForBillingPeriodByEnrollmentAccountResponse = ChargeSumma /** * The response body as parsed JSON or XML */ - parsedBody: ChargeSummary; + parsedBody: ChargesListByBillingAccount; }; }; /** - * Contains response data for the listByDepartment operation. + * Contains response data for the list operation. */ -export type ChargesListByDepartmentResponse = ChargesListResult & { +export type ChargesByBillingProfileListResponse = ChargesListByBillingProfile & { /** * The underlying HTTP response. */ @@ -4021,14 +1332,14 @@ export type ChargesListByDepartmentResponse = ChargesListResult & { /** * The response body as parsed JSON or XML */ - parsedBody: ChargesListResult; + parsedBody: ChargesListByBillingProfile; }; }; /** - * Contains response data for the listForBillingPeriodByDepartment operation. + * Contains response data for the list operation. */ -export type ChargesListForBillingPeriodByDepartmentResponse = ChargeSummary & { +export type ChargesByInvoiceSectionListResponse = ChargesListByInvoiceSection & { /** * The underlying HTTP response. */ @@ -4040,6 +1351,6 @@ export type ChargesListForBillingPeriodByDepartmentResponse = ChargeSummary & { /** * The response body as parsed JSON or XML */ - parsedBody: ChargeSummary; + parsedBody: ChargesListByInvoiceSection; }; }; diff --git a/packages/@azure/arm-consumption/lib/models/invoicePricesheetMappers.ts b/packages/@azure/arm-consumption/lib/models/invoicePricesheetMappers.ts new file mode 100644 index 000000000000..c28097edbf7e --- /dev/null +++ b/packages/@azure/arm-consumption/lib/models/invoicePricesheetMappers.ts @@ -0,0 +1,36 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + PricesheetDownloadResponse, + Resource, + BaseResource, + InvoicePricesheetDownloadHeaders, + ErrorResponse, + ErrorDetails, + Department, + EnrollmentAccount, + BillingProfile, + Address, + InvoiceSection, + BillingAccount, + Enrollment, + EnrollmentPolicies, + CreditSummary, + CreditBalanceSummary, + Amount, + EventSummary, + LotSummary, + ChargeSummaryByBillingAccount, + ChargeSummaryByBillingProfile, + ChargeSummaryByInvoiceSection, + ProxyResource +} from "../models/mappers"; + diff --git a/packages/@azure/arm-consumption/lib/models/lotsByBillingProfileMappers.ts b/packages/@azure/arm-consumption/lib/models/lotsByBillingProfileMappers.ts new file mode 100644 index 000000000000..8354fcba6cdb --- /dev/null +++ b/packages/@azure/arm-consumption/lib/models/lotsByBillingProfileMappers.ts @@ -0,0 +1,36 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + Lots, + LotSummary, + Resource, + BaseResource, + Amount, + ErrorResponse, + ErrorDetails, + Department, + EnrollmentAccount, + BillingProfile, + Address, + InvoiceSection, + BillingAccount, + Enrollment, + EnrollmentPolicies, + PricesheetDownloadResponse, + CreditSummary, + CreditBalanceSummary, + EventSummary, + ChargeSummaryByBillingAccount, + ChargeSummaryByBillingProfile, + ChargeSummaryByInvoiceSection, + ProxyResource +} from "../models/mappers"; + diff --git a/packages/@azure/arm-consumption/lib/models/mappers.ts b/packages/@azure/arm-consumption/lib/models/mappers.ts index 69f5bcfaaee2..33c143551e6b 100644 --- a/packages/@azure/arm-consumption/lib/models/mappers.ts +++ b/packages/@azure/arm-consumption/lib/models/mappers.ts @@ -14,71 +14,110 @@ import * as msRest from "@azure/ms-rest-js"; export const CloudError = CloudErrorMapper; export const BaseResource = BaseResourceMapper; -export const MeterDetails: msRest.CompositeMapper = { - serializedName: "MeterDetails", +export const EnrollmentPolicies: msRest.CompositeMapper = { + serializedName: "EnrollmentPolicies", type: { name: "Composite", - className: "MeterDetails", + className: "EnrollmentPolicies", modelProperties: { - meterName: { + accountOwnerViewCharges: { readOnly: true, - serializedName: "meterName", + serializedName: "accountOwnerViewCharges", type: { - name: "String" + name: "Boolean" } }, - meterCategory: { + departmentAdminViewCharges: { readOnly: true, - serializedName: "meterCategory", + serializedName: "departmentAdminViewCharges", type: { - name: "String" + name: "Boolean" } }, - meterSubCategory: { + marketplacesEnabled: { readOnly: true, - serializedName: "meterSubCategory", + serializedName: "marketplacesEnabled", type: { - name: "String" + name: "Boolean" + } + }, + reservedInstancesEnabled: { + readOnly: true, + serializedName: "reservedInstancesEnabled", + type: { + name: "Boolean" + } + } + } + } +}; + +export const Enrollment: msRest.CompositeMapper = { + serializedName: "Enrollment", + type: { + name: "Composite", + className: "Enrollment", + modelProperties: { + startDate: { + readOnly: true, + serializedName: "startDate", + type: { + name: "DateTime" + } + }, + endDate: { + readOnly: true, + serializedName: "endDate", + type: { + name: "DateTime" } }, - unit: { + currency: { readOnly: true, - serializedName: "unit", + serializedName: "currency", type: { name: "String" } }, - meterLocation: { + channel: { readOnly: true, - serializedName: "meterLocation", + serializedName: "channel", type: { name: "String" } }, - totalIncludedQuantity: { + policies: { readOnly: true, - serializedName: "totalIncludedQuantity", + serializedName: "policies", type: { - name: "Number" + name: "Composite", + className: "EnrollmentPolicies" } }, - pretaxStandardRate: { + language: { readOnly: true, - serializedName: "pretaxStandardRate", + serializedName: "language", type: { - name: "Number" + name: "String" + } + }, + countryCode: { + readOnly: true, + serializedName: "countryCode", + type: { + name: "String" } }, - serviceName: { + status: { readOnly: true, - serializedName: "serviceName", + serializedName: "status", type: { name: "String" } }, - serviceTier: { + billingCycle: { readOnly: true, - serializedName: "serviceTier", + serializedName: "billingCycle", type: { name: "String" } @@ -130,199 +169,209 @@ export const Resource: msRest.CompositeMapper = { } }; -export const UsageDetail: msRest.CompositeMapper = { - serializedName: "UsageDetail", +export const Department: msRest.CompositeMapper = { + serializedName: "Department", type: { name: "Composite", - className: "UsageDetail", + className: "Department", modelProperties: { ...Resource.type.modelProperties, - billingPeriodId: { - readOnly: true, - serializedName: "properties.billingPeriodId", + departmentName: { + serializedName: "properties.departmentName", type: { name: "String" } }, - invoiceId: { - readOnly: true, - serializedName: "properties.invoiceId", + costCenter: { + serializedName: "properties.costCenter", type: { name: "String" } }, - usageStart: { - readOnly: true, - serializedName: "properties.usageStart", + status: { + serializedName: "properties.status", type: { - name: "DateTime" + name: "String" } }, - usageEnd: { - readOnly: true, - serializedName: "properties.usageEnd", + enrollmentAccounts: { + serializedName: "properties.enrollmentAccounts", type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "EnrollmentAccount" + } + } } - }, - instanceName: { - readOnly: true, - serializedName: "properties.instanceName", + } + } + } +}; + +export const EnrollmentAccount: msRest.CompositeMapper = { + serializedName: "EnrollmentAccount", + type: { + name: "Composite", + className: "EnrollmentAccount", + modelProperties: { + ...Resource.type.modelProperties, + accountName: { + serializedName: "properties.accountName", type: { name: "String" } }, - instanceId: { - readOnly: true, - serializedName: "properties.instanceId", + costCenter: { + serializedName: "properties.costCenter", type: { name: "String" } }, - instanceLocation: { - readOnly: true, - serializedName: "properties.instanceLocation", + accountOwner: { + serializedName: "properties.accountOwner", type: { name: "String" } }, - currency: { - readOnly: true, - serializedName: "properties.currency", + status: { + serializedName: "properties.status", type: { name: "String" } }, - usageQuantity: { - readOnly: true, - serializedName: "properties.usageQuantity", - type: { - name: "Number" - } - }, - billableQuantity: { - readOnly: true, - serializedName: "properties.billableQuantity", + startDate: { + serializedName: "properties.startDate", type: { - name: "Number" + name: "DateTime" } }, - pretaxCost: { - readOnly: true, - serializedName: "properties.pretaxCost", + endDate: { + serializedName: "properties.endDate", type: { - name: "Number" + name: "DateTime" } }, - isEstimated: { - readOnly: true, - serializedName: "properties.isEstimated", + department: { + serializedName: "properties.department", type: { - name: "Boolean" + name: "Composite", + className: "Department" } - }, - meterId: { - readOnly: true, - serializedName: "properties.meterId", + } + } + } +}; + +export const Address: msRest.CompositeMapper = { + serializedName: "Address", + type: { + name: "Composite", + className: "Address", + modelProperties: { + addressLine1: { + serializedName: "addressLine1", type: { - name: "Uuid" + name: "String" } }, - meterDetails: { - readOnly: true, - serializedName: "properties.meterDetails", + addressLine2: { + serializedName: "addressLine2", type: { - name: "Composite", - className: "MeterDetails" + name: "String" } }, - subscriptionGuid: { - readOnly: true, - serializedName: "properties.subscriptionGuid", + addressLine3: { + serializedName: "addressLine3", type: { - name: "Uuid" + name: "String" } }, - subscriptionName: { - readOnly: true, - serializedName: "properties.subscriptionName", + city: { + serializedName: "city", type: { name: "String" } }, - accountName: { - readOnly: true, - serializedName: "properties.accountName", + region: { + serializedName: "region", type: { name: "String" } }, - departmentName: { - readOnly: true, - serializedName: "properties.departmentName", + country: { + serializedName: "country", type: { name: "String" } }, - product: { - readOnly: true, - serializedName: "properties.product", + postalCode: { + serializedName: "postalCode", type: { name: "String" } }, - consumedService: { - readOnly: true, - serializedName: "properties.consumedService", + phoneNumber: { + serializedName: "phoneNumber", type: { name: "String" } - }, - costCenter: { - readOnly: true, - serializedName: "properties.costCenter", + } + } + } +}; + +export const BillingProfile: msRest.CompositeMapper = { + serializedName: "BillingProfile", + type: { + name: "Composite", + className: "BillingProfile", + modelProperties: { + ...Resource.type.modelProperties, + displayName: { + serializedName: "properties.displayName", type: { name: "String" } }, - partNumber: { - readOnly: true, - serializedName: "properties.partNumber", + poNumber: { + serializedName: "properties.poNumber", type: { name: "String" } }, - resourceGuid: { - readOnly: true, - serializedName: "properties.resourceGuid", + billingAddress: { + serializedName: "properties.billingAddress", type: { - name: "String" + name: "Composite", + className: "Address" } }, - offerId: { + billingContact: { readOnly: true, - serializedName: "properties.offerId", + serializedName: "properties.billingContact", type: { name: "String" } }, - chargesBilledSeparately: { + emailInvoice: { readOnly: true, - serializedName: "properties.chargesBilledSeparately", + serializedName: "properties.emailInvoice", type: { name: "Boolean" } }, - location: { + invoiceDay: { readOnly: true, - serializedName: "properties.location", + serializedName: "properties.invoiceDay", type: { - name: "String" + name: "Number" } }, - additionalProperties: { + currency: { readOnly: true, - serializedName: "properties.additionalProperties", + serializedName: "properties.currency", type: { name: "String" } @@ -331,1028 +380,335 @@ export const UsageDetail: msRest.CompositeMapper = { } }; -export const Marketplace: msRest.CompositeMapper = { - serializedName: "Marketplace", +export const InvoiceSection: msRest.CompositeMapper = { + serializedName: "InvoiceSection", type: { name: "Composite", - className: "Marketplace", + className: "InvoiceSection", modelProperties: { ...Resource.type.modelProperties, - billingPeriodId: { - readOnly: true, - serializedName: "properties.billingPeriodId", + displayName: { + serializedName: "properties.displayName", type: { name: "String" } }, - usageStart: { - readOnly: true, - serializedName: "properties.usageStart", - type: { - name: "DateTime" - } - }, - usageEnd: { - readOnly: true, - serializedName: "properties.usageEnd", + billingProfiles: { + serializedName: "properties.billingProfiles", type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "BillingProfile" + } + } } - }, - resourceRate: { + } + } + } +}; + +export const BillingAccount: msRest.CompositeMapper = { + serializedName: "BillingAccount", + type: { + name: "Composite", + className: "BillingAccount", + modelProperties: { + ...Resource.type.modelProperties, + company: { readOnly: true, - serializedName: "properties.resourceRate", + serializedName: "properties.company", type: { - name: "Number" + name: "String" } }, - offerName: { + accountType: { readOnly: true, - serializedName: "properties.offerName", + serializedName: "properties.accountType", type: { name: "String" } }, - resourceGroup: { - readOnly: true, - serializedName: "properties.resourceGroup", + address: { + serializedName: "properties.address", type: { - name: "String" + name: "Composite", + className: "Address" } }, - orderNumber: { + defaultCurrency: { readOnly: true, - serializedName: "properties.orderNumber", + serializedName: "properties.defaultCurrency", type: { name: "String" } }, - instanceName: { + country: { readOnly: true, - serializedName: "properties.instanceName", + serializedName: "properties.country", type: { name: "String" } }, - instanceId: { + agreements: { readOnly: true, - serializedName: "properties.instanceId", + serializedName: "properties.agreements", type: { name: "String" } }, - currency: { + invoiceSections: { readOnly: true, - serializedName: "properties.currency", + serializedName: "properties.invoiceSections", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InvoiceSection" + } + } } }, - consumedQuantity: { + billingProfiles: { readOnly: true, - serializedName: "properties.consumedQuantity", + serializedName: "properties.billingProfiles", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "BillingProfile" + } + } } }, - unitOfMeasure: { + enrollmentDetails: { readOnly: true, - serializedName: "properties.unitOfMeasure", + serializedName: "properties.enrollmentDetails", type: { - name: "String" + name: "Composite", + className: "Enrollment" } }, - pretaxCost: { + departments: { readOnly: true, - serializedName: "properties.pretaxCost", + serializedName: "properties.departments", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Department" + } + } } }, - isEstimated: { + enrollmentAccounts: { readOnly: true, - serializedName: "properties.isEstimated", + serializedName: "properties.enrollmentAccounts", type: { - name: "Boolean" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "EnrollmentAccount" + } + } } - }, - meterId: { + } + } + } +}; + +export const Amount: msRest.CompositeMapper = { + serializedName: "Amount", + type: { + name: "Composite", + className: "Amount", + modelProperties: { + currency: { readOnly: true, - serializedName: "properties.meterId", + serializedName: "currency", type: { - name: "Uuid" + name: "String" } }, - subscriptionGuid: { + value: { readOnly: true, - serializedName: "properties.subscriptionGuid", + serializedName: "value", type: { - name: "Uuid" + name: "Number" } - }, - subscriptionName: { + } + } + } +}; + +export const PricesheetDownloadResponse: msRest.CompositeMapper = { + serializedName: "PricesheetDownloadResponse", + type: { + name: "Composite", + className: "PricesheetDownloadResponse", + modelProperties: { + ...Resource.type.modelProperties, + downloadUrl: { readOnly: true, - serializedName: "properties.subscriptionName", + serializedName: "properties.downloadUrl", type: { name: "String" } }, - accountName: { + expiryTime: { readOnly: true, - serializedName: "properties.accountName", + serializedName: "properties.expiryTime", type: { name: "String" } - }, - departmentName: { + } + } + } +}; + +export const CreditBalanceSummary: msRest.CompositeMapper = { + serializedName: "CreditBalanceSummary", + type: { + name: "Composite", + className: "CreditBalanceSummary", + modelProperties: { + estimatedBalance: { readOnly: true, - serializedName: "properties.departmentName", + serializedName: "estimatedBalance", type: { - name: "String" + name: "Composite", + className: "Amount" } }, - consumedService: { + currentBalance: { readOnly: true, - serializedName: "properties.consumedService", + serializedName: "currentBalance", type: { - name: "String" - } - }, - costCenter: { - readOnly: true, - serializedName: "properties.costCenter", - type: { - name: "String" - } - }, - additionalProperties: { - readOnly: true, - serializedName: "properties.additionalProperties", - type: { - name: "String" - } - }, - publisherName: { - readOnly: true, - serializedName: "properties.publisherName", - type: { - name: "String" - } - }, - planName: { - readOnly: true, - serializedName: "properties.planName", - type: { - name: "String" - } - }, - isRecurringCharge: { - readOnly: true, - serializedName: "properties.isRecurringCharge", - type: { - name: "Boolean" - } - } - } - } -}; - -export const BalancePropertiesNewPurchasesDetailsItem: msRest.CompositeMapper = { - serializedName: "BalanceProperties_newPurchasesDetailsItem", - type: { - name: "Composite", - className: "BalancePropertiesNewPurchasesDetailsItem", - modelProperties: { - name: { - readOnly: true, - serializedName: "name", - type: { - name: "String" - } - }, - value: { - readOnly: true, - serializedName: "value", - type: { - name: "Number" - } - } - } - } -}; - -export const BalancePropertiesAdjustmentDetailsItem: msRest.CompositeMapper = { - serializedName: "BalanceProperties_adjustmentDetailsItem", - type: { - name: "Composite", - className: "BalancePropertiesAdjustmentDetailsItem", - modelProperties: { - name: { - readOnly: true, - serializedName: "name", - type: { - name: "String" - } - }, - value: { - readOnly: true, - serializedName: "value", - type: { - name: "Number" - } - } - } - } -}; - -export const Balance: msRest.CompositeMapper = { - serializedName: "Balance", - type: { - name: "Composite", - className: "Balance", - modelProperties: { - ...Resource.type.modelProperties, - currency: { - readOnly: true, - serializedName: "properties.currency", - type: { - name: "String" - } - }, - beginningBalance: { - readOnly: true, - serializedName: "properties.beginningBalance", - type: { - name: "Number" - } - }, - endingBalance: { - readOnly: true, - serializedName: "properties.endingBalance", - type: { - name: "Number" - } - }, - newPurchases: { - readOnly: true, - serializedName: "properties.newPurchases", - type: { - name: "Number" - } - }, - adjustments: { - readOnly: true, - serializedName: "properties.adjustments", - type: { - name: "Number" - } - }, - utilized: { - readOnly: true, - serializedName: "properties.utilized", - type: { - name: "Number" - } - }, - serviceOverage: { - readOnly: true, - serializedName: "properties.serviceOverage", - type: { - name: "Number" - } - }, - chargesBilledSeparately: { - readOnly: true, - serializedName: "properties.chargesBilledSeparately", - type: { - name: "Number" - } - }, - totalOverage: { - readOnly: true, - serializedName: "properties.totalOverage", - type: { - name: "Number" - } - }, - totalUsage: { - readOnly: true, - serializedName: "properties.totalUsage", - type: { - name: "Number" - } - }, - azureMarketplaceServiceCharges: { - readOnly: true, - serializedName: "properties.azureMarketplaceServiceCharges", - type: { - name: "Number" - } - }, - billingFrequency: { - serializedName: "properties.billingFrequency", - type: { - name: "String" - } - }, - priceHidden: { - readOnly: true, - serializedName: "properties.priceHidden", - type: { - name: "Boolean" - } - }, - newPurchasesDetails: { - readOnly: true, - serializedName: "properties.newPurchasesDetails", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "BalancePropertiesNewPurchasesDetailsItem" - } - } - } - }, - adjustmentDetails: { - readOnly: true, - serializedName: "properties.adjustmentDetails", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "BalancePropertiesAdjustmentDetailsItem" - } - } - } - } - } - } -}; - -export const ReservationSummary: msRest.CompositeMapper = { - serializedName: "ReservationSummary", - type: { - name: "Composite", - className: "ReservationSummary", - modelProperties: { - ...Resource.type.modelProperties, - reservationOrderId: { - readOnly: true, - serializedName: "properties.reservationOrderId", - type: { - name: "String" - } - }, - reservationId: { - readOnly: true, - serializedName: "properties.reservationId", - type: { - name: "String" - } - }, - skuName: { - readOnly: true, - serializedName: "properties.skuName", - type: { - name: "String" - } - }, - reservedHours: { - readOnly: true, - serializedName: "properties.reservedHours", - type: { - name: "Number" - } - }, - usageDate: { - readOnly: true, - serializedName: "properties.usageDate", - type: { - name: "DateTime" - } - }, - usedHours: { - readOnly: true, - serializedName: "properties.usedHours", - type: { - name: "Number" - } - }, - minUtilizationPercentage: { - readOnly: true, - serializedName: "properties.minUtilizationPercentage", - type: { - name: "Number" - } - }, - avgUtilizationPercentage: { - readOnly: true, - serializedName: "properties.avgUtilizationPercentage", - type: { - name: "Number" - } - }, - maxUtilizationPercentage: { - readOnly: true, - serializedName: "properties.maxUtilizationPercentage", - type: { - name: "Number" - } - } - } - } -}; - -export const ReservationDetail: msRest.CompositeMapper = { - serializedName: "ReservationDetail", - type: { - name: "Composite", - className: "ReservationDetail", - modelProperties: { - ...Resource.type.modelProperties, - reservationOrderId: { - readOnly: true, - serializedName: "properties.reservationOrderId", - type: { - name: "String" - } - }, - reservationId: { - readOnly: true, - serializedName: "properties.reservationId", - type: { - name: "String" - } - }, - skuName: { - readOnly: true, - serializedName: "properties.skuName", - type: { - name: "String" - } - }, - reservedHours: { - readOnly: true, - serializedName: "properties.reservedHours", - type: { - name: "Number" - } - }, - usageDate: { - readOnly: true, - serializedName: "properties.usageDate", - type: { - name: "DateTime" - } - }, - usedHours: { - readOnly: true, - serializedName: "properties.usedHours", - type: { - name: "Number" - } - }, - instanceId: { - readOnly: true, - serializedName: "properties.instanceId", - type: { - name: "String" - } - }, - totalReservedQuantity: { - readOnly: true, - serializedName: "properties.totalReservedQuantity", - type: { - name: "Number" - } - } - } - } -}; - -export const ReservationRecommendation: msRest.CompositeMapper = { - serializedName: "ReservationRecommendation", - type: { - name: "Composite", - className: "ReservationRecommendation", - modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - name: { - readOnly: true, - serializedName: "name", - type: { - name: "String" - } - }, - type: { - readOnly: true, - serializedName: "type", - type: { - name: "String" - } - }, - tags: { - readOnly: true, - serializedName: "tags", - type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } - } - }, - location: { - readOnly: true, - serializedName: "location", - type: { - name: "String" - } - }, - sku: { - readOnly: true, - serializedName: "sku", - type: { - name: "String" - } - }, - lookBackPeriod: { - readOnly: true, - serializedName: "properties.lookBackPeriod", - type: { - name: "String" - } - }, - meterId: { - readOnly: true, - serializedName: "properties.meterId", - type: { - name: "Uuid" - } - }, - term: { - readOnly: true, - serializedName: "properties.term", - type: { - name: "String" - } - }, - costWithNoReservedInstances: { - readOnly: true, - serializedName: "properties.costWithNoReservedInstances", - type: { - name: "Number" - } - }, - recommendedQuantity: { - readOnly: true, - serializedName: "properties.recommendedQuantity", - type: { - name: "Number" - } - }, - totalCostWithReservedInstances: { - readOnly: true, - serializedName: "properties.totalCostWithReservedInstances", - type: { - name: "Number" - } - }, - netSavings: { - readOnly: true, - serializedName: "properties.netSavings", - type: { - name: "Number" - } - }, - firstUsageDate: { - readOnly: true, - serializedName: "properties.firstUsageDate", - type: { - name: "DateTime" - } - }, - scope: { - readOnly: true, - serializedName: "properties.scope", - type: { - name: "String" - } - } - } - } -}; - -export const Tag: msRest.CompositeMapper = { - serializedName: "Tag", - type: { - name: "Composite", - className: "Tag", - modelProperties: { - key: { - serializedName: "key", - type: { - name: "String" - } - } - } - } -}; - -export const ProxyResource: msRest.CompositeMapper = { - serializedName: "ProxyResource", - type: { - name: "Composite", - className: "ProxyResource", - modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - name: { - readOnly: true, - serializedName: "name", - type: { - name: "String" - } - }, - type: { - readOnly: true, - serializedName: "type", - type: { - name: "String" - } - }, - eTag: { - serializedName: "eTag", - type: { - name: "String" - } - } - } - } -}; - -export const TagsResult: msRest.CompositeMapper = { - serializedName: "TagsResult", - type: { - name: "Composite", - className: "TagsResult", - modelProperties: { - ...ProxyResource.type.modelProperties, - tags: { - serializedName: "properties.tags", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Tag" - } - } - } - } - } - } -}; - -export const BudgetTimePeriod: msRest.CompositeMapper = { - serializedName: "BudgetTimePeriod", - type: { - name: "Composite", - className: "BudgetTimePeriod", - modelProperties: { - startDate: { - required: true, - serializedName: "startDate", - type: { - name: "DateTime" - } - }, - endDate: { - serializedName: "endDate", - type: { - name: "DateTime" - } - } - } - } -}; - -export const Filters: msRest.CompositeMapper = { - serializedName: "Filters", - type: { - name: "Composite", - className: "Filters", - modelProperties: { - resourceGroups: { - serializedName: "resourceGroups", - constraints: { - MaxItems: 10, - MinItems: 0 - }, - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - }, - resources: { - serializedName: "resources", - constraints: { - MaxItems: 10, - MinItems: 0 - }, - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - }, - meters: { - serializedName: "meters", - constraints: { - MaxItems: 10, - MinItems: 0 - }, - type: { - name: "Sequence", - element: { - type: { - name: "Uuid" - } - } - } - }, - tags: { - serializedName: "tags", - type: { - name: "Dictionary", - value: { - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - } + name: "Composite", + className: "Amount" } } } } }; -export const CurrentSpend: msRest.CompositeMapper = { - serializedName: "CurrentSpend", +export const CreditSummary: msRest.CompositeMapper = { + serializedName: "CreditSummary", type: { name: "Composite", - className: "CurrentSpend", + className: "CreditSummary", modelProperties: { - amount: { - readOnly: true, - serializedName: "amount", + ...Resource.type.modelProperties, + balanceSummary: { + serializedName: "properties.balanceSummary", type: { - name: "Number" + name: "Composite", + className: "CreditBalanceSummary" } }, - unit: { + pendingCreditAdjustments: { readOnly: true, - serializedName: "unit", - type: { - name: "String" - } - } - } - } -}; - -export const Notification: msRest.CompositeMapper = { - serializedName: "Notification", - type: { - name: "Composite", - className: "Notification", - modelProperties: { - enabled: { - required: true, - serializedName: "enabled", - type: { - name: "Boolean" - } - }, - operator: { - required: true, - serializedName: "operator", - type: { - name: "String" - } - }, - threshold: { - required: true, - serializedName: "threshold", - type: { - name: "Number" - } - }, - contactEmails: { - required: true, - serializedName: "contactEmails", - constraints: { - MaxItems: 50, - MinItems: 1 - }, - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - }, - contactRoles: { - serializedName: "contactRoles", - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - }, - contactGroups: { - serializedName: "contactGroups", - constraints: { - MaxItems: 50, - MinItems: 0 - }, - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - } - } - } -}; - -export const Budget: msRest.CompositeMapper = { - serializedName: "Budget", - type: { - name: "Composite", - className: "Budget", - modelProperties: { - ...ProxyResource.type.modelProperties, - category: { - required: true, - serializedName: "properties.category", - type: { - name: "String" - } - }, - amount: { - required: true, - serializedName: "properties.amount", - type: { - name: "Number" - } - }, - timeGrain: { - required: true, - serializedName: "properties.timeGrain", - type: { - name: "String" - } - }, - timePeriod: { - required: true, - serializedName: "properties.timePeriod", + serializedName: "properties.pendingCreditAdjustments", type: { name: "Composite", - className: "BudgetTimePeriod" + className: "Amount" } }, - filters: { - serializedName: "properties.filters", + expiredCredit: { + readOnly: true, + serializedName: "properties.expiredCredit", type: { name: "Composite", - className: "Filters" + className: "Amount" } }, - currentSpend: { + pendingEligibleCharges: { readOnly: true, - serializedName: "properties.currentSpend", + serializedName: "properties.pendingEligibleCharges", type: { name: "Composite", - className: "CurrentSpend" - } - }, - notifications: { - serializedName: "properties.notifications", - type: { - name: "Dictionary", - value: { - type: { - name: "Composite", - className: "Notification" - } - } + className: "Amount" } } } } }; -export const PriceSheetProperties: msRest.CompositeMapper = { - serializedName: "PriceSheetProperties", +export const EventSummary: msRest.CompositeMapper = { + serializedName: "EventSummary", type: { name: "Composite", - className: "PriceSheetProperties", + className: "EventSummary", modelProperties: { - billingPeriodId: { + ...Resource.type.modelProperties, + transactionDate: { readOnly: true, - serializedName: "billingPeriodId", + serializedName: "properties.transactionDate", type: { - name: "String" + name: "DateTime" } }, - meterId: { + description: { readOnly: true, - serializedName: "meterId", + serializedName: "properties.description", type: { - name: "Uuid" + name: "String" } }, - meterDetails: { + newCredit: { readOnly: true, - serializedName: "meterDetails", + serializedName: "properties.newCredit", type: { name: "Composite", - className: "MeterDetails" + className: "Amount" } }, - unitOfMeasure: { + adjustments: { readOnly: true, - serializedName: "unitOfMeasure", + serializedName: "properties.adjustments", type: { - name: "String" + name: "Composite", + className: "Amount" } }, - includedQuantity: { + creditExpired: { readOnly: true, - serializedName: "includedQuantity", + serializedName: "properties.creditExpired", type: { - name: "Number" + name: "Composite", + className: "Amount" } }, - partNumber: { + charges: { readOnly: true, - serializedName: "partNumber", + serializedName: "properties.charges", type: { - name: "String" + name: "Composite", + className: "Amount" } }, - unitPrice: { + closedBalance: { readOnly: true, - serializedName: "unitPrice", + serializedName: "properties.closedBalance", type: { - name: "Number" + name: "Composite", + className: "Amount" } }, - currencyCode: { - readOnly: true, - serializedName: "currencyCode", + eventType: { + serializedName: "properties.eventType", type: { name: "String" } }, - offerId: { + invoiceNumber: { readOnly: true, - serializedName: "offerId", + serializedName: "properties.invoiceNumber", type: { name: "String" } @@ -1361,116 +717,99 @@ export const PriceSheetProperties: msRest.CompositeMapper = { } }; -export const PriceSheetResult: msRest.CompositeMapper = { - serializedName: "PriceSheetResult", +export const Events: msRest.CompositeMapper = { + serializedName: "Events", type: { name: "Composite", - className: "PriceSheetResult", + className: "Events", modelProperties: { - ...Resource.type.modelProperties, - pricesheets: { + value: { readOnly: true, - serializedName: "properties.pricesheets", + serializedName: "value", type: { name: "Sequence", element: { type: { name: "Composite", - className: "PriceSheetProperties" + className: "EventSummary" } } } - }, - nextLink: { - readOnly: true, - serializedName: "properties.nextLink", - type: { - name: "String" - } } } } }; -export const ForecastPropertiesConfidenceLevelsItem: msRest.CompositeMapper = { - serializedName: "ForecastProperties_confidenceLevelsItem", +export const LotSummary: msRest.CompositeMapper = { + serializedName: "LotSummary", type: { name: "Composite", - className: "ForecastPropertiesConfidenceLevelsItem", + className: "LotSummary", modelProperties: { - percentage: { + ...Resource.type.modelProperties, + originalAmount: { readOnly: true, - serializedName: "percentage", - type: { - name: "Number" - } - }, - bound: { - serializedName: "bound", + serializedName: "properties.originalAmount", type: { - name: "String" + name: "Composite", + className: "Amount" } }, - value: { - readOnly: true, - serializedName: "value", - type: { - name: "Number" - } - } - } - } -}; - -export const Forecast: msRest.CompositeMapper = { - serializedName: "Forecast", - type: { - name: "Composite", - className: "Forecast", - modelProperties: { - ...Resource.type.modelProperties, - usageDate: { + closedBalance: { readOnly: true, - serializedName: "properties.usageDate", + serializedName: "properties.closedBalance", type: { - name: "String" + name: "Composite", + className: "Amount" } }, - grain: { - serializedName: "properties.grain", + source: { + readOnly: true, + serializedName: "properties.source", type: { name: "String" } }, - charge: { + startDate: { readOnly: true, - serializedName: "properties.charge", + serializedName: "properties.startDate", type: { - name: "Number" + name: "DateTime" } }, - currency: { + expirationDate: { readOnly: true, - serializedName: "properties.currency", + serializedName: "properties.expirationDate", type: { - name: "String" + name: "DateTime" } }, - chargeType: { - serializedName: "properties.chargeType", + poNumber: { + readOnly: true, + serializedName: "properties.poNumber", type: { name: "String" } - }, - confidenceLevels: { + } + } + } +}; + +export const Lots: msRest.CompositeMapper = { + serializedName: "Lots", + type: { + name: "Composite", + className: "Lots", + modelProperties: { + value: { readOnly: true, - serializedName: "properties.confidenceLevels", + serializedName: "value", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ForecastPropertiesConfidenceLevelsItem" + className: "LotSummary" } } } @@ -1479,11 +818,11 @@ export const Forecast: msRest.CompositeMapper = { } }; -export const ManagementGroupAggregatedCostResult: msRest.CompositeMapper = { - serializedName: "ManagementGroupAggregatedCostResult", +export const ChargeSummaryByBillingAccount: msRest.CompositeMapper = { + serializedName: "ChargeSummaryByBillingAccount", type: { name: "Composite", - className: "ManagementGroupAggregatedCostResult", + className: "ChargeSummaryByBillingAccount", modelProperties: { ...Resource.type.modelProperties, billingPeriodId: { @@ -1497,74 +836,80 @@ export const ManagementGroupAggregatedCostResult: msRest.CompositeMapper = { readOnly: true, serializedName: "properties.usageStart", type: { - name: "DateTime" + name: "String" } }, usageEnd: { readOnly: true, serializedName: "properties.usageEnd", type: { - name: "DateTime" + name: "String" } }, azureCharges: { readOnly: true, serializedName: "properties.azureCharges", type: { - name: "Number" + name: "Composite", + className: "Amount" } }, - marketplaceCharges: { + chargesBilledSeparately: { readOnly: true, - serializedName: "properties.marketplaceCharges", + serializedName: "properties.chargesBilledSeparately", type: { - name: "Number" + name: "Composite", + className: "Amount" } }, - chargesBilledSeparately: { + marketplaceCharges: { readOnly: true, - serializedName: "properties.chargesBilledSeparately", + serializedName: "properties.marketplaceCharges", type: { - name: "Number" + name: "Composite", + className: "Amount" } }, - currency: { + billingAccountId: { readOnly: true, - serializedName: "properties.currency", + serializedName: "properties.billingAccountId", type: { name: "String" } }, - children: { - serializedName: "properties.children", + billingProfileId: { + readOnly: true, + serializedName: "properties.billingProfileId", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ManagementGroupAggregatedCostResult" - } - } + name: "String" } }, - includedSubscriptions: { - serializedName: "properties.includedSubscriptions", + invoiceSectionId: { + readOnly: true, + serializedName: "properties.invoiceSectionId", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } - }, - excludedSubscriptions: { - serializedName: "properties.excludedSubscriptions", + } + } + } +}; + +export const ChargesListByBillingAccount: msRest.CompositeMapper = { + serializedName: "ChargesListByBillingAccount", + type: { + name: "Composite", + className: "ChargesListByBillingAccount", + modelProperties: { + value: { + readOnly: true, + serializedName: "value", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "ChargeSummaryByBillingAccount" } } } @@ -1573,11 +918,11 @@ export const ManagementGroupAggregatedCostResult: msRest.CompositeMapper = { } }; -export const ChargeSummary: msRest.CompositeMapper = { - serializedName: "ChargeSummary", +export const ChargeSummaryByBillingProfile: msRest.CompositeMapper = { + serializedName: "ChargeSummaryByBillingProfile", type: { name: "Composite", - className: "ChargeSummary", + className: "ChargeSummaryByBillingProfile", modelProperties: { ...Resource.type.modelProperties, billingPeriodId: { @@ -1605,26 +950,43 @@ export const ChargeSummary: msRest.CompositeMapper = { readOnly: true, serializedName: "properties.azureCharges", type: { - name: "Number" + name: "Composite", + className: "Amount" } }, chargesBilledSeparately: { readOnly: true, serializedName: "properties.chargesBilledSeparately", type: { - name: "Number" + name: "Composite", + className: "Amount" } }, marketplaceCharges: { readOnly: true, serializedName: "properties.marketplaceCharges", type: { - name: "Number" + name: "Composite", + className: "Amount" } }, - currency: { + billingAccountId: { readOnly: true, - serializedName: "properties.currency", + serializedName: "properties.billingAccountId", + type: { + name: "String" + } + }, + billingProfileId: { + readOnly: true, + serializedName: "properties.billingProfileId", + type: { + name: "String" + } + }, + invoiceSectionId: { + readOnly: true, + serializedName: "properties.invoiceSectionId", type: { name: "String" } @@ -1633,11 +995,11 @@ export const ChargeSummary: msRest.CompositeMapper = { } }; -export const ChargesListResult: msRest.CompositeMapper = { - serializedName: "ChargesListResult", +export const ChargesListByBillingProfile: msRest.CompositeMapper = { + serializedName: "ChargesListByBillingProfile", type: { name: "Composite", - className: "ChargesListResult", + className: "ChargesListByBillingProfile", modelProperties: { value: { readOnly: true, @@ -1647,7 +1009,7 @@ export const ChargesListResult: msRest.CompositeMapper = { element: { type: { name: "Composite", - className: "ChargeSummary" + className: "ChargeSummaryByBillingProfile" } } } @@ -1656,22 +1018,75 @@ export const ChargesListResult: msRest.CompositeMapper = { } }; -export const ErrorDetails: msRest.CompositeMapper = { - serializedName: "ErrorDetails", +export const ChargeSummaryByInvoiceSection: msRest.CompositeMapper = { + serializedName: "ChargeSummaryByInvoiceSection", type: { name: "Composite", - className: "ErrorDetails", + className: "ChargeSummaryByInvoiceSection", modelProperties: { - code: { + ...Resource.type.modelProperties, + billingPeriodId: { readOnly: true, - serializedName: "code", + serializedName: "properties.billingPeriodId", type: { name: "String" } }, - message: { + usageStart: { readOnly: true, - serializedName: "message", + serializedName: "properties.usageStart", + type: { + name: "String" + } + }, + usageEnd: { + readOnly: true, + serializedName: "properties.usageEnd", + type: { + name: "String" + } + }, + azureCharges: { + readOnly: true, + serializedName: "properties.azureCharges", + type: { + name: "Composite", + className: "Amount" + } + }, + chargesBilledSeparately: { + readOnly: true, + serializedName: "properties.chargesBilledSeparately", + type: { + name: "Composite", + className: "Amount" + } + }, + marketplaceCharges: { + readOnly: true, + serializedName: "properties.marketplaceCharges", + type: { + name: "Composite", + className: "Amount" + } + }, + billingAccountId: { + readOnly: true, + serializedName: "properties.billingAccountId", + type: { + name: "String" + } + }, + billingProfileId: { + readOnly: true, + serializedName: "properties.billingProfileId", + type: { + name: "String" + } + }, + invoiceSectionId: { + readOnly: true, + serializedName: "properties.invoiceSectionId", type: { name: "String" } @@ -1680,17 +1095,23 @@ export const ErrorDetails: msRest.CompositeMapper = { } }; -export const ErrorResponse: msRest.CompositeMapper = { - serializedName: "ErrorResponse", +export const ChargesListByInvoiceSection: msRest.CompositeMapper = { + serializedName: "ChargesListByInvoiceSection", type: { name: "Composite", - className: "ErrorResponse", + className: "ChargesListByInvoiceSection", modelProperties: { - error: { - serializedName: "error", + value: { + readOnly: true, + serializedName: "value", type: { - name: "Composite", - className: "ErrorDetails" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ChargeSummaryByInvoiceSection" + } + } } } } @@ -1752,22 +1173,22 @@ export const Operation: msRest.CompositeMapper = { } }; -export const ResourceAttributes: msRest.CompositeMapper = { - serializedName: "ResourceAttributes", +export const ErrorDetails: msRest.CompositeMapper = { + serializedName: "ErrorDetails", type: { name: "Composite", - className: "ResourceAttributes", + className: "ErrorDetails", modelProperties: { - location: { + code: { readOnly: true, - serializedName: "location", + serializedName: "code", type: { name: "String" } }, - sku: { + message: { readOnly: true, - serializedName: "sku", + serializedName: "message", type: { name: "String" } @@ -1776,72 +1197,52 @@ export const ResourceAttributes: msRest.CompositeMapper = { } }; -export const QueryOptions: msRest.CompositeMapper = { +export const ErrorResponse: msRest.CompositeMapper = { + serializedName: "ErrorResponse", type: { name: "Composite", - className: "QueryOptions", + className: "ErrorResponse", modelProperties: { - apply: { + error: { + serializedName: "error", type: { - name: "String" + name: "Composite", + className: "ErrorDetails" } } } } }; -export const UsageDetailsListResult: msRest.CompositeMapper = { - serializedName: "UsageDetailsListResult", +export const ProxyResource: msRest.CompositeMapper = { + serializedName: "ProxyResource", type: { name: "Composite", - className: "UsageDetailsListResult", + className: "ProxyResource", modelProperties: { - value: { + id: { readOnly: true, - serializedName: "", + serializedName: "id", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "UsageDetail" - } - } + name: "String" } }, - nextLink: { + name: { readOnly: true, - serializedName: "nextLink", + serializedName: "name", type: { name: "String" } - } - } - } -}; - -export const MarketplacesListResult: msRest.CompositeMapper = { - serializedName: "MarketplacesListResult", - type: { - name: "Composite", - className: "MarketplacesListResult", - modelProperties: { - value: { + }, + type: { readOnly: true, - serializedName: "", + serializedName: "type", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Marketplace" - } - } + name: "String" } }, - nextLink: { - readOnly: true, - serializedName: "nextLink", + eTag: { + serializedName: "eTag", type: { name: "String" } @@ -1850,58 +1251,32 @@ export const MarketplacesListResult: msRest.CompositeMapper = { } }; -export const ReservationSummariesListResult: msRest.CompositeMapper = { - serializedName: "ReservationSummariesListResult", +export const InvoicePricesheetDownloadHeaders: msRest.CompositeMapper = { + serializedName: "invoicepricesheet-download-headers", type: { name: "Composite", - className: "ReservationSummariesListResult", + className: "InvoicePricesheetDownloadHeaders", modelProperties: { - value: { - readOnly: true, - serializedName: "", + location: { + serializedName: "location", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReservationSummary" - } - } + name: "String" } }, - nextLink: { - readOnly: true, - serializedName: "nextLink", + retryAfter: { + serializedName: "retry-after", type: { name: "String" } - } - } - } -}; - -export const ReservationDetailsListResult: msRest.CompositeMapper = { - serializedName: "ReservationDetailsListResult", - type: { - name: "Composite", - className: "ReservationDetailsListResult", - modelProperties: { - value: { - readOnly: true, - serializedName: "", + }, + azureAsyncOperation: { + serializedName: "azure-asyncoperation", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReservationDetail" - } - } + name: "String" } }, - nextLink: { - readOnly: true, - serializedName: "nextLink", + oDataEntityId: { + serializedName: "odata-entityid", type: { name: "String" } @@ -1910,83 +1285,34 @@ export const ReservationDetailsListResult: msRest.CompositeMapper = { } }; -export const ReservationRecommendationsListResult: msRest.CompositeMapper = { - serializedName: "ReservationRecommendationsListResult", +export const BillingProfilePricesheetDownloadHeaders: msRest.CompositeMapper = { + serializedName: "billingprofilepricesheet-download-headers", type: { name: "Composite", - className: "ReservationRecommendationsListResult", + className: "BillingProfilePricesheetDownloadHeaders", modelProperties: { - value: { - readOnly: true, - serializedName: "", + location: { + serializedName: "location", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReservationRecommendation" - } - } + name: "String" } }, - nextLink: { - readOnly: true, - serializedName: "nextLink", + retryAfter: { + serializedName: "retry-after", type: { name: "String" } - } - } - } -}; - -export const BudgetsListResult: msRest.CompositeMapper = { - serializedName: "BudgetsListResult", - type: { - name: "Composite", - className: "BudgetsListResult", - modelProperties: { - value: { - readOnly: true, - serializedName: "", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Budget" - } - } - } }, - nextLink: { - readOnly: true, - serializedName: "nextLink", + azureAsyncOperation: { + serializedName: "azure-asyncoperation", type: { name: "String" } - } - } - } -}; - -export const ForecastsListResult: msRest.CompositeMapper = { - serializedName: "ForecastsListResult", - type: { - name: "Composite", - className: "ForecastsListResult", - modelProperties: { - value: { - readOnly: true, - serializedName: "", + }, + oDataEntityId: { + serializedName: "odata-entityid", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Forecast" - } - } + name: "String" } } } diff --git a/packages/@azure/arm-consumption/lib/models/parameters.ts b/packages/@azure/arm-consumption/lib/models/parameters.ts index 307ad6cae657..b88f1ea07b90 100644 --- a/packages/@azure/arm-consumption/lib/models/parameters.ts +++ b/packages/@azure/arm-consumption/lib/models/parameters.ts @@ -33,7 +33,6 @@ export const apiVersion: msRest.OperationQueryParameter = { export const apply: msRest.OperationQueryParameter = { parameterPath: [ "options", - "queryOptions", "apply" ], mapper: { @@ -53,95 +52,41 @@ export const billingAccountId: msRest.OperationURLParameter = { } } }; -export const billingPeriodName: msRest.OperationURLParameter = { - parameterPath: "billingPeriodName", +export const billingProfileId: msRest.OperationURLParameter = { + parameterPath: "billingProfileId", mapper: { required: true, - serializedName: "billingPeriodName", + serializedName: "billingProfileId", type: { name: "String" } } }; -export const budgetName: msRest.OperationURLParameter = { - parameterPath: "budgetName", +export const endDate: msRest.OperationQueryParameter = { + parameterPath: "endDate", mapper: { required: true, - serializedName: "budgetName", + serializedName: "endDate", type: { name: "String" } } }; -export const departmentId: msRest.OperationURLParameter = { - parameterPath: "departmentId", +export const invoiceName: msRest.OperationURLParameter = { + parameterPath: "invoiceName", mapper: { required: true, - serializedName: "departmentId", + serializedName: "invoiceName", type: { name: "String" } } }; -export const enrollmentAccountId: msRest.OperationURLParameter = { - parameterPath: "enrollmentAccountId", +export const invoiceSectionId: msRest.OperationURLParameter = { + parameterPath: "invoiceSectionId", mapper: { required: true, - serializedName: "enrollmentAccountId", - type: { - name: "String" - } - } -}; -export const expand: msRest.OperationQueryParameter = { - parameterPath: [ - "options", - "expand" - ], - mapper: { - serializedName: "$expand", - type: { - name: "String" - } - } -}; -export const filter0: msRest.OperationQueryParameter = { - parameterPath: [ - "options", - "filter" - ], - mapper: { - serializedName: "$filter", - type: { - name: "String" - } - } -}; -export const filter1: msRest.OperationQueryParameter = { - parameterPath: "filter", - mapper: { - required: true, - serializedName: "$filter", - type: { - name: "String" - } - } -}; -export const grain: msRest.OperationQueryParameter = { - parameterPath: "grain", - mapper: { - required: true, - serializedName: "grain", - type: { - name: "String" - } - } -}; -export const managementGroupId: msRest.OperationURLParameter = { - parameterPath: "managementGroupId", - mapper: { - required: true, - serializedName: "managementGroupId", + serializedName: "invoiceSectionId", type: { name: "String" } @@ -158,71 +103,13 @@ export const nextPageLink: msRest.OperationURLParameter = { }, skipEncoding: true }; -export const reservationId: msRest.OperationURLParameter = { - parameterPath: "reservationId", +export const startDate: msRest.OperationQueryParameter = { + parameterPath: "startDate", mapper: { required: true, - serializedName: "reservationId", + serializedName: "startDate", type: { name: "String" } } }; -export const reservationOrderId: msRest.OperationURLParameter = { - parameterPath: "reservationOrderId", - mapper: { - required: true, - serializedName: "reservationOrderId", - type: { - name: "String" - } - } -}; -export const resourceGroupName: msRest.OperationURLParameter = { - parameterPath: "resourceGroupName", - mapper: { - required: true, - serializedName: "resourceGroupName", - type: { - name: "String" - } - } -}; -export const skiptoken: msRest.OperationQueryParameter = { - parameterPath: [ - "options", - "skiptoken" - ], - mapper: { - serializedName: "$skiptoken", - type: { - name: "String" - } - } -}; -export const subscriptionId: msRest.OperationURLParameter = { - parameterPath: "subscriptionId", - mapper: { - required: true, - serializedName: "subscriptionId", - type: { - name: "String" - } - } -}; -export const top: msRest.OperationQueryParameter = { - parameterPath: [ - "options", - "top" - ], - mapper: { - serializedName: "$top", - constraints: { - InclusiveMaximum: 1000, - InclusiveMinimum: 1 - }, - type: { - name: "Number" - } - } -}; diff --git a/packages/@azure/arm-consumption/lib/operations/billingProfilePricesheet.ts b/packages/@azure/arm-consumption/lib/operations/billingProfilePricesheet.ts new file mode 100644 index 000000000000..401d3d44e187 --- /dev/null +++ b/packages/@azure/arm-consumption/lib/operations/billingProfilePricesheet.ts @@ -0,0 +1,89 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as msRestAzure from "@azure/ms-rest-azure-js"; +import * as Models from "../models"; +import * as Mappers from "../models/billingProfilePricesheetMappers"; +import * as Parameters from "../models/parameters"; +import { ConsumptionManagementClientContext } from "../consumptionManagementClientContext"; + +/** Class representing a BillingProfilePricesheet. */ +export class BillingProfilePricesheet { + private readonly client: ConsumptionManagementClientContext; + + /** + * Create a BillingProfilePricesheet. + * @param {ConsumptionManagementClientContext} client Reference to the service client. + */ + constructor(client: ConsumptionManagementClientContext) { + this.client = client; + } + + /** + * Get pricesheet data for invoice id (invoiceName). + * @param billingAccountId Azure Billing Account Id. + * @param billingProfileId Azure Billing Profile Id. + * @param [options] The optional parameters + * @returns Promise + */ + download(billingAccountId: string, billingProfileId: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginDownload(billingAccountId,billingProfileId,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Get pricesheet data for invoice id (invoiceName). + * @param billingAccountId Azure Billing Account Id. + * @param billingProfileId Azure Billing Profile Id. + * @param [options] The optional parameters + * @returns Promise + */ + beginDownload(billingAccountId: string, billingProfileId: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + billingAccountId, + billingProfileId, + options + }, + beginDownloadOperationSpec, + options); + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const beginDownloadOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "providers/Microsoft.Consumption/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/pricesheet/default/download", + urlParameters: [ + Parameters.billingAccountId, + Parameters.billingProfileId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PricesheetDownloadResponse, + headersMapper: Mappers.BillingProfilePricesheetDownloadHeaders + }, + 202: { + headersMapper: Mappers.BillingProfilePricesheetDownloadHeaders + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; diff --git a/packages/@azure/arm-consumption/lib/operations/chargesByBillingAccount.ts b/packages/@azure/arm-consumption/lib/operations/chargesByBillingAccount.ts new file mode 100644 index 000000000000..60739f8669b0 --- /dev/null +++ b/packages/@azure/arm-consumption/lib/operations/chargesByBillingAccount.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/chargesByBillingAccountMappers"; +import * as Parameters from "../models/parameters"; +import { ConsumptionManagementClientContext } from "../consumptionManagementClientContext"; + +/** Class representing a ChargesByBillingAccount. */ +export class ChargesByBillingAccount { + private readonly client: ConsumptionManagementClientContext; + + /** + * Create a ChargesByBillingAccount. + * @param {ConsumptionManagementClientContext} client Reference to the service client. + */ + constructor(client: ConsumptionManagementClientContext) { + this.client = client; + } + + /** + * Lists the charges by billingAccountId for given start and end date. Start and end date are used + * to determine the billing period. For current month, the data will be provided from month to + * date. If there are no charges for a month then that month will show all zeroes. + * @param billingAccountId BillingAccount ID + * @param startDate Start date + * @param endDate End date + * @param [options] The optional parameters + * @returns Promise + */ + list(billingAccountId: string, startDate: string, endDate: string, options?: Models.ChargesByBillingAccountListOptionalParams): Promise; + /** + * @param billingAccountId BillingAccount ID + * @param startDate Start date + * @param endDate End date + * @param callback The callback + */ + list(billingAccountId: string, startDate: string, endDate: string, callback: msRest.ServiceCallback): void; + /** + * @param billingAccountId BillingAccount ID + * @param startDate Start date + * @param endDate End date + * @param options The optional parameters + * @param callback The callback + */ + list(billingAccountId: string, startDate: string, endDate: string, options: Models.ChargesByBillingAccountListOptionalParams, callback: msRest.ServiceCallback): void; + list(billingAccountId: string, startDate: string, endDate: string, options?: Models.ChargesByBillingAccountListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + billingAccountId, + startDate, + endDate, + options + }, + listOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/charges", + urlParameters: [ + Parameters.billingAccountId + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.startDate, + Parameters.endDate, + Parameters.apply + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ChargesListByBillingAccount + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; diff --git a/packages/@azure/arm-consumption/lib/operations/chargesByBillingProfile.ts b/packages/@azure/arm-consumption/lib/operations/chargesByBillingProfile.ts new file mode 100644 index 000000000000..a5dad76fe99d --- /dev/null +++ b/packages/@azure/arm-consumption/lib/operations/chargesByBillingProfile.ts @@ -0,0 +1,98 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/chargesByBillingProfileMappers"; +import * as Parameters from "../models/parameters"; +import { ConsumptionManagementClientContext } from "../consumptionManagementClientContext"; + +/** Class representing a ChargesByBillingProfile. */ +export class ChargesByBillingProfile { + private readonly client: ConsumptionManagementClientContext; + + /** + * Create a ChargesByBillingProfile. + * @param {ConsumptionManagementClientContext} client Reference to the service client. + */ + constructor(client: ConsumptionManagementClientContext) { + this.client = client; + } + + /** + * Lists the charges by billing profile id for given start and end date. Start and end date are + * used to determine the billing period. For current month, the data will be provided from month to + * date. If there are no charges for a month then that month will show all zeroes. + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param startDate Start date + * @param endDate End date + * @param [options] The optional parameters + * @returns Promise + */ + list(billingAccountId: string, billingProfileId: string, startDate: string, endDate: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param startDate Start date + * @param endDate End date + * @param callback The callback + */ + list(billingAccountId: string, billingProfileId: string, startDate: string, endDate: string, callback: msRest.ServiceCallback): void; + /** + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param startDate Start date + * @param endDate End date + * @param options The optional parameters + * @param callback The callback + */ + list(billingAccountId: string, billingProfileId: string, startDate: string, endDate: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(billingAccountId: string, billingProfileId: string, startDate: string, endDate: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + billingAccountId, + billingProfileId, + startDate, + endDate, + options + }, + listOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/charges", + urlParameters: [ + Parameters.billingAccountId, + Parameters.billingProfileId + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.startDate, + Parameters.endDate + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ChargesListByBillingProfile + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; diff --git a/packages/@azure/arm-consumption/lib/operations/chargesByInvoiceSection.ts b/packages/@azure/arm-consumption/lib/operations/chargesByInvoiceSection.ts new file mode 100644 index 000000000000..cf66d008941e --- /dev/null +++ b/packages/@azure/arm-consumption/lib/operations/chargesByInvoiceSection.ts @@ -0,0 +1,99 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/chargesByInvoiceSectionMappers"; +import * as Parameters from "../models/parameters"; +import { ConsumptionManagementClientContext } from "../consumptionManagementClientContext"; + +/** Class representing a ChargesByInvoiceSection. */ +export class ChargesByInvoiceSection { + private readonly client: ConsumptionManagementClientContext; + + /** + * Create a ChargesByInvoiceSection. + * @param {ConsumptionManagementClientContext} client Reference to the service client. + */ + constructor(client: ConsumptionManagementClientContext) { + this.client = client; + } + + /** + * Lists the charges by invoice section id for given start and end date. Start and end date are + * used to determine the billing period. For current month, the data will be provided from month to + * date. If there are no charges for a month then that month will show all zeroes. + * @param billingAccountId BillingAccount ID + * @param invoiceSectionId Invoice Section Id. + * @param startDate Start date + * @param endDate End date + * @param [options] The optional parameters + * @returns Promise + */ + list(billingAccountId: string, invoiceSectionId: string, startDate: string, endDate: string, options?: Models.ChargesByInvoiceSectionListOptionalParams): Promise; + /** + * @param billingAccountId BillingAccount ID + * @param invoiceSectionId Invoice Section Id. + * @param startDate Start date + * @param endDate End date + * @param callback The callback + */ + list(billingAccountId: string, invoiceSectionId: string, startDate: string, endDate: string, callback: msRest.ServiceCallback): void; + /** + * @param billingAccountId BillingAccount ID + * @param invoiceSectionId Invoice Section Id. + * @param startDate Start date + * @param endDate End date + * @param options The optional parameters + * @param callback The callback + */ + list(billingAccountId: string, invoiceSectionId: string, startDate: string, endDate: string, options: Models.ChargesByInvoiceSectionListOptionalParams, callback: msRest.ServiceCallback): void; + list(billingAccountId: string, invoiceSectionId: string, startDate: string, endDate: string, options?: Models.ChargesByInvoiceSectionListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + billingAccountId, + invoiceSectionId, + startDate, + endDate, + options + }, + listOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}/providers/Microsoft.Consumption/charges", + urlParameters: [ + Parameters.billingAccountId, + Parameters.invoiceSectionId + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.startDate, + Parameters.endDate, + Parameters.apply + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ChargesListByInvoiceSection + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; diff --git a/packages/@azure/arm-consumption/lib/operations/creditSummaryByBillingProfile.ts b/packages/@azure/arm-consumption/lib/operations/creditSummaryByBillingProfile.ts new file mode 100644 index 000000000000..d3c4e86124b2 --- /dev/null +++ b/packages/@azure/arm-consumption/lib/operations/creditSummaryByBillingProfile.ts @@ -0,0 +1,86 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/creditSummaryByBillingProfileMappers"; +import * as Parameters from "../models/parameters"; +import { ConsumptionManagementClientContext } from "../consumptionManagementClientContext"; + +/** Class representing a CreditSummaryByBillingProfile. */ +export class CreditSummaryByBillingProfile { + private readonly client: ConsumptionManagementClientContext; + + /** + * Create a CreditSummaryByBillingProfile. + * @param {ConsumptionManagementClientContext} client Reference to the service client. + */ + constructor(client: ConsumptionManagementClientContext) { + this.client = client; + } + + /** + * The credit summary by billingAccountId and billingProfileId for given start and end date. + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param [options] The optional parameters + * @returns Promise + */ + get(billingAccountId: string, billingProfileId: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param callback The callback + */ + get(billingAccountId: string, billingProfileId: string, callback: msRest.ServiceCallback): void; + /** + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param options The optional parameters + * @param callback The callback + */ + get(billingAccountId: string, billingProfileId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(billingAccountId: string, billingProfileId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + billingAccountId, + billingProfileId, + options + }, + getOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/credits/balanceSummary", + urlParameters: [ + Parameters.billingAccountId, + Parameters.billingProfileId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.CreditSummary + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; diff --git a/packages/@azure/arm-consumption/lib/operations/eventsByBillingProfile.ts b/packages/@azure/arm-consumption/lib/operations/eventsByBillingProfile.ts new file mode 100644 index 000000000000..015995c7d488 --- /dev/null +++ b/packages/@azure/arm-consumption/lib/operations/eventsByBillingProfile.ts @@ -0,0 +1,96 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/eventsByBillingProfileMappers"; +import * as Parameters from "../models/parameters"; +import { ConsumptionManagementClientContext } from "../consumptionManagementClientContext"; + +/** Class representing a EventsByBillingProfile. */ +export class EventsByBillingProfile { + private readonly client: ConsumptionManagementClientContext; + + /** + * Create a EventsByBillingProfile. + * @param {ConsumptionManagementClientContext} client Reference to the service client. + */ + constructor(client: ConsumptionManagementClientContext) { + this.client = client; + } + + /** + * Lists the events by billingAccountId and billingProfileId for given start and end date. + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param startDate Start date + * @param endDate End date + * @param [options] The optional parameters + * @returns Promise + */ + list(billingAccountId: string, billingProfileId: string, startDate: string, endDate: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param startDate Start date + * @param endDate End date + * @param callback The callback + */ + list(billingAccountId: string, billingProfileId: string, startDate: string, endDate: string, callback: msRest.ServiceCallback): void; + /** + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param startDate Start date + * @param endDate End date + * @param options The optional parameters + * @param callback The callback + */ + list(billingAccountId: string, billingProfileId: string, startDate: string, endDate: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(billingAccountId: string, billingProfileId: string, startDate: string, endDate: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + billingAccountId, + billingProfileId, + startDate, + endDate, + options + }, + listOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/events", + urlParameters: [ + Parameters.billingAccountId, + Parameters.billingProfileId + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.startDate, + Parameters.endDate + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.Events + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; diff --git a/packages/@azure/arm-consumption/lib/operations/index.ts b/packages/@azure/arm-consumption/lib/operations/index.ts index 77ea57064d73..e65c1ca031d8 100644 --- a/packages/@azure/arm-consumption/lib/operations/index.ts +++ b/packages/@azure/arm-consumption/lib/operations/index.ts @@ -8,16 +8,12 @@ * regenerated. */ -export * from "./usageDetails"; -export * from "./marketplaces"; -export * from "./balances"; -export * from "./reservationsSummaries"; -export * from "./reservationsDetails"; -export * from "./reservationRecommendations"; -export * from "./budgets"; -export * from "./priceSheet"; -export * from "./tags"; -export * from "./forecasts"; export * from "./operations"; -export * from "./aggregatedCost"; -export * from "./charges"; +export * from "./creditSummaryByBillingProfile"; +export * from "./eventsByBillingProfile"; +export * from "./lotsByBillingProfile"; +export * from "./invoicePricesheet"; +export * from "./billingProfilePricesheet"; +export * from "./chargesByBillingAccount"; +export * from "./chargesByBillingProfile"; +export * from "./chargesByInvoiceSection"; diff --git a/packages/@azure/arm-consumption/lib/operations/invoicePricesheet.ts b/packages/@azure/arm-consumption/lib/operations/invoicePricesheet.ts new file mode 100644 index 000000000000..c9c64a99f518 --- /dev/null +++ b/packages/@azure/arm-consumption/lib/operations/invoicePricesheet.ts @@ -0,0 +1,89 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as msRestAzure from "@azure/ms-rest-azure-js"; +import * as Models from "../models"; +import * as Mappers from "../models/invoicePricesheetMappers"; +import * as Parameters from "../models/parameters"; +import { ConsumptionManagementClientContext } from "../consumptionManagementClientContext"; + +/** Class representing a InvoicePricesheet. */ +export class InvoicePricesheet { + private readonly client: ConsumptionManagementClientContext; + + /** + * Create a InvoicePricesheet. + * @param {ConsumptionManagementClientContext} client Reference to the service client. + */ + constructor(client: ConsumptionManagementClientContext) { + this.client = client; + } + + /** + * Get pricesheet data for invoice id (invoiceName). + * @param billingAccountId Azure Billing Account Id. + * @param invoiceName The name of an invoice resource. + * @param [options] The optional parameters + * @returns Promise + */ + download(billingAccountId: string, invoiceName: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginDownload(billingAccountId,invoiceName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Get pricesheet data for invoice id (invoiceName). + * @param billingAccountId Azure Billing Account Id. + * @param invoiceName The name of an invoice resource. + * @param [options] The optional parameters + * @returns Promise + */ + beginDownload(billingAccountId: string, invoiceName: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + billingAccountId, + invoiceName, + options + }, + beginDownloadOperationSpec, + options); + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const beginDownloadOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "providers/Microsoft.Consumption/billingAccounts/{billingAccountId}/invoices/{invoiceName}/pricesheet/default/download", + urlParameters: [ + Parameters.billingAccountId, + Parameters.invoiceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PricesheetDownloadResponse, + headersMapper: Mappers.InvoicePricesheetDownloadHeaders + }, + 202: { + headersMapper: Mappers.InvoicePricesheetDownloadHeaders + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; diff --git a/packages/@azure/arm-consumption/lib/operations/lotsByBillingProfile.ts b/packages/@azure/arm-consumption/lib/operations/lotsByBillingProfile.ts new file mode 100644 index 000000000000..670f733ad991 --- /dev/null +++ b/packages/@azure/arm-consumption/lib/operations/lotsByBillingProfile.ts @@ -0,0 +1,86 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/lotsByBillingProfileMappers"; +import * as Parameters from "../models/parameters"; +import { ConsumptionManagementClientContext } from "../consumptionManagementClientContext"; + +/** Class representing a LotsByBillingProfile. */ +export class LotsByBillingProfile { + private readonly client: ConsumptionManagementClientContext; + + /** + * Create a LotsByBillingProfile. + * @param {ConsumptionManagementClientContext} client Reference to the service client. + */ + constructor(client: ConsumptionManagementClientContext) { + this.client = client; + } + + /** + * Lists the lots by billingAccountId and billingProfileId for given start and end date. + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param [options] The optional parameters + * @returns Promise + */ + list(billingAccountId: string, billingProfileId: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param callback The callback + */ + list(billingAccountId: string, billingProfileId: string, callback: msRest.ServiceCallback): void; + /** + * @param billingAccountId BillingAccount ID + * @param billingProfileId Billing Profile Id. + * @param options The optional parameters + * @param callback The callback + */ + list(billingAccountId: string, billingProfileId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(billingAccountId: string, billingProfileId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + billingAccountId, + billingProfileId, + options + }, + listOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/providers/Microsoft.Consumption/lots", + urlParameters: [ + Parameters.billingAccountId, + Parameters.billingProfileId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.Lots + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; diff --git a/packages/@azure/arm-consumption/package.json b/packages/@azure/arm-consumption/package.json index 68a1069939c3..86fc92a4325e 100644 --- a/packages/@azure/arm-consumption/package.json +++ b/packages/@azure/arm-consumption/package.json @@ -4,8 +4,8 @@ "description": "ConsumptionManagementClient Library with typescript type definitions for node.js and browser.", "version": "6.3.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.1.0", - "@azure/ms-rest-js": "^1.1.0", + "@azure/ms-rest-azure-js": "^1.2.0", + "@azure/ms-rest-js": "^1.2.0", "tslib": "^1.9.3" }, "keywords": [ @@ -23,6 +23,7 @@ "typescript": "^3.1.1", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", + "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/packages/@azure/arm-consumption", @@ -51,6 +52,5 @@ "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/arm-consumption.js.map'\" -o ./dist/arm-consumption.min.js ./dist/arm-consumption.js", "prepack": "npm install && npm run build" }, - "sideEffects": false, - "authPublish": true + "sideEffects": false } diff --git a/packages/@azure/arm-consumption/rollup.config.js b/packages/@azure/arm-consumption/rollup.config.js index e434910415dd..c28e7f73316a 100644 --- a/packages/@azure/arm-consumption/rollup.config.js +++ b/packages/@azure/arm-consumption/rollup.config.js @@ -1,10 +1,16 @@ +import rollup from "rollup"; import nodeResolve from "rollup-plugin-node-resolve"; +import sourcemaps from "rollup-plugin-sourcemaps"; + /** - * @type {import('rollup').RollupFileOptions} + * @type {rollup.RollupFileOptions} */ const config = { - input: './esm/consumptionManagementClient.js', - external: ["@azure/ms-rest-js", "@azure/ms-rest-azure-js"], + input: "./esm/consumptionManagementClient.js", + external: [ + "@azure/ms-rest-js", + "@azure/ms-rest-azure-js" + ], output: { file: "./dist/arm-consumption.js", format: "umd", @@ -16,16 +22,16 @@ const config = { }, banner: `/* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */` }, plugins: [ - nodeResolve({ module: true }) + nodeResolve({ module: true }), + sourcemaps() ] }; + export default config;