"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import google.protobuf.struct_pb2
import typing

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class AssetCreateRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    OWNER_ID_FIELD_NUMBER: builtins.int
    ASSET_ID_FIELD_NUMBER: builtins.int
    IS_ACTIVE_FIELD_NUMBER: builtins.int
    EXPIRE_DATE_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    ASSET_NAME_FIELD_NUMBER: builtins.int
    EXTRA_DATA_FIELD_NUMBER: builtins.int
    INSTALLMENT_IDENTIFIER_FIELD_NUMBER: builtins.int
    REGISTRATION_COMPLETED_FIELD_NUMBER: builtins.int
    owner_id: builtins.str
    asset_id: builtins.str
    is_active: builtins.bool
    expire_date: builtins.str
    type: builtins.str
    asset_name: builtins.str
    installment_identifier: builtins.str
    registration_completed: builtins.bool
    @property
    def extra_data(self) -> google.protobuf.struct_pb2.Struct: ...
    def __init__(
        self,
        *,
        owner_id: builtins.str = ...,
        asset_id: builtins.str = ...,
        is_active: builtins.bool | None = ...,
        expire_date: builtins.str | None = ...,
        type: builtins.str = ...,
        asset_name: builtins.str = ...,
        extra_data: google.protobuf.struct_pb2.Struct | None = ...,
        installment_identifier: builtins.str | None = ...,
        registration_completed: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_expire_date", b"_expire_date", "_extra_data", b"_extra_data", "_installment_identifier", b"_installment_identifier", "_is_active", b"_is_active", "_registration_completed", b"_registration_completed", "expire_date", b"expire_date", "extra_data", b"extra_data", "installment_identifier", b"installment_identifier", "is_active", b"is_active", "registration_completed", b"registration_completed"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_expire_date", b"_expire_date", "_extra_data", b"_extra_data", "_installment_identifier", b"_installment_identifier", "_is_active", b"_is_active", "_registration_completed", b"_registration_completed", "asset_id", b"asset_id", "asset_name", b"asset_name", "expire_date", b"expire_date", "extra_data", b"extra_data", "installment_identifier", b"installment_identifier", "is_active", b"is_active", "owner_id", b"owner_id", "registration_completed", b"registration_completed", "type", b"type"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_expire_date", b"_expire_date"]) -> typing.Literal["expire_date"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_extra_data", b"_extra_data"]) -> typing.Literal["extra_data"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_installment_identifier", b"_installment_identifier"]) -> typing.Literal["installment_identifier"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_is_active", b"_is_active"]) -> typing.Literal["is_active"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_registration_completed", b"_registration_completed"]) -> typing.Literal["registration_completed"] | None: ...

global___AssetCreateRequest = AssetCreateRequest

@typing.final
class CheckTopupEligibilityRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    OWNER_ID_FIELD_NUMBER: builtins.int
    PACKAGE_FIELD_NUMBER: builtins.int
    owner_id: builtins.str
    package: builtins.bool
    def __init__(
        self,
        *,
        owner_id: builtins.str = ...,
        package: builtins.bool = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["owner_id", b"owner_id", "package", b"package"]) -> None: ...

global___CheckTopupEligibilityRequest = CheckTopupEligibilityRequest

@typing.final
class EducationalExperienceRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PREVIOUS_COURSES_FIELD_NUMBER: builtins.int
    FEEDBACK_FIELD_NUMBER: builtins.int
    LEARNING_CHALLENGES_FIELD_NUMBER: builtins.int
    COURSE_SELECTION_CRITERIA_FIELD_NUMBER: builtins.int
    previous_courses: builtins.str
    feedback: builtins.str
    learning_challenges: builtins.str
    course_selection_criteria: builtins.str
    def __init__(
        self,
        *,
        previous_courses: builtins.str | None = ...,
        feedback: builtins.str | None = ...,
        learning_challenges: builtins.str | None = ...,
        course_selection_criteria: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_course_selection_criteria", b"_course_selection_criteria", "_feedback", b"_feedback", "_learning_challenges", b"_learning_challenges", "_previous_courses", b"_previous_courses", "course_selection_criteria", b"course_selection_criteria", "feedback", b"feedback", "learning_challenges", b"learning_challenges", "previous_courses", b"previous_courses"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_course_selection_criteria", b"_course_selection_criteria", "_feedback", b"_feedback", "_learning_challenges", b"_learning_challenges", "_previous_courses", b"_previous_courses", "course_selection_criteria", b"course_selection_criteria", "feedback", b"feedback", "learning_challenges", b"learning_challenges", "previous_courses", b"previous_courses"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_course_selection_criteria", b"_course_selection_criteria"]) -> typing.Literal["course_selection_criteria"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_feedback", b"_feedback"]) -> typing.Literal["feedback"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_learning_challenges", b"_learning_challenges"]) -> typing.Literal["learning_challenges"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_previous_courses", b"_previous_courses"]) -> typing.Literal["previous_courses"] | None: ...

global___EducationalExperienceRequest = EducationalExperienceRequest

