"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
Copyright 2019 Shift Cryptosecurity AG

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
"""

import builtins
import google.protobuf.descriptor
import google.protobuf.internal.enum_type_wrapper
import google.protobuf.message
import sys
import typing

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

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

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

global___CheckSDCardRequest = CheckSDCardRequest

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

    INSERTED_FIELD_NUMBER: builtins.int
    inserted: builtins.bool
    def __init__(
        self,
        *,
        inserted: builtins.bool = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["inserted", b"inserted"]) -> None: ...

global___CheckSDCardResponse = CheckSDCardResponse

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

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

global___DeviceInfoRequest = DeviceInfoRequest

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

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

        FIRMWARE_HASH_FIELD_NUMBER: builtins.int
        FIRMWARE_VERSION_FIELD_NUMBER: builtins.int
        ENABLED_FIELD_NUMBER: builtins.int
        firmware_hash: builtins.bytes
        """Hash of the currently active Bluetooth firmware on the device."""
        firmware_version: builtins.str
        """Firmware version, formated as "major.minor.patch"."""
        enabled: builtins.bool
        """True if Bluetooth is enabled"""
        def __init__(
            self,
            *,
            firmware_hash: builtins.bytes = ...,
            firmware_version: builtins.str = ...,
            enabled: builtins.bool = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing.Literal["enabled", b"enabled", "firmware_hash", b"firmware_hash", "firmware_version", b"firmware_version"]) -> None: ...

    NAME_FIELD_NUMBER: builtins.int
    INITIALIZED_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    MNEMONIC_PASSPHRASE_ENABLED_FIELD_NUMBER: builtins.int
    MONOTONIC_INCREMENTS_REMAINING_FIELD_NUMBER: builtins.int
    SECURECHIP_MODEL_FIELD_NUMBER: builtins.int
    BLUETOOTH_FIELD_NUMBER: builtins.int
    name: builtins.str
    initialized: builtins.bool
    version: builtins.str
    mnemonic_passphrase_enabled: builtins.bool
    monotonic_increments_remaining: builtins.int
    securechip_model: builtins.str
    """From v9.6.0: "ATECC608A" or "ATECC608B"."""
    @property
    def bluetooth(self) -> global___DeviceInfoResponse.Bluetooth:
        """Only present in Bluetooth-enabled devices."""

    def __init__(
        self,
        *,
        name: builtins.str = ...,
        initialized: builtins.bool = ...,
        version: builtins.str = ...,
        mnemonic_passphrase_enabled: builtins.bool = ...,
        monotonic_increments_remaining: builtins.int = ...,
        securechip_model: builtins.str = ...,
        bluetooth: global___DeviceInfoResponse.Bluetooth | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_bluetooth", b"_bluetooth", "bluetooth", b"bluetooth"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_bluetooth", b"_bluetooth", "bluetooth", b"bluetooth", "initialized", b"initialized", "mnemonic_passphrase_enabled", b"mnemonic_passphrase_enabled", "monotonic_increments_remaining", b"monotonic_increments_remaining", "name", b"name", "securechip_model", b"securechip_model", "version", b"version"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["_bluetooth", b"_bluetooth"]) -> typing.Literal["bluetooth"] | None: ...

global___DeviceInfoResponse = DeviceInfoResponse

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

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

    class _SDCardActionEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[InsertRemoveSDCardRequest._SDCardAction.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        REMOVE_CARD: InsertRemoveSDCardRequest._SDCardAction.ValueType  # 0
        INSERT_CARD: InsertRemoveSDCardRequest._SDCardAction.ValueType  # 1

    class SDCardAction(_SDCardAction, metaclass=_SDCardActionEnumTypeWrapper): ...
    REMOVE_CARD: InsertRemoveSDCardRequest.SDCardAction.ValueType  # 0
    INSERT_CARD: InsertRemoveSDCardRequest.SDCardAction.ValueType  # 1

    ACTION_FIELD_NUMBER: builtins.int
    action: global___InsertRemoveSDCardRequest.SDCardAction.ValueType
    def __init__(
        self,
        *,
        action: global___InsertRemoveSDCardRequest.SDCardAction.ValueType = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["action", b"action"]) -> None: ...

global___InsertRemoveSDCardRequest = InsertRemoveSDCardRequest

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

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

global___ResetRequest = ResetRequest

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

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

global___SetDeviceLanguageRequest = SetDeviceLanguageRequest

@typing.final
class SetDeviceNameRequest(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___SetDeviceNameRequest = SetDeviceNameRequest

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

    ENTROPY_FIELD_NUMBER: builtins.int
    entropy: builtins.bytes
    def __init__(
        self,
        *,
        entropy: builtins.bytes = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["entropy", b"entropy"]) -> None: ...

global___SetPasswordRequest = SetPasswordRequest
