"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.protobuf.descriptor
import google.protobuf.message
import google.protobuf.timestamp_pb2
import sys

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

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

    USERNAME_PASSWORD_METHOD_FIELD_NUMBER: builtins.int
    QWAK_API_KEY_METHOD_FIELD_NUMBER: builtins.int
    @property
    def username_password_method(self) -> global___UsernamePasswordMethod: ...
    @property
    def qwak_api_key_method(self) -> global___QwakApiKeyMethod: ...
    def __init__(
        self,
        *,
        username_password_method: global___UsernamePasswordMethod | None = ...,
        qwak_api_key_method: global___QwakApiKeyMethod | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["authentication_method", b"authentication_method", "qwak_api_key_method", b"qwak_api_key_method", "username_password_method", b"username_password_method"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["authentication_method", b"authentication_method", "qwak_api_key_method", b"qwak_api_key_method", "username_password_method", b"username_password_method"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["authentication_method", b"authentication_method"]) -> typing_extensions.Literal["username_password_method", "qwak_api_key_method"] | None: ...

global___AuthenticateRequest = AuthenticateRequest

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

    USERNAME_FIELD_NUMBER: builtins.int
    PASSWORD_FIELD_NUMBER: builtins.int
    username: builtins.str
    """Username"""
    password: builtins.str
    """Password"""
    def __init__(
        self,
        *,
        username: builtins.str = ...,
        password: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["password", b"password", "username", b"username"]) -> None: ...

global___UsernamePasswordMethod = UsernamePasswordMethod

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

    QWAK_API_KEY_FIELD_NUMBER: builtins.int
    qwak_api_key: builtins.str
    """API key"""
    def __init__(
        self,
        *,
        qwak_api_key: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["qwak_api_key", b"qwak_api_key"]) -> None: ...

global___QwakApiKeyMethod = QwakApiKeyMethod

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

    ACCESS_TOKEN_FIELD_NUMBER: builtins.int
    EXPIRED_AT_FIELD_NUMBER: builtins.int
    access_token: builtins.str
    """The generated token"""
    @property
    def expired_at(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The expiration time of the token"""
    def __init__(
        self,
        *,
        access_token: builtins.str = ...,
        expired_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["expired_at", b"expired_at"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_token", b"access_token", "expired_at", b"expired_at"]) -> None: ...

global___AuthenticateResponse = AuthenticateResponse