@typing.final
class EducationalExperienceResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PREVIOUS_COURSES_FIELD_NUMBER: builtins.int
    FEEDBACK_FIELD_NUMBER: builtins.int
    LEARNING_CHALLENGES_FIELD_NUMBER: builtins.int
    COURSE_SELECTION_CRITERIA_FIELD_NUMBER: builtins.int
    previous_courses: builtins.str
    feedback: builtins.str
    learning_challenges: builtins.str
    course_selection_criteria: builtins.str
    def __init__(
        self,
        *,
        previous_courses: builtins.str | None = ...,
        feedback: builtins.str | None = ...,
        learning_challenges: builtins.str | None = ...,
        course_selection_criteria: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_course_selection_criteria", b"_course_selection_criteria", "_feedback", b"_feedback", "_learning_challenges", b"_learning_challenges", "_previous_courses", b"_previous_courses", "course_selection_criteria", b"course_selection_criteria", "feedback", b"feedback", "learning_challenges", b"learning_challenges", "previous_courses", b"previous_courses"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_course_selection_criteria", b"_course_selection_criteria", "_feedback", b"_feedback", "_learning_challenges", b"_learning_challenges", "_previous_courses", b"_previous_courses", "course_selection_criteria", b"course_selection_criteria", "feedback", b"feedback", "learning_challenges", b"learning_challenges", "previous_courses", b"previous_courses"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_course_selection_criteria", b"_course_selection_criteria"]) -> typing.Literal["course_selection_criteria"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_feedback", b"_feedback"]) -> typing.Literal["feedback"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_learning_challenges", b"_learning_challenges"]) -> typing.Literal["learning_challenges"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_previous_courses", b"_previous_courses"]) -> typing.Literal["previous_courses"] | None: ...

global___EducationalExperienceResponse = EducationalExperienceResponse

