// @generated by protobuf-ts 2.9.6
// @generated from protobuf file "user.proto" (package "api", syntax proto3)
// tslint:disable
import type { RpcTransport } from "@protobuf-ts/runtime-rpc";
import type { ServiceInfo } from "@protobuf-ts/runtime-rpc";
import { UserService } from "./user";
import type { UpdateTwoFAPlatformResult } from "./user";
import type { UpdateTwoFAPlatformRequest } from "./user";
import type { ForceProjectUserTwoFARequest } from "./user";
import type { ForceTwoFAResult } from "./user";
import type { ForceTwoFAOrganisationRequest } from "./user";
import type { SetUserAttachmentTypeRolesResult } from "./user";
import type { SetUserAttachmentTypeRolesRequest } from "./user";
import type { SetUserConnectionRolesResult } from "./user";
import type { SetUserConnectionRolesRequest } from "./user";
import type { SetUserPartnerAppRolesResult } from "./user";
import type { SetUserPartnerAppRolesRequest } from "./user";
import type { SetUserProjectRolesResult } from "./user";
import type { SetUserProjectRolesRequest } from "./user";
import type { SetUserOrganisationRolesResult } from "./user";
import type { SetUserOrganisationRolesRequest } from "./user";
import type { SetUserPlatformRolesResult } from "./user";
import type { SetUserPlatformRolesRequest } from "./user";
import type { ListUserAttachmentTypeRolesResult } from "./user";
import type { ListUserAttachmentTypeRolesRequest } from "./user";
import type { ListUserConnectionRolesResult } from "./user";
import type { ListUserConnectionRolesRequest } from "./user";
import type { ListUserPartnerAppRolesResult } from "./user";
import type { ListUserPartnerAppRolesRequest } from "./user";
import type { ListUserProjectRolesResult } from "./user";
import type { ListUserProjectRolesRequest } from "./user";
import type { ListUserOrganisationRolesResult } from "./user";
import type { ListUserOrganisationRolesRequest } from "./user";
import type { ListUserPlatformRolesResult } from "./user";
import type { ListUserPlatformRolesRequest } from "./user";
import type { GetProjectUserResult } from "./user";
import type { GetProjectUserRequest } from "./user";
import type { GetOrganisationUserResult } from "./user";
import type { GetOrganisationUserRequest } from "./user";
import type { GetPlatformUserResult } from "./user";
import type { GetPlatformUserRequest } from "./user";
import type { ListUsersInConnectionRoleRequest } from "./user";
import type { ListUsersInPartnerAppRoleRequest } from "./user";
import type { ListUsersInProjectRoleRequest } from "./user";
import type { ListUsersInOrganisationRoleRequest } from "./user";
import type { ListUsersInRoleResult } from "./user";
import type { ListUsersInPlatformRoleRequest } from "./user";
import type { FindConnectionUsersRequest } from "./user";
import type { FindPartnerAppUsersRequest } from "./user";
import type { FindProjectUsersRequest } from "./user";
import type { FindOrganisationUsersRequest } from "./user";
import type { FindUsersResult } from "./user";
import type { FindPlatformUsersRequest } from "./user";
import type { ListConnectionUsersResult } from "./user";
import type { ListConnectionUsersRequest } from "./user";
import type { ListPartnerAppUsersResult } from "./user";
import type { ListPartnerAppUsersRequest } from "./user";
import type { ListProjectUsersResult } from "./user";
import type { ListProjectUsersRequest } from "./user";
import type { ListOrganisationUsersResult } from "./user";
import type { ListOrganisationUsersRequest } from "./user";
import type { ListPlatformUsersResult } from "./user";
import type { ListPlatformUsersRequest } from "./user";
import type { SuggestSANameResult } from "./user";
import type { SuggestSANameRequest } from "./user";
import type { RemoveSAResult } from "./user";
import type { RemoveSARequest } from "./user";
import type { RenewSAResult } from "./user";
import type { RenewSARequest } from "./user";
import type { CreateSAResult } from "./user";
import type { CreateSARequest } from "./user";
import type { RemoveUserResult } from "./user";
import type { RemoveUserRequest } from "./user";
import type { SendVerificationMailProjectRequest } from "./user";
import type { EnrollUserProjectWithoutMailRequest } from "./user";
import type { EnrollUserProjectRequest } from "./user";
import type { SendVerificationMailAsRequest } from "./user";
import type { SendVerificationMailResult } from "./user";
import type { SendVerificationMailRequest } from "./user";
import type { EnrollUserWithoutMailRequest } from "./user";
import { stackIntercept } from "@protobuf-ts/runtime-rpc";
import type { EnrollUserResult } from "./user";
import type { EnrollUserRequest } from "./user";
import type { UnaryCall } from "@protobuf-ts/runtime-rpc";
import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
/**
 * @generated from protobuf service api.UserService
 */
