/// <summary>
 /// Gets the pending invitations for the app
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='ownerName'>
 /// The name of the owner
 /// </param>
 /// <param name='appName'>
 /// The name of the application
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <AppInvitationDetailResponse> ListAsync(this IAppInvitations operations, string ownerName, string appName, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ListWithHttpMessagesAsync(ownerName, appName, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 public static void CreateByEmail(this IAppInvitations operations, string ownerName, string appName, string userEmail)
 {
     operations.CreateByEmailAsync(ownerName, appName, userEmail).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Accepts a pending invitation for the specified user
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='invitationToken'>
 /// The app invitation token that was sent to the user
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task AcceptAsync(this IAppInvitations operations, string invitationToken, CancellationToken cancellationToken = default(CancellationToken))
 {
     (await operations.AcceptWithHttpMessagesAsync(invitationToken, null, cancellationToken).ConfigureAwait(false)).Dispose();
 }
 /// <summary>
 /// Accepts a pending invitation for the specified user
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='invitationToken'>
 /// The app invitation token that was sent to the user
 /// </param>
 public static void Accept(this IAppInvitations operations, string invitationToken)
 {
     operations.AcceptAsync(invitationToken).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Gets the pending invitations for the app
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='ownerName'>
 /// The name of the owner
 /// </param>
 /// <param name='appName'>
 /// The name of the application
 /// </param>
 public static AppInvitationDetailResponse List(this IAppInvitations operations, string ownerName, string appName)
 {
     return(operations.ListAsync(ownerName, appName).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Invites a new or existing user to an app
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='ownerName'>
 /// The name of the owner
 /// </param>
 /// <param name='appName'>
 /// The name of the application
 /// </param>
 /// <param name='userEmail'>
 /// The email of the user to invite
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task CreateAsync(this IAppInvitations operations, string ownerName, string appName, UserEmailRequest userEmail = default(UserEmailRequest), CancellationToken cancellationToken = default(CancellationToken))
 {
     (await operations.CreateWithHttpMessagesAsync(ownerName, appName, userEmail, null, cancellationToken).ConfigureAwait(false)).Dispose();
 }
 /// <summary>
 /// Invites a new or existing user to an app
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='ownerName'>
 /// The name of the owner
 /// </param>
 /// <param name='appName'>
 /// The name of the application
 /// </param>
 /// <param name='userEmail'>
 /// The email of the user to invite
 /// </param>
 public static void Create(this IAppInvitations operations, string ownerName, string appName, UserEmailRequest userEmail = default(UserEmailRequest))
 {
     operations.CreateAsync(ownerName, appName, userEmail).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Removes a user's invitation to an app
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='ownerName'>
 /// The name of the owner
 /// </param>
 /// <param name='appName'>
 /// The name of the application
 /// </param>
 /// <param name='userEmail'>
 /// The email of the user to invite
 /// </param>
 public static void Delete(this IAppInvitations operations, string ownerName, string appName, string userEmail)
 {
     operations.DeleteAsync(ownerName, appName, userEmail).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Update pending invitation permission
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='ownerName'>
 /// The name of the owner
 /// </param>
 /// <param name='appName'>
 /// The name of the application
 /// </param>
 /// <param name='userEmail'>
 /// The email of the user to invite
 /// </param>
 /// <param name='userInvitationPermissionsData'>
 /// The value to update the user permission in the invite.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task UpdatePermissionsAsync(this IAppInvitations operations, string ownerName, string appName, string userEmail, UserInvitationPermissionsUpdateRequest userInvitationPermissionsData = default(UserInvitationPermissionsUpdateRequest), CancellationToken cancellationToken = default(CancellationToken))
 {
     (await operations.UpdatePermissionsWithHttpMessagesAsync(ownerName, appName, userEmail, userInvitationPermissionsData, null, cancellationToken).ConfigureAwait(false)).Dispose();
 }
 /// <summary>
 /// Update pending invitation permission
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='ownerName'>
 /// The name of the owner
 /// </param>
 /// <param name='appName'>
 /// The name of the application
 /// </param>
 /// <param name='userEmail'>
 /// The email of the user to invite
 /// </param>
 /// <param name='userInvitationPermissionsData'>
 /// The value to update the user permission in the invite.
 /// </param>
 public static void UpdatePermissions(this IAppInvitations operations, string ownerName, string appName, string userEmail, UserInvitationPermissionsUpdateRequest userInvitationPermissionsData = default(UserInvitationPermissionsUpdateRequest))
 {
     operations.UpdatePermissionsAsync(ownerName, appName, userEmail, userInvitationPermissionsData).GetAwaiter().GetResult();
 }