@typing.final
class GoalRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COURSE_DISCOVERY_METHOD_FIELD_NUMBER: builtins.int
    COURSE_PARTICIPATION_GOAL_FIELD_NUMBER: builtins.int
    DAILY_STUDY_HOURS_FIELD_NUMBER: builtins.int
    PREFERRED_DEVICE_FIELD_NUMBER: builtins.int
    PREFERRED_LEARNING_FORMAT_FIELD_NUMBER: builtins.int
    course_discovery_method: builtins.str
    course_participation_goal: builtins.str
    daily_study_hours: builtins.str
    preferred_device: builtins.str
    preferred_learning_format: builtins.str
    def __init__(
        self,
        *,
        course_discovery_method: builtins.str | None = ...,
        course_participation_goal: builtins.str | None = ...,
        daily_study_hours: builtins.str | None = ...,
        preferred_device: builtins.str | None = ...,
        preferred_learning_format: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_course_discovery_method", b"_course_discovery_method", "_course_participation_goal", b"_course_participation_goal", "_daily_study_hours", b"_daily_study_hours", "_preferred_device", b"_preferred_device", "_preferred_learning_format", b"_preferred_learning_format", "course_discovery_method", b"course_discovery_method", "course_participation_goal", b"course_participation_goal", "daily_study_hours", b"daily_study_hours", "preferred_device", b"preferred_device", "preferred_learning_format", b"preferred_learning_format"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_course_discovery_method", b"_course_discovery_method", "_course_participation_goal", b"_course_participation_goal", "_daily_study_hours", b"_daily_study_hours", "_preferred_device", b"_preferred_device", "_preferred_learning_format", b"_preferred_learning_format", "course_discovery_method", b"course_discovery_method", "course_participation_goal", b"course_participation_goal", "daily_study_hours", b"daily_study_hours", "preferred_device", b"preferred_device", "preferred_learning_format", b"preferred_learning_format"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_course_discovery_method", b"_course_discovery_method"]) -> typing.Literal["course_discovery_method"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_course_participation_goal", b"_course_participation_goal"]) -> typing.Literal["course_participation_goal"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_daily_study_hours", b"_daily_study_hours"]) -> typing.Literal["daily_study_hours"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_preferred_device", b"_preferred_device"]) -> typing.Literal["preferred_device"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_preferred_learning_format", b"_preferred_learning_format"]) -> typing.Literal["preferred_learning_format"] | None: ...

global___GoalRequest = GoalRequest

@typing.final
class GoalResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COURSE_DISCOVERY_METHOD_FIELD_NUMBER: builtins.int
    COURSE_PARTICIPATION_GOAL_FIELD_NUMBER: builtins.int
    DAILY_STUDY_HOURS_FIELD_NUMBER: builtins.int
    PREFERRED_DEVICE_FIELD_NUMBER: builtins.int
    PREFERRED_LEARNING_FORMAT_FIELD_NUMBER: builtins.int
    course_discovery_method: builtins.str
    course_participation_goal: builtins.str
    daily_study_hours: builtins.str
    preferred_device: builtins.str
    preferred_learning_format: builtins.str
    def __init__(
        self,
        *,
        course_discovery_method: builtins.str | None = ...,
        course_participation_goal: builtins.str | None = ...,
        daily_study_hours: builtins.str | None = ...,
        preferred_device: builtins.str | None = ...,
        preferred_learning_format: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_course_discovery_method", b"_course_discovery_method", "_course_participation_goal", b"_course_participation_goal", "_daily_study_hours", b"_daily_study_hours", "_preferred_device", b"_preferred_device", "_preferred_learning_format", b"_preferred_learning_format", "course_discovery_method", b"course_discovery_method", "course_participation_goal", b"course_participation_goal", "daily_study_hours", b"daily_study_hours", "preferred_device", b"preferred_device", "preferred_learning_format", b"preferred_learning_format"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_course_discovery_method", b"_course_discovery_method", "_course_participation_goal", b"_course_participation_goal", "_daily_study_hours", b"_daily_study_hours", "_preferred_device", b"_preferred_device", "_preferred_learning_format", b"_preferred_learning_format", "course_discovery_method", b"course_discovery_method", "course_participation_goal", b"course_participation_goal", "daily_study_hours", b"daily_study_hours", "preferred_device", b"preferred_device", "preferred_learning_format", b"preferred_learning_format"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_course_discovery_method", b"_course_discovery_method"]) -> typing.Literal["course_discovery_method"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_course_participation_goal", b"_course_participation_goal"]) -> typing.Literal["course_participation_goal"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_daily_study_hours", b"_daily_study_hours"]) -> typing.Literal["daily_study_hours"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_preferred_device", b"_preferred_device"]) -> typing.Literal["preferred_device"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_preferred_learning_format", b"_preferred_learning_format"]) -> typing.Literal["preferred_learning_format"] | None: ...

global___GoalResponse = GoalResponse

@typing.final
class ListAssetRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    OWNER_ID_FIELD_NUMBER: builtins.int
    owner_id: builtins.str
    def __init__(
        self,
        *,
        owner_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["owner_id", b"owner_id"]) -> None: ...

global___ListAssetRequest = ListAssetRequest

@typing.final
class ProfileRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    JOB_FIELD_NUMBER: builtins.int
    LAST_EDUCATION_DEGREE_FIELD_NUMBER: builtins.int
    MAJOR_FIELD_NUMBER: builtins.int
    FATHER_NAME_FIELD_NUMBER: builtins.int
    FIRST_NAME_EN_FIELD_NUMBER: builtins.int
    LAST_NAME_EN_FIELD_NUMBER: builtins.int
    MARITAL_STATUS_FIELD_NUMBER: builtins.int
    GENDER_FIELD_NUMBER: builtins.int
    MOBILE2_FIELD_NUMBER: builtins.int
    LANDLINE_FIELD_NUMBER: builtins.int
    EMAIL2_FIELD_NUMBER: builtins.int
    COUNTRY_FIELD_NUMBER: builtins.int
    PROVINCE_FIELD_NUMBER: builtins.int
    CITY_FIELD_NUMBER: builtins.int
    PROGRAMMING_INTERESTS_FIELD_NUMBER: builtins.int
    job: builtins.str
    last_education_degree: builtins.str
    major: builtins.str
    father_name: builtins.str
    first_name_en: builtins.str
    last_name_en: builtins.str
    marital_status: builtins.str
    gender: builtins.str
    mobile2: builtins.str
    landline: builtins.str
    email2: builtins.str
    country: builtins.str
    province: builtins.str
    city: builtins.str
    programming_interests: builtins.str
    def __init__(
        self,
        *,
        job: builtins.str | None = ...,
        last_education_degree: builtins.str | None = ...,
        major: builtins.str | None = ...,
        father_name: builtins.str | None = ...,
        first_name_en: builtins.str | None = ...,
        last_name_en: builtins.str | None = ...,
        marital_status: builtins.str | None = ...,
        gender: builtins.str | None = ...,
        mobile2: builtins.str | None = ...,
        landline: builtins.str | None = ...,
        email2: builtins.str | None = ...,
        country: builtins.str | None = ...,
        province: builtins.str | None = ...,
        city: builtins.str | None = ...,
        programming_interests: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_city", b"_city", "_country", b"_country", "_email2", b"_email2", "_father_name", b"_father_name", "_first_name_en", b"_first_name_en", "_gender", b"_gender", "_job", b"_job", "_landline", b"_landline", "_last_education_degree", b"_last_education_degree", "_last_name_en", b"_last_name_en", "_major", b"_major", "_marital_status", b"_marital_status", "_mobile2", b"_mobile2", "_programming_interests", b"_programming_interests", "_province", b"_province", "city", b"city", "country", b"country", "email2", b"email2", "father_name", b"father_name", "first_name_en", b"first_name_en", "gender", b"gender", "job", b"job", "landline", b"landline", "last_education_degree", b"last_education_degree", "last_name_en", b"last_name_en", "major", b"major", "marital_status", b"marital_status", "mobile2", b"mobile2", "programming_interests", b"programming_interests", "province", b"province"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_city", b"_city", "_country", b"_country", "_email2", b"_email2", "_father_name", b"_father_name", "_first_name_en", b"_first_name_en", "_gender", b"_gender", "_job", b"_job", "_landline", b"_landline", "_last_education_degree", b"_last_education_degree", "_last_name_en", b"_last_name_en", "_major", b"_major", "_marital_status", b"_marital_status", "_mobile2", b"_mobile2", "_programming_interests", b"_programming_interests", "_province", b"_province", "city", b"city", "country", b"country", "email2", b"email2", "father_name", b"father_name", "first_name_en", b"first_name_en", "gender", b"gender", "job", b"job", "landline", b"landline", "last_education_degree", b"last_education_degree", "last_name_en", b"last_name_en", "major", b"major", "marital_status", b"marital_status", "mobile2", b"mobile2", "programming_interests", b"programming_interests", "province", b"province"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_city", b"_city"]) -> typing.Literal["city"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_country", b"_country"]) -> typing.Literal["country"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_email2", b"_email2"]) -> typing.Literal["email2"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_father_name", b"_father_name"]) -> typing.Literal["father_name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_first_name_en", b"_first_name_en"]) -> typing.Literal["first_name_en"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_gender", b"_gender"]) -> typing.Literal["gender"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_job", b"_job"]) -> typing.Literal["job"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_landline", b"_landline"]) -> typing.Literal["landline"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_last_education_degree", b"_last_education_degree"]) -> typing.Literal["last_education_degree"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_last_name_en", b"_last_name_en"]) -> typing.Literal["last_name_en"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_major", b"_major"]) -> typing.Literal["major"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_marital_status", b"_marital_status"]) -> typing.Literal["marital_status"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_mobile2", b"_mobile2"]) -> typing.Literal["mobile2"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_programming_interests", b"_programming_interests"]) -> typing.Literal["programming_interests"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_province", b"_province"]) -> typing.Literal["province"] | None: ...

