# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc

from . import account_pb2 as account__pb2
from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2


class AccountStub(object):
    """Missing associated documentation comment in .proto file."""

    def __init__(self, channel):
        """Constructor.

        Args:
            channel: A grpc.Channel.
        """
        self.GetAccountInfo = channel.unary_unary(
                '/org.couchers.api.account.Account/GetAccountInfo',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=account__pb2.GetAccountInfoRes.FromString,
                )
        self.ChangePasswordV2 = channel.unary_unary(
                '/org.couchers.api.account.Account/ChangePasswordV2',
                request_serializer=account__pb2.ChangePasswordV2Req.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ChangeEmailV2 = channel.unary_unary(
                '/org.couchers.api.account.Account/ChangeEmailV2',
                request_serializer=account__pb2.ChangeEmailV2Req.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.GetContributorFormInfo = channel.unary_unary(
                '/org.couchers.api.account.Account/GetContributorFormInfo',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=account__pb2.GetContributorFormInfoRes.FromString,
                )
        self.FillContributorForm = channel.unary_unary(
                '/org.couchers.api.account.Account/FillContributorForm',
                request_serializer=account__pb2.FillContributorFormReq.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ChangeLanguagePreference = channel.unary_unary(
                '/org.couchers.api.account.Account/ChangeLanguagePreference',
                request_serializer=account__pb2.ChangeLanguagePreferenceReq.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ChangePhone = channel.unary_unary(
                '/org.couchers.api.account.Account/ChangePhone',
                request_serializer=account__pb2.ChangePhoneReq.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.VerifyPhone = channel.unary_unary(
                '/org.couchers.api.account.Account/VerifyPhone',
                request_serializer=account__pb2.VerifyPhoneReq.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.InitiateStrongVerification = channel.unary_unary(
                '/org.couchers.api.account.Account/InitiateStrongVerification',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=account__pb2.InitiateStrongVerificationRes.FromString,
                )
        self.GetStrongVerificationAttemptStatus = channel.unary_unary(
                '/org.couchers.api.account.Account/GetStrongVerificationAttemptStatus',
                request_serializer=account__pb2.GetStrongVerificationAttemptStatusReq.SerializeToString,
                response_deserializer=account__pb2.GetStrongVerificationAttemptStatusRes.FromString,
                )
        self.DeleteStrongVerificationData = channel.unary_unary(
                '/org.couchers.api.account.Account/DeleteStrongVerificationData',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.DeleteAccount = channel.unary_unary(
                '/org.couchers.api.account.Account/DeleteAccount',
                request_serializer=account__pb2.DeleteAccountReq.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListModNotes = channel.unary_unary(
                '/org.couchers.api.account.Account/ListModNotes',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=account__pb2.ListModNotesRes.FromString,
                )
        self.ListActiveSessions = channel.unary_unary(
                '/org.couchers.api.account.Account/ListActiveSessions',
                request_serializer=account__pb2.ListActiveSessionsReq.SerializeToString,
                response_deserializer=account__pb2.ListActiveSessionsRes.FromString,
                )
        self.LogOutSession = channel.unary_unary(
                '/org.couchers.api.account.Account/LogOutSession',
                request_serializer=account__pb2.LogOutSessionReq.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.LogOutOtherSessions = channel.unary_unary(
                '/org.couchers.api.account.Account/LogOutOtherSessions',
                request_serializer=account__pb2.LogOutOtherSessionsReq.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.SetProfilePublicVisibility = channel.unary_unary(
                '/org.couchers.api.account.Account/SetProfilePublicVisibility',
                request_serializer=account__pb2.SetProfilePublicVisibilityReq.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.CreateInviteCode = channel.unary_unary(
                '/org.couchers.api.account.Account/CreateInviteCode',
                request_serializer=account__pb2.CreateInviteCodeReq.SerializeToString,
                response_deserializer=account__pb2.CreateInviteCodeRes.FromString,
                )
        self.DisableInviteCode = channel.unary_unary(
                '/org.couchers.api.account.Account/DisableInviteCode',
                request_serializer=account__pb2.DisableInviteCodeReq.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ListInviteCodes = channel.unary_unary(
                '/org.couchers.api.account.Account/ListInviteCodes',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=account__pb2.ListInviteCodesRes.FromString,
                )
        self.GetReminders = channel.unary_unary(
                '/org.couchers.api.account.Account/GetReminders',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=account__pb2.GetRemindersRes.FromString,
                )
        self.GetMyVolunteerInfo = channel.unary_unary(
                '/org.couchers.api.account.Account/GetMyVolunteerInfo',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=account__pb2.GetMyVolunteerInfoRes.FromString,
                )
        self.UpdateMyVolunteerInfo = channel.unary_unary(
                '/org.couchers.api.account.Account/UpdateMyVolunteerInfo',
                request_serializer=account__pb2.UpdateMyVolunteerInfoReq.SerializeToString,
                response_deserializer=account__pb2.GetMyVolunteerInfoRes.FromString,
                )


class AccountServicer(object):
    """Missing associated documentation comment in .proto file."""

    def GetAccountInfo(self, request, context):
        """account management APIs
        Get information about the user's account
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ChangePasswordV2(self, request, context):
        """Change the user's password
        we will send and an email to the user saying their password was changed
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ChangeEmailV2(self, request, context):
        """Change the user's email address
        We will send a notification email to the old email, and confirmation email to the new email
        Raises INVALID_ARGUMENT if password is too small, too large, insecure, wrong or not supplied.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetContributorFormInfo(self, request, context):
        """Returns info related to filling out the contributor form
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def FillContributorForm(self, request, context):
        """Fill the contributor form; this can be done multiple times
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ChangeLanguagePreference(self, request, context):
        """Changes the user's interface language
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ChangePhone(self, request, context):
        """Set/Change/Remove phone number. An verification sms with a 6-digit code will be sent out,
        And returned in a call to in VerifyPhone() to complete the phone number change.
        An INVALID_ARGUMENT is returned if the phone number is not formatted according to E.164.
        A RESOURCE_EXHAUSTED error code indicates that you have done too many changes lately.
        An UNIMPLEMENTED error code indicates that sms to your operator is not supported.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def VerifyPhone(self, request, context):
        """Enter the code you got in the sms. Other accounts using the same phone number will
        lose their verification status.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def InitiateStrongVerification(self, request, context):
        """Initiates a strong verification (passport read)
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetStrongVerificationAttemptStatus(self, request, context):
        """Gets the status of a strong verification attempt
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteStrongVerificationData(self, request, context):
        """Deletes full SV data (but not minimal data), see the ToS
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteAccount(self, request, context):
        """Sends email with confirmation link containing token to delete account
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListModNotes(self, request, context):
        """Lists all the user's mod notes: only ack'd ones because otherwise the user is jailed
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListActiveSessions(self, request, context):
        """Lists all the user's current sessions
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def LogOutSession(self, request, context):
        """Logs the user out of the given session, cannot be current one
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def LogOutOtherSessions(self, request, context):
        """Logs the user out of all other sessions except this one
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetProfilePublicVisibility(self, request, context):
        """Set what info is shown to logged-out users
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateInviteCode(self, request, context):
        """Creates a new unique invite code for the current user
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DisableInviteCode(self, request, context):
        """Disables the given invite code created by the user
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListInviteCodes(self, request, context):
        """Lists all invite codes created by the user, with usage count
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetReminders(self, request, context):
        """Reminders to be shown on dashboard for things the user should do
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetMyVolunteerInfo(self, request, context):
        """Returns info about the current user's volunteer status if they are volunteer
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateMyVolunteerInfo(self, request, context):
        """Updates the current user's volunteer status if they are volunteer
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_AccountServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'GetAccountInfo': grpc.unary_unary_rpc_method_handler(
                    servicer.GetAccountInfo,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=account__pb2.GetAccountInfoRes.SerializeToString,
            ),
            'ChangePasswordV2': grpc.unary_unary_rpc_method_handler(
                    servicer.ChangePasswordV2,
                    request_deserializer=account__pb2.ChangePasswordV2Req.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ChangeEmailV2': grpc.unary_unary_rpc_method_handler(
                    servicer.ChangeEmailV2,
                    request_deserializer=account__pb2.ChangeEmailV2Req.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'GetContributorFormInfo': grpc.unary_unary_rpc_method_handler(
                    servicer.GetContributorFormInfo,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=account__pb2.GetContributorFormInfoRes.SerializeToString,
            ),
            'FillContributorForm': grpc.unary_unary_rpc_method_handler(
                    servicer.FillContributorForm,
                    request_deserializer=account__pb2.FillContributorFormReq.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ChangeLanguagePreference': grpc.unary_unary_rpc_method_handler(
                    servicer.ChangeLanguagePreference,
                    request_deserializer=account__pb2.ChangeLanguagePreferenceReq.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ChangePhone': grpc.unary_unary_rpc_method_handler(
                    servicer.ChangePhone,
                    request_deserializer=account__pb2.ChangePhoneReq.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'VerifyPhone': grpc.unary_unary_rpc_method_handler(
                    servicer.VerifyPhone,
                    request_deserializer=account__pb2.VerifyPhoneReq.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'InitiateStrongVerification': grpc.unary_unary_rpc_method_handler(
                    servicer.InitiateStrongVerification,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=account__pb2.InitiateStrongVerificationRes.SerializeToString,
            ),
            'GetStrongVerificationAttemptStatus': grpc.unary_unary_rpc_method_handler(
                    servicer.GetStrongVerificationAttemptStatus,
                    request_deserializer=account__pb2.GetStrongVerificationAttemptStatusReq.FromString,
                    response_serializer=account__pb2.GetStrongVerificationAttemptStatusRes.SerializeToString,
            ),
            'DeleteStrongVerificationData': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteStrongVerificationData,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'DeleteAccount': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteAccount,
                    request_deserializer=account__pb2.DeleteAccountReq.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListModNotes': grpc.unary_unary_rpc_method_handler(
                    servicer.ListModNotes,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=account__pb2.ListModNotesRes.SerializeToString,
            ),
            'ListActiveSessions': grpc.unary_unary_rpc_method_handler(
                    servicer.ListActiveSessions,
                    request_deserializer=account__pb2.ListActiveSessionsReq.FromString,
                    response_serializer=account__pb2.ListActiveSessionsRes.SerializeToString,
            ),
            'LogOutSession': grpc.unary_unary_rpc_method_handler(
                    servicer.LogOutSession,
                    request_deserializer=account__pb2.LogOutSessionReq.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'LogOutOtherSessions': grpc.unary_unary_rpc_method_handler(
                    servicer.LogOutOtherSessions,
                    request_deserializer=account__pb2.LogOutOtherSessionsReq.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'SetProfilePublicVisibility': grpc.unary_unary_rpc_method_handler(
                    servicer.SetProfilePublicVisibility,
                    request_deserializer=account__pb2.SetProfilePublicVisibilityReq.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'CreateInviteCode': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateInviteCode,
                    request_deserializer=account__pb2.CreateInviteCodeReq.FromString,
                    response_serializer=account__pb2.CreateInviteCodeRes.SerializeToString,
            ),
            'DisableInviteCode': grpc.unary_unary_rpc_method_handler(
                    servicer.DisableInviteCode,
                    request_deserializer=account__pb2.DisableInviteCodeReq.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ListInviteCodes': grpc.unary_unary_rpc_method_handler(
                    servicer.ListInviteCodes,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=account__pb2.ListInviteCodesRes.SerializeToString,
            ),
            'GetReminders': grpc.unary_unary_rpc_method_handler(
                    servicer.GetReminders,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=account__pb2.GetRemindersRes.SerializeToString,
            ),
            'GetMyVolunteerInfo': grpc.unary_unary_rpc_method_handler(
                    servicer.GetMyVolunteerInfo,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=account__pb2.GetMyVolunteerInfoRes.SerializeToString,
            ),
            'UpdateMyVolunteerInfo': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateMyVolunteerInfo,
                    request_deserializer=account__pb2.UpdateMyVolunteerInfoReq.FromString,
                    response_serializer=account__pb2.GetMyVolunteerInfoRes.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'org.couchers.api.account.Account', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class Account(object):
    """Missing associated documentation comment in .proto file."""

    @staticmethod
    def GetAccountInfo(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/GetAccountInfo',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            account__pb2.GetAccountInfoRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ChangePasswordV2(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/ChangePasswordV2',
            account__pb2.ChangePasswordV2Req.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ChangeEmailV2(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/ChangeEmailV2',
            account__pb2.ChangeEmailV2Req.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetContributorFormInfo(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/GetContributorFormInfo',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            account__pb2.GetContributorFormInfoRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def FillContributorForm(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/FillContributorForm',
            account__pb2.FillContributorFormReq.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ChangeLanguagePreference(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/ChangeLanguagePreference',
            account__pb2.ChangeLanguagePreferenceReq.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ChangePhone(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/ChangePhone',
            account__pb2.ChangePhoneReq.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def VerifyPhone(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/VerifyPhone',
            account__pb2.VerifyPhoneReq.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def InitiateStrongVerification(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/InitiateStrongVerification',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            account__pb2.InitiateStrongVerificationRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetStrongVerificationAttemptStatus(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/GetStrongVerificationAttemptStatus',
            account__pb2.GetStrongVerificationAttemptStatusReq.SerializeToString,
            account__pb2.GetStrongVerificationAttemptStatusRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteStrongVerificationData(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/DeleteStrongVerificationData',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteAccount(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/DeleteAccount',
            account__pb2.DeleteAccountReq.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListModNotes(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/ListModNotes',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            account__pb2.ListModNotesRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListActiveSessions(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/ListActiveSessions',
            account__pb2.ListActiveSessionsReq.SerializeToString,
            account__pb2.ListActiveSessionsRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def LogOutSession(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/LogOutSession',
            account__pb2.LogOutSessionReq.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def LogOutOtherSessions(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/LogOutOtherSessions',
            account__pb2.LogOutOtherSessionsReq.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetProfilePublicVisibility(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/SetProfilePublicVisibility',
            account__pb2.SetProfilePublicVisibilityReq.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateInviteCode(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/CreateInviteCode',
            account__pb2.CreateInviteCodeReq.SerializeToString,
            account__pb2.CreateInviteCodeRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DisableInviteCode(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/DisableInviteCode',
            account__pb2.DisableInviteCodeReq.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListInviteCodes(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/ListInviteCodes',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            account__pb2.ListInviteCodesRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetReminders(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/GetReminders',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            account__pb2.GetRemindersRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetMyVolunteerInfo(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/GetMyVolunteerInfo',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            account__pb2.GetMyVolunteerInfoRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateMyVolunteerInfo(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/org.couchers.api.account.Account/UpdateMyVolunteerInfo',
            account__pb2.UpdateMyVolunteerInfoReq.SerializeToString,
            account__pb2.GetMyVolunteerInfoRes.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
