/// <summary>
 /// The operation to create a new CSP subscription.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='billingAccountName'>
 /// The name of the Microsoft Customer Agreement billing account for which you
 /// want to create the subscription.
 /// </param>
 /// <param name='customerName'>
 /// The name of the customer.
 /// </param>
 /// <param name='body'>
 /// The subscription creation parameters.
 /// </param>
 public static SubscriptionCreationResult CreateCspSubscription(this ISubscriptionFactoryOperations operations, string billingAccountName, string customerName, ModernCspSubscriptionCreationParameters body)
 {
     return(operations.CreateCspSubscriptionAsync(billingAccountName, customerName, body).GetAwaiter().GetResult());
 }
 /// <summary>
 /// The operation to create a new WebDirect or EA Azure subscription.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='billingAccountName'>
 /// The name of the Microsoft Customer Agreement billing account for which you
 /// want to create the subscription.
 /// </param>
 /// <param name='billingProfileName'>
 /// The name of the billing profile in the billing account for which you want
 /// to create the subscription.
 /// </param>
 /// <param name='invoiceSectionName'>
 /// The name of the invoice section in the billing account for which you want
 /// to create the subscription.
 /// </param>
 /// <param name='body'>
 /// The subscription creation parameters.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <SubscriptionCreationResult> CreateSubscriptionAsync(this ISubscriptionFactoryOperations operations, string billingAccountName, string billingProfileName, string invoiceSectionName, ModernSubscriptionCreationParameters body, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.CreateSubscriptionWithHttpMessagesAsync(billingAccountName, billingProfileName, invoiceSectionName, body, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Creates an Azure subscription
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='enrollmentAccountName'>
 /// The name of the enrollment account to which the subscription will be
 /// billed.
 /// </param>
 /// <param name='body'>
 /// The subscription creation parameters.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <SubscriptionCreationResult> BeginCreateSubscriptionInEnrollmentAccountAsync(this ISubscriptionFactoryOperations operations, string enrollmentAccountName, SubscriptionCreationParameters body, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.BeginCreateSubscriptionInEnrollmentAccountWithHttpMessagesAsync(enrollmentAccountName, body, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// The operation to create a new WebDirect or EA Azure subscription.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='billingAccountName'>
 /// The name of the Microsoft Customer Agreement billing account for which you
 /// want to create the subscription.
 /// </param>
 /// <param name='billingProfileName'>
 /// The name of the billing profile in the billing account for which you want
 /// to create the subscription.
 /// </param>
 /// <param name='invoiceSectionName'>
 /// The name of the invoice section in the billing account for which you want
 /// to create the subscription.
 /// </param>
 /// <param name='body'>
 /// The subscription creation parameters.
 /// </param>
 public static SubscriptionCreationResult CreateSubscription(this ISubscriptionFactoryOperations operations, string billingAccountName, string billingProfileName, string invoiceSectionName, ModernSubscriptionCreationParameters body)
 {
     return(operations.CreateSubscriptionAsync(billingAccountName, billingProfileName, invoiceSectionName, body).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Creates an Azure subscription
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='enrollmentAccountName'>
 /// The name of the enrollment account to which the subscription will be
 /// billed.
 /// </param>
 /// <param name='body'>
 /// The subscription creation parameters.
 /// </param>
 public static SubscriptionCreationResult BeginCreateSubscriptionInEnrollmentAccount(this ISubscriptionFactoryOperations operations, string enrollmentAccountName, SubscriptionCreationParameters body)
 {
     return(operations.BeginCreateSubscriptionInEnrollmentAccountAsync(enrollmentAccountName, body).GetAwaiter().GetResult());
 }