global___ProfileRequest = ProfileRequest

@typing.final
class ProfileResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    JOB_FIELD_NUMBER: builtins.int
    LAST_EDUCATION_DEGREE_FIELD_NUMBER: builtins.int
    MAJOR_FIELD_NUMBER: builtins.int
    FATHER_NAME_FIELD_NUMBER: builtins.int
    FIRST_NAME_EN_FIELD_NUMBER: builtins.int
    LAST_NAME_EN_FIELD_NUMBER: builtins.int
    MARITAL_STATUS_FIELD_NUMBER: builtins.int
    GENDER_FIELD_NUMBER: builtins.int
    MOBILE2_FIELD_NUMBER: builtins.int
    LANDLINE_FIELD_NUMBER: builtins.int
    EMAIL2_FIELD_NUMBER: builtins.int
    COUNTRY_FIELD_NUMBER: builtins.int
    PROVINCE_FIELD_NUMBER: builtins.int
    CITY_FIELD_NUMBER: builtins.int
    PROGRAMMING_INTERESTS_FIELD_NUMBER: builtins.int
    job: builtins.str
    last_education_degree: builtins.str
    major: builtins.str
    father_name: builtins.str
    first_name_en: builtins.str
    last_name_en: builtins.str
    marital_status: builtins.str
    gender: builtins.str
    mobile2: builtins.str
    landline: builtins.str
    email2: builtins.str
    country: builtins.str
    province: builtins.str
    city: builtins.str
    programming_interests: builtins.str
    def __init__(
        self,
        *,
        job: builtins.str | None = ...,
        last_education_degree: builtins.str | None = ...,
        major: builtins.str | None = ...,
        father_name: builtins.str | None = ...,
        first_name_en: builtins.str | None = ...,
        last_name_en: builtins.str | None = ...,
        marital_status: builtins.str | None = ...,
        gender: builtins.str | None = ...,
        mobile2: builtins.str | None = ...,
        landline: builtins.str | None = ...,
        email2: builtins.str | None = ...,
        country: builtins.str | None = ...,
        province: builtins.str | None = ...,
        city: builtins.str | None = ...,
        programming_interests: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_city", b"_city", "_country", b"_country", "_email2", b"_email2", "_father_name", b"_father_name", "_first_name_en", b"_first_name_en", "_gender", b"_gender", "_job", b"_job", "_landline", b"_landline", "_last_education_degree", b"_last_education_degree", "_last_name_en", b"_last_name_en", "_major", b"_major", "_marital_status", b"_marital_status", "_mobile2", b"_mobile2", "_programming_interests", b"_programming_interests", "_province", b"_province", "city", b"city", "country", b"country", "email2", b"email2", "father_name", b"father_name", "first_name_en", b"first_name_en", "gender", b"gender", "job", b"job", "landline", b"landline", "last_education_degree", b"last_education_degree", "last_name_en", b"last_name_en", "major", b"major", "marital_status", b"marital_status", "mobile2", b"mobile2", "programming_interests", b"programming_interests", "province", b"province"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_city", b"_city", "_country", b"_country", "_email2", b"_email2", "_father_name", b"_father_name", "_first_name_en", b"_first_name_en", "_gender", b"_gender", "_job", b"_job", "_landline", b"_landline", "_last_education_degree", b"_last_education_degree", "_last_name_en", b"_last_name_en", "_major", b"_major", "_marital_status", b"_marital_status", "_mobile2", b"_mobile2", "_programming_interests", b"_programming_interests", "_province", b"_province", "city", b"city", "country", b"country", "email2", b"email2", "father_name", b"father_name", "first_name_en", b"first_name_en", "gender", b"gender", "job", b"job", "landline", b"landline", "last_education_degree", b"last_education_degree", "last_name_en", b"last_name_en", "major", b"major", "marital_status", b"marital_status", "mobile2", b"mobile2", "programming_interests", b"programming_interests", "province", b"province"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_city", b"_city"]) -> typing.Literal["city"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_country", b"_country"]) -> typing.Literal["country"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_email2", b"_email2"]) -> typing.Literal["email2"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_father_name", b"_father_name"]) -> typing.Literal["father_name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_first_name_en", b"_first_name_en"]) -> typing.Literal["first_name_en"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_gender", b"_gender"]) -> typing.Literal["gender"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_job", b"_job"]) -> typing.Literal["job"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_landline", b"_landline"]) -> typing.Literal["landline"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_last_education_degree", b"_last_education_degree"]) -> typing.Literal["last_education_degree"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_last_name_en", b"_last_name_en"]) -> typing.Literal["last_name_en"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_major", b"_major"]) -> typing.Literal["major"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_marital_status", b"_marital_status"]) -> typing.Literal["marital_status"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_mobile2", b"_mobile2"]) -> typing.Literal["mobile2"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_programming_interests", b"_programming_interests"]) -> typing.Literal["programming_interests"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_province", b"_province"]) -> typing.Literal["province"] | None: ...

