UNPKG

appcenter-cli

Version:

Command line tool for Visual Studio App Center

326 lines (313 loc) 9.84 kB
/* * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ import { OrgInvitations } from "../operationsInterfaces"; import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { AppCenterClient } from "../appCenterClient"; import { OrgInvitationsRejectOptionalParams, OrgInvitationsAcceptOptionalParams, OrgInvitationsRevokeOptionalParams, OrgInvitationsSendNewInvitationOptionalParams, OrgInvitationsUpdateOptionalParams, OrgInvitationsCreateOptionalParams, OrgInvitationsDeleteOptionalParams, OrgInvitationsListPendingOptionalParams, OrgInvitationsListPendingResponse } from "../models"; /** Class containing OrgInvitations operations. */ export class OrgInvitationsImpl implements OrgInvitations { private readonly client: AppCenterClient; /** * Initialize a new instance of the class OrgInvitations class. * @param client Reference to the service client */ constructor(client: AppCenterClient) { this.client = client; } /** * Rejects a pending organization invitation * @param invitationToken The app invitation token that was sent to the user * @param options The options parameters. */ reject( invitationToken: string, options?: OrgInvitationsRejectOptionalParams ): Promise<void> { return this.client.sendOperationRequest( { invitationToken, options }, rejectOperationSpec ); } /** * Accepts a pending organization invitation for the specified user * @param invitationToken The app invitation token that was sent to the user * @param options The options parameters. */ accept( invitationToken: string, options?: OrgInvitationsAcceptOptionalParams ): Promise<void> { return this.client.sendOperationRequest( { invitationToken, options }, acceptOperationSpec ); } /** * Removes a user's invitation to an organization * @param orgName The organization's name * @param email The email address of the user to send the password reset mail to. * @param options The options parameters. */ revoke( orgName: string, email: string, options?: OrgInvitationsRevokeOptionalParams ): Promise<void> { return this.client.sendOperationRequest( { orgName, email, options }, revokeOperationSpec ); } /** * Cancels an existing organization invitation for the user and sends a new one * @param orgName The organization's name * @param email The email address of the user to send the password reset mail to. * @param options The options parameters. */ sendNewInvitation( orgName: string, email: string, options?: OrgInvitationsSendNewInvitationOptionalParams ): Promise<void> { return this.client.sendOperationRequest( { orgName, email, options }, sendNewInvitationOperationSpec ); } /** * Allows the role of an invited user to be changed * @param orgName The organization's name * @param email The email address of the user to send the password reset mail to. * @param options The options parameters. */ update( orgName: string, email: string, options?: OrgInvitationsUpdateOptionalParams ): Promise<void> { return this.client.sendOperationRequest( { orgName, email, options }, updateOperationSpec ); } /** * Invites a new or existing user to an organization * @param orgName The organization's name * @param userEmail The user's email address * @param options The options parameters. */ create( orgName: string, userEmail: string, options?: OrgInvitationsCreateOptionalParams ): Promise<void> { return this.client.sendOperationRequest( { orgName, userEmail, options }, createOperationSpec ); } /** * Removes a user's invitation to an organization * @param orgName The organization's name * @param userEmail The user's email address * @param options The options parameters. */ delete( orgName: string, userEmail: string, options?: OrgInvitationsDeleteOptionalParams ): Promise<void> { return this.client.sendOperationRequest( { orgName, userEmail, options }, deleteOperationSpec ); } /** * Gets the pending invitations for the organization * @param orgName The organization's name * @param options The options parameters. */ listPending( orgName: string, options?: OrgInvitationsListPendingOptionalParams ): Promise<OrgInvitationsListPendingResponse> { return this.client.sendOperationRequest( { orgName, options }, listPendingOperationSpec ); } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); const rejectOperationSpec: coreClient.OperationSpec = { path: "/v0.1/user/invitations/orgs/{invitation_token}/reject", httpMethod: "POST", responses: { 204: {}, default: { bodyMapper: Mappers.Paths1Me00QfV01UserInvitationsOrgsInvitationTokenRejectPostResponsesDefaultContentApplicationJsonSchema } }, urlParameters: [Parameters.$host, Parameters.invitationToken], headerParameters: [Parameters.accept], serializer }; const acceptOperationSpec: coreClient.OperationSpec = { path: "/v0.1/user/invitations/orgs/{invitation_token}/accept", httpMethod: "POST", responses: { 204: {}, default: { bodyMapper: Mappers.PathsWyg1WoV01UserInvitationsOrgsInvitationTokenAcceptPostResponsesDefaultContentApplicationJsonSchema } }, urlParameters: [Parameters.$host, Parameters.invitationToken], headerParameters: [Parameters.accept], serializer }; const revokeOperationSpec: coreClient.OperationSpec = { path: "/v0.1/orgs/{org_name}/invitations/{email}/revoke", httpMethod: "POST", responses: { 204: {}, default: { bodyMapper: Mappers.Paths1Qkfv3PV01OrgsOrgNameInvitationsEmailRevokePostResponsesDefaultContentApplicationJsonSchema } }, urlParameters: [Parameters.$host, Parameters.orgName, Parameters.email], headerParameters: [Parameters.accept], serializer }; const sendNewInvitationOperationSpec: coreClient.OperationSpec = { path: "/v0.1/orgs/{org_name}/invitations/{email}/resend", httpMethod: "POST", responses: { 204: {}, default: { bodyMapper: Mappers.Paths1W4JklnV01OrgsOrgNameInvitationsEmailResendPostResponsesDefaultContentApplicationJsonSchema } }, requestBody: { parameterPath: { role: ["options", "role"] }, mapper: Mappers.PathsMtzmgwV01OrgsOrgNameInvitationsEmailResendPostRequestbodyContentApplicationJsonSchema }, urlParameters: [Parameters.$host, Parameters.orgName, Parameters.email], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer }; const updateOperationSpec: coreClient.OperationSpec = { path: "/v0.1/orgs/{org_name}/invitations/{email}", httpMethod: "PATCH", responses: { 204: {}, default: { bodyMapper: Mappers.Paths1B4403V01OrgsOrgNameInvitationsEmailPatchResponsesDefaultContentApplicationJsonSchema } }, requestBody: { parameterPath: { role: ["options", "role"] }, mapper: { ...Mappers.Paths8S96O5V01OrgsOrgNameInvitationsEmailPatchRequestbodyContentApplicationJsonSchema, required: true } }, urlParameters: [Parameters.$host, Parameters.orgName, Parameters.email], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer }; const createOperationSpec: coreClient.OperationSpec = { path: "/v0.1/orgs/{org_name}/invitations", httpMethod: "POST", responses: { 204: {}, default: { bodyMapper: Mappers.PathsIlk0YtV01OrgsOrgNameInvitationsPostResponsesDefaultContentApplicationJsonSchema } }, requestBody: { parameterPath: { userEmail: ["userEmail"], role: ["options", "role"] }, mapper: { ...Mappers.PathsVoxne2V01OrgsOrgNameInvitationsPostRequestbodyContentApplicationJsonSchema, required: true } }, urlParameters: [Parameters.$host, Parameters.orgName], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer }; const deleteOperationSpec: coreClient.OperationSpec = { path: "/v0.1/orgs/{org_name}/invitations", httpMethod: "DELETE", responses: { 204: {}, default: { bodyMapper: Mappers.Paths1PjqhddV01OrgsOrgNameInvitationsDeleteResponsesDefaultContentApplicationJsonSchema } }, requestBody: { parameterPath: { userEmail: ["userEmail"] }, mapper: { ...Mappers.Paths2KqsncV01OrgsOrgNameInvitationsDeleteRequestbodyContentApplicationJsonSchema, required: true } }, urlParameters: [Parameters.$host, Parameters.orgName], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer }; const listPendingOperationSpec: coreClient.OperationSpec = { path: "/v0.1/orgs/{org_name}/invitations", httpMethod: "GET", responses: { 200: { bodyMapper: { type: { name: "Sequence", element: { type: { name: "Composite", className: "Paths1Hzhjt9V01OrgsOrgNameInvitationsGetResponses200ContentApplicationJsonSchemaItems" } } } } }, default: { bodyMapper: Mappers.PathsFqvnp1V01OrgsOrgNameInvitationsGetResponsesDefaultContentApplicationJsonSchema } }, urlParameters: [Parameters.$host, Parameters.orgName], headerParameters: [Parameters.accept], serializer };