export interface IUserServiceClient {
    /**
     * @generated from protobuf rpc: EnrollUser(api.EnrollUserRequest) returns (api.EnrollUserResult);
     */
    enrollUser(input: EnrollUserRequest, options?: RpcOptions): UnaryCall<EnrollUserRequest, EnrollUserResult>;
    /**
     * @generated from protobuf rpc: EnrollUserWithoutMail(api.EnrollUserWithoutMailRequest) returns (api.EnrollUserResult);
     */
    enrollUserWithoutMail(input: EnrollUserWithoutMailRequest, options?: RpcOptions): UnaryCall<EnrollUserWithoutMailRequest, EnrollUserResult>;
    /**
     * @generated from protobuf rpc: SendVerificationMail(api.SendVerificationMailRequest) returns (api.SendVerificationMailResult);
     */
    sendVerificationMail(input: SendVerificationMailRequest, options?: RpcOptions): UnaryCall<SendVerificationMailRequest, SendVerificationMailResult>;
    /**
     * @generated from protobuf rpc: SendVerificationMailAs(api.SendVerificationMailAsRequest) returns (api.SendVerificationMailResult);
     */
    sendVerificationMailAs(input: SendVerificationMailAsRequest, options?: RpcOptions): UnaryCall<SendVerificationMailAsRequest, SendVerificationMailResult>;
    /**
     * @generated from protobuf rpc: EnrollProjectUser(api.EnrollUserProjectRequest) returns (api.EnrollUserResult);
     */
    enrollProjectUser(input: EnrollUserProjectRequest, options?: RpcOptions): UnaryCall<EnrollUserProjectRequest, EnrollUserResult>;
    /**
     * @generated from protobuf rpc: EnrollProjectUserWithoutMail(api.EnrollUserProjectWithoutMailRequest) returns (api.EnrollUserResult);
     */
    enrollProjectUserWithoutMail(input: EnrollUserProjectWithoutMailRequest, options?: RpcOptions): UnaryCall<EnrollUserProjectWithoutMailRequest, EnrollUserResult>;
    /**
     * @generated from protobuf rpc: SendVerificationMailProject(api.SendVerificationMailProjectRequest) returns (api.SendVerificationMailResult);
     */
    sendVerificationMailProject(input: SendVerificationMailProjectRequest, options?: RpcOptions): UnaryCall<SendVerificationMailProjectRequest, SendVerificationMailResult>;
    /**
     * @generated from protobuf rpc: RemoveUser(api.RemoveUserRequest) returns (api.RemoveUserResult);
     */
    removeUser(input: RemoveUserRequest, options?: RpcOptions): UnaryCall<RemoveUserRequest, RemoveUserResult>;
    /**
     * @generated from protobuf rpc: CreateSA(api.CreateSARequest) returns (api.CreateSAResult);
     */
    createSA(input: CreateSARequest, options?: RpcOptions): UnaryCall<CreateSARequest, CreateSAResult>;
    /**
     * @generated from protobuf rpc: RenewSA(api.RenewSARequest) returns (api.RenewSAResult);
     */
    renewSA(input: RenewSARequest, options?: RpcOptions): UnaryCall<RenewSARequest, RenewSAResult>;
    /**
     * @generated from protobuf rpc: RemoveSA(api.RemoveSARequest) returns (api.RemoveSAResult);
     */
    removeSA(input: RemoveSARequest, options?: RpcOptions): UnaryCall<RemoveSARequest, RemoveSAResult>;
    /**
     * @generated from protobuf rpc: SuggestSAName(api.SuggestSANameRequest) returns (api.SuggestSANameResult);
     */
    suggestSAName(input: SuggestSANameRequest, options?: RpcOptions): UnaryCall<SuggestSANameRequest, SuggestSANameResult>;
    /**
     * @generated from protobuf rpc: ListPlatformUsers(api.ListPlatformUsersRequest) returns (api.ListPlatformUsersResult);
     */
    listPlatformUsers(input: ListPlatformUsersRequest, options?: RpcOptions): UnaryCall<ListPlatformUsersRequest, ListPlatformUsersResult>;
    /**
     * @generated from protobuf rpc: ListOrganisationUsers(api.ListOrganisationUsersRequest) returns (api.ListOrganisationUsersResult);
     */
    listOrganisationUsers(input: ListOrganisationUsersRequest, options?: RpcOptions): UnaryCall<ListOrganisationUsersRequest, ListOrganisationUsersResult>;
    /**
     * @generated from protobuf rpc: ListProjectUsers(api.ListProjectUsersRequest) returns (api.ListProjectUsersResult);
     */
    listProjectUsers(input: ListProjectUsersRequest, options?: RpcOptions): UnaryCall<ListProjectUsersRequest, ListProjectUsersResult>;
    /**
     * @generated from protobuf rpc: ListPartnerAppUsers(api.ListPartnerAppUsersRequest) returns (api.ListPartnerAppUsersResult);
     */
    listPartnerAppUsers(input: ListPartnerAppUsersRequest, options?: RpcOptions): UnaryCall<ListPartnerAppUsersRequest, ListPartnerAppUsersResult>;
    /**
     * @generated from protobuf rpc: ListConnectionUsers(api.ListConnectionUsersRequest) returns (api.ListConnectionUsersResult);
     */
    listConnectionUsers(input: ListConnectionUsersRequest, options?: RpcOptions): UnaryCall<ListConnectionUsersRequest, ListConnectionUsersResult>;
    /**
     * @generated from protobuf rpc: FindPlatformUsers(api.FindPlatformUsersRequest) returns (api.FindUsersResult);
     */
    findPlatformUsers(input: FindPlatformUsersRequest, options?: RpcOptions): UnaryCall<FindPlatformUsersRequest, FindUsersResult>;
    /**
     * @generated from protobuf rpc: FindOrganisationUsers(api.FindOrganisationUsersRequest) returns (api.FindUsersResult);
     */
    findOrganisationUsers(input: FindOrganisationUsersRequest, options?: RpcOptions): UnaryCall<FindOrganisationUsersRequest, FindUsersResult>;
    /**
     * @generated from protobuf rpc: FindProjectUsers(api.FindProjectUsersRequest) returns (api.FindUsersResult);
     */
    findProjectUsers(input: FindProjectUsersRequest, options?: RpcOptions): UnaryCall<FindProjectUsersRequest, FindUsersResult>;
    /**
     * @generated from protobuf rpc: FindPartnerAppUsers(api.FindPartnerAppUsersRequest) returns (api.FindUsersResult);
     */
    findPartnerAppUsers(input: FindPartnerAppUsersRequest, options?: RpcOptions): UnaryCall<FindPartnerAppUsersRequest, FindUsersResult>;
    /**
     * @generated from protobuf rpc: FindConnectionUsers(api.FindConnectionUsersRequest) returns (api.FindUsersResult);
     */
    findConnectionUsers(input: FindConnectionUsersRequest, options?: RpcOptions): UnaryCall<FindConnectionUsersRequest, FindUsersResult>;
    /**
     * @generated from protobuf rpc: ListUsersInPlatformRole(api.ListUsersInPlatformRoleRequest) returns (api.ListUsersInRoleResult);
     */
    listUsersInPlatformRole(input: ListUsersInPlatformRoleRequest, options?: RpcOptions): UnaryCall<ListUsersInPlatformRoleRequest, ListUsersInRoleResult>;
    /**
     * @generated from protobuf rpc: ListUsersInOrganisationRole(api.ListUsersInOrganisationRoleRequest) returns (api.ListUsersInRoleResult);
     */
    listUsersInOrganisationRole(input: ListUsersInOrganisationRoleRequest, options?: RpcOptions): UnaryCall<ListUsersInOrganisationRoleRequest, ListUsersInRoleResult>;
    /**
     * @generated from protobuf rpc: ListUsersInProjectRole(api.ListUsersInProjectRoleRequest) returns (api.ListUsersInRoleResult);
     */
    listUsersInProjectRole(input: ListUsersInProjectRoleRequest, options?: RpcOptions): UnaryCall<ListUsersInProjectRoleRequest, ListUsersInRoleResult>;
    /**
     * @generated from protobuf rpc: ListUsersInPartnerAppRole(api.ListUsersInPartnerAppRoleRequest) returns (api.ListUsersInRoleResult);
     */
    listUsersInPartnerAppRole(input: ListUsersInPartnerAppRoleRequest, options?: RpcOptions): UnaryCall<ListUsersInPartnerAppRoleRequest, ListUsersInRoleResult>;
    /**
     * @generated from protobuf rpc: ListUsersInConnectionRole(api.ListUsersInConnectionRoleRequest) returns (api.ListUsersInRoleResult);
     */
    listUsersInConnectionRole(input: ListUsersInConnectionRoleRequest, options?: RpcOptions): UnaryCall<ListUsersInConnectionRoleRequest, ListUsersInRoleResult>;
    /**
     * @generated from protobuf rpc: GetPlatformUser(api.GetPlatformUserRequest) returns (api.GetPlatformUserResult);
     */
    getPlatformUser(input: GetPlatformUserRequest, options?: RpcOptions): UnaryCall<GetPlatformUserRequest, GetPlatformUserResult>;
    /**
     * @generated from protobuf rpc: GetOrganisationUser(api.GetOrganisationUserRequest) returns (api.GetOrganisationUserResult);
     */
    getOrganisationUser(input: GetOrganisationUserRequest, options?: RpcOptions): UnaryCall<GetOrganisationUserRequest, GetOrganisationUserResult>;
    /**
     * @generated from protobuf rpc: GetProjectUser(api.GetProjectUserRequest) returns (api.GetProjectUserResult);
     */
    getProjectUser(input: GetProjectUserRequest, options?: RpcOptions): UnaryCall<GetProjectUserRequest, GetProjectUserResult>;
    /**
     * @generated from protobuf rpc: ListPlatformRoles(api.ListUserPlatformRolesRequest) returns (api.ListUserPlatformRolesResult);
     */
    listPlatformRoles(input: ListUserPlatformRolesRequest, options?: RpcOptions): UnaryCall<ListUserPlatformRolesRequest, ListUserPlatformRolesResult>;
    /**
     * @generated from protobuf rpc: ListOrganisationRoles(api.ListUserOrganisationRolesRequest) returns (api.ListUserOrganisationRolesResult);
     */
    listOrganisationRoles(input: ListUserOrganisationRolesRequest, options?: RpcOptions): UnaryCall<ListUserOrganisationRolesRequest, ListUserOrganisationRolesResult>;
    /**
     * @generated from protobuf rpc: ListProjectRoles(api.ListUserProjectRolesRequest) returns (api.ListUserProjectRolesResult);
     */
    listProjectRoles(input: ListUserProjectRolesRequest, options?: RpcOptions): UnaryCall<ListUserProjectRolesRequest, ListUserProjectRolesResult>;
    /**
     * @generated from protobuf rpc: ListPartnerAppRoles(api.ListUserPartnerAppRolesRequest) returns (api.ListUserPartnerAppRolesResult);
     */
    listPartnerAppRoles(input: ListUserPartnerAppRolesRequest, options?: RpcOptions): UnaryCall<ListUserPartnerAppRolesRequest, ListUserPartnerAppRolesResult>;
    /**
     * @generated from protobuf rpc: ListConnectionRoles(api.ListUserConnectionRolesRequest) returns (api.ListUserConnectionRolesResult);
     */
    listConnectionRoles(input: ListUserConnectionRolesRequest, options?: RpcOptions): UnaryCall<ListUserConnectionRolesRequest, ListUserConnectionRolesResult>;
    /**
     * @generated from protobuf rpc: ListAttachmentTypeRoles(api.ListUserAttachmentTypeRolesRequest) returns (api.ListUserAttachmentTypeRolesResult);
     */
    listAttachmentTypeRoles(input: ListUserAttachmentTypeRolesRequest, options?: RpcOptions): UnaryCall<ListUserAttachmentTypeRolesRequest, ListUserAttachmentTypeRolesResult>;
    /**
     * @generated from protobuf rpc: SetPlatformRoles(api.SetUserPlatformRolesRequest) returns (api.SetUserPlatformRolesResult);
     */
    setPlatformRoles(input: SetUserPlatformRolesRequest, options?: RpcOptions): UnaryCall<SetUserPlatformRolesRequest, SetUserPlatformRolesResult>;
    /**
     * @generated from protobuf rpc: SetOrganisationRoles(api.SetUserOrganisationRolesRequest) returns (api.SetUserOrganisationRolesResult);
     */
    setOrganisationRoles(input: SetUserOrganisationRolesRequest, options?: RpcOptions): UnaryCall<SetUserOrganisationRolesRequest, SetUserOrganisationRolesResult>;
    /**
     * @generated from protobuf rpc: SetProjectRoles(api.SetUserProjectRolesRequest) returns (api.SetUserProjectRolesResult);
     */
    setProjectRoles(input: SetUserProjectRolesRequest, options?: RpcOptions): UnaryCall<SetUserProjectRolesRequest, SetUserProjectRolesResult>;
    /**
     * @generated from protobuf rpc: SetPartnerAppRoles(api.SetUserPartnerAppRolesRequest) returns (api.SetUserPartnerAppRolesResult);
     */
    setPartnerAppRoles(input: SetUserPartnerAppRolesRequest, options?: RpcOptions): UnaryCall<SetUserPartnerAppRolesRequest, SetUserPartnerAppRolesResult>;
    /**
     * @generated from protobuf rpc: SetConnectionRoles(api.SetUserConnectionRolesRequest) returns (api.SetUserConnectionRolesResult);
     */
    setConnectionRoles(input: SetUserConnectionRolesRequest, options?: RpcOptions): UnaryCall<SetUserConnectionRolesRequest, SetUserConnectionRolesResult>;
    /**
     * @generated from protobuf rpc: SetAttachmentTypeRoles(api.SetUserAttachmentTypeRolesRequest) returns (api.SetUserAttachmentTypeRolesResult);
     */
    setAttachmentTypeRoles(input: SetUserAttachmentTypeRolesRequest, options?: RpcOptions): UnaryCall<SetUserAttachmentTypeRolesRequest, SetUserAttachmentTypeRolesResult>;
    /**
     * @generated from protobuf rpc: ForceTwoFA(api.ForceTwoFAOrganisationRequest) returns (api.ForceTwoFAResult);
     */
    forceTwoFA(input: ForceTwoFAOrganisationRequest, options?: RpcOptions): UnaryCall<ForceTwoFAOrganisationRequest, ForceTwoFAResult>;
    /**
     * @generated from protobuf rpc: ForceProjectUserTwoFA(api.ForceProjectUserTwoFARequest) returns (api.ForceTwoFAResult);
     */
    forceProjectUserTwoFA(input: ForceProjectUserTwoFARequest, options?: RpcOptions): UnaryCall<ForceProjectUserTwoFARequest, ForceTwoFAResult>;
    /**
     * @generated from protobuf rpc: UpdatePlatformTwoFA(api.UpdateTwoFAPlatformRequest) returns (api.UpdateTwoFAPlatformResult);
     */
    updatePlatformTwoFA(input: UpdateTwoFAPlatformRequest, options?: RpcOptions): UnaryCall<UpdateTwoFAPlatformRequest, UpdateTwoFAPlatformResult>;
}
/**
 * @generated from protobuf service api.UserService
 */