global___ProfileResponse = ProfileResponse

@typing.final
class RegisterInDarsmancoRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    UUID_ID_FIELD_NUMBER: builtins.int
    uuid_id: builtins.str
    def __init__(
        self,
        *,
        uuid_id: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_uuid_id", b"_uuid_id", "uuid_id", b"uuid_id"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_uuid_id", b"_uuid_id", "uuid_id", b"uuid_id"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["_uuid_id", b"_uuid_id"]) -> typing.Literal["uuid_id"] | None: ...

global___RegisterInDarsmancoRequest = RegisterInDarsmancoRequest

@typing.final
class Response(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CODE_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    code: builtins.str
    message: builtins.str
    @property
    def data(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.struct_pb2.Struct]: ...
    def __init__(
        self,
        *,
        code: builtins.str | None = ...,
        message: builtins.str | None = ...,
        data: collections.abc.Iterable[google.protobuf.struct_pb2.Struct] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_code", b"_code", "_message", b"_message", "code", b"code", "message", b"message"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_code", b"_code", "_message", b"_message", "code", b"code", "data", b"data", "message", b"message"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_code", b"_code"]) -> typing.Literal["code"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_message", b"_message"]) -> typing.Literal["message"] | None: ...

global___Response = Response

@typing.final
class SkillRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PROBLEM_SOLVING_FIELD_NUMBER: builtins.int
    TECHNOLOGY_FAMILIARITY_FIELD_NUMBER: builtins.int
    problem_solving: builtins.int
    technology_familiarity: builtins.int
    def __init__(
        self,
        *,
        problem_solving: builtins.int | None = ...,
        technology_familiarity: builtins.int | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_problem_solving", b"_problem_solving", "_technology_familiarity", b"_technology_familiarity", "problem_solving", b"problem_solving", "technology_familiarity", b"technology_familiarity"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_problem_solving", b"_problem_solving", "_technology_familiarity", b"_technology_familiarity", "problem_solving", b"problem_solving", "technology_familiarity", b"technology_familiarity"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_problem_solving", b"_problem_solving"]) -> typing.Literal["problem_solving"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_technology_familiarity", b"_technology_familiarity"]) -> typing.Literal["technology_familiarity"] | None: ...

global___SkillRequest = SkillRequest

@typing.final
class SkillResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PROBLEM_SOLVING_FIELD_NUMBER: builtins.int
    TECHNOLOGY_FAMILIARITY_FIELD_NUMBER: builtins.int
    problem_solving: builtins.int
    technology_familiarity: builtins.int
    def __init__(
        self,
        *,
        problem_solving: builtins.int | None = ...,
        technology_familiarity: builtins.int | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_problem_solving", b"_problem_solving", "_technology_familiarity", b"_technology_familiarity", "problem_solving", b"problem_solving", "technology_familiarity", b"technology_familiarity"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_problem_solving", b"_problem_solving", "_technology_familiarity", b"_technology_familiarity", "problem_solving", b"problem_solving", "technology_familiarity", b"technology_familiarity"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_problem_solving", b"_problem_solving"]) -> typing.Literal["problem_solving"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_technology_familiarity", b"_technology_familiarity"]) -> typing.Literal["technology_familiarity"] | None: ...

global___SkillResponse = SkillResponse

