"""
@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.internal.enum_type_wrapper
import google.protobuf.message
import qwak.self_service.user.v1.api_key_pb2
import qwak.self_service.user.v1.user_pb2
import sys
import typing

if sys.version_info >= (3, 10):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

class GenerateApiKeyRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    USER_ID_FIELD_NUMBER: builtins.int
    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    FORCE_FIELD_NUMBER: builtins.int
    user_id: builtins.str
    """User id to generate API key for"""
    environment_id: builtins.str
    """Environment ID to generate API key for"""
    force: builtins.bool
    """Will override the apikey if exists."""
    def __init__(
        self,
        *,
        user_id: builtins.str = ...,
        environment_id: builtins.str = ...,
        force: builtins.bool = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["environment_id", b"environment_id", "force", b"force", "user_id", b"user_id"]) -> None: ...

global___GenerateApiKeyRequest = GenerateApiKeyRequest

class GenerateApiKeyResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    API_KEY_FIELD_NUMBER: builtins.int
    api_key: builtins.str
    """Generated API Key"""
    def __init__(
        self,
        *,
        api_key: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["api_key", b"api_key"]) -> None: ...

global___GenerateApiKeyResponse = GenerateApiKeyResponse

class RevokeApiKeyRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    USER_ID_FIELD_NUMBER: builtins.int
    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    user_id: builtins.str
    """User ID whose API Key should be revoked"""
    environment_id: builtins.str
    """Environment ID of the user to reset the password for"""
    def __init__(
        self,
        *,
        user_id: builtins.str = ...,
        environment_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["environment_id", b"environment_id", "user_id", b"user_id"]) -> None: ...

global___RevokeApiKeyRequest = RevokeApiKeyRequest

class RevokeApiKeyResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    class _Status:
        ValueType = typing.NewType("ValueType", builtins.int)
        V: typing_extensions.TypeAlias = ValueType

    class _StatusEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[RevokeApiKeyResponse._Status.ValueType], builtins.type):  # noqa: F821
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        INVALID_USER_STATUS: RevokeApiKeyResponse._Status.ValueType  # 0
        """Invalid status"""
        REVOKED: RevokeApiKeyResponse._Status.ValueType  # 1
        """Marks the API Key was revoked successfully"""

    class Status(_Status, metaclass=_StatusEnumTypeWrapper): ...
    INVALID_USER_STATUS: RevokeApiKeyResponse.Status.ValueType  # 0
    """Invalid status"""
    REVOKED: RevokeApiKeyResponse.Status.ValueType  # 1
    """Marks the API Key was revoked successfully"""

    STATUS_FIELD_NUMBER: builtins.int
    status: global___RevokeApiKeyResponse.Status.ValueType
    """Revoke response status"""
    def __init__(
        self,
        *,
        status: global___RevokeApiKeyResponse.Status.ValueType = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["status", b"status"]) -> None: ...

global___RevokeApiKeyResponse = RevokeApiKeyResponse

class ListApiKeyDetailsRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    def __init__(
        self,
    ) -> None: ...

global___ListApiKeyDetailsRequest = ListApiKeyDetailsRequest

class ListApiKeyDetailsResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    class EnvironmentToApiKeyDetailsEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        @property
        def value(self) -> qwak.self_service.user.v1.api_key_pb2.ApiKeyDetails: ...
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: qwak.self_service.user.v1.api_key_pb2.ApiKeyDetails | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["value", b"value"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    ENVIRONMENT_TO_API_KEY_DETAILS_FIELD_NUMBER: builtins.int
    @property
    def environment_to_api_key_details(self) -> google.protobuf.internal.containers.MessageMap[builtins.str, qwak.self_service.user.v1.api_key_pb2.ApiKeyDetails]:
        """Environment ids to their API key details"""
    def __init__(
        self,
        *,
        environment_to_api_key_details: collections.abc.Mapping[builtins.str, qwak.self_service.user.v1.api_key_pb2.ApiKeyDetails] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["environment_to_api_key_details", b"environment_to_api_key_details"]) -> None: ...

global___ListApiKeyDetailsResponse = ListApiKeyDetailsResponse

class GetUserProfileRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    def __init__(
        self,
    ) -> None: ...

global___GetUserProfileRequest = GetUserProfileRequest

class GetUserProfileResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    USER_PROFILE_FIELD_NUMBER: builtins.int
    @property
    def user_profile(self) -> qwak.self_service.user.v1.user_pb2.UserProfile: ...
    def __init__(
        self,
        *,
        user_profile: qwak.self_service.user.v1.user_pb2.UserProfile | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["user_profile", b"user_profile"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["user_profile", b"user_profile"]) -> None: ...

global___GetUserProfileResponse = GetUserProfileResponse

class UpdateUserProfileRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    USER_PROFILE_FIELD_NUMBER: builtins.int
    @property
    def user_profile(self) -> qwak.self_service.user.v1.user_pb2.UserProfile: ...
    def __init__(
        self,
        *,
        user_profile: qwak.self_service.user.v1.user_pb2.UserProfile | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["user_profile", b"user_profile"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["user_profile", b"user_profile"]) -> None: ...

global___UpdateUserProfileRequest = UpdateUserProfileRequest

class UpdateUserProfileResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    UPDATED_USER_PROFILE_FIELD_NUMBER: builtins.int
    @property
    def updated_user_profile(self) -> qwak.self_service.user.v1.user_pb2.UserProfile: ...
    def __init__(
        self,
        *,
        updated_user_profile: qwak.self_service.user.v1.user_pb2.UserProfile | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["updated_user_profile", b"updated_user_profile"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["updated_user_profile", b"updated_user_profile"]) -> None: ...

global___UpdateUserProfileResponse = UpdateUserProfileResponse
