/// <summary>
 /// 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 chages for a
 /// month then that month will show all zeroes.
 /// <see href="https://docs.microsoft.com/en-us/rest/api/consumption/" />
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='billingAccountId'>
 /// BillingAccount ID
 /// </param>
 /// <param name='startDate'>
 /// Start date
 /// </param>
 /// <param name='endDate'>
 /// End date
 /// </param>
 /// <param name='apply'>
 /// May be used to group charges by properties/billingProfileId, or
 /// properties/invoiceSectionId.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <ChargesListByBillingAccount> ListAsync(this IChargesByBillingAccountOperations operations, string billingAccountId, string startDate, string endDate, string apply = default(string), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ListWithHttpMessagesAsync(billingAccountId, startDate, endDate, apply, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// 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 chages for a
 /// month then that month will show all zeroes.
 /// <see href="https://docs.microsoft.com/en-us/rest/api/consumption/" />
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='billingAccountId'>
 /// BillingAccount ID
 /// </param>
 /// <param name='startDate'>
 /// Start date
 /// </param>
 /// <param name='endDate'>
 /// End date
 /// </param>
 /// <param name='apply'>
 /// May be used to group charges by properties/billingProfileId, or
 /// properties/invoiceSectionId.
 /// </param>
 public static ChargesListByBillingAccount List(this IChargesByBillingAccountOperations operations, string billingAccountId, string startDate, string endDate, string apply = default(string))
 {
     return(operations.ListAsync(billingAccountId, startDate, endDate, apply).GetAwaiter().GetResult());
 }