@typing.final
class SocialMediaRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACTIVE_SOCIAL_MEDIA_FIELD_NUMBER: builtins.int
    NOTIFICATION_PREFERENCE_FIELD_NUMBER: builtins.int
    ONLINE_PROFILE_FIELD_NUMBER: builtins.int
    active_social_media: builtins.str
    notification_preference: builtins.str
    online_profile: builtins.str
    def __init__(
        self,
        *,
        active_social_media: builtins.str | None = ...,
        notification_preference: builtins.str | None = ...,
        online_profile: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_active_social_media", b"_active_social_media", "_notification_preference", b"_notification_preference", "_online_profile", b"_online_profile", "active_social_media", b"active_social_media", "notification_preference", b"notification_preference", "online_profile", b"online_profile"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_active_social_media", b"_active_social_media", "_notification_preference", b"_notification_preference", "_online_profile", b"_online_profile", "active_social_media", b"active_social_media", "notification_preference", b"notification_preference", "online_profile", b"online_profile"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_active_social_media", b"_active_social_media"]) -> typing.Literal["active_social_media"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_notification_preference", b"_notification_preference"]) -> typing.Literal["notification_preference"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_online_profile", b"_online_profile"]) -> typing.Literal["online_profile"] | None: ...

global___SocialMediaRequest = SocialMediaRequest

@typing.final
class SocialMediaResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACTIVE_SOCIAL_MEDIA_FIELD_NUMBER: builtins.int
    NOTIFICATION_PREFERENCE_FIELD_NUMBER: builtins.int
    ONLINE_PROFILE_FIELD_NUMBER: builtins.int
    active_social_media: builtins.str
    notification_preference: builtins.str
    online_profile: builtins.str
    def __init__(
        self,
        *,
        active_social_media: builtins.str | None = ...,
        notification_preference: builtins.str | None = ...,
        online_profile: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_active_social_media", b"_active_social_media", "_notification_preference", b"_notification_preference", "_online_profile", b"_online_profile", "active_social_media", b"active_social_media", "notification_preference", b"notification_preference", "online_profile", b"online_profile"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_active_social_media", b"_active_social_media", "_notification_preference", b"_notification_preference", "_online_profile", b"_online_profile", "active_social_media", b"active_social_media", "notification_preference", b"notification_preference", "online_profile", b"online_profile"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_active_social_media", b"_active_social_media"]) -> typing.Literal["active_social_media"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_notification_preference", b"_notification_preference"]) -> typing.Literal["notification_preference"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_online_profile", b"_online_profile"]) -> typing.Literal["online_profile"] | None: ...

global___SocialMediaResponse = SocialMediaResponse

@typing.final
class SuggestionRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    QUESTIONS_OR_NOTES_FIELD_NUMBER: builtins.int
    VIP_INTEREST_FIELD_NUMBER: builtins.int
    FUTURE_COURSE_SUGGESTIONS_FIELD_NUMBER: builtins.int
    questions_or_notes: builtins.str
    vip_interest: builtins.bool
    future_course_suggestions: builtins.str
    def __init__(
        self,
        *,
        questions_or_notes: builtins.str | None = ...,
        vip_interest: builtins.bool | None = ...,
        future_course_suggestions: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_future_course_suggestions", b"_future_course_suggestions", "_questions_or_notes", b"_questions_or_notes", "_vip_interest", b"_vip_interest", "future_course_suggestions", b"future_course_suggestions", "questions_or_notes", b"questions_or_notes", "vip_interest", b"vip_interest"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_future_course_suggestions", b"_future_course_suggestions", "_questions_or_notes", b"_questions_or_notes", "_vip_interest", b"_vip_interest", "future_course_suggestions", b"future_course_suggestions", "questions_or_notes", b"questions_or_notes", "vip_interest", b"vip_interest"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_future_course_suggestions", b"_future_course_suggestions"]) -> typing.Literal["future_course_suggestions"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_questions_or_notes", b"_questions_or_notes"]) -> typing.Literal["questions_or_notes"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_vip_interest", b"_vip_interest"]) -> typing.Literal["vip_interest"] | None: ...

global___SuggestionRequest = SuggestionRequest

@typing.final
class SuggestionResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    QUESTIONS_OR_NOTES_FIELD_NUMBER: builtins.int
    VIP_INTEREST_FIELD_NUMBER: builtins.int
    FUTURE_COURSE_SUGGESTIONS_FIELD_NUMBER: builtins.int
    questions_or_notes: builtins.str
    vip_interest: builtins.bool
    future_course_suggestions: builtins.str
    def __init__(
        self,
        *,
        questions_or_notes: builtins.str | None = ...,
        vip_interest: builtins.bool | None = ...,
        future_course_suggestions: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_future_course_suggestions", b"_future_course_suggestions", "_questions_or_notes", b"_questions_or_notes", "_vip_interest", b"_vip_interest", "future_course_suggestions", b"future_course_suggestions", "questions_or_notes", b"questions_or_notes", "vip_interest", b"vip_interest"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_future_course_suggestions", b"_future_course_suggestions", "_questions_or_notes", b"_questions_or_notes", "_vip_interest", b"_vip_interest", "future_course_suggestions", b"future_course_suggestions", "questions_or_notes", b"questions_or_notes", "vip_interest", b"vip_interest"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_future_course_suggestions", b"_future_course_suggestions"]) -> typing.Literal["future_course_suggestions"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_questions_or_notes", b"_questions_or_notes"]) -> typing.Literal["questions_or_notes"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_vip_interest", b"_vip_interest"]) -> typing.Literal["vip_interest"] | None: ...

global___SuggestionResponse = SuggestionResponse

@typing.final
class UserBulkRetrieveRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    UUID_ID_FIELD_NUMBER: builtins.int
    @property
    def uuid_id(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        uuid_id: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["uuid_id", b"uuid_id"]) -> None: ...

global___UserBulkRetrieveRequest = UserBulkRetrieveRequest

@typing.final
class UserRetrieveRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    UUID_ID_FIELD_NUMBER: builtins.int
    SLUG_FIELD_NUMBER: builtins.int
    USER_TYPE_FIELD_NUMBER: builtins.int
    MOBILE_FIELD_NUMBER: builtins.int
    uuid_id: builtins.str
    slug: builtins.str
    user_type: builtins.str
    mobile: builtins.str
    def __init__(
        self,
        *,
        uuid_id: builtins.str | None = ...,
        slug: builtins.str | None = ...,
        user_type: builtins.str | None = ...,
        mobile: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_mobile", b"_mobile", "_slug", b"_slug", "_user_type", b"_user_type", "_uuid_id", b"_uuid_id", "mobile", b"mobile", "slug", b"slug", "user_type", b"user_type", "uuid_id", b"uuid_id"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_mobile", b"_mobile", "_slug", b"_slug", "_user_type", b"_user_type", "_uuid_id", b"_uuid_id", "mobile", b"mobile", "slug", b"slug", "user_type", b"user_type", "uuid_id", b"uuid_id"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_mobile", b"_mobile"]) -> typing.Literal["mobile"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_slug", b"_slug"]) -> typing.Literal["slug"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_user_type", b"_user_type"]) -> typing.Literal["user_type"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_uuid_id", b"_uuid_id"]) -> typing.Literal["uuid_id"] | None: ...