export class UserServiceClient implements IUserServiceClient, ServiceInfo {
    typeName = UserService.typeName;
    methods = UserService.methods;
    options = UserService.options;
    constructor(private readonly _transport: RpcTransport) {
    }
    /**
     * @generated from protobuf rpc: EnrollUser(api.EnrollUserRequest) returns (api.EnrollUserResult);
     */
    enrollUser(input: EnrollUserRequest, options?: RpcOptions): UnaryCall<EnrollUserRequest, EnrollUserResult> {
        const method = this.methods[0], opt = this._transport.mergeOptions(options);
        return stackIntercept<EnrollUserRequest, EnrollUserResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: EnrollUserWithoutMail(api.EnrollUserWithoutMailRequest) returns (api.EnrollUserResult);
     */
    enrollUserWithoutMail(input: EnrollUserWithoutMailRequest, options?: RpcOptions): UnaryCall<EnrollUserWithoutMailRequest, EnrollUserResult> {
        const method = this.methods[1], opt = this._transport.mergeOptions(options);
        return stackIntercept<EnrollUserWithoutMailRequest, EnrollUserResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SendVerificationMail(api.SendVerificationMailRequest) returns (api.SendVerificationMailResult);
     */
    sendVerificationMail(input: SendVerificationMailRequest, options?: RpcOptions): UnaryCall<SendVerificationMailRequest, SendVerificationMailResult> {
        const method = this.methods[2], opt = this._transport.mergeOptions(options);
        return stackIntercept<SendVerificationMailRequest, SendVerificationMailResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SendVerificationMailAs(api.SendVerificationMailAsRequest) returns (api.SendVerificationMailResult);
     */
    sendVerificationMailAs(input: SendVerificationMailAsRequest, options?: RpcOptions): UnaryCall<SendVerificationMailAsRequest, SendVerificationMailResult> {
        const method = this.methods[3], opt = this._transport.mergeOptions(options);
        return stackIntercept<SendVerificationMailAsRequest, SendVerificationMailResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: EnrollProjectUser(api.EnrollUserProjectRequest) returns (api.EnrollUserResult);
     */
    enrollProjectUser(input: EnrollUserProjectRequest, options?: RpcOptions): UnaryCall<EnrollUserProjectRequest, EnrollUserResult> {
        const method = this.methods[4], opt = this._transport.mergeOptions(options);
        return stackIntercept<EnrollUserProjectRequest, EnrollUserResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: EnrollProjectUserWithoutMail(api.EnrollUserProjectWithoutMailRequest) returns (api.EnrollUserResult);
     */
    enrollProjectUserWithoutMail(input: EnrollUserProjectWithoutMailRequest, options?: RpcOptions): UnaryCall<EnrollUserProjectWithoutMailRequest, EnrollUserResult> {
        const method = this.methods[5], opt = this._transport.mergeOptions(options);
        return stackIntercept<EnrollUserProjectWithoutMailRequest, EnrollUserResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SendVerificationMailProject(api.SendVerificationMailProjectRequest) returns (api.SendVerificationMailResult);
     */
    sendVerificationMailProject(input: SendVerificationMailProjectRequest, options?: RpcOptions): UnaryCall<SendVerificationMailProjectRequest, SendVerificationMailResult> {
        const method = this.methods[6], opt = this._transport.mergeOptions(options);
        return stackIntercept<SendVerificationMailProjectRequest, SendVerificationMailResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: RemoveUser(api.RemoveUserRequest) returns (api.RemoveUserResult);
     */
    removeUser(input: RemoveUserRequest, options?: RpcOptions): UnaryCall<RemoveUserRequest, RemoveUserResult> {
        const method = this.methods[7], opt = this._transport.mergeOptions(options);
        return stackIntercept<RemoveUserRequest, RemoveUserResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: CreateSA(api.CreateSARequest) returns (api.CreateSAResult);
     */
    createSA(input: CreateSARequest, options?: RpcOptions): UnaryCall<CreateSARequest, CreateSAResult> {
        const method = this.methods[8], opt = this._transport.mergeOptions(options);
        return stackIntercept<CreateSARequest, CreateSAResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: RenewSA(api.RenewSARequest) returns (api.RenewSAResult);
     */
    renewSA(input: RenewSARequest, options?: RpcOptions): UnaryCall<RenewSARequest, RenewSAResult> {
        const method = this.methods[9], opt = this._transport.mergeOptions(options);
        return stackIntercept<RenewSARequest, RenewSAResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: RemoveSA(api.RemoveSARequest) returns (api.RemoveSAResult);
     */
    removeSA(input: RemoveSARequest, options?: RpcOptions): UnaryCall<RemoveSARequest, RemoveSAResult> {
        const method = this.methods[10], opt = this._transport.mergeOptions(options);
        return stackIntercept<RemoveSARequest, RemoveSAResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SuggestSAName(api.SuggestSANameRequest) returns (api.SuggestSANameResult);
     */
    suggestSAName(input: SuggestSANameRequest, options?: RpcOptions): UnaryCall<SuggestSANameRequest, SuggestSANameResult> {
        const method = this.methods[11], opt = this._transport.mergeOptions(options);
        return stackIntercept<SuggestSANameRequest, SuggestSANameResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListPlatformUsers(api.ListPlatformUsersRequest) returns (api.ListPlatformUsersResult);
     */
    listPlatformUsers(input: ListPlatformUsersRequest, options?: RpcOptions): UnaryCall<ListPlatformUsersRequest, ListPlatformUsersResult> {
        const method = this.methods[12], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListPlatformUsersRequest, ListPlatformUsersResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListOrganisationUsers(api.ListOrganisationUsersRequest) returns (api.ListOrganisationUsersResult);
     */
    listOrganisationUsers(input: ListOrganisationUsersRequest, options?: RpcOptions): UnaryCall<ListOrganisationUsersRequest, ListOrganisationUsersResult> {
        const method = this.methods[13], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListOrganisationUsersRequest, ListOrganisationUsersResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListProjectUsers(api.ListProjectUsersRequest) returns (api.ListProjectUsersResult);
     */
    listProjectUsers(input: ListProjectUsersRequest, options?: RpcOptions): UnaryCall<ListProjectUsersRequest, ListProjectUsersResult> {
        const method = this.methods[14], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListProjectUsersRequest, ListProjectUsersResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListPartnerAppUsers(api.ListPartnerAppUsersRequest) returns (api.ListPartnerAppUsersResult);
     */
    listPartnerAppUsers(input: ListPartnerAppUsersRequest, options?: RpcOptions): UnaryCall<ListPartnerAppUsersRequest, ListPartnerAppUsersResult> {
        const method = this.methods[15], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListPartnerAppUsersRequest, ListPartnerAppUsersResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListConnectionUsers(api.ListConnectionUsersRequest) returns (api.ListConnectionUsersResult);
     */
    listConnectionUsers(input: ListConnectionUsersRequest, options?: RpcOptions): UnaryCall<ListConnectionUsersRequest, ListConnectionUsersResult> {
        const method = this.methods[16], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListConnectionUsersRequest, ListConnectionUsersResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: FindPlatformUsers(api.FindPlatformUsersRequest) returns (api.FindUsersResult);
     */
    findPlatformUsers(input: FindPlatformUsersRequest, options?: RpcOptions): UnaryCall<FindPlatformUsersRequest, FindUsersResult> {
        const method = this.methods[17], opt = this._transport.mergeOptions(options);
        return stackIntercept<FindPlatformUsersRequest, FindUsersResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: FindOrganisationUsers(api.FindOrganisationUsersRequest) returns (api.FindUsersResult);
     */
    findOrganisationUsers(input: FindOrganisationUsersRequest, options?: RpcOptions): UnaryCall<FindOrganisationUsersRequest, FindUsersResult> {
        const method = this.methods[18], opt = this._transport.mergeOptions(options);
        return stackIntercept<FindOrganisationUsersRequest, FindUsersResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: FindProjectUsers(api.FindProjectUsersRequest) returns (api.FindUsersResult);
     */
    findProjectUsers(input: FindProjectUsersRequest, options?: RpcOptions): UnaryCall<FindProjectUsersRequest, FindUsersResult> {
        const method = this.methods[19], opt = this._transport.mergeOptions(options);
        return stackIntercept<FindProjectUsersRequest, FindUsersResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: FindPartnerAppUsers(api.FindPartnerAppUsersRequest) returns (api.FindUsersResult);
     */
    findPartnerAppUsers(input: FindPartnerAppUsersRequest, options?: RpcOptions): UnaryCall<FindPartnerAppUsersRequest, FindUsersResult> {
        const method = this.methods[20], opt = this._transport.mergeOptions(options);
        return stackIntercept<FindPartnerAppUsersRequest, FindUsersResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: FindConnectionUsers(api.FindConnectionUsersRequest) returns (api.FindUsersResult);
     */
    findConnectionUsers(input: FindConnectionUsersRequest, options?: RpcOptions): UnaryCall<FindConnectionUsersRequest, FindUsersResult> {
        const method = this.methods[21], opt = this._transport.mergeOptions(options);
        return stackIntercept<FindConnectionUsersRequest, FindUsersResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListUsersInPlatformRole(api.ListUsersInPlatformRoleRequest) returns (api.ListUsersInRoleResult);
     */
    listUsersInPlatformRole(input: ListUsersInPlatformRoleRequest, options?: RpcOptions): UnaryCall<ListUsersInPlatformRoleRequest, ListUsersInRoleResult> {
        const method = this.methods[22], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListUsersInPlatformRoleRequest, ListUsersInRoleResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListUsersInOrganisationRole(api.ListUsersInOrganisationRoleRequest) returns (api.ListUsersInRoleResult);
     */
    listUsersInOrganisationRole(input: ListUsersInOrganisationRoleRequest, options?: RpcOptions): UnaryCall<ListUsersInOrganisationRoleRequest, ListUsersInRoleResult> {
        const method = this.methods[23], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListUsersInOrganisationRoleRequest, ListUsersInRoleResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListUsersInProjectRole(api.ListUsersInProjectRoleRequest) returns (api.ListUsersInRoleResult);
     */
    listUsersInProjectRole(input: ListUsersInProjectRoleRequest, options?: RpcOptions): UnaryCall<ListUsersInProjectRoleRequest, ListUsersInRoleResult> {
        const method = this.methods[24], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListUsersInProjectRoleRequest, ListUsersInRoleResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListUsersInPartnerAppRole(api.ListUsersInPartnerAppRoleRequest) returns (api.ListUsersInRoleResult);
     */
    listUsersInPartnerAppRole(input: ListUsersInPartnerAppRoleRequest, options?: RpcOptions): UnaryCall<ListUsersInPartnerAppRoleRequest, ListUsersInRoleResult> {
        const method = this.methods[25], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListUsersInPartnerAppRoleRequest, ListUsersInRoleResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListUsersInConnectionRole(api.ListUsersInConnectionRoleRequest) returns (api.ListUsersInRoleResult);
     */
    listUsersInConnectionRole(input: ListUsersInConnectionRoleRequest, options?: RpcOptions): UnaryCall<ListUsersInConnectionRoleRequest, ListUsersInRoleResult> {
        const method = this.methods[26], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListUsersInConnectionRoleRequest, ListUsersInRoleResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetPlatformUser(api.GetPlatformUserRequest) returns (api.GetPlatformUserResult);
     */
    getPlatformUser(input: GetPlatformUserRequest, options?: RpcOptions): UnaryCall<GetPlatformUserRequest, GetPlatformUserResult> {
        const method = this.methods[27], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetPlatformUserRequest, GetPlatformUserResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetOrganisationUser(api.GetOrganisationUserRequest) returns (api.GetOrganisationUserResult);
     */
    getOrganisationUser(input: GetOrganisationUserRequest, options?: RpcOptions): UnaryCall<GetOrganisationUserRequest, GetOrganisationUserResult> {
        const method = this.methods[28], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetOrganisationUserRequest, GetOrganisationUserResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetProjectUser(api.GetProjectUserRequest) returns (api.GetProjectUserResult);
     */
    getProjectUser(input: GetProjectUserRequest, options?: RpcOptions): UnaryCall<GetProjectUserRequest, GetProjectUserResult> {
        const method = this.methods[29], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetProjectUserRequest, GetProjectUserResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListPlatformRoles(api.ListUserPlatformRolesRequest) returns (api.ListUserPlatformRolesResult);
     */
    listPlatformRoles(input: ListUserPlatformRolesRequest, options?: RpcOptions): UnaryCall<ListUserPlatformRolesRequest, ListUserPlatformRolesResult> {
        const method = this.methods[30], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListUserPlatformRolesRequest, ListUserPlatformRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListOrganisationRoles(api.ListUserOrganisationRolesRequest) returns (api.ListUserOrganisationRolesResult);
     */
    listOrganisationRoles(input: ListUserOrganisationRolesRequest, options?: RpcOptions): UnaryCall<ListUserOrganisationRolesRequest, ListUserOrganisationRolesResult> {
        const method = this.methods[31], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListUserOrganisationRolesRequest, ListUserOrganisationRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListProjectRoles(api.ListUserProjectRolesRequest) returns (api.ListUserProjectRolesResult);
     */
    listProjectRoles(input: ListUserProjectRolesRequest, options?: RpcOptions): UnaryCall<ListUserProjectRolesRequest, ListUserProjectRolesResult> {
        const method = this.methods[32], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListUserProjectRolesRequest, ListUserProjectRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListPartnerAppRoles(api.ListUserPartnerAppRolesRequest) returns (api.ListUserPartnerAppRolesResult);
     */
    listPartnerAppRoles(input: ListUserPartnerAppRolesRequest, options?: RpcOptions): UnaryCall<ListUserPartnerAppRolesRequest, ListUserPartnerAppRolesResult> {
        const method = this.methods[33], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListUserPartnerAppRolesRequest, ListUserPartnerAppRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListConnectionRoles(api.ListUserConnectionRolesRequest) returns (api.ListUserConnectionRolesResult);
     */
    listConnectionRoles(input: ListUserConnectionRolesRequest, options?: RpcOptions): UnaryCall<ListUserConnectionRolesRequest, ListUserConnectionRolesResult> {
        const method = this.methods[34], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListUserConnectionRolesRequest, ListUserConnectionRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ListAttachmentTypeRoles(api.ListUserAttachmentTypeRolesRequest) returns (api.ListUserAttachmentTypeRolesResult);
     */
    listAttachmentTypeRoles(input: ListUserAttachmentTypeRolesRequest, options?: RpcOptions): UnaryCall<ListUserAttachmentTypeRolesRequest, ListUserAttachmentTypeRolesResult> {
        const method = this.methods[35], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListUserAttachmentTypeRolesRequest, ListUserAttachmentTypeRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SetPlatformRoles(api.SetUserPlatformRolesRequest) returns (api.SetUserPlatformRolesResult);
     */
    setPlatformRoles(input: SetUserPlatformRolesRequest, options?: RpcOptions): UnaryCall<SetUserPlatformRolesRequest, SetUserPlatformRolesResult> {
        const method = this.methods[36], opt = this._transport.mergeOptions(options);
        return stackIntercept<SetUserPlatformRolesRequest, SetUserPlatformRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SetOrganisationRoles(api.SetUserOrganisationRolesRequest) returns (api.SetUserOrganisationRolesResult);
     */
    setOrganisationRoles(input: SetUserOrganisationRolesRequest, options?: RpcOptions): UnaryCall<SetUserOrganisationRolesRequest, SetUserOrganisationRolesResult> {
        const method = this.methods[37], opt = this._transport.mergeOptions(options);
        return stackIntercept<SetUserOrganisationRolesRequest, SetUserOrganisationRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SetProjectRoles(api.SetUserProjectRolesRequest) returns (api.SetUserProjectRolesResult);
     */
    setProjectRoles(input: SetUserProjectRolesRequest, options?: RpcOptions): UnaryCall<SetUserProjectRolesRequest, SetUserProjectRolesResult> {
        const method = this.methods[38], opt = this._transport.mergeOptions(options);
        return stackIntercept<SetUserProjectRolesRequest, SetUserProjectRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SetPartnerAppRoles(api.SetUserPartnerAppRolesRequest) returns (api.SetUserPartnerAppRolesResult);
     */
    setPartnerAppRoles(input: SetUserPartnerAppRolesRequest, options?: RpcOptions): UnaryCall<SetUserPartnerAppRolesRequest, SetUserPartnerAppRolesResult> {
        const method = this.methods[39], opt = this._transport.mergeOptions(options);
        return stackIntercept<SetUserPartnerAppRolesRequest, SetUserPartnerAppRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SetConnectionRoles(api.SetUserConnectionRolesRequest) returns (api.SetUserConnectionRolesResult);
     */
    setConnectionRoles(input: SetUserConnectionRolesRequest, options?: RpcOptions): UnaryCall<SetUserConnectionRolesRequest, SetUserConnectionRolesResult> {
        const method = this.methods[40], opt = this._transport.mergeOptions(options);
        return stackIntercept<SetUserConnectionRolesRequest, SetUserConnectionRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: SetAttachmentTypeRoles(api.SetUserAttachmentTypeRolesRequest) returns (api.SetUserAttachmentTypeRolesResult);
     */
    setAttachmentTypeRoles(input: SetUserAttachmentTypeRolesRequest, options?: RpcOptions): UnaryCall<SetUserAttachmentTypeRolesRequest, SetUserAttachmentTypeRolesResult> {
        const method = this.methods[41], opt = this._transport.mergeOptions(options);
        return stackIntercept<SetUserAttachmentTypeRolesRequest, SetUserAttachmentTypeRolesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ForceTwoFA(api.ForceTwoFAOrganisationRequest) returns (api.ForceTwoFAResult);
     */
    forceTwoFA(input: ForceTwoFAOrganisationRequest, options?: RpcOptions): UnaryCall<ForceTwoFAOrganisationRequest, ForceTwoFAResult> {
        const method = this.methods[42], opt = this._transport.mergeOptions(options);
        return stackIntercept<ForceTwoFAOrganisationRequest, ForceTwoFAResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ForceProjectUserTwoFA(api.ForceProjectUserTwoFARequest) returns (api.ForceTwoFAResult);
     */
    forceProjectUserTwoFA(input: ForceProjectUserTwoFARequest, options?: RpcOptions): UnaryCall<ForceProjectUserTwoFARequest, ForceTwoFAResult> {
        const method = this.methods[43], opt = this._transport.mergeOptions(options);
        return stackIntercept<ForceProjectUserTwoFARequest, ForceTwoFAResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: UpdatePlatformTwoFA(api.UpdateTwoFAPlatformRequest) returns (api.UpdateTwoFAPlatformResult);
     */
    updatePlatformTwoFA(input: UpdateTwoFAPlatformRequest, options?: RpcOptions): UnaryCall<UpdateTwoFAPlatformRequest, UpdateTwoFAPlatformResult> {
        const method = this.methods[44], opt = this._transport.mergeOptions(options);
        return stackIntercept<UpdateTwoFAPlatformRequest, UpdateTwoFAPlatformResult>("unary", this._transport, method, opt, input);
    }
}
