"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
Protocol buffers for types for class-by-freq tool."""

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 sys
import typing

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

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

class _CoarseClinicalSignificanceEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
        _CoarseClinicalSignificance.ValueType
    ],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    COARSE_CLINICAL_SIGNIFICANCE_UNSPECIFIED: _CoarseClinicalSignificance.ValueType  # 0
    """unspecified coarse clinical significance"""
    COARSE_CLINICAL_SIGNIFICANCE_BENIGN: _CoarseClinicalSignificance.ValueType  # 1
    """Corresponds to "benign"."""
    COARSE_CLINICAL_SIGNIFICANCE_UNCERTAIN: _CoarseClinicalSignificance.ValueType  # 2
    """Corresponds to "uncertain"."""
    COARSE_CLINICAL_SIGNIFICANCE_PATHOGENIC: _CoarseClinicalSignificance.ValueType  # 3
    """Corresponds to "pathogenic"."""

class CoarseClinicalSignificance(
    _CoarseClinicalSignificance, metaclass=_CoarseClinicalSignificanceEnumTypeWrapper
):
    """Enumeration for coarse-grain classification."""

COARSE_CLINICAL_SIGNIFICANCE_UNSPECIFIED: CoarseClinicalSignificance.ValueType  # 0
"""unspecified coarse clinical significance"""
COARSE_CLINICAL_SIGNIFICANCE_BENIGN: CoarseClinicalSignificance.ValueType  # 1
"""Corresponds to "benign"."""
COARSE_CLINICAL_SIGNIFICANCE_UNCERTAIN: CoarseClinicalSignificance.ValueType  # 2
"""Corresponds to "uncertain"."""
COARSE_CLINICAL_SIGNIFICANCE_PATHOGENIC: CoarseClinicalSignificance.ValueType  # 3
"""Corresponds to "pathogenic"."""
global___CoarseClinicalSignificance = CoarseClinicalSignificance

@typing.final
class GeneCoarseClinsigFrequencyCounts(google.protobuf.message.Message):
    """Output record."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    HGNC_ID_FIELD_NUMBER: builtins.int
    PATHOGENIC_COUNTS_FIELD_NUMBER: builtins.int
    UNCERTAIN_COUNTS_FIELD_NUMBER: builtins.int
    BENIGN_COUNTS_FIELD_NUMBER: builtins.int
    hgnc_id: builtins.str
    """The gene HGNC ID."""
    @property
    def pathogenic_counts(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]:
        """The counts for (likely) pathogenic."""

    @property
    def uncertain_counts(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]:
        """The counts for uncertain significance."""

    @property
    def benign_counts(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]:
        """The counts for (likely) benign."""

    def __init__(
        self,
        *,
        hgnc_id: builtins.str = ...,
        pathogenic_counts: collections.abc.Iterable[builtins.int] | None = ...,
        uncertain_counts: collections.abc.Iterable[builtins.int] | None = ...,
        benign_counts: collections.abc.Iterable[builtins.int] | None = ...,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "benign_counts",
            b"benign_counts",
            "hgnc_id",
            b"hgnc_id",
            "pathogenic_counts",
            b"pathogenic_counts",
            "uncertain_counts",
            b"uncertain_counts",
        ],
    ) -> None: ...

global___GeneCoarseClinsigFrequencyCounts = GeneCoarseClinsigFrequencyCounts