global___UserRetrieveRequest = UserRetrieveRequest

@typing.final
class UserUpdateRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EMAIL_FIELD_NUMBER: builtins.int
    ADDRESS_FIELD_NUMBER: builtins.int
    DATE_OF_BIRTH_FIELD_NUMBER: builtins.int
    ABOUT_FIELD_NUMBER: builtins.int
    NATIONAL_CODE_FIELD_NUMBER: builtins.int
    LAST_NAME_FIELD_NUMBER: builtins.int
    FIRST_NAME_FIELD_NUMBER: builtins.int
    PROFILE_FIELD_NUMBER: builtins.int
    UUID_ID_FIELD_NUMBER: builtins.int
    SKILL_FIELD_NUMBER: builtins.int
    WORK_EXPERIENCE_FIELD_NUMBER: builtins.int
    GOAL_FIELD_NUMBER: builtins.int
    EDUCATIONAL_EXPERIENCE_FIELD_NUMBER: builtins.int
    SOCIAL_MEDIA_FIELD_NUMBER: builtins.int
    SUGGESTION_FIELD_NUMBER: builtins.int
    email: builtins.str
    address: builtins.str
    date_of_birth: builtins.str
    about: builtins.str
    national_code: builtins.str
    last_name: builtins.str
    first_name: builtins.str
    uuid_id: builtins.str
    @property
    def profile(self) -> global___ProfileRequest: ...
    @property
    def skill(self) -> global___SkillRequest: ...
    @property
    def work_experience(self) -> global___WorkExperienceRequest: ...
    @property
    def goal(self) -> global___GoalRequest: ...
    @property
    def educational_experience(self) -> global___EducationalExperienceRequest: ...
    @property
    def social_media(self) -> global___SocialMediaRequest: ...
    @property
    def suggestion(self) -> global___SuggestionRequest: ...
    def __init__(
        self,
        *,
        email: builtins.str | None = ...,
        address: builtins.str | None = ...,
        date_of_birth: builtins.str | None = ...,
        about: builtins.str | None = ...,
        national_code: builtins.str | None = ...,
        last_name: builtins.str | None = ...,
        first_name: builtins.str | None = ...,
        profile: global___ProfileRequest | None = ...,
        uuid_id: builtins.str | None = ...,
        skill: global___SkillRequest | None = ...,
        work_experience: global___WorkExperienceRequest | None = ...,
        goal: global___GoalRequest | None = ...,
        educational_experience: global___EducationalExperienceRequest | None = ...,
        social_media: global___SocialMediaRequest | None = ...,
        suggestion: global___SuggestionRequest | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_about", b"_about", "_address", b"_address", "_date_of_birth", b"_date_of_birth", "_educational_experience", b"_educational_experience", "_email", b"_email", "_first_name", b"_first_name", "_goal", b"_goal", "_last_name", b"_last_name", "_national_code", b"_national_code", "_profile", b"_profile", "_skill", b"_skill", "_social_media", b"_social_media", "_suggestion", b"_suggestion", "_uuid_id", b"_uuid_id", "_work_experience", b"_work_experience", "about", b"about", "address", b"address", "date_of_birth", b"date_of_birth", "educational_experience", b"educational_experience", "email", b"email", "first_name", b"first_name", "goal", b"goal", "last_name", b"last_name", "national_code", b"national_code", "profile", b"profile", "skill", b"skill", "social_media", b"social_media", "suggestion", b"suggestion", "uuid_id", b"uuid_id", "work_experience", b"work_experience"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_about", b"_about", "_address", b"_address", "_date_of_birth", b"_date_of_birth", "_educational_experience", b"_educational_experience", "_email", b"_email", "_first_name", b"_first_name", "_goal", b"_goal", "_last_name", b"_last_name", "_national_code", b"_national_code", "_profile", b"_profile", "_skill", b"_skill", "_social_media", b"_social_media", "_suggestion", b"_suggestion", "_uuid_id", b"_uuid_id", "_work_experience", b"_work_experience", "about", b"about", "address", b"address", "date_of_birth", b"date_of_birth", "educational_experience", b"educational_experience", "email", b"email", "first_name", b"first_name", "goal", b"goal", "last_name", b"last_name", "national_code", b"national_code", "profile", b"profile", "skill", b"skill", "social_media", b"social_media", "suggestion", b"suggestion", "uuid_id", b"uuid_id", "work_experience", b"work_experience"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_about", b"_about"]) -> typing.Literal["about"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_address", b"_address"]) -> typing.Literal["address"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_date_of_birth", b"_date_of_birth"]) -> typing.Literal["date_of_birth"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_educational_experience", b"_educational_experience"]) -> typing.Literal["educational_experience"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_email", b"_email"]) -> typing.Literal["email"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_first_name", b"_first_name"]) -> typing.Literal["first_name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_goal", b"_goal"]) -> typing.Literal["goal"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_last_name", b"_last_name"]) -> typing.Literal["last_name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_national_code", b"_national_code"]) -> typing.Literal["national_code"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_profile", b"_profile"]) -> typing.Literal["profile"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_skill", b"_skill"]) -> typing.Literal["skill"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_social_media", b"_social_media"]) -> typing.Literal["social_media"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_suggestion", b"_suggestion"]) -> typing.Literal["suggestion"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_uuid_id", b"_uuid_id"]) -> typing.Literal["uuid_id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_work_experience", b"_work_experience"]) -> typing.Literal["work_experience"] | None: ...

global___UserUpdateRequest = UserUpdateRequest

@typing.final
class WalletPackageRetrieveRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    name: builtins.str
    def __init__(
        self,
        *,
        name: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["name", b"name"]) -> None: ...

global___WalletPackageRetrieveRequest = WalletPackageRetrieveRequest

@typing.final
class WalletRetrieveRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    OWNER_ID_FIELD_NUMBER: builtins.int
    owner_id: builtins.str
    def __init__(
        self,
        *,
        owner_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["owner_id", b"owner_id"]) -> None: ...

global___WalletRetrieveRequest = WalletRetrieveRequest

@typing.final
class WalletSpendRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    UUID_ID_FIELD_NUMBER: builtins.int
    AMOUNT_FIELD_NUMBER: builtins.int
    uuid_id: builtins.str
    amount: builtins.int
    def __init__(
        self,
        *,
        uuid_id: builtins.str = ...,
        amount: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["amount", b"amount", "uuid_id", b"uuid_id"]) -> None: ...

global___WalletSpendRequest = WalletSpendRequest

@typing.final
class WalletTopupRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AMOUNT_FIELD_NUMBER: builtins.int
    PACKAGE_NAME_FIELD_NUMBER: builtins.int
    UUID_ID_FIELD_NUMBER: builtins.int
    amount: builtins.int
    package_name: builtins.str
    uuid_id: builtins.str
    def __init__(
        self,
        *,
        amount: builtins.int | None = ...,
        package_name: builtins.str | None = ...,
        uuid_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_amount", b"_amount", "_package_name", b"_package_name", "amount", b"amount", "package_name", b"package_name"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_amount", b"_amount", "_package_name", b"_package_name", "amount", b"amount", "package_name", b"package_name", "uuid_id", b"uuid_id"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_amount", b"_amount"]) -> typing.Literal["amount"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_package_name", b"_package_name"]) -> typing.Literal["package_name"] | None: ...

global___WalletTopupRequest = WalletTopupRequest

@typing.final
class WorkExperienceRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PROGRAMMING_LANGUAGES_FIELD_NUMBER: builtins.int
    PROGRAMMING_TOOLS_FIELD_NUMBER: builtins.int
    SUMMARY_FIELD_NUMBER: builtins.int
    PROGRAMMING_LEVEL_FIELD_NUMBER: builtins.int
    programming_languages: builtins.str
    programming_tools: builtins.str
    summary: builtins.str
    programming_level: builtins.str
    def __init__(
        self,
        *,
        programming_languages: builtins.str | None = ...,
        programming_tools: builtins.str | None = ...,
        summary: builtins.str | None = ...,
        programming_level: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_programming_languages", b"_programming_languages", "_programming_level", b"_programming_level", "_programming_tools", b"_programming_tools", "_summary", b"_summary", "programming_languages", b"programming_languages", "programming_level", b"programming_level", "programming_tools", b"programming_tools", "summary", b"summary"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_programming_languages", b"_programming_languages", "_programming_level", b"_programming_level", "_programming_tools", b"_programming_tools", "_summary", b"_summary", "programming_languages", b"programming_languages", "programming_level", b"programming_level", "programming_tools", b"programming_tools", "summary", b"summary"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_programming_languages", b"_programming_languages"]) -> typing.Literal["programming_languages"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_programming_level", b"_programming_level"]) -> typing.Literal["programming_level"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_programming_tools", b"_programming_tools"]) -> typing.Literal["programming_tools"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_summary", b"_summary"]) -> typing.Literal["summary"] | None: ...

global___WorkExperienceRequest = WorkExperienceRequest

@typing.final
class WorkExperienceResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PROGRAMMING_LANGUAGES_FIELD_NUMBER: builtins.int
    PROGRAMMING_TOOLS_FIELD_NUMBER: builtins.int
    SUMMARY_FIELD_NUMBER: builtins.int
    PROGRAMMING_LEVEL_FIELD_NUMBER: builtins.int
    programming_languages: builtins.str
    programming_tools: builtins.str
    summary: builtins.str
    programming_level: builtins.str
    def __init__(
        self,
        *,
        programming_languages: builtins.str | None = ...,
        programming_tools: builtins.str | None = ...,
        summary: builtins.str | None = ...,
        programming_level: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_programming_languages", b"_programming_languages", "_programming_level", b"_programming_level", "_programming_tools", b"_programming_tools", "_summary", b"_summary", "programming_languages", b"programming_languages", "programming_level", b"programming_level", "programming_tools", b"programming_tools", "summary", b"summary"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_programming_languages", b"_programming_languages", "_programming_level", b"_programming_level", "_programming_tools", b"_programming_tools", "_summary", b"_summary", "programming_languages", b"programming_languages", "programming_level", b"programming_level", "programming_tools", b"programming_tools", "summary", b"summary"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_programming_languages", b"_programming_languages"]) -> typing.Literal["programming_languages"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_programming_level", b"_programming_level"]) -> typing.Literal["programming_level"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_programming_tools", b"_programming_tools"]) -> typing.Literal["programming_tools"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["_summary", b"_summary"]) -> typing.Literal["summary"] | None: ...

global___WorkExperienceResponse = WorkExperienceResponse
