"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
Protobuf file for representing the types from the ClinVar VCV XSD 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 google.protobuf.timestamp_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 _GeneVariantRelationship:
    ValueType = typing.NewType("ValueType", builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _GeneVariantRelationshipEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_GeneVariantRelationship.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    GENE_VARIANT_RELATIONSHIP_UNSPECIFIED: _GeneVariantRelationship.ValueType  # 0
    """unspecified gene variant"""
    GENE_VARIANT_RELATIONSHIP_VARIANT_WITHIN_GENE: _GeneVariantRelationship.ValueType  # 1
    """corresponds to "variant within gene" """
    GENE_VARIANT_RELATIONSHIP_GENE_OVERLAPPED_BY_VARIANT: _GeneVariantRelationship.ValueType  # 2
    """corresponds to "gene overlapped by variant" and
    (legacy:) "genes overlapped by variant"
    """
    GENE_VARIANT_RELATIONSHIP_NEAR_GENE_UPSTREAM: _GeneVariantRelationship.ValueType  # 3
    """corresponds to "variant near gene, upstream" and
    (legacy:) "near gene, upstream"
    """
    GENE_VARIANT_RELATIONSHIP_NEAR_GENE_DOWNSTREAM: _GeneVariantRelationship.ValueType  # 4
    """corresponds to "variant near gene, downstream" and
    (legacy:) "near gene, downstream"
    """
    GENE_VARIANT_RELATIONSHIP_ASSERTED_BUT_NOT_COMPUTED: _GeneVariantRelationship.ValueType  # 5
    """corresponds to "asserted, but not computed" """
    GENE_VARIANT_RELATIONSHIP_WITHIN_MULTIPLE_GENES_BY_OVERLAP: (
        _GeneVariantRelationship.ValueType
    )  # 6
    """corresponds to "within multiple genes by overlap" """
    GENE_VARIANT_RELATIONSHIP_WITHIN_SINGLE_GENE: _GeneVariantRelationship.ValueType  # 7
    """corresponds to "within single gene" """

class GeneVariantRelationship(
    _GeneVariantRelationship, metaclass=_GeneVariantRelationshipEnumTypeWrapper
):
    """Enumeration describing connection between genes and variants.

    Corresponds to XSD type "GeneVariantRelationship".
    """

GENE_VARIANT_RELATIONSHIP_UNSPECIFIED: GeneVariantRelationship.ValueType  # 0
"""unspecified gene variant"""
GENE_VARIANT_RELATIONSHIP_VARIANT_WITHIN_GENE: GeneVariantRelationship.ValueType  # 1
"""corresponds to "variant within gene" """
GENE_VARIANT_RELATIONSHIP_GENE_OVERLAPPED_BY_VARIANT: GeneVariantRelationship.ValueType  # 2
"""corresponds to "gene overlapped by variant" and
(legacy:) "genes overlapped by variant"
"""
GENE_VARIANT_RELATIONSHIP_NEAR_GENE_UPSTREAM: GeneVariantRelationship.ValueType  # 3
"""corresponds to "variant near gene, upstream" and
(legacy:) "near gene, upstream"
"""
GENE_VARIANT_RELATIONSHIP_NEAR_GENE_DOWNSTREAM: GeneVariantRelationship.ValueType  # 4
"""corresponds to "variant near gene, downstream" and
(legacy:) "near gene, downstream"
"""
GENE_VARIANT_RELATIONSHIP_ASSERTED_BUT_NOT_COMPUTED: GeneVariantRelationship.ValueType  # 5
"""corresponds to "asserted, but not computed" """
GENE_VARIANT_RELATIONSHIP_WITHIN_MULTIPLE_GENES_BY_OVERLAP: GeneVariantRelationship.ValueType  # 6
"""corresponds to "within multiple genes by overlap" """
GENE_VARIANT_RELATIONSHIP_WITHIN_SINGLE_GENE: GeneVariantRelationship.ValueType  # 7
"""corresponds to "within single gene" """
global___GeneVariantRelationship = GeneVariantRelationship

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

class _SeverityEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Severity.ValueType], builtins.type
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    SEVERITY_UNSPECIFIED: _Severity.ValueType  # 0
    """unspecified severity"""
    SEVERITY_MILD: _Severity.ValueType  # 1
    """corresponds to "mild" """
    SEVERITY_MODERATE: _Severity.ValueType  # 2
    """corresponds to "moderate" """
    SEVERITY_SEVERE: _Severity.ValueType  # 3
    """corresponds to "sever" """

class Severity(_Severity, metaclass=_SeverityEnumTypeWrapper):
    """Enumeration describing severity.

    Corresponds to XSD type "typeSeverity"
    """

SEVERITY_UNSPECIFIED: Severity.ValueType  # 0
"""unspecified severity"""
SEVERITY_MILD: Severity.ValueType  # 1
"""corresponds to "mild" """
SEVERITY_MODERATE: Severity.ValueType  # 2
"""corresponds to "moderate" """
SEVERITY_SEVERE: Severity.ValueType  # 3
"""corresponds to "sever" """
global___Severity = Severity

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

class _StatusEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Status.ValueType], builtins.type
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    STATUS_UNSPECIFIED: _Status.ValueType  # 0
    """unspecified status"""
    STATUS_CURRENT: _Status.ValueType  # 1
    """corresponds to "current" """
    STATUS_COMPLETED_AND_RETIRED: _Status.ValueType  # 2
    """corresponds to "completed and retired" """
    STATUS_DELETE: _Status.ValueType  # 3
    """corresponds to "delete" """
    STATUS_IN_DEVELOPMENT: _Status.ValueType  # 4
    """corresponds to "in development" """
    STATUS_RECLASSIFIED: _Status.ValueType  # 5
    """corresponds to "reclassified" """
    STATUS_REJECT: _Status.ValueType  # 6
    """corresponds to "reject" """
    STATUS_SECONDARY: _Status.ValueType  # 7
    """corresponds to "secondary" """
    STATUS_SUPPRESSED: _Status.ValueType  # 8
    """corresponds to "suppressed" """
    STATUS_UNDER_REVIEW: _Status.ValueType  # 9
    """corresponds to "under review" """

class Status(_Status, metaclass=_StatusEnumTypeWrapper):
    """Enumeration describing status.

    Corresponds to `typeStatus` in XSD.
    """

STATUS_UNSPECIFIED: Status.ValueType  # 0
"""unspecified status"""
STATUS_CURRENT: Status.ValueType  # 1
"""corresponds to "current" """
STATUS_COMPLETED_AND_RETIRED: Status.ValueType  # 2
"""corresponds to "completed and retired" """
STATUS_DELETE: Status.ValueType  # 3
"""corresponds to "delete" """
STATUS_IN_DEVELOPMENT: Status.ValueType  # 4
"""corresponds to "in development" """
STATUS_RECLASSIFIED: Status.ValueType  # 5
"""corresponds to "reclassified" """
STATUS_REJECT: Status.ValueType  # 6
"""corresponds to "reject" """
STATUS_SECONDARY: Status.ValueType  # 7
"""corresponds to "secondary" """
STATUS_SUPPRESSED: Status.ValueType  # 8
"""corresponds to "suppressed" """
STATUS_UNDER_REVIEW: Status.ValueType  # 9
"""corresponds to "under review" """
global___Status = Status

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

class _SubmitterReviewStatusEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_SubmitterReviewStatus.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    SUBMITTER_REVIEW_STATUS_UNSPECIFIED: _SubmitterReviewStatus.ValueType  # 0
    """unspecified status"""
    SUBMITTER_REVIEW_STATUS_NO_CLASSIFICATION_PROVIDED: _SubmitterReviewStatus.ValueType  # 1
    """corresponds to "no classification provided" """
    SUBMITTER_REVIEW_STATUS_NO_ASSERTION_CRITERIA_PROVIDED: _SubmitterReviewStatus.ValueType  # 2
    """corresponds to "no assertion criteria provided" """
    SUBMITTER_REVIEW_STATUS_CRITERIA_PROVIDED_SINGLE_SUBMITTER: (
        _SubmitterReviewStatus.ValueType
    )  # 3
    """corresponds to "criteria provided, single submitter" """
    SUBMITTER_REVIEW_STATUS_REVIEWED_BY_EXPERT_PANEL: _SubmitterReviewStatus.ValueType  # 4
    """corresponds to "reviewed by expert panel" """
    SUBMITTER_REVIEW_STATUS_PRACTICE_GUIDELINE: _SubmitterReviewStatus.ValueType  # 5
    """corresponds to "practice guideline" """
    SUBMITTER_REVIEW_STATUS_FLAGGED_SUBMISSION: _SubmitterReviewStatus.ValueType  # 6
    """corresponds to "flagged submission" """
    SUBMITTER_REVIEW_STATUS_CRITERIA_PROVIDED_MULTIPLE_SUBMITTERS_NO_CONFLICTS: (
        _SubmitterReviewStatus.ValueType
    )  # 7
    """corresponds to "criteria provided, multiple submitters, no conflicts" """
    SUBMITTER_REVIEW_STATUS_CRITERIA_PROVIDED_CONFLICTING_CLASSIFICATIONS: (
        _SubmitterReviewStatus.ValueType
    )  # 8
    """corresponds to "criteria provided, conflicting classifications" """
    SUBMITTER_REVIEW_STATUS_CLASSIFIED_BY_SINGLE_SUBMITTER: _SubmitterReviewStatus.ValueType  # 9
    """corresponds to "classified by single submitter" """
    SUBMITTER_REVIEW_STATUS_REVIEWED_BY_PROFESSIONAL_SOCIETY: _SubmitterReviewStatus.ValueType  # 10
    """corresponds to "reviewed by professional society" """
    SUBMITTER_REVIEW_STATUS_NOT_CLASSIFIED_BY_SUBMITTER: _SubmitterReviewStatus.ValueType  # 11
    """corresponds to "not classified by submitter" """
    SUBMITTER_REVIEW_STATUS_CLASSIFIED_BY_MULTIPLE_SUBMITTERS: (
        _SubmitterReviewStatus.ValueType
    )  # 12
    """corresponds to "classified by multiple submitters" """

class SubmitterReviewStatus(
    _SubmitterReviewStatus, metaclass=_SubmitterReviewStatusEnumTypeWrapper
):
    """Enumeration describing submitter review status.

    Corresponds to `typeSubmitterReviewStatusValue` in XSD.
    """

SUBMITTER_REVIEW_STATUS_UNSPECIFIED: SubmitterReviewStatus.ValueType  # 0
"""unspecified status"""
SUBMITTER_REVIEW_STATUS_NO_CLASSIFICATION_PROVIDED: SubmitterReviewStatus.ValueType  # 1
"""corresponds to "no classification provided" """
SUBMITTER_REVIEW_STATUS_NO_ASSERTION_CRITERIA_PROVIDED: SubmitterReviewStatus.ValueType  # 2
"""corresponds to "no assertion criteria provided" """
SUBMITTER_REVIEW_STATUS_CRITERIA_PROVIDED_SINGLE_SUBMITTER: SubmitterReviewStatus.ValueType  # 3
"""corresponds to "criteria provided, single submitter" """
SUBMITTER_REVIEW_STATUS_REVIEWED_BY_EXPERT_PANEL: SubmitterReviewStatus.ValueType  # 4
"""corresponds to "reviewed by expert panel" """
SUBMITTER_REVIEW_STATUS_PRACTICE_GUIDELINE: SubmitterReviewStatus.ValueType  # 5
"""corresponds to "practice guideline" """
SUBMITTER_REVIEW_STATUS_FLAGGED_SUBMISSION: SubmitterReviewStatus.ValueType  # 6
"""corresponds to "flagged submission" """
SUBMITTER_REVIEW_STATUS_CRITERIA_PROVIDED_MULTIPLE_SUBMITTERS_NO_CONFLICTS: (
    SubmitterReviewStatus.ValueType
)  # 7
"""corresponds to "criteria provided, multiple submitters, no conflicts" """
SUBMITTER_REVIEW_STATUS_CRITERIA_PROVIDED_CONFLICTING_CLASSIFICATIONS: (
    SubmitterReviewStatus.ValueType
)  # 8
"""corresponds to "criteria provided, conflicting classifications" """
SUBMITTER_REVIEW_STATUS_CLASSIFIED_BY_SINGLE_SUBMITTER: SubmitterReviewStatus.ValueType  # 9
"""corresponds to "classified by single submitter" """
SUBMITTER_REVIEW_STATUS_REVIEWED_BY_PROFESSIONAL_SOCIETY: SubmitterReviewStatus.ValueType  # 10
"""corresponds to "reviewed by professional society" """
SUBMITTER_REVIEW_STATUS_NOT_CLASSIFIED_BY_SUBMITTER: SubmitterReviewStatus.ValueType  # 11
"""corresponds to "not classified by submitter" """
SUBMITTER_REVIEW_STATUS_CLASSIFIED_BY_MULTIPLE_SUBMITTERS: SubmitterReviewStatus.ValueType  # 12
"""corresponds to "classified by multiple submitters" """
global___SubmitterReviewStatus = SubmitterReviewStatus

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

class _ZygosityEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Zygosity.ValueType], builtins.type
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    ZYGOSITY_UNSPECIFIED: _Zygosity.ValueType  # 0
    """unspecified zygosity"""
    ZYGOSITY_HOMOZYGOTE: _Zygosity.ValueType  # 1
    """corresponds to "Homozygote" """
    ZYGOSITY_SINGLE_HETEROZYGOTE: _Zygosity.ValueType  # 2
    """corresponds to "SingleHeterozygote" """
    ZYGOSITY_COMPOUND_HETEROZYGOTE: _Zygosity.ValueType  # 3
    """corresponds to "CompoundHeterozygote" """
    ZYGOSITY_HEMIZYGOTE: _Zygosity.ValueType  # 4
    """corresponds to "Hemizygote" """
    ZYGOSITY_NOT_PROVIDED: _Zygosity.ValueType  # 5
    """corresponds to "not provided" """

class Zygosity(_Zygosity, metaclass=_ZygosityEnumTypeWrapper):
    """Enumeration describing zygosity."""

ZYGOSITY_UNSPECIFIED: Zygosity.ValueType  # 0
"""unspecified zygosity"""
ZYGOSITY_HOMOZYGOTE: Zygosity.ValueType  # 1
"""corresponds to "Homozygote" """
ZYGOSITY_SINGLE_HETEROZYGOTE: Zygosity.ValueType  # 2
"""corresponds to "SingleHeterozygote" """
ZYGOSITY_COMPOUND_HETEROZYGOTE: Zygosity.ValueType  # 3
"""corresponds to "CompoundHeterozygote" """
ZYGOSITY_HEMIZYGOTE: Zygosity.ValueType  # 4
"""corresponds to "Hemizygote" """
ZYGOSITY_NOT_PROVIDED: Zygosity.ValueType  # 5
"""corresponds to "not provided" """
global___Zygosity = Zygosity

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

class _AssertionEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Assertion.ValueType], builtins.type
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    ASSERTION_UNSPECIFIED: _Assertion.ValueType  # 0
    """unspecified assertion type attribute"""
    ASSERTION_VARIATION_TO_DISEASE: _Assertion.ValueType  # 1
    """corresponds to "variation to disease" """
    ASSERTION_VARIATION_TO_INCLUDED_DISEASE: _Assertion.ValueType  # 2
    """corresponds to "variation to included disease" """
    ASSERTION_VARIATION_IN_MODIFIER_GENE_TO_DISEASE: _Assertion.ValueType  # 3
    """corresponds to "variation in modifier gene to disease" """
    ASSERTION_CONFERS_SENSITIVITY: _Assertion.ValueType  # 4
    """corresponds to "confers sensitivity" """
    ASSERTION_CONFERS_RESISTANCE: _Assertion.ValueType  # 5
    """corresponds to "confers resistance" """
    ASSERTION_VARIANT_TO_NAMED_PROTEIN: _Assertion.ValueType  # 6
    """corresponds to "variant to named protein" """

class Assertion(_Assertion, metaclass=_AssertionEnumTypeWrapper):
    """Enumeration describing assertion type attributes."""

ASSERTION_UNSPECIFIED: Assertion.ValueType  # 0
"""unspecified assertion type attribute"""
ASSERTION_VARIATION_TO_DISEASE: Assertion.ValueType  # 1
"""corresponds to "variation to disease" """
ASSERTION_VARIATION_TO_INCLUDED_DISEASE: Assertion.ValueType  # 2
"""corresponds to "variation to included disease" """
ASSERTION_VARIATION_IN_MODIFIER_GENE_TO_DISEASE: Assertion.ValueType  # 3
"""corresponds to "variation in modifier gene to disease" """
ASSERTION_CONFERS_SENSITIVITY: Assertion.ValueType  # 4
"""corresponds to "confers sensitivity" """
ASSERTION_CONFERS_RESISTANCE: Assertion.ValueType  # 5
"""corresponds to "confers resistance" """
ASSERTION_VARIANT_TO_NAMED_PROTEIN: Assertion.ValueType  # 6
"""corresponds to "variant to named protein" """
global___Assertion = Assertion

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

class _AggregateGermlineReviewStatusEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
        _AggregateGermlineReviewStatus.ValueType
    ],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    AGGREGATE_GERMLINE_REVIEW_STATUS_UNSPECIFIED: _AggregateGermlineReviewStatus.ValueType  # 0
    """unspecified aggregate germline review status value"""
    AGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATION_PROVIDED: (
        _AggregateGermlineReviewStatus.ValueType
    )  # 1
    """corresponds to "no classification provided" """
    AGGREGATE_GERMLINE_REVIEW_STATUS_NO_ASSERTION_CRITERIA_PROVIDED: (
        _AggregateGermlineReviewStatus.ValueType
    )  # 2
    """corresponds to "no assertion criteria provided" """
    AGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_SINGLE_SUBMITTER: (
        _AggregateGermlineReviewStatus.ValueType
    )  # 3
    """corresponds to "criteria provided, single submitter" """
    AGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_MULTIPLE_SUBMITTERS_NO_CONFLICTS: (
        _AggregateGermlineReviewStatus.ValueType
    )  # 4
    """corresponds to "criteria provided, multiple submitters, no conflicts" """
    AGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_CONFLICTING_CLASSIFICATIONS: (
        _AggregateGermlineReviewStatus.ValueType
    )  # 5
    """corresponds to "criteria provided, conflicting classifications" """
    AGGREGATE_GERMLINE_REVIEW_STATUS_REVIEWED_BY_EXPERT_PANEL: (
        _AggregateGermlineReviewStatus.ValueType
    )  # 6
    """corresponds to "reviewed by expert panel" """
    AGGREGATE_GERMLINE_REVIEW_STATUS_PRACTICE_GUIDELINE: (
        _AggregateGermlineReviewStatus.ValueType
    )  # 7
    """corresponds to "practice guideline" """
    AGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATIONS_FROM_UNFLAGGED_RECORDS: (
        _AggregateGermlineReviewStatus.ValueType
    )  # 8
    """corresponds to "no classifications from unflagged records" """
    AGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATION_FOR_THE_SINGLE_VARIANT: (
        _AggregateGermlineReviewStatus.ValueType
    )  # 9
    """corresponds to "no classification for the single variant" """

class AggregateGermlineReviewStatus(
    _AggregateGermlineReviewStatus, metaclass=_AggregateGermlineReviewStatusEnumTypeWrapper
):
    """Enumeration describing aggregate germline review status value."""

AGGREGATE_GERMLINE_REVIEW_STATUS_UNSPECIFIED: AggregateGermlineReviewStatus.ValueType  # 0
"""unspecified aggregate germline review status value"""
AGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATION_PROVIDED: (
    AggregateGermlineReviewStatus.ValueType
)  # 1
"""corresponds to "no classification provided" """
AGGREGATE_GERMLINE_REVIEW_STATUS_NO_ASSERTION_CRITERIA_PROVIDED: (
    AggregateGermlineReviewStatus.ValueType
)  # 2
"""corresponds to "no assertion criteria provided" """
AGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_SINGLE_SUBMITTER: (
    AggregateGermlineReviewStatus.ValueType
)  # 3
"""corresponds to "criteria provided, single submitter" """
AGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_MULTIPLE_SUBMITTERS_NO_CONFLICTS: (
    AggregateGermlineReviewStatus.ValueType
)  # 4
"""corresponds to "criteria provided, multiple submitters, no conflicts" """
AGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_CONFLICTING_CLASSIFICATIONS: (
    AggregateGermlineReviewStatus.ValueType
)  # 5
"""corresponds to "criteria provided, conflicting classifications" """
AGGREGATE_GERMLINE_REVIEW_STATUS_REVIEWED_BY_EXPERT_PANEL: (
    AggregateGermlineReviewStatus.ValueType
)  # 6
"""corresponds to "reviewed by expert panel" """
AGGREGATE_GERMLINE_REVIEW_STATUS_PRACTICE_GUIDELINE: AggregateGermlineReviewStatus.ValueType  # 7
"""corresponds to "practice guideline" """
AGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATIONS_FROM_UNFLAGGED_RECORDS: (
    AggregateGermlineReviewStatus.ValueType
)  # 8
"""corresponds to "no classifications from unflagged records" """
AGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATION_FOR_THE_SINGLE_VARIANT: (
    AggregateGermlineReviewStatus.ValueType
)  # 9
"""corresponds to "no classification for the single variant" """
global___AggregateGermlineReviewStatus = AggregateGermlineReviewStatus

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

class _AggregateSomaticClinicalImpactReviewStatusEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
        _AggregateSomaticClinicalImpactReviewStatus.ValueType
    ],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_UNSPECIFIED: (
        _AggregateSomaticClinicalImpactReviewStatus.ValueType
    )  # 0
    """unspecified aggregate somatic clinical impact review status value"""
    AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_NO_CLASSIFICATION_PROVIDED: (
        _AggregateSomaticClinicalImpactReviewStatus.ValueType
    )  # 1
    """corresponds to "no classification provided" """
    AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_NO_ASSERTION_CRITERIA_PROVIDED: (
        _AggregateSomaticClinicalImpactReviewStatus.ValueType
    )  # 2
    """corresponds to "no assertion criteria provided" """
    AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_CRITERIA_PROVIDED_SINGLE_SUBMITTER: (
        _AggregateSomaticClinicalImpactReviewStatus.ValueType
    )  # 3
    """corresponds to "criteria provided, single submitter" """
    AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_CRITERIA_PROVIDED_MULTIPLE_SUBMITTERS: (
        _AggregateSomaticClinicalImpactReviewStatus.ValueType
    )  # 4
    """corresponds to "criteria provided, multiple submitters" """
    AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_REVIEWED_BY_EXPERT_PANEL: (
        _AggregateSomaticClinicalImpactReviewStatus.ValueType
    )  # 5
    """corresponds to "reviewed by expert panel" """
    AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_PRACTICE_GUIDELINE: (
        _AggregateSomaticClinicalImpactReviewStatus.ValueType
    )  # 6
    """corresponds to "practice guideline" """
    AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_NO_CLASSIFICATIONS_FROM_UNFLAGGED_RECORDS: (
        _AggregateSomaticClinicalImpactReviewStatus.ValueType
    )  # 7
    """corresponds to "no classifications from unflagged records" """
    AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_NO_CLASSIFICATION_FOR_THE_SINGLE_VARIANT: (
        _AggregateSomaticClinicalImpactReviewStatus.ValueType
    )  # 8
    """corresponds to "no classification for the single variant" """

class AggregateSomaticClinicalImpactReviewStatus(
    _AggregateSomaticClinicalImpactReviewStatus,
    metaclass=_AggregateSomaticClinicalImpactReviewStatusEnumTypeWrapper,
):
    """Enumeration describing aggregate somatic clinical impact review status value."""

AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_UNSPECIFIED: (
    AggregateSomaticClinicalImpactReviewStatus.ValueType
)  # 0
"""unspecified aggregate somatic clinical impact review status value"""
AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_NO_CLASSIFICATION_PROVIDED: (
    AggregateSomaticClinicalImpactReviewStatus.ValueType
)  # 1
"""corresponds to "no classification provided" """
AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_NO_ASSERTION_CRITERIA_PROVIDED: (
    AggregateSomaticClinicalImpactReviewStatus.ValueType
)  # 2
"""corresponds to "no assertion criteria provided" """
AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_CRITERIA_PROVIDED_SINGLE_SUBMITTER: (
    AggregateSomaticClinicalImpactReviewStatus.ValueType
)  # 3
"""corresponds to "criteria provided, single submitter" """
AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_CRITERIA_PROVIDED_MULTIPLE_SUBMITTERS: (
    AggregateSomaticClinicalImpactReviewStatus.ValueType
)  # 4
"""corresponds to "criteria provided, multiple submitters" """
AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_REVIEWED_BY_EXPERT_PANEL: (
    AggregateSomaticClinicalImpactReviewStatus.ValueType
)  # 5
"""corresponds to "reviewed by expert panel" """
AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_PRACTICE_GUIDELINE: (
    AggregateSomaticClinicalImpactReviewStatus.ValueType
)  # 6
"""corresponds to "practice guideline" """
AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_NO_CLASSIFICATIONS_FROM_UNFLAGGED_RECORDS: (
    AggregateSomaticClinicalImpactReviewStatus.ValueType
)  # 7
"""corresponds to "no classifications from unflagged records" """
AGGREGATE_SOMATIC_CLINICAL_IMPACT_REVIEW_STATUS_NO_CLASSIFICATION_FOR_THE_SINGLE_VARIANT: (
    AggregateSomaticClinicalImpactReviewStatus.ValueType
)  # 8
"""corresponds to "no classification for the single variant" """
global___AggregateSomaticClinicalImpactReviewStatus = AggregateSomaticClinicalImpactReviewStatus

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

class _AggregateOncogenicityReviewStatusEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
        _AggregateOncogenicityReviewStatus.ValueType
    ],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    AGGREGATE_ONCOGENICITY_REVIEW_STATUS_UNSPECIFIED: (
        _AggregateOncogenicityReviewStatus.ValueType
    )  # 0
    """unspecified aggregate oncogenicity review status value"""
    AGGREGATE_ONCOGENICITY_REVIEW_STATUS_NO_CLASSIFICATION_PROVIDED: (
        _AggregateOncogenicityReviewStatus.ValueType
    )  # 1
    """corresponds to "no classification provided" """
    AGGREGATE_ONCOGENICITY_REVIEW_STATUS_NO_ASSERTION_CRITERIA_PROVIDED: (
        _AggregateOncogenicityReviewStatus.ValueType
    )  # 2
    """corresponds to "no assertion criteria provided" """
    AGGREGATE_ONCOGENICITY_REVIEW_STATUS_CRITERIA_PROVIDED_SINGLE_SUBMITTER: (
        _AggregateOncogenicityReviewStatus.ValueType
    )  # 3
    """corresponds to "criteria provided, single submitter" """
    AGGREGATE_ONCOGENICITY_REVIEW_STATUS_CRITERIA_PROVIDED_MULTIPLE_SUBMITTERS_NO_CONFLICTS: (
        _AggregateOncogenicityReviewStatus.ValueType
    )  # 4
    """corresponds to "criteria provided, multiple submitters, no conflicts" """
    AGGREGATE_ONCOGENICITY_REVIEW_STATUS_CRITERIA_PROVIDED_CONFLICTING_CLASSIFICATIONS: (
        _AggregateOncogenicityReviewStatus.ValueType
    )  # 5
    """corresponds to "criteria provided, conflicting classifications" """
    AGGREGATE_ONCOGENICITY_REVIEW_STATUS_REVIEWED_BY_EXPERT_PANEL: (
        _AggregateOncogenicityReviewStatus.ValueType
    )  # 6
    """corresponds to "reviewed by expert panel" """
    AGGREGATE_ONCOGENICITY_REVIEW_STATUS_PRACTICE_GUIDELINE: (
        _AggregateOncogenicityReviewStatus.ValueType
    )  # 7
    """corresponds to "practice guideline" """
    AGGREGATE_ONCOGENICITY_REVIEW_STATUS_NO_CLASSIFICATIONS_FROM_UNFLAGGED_RECORDS: (
        _AggregateOncogenicityReviewStatus.ValueType
    )  # 8
    """corresponds to "no classifications from unflagged records" """
    AGGREGATE_ONCOGENICITY_REVIEW_STATUS_NO_CLASSIFICATION_FOR_THE_SINGLE_VARIANT: (
        _AggregateOncogenicityReviewStatus.ValueType
    )  # 9
    """corresponds to "no classification for the single variant" """

class AggregateOncogenicityReviewStatus(
    _AggregateOncogenicityReviewStatus, metaclass=_AggregateOncogenicityReviewStatusEnumTypeWrapper
):
    """Enumeration describing aggregate oncogenicity review status value."""

AGGREGATE_ONCOGENICITY_REVIEW_STATUS_UNSPECIFIED: AggregateOncogenicityReviewStatus.ValueType  # 0
"""unspecified aggregate oncogenicity review status value"""
AGGREGATE_ONCOGENICITY_REVIEW_STATUS_NO_CLASSIFICATION_PROVIDED: (
    AggregateOncogenicityReviewStatus.ValueType
)  # 1
"""corresponds to "no classification provided" """
AGGREGATE_ONCOGENICITY_REVIEW_STATUS_NO_ASSERTION_CRITERIA_PROVIDED: (
    AggregateOncogenicityReviewStatus.ValueType
)  # 2
"""corresponds to "no assertion criteria provided" """
AGGREGATE_ONCOGENICITY_REVIEW_STATUS_CRITERIA_PROVIDED_SINGLE_SUBMITTER: (
    AggregateOncogenicityReviewStatus.ValueType
)  # 3
"""corresponds to "criteria provided, single submitter" """
AGGREGATE_ONCOGENICITY_REVIEW_STATUS_CRITERIA_PROVIDED_MULTIPLE_SUBMITTERS_NO_CONFLICTS: (
    AggregateOncogenicityReviewStatus.ValueType
)  # 4
"""corresponds to "criteria provided, multiple submitters, no conflicts" """
AGGREGATE_ONCOGENICITY_REVIEW_STATUS_CRITERIA_PROVIDED_CONFLICTING_CLASSIFICATIONS: (
    AggregateOncogenicityReviewStatus.ValueType
)  # 5
"""corresponds to "criteria provided, conflicting classifications" """
AGGREGATE_ONCOGENICITY_REVIEW_STATUS_REVIEWED_BY_EXPERT_PANEL: (
    AggregateOncogenicityReviewStatus.ValueType
)  # 6
"""corresponds to "reviewed by expert panel" """
AGGREGATE_ONCOGENICITY_REVIEW_STATUS_PRACTICE_GUIDELINE: (
    AggregateOncogenicityReviewStatus.ValueType
)  # 7
"""corresponds to "practice guideline" """
AGGREGATE_ONCOGENICITY_REVIEW_STATUS_NO_CLASSIFICATIONS_FROM_UNFLAGGED_RECORDS: (
    AggregateOncogenicityReviewStatus.ValueType
)  # 8
"""corresponds to "no classifications from unflagged records" """
AGGREGATE_ONCOGENICITY_REVIEW_STATUS_NO_CLASSIFICATION_FOR_THE_SINGLE_VARIANT: (
    AggregateOncogenicityReviewStatus.ValueType
)  # 9
"""corresponds to "no classification for the single variant" """
global___AggregateOncogenicityReviewStatus = AggregateOncogenicityReviewStatus

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

class _OriginEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Origin.ValueType], builtins.type
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    ORIGIN_UNSPECIFIED: _Origin.ValueType  # 0
    """unspecified origin"""
    ORIGIN_GERMLINE: _Origin.ValueType  # 1
    """corresponds to "germline" """
    ORIGIN_SOMATIC: _Origin.ValueType  # 2
    """corresponds to "somatic" """
    ORIGIN_DE_NOVO: _Origin.ValueType  # 3
    """corresponds to "de novo" """
    ORIGIN_NOT_PROVIDED: _Origin.ValueType  # 4
    """corresponds to "not provided" """
    ORIGIN_INHERITED: _Origin.ValueType  # 5
    """corresponds to "inherited" """
    ORIGIN_MATERNAL: _Origin.ValueType  # 6
    """corresponds to "maternal" """
    ORIGIN_PATERNAL: _Origin.ValueType  # 7
    """corresponds to "paternal" """
    ORIGIN_UNIPARENTAL: _Origin.ValueType  # 8
    """corresponds to "uniparental" """
    ORIGIN_BIPARENTAL: _Origin.ValueType  # 9
    """corresponds to "biparental" """
    ORIGIN_NOT_REPORTED: _Origin.ValueType  # 10
    """corresponds to "not-reported" """
    ORIGIN_TESTED_INCONCLUSIVE: _Origin.ValueType  # 11
    """corresponds to "tested-inconclusive" """
    ORIGIN_UNKNOWN: _Origin.ValueType  # 12
    """corresponds to "unknown" """
    ORIGIN_NOT_APPLICABLE: _Origin.ValueType  # 13
    """corresponds to "not applicable" """
    ORIGIN_EXPERIMENTALLY_GENERATED: _Origin.ValueType  # 14
    """corresponds to "experimentally generated" """

class Origin(_Origin, metaclass=_OriginEnumTypeWrapper):
    """Enumeration describing origin."""

ORIGIN_UNSPECIFIED: Origin.ValueType  # 0
"""unspecified origin"""
ORIGIN_GERMLINE: Origin.ValueType  # 1
"""corresponds to "germline" """
ORIGIN_SOMATIC: Origin.ValueType  # 2
"""corresponds to "somatic" """
ORIGIN_DE_NOVO: Origin.ValueType  # 3
"""corresponds to "de novo" """
ORIGIN_NOT_PROVIDED: Origin.ValueType  # 4
"""corresponds to "not provided" """
ORIGIN_INHERITED: Origin.ValueType  # 5
"""corresponds to "inherited" """
ORIGIN_MATERNAL: Origin.ValueType  # 6
"""corresponds to "maternal" """
ORIGIN_PATERNAL: Origin.ValueType  # 7
"""corresponds to "paternal" """
ORIGIN_UNIPARENTAL: Origin.ValueType  # 8
"""corresponds to "uniparental" """
ORIGIN_BIPARENTAL: Origin.ValueType  # 9
"""corresponds to "biparental" """
ORIGIN_NOT_REPORTED: Origin.ValueType  # 10
"""corresponds to "not-reported" """
ORIGIN_TESTED_INCONCLUSIVE: Origin.ValueType  # 11
"""corresponds to "tested-inconclusive" """
ORIGIN_UNKNOWN: Origin.ValueType  # 12
"""corresponds to "unknown" """
ORIGIN_NOT_APPLICABLE: Origin.ValueType  # 13
"""corresponds to "not applicable" """
ORIGIN_EXPERIMENTALLY_GENERATED: Origin.ValueType  # 14
"""corresponds to "experimentally generated" """
global___Origin = Origin

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

class _ChromosomeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Chromosome.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    CHROMOSOME_UNSPECIFIED: _Chromosome.ValueType  # 0
    """unspecified chromosome"""
    CHROMOSOME_1: _Chromosome.ValueType  # 1
    """corresponds to "1" """
    CHROMOSOME_2: _Chromosome.ValueType  # 2
    """corresponds to "2" """
    CHROMOSOME_3: _Chromosome.ValueType  # 3
    """corresponds to "3" """
    CHROMOSOME_4: _Chromosome.ValueType  # 4
    """corresponds to "4" """
    CHROMOSOME_5: _Chromosome.ValueType  # 5
    """corresponds to "5" """
    CHROMOSOME_6: _Chromosome.ValueType  # 6
    """corresponds to "6" """
    CHROMOSOME_7: _Chromosome.ValueType  # 7
    """corresponds to "7" """
    CHROMOSOME_8: _Chromosome.ValueType  # 8
    """corresponds to "8" """
    CHROMOSOME_9: _Chromosome.ValueType  # 9
    """corresponds to "9" """
    CHROMOSOME_10: _Chromosome.ValueType  # 10
    """corresponds to "10" """
    CHROMOSOME_11: _Chromosome.ValueType  # 11
    """corresponds to "11" """
    CHROMOSOME_12: _Chromosome.ValueType  # 12
    """corresponds to "12" """
    CHROMOSOME_13: _Chromosome.ValueType  # 13
    """corresponds to "13" """
    CHROMOSOME_14: _Chromosome.ValueType  # 14
    """corresponds to "14" """
    CHROMOSOME_15: _Chromosome.ValueType  # 15
    """corresponds to "15" """
    CHROMOSOME_16: _Chromosome.ValueType  # 16
    """corresponds to "16" """
    CHROMOSOME_17: _Chromosome.ValueType  # 17
    """corresponds to "17" """
    CHROMOSOME_18: _Chromosome.ValueType  # 18
    """corresponds to "18" """
    CHROMOSOME_19: _Chromosome.ValueType  # 19
    """corresponds to "19" """
    CHROMOSOME_20: _Chromosome.ValueType  # 20
    """corresponds to "20" """
    CHROMOSOME_21: _Chromosome.ValueType  # 21
    """corresponds to "21" """
    CHROMOSOME_22: _Chromosome.ValueType  # 22
    """corresponds to "22" """
    CHROMOSOME_X: _Chromosome.ValueType  # 23
    """corresponds to "X" """
    CHROMOSOME_Y: _Chromosome.ValueType  # 24
    """corresponds to "Y" """
    CHROMOSOME_MT: _Chromosome.ValueType  # 25
    """corresponds to "MT" """
    CHROMOSOME_PAR: _Chromosome.ValueType  # 26
    """corresponds to "PAR" """
    CHROMOSOME_UN: _Chromosome.ValueType  # 27
    """corresponds to "Un" """

class Chromosome(_Chromosome, metaclass=_ChromosomeEnumTypeWrapper):
    """Enumeration describing chromosome."""

CHROMOSOME_UNSPECIFIED: Chromosome.ValueType  # 0
"""unspecified chromosome"""
CHROMOSOME_1: Chromosome.ValueType  # 1
"""corresponds to "1" """
CHROMOSOME_2: Chromosome.ValueType  # 2
"""corresponds to "2" """
CHROMOSOME_3: Chromosome.ValueType  # 3
"""corresponds to "3" """
CHROMOSOME_4: Chromosome.ValueType  # 4
"""corresponds to "4" """
CHROMOSOME_5: Chromosome.ValueType  # 5
"""corresponds to "5" """
CHROMOSOME_6: Chromosome.ValueType  # 6
"""corresponds to "6" """
CHROMOSOME_7: Chromosome.ValueType  # 7
"""corresponds to "7" """
CHROMOSOME_8: Chromosome.ValueType  # 8
"""corresponds to "8" """
CHROMOSOME_9: Chromosome.ValueType  # 9
"""corresponds to "9" """
CHROMOSOME_10: Chromosome.ValueType  # 10
"""corresponds to "10" """
CHROMOSOME_11: Chromosome.ValueType  # 11
"""corresponds to "11" """
CHROMOSOME_12: Chromosome.ValueType  # 12
"""corresponds to "12" """
CHROMOSOME_13: Chromosome.ValueType  # 13
"""corresponds to "13" """
CHROMOSOME_14: Chromosome.ValueType  # 14
"""corresponds to "14" """
CHROMOSOME_15: Chromosome.ValueType  # 15
"""corresponds to "15" """
CHROMOSOME_16: Chromosome.ValueType  # 16
"""corresponds to "16" """
CHROMOSOME_17: Chromosome.ValueType  # 17
"""corresponds to "17" """
CHROMOSOME_18: Chromosome.ValueType  # 18
"""corresponds to "18" """
CHROMOSOME_19: Chromosome.ValueType  # 19
"""corresponds to "19" """
CHROMOSOME_20: Chromosome.ValueType  # 20
"""corresponds to "20" """
CHROMOSOME_21: Chromosome.ValueType  # 21
"""corresponds to "21" """
CHROMOSOME_22: Chromosome.ValueType  # 22
"""corresponds to "22" """
CHROMOSOME_X: Chromosome.ValueType  # 23
"""corresponds to "X" """
CHROMOSOME_Y: Chromosome.ValueType  # 24
"""corresponds to "Y" """
CHROMOSOME_MT: Chromosome.ValueType  # 25
"""corresponds to "MT" """
CHROMOSOME_PAR: Chromosome.ValueType  # 26
"""corresponds to "PAR" """
CHROMOSOME_UN: Chromosome.ValueType  # 27
"""corresponds to "Un" """
global___Chromosome = Chromosome

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

class _CommentTypeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_CommentType.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    COMMENT_TYPE_UNSPECIFIED: _CommentType.ValueType  # 0
    """unspecified comment type"""
    COMMENT_TYPE_PUBLIC: _CommentType.ValueType  # 1
    """corresponds to "public" """
    COMMENT_TYPE_CONVERTED_BY_NCB: _CommentType.ValueType  # 2
    """corresponds to "ConvertedByNCBI" """
    COMMENT_TYPE_MISSING_FROM_ASSEMBLY: _CommentType.ValueType  # 3
    """corresponds to "MissingFromAssembly" """
    COMMENT_TYPE_GENOMIC_LOCATION_NOT_ESTABLISHED: _CommentType.ValueType  # 4
    """corresponds to "GenomicLocationNotEstablished" """
    COMMENT_TYPE_LOCATION_ON_GENOME_AND_PRODUCT_NOT_ALIGNED: _CommentType.ValueType  # 5
    """corresponds to "LocationOnGenomeAndProductNotAligned" """
    COMMENT_TYPE_DELETION_COMMENT: _CommentType.ValueType  # 6
    """corresponds to "DeletionComment" """
    COMMENT_TYPE_MERGE_COMMENT: _CommentType.ValueType  # 7
    """corresponds to "MergeComment" """
    COMMENT_TYPE_ASSEMBLY_SPECIFIC_ALLELE_DEFINITION: _CommentType.ValueType  # 8
    """corresponds to "AssemblySpecificAlleleDefinition" """
    COMMENT_TYPE_ALIGNMENT_GAP_MAKES_APPEAR_INCONSISTENT: _CommentType.ValueType  # 9
    """corresponds to "AlignmentGapMakesAppearInconsistent" """
    COMMENT_TYPE_EXPLANATION_OF_CLASSIFICATION: _CommentType.ValueType  # 10
    """corresponds to "ExplanationOfClassification" """
    COMMENT_TYPE_FLAGGED_COMMENT: _CommentType.ValueType  # 11
    """corresponds to "FlaggedComment" """

class CommentType(_CommentType, metaclass=_CommentTypeEnumTypeWrapper):
    """Enumeration describing comment type."""

COMMENT_TYPE_UNSPECIFIED: CommentType.ValueType  # 0
"""unspecified comment type"""
COMMENT_TYPE_PUBLIC: CommentType.ValueType  # 1
"""corresponds to "public" """
COMMENT_TYPE_CONVERTED_BY_NCB: CommentType.ValueType  # 2
"""corresponds to "ConvertedByNCBI" """
COMMENT_TYPE_MISSING_FROM_ASSEMBLY: CommentType.ValueType  # 3
"""corresponds to "MissingFromAssembly" """
COMMENT_TYPE_GENOMIC_LOCATION_NOT_ESTABLISHED: CommentType.ValueType  # 4
"""corresponds to "GenomicLocationNotEstablished" """
COMMENT_TYPE_LOCATION_ON_GENOME_AND_PRODUCT_NOT_ALIGNED: CommentType.ValueType  # 5
"""corresponds to "LocationOnGenomeAndProductNotAligned" """
COMMENT_TYPE_DELETION_COMMENT: CommentType.ValueType  # 6
"""corresponds to "DeletionComment" """
COMMENT_TYPE_MERGE_COMMENT: CommentType.ValueType  # 7
"""corresponds to "MergeComment" """
COMMENT_TYPE_ASSEMBLY_SPECIFIC_ALLELE_DEFINITION: CommentType.ValueType  # 8
"""corresponds to "AssemblySpecificAlleleDefinition" """
COMMENT_TYPE_ALIGNMENT_GAP_MAKES_APPEAR_INCONSISTENT: CommentType.ValueType  # 9
"""corresponds to "AlignmentGapMakesAppearInconsistent" """
COMMENT_TYPE_EXPLANATION_OF_CLASSIFICATION: CommentType.ValueType  # 10
"""corresponds to "ExplanationOfClassification" """
COMMENT_TYPE_FLAGGED_COMMENT: CommentType.ValueType  # 11
"""corresponds to "FlaggedComment" """
global___CommentType = CommentType

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

class _NucleotideSequenceEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_NucleotideSequence.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    NUCLEOTIDE_SEQUENCE_UNSPECIFIED: _NucleotideSequence.ValueType  # 0
    """unspecified nucleotide sequence"""
    NUCLEOTIDE_SEQUENCE_GENOMIC_TOP_LEVEL: _NucleotideSequence.ValueType  # 1
    """corresponds to "genomic, top-level" """
    NUCLEOTIDE_SEQUENCE_GENOMIC_REF_SEQ_GENE: _NucleotideSequence.ValueType  # 2
    """corresponds to "genomic, RefSeqGene" """
    NUCLEOTIDE_SEQUENCE_GENOMIC: _NucleotideSequence.ValueType  # 3
    """corresponds to "genomic" """
    NUCLEOTIDE_SEQUENCE_CODING: _NucleotideSequence.ValueType  # 4
    """corresponds to "coding" """
    NUCLEOTIDE_SEQUENCE_NON_CODING: _NucleotideSequence.ValueType  # 5
    """corresponds to "non-coding" """
    NUCLEOTIDE_SEQUENCE_PROTEIN: _NucleotideSequence.ValueType  # 6
    """corresponds to "protein" """

class NucleotideSequence(_NucleotideSequence, metaclass=_NucleotideSequenceEnumTypeWrapper):
    """Enumeration describing nucleotide sequence."""

NUCLEOTIDE_SEQUENCE_UNSPECIFIED: NucleotideSequence.ValueType  # 0
"""unspecified nucleotide sequence"""
NUCLEOTIDE_SEQUENCE_GENOMIC_TOP_LEVEL: NucleotideSequence.ValueType  # 1
"""corresponds to "genomic, top-level" """
NUCLEOTIDE_SEQUENCE_GENOMIC_REF_SEQ_GENE: NucleotideSequence.ValueType  # 2
"""corresponds to "genomic, RefSeqGene" """
NUCLEOTIDE_SEQUENCE_GENOMIC: NucleotideSequence.ValueType  # 3
"""corresponds to "genomic" """
NUCLEOTIDE_SEQUENCE_CODING: NucleotideSequence.ValueType  # 4
"""corresponds to "coding" """
NUCLEOTIDE_SEQUENCE_NON_CODING: NucleotideSequence.ValueType  # 5
"""corresponds to "non-coding" """
NUCLEOTIDE_SEQUENCE_PROTEIN: NucleotideSequence.ValueType  # 6
"""corresponds to "protein" """
global___NucleotideSequence = NucleotideSequence

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

class _ProteinSequenceEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_ProteinSequence.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    PROTEIN_SEQUENCE_UNSPECIFIED: _ProteinSequence.ValueType  # 0
    """unspecified protein sequence"""
    PROTEIN_SEQUENCE_PROTEIN: _ProteinSequence.ValueType  # 1
    """corresponds to "protein" """

class ProteinSequence(_ProteinSequence, metaclass=_ProteinSequenceEnumTypeWrapper):
    """Enumeration describing protein sequence."""

PROTEIN_SEQUENCE_UNSPECIFIED: ProteinSequence.ValueType  # 0
"""unspecified protein sequence"""
PROTEIN_SEQUENCE_PROTEIN: ProteinSequence.ValueType  # 1
"""corresponds to "protein" """
global___ProteinSequence = ProteinSequence

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

class _PhenotypeSetTypeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_PhenotypeSetType.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    PHENOTYPE_SET_TYPE_UNSPECIFIED: _PhenotypeSetType.ValueType  # 0
    """unspecified phenotype set"""
    PHENOTYPE_SET_TYPE_DISEASE: _PhenotypeSetType.ValueType  # 1
    """corresponds to "Disease" """
    PHENOTYPE_SET_TYPE_DRUG_RESPONSE: _PhenotypeSetType.ValueType  # 2
    """corresponds to "DrugResponse" """
    PHENOTYPE_SET_TYPE_FINDING: _PhenotypeSetType.ValueType  # 3
    """corresponds to "Finding" """
    PHENOTYPE_SET_TYPE_PHENOTYPE_INSTRUCTION: _PhenotypeSetType.ValueType  # 4
    """corresponds to "PhenotypeInstruction" """
    PHENOTYPE_SET_TYPE_TRAIT_CHOICE: _PhenotypeSetType.ValueType  # 5
    """corresponds to "TraitChoice" """

class PhenotypeSetType(_PhenotypeSetType, metaclass=_PhenotypeSetTypeEnumTypeWrapper):
    """Enumeration describing phenotype set."""

PHENOTYPE_SET_TYPE_UNSPECIFIED: PhenotypeSetType.ValueType  # 0
"""unspecified phenotype set"""
PHENOTYPE_SET_TYPE_DISEASE: PhenotypeSetType.ValueType  # 1
"""corresponds to "Disease" """
PHENOTYPE_SET_TYPE_DRUG_RESPONSE: PhenotypeSetType.ValueType  # 2
"""corresponds to "DrugResponse" """
PHENOTYPE_SET_TYPE_FINDING: PhenotypeSetType.ValueType  # 3
"""corresponds to "Finding" """
PHENOTYPE_SET_TYPE_PHENOTYPE_INSTRUCTION: PhenotypeSetType.ValueType  # 4
"""corresponds to "PhenotypeInstruction" """
PHENOTYPE_SET_TYPE_TRAIT_CHOICE: PhenotypeSetType.ValueType  # 5
"""corresponds to "TraitChoice" """
global___PhenotypeSetType = PhenotypeSetType

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

class _VariationTypeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_VariationType.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    VARIATION_TYPE_UNSPECIFIED: _VariationType.ValueType  # 0
    """unspecified variation type"""
    VARIATION_TYPE_DIPLOTYPE: _VariationType.ValueType  # 1
    """corresponds to "Diplotype" """
    VARIATION_TYPE_COMPOUND_HETEROZYGOTE: _VariationType.ValueType  # 2
    """corresponds to "CompoundHeterozygote" """
    VARIATION_TYPE_DISTINCT_CHROMOSOMES: _VariationType.ValueType  # 3
    """corresponds to "Distinct chromosomes" """

class VariationType(_VariationType, metaclass=_VariationTypeEnumTypeWrapper):
    """Enumeration describing variation type."""

VARIATION_TYPE_UNSPECIFIED: VariationType.ValueType  # 0
"""unspecified variation type"""
VARIATION_TYPE_DIPLOTYPE: VariationType.ValueType  # 1
"""corresponds to "Diplotype" """
VARIATION_TYPE_COMPOUND_HETEROZYGOTE: VariationType.ValueType  # 2
"""corresponds to "CompoundHeterozygote" """
VARIATION_TYPE_DISTINCT_CHROMOSOMES: VariationType.ValueType  # 3
"""corresponds to "Distinct chromosomes" """
global___VariationType = VariationType

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

class _EvidenceTypeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_EvidenceType.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    EVIDENCE_TYPE_UNSPECIFIED: _EvidenceType.ValueType  # 0
    """unspecified evidence type"""
    EVIDENCE_TYPE_GENETIC: _EvidenceType.ValueType  # 1
    """corresponds to "Genetic" """
    EVIDENCE_TYPE_EXPERIMENTAL: _EvidenceType.ValueType  # 2
    """corresponds to "Experimental" """
    EVIDENCE_TYPE_POPULATION: _EvidenceType.ValueType  # 3
    """corresponds to "Population" """
    EVIDENCE_TYPE_COMPUTATIONAL: _EvidenceType.ValueType  # 4
    """corresponds to "Computational" """

class EvidenceType(_EvidenceType, metaclass=_EvidenceTypeEnumTypeWrapper):
    """Enumeration describing evidence type.

    Corresponds to "EvidenceType" in XSD.
    """

EVIDENCE_TYPE_UNSPECIFIED: EvidenceType.ValueType  # 0
"""unspecified evidence type"""
EVIDENCE_TYPE_GENETIC: EvidenceType.ValueType  # 1
"""corresponds to "Genetic" """
EVIDENCE_TYPE_EXPERIMENTAL: EvidenceType.ValueType  # 2
"""corresponds to "Experimental" """
EVIDENCE_TYPE_POPULATION: EvidenceType.ValueType  # 3
"""corresponds to "Population" """
EVIDENCE_TYPE_COMPUTATIONAL: EvidenceType.ValueType  # 4
"""corresponds to "Computational" """
global___EvidenceType = EvidenceType

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

class _MethodListTypeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_MethodListType.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    METHOD_LIST_TYPE_UNSPECIFIED: _MethodListType.ValueType  # 0
    """unspecified method"""
    METHOD_LIST_TYPE_LITERATURE_ONLY: _MethodListType.ValueType  # 1
    """corresponds to "literature only" """
    METHOD_LIST_TYPE_REFERENCE_POPULATION: _MethodListType.ValueType  # 2
    """corresponds to "reference population" """
    METHOD_LIST_TYPE_CASE_CONTROL: _MethodListType.ValueType  # 3
    """corresponds to "case-control" """
    METHOD_LIST_TYPE_CLINICAL_TESTING: _MethodListType.ValueType  # 4
    """corresponds to "clinical testing" """
    METHOD_LIST_TYPE_IN_VITRO: _MethodListType.ValueType  # 5
    """corresponds to "in vitro" """
    METHOD_LIST_TYPE_IN_VIVO: _MethodListType.ValueType  # 6
    """corresponds to "in vivo" """
    METHOD_LIST_TYPE_RESEARCH: _MethodListType.ValueType  # 7
    """corresponds to "research" """
    METHOD_LIST_TYPE_CURATION: _MethodListType.ValueType  # 8
    """corresponds to "curation" """
    METHOD_LIST_TYPE_NOT_PROVIDED: _MethodListType.ValueType  # 9
    """corresponds to "not provided" """
    METHOD_LIST_TYPE_PROVIDER_INTERPRETATION: _MethodListType.ValueType  # 10
    """corresponds to "provider interpretation" """
    METHOD_LIST_TYPE_PHENOTYPING_ONLY: _MethodListType.ValueType  # 11
    """corresponds to "phenotyping only" """

class MethodListType(_MethodListType, metaclass=_MethodListTypeEnumTypeWrapper):
    """Enumeration describing method list.

    Corresponds to "MethodListType" in XSD.
    """

METHOD_LIST_TYPE_UNSPECIFIED: MethodListType.ValueType  # 0
"""unspecified method"""
METHOD_LIST_TYPE_LITERATURE_ONLY: MethodListType.ValueType  # 1
"""corresponds to "literature only" """
METHOD_LIST_TYPE_REFERENCE_POPULATION: MethodListType.ValueType  # 2
"""corresponds to "reference population" """
METHOD_LIST_TYPE_CASE_CONTROL: MethodListType.ValueType  # 3
"""corresponds to "case-control" """
METHOD_LIST_TYPE_CLINICAL_TESTING: MethodListType.ValueType  # 4
"""corresponds to "clinical testing" """
METHOD_LIST_TYPE_IN_VITRO: MethodListType.ValueType  # 5
"""corresponds to "in vitro" """
METHOD_LIST_TYPE_IN_VIVO: MethodListType.ValueType  # 6
"""corresponds to "in vivo" """
METHOD_LIST_TYPE_RESEARCH: MethodListType.ValueType  # 7
"""corresponds to "research" """
METHOD_LIST_TYPE_CURATION: MethodListType.ValueType  # 8
"""corresponds to "curation" """
METHOD_LIST_TYPE_NOT_PROVIDED: MethodListType.ValueType  # 9
"""corresponds to "not provided" """
METHOD_LIST_TYPE_PROVIDER_INTERPRETATION: MethodListType.ValueType  # 10
"""corresponds to "provider interpretation" """
METHOD_LIST_TYPE_PHENOTYPING_ONLY: MethodListType.ValueType  # 11
"""corresponds to "phenotyping only" """
global___MethodListType = MethodListType

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

class _HgvsTypeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_HgvsType.ValueType], builtins.type
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    HGVS_TYPE_UNSPECIFIED: _HgvsType.ValueType  # 0
    """unspecified HGVS type"""
    HGVS_TYPE_CODING: _HgvsType.ValueType  # 1
    """corresponds to "coding" """
    HGVS_TYPE_GENOMIC: _HgvsType.ValueType  # 2
    """corresponds to "genomic" """
    HGVS_TYPE_GENOMIC_TOP_LEVEL: _HgvsType.ValueType  # 3
    """corresponds to "genomic, top-level" """
    HGVS_TYPE_NON_CODING: _HgvsType.ValueType  # 4
    """corresponds to "non-coding" """
    HGVS_TYPE_PROTEIN: _HgvsType.ValueType  # 5
    """corresponds to "protein" """

class HgvsType(_HgvsType, metaclass=_HgvsTypeEnumTypeWrapper):
    """Enumeration describing HGVS types."""

HGVS_TYPE_UNSPECIFIED: HgvsType.ValueType  # 0
"""unspecified HGVS type"""
HGVS_TYPE_CODING: HgvsType.ValueType  # 1
"""corresponds to "coding" """
HGVS_TYPE_GENOMIC: HgvsType.ValueType  # 2
"""corresponds to "genomic" """
HGVS_TYPE_GENOMIC_TOP_LEVEL: HgvsType.ValueType  # 3
"""corresponds to "genomic, top-level" """
HGVS_TYPE_NON_CODING: HgvsType.ValueType  # 4
"""corresponds to "non-coding" """
HGVS_TYPE_PROTEIN: HgvsType.ValueType  # 5
"""corresponds to "protein" """
global___HgvsType = HgvsType

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

class _ClinicalFeaturesAffectedStatusTypeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
        _ClinicalFeaturesAffectedStatusType.ValueType
    ],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    CLINICAL_FEATURES_AFFECTED_STATUS_TYPE_UNSPECIFIED: (
        _ClinicalFeaturesAffectedStatusType.ValueType
    )  # 0
    """unspecified status"""
    CLINICAL_FEATURES_AFFECTED_STATUS_TYPE_PRESENT: (
        _ClinicalFeaturesAffectedStatusType.ValueType
    )  # 1
    """corresponds to "present" """
    CLINICAL_FEATURES_AFFECTED_STATUS_TYPE_ABSENT: (
        _ClinicalFeaturesAffectedStatusType.ValueType
    )  # 2
    """corresponds to "absent" """
    CLINICAL_FEATURES_AFFECTED_STATUS_TYPE_NOT_TESTED: (
        _ClinicalFeaturesAffectedStatusType.ValueType
    )  # 3
    """corresponds to "not tested" """

class ClinicalFeaturesAffectedStatusType(
    _ClinicalFeaturesAffectedStatusType,
    metaclass=_ClinicalFeaturesAffectedStatusTypeEnumTypeWrapper,
):
    """Enumeration describing clinical features affected status."""

CLINICAL_FEATURES_AFFECTED_STATUS_TYPE_UNSPECIFIED: (
    ClinicalFeaturesAffectedStatusType.ValueType
)  # 0
"""unspecified status"""
CLINICAL_FEATURES_AFFECTED_STATUS_TYPE_PRESENT: ClinicalFeaturesAffectedStatusType.ValueType  # 1
"""corresponds to "present" """
CLINICAL_FEATURES_AFFECTED_STATUS_TYPE_ABSENT: ClinicalFeaturesAffectedStatusType.ValueType  # 2
"""corresponds to "absent" """
CLINICAL_FEATURES_AFFECTED_STATUS_TYPE_NOT_TESTED: ClinicalFeaturesAffectedStatusType.ValueType  # 3
"""corresponds to "not tested" """
global___ClinicalFeaturesAffectedStatusType = ClinicalFeaturesAffectedStatusType

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

class _HaploVariationTypeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_HaploVariationType.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    HAPLO_VARIATION_TYPE_UNSPECIFIED: _HaploVariationType.ValueType  # 0
    """unspecified haplotype variation type"""
    HAPLO_VARIATION_TYPE_HAPLOTYPE: _HaploVariationType.ValueType  # 1
    """corresponds to "Haplotype" """
    HAPLO_VARIATION_TYPE_HAPLOTYPE_SINGLE_VARIANT: _HaploVariationType.ValueType  # 2
    """corresponds to "Haplotype, single variant" """
    HAPLO_VARIATION_TYPE_VARIATION: _HaploVariationType.ValueType  # 3
    """corresponds to "Variation" """
    HAPLO_VARIATION_TYPE_PHASE_UNKNOWN: _HaploVariationType.ValueType  # 4
    """corresponds to "Phase unknown" """
    HAPLO_VARIATION_TYPE_HAPLOTYPE_DEFINED_BY_SINGLE_VARIANT: _HaploVariationType.ValueType  # 5
    """corresponds to "Haplotype defined by a single variant" """

class HaploVariationType(_HaploVariationType, metaclass=_HaploVariationTypeEnumTypeWrapper):
    """Enumeration describing haplotype variation types."""

HAPLO_VARIATION_TYPE_UNSPECIFIED: HaploVariationType.ValueType  # 0
"""unspecified haplotype variation type"""
HAPLO_VARIATION_TYPE_HAPLOTYPE: HaploVariationType.ValueType  # 1
"""corresponds to "Haplotype" """
HAPLO_VARIATION_TYPE_HAPLOTYPE_SINGLE_VARIANT: HaploVariationType.ValueType  # 2
"""corresponds to "Haplotype, single variant" """
HAPLO_VARIATION_TYPE_VARIATION: HaploVariationType.ValueType  # 3
"""corresponds to "Variation" """
HAPLO_VARIATION_TYPE_PHASE_UNKNOWN: HaploVariationType.ValueType  # 4
"""corresponds to "Phase unknown" """
HAPLO_VARIATION_TYPE_HAPLOTYPE_DEFINED_BY_SINGLE_VARIANT: HaploVariationType.ValueType  # 5
"""corresponds to "Haplotype defined by a single variant" """
global___HaploVariationType = HaploVariationType

@typing.final
class Comment(google.protobuf.message.Message):
    """A structure to support reporting unformatted content, with type and
    source specified.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALUE_FIELD_NUMBER: builtins.int
    DATA_SOURCE_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    value: builtins.str
    """The comment's value."""
    data_source: builtins.str
    """The optional comment data source."""
    type: global___CommentType.ValueType
    """The comment's type."""
    def __init__(
        self,
        *,
        value: builtins.str = ...,
        data_source: builtins.str | None = ...,
        type: global___CommentType.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_data_source",
            b"_data_source",
            "_type",
            b"_type",
            "data_source",
            b"data_source",
            "type",
            b"type",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_data_source",
            b"_data_source",
            "_type",
            b"_type",
            "data_source",
            b"data_source",
            "type",
            b"type",
            "value",
            b"value",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_data_source", b"_data_source"]
    ) -> typing.Literal["data_source"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_type", b"_type"]
    ) -> typing.Literal["type"] | None: ...

global___Comment = Comment

@typing.final
class Xref(google.protobuf.message.Message):
    """This structure is used to represent how an object described in the
    submission relates to objects in other databases.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DB_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    URL_FIELD_NUMBER: builtins.int
    STATUS_FIELD_NUMBER: builtins.int
    db: builtins.str
    """The name of the database. When there is an overlap with sequence
    databases, that name is used.
    """
    id: builtins.str
    """The identifier used by the database. Being exported as a string
    even though internally the database has rules for defining which datases use
    integer identifers.
    """
    type: builtins.str
    """Used to differentiate between different types of identifiers that
    a database may provide.
    """
    url: builtins.str
    """Optional URL to the database entry."""
    status: global___Status.ValueType
    """The status; defaults to "current"."""
    def __init__(
        self,
        *,
        db: builtins.str = ...,
        id: builtins.str = ...,
        type: builtins.str | None = ...,
        url: builtins.str | None = ...,
        status: global___Status.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_status",
            b"_status",
            "_type",
            b"_type",
            "_url",
            b"_url",
            "status",
            b"status",
            "type",
            b"type",
            "url",
            b"url",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_status",
            b"_status",
            "_type",
            b"_type",
            "_url",
            b"_url",
            "db",
            b"db",
            "id",
            b"id",
            "status",
            b"status",
            "type",
            b"type",
            "url",
            b"url",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_status", b"_status"]
    ) -> typing.Literal["status"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_type", b"_type"]
    ) -> typing.Literal["type"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_url", b"_url"]
    ) -> typing.Literal["url"] | None: ...

global___Xref = Xref

@typing.final
class Citation(google.protobuf.message.Message):
    """Description of a citation."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class IdType(google.protobuf.message.Message):
        """Local ID with source."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        VALUE_FIELD_NUMBER: builtins.int
        SOURCE_FIELD_NUMBER: builtins.int
        value: builtins.str
        """The citation's value."""
        source: builtins.str
        """If there is an identifier, what database provides it."""
        def __init__(
            self,
            *,
            value: builtins.str = ...,
            source: builtins.str = ...,
        ) -> None: ...
        def ClearField(
            self, field_name: typing.Literal["source", b"source", "value", b"value"]
        ) -> None: ...

    IDS_FIELD_NUMBER: builtins.int
    URL_FIELD_NUMBER: builtins.int
    CITATION_TEXT_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    ABBREV_FIELD_NUMBER: builtins.int
    url: builtins.str
    """Optional URL."""
    citation_text: builtins.str
    """Optional citation text."""
    type: builtins.str
    """attributes

    This maintained distinct from publication types in PubMed and
    established by GTR curators.  The default is 'general'.
    """
    abbrev: builtins.str
    """Corresponds to the abbreviation reported by GTR."""
    @property
    def ids(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___Citation.IdType
    ]:
        """nested elements

        Optional list of IDs.
        """

    def __init__(
        self,
        *,
        ids: collections.abc.Iterable[global___Citation.IdType] | None = ...,
        url: builtins.str | None = ...,
        citation_text: builtins.str | None = ...,
        type: builtins.str | None = ...,
        abbrev: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_abbrev",
            b"_abbrev",
            "_citation_text",
            b"_citation_text",
            "_type",
            b"_type",
            "_url",
            b"_url",
            "abbrev",
            b"abbrev",
            "citation_text",
            b"citation_text",
            "type",
            b"type",
            "url",
            b"url",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_abbrev",
            b"_abbrev",
            "_citation_text",
            b"_citation_text",
            "_type",
            b"_type",
            "_url",
            b"_url",
            "abbrev",
            b"abbrev",
            "citation_text",
            b"citation_text",
            "ids",
            b"ids",
            "type",
            b"type",
            "url",
            b"url",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_abbrev", b"_abbrev"]
    ) -> typing.Literal["abbrev"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_citation_text", b"_citation_text"]
    ) -> typing.Literal["citation_text"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_type", b"_type"]
    ) -> typing.Literal["type"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_url", b"_url"]
    ) -> typing.Literal["url"] | None: ...

global___Citation = Citation

@typing.final
class BaseAttribute(google.protobuf.message.Message):
    """The attribute is a general element to represent a defined set of data
    qualified by an enumerated set of types. For each attribute element, the value will
    be a character string and is optional. Source shall be used to store identifiers for
    supplied data from source other than the submitter (e.g. SequenceOntology). The data
    submitted where Type="variation" shall be validated against sequence_alternation in
    Sequence Ontology http://www.sequenceontology.org/. This is to be a generic version
    of AttributeType and should be used with extension when it is used to specify Type
    and its enumerations.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALUE_FIELD_NUMBER: builtins.int
    INTEGER_VALUE_FIELD_NUMBER: builtins.int
    DATE_VALUE_FIELD_NUMBER: builtins.int
    value: builtins.str
    """The attribute's value; can be empty."""
    integer_value: builtins.int
    """The optional integer value."""
    @property
    def date_value(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The optional date value."""

    def __init__(
        self,
        *,
        value: builtins.str | None = ...,
        integer_value: builtins.int | None = ...,
        date_value: google.protobuf.timestamp_pb2.Timestamp | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_date_value",
            b"_date_value",
            "_integer_value",
            b"_integer_value",
            "_value",
            b"_value",
            "date_value",
            b"date_value",
            "integer_value",
            b"integer_value",
            "value",
            b"value",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_date_value",
            b"_date_value",
            "_integer_value",
            b"_integer_value",
            "_value",
            b"_value",
            "date_value",
            b"date_value",
            "integer_value",
            b"integer_value",
            "value",
            b"value",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_date_value", b"_date_value"]
    ) -> typing.Literal["date_value"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_integer_value", b"_integer_value"]
    ) -> typing.Literal["integer_value"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_value", b"_value"]
    ) -> typing.Literal["value"] | None: ...

global___BaseAttribute = BaseAttribute

@typing.final
class HgvsNucleotideExpression(google.protobuf.message.Message):
    """Description of a nucleotide sequence expression.

    Corresponds to `typeNucleotideSequenceExpression`
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXPRESSION_FIELD_NUMBER: builtins.int
    SEQUENCE_TYPE_FIELD_NUMBER: builtins.int
    SEQUENCE_ACCESSION_VERSION_FIELD_NUMBER: builtins.int
    SEQUENCE_ACCESSION_FIELD_NUMBER: builtins.int
    SEQUENCE_VERSION_FIELD_NUMBER: builtins.int
    CHANGE_FIELD_NUMBER: builtins.int
    ASSEMBLY_FIELD_NUMBER: builtins.int
    SUBMITTED_FIELD_NUMBER: builtins.int
    MANE_SELECT_FIELD_NUMBER: builtins.int
    MANE_PLUS_CLINICAL_FIELD_NUMBER: builtins.int
    expression: builtins.str
    """The expression values."""
    sequence_type: global___NucleotideSequence.ValueType
    """The type of the nucleotide sequence."""
    sequence_accession_version: builtins.str
    """Optional sequence accession version."""
    sequence_accession: builtins.str
    """Optional sequence accession."""
    sequence_version: builtins.int
    """Optional sequence version."""
    change: builtins.str
    """Optional description of the change."""
    assembly: builtins.str
    """Optional assembly information."""
    submitted: builtins.str
    """Optional submission information."""
    mane_select: builtins.bool
    """Optional MANE Select flag."""
    mane_plus_clinical: builtins.bool
    """Optional MANE Plus Clinical flag."""
    def __init__(
        self,
        *,
        expression: builtins.str = ...,
        sequence_type: global___NucleotideSequence.ValueType | None = ...,
        sequence_accession_version: builtins.str | None = ...,
        sequence_accession: builtins.str | None = ...,
        sequence_version: builtins.int | None = ...,
        change: builtins.str | None = ...,
        assembly: builtins.str | None = ...,
        submitted: builtins.str | None = ...,
        mane_select: builtins.bool | None = ...,
        mane_plus_clinical: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_assembly",
            b"_assembly",
            "_change",
            b"_change",
            "_mane_plus_clinical",
            b"_mane_plus_clinical",
            "_mane_select",
            b"_mane_select",
            "_sequence_accession",
            b"_sequence_accession",
            "_sequence_accession_version",
            b"_sequence_accession_version",
            "_sequence_type",
            b"_sequence_type",
            "_sequence_version",
            b"_sequence_version",
            "_submitted",
            b"_submitted",
            "assembly",
            b"assembly",
            "change",
            b"change",
            "mane_plus_clinical",
            b"mane_plus_clinical",
            "mane_select",
            b"mane_select",
            "sequence_accession",
            b"sequence_accession",
            "sequence_accession_version",
            b"sequence_accession_version",
            "sequence_type",
            b"sequence_type",
            "sequence_version",
            b"sequence_version",
            "submitted",
            b"submitted",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_assembly",
            b"_assembly",
            "_change",
            b"_change",
            "_mane_plus_clinical",
            b"_mane_plus_clinical",
            "_mane_select",
            b"_mane_select",
            "_sequence_accession",
            b"_sequence_accession",
            "_sequence_accession_version",
            b"_sequence_accession_version",
            "_sequence_type",
            b"_sequence_type",
            "_sequence_version",
            b"_sequence_version",
            "_submitted",
            b"_submitted",
            "assembly",
            b"assembly",
            "change",
            b"change",
            "expression",
            b"expression",
            "mane_plus_clinical",
            b"mane_plus_clinical",
            "mane_select",
            b"mane_select",
            "sequence_accession",
            b"sequence_accession",
            "sequence_accession_version",
            b"sequence_accession_version",
            "sequence_type",
            b"sequence_type",
            "sequence_version",
            b"sequence_version",
            "submitted",
            b"submitted",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_assembly", b"_assembly"]
    ) -> typing.Literal["assembly"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_change", b"_change"]
    ) -> typing.Literal["change"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_mane_plus_clinical", b"_mane_plus_clinical"]
    ) -> typing.Literal["mane_plus_clinical"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_mane_select", b"_mane_select"]
    ) -> typing.Literal["mane_select"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_sequence_accession", b"_sequence_accession"]
    ) -> typing.Literal["sequence_accession"] | None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal["_sequence_accession_version", b"_sequence_accession_version"],
    ) -> typing.Literal["sequence_accession_version"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_sequence_type", b"_sequence_type"]
    ) -> typing.Literal["sequence_type"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_sequence_version", b"_sequence_version"]
    ) -> typing.Literal["sequence_version"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_submitted", b"_submitted"]
    ) -> typing.Literal["submitted"] | None: ...

global___HgvsNucleotideExpression = HgvsNucleotideExpression

@typing.final
class HgvsProteinExpression(google.protobuf.message.Message):
    """Description of a protein sequence expression.

    Corresponds to `typeProteinSequenceExpression` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXPRESSION_FIELD_NUMBER: builtins.int
    SEQUENCE_ACCESSION_VERSION_FIELD_NUMBER: builtins.int
    SEQUENCE_ACCESSION_FIELD_NUMBER: builtins.int
    SEQUENCE_VERSION_FIELD_NUMBER: builtins.int
    CHANGE_FIELD_NUMBER: builtins.int
    expression: builtins.str
    """The expression values."""
    sequence_accession_version: builtins.str
    """Optional sequence accession version."""
    sequence_accession: builtins.str
    """Optional sequence accession."""
    sequence_version: builtins.int
    """Optional sequence version."""
    change: builtins.str
    """Optional description of the change."""
    def __init__(
        self,
        *,
        expression: builtins.str = ...,
        sequence_accession_version: builtins.str | None = ...,
        sequence_accession: builtins.str | None = ...,
        sequence_version: builtins.int | None = ...,
        change: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_change",
            b"_change",
            "_sequence_accession",
            b"_sequence_accession",
            "_sequence_accession_version",
            b"_sequence_accession_version",
            "_sequence_version",
            b"_sequence_version",
            "change",
            b"change",
            "sequence_accession",
            b"sequence_accession",
            "sequence_accession_version",
            b"sequence_accession_version",
            "sequence_version",
            b"sequence_version",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_change",
            b"_change",
            "_sequence_accession",
            b"_sequence_accession",
            "_sequence_accession_version",
            b"_sequence_accession_version",
            "_sequence_version",
            b"_sequence_version",
            "change",
            b"change",
            "expression",
            b"expression",
            "sequence_accession",
            b"sequence_accession",
            "sequence_accession_version",
            b"sequence_accession_version",
            "sequence_version",
            b"sequence_version",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_change", b"_change"]
    ) -> typing.Literal["change"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_sequence_accession", b"_sequence_accession"]
    ) -> typing.Literal["sequence_accession"] | None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal["_sequence_accession_version", b"_sequence_accession_version"],
    ) -> typing.Literal["sequence_accession_version"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_sequence_version", b"_sequence_version"]
    ) -> typing.Literal["sequence_version"] | None: ...

global___HgvsProteinExpression = HgvsProteinExpression

@typing.final
class HgvsExpression(google.protobuf.message.Message):
    """A structure to represent an HGVS expression for a nucleotide sequence
    variant, along with the predicted protein change and the predicted molecular
    consequence. Also used to represent only the protein change if that is all that has
    been reported.

    Corresponds to `typeHVSExpression` in XSD.
    nested elements
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NUCLEOTIDE_EXPRESSION_FIELD_NUMBER: builtins.int
    PROTEIN_EXPRESSION_FIELD_NUMBER: builtins.int
    MOLECULAR_CONSEQUENCES_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    ASSEMBLY_FIELD_NUMBER: builtins.int
    type: global___HgvsType.ValueType
    """attributes

    Type of HGVS expression.
    """
    assembly: builtins.str
    """Optional assembly."""
    @property
    def nucleotide_expression(self) -> global___HgvsNucleotideExpression:
        """Optional nucleotide sequence expression."""

    @property
    def protein_expression(self) -> global___HgvsProteinExpression:
        """Optional protein sequence expression."""

    @property
    def molecular_consequences(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of molecular consequences."""

    def __init__(
        self,
        *,
        nucleotide_expression: global___HgvsNucleotideExpression | None = ...,
        protein_expression: global___HgvsProteinExpression | None = ...,
        molecular_consequences: collections.abc.Iterable[global___Xref] | None = ...,
        type: global___HgvsType.ValueType = ...,
        assembly: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_assembly",
            b"_assembly",
            "_nucleotide_expression",
            b"_nucleotide_expression",
            "_protein_expression",
            b"_protein_expression",
            "assembly",
            b"assembly",
            "nucleotide_expression",
            b"nucleotide_expression",
            "protein_expression",
            b"protein_expression",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_assembly",
            b"_assembly",
            "_nucleotide_expression",
            b"_nucleotide_expression",
            "_protein_expression",
            b"_protein_expression",
            "assembly",
            b"assembly",
            "molecular_consequences",
            b"molecular_consequences",
            "nucleotide_expression",
            b"nucleotide_expression",
            "protein_expression",
            b"protein_expression",
            "type",
            b"type",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_assembly", b"_assembly"]
    ) -> typing.Literal["assembly"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_nucleotide_expression", b"_nucleotide_expression"]
    ) -> typing.Literal["nucleotide_expression"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_protein_expression", b"_protein_expression"]
    ) -> typing.Literal["protein_expression"] | None: ...

global___HgvsExpression = HgvsExpression

@typing.final
class Software(google.protobuf.message.Message):
    """// Type of the phenotype set.
      PhenotypeSetType phenotype_set_type = 3;
    }

    Description of a software.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    PURPOSE_FIELD_NUMBER: builtins.int
    name: builtins.str
    """Name of the software."""
    version: builtins.str
    """Version of the software; optional."""
    purpose: builtins.str
    """Purpose of the software; optional."""
    def __init__(
        self,
        *,
        name: builtins.str = ...,
        version: builtins.str | None = ...,
        purpose: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_purpose",
            b"_purpose",
            "_version",
            b"_version",
            "purpose",
            b"purpose",
            "version",
            b"version",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_purpose",
            b"_purpose",
            "_version",
            b"_version",
            "name",
            b"name",
            "purpose",
            b"purpose",
            "version",
            b"version",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_purpose", b"_purpose"]
    ) -> typing.Literal["purpose"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_version", b"_version"]
    ) -> typing.Literal["version"] | None: ...

global___Software = Software

@typing.final
class DescriptionHistory(google.protobuf.message.Message):
    """Description of the history of a record.

    Called ``typeDescriptionHistory`` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DESCRIPTION_FIELD_NUMBER: builtins.int
    DATED_FIELD_NUMBER: builtins.int
    description: builtins.str
    """The pathogenicity description."""
    @property
    def dated(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The date of the description."""

    def __init__(
        self,
        *,
        description: builtins.str = ...,
        dated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing.Literal["_dated", b"_dated", "dated", b"dated"]
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_dated", b"_dated", "dated", b"dated", "description", b"description"
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing.Literal["_dated", b"_dated"]
    ) -> typing.Literal["dated"] | None: ...

global___DescriptionHistory = DescriptionHistory

@typing.final
class GenericSetElement(google.protobuf.message.Message):
    """Entry in an element set.

    Called ``SetElementSetType`` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALUE_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    value: builtins.str
    """The element's value."""
    type: builtins.str
    """The element's type."""
    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    def __init__(
        self,
        *,
        value: builtins.str = ...,
        type: builtins.str = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "citations",
            b"citations",
            "comments",
            b"comments",
            "type",
            b"type",
            "value",
            b"value",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...

global___GenericSetElement = GenericSetElement

@typing.final
class AttributeSetElement(google.protobuf.message.Message):
    """Common type for an entry in a set of attributes.

    Called ``typeAttributeSet`` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class Attribute(google.protobuf.message.Message):
        """Extend the BaseAttribute with a `type` field."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        BASE_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        type: builtins.str
        """The type of the attribute."""
        @property
        def base(self) -> global___BaseAttribute:
            """The base value."""

        def __init__(
            self,
            *,
            base: global___BaseAttribute | None = ...,
            type: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["base", b"base"]) -> builtins.bool: ...
        def ClearField(
            self, field_name: typing.Literal["base", b"base", "type", b"type"]
        ) -> None: ...

    ATTRIBUTE_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    @property
    def attribute(self) -> global___AttributeSetElement.Attribute:
        """The attribute value."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    def __init__(
        self,
        *,
        attribute: global___AttributeSetElement.Attribute | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["attribute", b"attribute"]) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "attribute",
            b"attribute",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...

global___AttributeSetElement = AttributeSetElement

@typing.final
class Trait(google.protobuf.message.Message):
    """Type to describe traits in various places."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class TraitRelationship(google.protobuf.message.Message):
        """Local type for trait relationship."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _TypeEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                Trait.TraitRelationship._Type.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            TYPE_UNSPECIFIED: Trait.TraitRelationship._Type.ValueType  # 0
            """unspecified trait type"""
            TYPE_PHENOTYPE: Trait.TraitRelationship._Type.ValueType  # 1
            """corresponds to "phenotype" """
            TYPE_SUBPHENOTYPE: Trait.TraitRelationship._Type.ValueType  # 2
            """corresponds to "Subphenotype" """
            TYPE_DRUG_RESPONSE_AND_DISEASE: Trait.TraitRelationship._Type.ValueType  # 3
            """corresponds to "DrugResponseAndDisease" """
            TYPE_CO_OCCURING_CONDITION: Trait.TraitRelationship._Type.ValueType  # 4
            """corresponds to "co-occuring condition" """
            TYPE_FINDING_MEMBER: Trait.TraitRelationship._Type.ValueType  # 5
            """corresponds to "Finding member" """

        class Type(_Type, metaclass=_TypeEnumTypeWrapper):
            """Local enumeration for trait types.

            NB: only DrugResponseAndDisease is used in the XML.
            """

        TYPE_UNSPECIFIED: Trait.TraitRelationship.Type.ValueType  # 0
        """unspecified trait type"""
        TYPE_PHENOTYPE: Trait.TraitRelationship.Type.ValueType  # 1
        """corresponds to "phenotype" """
        TYPE_SUBPHENOTYPE: Trait.TraitRelationship.Type.ValueType  # 2
        """corresponds to "Subphenotype" """
        TYPE_DRUG_RESPONSE_AND_DISEASE: Trait.TraitRelationship.Type.ValueType  # 3
        """corresponds to "DrugResponseAndDisease" """
        TYPE_CO_OCCURING_CONDITION: Trait.TraitRelationship.Type.ValueType  # 4
        """corresponds to "co-occuring condition" """
        TYPE_FINDING_MEMBER: Trait.TraitRelationship.Type.ValueType  # 5
        """corresponds to "Finding member" """

        NAMES_FIELD_NUMBER: builtins.int
        CITATIONS_FIELD_NUMBER: builtins.int
        XREFS_FIELD_NUMBER: builtins.int
        COMMENTS_FIELD_NUMBER: builtins.int
        SOURCES_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        type: global___Trait.TraitRelationship.Type.ValueType
        """attributes

        Trait type.
        """
        @property
        def names(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___GenericSetElement
        ]:
            """nested elements

            Name(s) of the trait.
            """

        @property
        def citations(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
            """Citation list."""

        @property
        def xrefs(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
            """Xref list."""

        @property
        def comments(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
            """Comment list."""

        @property
        def sources(
            self,
        ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
            """Sources"""

        def __init__(
            self,
            *,
            names: collections.abc.Iterable[global___GenericSetElement] | None = ...,
            citations: collections.abc.Iterable[global___Citation] | None = ...,
            xrefs: collections.abc.Iterable[global___Xref] | None = ...,
            comments: collections.abc.Iterable[global___Comment] | None = ...,
            sources: collections.abc.Iterable[builtins.str] | None = ...,
            type: global___Trait.TraitRelationship.Type.ValueType = ...,
        ) -> None: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "citations",
                b"citations",
                "comments",
                b"comments",
                "names",
                b"names",
                "sources",
                b"sources",
                "type",
                b"type",
                "xrefs",
                b"xrefs",
            ],
        ) -> None: ...

    NAMES_FIELD_NUMBER: builtins.int
    SYMBOLS_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    TRAIT_RELATIONSHIPS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    SOURCES_FIELD_NUMBER: builtins.int
    @property
    def names(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___GenericSetElement
    ]:
        """names"""

    @property
    def symbols(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___GenericSetElement
    ]:
        """symbols"""

    @property
    def attributes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___AttributeSetElement
    ]:
        """attributes"""

    @property
    def trait_relationships(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___Trait.TraitRelationship
    ]:
        """Trait relationships"""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """Citation list."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """Xref list."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """Comment list."""

    @property
    def sources(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """Sources"""

    def __init__(
        self,
        *,
        names: collections.abc.Iterable[global___GenericSetElement] | None = ...,
        symbols: collections.abc.Iterable[global___GenericSetElement] | None = ...,
        attributes: collections.abc.Iterable[global___AttributeSetElement] | None = ...,
        trait_relationships: (
            collections.abc.Iterable[global___Trait.TraitRelationship] | None
        ) = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        sources: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "attributes",
            b"attributes",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "names",
            b"names",
            "sources",
            b"sources",
            "symbols",
            b"symbols",
            "trait_relationships",
            b"trait_relationships",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...

global___Trait = Trait

@typing.final
class Indication(google.protobuf.message.Message):
    """Describes an indication.

    NB: Called "IndicationType" in the XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _TypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Indication._Type.ValueType],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        TYPE_UNSPECIFIED: Indication._Type.ValueType  # 0
        """unspecified indication type."""
        TYPE_INDICATION: Indication._Type.ValueType  # 1
        """corresponds to "Indication" """

    class Type(_Type, metaclass=_TypeEnumTypeWrapper):
        """Enumeration for the indication type."""

    TYPE_UNSPECIFIED: Indication.Type.ValueType  # 0
    """unspecified indication type."""
    TYPE_INDICATION: Indication.Type.ValueType  # 1
    """corresponds to "Indication" """

    TRAITS_FIELD_NUMBER: builtins.int
    NAMES_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    type: global___Indication.Type.ValueType
    """attributes

    The type of indication.
    """
    @property
    def traits(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Trait]:
        """nested elements

        Represents the value for the test indication as a name of a trait.
        """

    @property
    def names(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___GenericSetElement
    ]:
        """List of names."""

    @property
    def attributes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___AttributeSetElement
    ]:
        """List of attributes."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    def __init__(
        self,
        *,
        traits: collections.abc.Iterable[global___Trait] | None = ...,
        names: collections.abc.Iterable[global___GenericSetElement] | None = ...,
        attributes: collections.abc.Iterable[global___AttributeSetElement] | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        type: global___Indication.Type.ValueType = ...,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "attributes",
            b"attributes",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "names",
            b"names",
            "traits",
            b"traits",
            "type",
            b"type",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...

global___Indication = Indication

@typing.final
class TraitSet(google.protobuf.message.Message):
    """A set of ``Trait`` objects.

    NB: Called "ClinAsserTraitSetType" in the XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _TypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[TraitSet._Type.ValueType],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        TYPE_UNSPECIFIED: TraitSet._Type.ValueType  # 0
        """unspecified type"""
        TYPE_DISEASE: TraitSet._Type.ValueType  # 1
        """corresponds to "Disease" """
        TYPE_DRUG_RESPONSE: TraitSet._Type.ValueType  # 2
        """corresponds to "DrugResponse" """
        TYPE_FINDING: TraitSet._Type.ValueType  # 3
        """corresponds to "Finding" """
        TYPE_PHENOTYPE_INSTRUCTION: TraitSet._Type.ValueType  # 4
        """corresponds to "PhenotypeInstruction" """
        TYPE_TRAIT_CHOICE: TraitSet._Type.ValueType  # 5
        """corresponds to "TraitChoice" """

    class Type(_Type, metaclass=_TypeEnumTypeWrapper):
        """Local type."""

    TYPE_UNSPECIFIED: TraitSet.Type.ValueType  # 0
    """unspecified type"""
    TYPE_DISEASE: TraitSet.Type.ValueType  # 1
    """corresponds to "Disease" """
    TYPE_DRUG_RESPONSE: TraitSet.Type.ValueType  # 2
    """corresponds to "DrugResponse" """
    TYPE_FINDING: TraitSet.Type.ValueType  # 3
    """corresponds to "Finding" """
    TYPE_PHENOTYPE_INSTRUCTION: TraitSet.Type.ValueType  # 4
    """corresponds to "PhenotypeInstruction" """
    TYPE_TRAIT_CHOICE: TraitSet.Type.ValueType  # 5
    """corresponds to "TraitChoice" """

    TRAITS_FIELD_NUMBER: builtins.int
    NAMES_FIELD_NUMBER: builtins.int
    SYMBOLS_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    DATE_LAST_EVALUATED_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    CONTRIBUTES_TO_AGGREGATE_CLASSIFICATION_FIELD_NUMBER: builtins.int
    LOWER_LEVEL_OF_EVIDENCE_FIELD_NUMBER: builtins.int
    MULTIPLE_CONDITION_EXPLANATION_FIELD_NUMBER: builtins.int
    type: global___TraitSet.Type.ValueType
    """attributes

    The type.
    """
    id: builtins.int
    """ID."""
    contributes_to_aggregate_classification: builtins.bool
    """Whether contributes to aggregate classification."""
    lower_level_of_evidence: builtins.bool
    """Lower level of evidence."""
    multiple_condition_explanation: builtins.str
    """Explanation of or multiple conditions."""
    @property
    def traits(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Trait]:
        """nested elements

        The traits.
        """

    @property
    def names(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___GenericSetElement
    ]:
        """The names."""

    @property
    def symbols(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___GenericSetElement
    ]:
        """The symbols."""

    @property
    def attributes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___AttributeSetElement
    ]:
        """The attributes."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    @property
    def date_last_evaluated(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Date of last evaluation."""

    def __init__(
        self,
        *,
        traits: collections.abc.Iterable[global___Trait] | None = ...,
        names: collections.abc.Iterable[global___GenericSetElement] | None = ...,
        symbols: collections.abc.Iterable[global___GenericSetElement] | None = ...,
        attributes: collections.abc.Iterable[global___AttributeSetElement] | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        type: global___TraitSet.Type.ValueType = ...,
        date_last_evaluated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        id: builtins.int | None = ...,
        contributes_to_aggregate_classification: builtins.bool | None = ...,
        lower_level_of_evidence: builtins.bool | None = ...,
        multiple_condition_explanation: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_contributes_to_aggregate_classification",
            b"_contributes_to_aggregate_classification",
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_id",
            b"_id",
            "_lower_level_of_evidence",
            b"_lower_level_of_evidence",
            "_multiple_condition_explanation",
            b"_multiple_condition_explanation",
            "contributes_to_aggregate_classification",
            b"contributes_to_aggregate_classification",
            "date_last_evaluated",
            b"date_last_evaluated",
            "id",
            b"id",
            "lower_level_of_evidence",
            b"lower_level_of_evidence",
            "multiple_condition_explanation",
            b"multiple_condition_explanation",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_contributes_to_aggregate_classification",
            b"_contributes_to_aggregate_classification",
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_id",
            b"_id",
            "_lower_level_of_evidence",
            b"_lower_level_of_evidence",
            "_multiple_condition_explanation",
            b"_multiple_condition_explanation",
            "attributes",
            b"attributes",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "contributes_to_aggregate_classification",
            b"contributes_to_aggregate_classification",
            "date_last_evaluated",
            b"date_last_evaluated",
            "id",
            b"id",
            "lower_level_of_evidence",
            b"lower_level_of_evidence",
            "multiple_condition_explanation",
            b"multiple_condition_explanation",
            "names",
            b"names",
            "symbols",
            b"symbols",
            "traits",
            b"traits",
            "type",
            b"type",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal[
            "_contributes_to_aggregate_classification", b"_contributes_to_aggregate_classification"
        ],
    ) -> typing.Literal["contributes_to_aggregate_classification"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_date_last_evaluated", b"_date_last_evaluated"]
    ) -> typing.Literal["date_last_evaluated"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_id", b"_id"]
    ) -> typing.Literal["id"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_lower_level_of_evidence", b"_lower_level_of_evidence"]
    ) -> typing.Literal["lower_level_of_evidence"] | None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal[
            "_multiple_condition_explanation", b"_multiple_condition_explanation"
        ],
    ) -> typing.Literal["multiple_condition_explanation"] | None: ...

global___TraitSet = TraitSet

@typing.final
class AggregatedGermlineClassification(google.protobuf.message.Message):
    """Aggregated germline classification info.

    Corresponds to ``typeAggregatedGermlineClassification`` in XSD.
    nested elements
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    REVIEW_STATUS_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    EXPLANATION_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    HISTORY_RECORDS_FIELD_NUMBER: builtins.int
    CONDITIONS_FIELD_NUMBER: builtins.int
    DATE_LAST_EVALUATED_FIELD_NUMBER: builtins.int
    DATE_CREATED_FIELD_NUMBER: builtins.int
    MOST_RECENT_SUBMISSION_FIELD_NUMBER: builtins.int
    NUMBER_OF_SUBMITTERS_FIELD_NUMBER: builtins.int
    NUMBER_OF_SUBMISSIONS_FIELD_NUMBER: builtins.int
    review_status: global___AggregateGermlineReviewStatus.ValueType
    """The aggregate review status based on all germline submissions
    for this record.
    """
    description: builtins.str
    """We are not providing an enumeration for the values we report
    for germline classification within the xsd. Details are in
    https://github.com/ncbi/clinvar/ClassificationOnClinVar.md
    """
    number_of_submitters: builtins.int
    """Number of submitters."""
    number_of_submissions: builtins.int
    """Number of submissions."""
    @property
    def explanation(self) -> global___Comment:
        """Explanation is used only when the description is 'conflicting
        data from submitters' The element summarizes the conflict.
        """

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    @property
    def history_records(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___DescriptionHistory
    ]:
        """History information."""

    @property
    def conditions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TraitSet]:
        """List of conditions."""

    @property
    def date_last_evaluated(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """attributes

        Date of last evaluation.
        """

    @property
    def date_created(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Date of creation."""

    @property
    def most_recent_submission(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Date of most recent submission."""

    def __init__(
        self,
        *,
        review_status: global___AggregateGermlineReviewStatus.ValueType = ...,
        description: builtins.str | None = ...,
        explanation: global___Comment | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        history_records: collections.abc.Iterable[global___DescriptionHistory] | None = ...,
        conditions: collections.abc.Iterable[global___TraitSet] | None = ...,
        date_last_evaluated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        date_created: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        most_recent_submission: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        number_of_submitters: builtins.int | None = ...,
        number_of_submissions: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_description",
            b"_description",
            "_explanation",
            b"_explanation",
            "_number_of_submissions",
            b"_number_of_submissions",
            "_number_of_submitters",
            b"_number_of_submitters",
            "date_created",
            b"date_created",
            "date_last_evaluated",
            b"date_last_evaluated",
            "description",
            b"description",
            "explanation",
            b"explanation",
            "most_recent_submission",
            b"most_recent_submission",
            "number_of_submissions",
            b"number_of_submissions",
            "number_of_submitters",
            b"number_of_submitters",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_description",
            b"_description",
            "_explanation",
            b"_explanation",
            "_number_of_submissions",
            b"_number_of_submissions",
            "_number_of_submitters",
            b"_number_of_submitters",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "conditions",
            b"conditions",
            "date_created",
            b"date_created",
            "date_last_evaluated",
            b"date_last_evaluated",
            "description",
            b"description",
            "explanation",
            b"explanation",
            "history_records",
            b"history_records",
            "most_recent_submission",
            b"most_recent_submission",
            "number_of_submissions",
            b"number_of_submissions",
            "number_of_submitters",
            b"number_of_submitters",
            "review_status",
            b"review_status",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_date_last_evaluated", b"_date_last_evaluated"]
    ) -> typing.Literal["date_last_evaluated"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_description", b"_description"]
    ) -> typing.Literal["description"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_explanation", b"_explanation"]
    ) -> typing.Literal["explanation"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_of_submissions", b"_number_of_submissions"]
    ) -> typing.Literal["number_of_submissions"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_of_submitters", b"_number_of_submitters"]
    ) -> typing.Literal["number_of_submitters"] | None: ...

global___AggregatedGermlineClassification = AggregatedGermlineClassification

@typing.final
class AggregatedSomaticClinicalImpact(google.protobuf.message.Message):
    """Aggregated somatic clinical impact info.
    nested elements
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    REVIEW_STATUS_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    HISTORY_RECORDS_FIELD_NUMBER: builtins.int
    CONDITIONS_FIELD_NUMBER: builtins.int
    DATE_LAST_EVALUATED_FIELD_NUMBER: builtins.int
    DATE_CREATED_FIELD_NUMBER: builtins.int
    MOST_RECENT_SUBMISSION_FIELD_NUMBER: builtins.int
    NUMBER_OF_SUBMITTERS_FIELD_NUMBER: builtins.int
    NUMBER_OF_SUBMISSIONS_FIELD_NUMBER: builtins.int
    review_status: global___AggregateSomaticClinicalImpactReviewStatus.ValueType
    """The aggregate review status based on all somatic clinical
    impact submissions for this record.
    """
    description: builtins.str
    """We are not providing an enumeration for the values we report
    for somatic clinical impact classification within the xsd. Details are in
    https://github.com/ncbi/clinvar/ClassificationOnClinVar.md
    """
    number_of_submitters: builtins.int
    """Number of submitters."""
    number_of_submissions: builtins.int
    """Number of submissions."""
    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    @property
    def history_records(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___DescriptionHistory
    ]:
        """History information."""

    @property
    def conditions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TraitSet]:
        """List of conditions."""

    @property
    def date_last_evaluated(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """attributes

        Date of last evaluation.
        """

    @property
    def date_created(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Date of creation."""

    @property
    def most_recent_submission(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Date of most recent submission."""

    def __init__(
        self,
        *,
        review_status: global___AggregateSomaticClinicalImpactReviewStatus.ValueType = ...,
        description: builtins.str | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        history_records: collections.abc.Iterable[global___DescriptionHistory] | None = ...,
        conditions: collections.abc.Iterable[global___TraitSet] | None = ...,
        date_last_evaluated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        date_created: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        most_recent_submission: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        number_of_submitters: builtins.int | None = ...,
        number_of_submissions: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_description",
            b"_description",
            "_number_of_submissions",
            b"_number_of_submissions",
            "_number_of_submitters",
            b"_number_of_submitters",
            "date_created",
            b"date_created",
            "date_last_evaluated",
            b"date_last_evaluated",
            "description",
            b"description",
            "most_recent_submission",
            b"most_recent_submission",
            "number_of_submissions",
            b"number_of_submissions",
            "number_of_submitters",
            b"number_of_submitters",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_description",
            b"_description",
            "_number_of_submissions",
            b"_number_of_submissions",
            "_number_of_submitters",
            b"_number_of_submitters",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "conditions",
            b"conditions",
            "date_created",
            b"date_created",
            "date_last_evaluated",
            b"date_last_evaluated",
            "description",
            b"description",
            "history_records",
            b"history_records",
            "most_recent_submission",
            b"most_recent_submission",
            "number_of_submissions",
            b"number_of_submissions",
            "number_of_submitters",
            b"number_of_submitters",
            "review_status",
            b"review_status",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_date_last_evaluated", b"_date_last_evaluated"]
    ) -> typing.Literal["date_last_evaluated"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_description", b"_description"]
    ) -> typing.Literal["description"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_of_submissions", b"_number_of_submissions"]
    ) -> typing.Literal["number_of_submissions"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_of_submitters", b"_number_of_submitters"]
    ) -> typing.Literal["number_of_submitters"] | None: ...

global___AggregatedSomaticClinicalImpact = AggregatedSomaticClinicalImpact

@typing.final
class AggregatedOncogenicityClassification(google.protobuf.message.Message):
    """Aggregated oncogenicity classification info.
    nested elements
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    REVIEW_STATUS_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    HISTORY_RECORDS_FIELD_NUMBER: builtins.int
    CONDITIONS_FIELD_NUMBER: builtins.int
    DATE_LAST_EVALUATED_FIELD_NUMBER: builtins.int
    DATE_CREATED_FIELD_NUMBER: builtins.int
    MOST_RECENT_SUBMISSION_FIELD_NUMBER: builtins.int
    NUMBER_OF_SUBMITTERS_FIELD_NUMBER: builtins.int
    NUMBER_OF_SUBMISSIONS_FIELD_NUMBER: builtins.int
    review_status: global___AggregateOncogenicityReviewStatus.ValueType
    """The aggregate review status based on all somatic clinical
    impact submissions for this record.
    """
    description: builtins.str
    """We are not providing an enumeration for the values we report
    for somatic clinical impact classification within the xsd. Details are in
    https://github.com/ncbi/clinvar/ClassificationOnClinVar.md
    """
    number_of_submitters: builtins.int
    """Number of submitters."""
    number_of_submissions: builtins.int
    """Number of submissions."""
    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    @property
    def history_records(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___DescriptionHistory
    ]:
        """History information."""

    @property
    def conditions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TraitSet]:
        """List of conditions."""

    @property
    def date_last_evaluated(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """attributes

        Date of last evaluation.
        """

    @property
    def date_created(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Date of creation."""

    @property
    def most_recent_submission(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Date of most recent submission."""

    def __init__(
        self,
        *,
        review_status: global___AggregateOncogenicityReviewStatus.ValueType = ...,
        description: builtins.str | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        history_records: collections.abc.Iterable[global___DescriptionHistory] | None = ...,
        conditions: collections.abc.Iterable[global___TraitSet] | None = ...,
        date_last_evaluated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        date_created: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        most_recent_submission: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        number_of_submitters: builtins.int | None = ...,
        number_of_submissions: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_description",
            b"_description",
            "_number_of_submissions",
            b"_number_of_submissions",
            "_number_of_submitters",
            b"_number_of_submitters",
            "date_created",
            b"date_created",
            "date_last_evaluated",
            b"date_last_evaluated",
            "description",
            b"description",
            "most_recent_submission",
            b"most_recent_submission",
            "number_of_submissions",
            b"number_of_submissions",
            "number_of_submitters",
            b"number_of_submitters",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_description",
            b"_description",
            "_number_of_submissions",
            b"_number_of_submissions",
            "_number_of_submitters",
            b"_number_of_submitters",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "conditions",
            b"conditions",
            "date_created",
            b"date_created",
            "date_last_evaluated",
            b"date_last_evaluated",
            "description",
            b"description",
            "history_records",
            b"history_records",
            "most_recent_submission",
            b"most_recent_submission",
            "number_of_submissions",
            b"number_of_submissions",
            "number_of_submitters",
            b"number_of_submitters",
            "review_status",
            b"review_status",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_date_last_evaluated", b"_date_last_evaluated"]
    ) -> typing.Literal["date_last_evaluated"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_description", b"_description"]
    ) -> typing.Literal["description"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_of_submissions", b"_number_of_submissions"]
    ) -> typing.Literal["number_of_submissions"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_of_submitters", b"_number_of_submitters"]
    ) -> typing.Literal["number_of_submitters"] | None: ...

global___AggregatedOncogenicityClassification = AggregatedOncogenicityClassification

@typing.final
class AggregateClassificationSet(google.protobuf.message.Message):
    """Used to bundle different types of Classifications (germline,
    oncogenic, somatic clinical impact) ; Supports summary as
    well as submission details.

    NB: called "typeAggregateClassificationSet" in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    GERMLINE_CLASSIFICATION_FIELD_NUMBER: builtins.int
    SOMATIC_CLINICAL_IMPACT_FIELD_NUMBER: builtins.int
    ONCOGENICITY_CLASSIFICATION_FIELD_NUMBER: builtins.int
    @property
    def germline_classification(self) -> global___AggregatedGermlineClassification:
        """The aggregate germline classification."""

    @property
    def somatic_clinical_impact(self) -> global___AggregatedSomaticClinicalImpact:
        """The aggregate somatic clinical impact."""

    @property
    def oncogenicity_classification(self) -> global___AggregatedOncogenicityClassification:
        """The aggregate oncogenicity classification."""

    def __init__(
        self,
        *,
        germline_classification: global___AggregatedGermlineClassification | None = ...,
        somatic_clinical_impact: global___AggregatedSomaticClinicalImpact | None = ...,
        oncogenicity_classification: global___AggregatedOncogenicityClassification | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_germline_classification",
            b"_germline_classification",
            "_oncogenicity_classification",
            b"_oncogenicity_classification",
            "_somatic_clinical_impact",
            b"_somatic_clinical_impact",
            "germline_classification",
            b"germline_classification",
            "oncogenicity_classification",
            b"oncogenicity_classification",
            "somatic_clinical_impact",
            b"somatic_clinical_impact",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_germline_classification",
            b"_germline_classification",
            "_oncogenicity_classification",
            b"_oncogenicity_classification",
            "_somatic_clinical_impact",
            b"_somatic_clinical_impact",
            "germline_classification",
            b"germline_classification",
            "oncogenicity_classification",
            b"oncogenicity_classification",
            "somatic_clinical_impact",
            b"somatic_clinical_impact",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_germline_classification", b"_germline_classification"]
    ) -> typing.Literal["germline_classification"] | None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal[
            "_oncogenicity_classification", b"_oncogenicity_classification"
        ],
    ) -> typing.Literal["oncogenicity_classification"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_somatic_clinical_impact", b"_somatic_clinical_impact"]
    ) -> typing.Literal["somatic_clinical_impact"] | None: ...

global___AggregateClassificationSet = AggregateClassificationSet

@typing.final
class ClinicalSignificance(google.protobuf.message.Message):
    """Describes the clinical significance of a variant.

    Corresponds to `ClinicalSignificanceType` in XSD.
    contained elements
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    REVIEW_STATUS_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    EXPLANATION_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    DATE_LAST_EVALUATED_FIELD_NUMBER: builtins.int
    review_status: global___SubmitterReviewStatus.ValueType
    """The optional review status."""
    description: builtins.str
    """Structure used to support old data of AlleleDescriptionSet
    within Co-occurenceSet.

    NB: unused in XML
    """
    @property
    def explanation(self) -> global___Comment:
        """Optional explanatory comment.

        Explanation is used only when the description is 'conflicting
        data from submitters' The element summarizes the conflict.

        NB: unused in XML
        """

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """Optional list of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """Optional list of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """Optional list of comments."""

    @property
    def date_last_evaluated(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """attributes

        Date of last evaluation.

        NB: unused in XML
        """

    def __init__(
        self,
        *,
        review_status: global___SubmitterReviewStatus.ValueType | None = ...,
        description: builtins.str | None = ...,
        explanation: global___Comment | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        date_last_evaluated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_description",
            b"_description",
            "_explanation",
            b"_explanation",
            "_review_status",
            b"_review_status",
            "date_last_evaluated",
            b"date_last_evaluated",
            "description",
            b"description",
            "explanation",
            b"explanation",
            "review_status",
            b"review_status",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_description",
            b"_description",
            "_explanation",
            b"_explanation",
            "_review_status",
            b"_review_status",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "date_last_evaluated",
            b"date_last_evaluated",
            "description",
            b"description",
            "explanation",
            b"explanation",
            "review_status",
            b"review_status",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_date_last_evaluated", b"_date_last_evaluated"]
    ) -> typing.Literal["date_last_evaluated"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_description", b"_description"]
    ) -> typing.Literal["description"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_explanation", b"_explanation"]
    ) -> typing.Literal["explanation"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_review_status", b"_review_status"]
    ) -> typing.Literal["review_status"] | None: ...

global___ClinicalSignificance = ClinicalSignificance

@typing.final
class AlleleDescription(google.protobuf.message.Message):
    """This is to be used within co-occurrence set.

    Corresponds to `typeAlleleDescr` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _RelativeOrientationEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            AlleleDescription._RelativeOrientation.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        RELATIVE_ORIENTATION_UNSPECIFIED: AlleleDescription._RelativeOrientation.ValueType  # 0
        """unspecified relative orientation"""
        RELATIVE_ORIENTATION_CIS: AlleleDescription._RelativeOrientation.ValueType  # 1
        """corresponds to "cis" """
        RELATIVE_ORIENTATION_TRANS: AlleleDescription._RelativeOrientation.ValueType  # 2
        """corresponds to "trans" """
        RELATIVE_ORIENTATION_UNKNOWN: AlleleDescription._RelativeOrientation.ValueType  # 3
        """corresponds to "unknown" """

    class RelativeOrientation(_RelativeOrientation, metaclass=_RelativeOrientationEnumTypeWrapper):
        """Enumeration for relative orientation.

        NB: unused in XML
        """

    RELATIVE_ORIENTATION_UNSPECIFIED: AlleleDescription.RelativeOrientation.ValueType  # 0
    """unspecified relative orientation"""
    RELATIVE_ORIENTATION_CIS: AlleleDescription.RelativeOrientation.ValueType  # 1
    """corresponds to "cis" """
    RELATIVE_ORIENTATION_TRANS: AlleleDescription.RelativeOrientation.ValueType  # 2
    """corresponds to "trans" """
    RELATIVE_ORIENTATION_UNKNOWN: AlleleDescription.RelativeOrientation.ValueType  # 3
    """corresponds to "unknown" """

    NAME_FIELD_NUMBER: builtins.int
    RELATIVE_ORIENTATION_FIELD_NUMBER: builtins.int
    ZYGOSITY_FIELD_NUMBER: builtins.int
    CLINICAL_SIGNIFICANCE_FIELD_NUMBER: builtins.int
    name: builtins.str
    """The name of the allele."""
    relative_orientation: global___AlleleDescription.RelativeOrientation.ValueType
    """Optional relative orientation.

    NB: Unused in XML
    """
    zygosity: global___Zygosity.ValueType
    """Optional zygosity."""
    @property
    def clinical_significance(self) -> global___ClinicalSignificance:
        """Optional clinical significance.

        Corresponds to `ClinicalSignificanceType` in XSD.
        """

    def __init__(
        self,
        *,
        name: builtins.str = ...,
        relative_orientation: global___AlleleDescription.RelativeOrientation.ValueType | None = ...,
        zygosity: global___Zygosity.ValueType | None = ...,
        clinical_significance: global___ClinicalSignificance | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_clinical_significance",
            b"_clinical_significance",
            "_relative_orientation",
            b"_relative_orientation",
            "_zygosity",
            b"_zygosity",
            "clinical_significance",
            b"clinical_significance",
            "relative_orientation",
            b"relative_orientation",
            "zygosity",
            b"zygosity",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_clinical_significance",
            b"_clinical_significance",
            "_relative_orientation",
            b"_relative_orientation",
            "_zygosity",
            b"_zygosity",
            "clinical_significance",
            b"clinical_significance",
            "name",
            b"name",
            "relative_orientation",
            b"relative_orientation",
            "zygosity",
            b"zygosity",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_clinical_significance", b"_clinical_significance"]
    ) -> typing.Literal["clinical_significance"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_relative_orientation", b"_relative_orientation"]
    ) -> typing.Literal["relative_orientation"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_zygosity", b"_zygosity"]
    ) -> typing.Literal["zygosity"] | None: ...

global___AlleleDescription = AlleleDescription

@typing.final
class RecordHistory(google.protobuf.message.Message):
    """A structure to support reporting of an accession, its version, the
    date its status changed, and text describing that change.

    Corresponds to `typeRecordHistory` in XSD.
    nested elements
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COMMENT_FIELD_NUMBER: builtins.int
    ACCESSION_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    DATE_CHANGED_FIELD_NUMBER: builtins.int
    VARIATION_ID_FIELD_NUMBER: builtins.int
    accession: builtins.str
    """attributes

    The accession.
    """
    version: builtins.int
    """The version."""
    variation_id: builtins.int
    """Attribute @VaritionID is only populated for VCV, where @Accession
    is like VCV000000009
    """
    @property
    def comment(self) -> global___Comment:
        """Optional comment on the history record."""

    @property
    def date_changed(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The date the record."""

    def __init__(
        self,
        *,
        comment: global___Comment | None = ...,
        accession: builtins.str = ...,
        version: builtins.int = ...,
        date_changed: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        variation_id: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_comment",
            b"_comment",
            "_variation_id",
            b"_variation_id",
            "comment",
            b"comment",
            "date_changed",
            b"date_changed",
            "variation_id",
            b"variation_id",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_comment",
            b"_comment",
            "_variation_id",
            b"_variation_id",
            "accession",
            b"accession",
            "comment",
            b"comment",
            "date_changed",
            b"date_changed",
            "variation_id",
            b"variation_id",
            "version",
            b"version",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_comment", b"_comment"]
    ) -> typing.Literal["comment"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_variation_id", b"_variation_id"]
    ) -> typing.Literal["variation_id"] | None: ...

global___RecordHistory = RecordHistory

@typing.final
class ClassificationScv(google.protobuf.message.Message):
    """Report classification of a variant for a SCV.

    Corresponds to `ClassificationTypeSCV` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class SomaticClinicalImpact(google.protobuf.message.Message):
        """Clinical impact of a somatic variatn."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        VALUE_FIELD_NUMBER: builtins.int
        CLINICAL_IMPACT_ASSERTION_TYPE_FIELD_NUMBER: builtins.int
        CLINICAL_IMPACT_CLINICAL_SIGNIFICANCE_FIELD_NUMBER: builtins.int
        DRUG_FOR_THERAPEUTIC_ASSERTION_FIELD_NUMBER: builtins.int
        value: builtins.str
        """The somatic clinical impact value."""
        clinical_impact_assertion_type: builtins.str
        """attributes

        Type of the clinical impact assertion.
        """
        clinical_impact_clinical_significance: builtins.str
        """Clinical impact significance."""
        drug_for_therapeutic_assertion: builtins.str
        """Name of the drug for the therapeutic assertion."""
        def __init__(
            self,
            *,
            value: builtins.str = ...,
            clinical_impact_assertion_type: builtins.str | None = ...,
            clinical_impact_clinical_significance: builtins.str | None = ...,
            drug_for_therapeutic_assertion: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_clinical_impact_assertion_type",
                b"_clinical_impact_assertion_type",
                "_clinical_impact_clinical_significance",
                b"_clinical_impact_clinical_significance",
                "_drug_for_therapeutic_assertion",
                b"_drug_for_therapeutic_assertion",
                "clinical_impact_assertion_type",
                b"clinical_impact_assertion_type",
                "clinical_impact_clinical_significance",
                b"clinical_impact_clinical_significance",
                "drug_for_therapeutic_assertion",
                b"drug_for_therapeutic_assertion",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_clinical_impact_assertion_type",
                b"_clinical_impact_assertion_type",
                "_clinical_impact_clinical_significance",
                b"_clinical_impact_clinical_significance",
                "_drug_for_therapeutic_assertion",
                b"_drug_for_therapeutic_assertion",
                "clinical_impact_assertion_type",
                b"clinical_impact_assertion_type",
                "clinical_impact_clinical_significance",
                b"clinical_impact_clinical_significance",
                "drug_for_therapeutic_assertion",
                b"drug_for_therapeutic_assertion",
                "value",
                b"value",
            ],
        ) -> None: ...
        @typing.overload
        def WhichOneof(
            self,
            oneof_group: typing.Literal[
                "_clinical_impact_assertion_type", b"_clinical_impact_assertion_type"
            ],
        ) -> typing.Literal["clinical_impact_assertion_type"] | None: ...
        @typing.overload
        def WhichOneof(
            self,
            oneof_group: typing.Literal[
                "_clinical_impact_clinical_significance", b"_clinical_impact_clinical_significance"
            ],
        ) -> typing.Literal["clinical_impact_clinical_significance"] | None: ...
        @typing.overload
        def WhichOneof(
            self,
            oneof_group: typing.Literal[
                "_drug_for_therapeutic_assertion", b"_drug_for_therapeutic_assertion"
            ],
        ) -> typing.Literal["drug_for_therapeutic_assertion"] | None: ...

    @typing.final
    class ClassificationScore(google.protobuf.message.Message):
        """Classification score description."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        VALUE_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        value: builtins.float
        """The score's value."""
        type: builtins.str
        """The score's type; optional."""
        def __init__(
            self,
            *,
            value: builtins.float = ...,
            type: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing.Literal["_type", b"_type", "type", b"type"]
        ) -> builtins.bool: ...
        def ClearField(
            self, field_name: typing.Literal["_type", b"_type", "type", b"type", "value", b"value"]
        ) -> None: ...
        def WhichOneof(
            self, oneof_group: typing.Literal["_type", b"_type"]
        ) -> typing.Literal["type"] | None: ...

    REVIEW_STATUS_FIELD_NUMBER: builtins.int
    GERMLINE_CLASSIFICATION_FIELD_NUMBER: builtins.int
    SOMATIC_CLINICAL_IMPACT_FIELD_NUMBER: builtins.int
    ONCOGENICITY_CLASSIFICATION_FIELD_NUMBER: builtins.int
    EXPLANATION_OF_CLASSIFICATION_FIELD_NUMBER: builtins.int
    CLASSIFICATION_SCORES_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    DATE_LAST_EVALUATED_FIELD_NUMBER: builtins.int
    review_status: global___SubmitterReviewStatus.ValueType
    """nested elements

    The field's review status.
    """
    germline_classification: builtins.str
    """The germline classification; mutually exlusive with `somatic_clinical_impact`
    and `oncogenicity_classification`.
    """
    oncogenicity_classification: builtins.str
    """The oncogenicity classification; mutually exlusive with `germline_classification`
    and `oncogenicity_classification`.
    """
    explanation_of_classification: builtins.str
    """Optional explanation of classification."""
    @property
    def somatic_clinical_impact(self) -> global___ClassificationScv.SomaticClinicalImpact:
        """Information on the clinical impact; mutually exlusive with `germline_classification`
        and `oncogenicity_classification`.
        """

    @property
    def classification_scores(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___ClassificationScv.ClassificationScore
    ]:
        """List of classification scores."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    @property
    def date_last_evaluated(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """attributes

        Date of last evaluation.
        """

    def __init__(
        self,
        *,
        review_status: global___SubmitterReviewStatus.ValueType = ...,
        germline_classification: builtins.str | None = ...,
        somatic_clinical_impact: global___ClassificationScv.SomaticClinicalImpact | None = ...,
        oncogenicity_classification: builtins.str | None = ...,
        explanation_of_classification: builtins.str | None = ...,
        classification_scores: (
            collections.abc.Iterable[global___ClassificationScv.ClassificationScore] | None
        ) = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        date_last_evaluated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_explanation_of_classification",
            b"_explanation_of_classification",
            "_germline_classification",
            b"_germline_classification",
            "_oncogenicity_classification",
            b"_oncogenicity_classification",
            "_somatic_clinical_impact",
            b"_somatic_clinical_impact",
            "date_last_evaluated",
            b"date_last_evaluated",
            "explanation_of_classification",
            b"explanation_of_classification",
            "germline_classification",
            b"germline_classification",
            "oncogenicity_classification",
            b"oncogenicity_classification",
            "somatic_clinical_impact",
            b"somatic_clinical_impact",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_date_last_evaluated",
            b"_date_last_evaluated",
            "_explanation_of_classification",
            b"_explanation_of_classification",
            "_germline_classification",
            b"_germline_classification",
            "_oncogenicity_classification",
            b"_oncogenicity_classification",
            "_somatic_clinical_impact",
            b"_somatic_clinical_impact",
            "citations",
            b"citations",
            "classification_scores",
            b"classification_scores",
            "comments",
            b"comments",
            "date_last_evaluated",
            b"date_last_evaluated",
            "explanation_of_classification",
            b"explanation_of_classification",
            "germline_classification",
            b"germline_classification",
            "oncogenicity_classification",
            b"oncogenicity_classification",
            "review_status",
            b"review_status",
            "somatic_clinical_impact",
            b"somatic_clinical_impact",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_date_last_evaluated", b"_date_last_evaluated"]
    ) -> typing.Literal["date_last_evaluated"] | None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal[
            "_explanation_of_classification", b"_explanation_of_classification"
        ],
    ) -> typing.Literal["explanation_of_classification"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_germline_classification", b"_germline_classification"]
    ) -> typing.Literal["germline_classification"] | None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal[
            "_oncogenicity_classification", b"_oncogenicity_classification"
        ],
    ) -> typing.Literal["oncogenicity_classification"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_somatic_clinical_impact", b"_somatic_clinical_impact"]
    ) -> typing.Literal["somatic_clinical_impact"] | None: ...

global___ClassificationScv = ClassificationScv

@typing.final
class SubmitterIdentifiers(google.protobuf.message.Message):
    """Set of attributes for the primary submitter. Any addtional submitters
    are captured in the AdditionalSubmitters element.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SUBMITTER_NAME_FIELD_NUMBER: builtins.int
    ORG_ID_FIELD_NUMBER: builtins.int
    ORG_CATEGORY_FIELD_NUMBER: builtins.int
    ORG_ABBREVIATION_FIELD_NUMBER: builtins.int
    submitter_name: builtins.str
    """Name of submitter."""
    org_id: builtins.int
    """Organization ID."""
    org_category: builtins.str
    """Organization category."""
    org_abbreviation: builtins.str
    """Organization abbreviation; optional."""
    def __init__(
        self,
        *,
        submitter_name: builtins.str = ...,
        org_id: builtins.int = ...,
        org_category: builtins.str = ...,
        org_abbreviation: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_org_abbreviation", b"_org_abbreviation", "org_abbreviation", b"org_abbreviation"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_org_abbreviation",
            b"_org_abbreviation",
            "org_abbreviation",
            b"org_abbreviation",
            "org_category",
            b"org_category",
            "org_id",
            b"org_id",
            "submitter_name",
            b"submitter_name",
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing.Literal["_org_abbreviation", b"_org_abbreviation"]
    ) -> typing.Literal["org_abbreviation"] | None: ...

global___SubmitterIdentifiers = SubmitterIdentifiers

@typing.final
class Species(google.protobuf.message.Message):
    """Definition of a species."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    TAXONOMY_ID_FIELD_NUMBER: builtins.int
    name: builtins.str
    """Name of the species."""
    taxonomy_id: builtins.int
    """Optional taxonomy ID."""
    def __init__(
        self,
        *,
        name: builtins.str = ...,
        taxonomy_id: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal["_taxonomy_id", b"_taxonomy_id", "taxonomy_id", b"taxonomy_id"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_taxonomy_id", b"_taxonomy_id", "name", b"name", "taxonomy_id", b"taxonomy_id"
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing.Literal["_taxonomy_id", b"_taxonomy_id"]
    ) -> typing.Literal["taxonomy_id"] | None: ...

global___Species = Species

@typing.final
class ClassifiedCondition(google.protobuf.message.Message):
    """Interpreted condition for an RCV record.

    Corresponds to `typeRCVInterpretedCondition` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALUE_FIELD_NUMBER: builtins.int
    DB_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    value: builtins.str
    """Condition value."""
    db: builtins.str
    """Database name."""
    id: builtins.str
    """Identifier in database."""
    def __init__(
        self,
        *,
        value: builtins.str = ...,
        db: builtins.str | None = ...,
        id: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing.Literal["_db", b"_db", "_id", b"_id", "db", b"db", "id", b"id"]
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_db", b"_db", "_id", b"_id", "db", b"db", "id", b"id", "value", b"value"
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_db", b"_db"]
    ) -> typing.Literal["db"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_id", b"_id"]
    ) -> typing.Literal["id"] | None: ...

global___ClassifiedCondition = ClassifiedCondition

@typing.final
class ClinicalAssertionRecordHistory(google.protobuf.message.Message):
    """Inside ClinicalAssertion, a structure to support reporting of an
    accession, its version, the date its status changed, and text describing that
    change.

    Corresponds to `typeClinicalAssertionRecordHistory` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COMMENT_FIELD_NUMBER: builtins.int
    ACCESSION_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    DATE_CHANGED_FIELD_NUMBER: builtins.int
    accession: builtins.str
    """Accession."""
    version: builtins.int
    """Optional version."""
    @property
    def comment(self) -> global___Comment:
        """Optional comment."""

    @property
    def date_changed(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Date of the record."""

    def __init__(
        self,
        *,
        comment: global___Comment | None = ...,
        accession: builtins.str = ...,
        version: builtins.int | None = ...,
        date_changed: google.protobuf.timestamp_pb2.Timestamp | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_comment",
            b"_comment",
            "_version",
            b"_version",
            "comment",
            b"comment",
            "date_changed",
            b"date_changed",
            "version",
            b"version",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_comment",
            b"_comment",
            "_version",
            b"_version",
            "accession",
            b"accession",
            "comment",
            b"comment",
            "date_changed",
            b"date_changed",
            "version",
            b"version",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_comment", b"_comment"]
    ) -> typing.Literal["comment"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_version", b"_version"]
    ) -> typing.Literal["version"] | None: ...

global___ClinicalAssertionRecordHistory = ClinicalAssertionRecordHistory

@typing.final
class FunctionalConsequence(google.protobuf.message.Message):
    """Description of a functional consequence.

    Corresponds to `typeFunctionalConsequence` in XSD.
    nested elements
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    value: builtins.str
    """attributes

    Value of functional consequence.
    """
    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    def __init__(
        self,
        *,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        value: builtins.str = ...,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "citations", b"citations", "comments", b"comments", "value", b"value", "xrefs", b"xrefs"
        ],
    ) -> None: ...

global___FunctionalConsequence = FunctionalConsequence

@typing.final
class GeneralCitations(google.protobuf.message.Message):
    """Type for the tag `GeneralCitations`."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    def __init__(
        self,
        *,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
    ) -> None: ...
    def ClearField(
        self, field_name: typing.Literal["citations", b"citations", "xrefs", b"xrefs"]
    ) -> None: ...

global___GeneralCitations = GeneralCitations

@typing.final
class Cooccurrence(google.protobuf.message.Message):
    """This refers to the zygosity of the variant being asserted."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ZYGOSITY_FIELD_NUMBER: builtins.int
    ALLELE_DESCRIPTIONS_FIELD_NUMBER: builtins.int
    COUNT_FIELD_NUMBER: builtins.int
    zygosity: global___Zygosity.ValueType
    """Optional zygosity."""
    count: builtins.int
    """The optional count."""
    @property
    def allele_descriptions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___AlleleDescription
    ]:
        """The allele descriptions."""

    def __init__(
        self,
        *,
        zygosity: global___Zygosity.ValueType | None = ...,
        allele_descriptions: collections.abc.Iterable[global___AlleleDescription] | None = ...,
        count: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_count",
            b"_count",
            "_zygosity",
            b"_zygosity",
            "count",
            b"count",
            "zygosity",
            b"zygosity",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_count",
            b"_count",
            "_zygosity",
            b"_zygosity",
            "allele_descriptions",
            b"allele_descriptions",
            "count",
            b"count",
            "zygosity",
            b"zygosity",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_count", b"_count"]
    ) -> typing.Literal["count"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_zygosity", b"_zygosity"]
    ) -> typing.Literal["zygosity"] | None: ...

global___Cooccurrence = Cooccurrence

@typing.final
class Submitter(google.protobuf.message.Message):
    """A structure to support reporting the name of a submitter, its
    organization id, and its abbreviation and type.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _TypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Submitter._Type.ValueType],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        TYPE_UNSPECIFIED: Submitter._Type.ValueType  # 0
        """unspecified submitter type"""
        TYPE_PRIMARY: Submitter._Type.ValueType  # 1
        """corresponds to "primary" """
        TYPE_SECONDARY: Submitter._Type.ValueType  # 2
        """corresponds to "secondary" """
        TYPE_BEHALF: Submitter._Type.ValueType  # 3
        """corresponds to "behalf" """

    class Type(_Type, metaclass=_TypeEnumTypeWrapper):
        """Enumeration of submitter kind."""

    TYPE_UNSPECIFIED: Submitter.Type.ValueType  # 0
    """unspecified submitter type"""
    TYPE_PRIMARY: Submitter.Type.ValueType  # 1
    """corresponds to "primary" """
    TYPE_SECONDARY: Submitter.Type.ValueType  # 2
    """corresponds to "secondary" """
    TYPE_BEHALF: Submitter.Type.ValueType  # 3
    """corresponds to "behalf" """

    SUBMITTER_IDENTIFIERS_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    type: global___Submitter.Type.ValueType
    """The submitter type."""
    @property
    def submitter_identifiers(self) -> global___SubmitterIdentifiers:
        """The submitter's identifier."""

    def __init__(
        self,
        *,
        submitter_identifiers: global___SubmitterIdentifiers | None = ...,
        type: global___Submitter.Type.ValueType = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing.Literal["submitter_identifiers", b"submitter_identifiers"]
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "submitter_identifiers", b"submitter_identifiers", "type", b"type"
        ],
    ) -> None: ...

global___Submitter = Submitter

@typing.final
class DosageSensitivity(google.protobuf.message.Message):
    """Haploinsufficiency/Triplosensitivity of gene.
    nested elements
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALUE_FIELD_NUMBER: builtins.int
    LAST_EVALUATED_FIELD_NUMBER: builtins.int
    CLINGEN_FIELD_NUMBER: builtins.int
    value: builtins.str
    """Value."""
    clingen: builtins.str
    """URL to ClinGen."""
    @property
    def last_evaluated(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """attributes

        Optional last evaluated date.
        """

    def __init__(
        self,
        *,
        value: builtins.str = ...,
        last_evaluated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        clingen: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_clingen",
            b"_clingen",
            "_last_evaluated",
            b"_last_evaluated",
            "clingen",
            b"clingen",
            "last_evaluated",
            b"last_evaluated",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_clingen",
            b"_clingen",
            "_last_evaluated",
            b"_last_evaluated",
            "clingen",
            b"clingen",
            "last_evaluated",
            b"last_evaluated",
            "value",
            b"value",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_clingen", b"_clingen"]
    ) -> typing.Literal["clingen"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_last_evaluated", b"_last_evaluated"]
    ) -> typing.Literal["last_evaluated"] | None: ...

global___DosageSensitivity = DosageSensitivity

@typing.final
class OtherName(google.protobuf.message.Message):
    """A name with an optional type.

    Corresponds to `typeNames` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALUE_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    value: builtins.str
    """The name's value."""
    type: builtins.str
    """The name's type."""
    def __init__(
        self,
        *,
        value: builtins.str = ...,
        type: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing.Literal["_type", b"_type", "type", b"type"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing.Literal["_type", b"_type", "type", b"type", "value", b"value"]
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing.Literal["_type", b"_type"]
    ) -> typing.Literal["type"] | None: ...

global___OtherName = OtherName

@typing.final
class DeletedScv(google.protobuf.message.Message):
    """A structure to support reporting of an accession, its version, the
    date it was deleted and a free-text summary of why it was deleted.

    Corresponds to `typeDeletedSCV`.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESSION_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    DATE_DELETED_FIELD_NUMBER: builtins.int
    accession: builtins.str
    """The accession."""
    version: builtins.int
    """The version."""
    @property
    def date_deleted(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The date of deletion."""

    def __init__(
        self,
        *,
        accession: builtins.str = ...,
        version: builtins.int = ...,
        date_deleted: google.protobuf.timestamp_pb2.Timestamp | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing.Literal["date_deleted", b"date_deleted"]
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "accession", b"accession", "date_deleted", b"date_deleted", "version", b"version"
        ],
    ) -> None: ...

global___DeletedScv = DeletedScv

@typing.final
class Location(google.protobuf.message.Message):
    """There can be multiple types of location, and the locations may have
    identifiers in other databases.

    Corresponds to `typeLocation` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class SequenceLocation(google.protobuf.message.Message):
        """Local type for sequence location."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _AssemblyStatusEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                Location.SequenceLocation._AssemblyStatus.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            ASSEMBLY_STATUS_UNSPECIFIED: Location.SequenceLocation._AssemblyStatus.ValueType  # 0
            """unspecified assembly status"""
            ASSEMBLY_STATUS_CURRENT: Location.SequenceLocation._AssemblyStatus.ValueType  # 1
            """corresponds to "current" """
            ASSEMBLY_STATUS_PREVIOUS: Location.SequenceLocation._AssemblyStatus.ValueType  # 2
            """corresponds to "previous" """

        class AssemblyStatus(_AssemblyStatus, metaclass=_AssemblyStatusEnumTypeWrapper):
            """Local enum for the assembly status."""

        ASSEMBLY_STATUS_UNSPECIFIED: Location.SequenceLocation.AssemblyStatus.ValueType  # 0
        """unspecified assembly status"""
        ASSEMBLY_STATUS_CURRENT: Location.SequenceLocation.AssemblyStatus.ValueType  # 1
        """corresponds to "current" """
        ASSEMBLY_STATUS_PREVIOUS: Location.SequenceLocation.AssemblyStatus.ValueType  # 2
        """corresponds to "previous" """

        FOR_DISPLAY_FIELD_NUMBER: builtins.int
        ASSEMBLY_FIELD_NUMBER: builtins.int
        CHR_FIELD_NUMBER: builtins.int
        ACCESSION_FIELD_NUMBER: builtins.int
        OUTER_START_FIELD_NUMBER: builtins.int
        INNER_START_FIELD_NUMBER: builtins.int
        START_FIELD_NUMBER: builtins.int
        STOP_FIELD_NUMBER: builtins.int
        INNER_STOP_FIELD_NUMBER: builtins.int
        OUTER_STOP_FIELD_NUMBER: builtins.int
        DISPLAY_START_FIELD_NUMBER: builtins.int
        DISPLAY_STOP_FIELD_NUMBER: builtins.int
        STRAND_FIELD_NUMBER: builtins.int
        VARIANT_LENGTH_FIELD_NUMBER: builtins.int
        REFERENCE_ALLELE_FIELD_NUMBER: builtins.int
        ALTERNATE_ALLELE_FIELD_NUMBER: builtins.int
        ASSEMBLY_ACCESSION_VERSION_FIELD_NUMBER: builtins.int
        ASSEMBLY_STATUS_FIELD_NUMBER: builtins.int
        POSITION_VCF_FIELD_NUMBER: builtins.int
        REFERENCE_ALLELE_VCF_FIELD_NUMBER: builtins.int
        ALTERNATE_ALLELE_VCF_FIELD_NUMBER: builtins.int
        FOR_DISPLAY_LENGTH_FIELD_NUMBER: builtins.int
        for_display: builtins.bool
        """forDisplay value."""
        assembly: builtins.str
        """Name of assembly."""
        chr: global___Chromosome.ValueType
        """Chromosomeof variant."""
        accession: builtins.str
        """Optional chromosome accession."""
        outer_start: builtins.int
        """Outer start position."""
        inner_start: builtins.int
        """Inner start position."""
        start: builtins.int
        """Start position."""
        stop: builtins.int
        """Stop position."""
        inner_stop: builtins.int
        """Inner stop position."""
        outer_stop: builtins.int
        """Outer stop position."""
        display_start: builtins.int
        """Display start position."""
        display_stop: builtins.int
        """Display stop position."""
        strand: builtins.str
        """Strand."""
        variant_length: builtins.int
        """Variant length."""
        reference_allele: builtins.str
        """Reference allele."""
        alternate_allele: builtins.str
        """Alternate allele."""
        assembly_accession_version: builtins.str
        """Assembly accession version."""
        assembly_status: global___Location.SequenceLocation.AssemblyStatus.ValueType
        """Assembly status."""
        position_vcf: builtins.int
        """Position in VCF."""
        reference_allele_vcf: builtins.str
        """Reference allele in VCF."""
        alternate_allele_vcf: builtins.str
        """Alternate allele in VCF."""
        for_display_length: builtins.int
        """For display length."""
        def __init__(
            self,
            *,
            for_display: builtins.bool | None = ...,
            assembly: builtins.str = ...,
            chr: global___Chromosome.ValueType = ...,
            accession: builtins.str | None = ...,
            outer_start: builtins.int | None = ...,
            inner_start: builtins.int | None = ...,
            start: builtins.int | None = ...,
            stop: builtins.int | None = ...,
            inner_stop: builtins.int | None = ...,
            outer_stop: builtins.int | None = ...,
            display_start: builtins.int | None = ...,
            display_stop: builtins.int | None = ...,
            strand: builtins.str | None = ...,
            variant_length: builtins.int | None = ...,
            reference_allele: builtins.str | None = ...,
            alternate_allele: builtins.str | None = ...,
            assembly_accession_version: builtins.str | None = ...,
            assembly_status: (
                global___Location.SequenceLocation.AssemblyStatus.ValueType | None
            ) = ...,
            position_vcf: builtins.int | None = ...,
            reference_allele_vcf: builtins.str | None = ...,
            alternate_allele_vcf: builtins.str | None = ...,
            for_display_length: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_accession",
                b"_accession",
                "_alternate_allele",
                b"_alternate_allele",
                "_alternate_allele_vcf",
                b"_alternate_allele_vcf",
                "_assembly_accession_version",
                b"_assembly_accession_version",
                "_assembly_status",
                b"_assembly_status",
                "_display_start",
                b"_display_start",
                "_display_stop",
                b"_display_stop",
                "_for_display",
                b"_for_display",
                "_for_display_length",
                b"_for_display_length",
                "_inner_start",
                b"_inner_start",
                "_inner_stop",
                b"_inner_stop",
                "_outer_start",
                b"_outer_start",
                "_outer_stop",
                b"_outer_stop",
                "_position_vcf",
                b"_position_vcf",
                "_reference_allele",
                b"_reference_allele",
                "_reference_allele_vcf",
                b"_reference_allele_vcf",
                "_start",
                b"_start",
                "_stop",
                b"_stop",
                "_strand",
                b"_strand",
                "_variant_length",
                b"_variant_length",
                "accession",
                b"accession",
                "alternate_allele",
                b"alternate_allele",
                "alternate_allele_vcf",
                b"alternate_allele_vcf",
                "assembly_accession_version",
                b"assembly_accession_version",
                "assembly_status",
                b"assembly_status",
                "display_start",
                b"display_start",
                "display_stop",
                b"display_stop",
                "for_display",
                b"for_display",
                "for_display_length",
                b"for_display_length",
                "inner_start",
                b"inner_start",
                "inner_stop",
                b"inner_stop",
                "outer_start",
                b"outer_start",
                "outer_stop",
                b"outer_stop",
                "position_vcf",
                b"position_vcf",
                "reference_allele",
                b"reference_allele",
                "reference_allele_vcf",
                b"reference_allele_vcf",
                "start",
                b"start",
                "stop",
                b"stop",
                "strand",
                b"strand",
                "variant_length",
                b"variant_length",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_accession",
                b"_accession",
                "_alternate_allele",
                b"_alternate_allele",
                "_alternate_allele_vcf",
                b"_alternate_allele_vcf",
                "_assembly_accession_version",
                b"_assembly_accession_version",
                "_assembly_status",
                b"_assembly_status",
                "_display_start",
                b"_display_start",
                "_display_stop",
                b"_display_stop",
                "_for_display",
                b"_for_display",
                "_for_display_length",
                b"_for_display_length",
                "_inner_start",
                b"_inner_start",
                "_inner_stop",
                b"_inner_stop",
                "_outer_start",
                b"_outer_start",
                "_outer_stop",
                b"_outer_stop",
                "_position_vcf",
                b"_position_vcf",
                "_reference_allele",
                b"_reference_allele",
                "_reference_allele_vcf",
                b"_reference_allele_vcf",
                "_start",
                b"_start",
                "_stop",
                b"_stop",
                "_strand",
                b"_strand",
                "_variant_length",
                b"_variant_length",
                "accession",
                b"accession",
                "alternate_allele",
                b"alternate_allele",
                "alternate_allele_vcf",
                b"alternate_allele_vcf",
                "assembly",
                b"assembly",
                "assembly_accession_version",
                b"assembly_accession_version",
                "assembly_status",
                b"assembly_status",
                "chr",
                b"chr",
                "display_start",
                b"display_start",
                "display_stop",
                b"display_stop",
                "for_display",
                b"for_display",
                "for_display_length",
                b"for_display_length",
                "inner_start",
                b"inner_start",
                "inner_stop",
                b"inner_stop",
                "outer_start",
                b"outer_start",
                "outer_stop",
                b"outer_stop",
                "position_vcf",
                b"position_vcf",
                "reference_allele",
                b"reference_allele",
                "reference_allele_vcf",
                b"reference_allele_vcf",
                "start",
                b"start",
                "stop",
                b"stop",
                "strand",
                b"strand",
                "variant_length",
                b"variant_length",
            ],
        ) -> None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_accession", b"_accession"]
        ) -> typing.Literal["accession"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_alternate_allele", b"_alternate_allele"]
        ) -> typing.Literal["alternate_allele"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_alternate_allele_vcf", b"_alternate_allele_vcf"]
        ) -> typing.Literal["alternate_allele_vcf"] | None: ...
        @typing.overload
        def WhichOneof(
            self,
            oneof_group: typing.Literal[
                "_assembly_accession_version", b"_assembly_accession_version"
            ],
        ) -> typing.Literal["assembly_accession_version"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_assembly_status", b"_assembly_status"]
        ) -> typing.Literal["assembly_status"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_display_start", b"_display_start"]
        ) -> typing.Literal["display_start"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_display_stop", b"_display_stop"]
        ) -> typing.Literal["display_stop"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_for_display", b"_for_display"]
        ) -> typing.Literal["for_display"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_for_display_length", b"_for_display_length"]
        ) -> typing.Literal["for_display_length"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_inner_start", b"_inner_start"]
        ) -> typing.Literal["inner_start"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_inner_stop", b"_inner_stop"]
        ) -> typing.Literal["inner_stop"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_outer_start", b"_outer_start"]
        ) -> typing.Literal["outer_start"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_outer_stop", b"_outer_stop"]
        ) -> typing.Literal["outer_stop"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_position_vcf", b"_position_vcf"]
        ) -> typing.Literal["position_vcf"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_reference_allele", b"_reference_allele"]
        ) -> typing.Literal["reference_allele"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_reference_allele_vcf", b"_reference_allele_vcf"]
        ) -> typing.Literal["reference_allele_vcf"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_start", b"_start"]
        ) -> typing.Literal["start"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_stop", b"_stop"]
        ) -> typing.Literal["stop"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_strand", b"_strand"]
        ) -> typing.Literal["strand"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_variant_length", b"_variant_length"]
        ) -> typing.Literal["variant_length"] | None: ...

    CYTOGENETIC_LOCATIONS_FIELD_NUMBER: builtins.int
    SEQUENCE_LOCATIONS_FIELD_NUMBER: builtins.int
    GENE_LOCATIONS_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    @property
    def cytogenetic_locations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """Cytogenetic location is maintained independent of sequence
        location, and can be submitted or computed from the sequence location.

        Between 0 and 4 entries.
        """

    @property
    def sequence_locations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___Location.SequenceLocation
    ]:
        """Location on a defined sequence, with reference and alternate
        allele, and start /stop values depending on the specificity with which the
        variant location is known. The number system of offset 1, and
        right-justified to be consistent with HGVS location data.
        """

    @property
    def gene_locations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """The location of the variant relative to features within the gene."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    def __init__(
        self,
        *,
        cytogenetic_locations: collections.abc.Iterable[builtins.str] | None = ...,
        sequence_locations: (
            collections.abc.Iterable[global___Location.SequenceLocation] | None
        ) = ...,
        gene_locations: collections.abc.Iterable[builtins.str] | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "cytogenetic_locations",
            b"cytogenetic_locations",
            "gene_locations",
            b"gene_locations",
            "sequence_locations",
            b"sequence_locations",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...

global___Location = Location

@typing.final
class Scv(google.protobuf.message.Message):
    """Description of a SCV.

    Corresponds to "typeSCV" in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    TITLE_FIELD_NUMBER: builtins.int
    ACCESSION_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    title: builtins.str
    """Optional title."""
    accession: builtins.str
    """Accession."""
    version: builtins.int
    """Version."""
    def __init__(
        self,
        *,
        title: builtins.str | None = ...,
        accession: builtins.str = ...,
        version: builtins.int = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing.Literal["_title", b"_title", "title", b"title"]
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_title", b"_title", "accession", b"accession", "title", b"title", "version", b"version"
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing.Literal["_title", b"_title"]
    ) -> typing.Literal["title"] | None: ...

global___Scv = Scv

@typing.final
class FamilyData(google.protobuf.message.Message):
    """// Description of a single method.
    //
    // Corresponds to `typeMethodRefs` in XSD.
    message MethodWithXrefs {
      // Name of the method.
      string method_name = 1;
      // Xrefs.
      repeated Xref xrefs = 2;
    }

    Structure to describe attributes of any family data in an observation.
    If the details of the number of families and the de-identified pedigree id are not
    available, use FamilyHistory to describe what type of family data is available. Can
    also be used to report 'Yes' or 'No' if there are no more details.

    Corresponds to "FamilyInfo" in XSD.
    nested elements
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FAMILY_HISTORY_FIELD_NUMBER: builtins.int
    NUM_FAMILIES_FIELD_NUMBER: builtins.int
    NUM_FAMILIES_WITH_VARIANT_FIELD_NUMBER: builtins.int
    NUM_FAMILIES_WITH_SEGREGATION_OBSERVED_FIELD_NUMBER: builtins.int
    PEDIGREE_ID_FIELD_NUMBER: builtins.int
    SEGREGATION_OBSERVED_FIELD_NUMBER: builtins.int
    family_history: builtins.str
    """Optional family history."""
    num_families: builtins.int
    """attributes

    Number of families.
    """
    num_families_with_variant: builtins.int
    """Number of families with variant."""
    num_families_with_segregation_observed: builtins.int
    """Number of families with segregation observed."""
    pedigree_id: builtins.str
    """Pedigree ID."""
    segregation_observed: builtins.str
    """Segregation oberved (yes, no, number)"""
    def __init__(
        self,
        *,
        family_history: builtins.str | None = ...,
        num_families: builtins.int | None = ...,
        num_families_with_variant: builtins.int | None = ...,
        num_families_with_segregation_observed: builtins.int | None = ...,
        pedigree_id: builtins.str | None = ...,
        segregation_observed: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_family_history",
            b"_family_history",
            "_num_families",
            b"_num_families",
            "_num_families_with_segregation_observed",
            b"_num_families_with_segregation_observed",
            "_num_families_with_variant",
            b"_num_families_with_variant",
            "_pedigree_id",
            b"_pedigree_id",
            "_segregation_observed",
            b"_segregation_observed",
            "family_history",
            b"family_history",
            "num_families",
            b"num_families",
            "num_families_with_segregation_observed",
            b"num_families_with_segregation_observed",
            "num_families_with_variant",
            b"num_families_with_variant",
            "pedigree_id",
            b"pedigree_id",
            "segregation_observed",
            b"segregation_observed",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_family_history",
            b"_family_history",
            "_num_families",
            b"_num_families",
            "_num_families_with_segregation_observed",
            b"_num_families_with_segregation_observed",
            "_num_families_with_variant",
            b"_num_families_with_variant",
            "_pedigree_id",
            b"_pedigree_id",
            "_segregation_observed",
            b"_segregation_observed",
            "family_history",
            b"family_history",
            "num_families",
            b"num_families",
            "num_families_with_segregation_observed",
            b"num_families_with_segregation_observed",
            "num_families_with_variant",
            b"num_families_with_variant",
            "pedigree_id",
            b"pedigree_id",
            "segregation_observed",
            b"segregation_observed",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_family_history", b"_family_history"]
    ) -> typing.Literal["family_history"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_num_families", b"_num_families"]
    ) -> typing.Literal["num_families"] | None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal[
            "_num_families_with_segregation_observed", b"_num_families_with_segregation_observed"
        ],
    ) -> typing.Literal["num_families_with_segregation_observed"] | None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal["_num_families_with_variant", b"_num_families_with_variant"],
    ) -> typing.Literal["num_families_with_variant"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_pedigree_id", b"_pedigree_id"]
    ) -> typing.Literal["pedigree_id"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_segregation_observed", b"_segregation_observed"]
    ) -> typing.Literal["segregation_observed"] | None: ...

global___FamilyData = FamilyData

@typing.final
class Sample(google.protobuf.message.Message):
    """Description of a sample.

    Corresponds to `typeSample` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _SomaticVariantInNormalTissueEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            Sample._SomaticVariantInNormalTissue.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        SOMATIC_VARIANT_IN_NORMAL_TISSUE_UNSPECIFIED: (
            Sample._SomaticVariantInNormalTissue.ValueType
        )  # 0
        """unspecified presence"""
        SOMATIC_VARIANT_IN_NORMAL_TISSUE_PRESENT: (
            Sample._SomaticVariantInNormalTissue.ValueType
        )  # 1
        """corresponds to "present" """
        SOMATIC_VARIANT_IN_NORMAL_TISSUE_ABSENT: Sample._SomaticVariantInNormalTissue.ValueType  # 2
        """corresponds to "absent" """
        SOMATIC_VARIANT_IN_NORMAL_TISSUE_NOT_TESTED: (
            Sample._SomaticVariantInNormalTissue.ValueType
        )  # 3
        """corresponds to "not tested" """

    class SomaticVariantInNormalTissue(
        _SomaticVariantInNormalTissue, metaclass=_SomaticVariantInNormalTissueEnumTypeWrapper
    ):
        """Local enumeration for presence in normal tissue."""

    SOMATIC_VARIANT_IN_NORMAL_TISSUE_UNSPECIFIED: Sample.SomaticVariantInNormalTissue.ValueType  # 0
    """unspecified presence"""
    SOMATIC_VARIANT_IN_NORMAL_TISSUE_PRESENT: Sample.SomaticVariantInNormalTissue.ValueType  # 1
    """corresponds to "present" """
    SOMATIC_VARIANT_IN_NORMAL_TISSUE_ABSENT: Sample.SomaticVariantInNormalTissue.ValueType  # 2
    """corresponds to "absent" """
    SOMATIC_VARIANT_IN_NORMAL_TISSUE_NOT_TESTED: Sample.SomaticVariantInNormalTissue.ValueType  # 3
    """corresponds to "not tested" """

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

    class _AgeUnitEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Sample._AgeUnit.ValueType],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        AGE_UNIT_UNSPECIFIED: Sample._AgeUnit.ValueType  # 0
        """unspecified age unit"""
        AGE_UNIT_DAYS: Sample._AgeUnit.ValueType  # 1
        """corresponds to "days" """
        AGE_UNIT_WEEKS: Sample._AgeUnit.ValueType  # 2
        """corresponds to "weeks" """
        AGE_UNIT_MONTHS: Sample._AgeUnit.ValueType  # 3
        """corresponds to "months" """
        AGE_UNIT_YEARS: Sample._AgeUnit.ValueType  # 4
        """corresponds to "years" """
        AGE_UNIT_WEEKS_GESTATION: Sample._AgeUnit.ValueType  # 5
        """corresponds to "weeks gestation" """
        AGE_UNIT_MONTHS_GESTATION: Sample._AgeUnit.ValueType  # 6
        """corresponds to "months gestation" """

    class AgeUnit(_AgeUnit, metaclass=_AgeUnitEnumTypeWrapper):
        """Local enumeration for an age unit."""

    AGE_UNIT_UNSPECIFIED: Sample.AgeUnit.ValueType  # 0
    """unspecified age unit"""
    AGE_UNIT_DAYS: Sample.AgeUnit.ValueType  # 1
    """corresponds to "days" """
    AGE_UNIT_WEEKS: Sample.AgeUnit.ValueType  # 2
    """corresponds to "weeks" """
    AGE_UNIT_MONTHS: Sample.AgeUnit.ValueType  # 3
    """corresponds to "months" """
    AGE_UNIT_YEARS: Sample.AgeUnit.ValueType  # 4
    """corresponds to "years" """
    AGE_UNIT_WEEKS_GESTATION: Sample.AgeUnit.ValueType  # 5
    """corresponds to "weeks gestation" """
    AGE_UNIT_MONTHS_GESTATION: Sample.AgeUnit.ValueType  # 6
    """corresponds to "months gestation" """

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

    class _AgeTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Sample._AgeType.ValueType],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        AGE_TYPE_UNSPECIFIED: Sample._AgeType.ValueType  # 0
        """unspecified age type"""
        AGE_TYPE_MINIMUM: Sample._AgeType.ValueType  # 1
        """corresponds to "minimum" """
        AGE_TYPE_MAXIMUM: Sample._AgeType.ValueType  # 2
        """corresponds to "maximum" """
        AGE_TYPE_SINGLE: Sample._AgeType.ValueType  # 3
        """corresponds to "single" """

    class AgeType(_AgeType, metaclass=_AgeTypeEnumTypeWrapper):
        """Local enumeration for an age type."""

    AGE_TYPE_UNSPECIFIED: Sample.AgeType.ValueType  # 0
    """unspecified age type"""
    AGE_TYPE_MINIMUM: Sample.AgeType.ValueType  # 1
    """corresponds to "minimum" """
    AGE_TYPE_MAXIMUM: Sample.AgeType.ValueType  # 2
    """corresponds to "maximum" """
    AGE_TYPE_SINGLE: Sample.AgeType.ValueType  # 3
    """corresponds to "single" """

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

    class _AffectedStatusEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            Sample._AffectedStatus.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        AFFECTED_STATUS_UNSPECIFIED: Sample._AffectedStatus.ValueType  # 0
        """unspecified affected status"""
        AFFECTED_STATUS_YES: Sample._AffectedStatus.ValueType  # 1
        """corresponds to "yes" """
        AFFECTED_STATUS_NO: Sample._AffectedStatus.ValueType  # 2
        """corresponds to "no" """
        AFFECTED_STATUS_NOT_PROVIDED: Sample._AffectedStatus.ValueType  # 3
        """corresponds to "not provided" """
        AFFECTED_STATUS_UNKNOWN: Sample._AffectedStatus.ValueType  # 4
        """corresponds to "unknown" """
        AFFECTED_STATUS_NOT_APPLICABLE: Sample._AffectedStatus.ValueType  # 5
        """corresponds to "not applicable" """

    class AffectedStatus(_AffectedStatus, metaclass=_AffectedStatusEnumTypeWrapper):
        """Local enumeration for the affected status."""

    AFFECTED_STATUS_UNSPECIFIED: Sample.AffectedStatus.ValueType  # 0
    """unspecified affected status"""
    AFFECTED_STATUS_YES: Sample.AffectedStatus.ValueType  # 1
    """corresponds to "yes" """
    AFFECTED_STATUS_NO: Sample.AffectedStatus.ValueType  # 2
    """corresponds to "no" """
    AFFECTED_STATUS_NOT_PROVIDED: Sample.AffectedStatus.ValueType  # 3
    """corresponds to "not provided" """
    AFFECTED_STATUS_UNKNOWN: Sample.AffectedStatus.ValueType  # 4
    """corresponds to "unknown" """
    AFFECTED_STATUS_NOT_APPLICABLE: Sample.AffectedStatus.ValueType  # 5
    """corresponds to "not applicable" """

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

    class _GenderEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Sample._Gender.ValueType],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        GENDER_UNSPECIFIED: Sample._Gender.ValueType  # 0
        """unspecified gender"""
        GENDER_MALE: Sample._Gender.ValueType  # 1
        """corresponds to "male" """
        GENDER_FEMALE: Sample._Gender.ValueType  # 2
        """corresponds to "female" """
        GENDER_MIXED: Sample._Gender.ValueType  # 3
        """corresponds to "mixed" """

    class Gender(_Gender, metaclass=_GenderEnumTypeWrapper):
        """Local enumeration for gender."""

    GENDER_UNSPECIFIED: Sample.Gender.ValueType  # 0
    """unspecified gender"""
    GENDER_MALE: Sample.Gender.ValueType  # 1
    """corresponds to "male" """
    GENDER_FEMALE: Sample.Gender.ValueType  # 2
    """corresponds to "female" """
    GENDER_MIXED: Sample.Gender.ValueType  # 3
    """corresponds to "mixed" """

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

    class _SourceTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Sample._SourceType.ValueType],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        SOURCE_TYPE_UNSPECIFIED: Sample._SourceType.ValueType  # 0
        """unspecified source type"""
        SOURCE_TYPE_SUBMITTER_GENERATED: Sample._SourceType.ValueType  # 1
        """corresponds to "submitter-generated" """
        SOURCE_TYPE_DATA_MINING: Sample._SourceType.ValueType  # 2
        """corresponds to "data mining" """

    class SourceType(_SourceType, metaclass=_SourceTypeEnumTypeWrapper):
        """Local enumeration for SourceType."""

    SOURCE_TYPE_UNSPECIFIED: Sample.SourceType.ValueType  # 0
    """unspecified source type"""
    SOURCE_TYPE_SUBMITTER_GENERATED: Sample.SourceType.ValueType  # 1
    """corresponds to "submitter-generated" """
    SOURCE_TYPE_DATA_MINING: Sample.SourceType.ValueType  # 2
    """corresponds to "data mining" """

    @typing.final
    class SampleDescription(google.protobuf.message.Message):
        """Local type for sample description."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        DESCRIPTION_FIELD_NUMBER: builtins.int
        CITATION_FIELD_NUMBER: builtins.int
        @property
        def description(self) -> global___Comment:
            """Description of sample."""

        @property
        def citation(self) -> global___Citation:
            """Citation."""

        def __init__(
            self,
            *,
            description: global___Comment | None = ...,
            citation: global___Citation | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_citation",
                b"_citation",
                "_description",
                b"_description",
                "citation",
                b"citation",
                "description",
                b"description",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_citation",
                b"_citation",
                "_description",
                b"_description",
                "citation",
                b"citation",
                "description",
                b"description",
            ],
        ) -> None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_citation", b"_citation"]
        ) -> typing.Literal["citation"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_description", b"_description"]
        ) -> typing.Literal["description"] | None: ...

    @typing.final
    class Age(google.protobuf.message.Message):
        """Local type for an age."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        VALUE_FIELD_NUMBER: builtins.int
        UNIT_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        value: builtins.int
        """The age value."""
        unit: global___Sample.AgeUnit.ValueType
        """The age unit."""
        type: global___Sample.AgeType.ValueType
        """The age type."""
        def __init__(
            self,
            *,
            value: builtins.int = ...,
            unit: global___Sample.AgeUnit.ValueType = ...,
            type: global___Sample.AgeType.ValueType = ...,
        ) -> None: ...
        def ClearField(
            self, field_name: typing.Literal["type", b"type", "unit", b"unit", "value", b"value"]
        ) -> None: ...

    SAMPLE_DESCRIPTION_FIELD_NUMBER: builtins.int
    ORIGIN_FIELD_NUMBER: builtins.int
    ETHNICITY_FIELD_NUMBER: builtins.int
    GEOGRAPHIC_ORIGIN_FIELD_NUMBER: builtins.int
    TISSUE_FIELD_NUMBER: builtins.int
    SOMATIC_VARIANT_IN_NORMAL_TISSUE_FIELD_NUMBER: builtins.int
    SOMATIC_VARIANT_ALLELE_FRACTION_FIELD_NUMBER: builtins.int
    CELL_LINE_FIELD_NUMBER: builtins.int
    SPECIES_FIELD_NUMBER: builtins.int
    AGES_FIELD_NUMBER: builtins.int
    STRAIN_FIELD_NUMBER: builtins.int
    AFFECTED_STATUS_FIELD_NUMBER: builtins.int
    NUMER_TESTED_FIELD_NUMBER: builtins.int
    NUMBER_MALES_FIELD_NUMBER: builtins.int
    NUMBER_FEMALES_FIELD_NUMBER: builtins.int
    NUMBER_CHR_TESTED_FIELD_NUMBER: builtins.int
    GENDER_FIELD_NUMBER: builtins.int
    FAMILY_DATA_FIELD_NUMBER: builtins.int
    PROBAND_FIELD_NUMBER: builtins.int
    INDICATION_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    SOURCE_TYPE_FIELD_NUMBER: builtins.int
    origin: global___Origin.ValueType
    """The sample origin."""
    ethnicity: builtins.str
    """Sample ethnicity."""
    geographic_origin: builtins.str
    """Sample geographic origin."""
    tissue: builtins.str
    """Sample tissue."""
    somatic_variant_in_normal_tissue: global___Sample.SomaticVariantInNormalTissue.ValueType
    """Presence of variant in normal tissue."""
    somatic_variant_allele_fraction: builtins.str
    """Somatic variant allele fraction."""
    cell_line: builtins.str
    """Cell line name."""
    strain: builtins.str
    """Strain."""
    affected_status: global___Sample.AffectedStatus.ValueType
    """Affected status."""
    numer_tested: builtins.int
    """Denominator, total individuals included in this observation set."""
    number_males: builtins.int
    """Denominator, total males included in this observation set."""
    number_females: builtins.int
    """Denominator, total females included in this observation set."""
    number_chr_tested: builtins.int
    """Denominator, total number chromosomes tested. Number affected
    and unaffected are captured in the element NumberObserved.
    """
    gender: global___Sample.Gender.ValueType
    """Gender should be used ONLY if explicit values are not
    available for number of males or females, and there is a need to indicate
    that the genders in the sample are known.
    """
    proband: builtins.str
    """Optional proband ID."""
    source_type: global___Sample.SourceType.ValueType
    """Source type."""
    @property
    def sample_description(self) -> global___Sample.SampleDescription:
        """The sample description."""

    @property
    def species(self) -> global___Species:
        """Species."""

    @property
    def ages(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Sample.Age]:
        """Age (range), max. size of 2."""

    @property
    def family_data(self) -> global___FamilyData:
        """Family information."""

    @property
    def indication(self) -> global___Indication:
        """Optional indication."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    def __init__(
        self,
        *,
        sample_description: global___Sample.SampleDescription | None = ...,
        origin: global___Origin.ValueType | None = ...,
        ethnicity: builtins.str | None = ...,
        geographic_origin: builtins.str | None = ...,
        tissue: builtins.str | None = ...,
        somatic_variant_in_normal_tissue: (
            global___Sample.SomaticVariantInNormalTissue.ValueType | None
        ) = ...,
        somatic_variant_allele_fraction: builtins.str | None = ...,
        cell_line: builtins.str | None = ...,
        species: global___Species | None = ...,
        ages: collections.abc.Iterable[global___Sample.Age] | None = ...,
        strain: builtins.str | None = ...,
        affected_status: global___Sample.AffectedStatus.ValueType | None = ...,
        numer_tested: builtins.int | None = ...,
        number_males: builtins.int | None = ...,
        number_females: builtins.int | None = ...,
        number_chr_tested: builtins.int | None = ...,
        gender: global___Sample.Gender.ValueType | None = ...,
        family_data: global___FamilyData | None = ...,
        proband: builtins.str | None = ...,
        indication: global___Indication | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        source_type: global___Sample.SourceType.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_affected_status",
            b"_affected_status",
            "_cell_line",
            b"_cell_line",
            "_ethnicity",
            b"_ethnicity",
            "_family_data",
            b"_family_data",
            "_gender",
            b"_gender",
            "_geographic_origin",
            b"_geographic_origin",
            "_indication",
            b"_indication",
            "_number_chr_tested",
            b"_number_chr_tested",
            "_number_females",
            b"_number_females",
            "_number_males",
            b"_number_males",
            "_numer_tested",
            b"_numer_tested",
            "_origin",
            b"_origin",
            "_proband",
            b"_proband",
            "_sample_description",
            b"_sample_description",
            "_somatic_variant_allele_fraction",
            b"_somatic_variant_allele_fraction",
            "_somatic_variant_in_normal_tissue",
            b"_somatic_variant_in_normal_tissue",
            "_source_type",
            b"_source_type",
            "_species",
            b"_species",
            "_strain",
            b"_strain",
            "_tissue",
            b"_tissue",
            "affected_status",
            b"affected_status",
            "cell_line",
            b"cell_line",
            "ethnicity",
            b"ethnicity",
            "family_data",
            b"family_data",
            "gender",
            b"gender",
            "geographic_origin",
            b"geographic_origin",
            "indication",
            b"indication",
            "number_chr_tested",
            b"number_chr_tested",
            "number_females",
            b"number_females",
            "number_males",
            b"number_males",
            "numer_tested",
            b"numer_tested",
            "origin",
            b"origin",
            "proband",
            b"proband",
            "sample_description",
            b"sample_description",
            "somatic_variant_allele_fraction",
            b"somatic_variant_allele_fraction",
            "somatic_variant_in_normal_tissue",
            b"somatic_variant_in_normal_tissue",
            "source_type",
            b"source_type",
            "species",
            b"species",
            "strain",
            b"strain",
            "tissue",
            b"tissue",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_affected_status",
            b"_affected_status",
            "_cell_line",
            b"_cell_line",
            "_ethnicity",
            b"_ethnicity",
            "_family_data",
            b"_family_data",
            "_gender",
            b"_gender",
            "_geographic_origin",
            b"_geographic_origin",
            "_indication",
            b"_indication",
            "_number_chr_tested",
            b"_number_chr_tested",
            "_number_females",
            b"_number_females",
            "_number_males",
            b"_number_males",
            "_numer_tested",
            b"_numer_tested",
            "_origin",
            b"_origin",
            "_proband",
            b"_proband",
            "_sample_description",
            b"_sample_description",
            "_somatic_variant_allele_fraction",
            b"_somatic_variant_allele_fraction",
            "_somatic_variant_in_normal_tissue",
            b"_somatic_variant_in_normal_tissue",
            "_source_type",
            b"_source_type",
            "_species",
            b"_species",
            "_strain",
            b"_strain",
            "_tissue",
            b"_tissue",
            "affected_status",
            b"affected_status",
            "ages",
            b"ages",
            "cell_line",
            b"cell_line",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "ethnicity",
            b"ethnicity",
            "family_data",
            b"family_data",
            "gender",
            b"gender",
            "geographic_origin",
            b"geographic_origin",
            "indication",
            b"indication",
            "number_chr_tested",
            b"number_chr_tested",
            "number_females",
            b"number_females",
            "number_males",
            b"number_males",
            "numer_tested",
            b"numer_tested",
            "origin",
            b"origin",
            "proband",
            b"proband",
            "sample_description",
            b"sample_description",
            "somatic_variant_allele_fraction",
            b"somatic_variant_allele_fraction",
            "somatic_variant_in_normal_tissue",
            b"somatic_variant_in_normal_tissue",
            "source_type",
            b"source_type",
            "species",
            b"species",
            "strain",
            b"strain",
            "tissue",
            b"tissue",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_affected_status", b"_affected_status"]
    ) -> typing.Literal["affected_status"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_cell_line", b"_cell_line"]
    ) -> typing.Literal["cell_line"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_ethnicity", b"_ethnicity"]
    ) -> typing.Literal["ethnicity"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_family_data", b"_family_data"]
    ) -> typing.Literal["family_data"] | 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["_geographic_origin", b"_geographic_origin"]
    ) -> typing.Literal["geographic_origin"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_indication", b"_indication"]
    ) -> typing.Literal["indication"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_chr_tested", b"_number_chr_tested"]
    ) -> typing.Literal["number_chr_tested"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_females", b"_number_females"]
    ) -> typing.Literal["number_females"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_males", b"_number_males"]
    ) -> typing.Literal["number_males"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_numer_tested", b"_numer_tested"]
    ) -> typing.Literal["numer_tested"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_origin", b"_origin"]
    ) -> typing.Literal["origin"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_proband", b"_proband"]
    ) -> typing.Literal["proband"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_sample_description", b"_sample_description"]
    ) -> typing.Literal["sample_description"] | None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal[
            "_somatic_variant_allele_fraction", b"_somatic_variant_allele_fraction"
        ],
    ) -> typing.Literal["somatic_variant_allele_fraction"] | None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal[
            "_somatic_variant_in_normal_tissue", b"_somatic_variant_in_normal_tissue"
        ],
    ) -> typing.Literal["somatic_variant_in_normal_tissue"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_source_type", b"_source_type"]
    ) -> typing.Literal["source_type"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_species", b"_species"]
    ) -> typing.Literal["species"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_strain", b"_strain"]
    ) -> typing.Literal["strain"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_tissue", b"_tissue"]
    ) -> typing.Literal["tissue"] | None: ...

global___Sample = Sample

@typing.final
class Method(google.protobuf.message.Message):
    """Details of a method used to generate variant calls or predict/report
    functional consequence. The name of the platform should represent a sequencer or an
    array, e.g. sequencing or array , e.g. capillary, 454, Helicos, Solexa, SOLiD. This
    structure should also be used if the method is 'Curation'.

    Corresponds to `MethodType` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _ResultTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Method._ResultType.ValueType],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        RESULT_TYPE_UNSPECIFIED: Method._ResultType.ValueType  # 0
        """unspecified result type"""
        RESULT_TYPE_NUMBER_OF_OCCURRENCES: Method._ResultType.ValueType  # 1
        """corresponds to "number of occurrences" """
        RESULT_TYPE_P_VALUE: Method._ResultType.ValueType  # 2
        """corresponds to "p value" """
        RESULT_TYPE_ODDS_RATIO: Method._ResultType.ValueType  # 3
        """corresponds to "odds ratio" """
        RESULT_TYPE_VARIANT_CALL: Method._ResultType.ValueType  # 4
        """corresponds to "variant call" """

    class ResultType(_ResultType, metaclass=_ResultTypeEnumTypeWrapper):
        """Local enumeration for result types."""

    RESULT_TYPE_UNSPECIFIED: Method.ResultType.ValueType  # 0
    """unspecified result type"""
    RESULT_TYPE_NUMBER_OF_OCCURRENCES: Method.ResultType.ValueType  # 1
    """corresponds to "number of occurrences" """
    RESULT_TYPE_P_VALUE: Method.ResultType.ValueType  # 2
    """corresponds to "p value" """
    RESULT_TYPE_ODDS_RATIO: Method.ResultType.ValueType  # 3
    """corresponds to "odds ratio" """
    RESULT_TYPE_VARIANT_CALL: Method.ResultType.ValueType  # 4
    """corresponds to "variant call" """

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

    class _SourceTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Method._SourceType.ValueType],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        SOURCE_TYPE_UNSPECIFIED: Method._SourceType.ValueType  # 0
        """unspecified source type"""
        SOURCE_TYPE_SUBMITTER_GENERATED: Method._SourceType.ValueType  # 1
        """corresponds to "submitter-generated" """
        SOURCE_TYPE_DATA_MINING: Method._SourceType.ValueType  # 2
        """corresponds to "data mining" """
        SOURCE_TYPE_DATA_REVIEW: Method._SourceType.ValueType  # 3
        """corresponds to "data review" """

    class SourceType(_SourceType, metaclass=_SourceTypeEnumTypeWrapper):
        """Local enumeration for SourceType."""

    SOURCE_TYPE_UNSPECIFIED: Method.SourceType.ValueType  # 0
    """unspecified source type"""
    SOURCE_TYPE_SUBMITTER_GENERATED: Method.SourceType.ValueType  # 1
    """corresponds to "submitter-generated" """
    SOURCE_TYPE_DATA_MINING: Method.SourceType.ValueType  # 2
    """corresponds to "data mining" """
    SOURCE_TYPE_DATA_REVIEW: Method.SourceType.ValueType  # 3
    """corresponds to "data review" """

    @typing.final
    class MethodAttribute(google.protobuf.message.Message):
        """Local type for method attribute."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _AttributeTypeEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                Method.MethodAttribute._AttributeType.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            ATTRIBUTE_TYPE_UNSPECIFIED: Method.MethodAttribute._AttributeType.ValueType  # 0
            """unspecified attribute type"""
            ATTRIBUTE_TYPE_LOCATION: Method.MethodAttribute._AttributeType.ValueType  # 1
            """corresponds to "Location" """
            ATTRIBUTE_TYPE_CONTROLS_APPROPRIATE: (
                Method.MethodAttribute._AttributeType.ValueType
            )  # 2
            """corresponds to "ControlsAppropriate" """
            ATTRIBUTE_TYPE_METHOD_APPROPRIATE: Method.MethodAttribute._AttributeType.ValueType  # 3
            """corresponds to "MethodAppropriate" """
            ATTRIBUTE_TYPE_TEST_NAME: Method.MethodAttribute._AttributeType.ValueType  # 4
            """corresponds to "TestName" """
            ATTRIBUTE_TYPE_STRUCT_VAR_METHOD_TYPE: (
                Method.MethodAttribute._AttributeType.ValueType
            )  # 5
            """corresponds to "StructVarMethod" """
            ATTRIBUTE_TYPE_PROBE_ACCESSION: Method.MethodAttribute._AttributeType.ValueType  # 6
            """corresponds to "ProbeAccession" """

        class AttributeType(_AttributeType, metaclass=_AttributeTypeEnumTypeWrapper):
            """Local enumeration of attribute type."""

        ATTRIBUTE_TYPE_UNSPECIFIED: Method.MethodAttribute.AttributeType.ValueType  # 0
        """unspecified attribute type"""
        ATTRIBUTE_TYPE_LOCATION: Method.MethodAttribute.AttributeType.ValueType  # 1
        """corresponds to "Location" """
        ATTRIBUTE_TYPE_CONTROLS_APPROPRIATE: Method.MethodAttribute.AttributeType.ValueType  # 2
        """corresponds to "ControlsAppropriate" """
        ATTRIBUTE_TYPE_METHOD_APPROPRIATE: Method.MethodAttribute.AttributeType.ValueType  # 3
        """corresponds to "MethodAppropriate" """
        ATTRIBUTE_TYPE_TEST_NAME: Method.MethodAttribute.AttributeType.ValueType  # 4
        """corresponds to "TestName" """
        ATTRIBUTE_TYPE_STRUCT_VAR_METHOD_TYPE: Method.MethodAttribute.AttributeType.ValueType  # 5
        """corresponds to "StructVarMethod" """
        ATTRIBUTE_TYPE_PROBE_ACCESSION: Method.MethodAttribute.AttributeType.ValueType  # 6
        """corresponds to "ProbeAccession" """

        BASE_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        type: global___Method.MethodAttribute.AttributeType.ValueType
        """The attribute type."""
        @property
        def base(self) -> global___BaseAttribute:
            """The base value."""

        def __init__(
            self,
            *,
            base: global___BaseAttribute | None = ...,
            type: global___Method.MethodAttribute.AttributeType.ValueType = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["base", b"base"]) -> builtins.bool: ...
        def ClearField(
            self, field_name: typing.Literal["base", b"base", "type", b"type"]
        ) -> None: ...

    @typing.final
    class ObsMethodAttribute(google.protobuf.message.Message):
        """Local type for observation method attribute."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _AttributeTypeEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                Method.ObsMethodAttribute._AttributeType.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            ATTRIBUTE_TYPE_UNSPECIFIED: Method.ObsMethodAttribute._AttributeType.ValueType  # 0
            """unspecified attribute type"""
            ATTRIBUTE_TYPE_METHOD_RESULT: Method.ObsMethodAttribute._AttributeType.ValueType  # 1
            """corresponds to "MethodResult" """
            ATTRIBUTE_TYPE_TESTING_LABORATORY: (
                Method.ObsMethodAttribute._AttributeType.ValueType
            )  # 2
            """corresponds to "TestingLaboratory" """

        class AttributeType(_AttributeType, metaclass=_AttributeTypeEnumTypeWrapper):
            """Local enumeration for attribute type."""

        ATTRIBUTE_TYPE_UNSPECIFIED: Method.ObsMethodAttribute.AttributeType.ValueType  # 0
        """unspecified attribute type"""
        ATTRIBUTE_TYPE_METHOD_RESULT: Method.ObsMethodAttribute.AttributeType.ValueType  # 1
        """corresponds to "MethodResult" """
        ATTRIBUTE_TYPE_TESTING_LABORATORY: Method.ObsMethodAttribute.AttributeType.ValueType  # 2
        """corresponds to "TestingLaboratory" """

        BASE_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        COMMENTS_FIELD_NUMBER: builtins.int
        type: global___Method.ObsMethodAttribute.AttributeType.ValueType
        """The attribute type."""
        @property
        def base(self) -> global___BaseAttribute:
            """The base value."""

        @property
        def comments(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
            """Optional comments."""

        def __init__(
            self,
            *,
            base: global___BaseAttribute | None = ...,
            type: global___Method.ObsMethodAttribute.AttributeType.ValueType = ...,
            comments: collections.abc.Iterable[global___Comment] | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["base", b"base"]) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal["base", b"base", "comments", b"comments", "type", b"type"],
        ) -> None: ...

    NAME_PLATFORM_FIELD_NUMBER: builtins.int
    TYPE_PLATFORM_FIELD_NUMBER: builtins.int
    PURPOSE_FIELD_NUMBER: builtins.int
    RESULT_TYPE_FIELD_NUMBER: builtins.int
    MIN_REPORTED_FIELD_NUMBER: builtins.int
    MAX_REPORTED_FIELD_NUMBER: builtins.int
    REFERENCE_STANDARD_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    SOFTWARE_FIELD_NUMBER: builtins.int
    SOURCE_TYPE_FIELD_NUMBER: builtins.int
    METHOD_TYPE_FIELD_NUMBER: builtins.int
    METHOD_ATTRIBUTES_FIELD_NUMBER: builtins.int
    OBS_METHOD_ATTRIBUTES_FIELD_NUMBER: builtins.int
    name_platform: builtins.str
    """Platform name."""
    type_platform: builtins.str
    """Platform type."""
    purpose: builtins.str
    """Method purpose."""
    result_type: global___Method.ResultType.ValueType
    """Method result type."""
    min_reported: builtins.str
    """Smallest reported."""
    max_reported: builtins.str
    """Largest reported."""
    reference_standard: builtins.str
    """Reference standard."""
    description: builtins.str
    """Free text to enrich the description of the method and to
    provide information not captured in specific fields.
    """
    source_type: global___Method.SourceType.ValueType
    """Source type."""
    method_type: global___MethodListType.ValueType
    """Method type."""
    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def software(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Software]:
        """List of softwares used."""

    @property
    def method_attributes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___Method.MethodAttribute
    ]:
        """Method attribute."""

    @property
    def obs_method_attributes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___Method.ObsMethodAttribute
    ]:
        """ObsMethodAttribute is used to indicate an attribute specific
        to a particular method in conjunction with a particular observation .
        """

    def __init__(
        self,
        *,
        name_platform: builtins.str | None = ...,
        type_platform: builtins.str | None = ...,
        purpose: builtins.str | None = ...,
        result_type: global___Method.ResultType.ValueType | None = ...,
        min_reported: builtins.str | None = ...,
        max_reported: builtins.str | None = ...,
        reference_standard: builtins.str | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        description: builtins.str | None = ...,
        software: collections.abc.Iterable[global___Software] | None = ...,
        source_type: global___Method.SourceType.ValueType | None = ...,
        method_type: global___MethodListType.ValueType = ...,
        method_attributes: collections.abc.Iterable[global___Method.MethodAttribute] | None = ...,
        obs_method_attributes: (
            collections.abc.Iterable[global___Method.ObsMethodAttribute] | None
        ) = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_description",
            b"_description",
            "_max_reported",
            b"_max_reported",
            "_min_reported",
            b"_min_reported",
            "_name_platform",
            b"_name_platform",
            "_purpose",
            b"_purpose",
            "_reference_standard",
            b"_reference_standard",
            "_result_type",
            b"_result_type",
            "_source_type",
            b"_source_type",
            "_type_platform",
            b"_type_platform",
            "description",
            b"description",
            "max_reported",
            b"max_reported",
            "min_reported",
            b"min_reported",
            "name_platform",
            b"name_platform",
            "purpose",
            b"purpose",
            "reference_standard",
            b"reference_standard",
            "result_type",
            b"result_type",
            "source_type",
            b"source_type",
            "type_platform",
            b"type_platform",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_description",
            b"_description",
            "_max_reported",
            b"_max_reported",
            "_min_reported",
            b"_min_reported",
            "_name_platform",
            b"_name_platform",
            "_purpose",
            b"_purpose",
            "_reference_standard",
            b"_reference_standard",
            "_result_type",
            b"_result_type",
            "_source_type",
            b"_source_type",
            "_type_platform",
            b"_type_platform",
            "citations",
            b"citations",
            "description",
            b"description",
            "max_reported",
            b"max_reported",
            "method_attributes",
            b"method_attributes",
            "method_type",
            b"method_type",
            "min_reported",
            b"min_reported",
            "name_platform",
            b"name_platform",
            "obs_method_attributes",
            b"obs_method_attributes",
            "purpose",
            b"purpose",
            "reference_standard",
            b"reference_standard",
            "result_type",
            b"result_type",
            "software",
            b"software",
            "source_type",
            b"source_type",
            "type_platform",
            b"type_platform",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_description", b"_description"]
    ) -> typing.Literal["description"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_max_reported", b"_max_reported"]
    ) -> typing.Literal["max_reported"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_min_reported", b"_min_reported"]
    ) -> typing.Literal["min_reported"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_name_platform", b"_name_platform"]
    ) -> typing.Literal["name_platform"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_purpose", b"_purpose"]
    ) -> typing.Literal["purpose"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_reference_standard", b"_reference_standard"]
    ) -> typing.Literal["reference_standard"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_result_type", b"_result_type"]
    ) -> typing.Literal["result_type"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_source_type", b"_source_type"]
    ) -> typing.Literal["source_type"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_type_platform", b"_type_platform"]
    ) -> typing.Literal["type_platform"] | None: ...

global___Method = Method

@typing.final
class AlleleScv(google.protobuf.message.Message):
    """This is a record per variant (Measure/@ID,AlleleID) as submitted for
    accessioning in an SCV.

    Corresponds to "typeAlleleSCV" in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class Gene(google.protobuf.message.Message):
        """Local type for Gene.
        nested elements
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        NAME_FIELD_NUMBER: builtins.int
        PROPERTIES_FIELD_NUMBER: builtins.int
        XREFS_FIELD_NUMBER: builtins.int
        SYMBOL_FIELD_NUMBER: builtins.int
        RELATIONSHIP_TYPE_FIELD_NUMBER: builtins.int
        name: builtins.str
        """Gene name."""
        symbol: builtins.str
        """attributes

        Optional gene symbol.
        """
        relationship_type: global___GeneVariantRelationship.ValueType
        """Relationship between gene and variant."""
        @property
        def properties(
            self,
        ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
            """Used to set key words for retrieval or
            display about a gene, such as genes listed by the
            ACMG guidelines.
            """

        @property
        def xrefs(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
            """Used for gene specific identifiers
            such as MIM number, Gene ID, HGNC ID, etc.
            """

        def __init__(
            self,
            *,
            name: builtins.str | None = ...,
            properties: collections.abc.Iterable[builtins.str] | None = ...,
            xrefs: collections.abc.Iterable[global___Xref] | None = ...,
            symbol: builtins.str | None = ...,
            relationship_type: global___GeneVariantRelationship.ValueType | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_name",
                b"_name",
                "_relationship_type",
                b"_relationship_type",
                "_symbol",
                b"_symbol",
                "name",
                b"name",
                "relationship_type",
                b"relationship_type",
                "symbol",
                b"symbol",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_name",
                b"_name",
                "_relationship_type",
                b"_relationship_type",
                "_symbol",
                b"_symbol",
                "name",
                b"name",
                "properties",
                b"properties",
                "relationship_type",
                b"relationship_type",
                "symbol",
                b"symbol",
                "xrefs",
                b"xrefs",
            ],
        ) -> None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_name", b"_name"]
        ) -> typing.Literal["name"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_relationship_type", b"_relationship_type"]
        ) -> typing.Literal["relationship_type"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_symbol", b"_symbol"]
        ) -> typing.Literal["symbol"] | None: ...

    @typing.final
    class MolecularConsequence(google.protobuf.message.Message):
        """Local type for MolecularConsequence.
        nested elements
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        XREFS_FIELD_NUMBER: builtins.int
        CITATIONS_FIELD_NUMBER: builtins.int
        COMMENTS_FIELD_NUMBER: builtins.int
        RS_FIELD_NUMBER: builtins.int
        HGVS_FIELD_NUMBER: builtins.int
        SO_ID_FIELD_NUMBER: builtins.int
        FUNCTION_FIELD_NUMBER: builtins.int
        rs: builtins.int
        """attributes

        RS id.
        """
        hgvs: builtins.str
        """Optional HGVS expression."""
        so_id: builtins.str
        """Optional SO id."""
        function: builtins.str
        """Function."""
        @property
        def xrefs(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
            """Xref list."""

        @property
        def citations(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
            """Citation list."""

        @property
        def comments(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
            """Comment list."""

        def __init__(
            self,
            *,
            xrefs: collections.abc.Iterable[global___Xref] | None = ...,
            citations: collections.abc.Iterable[global___Citation] | None = ...,
            comments: collections.abc.Iterable[global___Comment] | None = ...,
            rs: builtins.int | None = ...,
            hgvs: builtins.str | None = ...,
            so_id: builtins.str | None = ...,
            function: builtins.str = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_hgvs",
                b"_hgvs",
                "_rs",
                b"_rs",
                "_so_id",
                b"_so_id",
                "hgvs",
                b"hgvs",
                "rs",
                b"rs",
                "so_id",
                b"so_id",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_hgvs",
                b"_hgvs",
                "_rs",
                b"_rs",
                "_so_id",
                b"_so_id",
                "citations",
                b"citations",
                "comments",
                b"comments",
                "function",
                b"function",
                "hgvs",
                b"hgvs",
                "rs",
                b"rs",
                "so_id",
                b"so_id",
                "xrefs",
                b"xrefs",
            ],
        ) -> None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_hgvs", b"_hgvs"]
        ) -> typing.Literal["hgvs"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_rs", b"_rs"]
        ) -> typing.Literal["rs"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_so_id", b"_so_id"]
        ) -> typing.Literal["so_id"] | None: ...

    GENES_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    VARIANT_TYPE_FIELD_NUMBER: builtins.int
    LOCATION_FIELD_NUMBER: builtins.int
    OTHER_NAMES_FIELD_NUMBER: builtins.int
    PROTEIN_CHANGES_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    MOLECULAR_CONSEQUENCES_FIELD_NUMBER: builtins.int
    FUNCTIONAL_CONSEQUENCES_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    ALLELE_ID_FIELD_NUMBER: builtins.int
    variant_type: builtins.str
    """Variant type."""
    allele_id: builtins.int
    """attributes

    Allele ID.
    """
    @property
    def genes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___AlleleScv.Gene
    ]:
        """nested elements

        0 to many genes (and related data ) related to the allele
        being reported.
        """

    @property
    def name(self) -> global___OtherName:
        """Name provided by the submitter."""

    @property
    def location(self) -> global___Location:
        """Location."""

    @property
    def other_names(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___OtherName]:
        """List of other names."""

    @property
    def protein_changes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """Single letter representation of the amino acid change and its
        location.
        """

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    @property
    def molecular_consequences(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___AlleleScv.MolecularConsequence
    ]:
        """Currently redundant with the MolecularConsequence element of
        the HGVS element?
        """

    @property
    def functional_consequences(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___FunctionalConsequence
    ]:
        """Functional consequences."""

    @property
    def attributes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___AttributeSetElement
    ]:
        """Attributes."""

    def __init__(
        self,
        *,
        genes: collections.abc.Iterable[global___AlleleScv.Gene] | None = ...,
        name: global___OtherName | None = ...,
        variant_type: builtins.str | None = ...,
        location: global___Location | None = ...,
        other_names: collections.abc.Iterable[global___OtherName] | None = ...,
        protein_changes: collections.abc.Iterable[builtins.str] | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        molecular_consequences: (
            collections.abc.Iterable[global___AlleleScv.MolecularConsequence] | None
        ) = ...,
        functional_consequences: (
            collections.abc.Iterable[global___FunctionalConsequence] | None
        ) = ...,
        attributes: collections.abc.Iterable[global___AttributeSetElement] | None = ...,
        allele_id: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_allele_id",
            b"_allele_id",
            "_location",
            b"_location",
            "_variant_type",
            b"_variant_type",
            "allele_id",
            b"allele_id",
            "location",
            b"location",
            "name",
            b"name",
            "variant_type",
            b"variant_type",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_allele_id",
            b"_allele_id",
            "_location",
            b"_location",
            "_variant_type",
            b"_variant_type",
            "allele_id",
            b"allele_id",
            "attributes",
            b"attributes",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "functional_consequences",
            b"functional_consequences",
            "genes",
            b"genes",
            "location",
            b"location",
            "molecular_consequences",
            b"molecular_consequences",
            "name",
            b"name",
            "other_names",
            b"other_names",
            "protein_changes",
            b"protein_changes",
            "variant_type",
            b"variant_type",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_allele_id", b"_allele_id"]
    ) -> typing.Literal["allele_id"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_location", b"_location"]
    ) -> typing.Literal["location"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_variant_type", b"_variant_type"]
    ) -> typing.Literal["variant_type"] | None: ...

global___AlleleScv = AlleleScv

@typing.final
class HaplotypeScv(google.protobuf.message.Message):
    """This is a record of a haplotype in SCV.

    Corresponds to `typeHaplotypeSCV` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SIMPLE_ALLELES_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    OTHER_NAMES_FIELD_NUMBER: builtins.int
    CLASSIFICATIONS_FIELD_NUMBER: builtins.int
    FUNCTIONAL_CONSEQUENCES_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    VARIATION_ID_FIELD_NUMBER: builtins.int
    NUMBER_OF_COPIES_FIELD_NUMBER: builtins.int
    NUMBER_OF_CHROMOSOMES_FIELD_NUMBER: builtins.int
    name: builtins.str
    """The preferred representation of the haplotype."""
    variation_id: builtins.int
    """Variation ID."""
    number_of_copies: builtins.int
    """Number of copies."""
    number_of_chromosomes: builtins.int
    """Number of chromosomes."""
    @property
    def simple_alleles(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AlleleScv]:
        """The list of alleles in the haplotype."""

    @property
    def other_names(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___OtherName]:
        """Names other than 'preferred' used for the haplotype."""

    @property
    def classifications(self) -> global___AggregateClassificationSet:
        """Classification of the variant."""

    @property
    def functional_consequences(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___FunctionalConsequence
    ]:
        """Functional consequences of the variant."""

    @property
    def attributes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___AttributeSetElement
    ]:
        """List of attributes."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of cross-references."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    def __init__(
        self,
        *,
        simple_alleles: collections.abc.Iterable[global___AlleleScv] | None = ...,
        name: builtins.str | None = ...,
        other_names: collections.abc.Iterable[global___OtherName] | None = ...,
        classifications: global___AggregateClassificationSet | None = ...,
        functional_consequences: (
            collections.abc.Iterable[global___FunctionalConsequence] | None
        ) = ...,
        attributes: collections.abc.Iterable[global___AttributeSetElement] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        variation_id: builtins.int | None = ...,
        number_of_copies: builtins.int | None = ...,
        number_of_chromosomes: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_classifications",
            b"_classifications",
            "_name",
            b"_name",
            "_number_of_chromosomes",
            b"_number_of_chromosomes",
            "_number_of_copies",
            b"_number_of_copies",
            "_variation_id",
            b"_variation_id",
            "classifications",
            b"classifications",
            "name",
            b"name",
            "number_of_chromosomes",
            b"number_of_chromosomes",
            "number_of_copies",
            b"number_of_copies",
            "variation_id",
            b"variation_id",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_classifications",
            b"_classifications",
            "_name",
            b"_name",
            "_number_of_chromosomes",
            b"_number_of_chromosomes",
            "_number_of_copies",
            b"_number_of_copies",
            "_variation_id",
            b"_variation_id",
            "attributes",
            b"attributes",
            "citations",
            b"citations",
            "classifications",
            b"classifications",
            "comments",
            b"comments",
            "functional_consequences",
            b"functional_consequences",
            "name",
            b"name",
            "number_of_chromosomes",
            b"number_of_chromosomes",
            "number_of_copies",
            b"number_of_copies",
            "other_names",
            b"other_names",
            "simple_alleles",
            b"simple_alleles",
            "variation_id",
            b"variation_id",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_classifications", b"_classifications"]
    ) -> typing.Literal["classifications"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_name", b"_name"]
    ) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_of_chromosomes", b"_number_of_chromosomes"]
    ) -> typing.Literal["number_of_chromosomes"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_of_copies", b"_number_of_copies"]
    ) -> typing.Literal["number_of_copies"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_variation_id", b"_variation_id"]
    ) -> typing.Literal["variation_id"] | None: ...

global___HaplotypeScv = HaplotypeScv

@typing.final
class GenotypeScv(google.protobuf.message.Message):
    """Used to report genotypes, be they simple or complex diplotypes.

    Corresponds to "typeGenotypeSCV" in XSD.
    nested elements
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SIMPLE_ALLELES_FIELD_NUMBER: builtins.int
    HAPLOTYPES_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    OTHER_NAMES_FIELD_NUMBER: builtins.int
    VARIATION_TYPE_FIELD_NUMBER: builtins.int
    FUNCTIONAL_CONSEQUENCES_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    VARIATION_ID_FIELD_NUMBER: builtins.int
    name: builtins.str
    """Optional name."""
    variation_type: global___VariationType.ValueType
    """The variation type."""
    variation_id: builtins.int
    """attributes

    Variation ID.
    """
    @property
    def simple_alleles(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AlleleScv]:
        """Simple alleles; mutually exclusive with `haplotypes`."""

    @property
    def haplotypes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___HaplotypeScv]:
        """Haplotype; mutually exclusive with `simple_alleles`.

        Allows more than 2 haplotypes per genotype to support
        representation of ploidy.
        """

    @property
    def other_names(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___OtherName]:
        """Other names used for the genotype."""

    @property
    def functional_consequences(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___FunctionalConsequence
    ]:
        """Functional consequences."""

    @property
    def attributes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___AttributeSetElement
    ]:
        """Attributes."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    def __init__(
        self,
        *,
        simple_alleles: collections.abc.Iterable[global___AlleleScv] | None = ...,
        haplotypes: collections.abc.Iterable[global___HaplotypeScv] | None = ...,
        name: builtins.str | None = ...,
        other_names: collections.abc.Iterable[global___OtherName] | None = ...,
        variation_type: global___VariationType.ValueType = ...,
        functional_consequences: (
            collections.abc.Iterable[global___FunctionalConsequence] | None
        ) = ...,
        attributes: collections.abc.Iterable[global___AttributeSetElement] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        variation_id: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_name",
            b"_name",
            "_variation_id",
            b"_variation_id",
            "name",
            b"name",
            "variation_id",
            b"variation_id",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_name",
            b"_name",
            "_variation_id",
            b"_variation_id",
            "attributes",
            b"attributes",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "functional_consequences",
            b"functional_consequences",
            "haplotypes",
            b"haplotypes",
            "name",
            b"name",
            "other_names",
            b"other_names",
            "simple_alleles",
            b"simple_alleles",
            "variation_id",
            b"variation_id",
            "variation_type",
            b"variation_type",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_name", b"_name"]
    ) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_variation_id", b"_variation_id"]
    ) -> typing.Literal["variation_id"] | None: ...

global___GenotypeScv = GenotypeScv

@typing.final
class ObservedIn(google.protobuf.message.Message):
    """// Observation of one piece of evidence.
    message typeEvidenceObservation {
      // // Method of data capture, not method of evaluation.
      // repeated MethodWithXrefs methods = 1;
      // Modes of inheritance.
      repeated string modes_of_inheritance = 1;
      // List of citations.
      repeated Citation citations = 2;
      // Comments.
      repeated Comment comments = 3;
      // // Observed phenotypes.
      // repeated PhenotypeListDetailsType observed_phenotypes = 5;
      // // Indications.
      // repeated Indications indications = 6;
      // The submitter's identifiers.
      repeated Submitter submitter_identifiers = 4;
      // Families.
      optional string families = 5;
      // Individuals.
      optional string individuals = 6;
      // Segregation.
      optional string segregations = 7;
      // Other gene.
      optional string other_gene = 8;
      // Same gene.
      optional string same_gene = 9;
      // Evident type.
      EvidenceType evidence_type = 10;
      // Allele frequency.
      optional string allele_frequency = 11;
      // Allele origin.
      optional string allele_origin = 12;
      // Ethnicity.
      optional string ethnicity = 13;
      // Geographic origin.
      optional string geographic_origin = 14;
    }

    Documents in what populations or samples an allele or genotype has
    been observed relative to the described trait. Summary observations can be
    registered per submitted assertion, grouped by common citation, study type, origin,
    ethnicity, tissue, cell line, and species data. Not all options are valid per study
    type, but these will not be validated in the xsd.

    Corresponds to `ObservationSet` in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _MethodTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ObservedIn._MethodType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        METHOD_TYPE_UNSPECIFIED: ObservedIn._MethodType.ValueType  # 0
        """unspecified method type"""
        METHOD_TYPE_LITERATURE_ONLY: ObservedIn._MethodType.ValueType  # 1
        """corresponds to "literature only" """
        METHOD_TYPE_REFERENCE_POPULATION: ObservedIn._MethodType.ValueType  # 2
        """corresponds to "reference population" """
        METHOD_TYPE_CASE_CONTROL: ObservedIn._MethodType.ValueType  # 3
        """corresponds to "case-control" """
        METHOD_TYPE_CLINICAL_TESTING: ObservedIn._MethodType.ValueType  # 4
        """corresponds to "clinical testing" """
        METHOD_TYPE_IN_VITRO: ObservedIn._MethodType.ValueType  # 5
        """corresponds to "in vitro" """
        METHOD_TYPE_IN_VIVO: ObservedIn._MethodType.ValueType  # 6
        """corresponds to "in vivo" """
        METHOD_TYPE_INFERRED_FROM_SOURCE: ObservedIn._MethodType.ValueType  # 7
        """corresponds to "inferred from source" """
        METHOD_TYPE_RESEARCH: ObservedIn._MethodType.ValueType  # 8
        """corresponds to "research" """

    class MethodType(_MethodType, metaclass=_MethodTypeEnumTypeWrapper):
        """Local enum for the method type."""

    METHOD_TYPE_UNSPECIFIED: ObservedIn.MethodType.ValueType  # 0
    """unspecified method type"""
    METHOD_TYPE_LITERATURE_ONLY: ObservedIn.MethodType.ValueType  # 1
    """corresponds to "literature only" """
    METHOD_TYPE_REFERENCE_POPULATION: ObservedIn.MethodType.ValueType  # 2
    """corresponds to "reference population" """
    METHOD_TYPE_CASE_CONTROL: ObservedIn.MethodType.ValueType  # 3
    """corresponds to "case-control" """
    METHOD_TYPE_CLINICAL_TESTING: ObservedIn.MethodType.ValueType  # 4
    """corresponds to "clinical testing" """
    METHOD_TYPE_IN_VITRO: ObservedIn.MethodType.ValueType  # 5
    """corresponds to "in vitro" """
    METHOD_TYPE_IN_VIVO: ObservedIn.MethodType.ValueType  # 6
    """corresponds to "in vivo" """
    METHOD_TYPE_INFERRED_FROM_SOURCE: ObservedIn.MethodType.ValueType  # 7
    """corresponds to "inferred from source" """
    METHOD_TYPE_RESEARCH: ObservedIn.MethodType.ValueType  # 8
    """corresponds to "research" """

    @typing.final
    class ObservedDataAttribute(google.protobuf.message.Message):
        """Local struct for attributes based on `BaseAttribute`."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _TypeEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                ObservedIn.ObservedDataAttribute._Type.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            TYPE_UNSPECIFIED: ObservedIn.ObservedDataAttribute._Type.ValueType  # 0
            """unspecified observed data attribute type"""
            TYPE_DESCRIPTION: ObservedIn.ObservedDataAttribute._Type.ValueType  # 1
            """corresponds to "Description" """
            TYPE_VARIANT_ALLELES: ObservedIn.ObservedDataAttribute._Type.ValueType  # 2
            """corresponds to "VariantAlleles" """
            TYPE_SUBJECTS_WITH_VARIANT: ObservedIn.ObservedDataAttribute._Type.ValueType  # 3
            """corresponds to "SubjectsWithVariant" """
            TYPE_SUBJECTS_WITH_DIFFERENT_CAUSATIVE_VARIANT: (
                ObservedIn.ObservedDataAttribute._Type.ValueType
            )  # 4
            """corresponds to "SubjectsWithDifferentCausativeVariant" """
            TYPE_VARIANT_CHROMOSOMES: ObservedIn.ObservedDataAttribute._Type.ValueType  # 5
            """corresponds to "VariantChromosomes" """
            TYPE_INDEPENDENT_OBSERVATIONS: ObservedIn.ObservedDataAttribute._Type.ValueType  # 6
            """corresponds to "IndependentObservations" """
            TYPE_SINGLE_HETEROZYGOUS: ObservedIn.ObservedDataAttribute._Type.ValueType  # 7
            """corresponds to "SingleHeterozygote" """
            TYPE_COMPOUND_HETEROZYGOUS: ObservedIn.ObservedDataAttribute._Type.ValueType  # 8
            """corresponds to "CompoundHeterozygote" """
            TYPE_HOMOZYGOUS: ObservedIn.ObservedDataAttribute._Type.ValueType  # 9
            """corresponds to "Homozygote" """
            TYPE_HEMIZYGOUS: ObservedIn.ObservedDataAttribute._Type.ValueType  # 10
            """corresponds to "Hemizygote" """
            TYPE_NUMBER_MOSAIC: ObservedIn.ObservedDataAttribute._Type.ValueType  # 11
            """corresponds to "NumberMosaic" """
            TYPE_OBSERVED_UNSPECIFIED: ObservedIn.ObservedDataAttribute._Type.ValueType  # 12
            """corresponds to "ObservedUnspecified" """
            TYPE_ALLELE_FREQUENCY: ObservedIn.ObservedDataAttribute._Type.ValueType  # 13
            """corresponds to "AlleleFrequency" """
            TYPE_SECONDARY_FINDING: ObservedIn.ObservedDataAttribute._Type.ValueType  # 14
            """corresponds to "SecondaryFinding" """
            TYPE_GENOTYPE_AND_MOI_CONSISTENT: ObservedIn.ObservedDataAttribute._Type.ValueType  # 15
            """corresponds to "GenotypeAndMOIConsistent" """
            TYPE_UNAFFECTED_FAMILY_MEMBER_WITH_CAUSATIVE_VARIANT: (
                ObservedIn.ObservedDataAttribute._Type.ValueType
            )  # 16
            """corresponds to "UnaffectedFamilyMemberWithCausativeVariant" """
            TYPE_HET_PARENT_TRANSMIT_NORMAL_ALLELE: (
                ObservedIn.ObservedDataAttribute._Type.ValueType
            )  # 17
            """corresponds to "HetParentTransmitNormalAllele" """
            TYPE_COSEGREGATING_FAMILIES: ObservedIn.ObservedDataAttribute._Type.ValueType  # 18
            """corresponds to "CosegregatingFamilies" """
            TYPE_INFORMATIVE_MEIOSES: ObservedIn.ObservedDataAttribute._Type.ValueType  # 19
            """corresponds to "InformativeMeioses" """
            TYPE_SAMPLE_LOCAL_ID: ObservedIn.ObservedDataAttribute._Type.ValueType  # 20
            """corresponds to "SampleLocalID" """
            TYPE_SAMPLE_VARIANT_ID: ObservedIn.ObservedDataAttribute._Type.ValueType  # 21
            """corresponds to "SampleVariantID" """
            TYPE_FAMILY_HISTORY: ObservedIn.ObservedDataAttribute._Type.ValueType  # 22
            """corresponds to "FamilyHistory" """
            TYPE_NUM_FAMILIES_WITH_VARIANT: ObservedIn.ObservedDataAttribute._Type.ValueType  # 23
            """corresponds to "NumFamiliesWithVariant" """
            TYPE_NUM_FAMILIES_WITH_SEGREGATION_OBSERVED: (
                ObservedIn.ObservedDataAttribute._Type.ValueType
            )  # 24
            """corresponds to "NumFamiliesWithSegregationObserved" """
            TYPE_SEGREGATION_OBSERVED: ObservedIn.ObservedDataAttribute._Type.ValueType  # 25
            """corresponds to "SegregationObserved" """

        class Type(_Type, metaclass=_TypeEnumTypeWrapper):
            """Local enum for the observed data type."""

        TYPE_UNSPECIFIED: ObservedIn.ObservedDataAttribute.Type.ValueType  # 0
        """unspecified observed data attribute type"""
        TYPE_DESCRIPTION: ObservedIn.ObservedDataAttribute.Type.ValueType  # 1
        """corresponds to "Description" """
        TYPE_VARIANT_ALLELES: ObservedIn.ObservedDataAttribute.Type.ValueType  # 2
        """corresponds to "VariantAlleles" """
        TYPE_SUBJECTS_WITH_VARIANT: ObservedIn.ObservedDataAttribute.Type.ValueType  # 3
        """corresponds to "SubjectsWithVariant" """
        TYPE_SUBJECTS_WITH_DIFFERENT_CAUSATIVE_VARIANT: (
            ObservedIn.ObservedDataAttribute.Type.ValueType
        )  # 4
        """corresponds to "SubjectsWithDifferentCausativeVariant" """
        TYPE_VARIANT_CHROMOSOMES: ObservedIn.ObservedDataAttribute.Type.ValueType  # 5
        """corresponds to "VariantChromosomes" """
        TYPE_INDEPENDENT_OBSERVATIONS: ObservedIn.ObservedDataAttribute.Type.ValueType  # 6
        """corresponds to "IndependentObservations" """
        TYPE_SINGLE_HETEROZYGOUS: ObservedIn.ObservedDataAttribute.Type.ValueType  # 7
        """corresponds to "SingleHeterozygote" """
        TYPE_COMPOUND_HETEROZYGOUS: ObservedIn.ObservedDataAttribute.Type.ValueType  # 8
        """corresponds to "CompoundHeterozygote" """
        TYPE_HOMOZYGOUS: ObservedIn.ObservedDataAttribute.Type.ValueType  # 9
        """corresponds to "Homozygote" """
        TYPE_HEMIZYGOUS: ObservedIn.ObservedDataAttribute.Type.ValueType  # 10
        """corresponds to "Hemizygote" """
        TYPE_NUMBER_MOSAIC: ObservedIn.ObservedDataAttribute.Type.ValueType  # 11
        """corresponds to "NumberMosaic" """
        TYPE_OBSERVED_UNSPECIFIED: ObservedIn.ObservedDataAttribute.Type.ValueType  # 12
        """corresponds to "ObservedUnspecified" """
        TYPE_ALLELE_FREQUENCY: ObservedIn.ObservedDataAttribute.Type.ValueType  # 13
        """corresponds to "AlleleFrequency" """
        TYPE_SECONDARY_FINDING: ObservedIn.ObservedDataAttribute.Type.ValueType  # 14
        """corresponds to "SecondaryFinding" """
        TYPE_GENOTYPE_AND_MOI_CONSISTENT: ObservedIn.ObservedDataAttribute.Type.ValueType  # 15
        """corresponds to "GenotypeAndMOIConsistent" """
        TYPE_UNAFFECTED_FAMILY_MEMBER_WITH_CAUSATIVE_VARIANT: (
            ObservedIn.ObservedDataAttribute.Type.ValueType
        )  # 16
        """corresponds to "UnaffectedFamilyMemberWithCausativeVariant" """
        TYPE_HET_PARENT_TRANSMIT_NORMAL_ALLELE: (
            ObservedIn.ObservedDataAttribute.Type.ValueType
        )  # 17
        """corresponds to "HetParentTransmitNormalAllele" """
        TYPE_COSEGREGATING_FAMILIES: ObservedIn.ObservedDataAttribute.Type.ValueType  # 18
        """corresponds to "CosegregatingFamilies" """
        TYPE_INFORMATIVE_MEIOSES: ObservedIn.ObservedDataAttribute.Type.ValueType  # 19
        """corresponds to "InformativeMeioses" """
        TYPE_SAMPLE_LOCAL_ID: ObservedIn.ObservedDataAttribute.Type.ValueType  # 20
        """corresponds to "SampleLocalID" """
        TYPE_SAMPLE_VARIANT_ID: ObservedIn.ObservedDataAttribute.Type.ValueType  # 21
        """corresponds to "SampleVariantID" """
        TYPE_FAMILY_HISTORY: ObservedIn.ObservedDataAttribute.Type.ValueType  # 22
        """corresponds to "FamilyHistory" """
        TYPE_NUM_FAMILIES_WITH_VARIANT: ObservedIn.ObservedDataAttribute.Type.ValueType  # 23
        """corresponds to "NumFamiliesWithVariant" """
        TYPE_NUM_FAMILIES_WITH_SEGREGATION_OBSERVED: (
            ObservedIn.ObservedDataAttribute.Type.ValueType
        )  # 24
        """corresponds to "NumFamiliesWithSegregationObserved" """
        TYPE_SEGREGATION_OBSERVED: ObservedIn.ObservedDataAttribute.Type.ValueType  # 25
        """corresponds to "SegregationObserved" """

        BASE_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        type: global___ObservedIn.ObservedDataAttribute.Type.ValueType
        """type"""
        @property
        def base(self) -> global___BaseAttribute:
            """base"""

        def __init__(
            self,
            *,
            base: global___BaseAttribute | None = ...,
            type: global___ObservedIn.ObservedDataAttribute.Type.ValueType = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["base", b"base"]) -> builtins.bool: ...
        def ClearField(
            self, field_name: typing.Literal["base", b"base", "type", b"type"]
        ) -> None: ...

    @typing.final
    class ObservedData(google.protobuf.message.Message):
        """This is an AttributeSet, there will be 1 attribute supported
        by optional citations, xrefs and comment. There must be at least one
        ObservedData Set, but can be any number. For each ObservedData set the
        Attribute will be either decimal or string depending on type. The value will
        be stored here, but decimals will be entered to the database as a string.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        ATTRIBUTES_FIELD_NUMBER: builtins.int
        SEVERITY_FIELD_NUMBER: builtins.int
        CITATIONS_FIELD_NUMBER: builtins.int
        XREFS_FIELD_NUMBER: builtins.int
        COMMENTS_FIELD_NUMBER: builtins.int
        severity: global___Severity.ValueType
        """Severity."""
        @property
        def attributes(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___ObservedIn.ObservedDataAttribute
        ]:
            """Attributes."""

        @property
        def citations(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
            """Citation list."""

        @property
        def xrefs(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
            """Xref list."""

        @property
        def comments(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
            """Comment list."""

        def __init__(
            self,
            *,
            attributes: (
                collections.abc.Iterable[global___ObservedIn.ObservedDataAttribute] | None
            ) = ...,
            severity: global___Severity.ValueType | None = ...,
            citations: collections.abc.Iterable[global___Citation] | None = ...,
            xrefs: collections.abc.Iterable[global___Xref] | None = ...,
            comments: collections.abc.Iterable[global___Comment] | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing.Literal["_severity", b"_severity", "severity", b"severity"]
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_severity",
                b"_severity",
                "attributes",
                b"attributes",
                "citations",
                b"citations",
                "comments",
                b"comments",
                "severity",
                b"severity",
                "xrefs",
                b"xrefs",
            ],
        ) -> None: ...
        def WhichOneof(
            self, oneof_group: typing.Literal["_severity", b"_severity"]
        ) -> typing.Literal["severity"] | None: ...

    SAMPLE_FIELD_NUMBER: builtins.int
    OBSERVED_DATA_FIELD_NUMBER: builtins.int
    COOCCURRENCE_SETS_FIELD_NUMBER: builtins.int
    TRAIT_SET_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    @property
    def sample(self) -> global___Sample:
        """Sample."""

    @property
    def observed_data(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___ObservedIn.ObservedData
    ]:
        """Observed data."""

    @property
    def cooccurrence_sets(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Cooccurrence]:
        """Co-occurence set."""

    @property
    def trait_set(self) -> global___TraitSet:
        """TraitSet."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """Citation list."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """Xref list."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """Comment list."""

    def __init__(
        self,
        *,
        sample: global___Sample | None = ...,
        observed_data: collections.abc.Iterable[global___ObservedIn.ObservedData] | None = ...,
        cooccurrence_sets: collections.abc.Iterable[global___Cooccurrence] | None = ...,
        trait_set: global___TraitSet | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_trait_set", b"_trait_set", "sample", b"sample", "trait_set", b"trait_set"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_trait_set",
            b"_trait_set",
            "citations",
            b"citations",
            "comments",
            b"comments",
            "cooccurrence_sets",
            b"cooccurrence_sets",
            "observed_data",
            b"observed_data",
            "sample",
            b"sample",
            "trait_set",
            b"trait_set",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing.Literal["_trait_set", b"_trait_set"]
    ) -> typing.Literal["trait_set"] | None: ...

global___ObservedIn = ObservedIn

@typing.final
class ClinicalAssertion(google.protobuf.message.Message):
    """A clinical assertion as submitted (SCV record).

    Corresponds to `MeasureTraitType` in XSD and `<ClinicalAssertion>` in XML
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _RecordStatusEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ClinicalAssertion._RecordStatus.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        RECORD_STATUS_UNSPECIFIED: ClinicalAssertion._RecordStatus.ValueType  # 0
        """unspecified record status"""
        RECORD_STATUS_CURRENT: ClinicalAssertion._RecordStatus.ValueType  # 1
        """corresponds to "current" """
        RECORD_STATUS_REPLACED: ClinicalAssertion._RecordStatus.ValueType  # 2
        """corresponds to "replaced" """
        RECORD_STATUS_REMOVED: ClinicalAssertion._RecordStatus.ValueType  # 3
        """corresponds to "removed" """

    class RecordStatus(_RecordStatus, metaclass=_RecordStatusEnumTypeWrapper):
        """Local enum for record status."""

    RECORD_STATUS_UNSPECIFIED: ClinicalAssertion.RecordStatus.ValueType  # 0
    """unspecified record status"""
    RECORD_STATUS_CURRENT: ClinicalAssertion.RecordStatus.ValueType  # 1
    """corresponds to "current" """
    RECORD_STATUS_REPLACED: ClinicalAssertion.RecordStatus.ValueType  # 2
    """corresponds to "replaced" """
    RECORD_STATUS_REMOVED: ClinicalAssertion.RecordStatus.ValueType  # 3
    """corresponds to "removed" """

    @typing.final
    class ClinvarSubmissionId(google.protobuf.message.Message):
        """Local type for ClinVarSubmissionID."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        LOCAL_KEY_FIELD_NUMBER: builtins.int
        TITLE_FIELD_NUMBER: builtins.int
        LOCAL_KEY_IS_SUBMITTED_FIELD_NUMBER: builtins.int
        SUBMITTED_ASSEMBLY_FIELD_NUMBER: builtins.int
        local_key: builtins.str
        """The identifier provided by the submitter to facilitate
        identification of records corresponding to their submissions. If not
        provided by a submitter, NCBI generates one. If provided by
        submitter, that is represented in localKeyIsSubmitted.
        """
        title: builtins.str
        """Optional title."""
        local_key_is_submitted: builtins.bool
        """Optional indication whether local key has been submitted."""
        submitted_assembly: builtins.str
        """Optional assembly of submission."""
        def __init__(
            self,
            *,
            local_key: builtins.str = ...,
            title: builtins.str | None = ...,
            local_key_is_submitted: builtins.bool | None = ...,
            submitted_assembly: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_local_key_is_submitted",
                b"_local_key_is_submitted",
                "_submitted_assembly",
                b"_submitted_assembly",
                "_title",
                b"_title",
                "local_key_is_submitted",
                b"local_key_is_submitted",
                "submitted_assembly",
                b"submitted_assembly",
                "title",
                b"title",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_local_key_is_submitted",
                b"_local_key_is_submitted",
                "_submitted_assembly",
                b"_submitted_assembly",
                "_title",
                b"_title",
                "local_key",
                b"local_key",
                "local_key_is_submitted",
                b"local_key_is_submitted",
                "submitted_assembly",
                b"submitted_assembly",
                "title",
                b"title",
            ],
        ) -> None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_local_key_is_submitted", b"_local_key_is_submitted"]
        ) -> typing.Literal["local_key_is_submitted"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_submitted_assembly", b"_submitted_assembly"]
        ) -> typing.Literal["submitted_assembly"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_title", b"_title"]
        ) -> typing.Literal["title"] | None: ...

    @typing.final
    class AttributeSetElement(google.protobuf.message.Message):
        """Local type for attribute set."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _TypeEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                ClinicalAssertion.AttributeSetElement._Type.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            TYPE_UNSPECIFIED: ClinicalAssertion.AttributeSetElement._Type.ValueType  # 0
            """unspecified type"""
            TYPE_MODE_OF_INHERITANCE: ClinicalAssertion.AttributeSetElement._Type.ValueType  # 1
            """Corresponds to "ModeOfInheritance" """
            TYPE_PENETRANCE: ClinicalAssertion.AttributeSetElement._Type.ValueType  # 2
            """Corresponds to "Penetrance" """
            TYPE_AGE_OF_ONSET: ClinicalAssertion.AttributeSetElement._Type.ValueType  # 3
            """Corresponds to "AgeOfOnset" """
            TYPE_SEVERITY: ClinicalAssertion.AttributeSetElement._Type.ValueType  # 4
            """Corresponds to "Severity" """
            TYPE_CLASSIFICATION_HISTORY: ClinicalAssertion.AttributeSetElement._Type.ValueType  # 5
            """Corresponds to "ClassificationHistory" """
            TYPE_SEVERITY_DESCRIPTION: ClinicalAssertion.AttributeSetElement._Type.ValueType  # 6
            """Corresponds to "SeverityDescription" """
            TYPE_ASSERTION_METHOD: ClinicalAssertion.AttributeSetElement._Type.ValueType  # 7
            """Corresponds to "AssertionMethod" """

        class Type(_Type, metaclass=_TypeEnumTypeWrapper):
            """Local enum for types."""

        TYPE_UNSPECIFIED: ClinicalAssertion.AttributeSetElement.Type.ValueType  # 0
        """unspecified type"""
        TYPE_MODE_OF_INHERITANCE: ClinicalAssertion.AttributeSetElement.Type.ValueType  # 1
        """Corresponds to "ModeOfInheritance" """
        TYPE_PENETRANCE: ClinicalAssertion.AttributeSetElement.Type.ValueType  # 2
        """Corresponds to "Penetrance" """
        TYPE_AGE_OF_ONSET: ClinicalAssertion.AttributeSetElement.Type.ValueType  # 3
        """Corresponds to "AgeOfOnset" """
        TYPE_SEVERITY: ClinicalAssertion.AttributeSetElement.Type.ValueType  # 4
        """Corresponds to "Severity" """
        TYPE_CLASSIFICATION_HISTORY: ClinicalAssertion.AttributeSetElement.Type.ValueType  # 5
        """Corresponds to "ClassificationHistory" """
        TYPE_SEVERITY_DESCRIPTION: ClinicalAssertion.AttributeSetElement.Type.ValueType  # 6
        """Corresponds to "SeverityDescription" """
        TYPE_ASSERTION_METHOD: ClinicalAssertion.AttributeSetElement.Type.ValueType  # 7
        """Corresponds to "AssertionMethod" """

        ATTRIBUTE_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        XREFS_FIELD_NUMBER: builtins.int
        CITATIONS_FIELD_NUMBER: builtins.int
        COMMENTS_FIELD_NUMBER: builtins.int
        type: global___ClinicalAssertion.AttributeSetElement.Type.ValueType
        """The type of the attribute."""
        @property
        def attribute(self) -> global___BaseAttribute:
            """The base value."""

        @property
        def xrefs(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
            """List of xrefs."""

        @property
        def citations(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
            """List of citations."""

        @property
        def comments(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
            """List of comments."""

        def __init__(
            self,
            *,
            attribute: global___BaseAttribute | None = ...,
            type: global___ClinicalAssertion.AttributeSetElement.Type.ValueType = ...,
            xrefs: collections.abc.Iterable[global___Xref] | None = ...,
            citations: collections.abc.Iterable[global___Citation] | None = ...,
            comments: collections.abc.Iterable[global___Comment] | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing.Literal["attribute", b"attribute"]
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "attribute",
                b"attribute",
                "citations",
                b"citations",
                "comments",
                b"comments",
                "type",
                b"type",
                "xrefs",
                b"xrefs",
            ],
        ) -> None: ...

    @typing.final
    class ClinvarAccession(google.protobuf.message.Message):
        """Local type for `ClinVarAccession`"""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        ACCESSION_FIELD_NUMBER: builtins.int
        VERSION_FIELD_NUMBER: builtins.int
        SUBMITTER_IDENTIFIERS_FIELD_NUMBER: builtins.int
        DATE_UPDATED_FIELD_NUMBER: builtins.int
        DATE_CREATED_FIELD_NUMBER: builtins.int
        accession: builtins.str
        """Accession."""
        version: builtins.int
        """Version."""
        @property
        def submitter_identifiers(self) -> global___SubmitterIdentifiers:
            """The submitter's identifier."""

        @property
        def date_updated(self) -> google.protobuf.timestamp_pb2.Timestamp:
            """The date that the latest update to the submitted
            record (SCV) became public in ClinVar.
            """

        @property
        def date_created(self) -> google.protobuf.timestamp_pb2.Timestamp:
            """DateCreated is the date when the record first became
            public in ClinVar.
            """

        def __init__(
            self,
            *,
            accession: builtins.str = ...,
            version: builtins.int = ...,
            submitter_identifiers: global___SubmitterIdentifiers | None = ...,
            date_updated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
            date_created: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_date_created",
                b"_date_created",
                "_date_updated",
                b"_date_updated",
                "date_created",
                b"date_created",
                "date_updated",
                b"date_updated",
                "submitter_identifiers",
                b"submitter_identifiers",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_date_created",
                b"_date_created",
                "_date_updated",
                b"_date_updated",
                "accession",
                b"accession",
                "date_created",
                b"date_created",
                "date_updated",
                b"date_updated",
                "submitter_identifiers",
                b"submitter_identifiers",
                "version",
                b"version",
            ],
        ) -> None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_date_created", b"_date_created"]
        ) -> typing.Literal["date_created"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_date_updated", b"_date_updated"]
        ) -> typing.Literal["date_updated"] | None: ...

    CLINVAR_SUBMISSION_ID_FIELD_NUMBER: builtins.int
    CLINVAR_ACCESSION_FIELD_NUMBER: builtins.int
    ADDITIONAL_SUBMITTERS_FIELD_NUMBER: builtins.int
    RECORD_STATUS_FIELD_NUMBER: builtins.int
    REPLACES_FIELD_NUMBER: builtins.int
    REPLACEDS_FIELD_NUMBER: builtins.int
    CLASSIFICATIONS_FIELD_NUMBER: builtins.int
    ASSERTION_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    OBSERVED_INS_FIELD_NUMBER: builtins.int
    SIMPLE_ALLELE_FIELD_NUMBER: builtins.int
    HAPLOTYPE_FIELD_NUMBER: builtins.int
    GENOTYPE_FIELD_NUMBER: builtins.int
    TRAIT_SET_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    STUDY_NAME_FIELD_NUMBER: builtins.int
    STUDY_DESCRIPTION_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    SUBMISSION_NAMES_FIELD_NUMBER: builtins.int
    DATE_CREATED_FIELD_NUMBER: builtins.int
    DATE_LAST_UPDATED_FIELD_NUMBER: builtins.int
    SUBMISSION_DATE_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    FDA_RECOGNIZED_DATABASE_FIELD_NUMBER: builtins.int
    record_status: global___ClinicalAssertion.RecordStatus.ValueType
    """Record status."""
    assertion: global___Assertion.ValueType
    """The assertion."""
    study_name: builtins.str
    """Optional study name."""
    study_description: builtins.str
    """Optional study description."""
    id: builtins.int
    """ID."""
    fda_recognized_database: builtins.bool
    """Whether it is an FDA recognized database."""
    @property
    def clinvar_submission_id(self) -> global___ClinicalAssertion.ClinvarSubmissionId:
        """nested elements

        The ClinVar submission ID.
        """

    @property
    def clinvar_accession(self) -> global___ClinicalAssertion.ClinvarAccession:
        """The ClinVar SCV accessions."""

    @property
    def additional_submitters(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Submitter]:
        """Optional list of additional submitters."""

    @property
    def replaces(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """Replaces; mutually exclusive with replaceds"""

    @property
    def replaceds(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___ClinicalAssertionRecordHistory
    ]:
        """Replaced list; mutually exclusive with replaces"""

    @property
    def classifications(self) -> global___ClassificationScv:
        """SCV classification."""

    @property
    def attributes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___ClinicalAssertion.AttributeSetElement
    ]:
        """Attributes."""

    @property
    def observed_ins(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ObservedIn]:
        """Observed in."""

    @property
    def simple_allele(self) -> global___AlleleScv:
        """Allele in SCV; mutually exclusive with haplotype/genotype."""

    @property
    def haplotype(self) -> global___HaplotypeScv:
        """Haplotype in SCV; mutually exclusive with allele/genotype."""

    @property
    def genotype(self) -> global___GenotypeScv:
        """Genotype in SCV; mutually exclusive with allele/haplotype."""

    @property
    def trait_set(self) -> global___TraitSet:
        """The trait set."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    @property
    def submission_names(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """List of submissions."""

    @property
    def date_created(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """attributes

        Date of creation.
        """

    @property
    def date_last_updated(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Date of creation."""

    @property
    def submission_date(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Date of creation."""

    def __init__(
        self,
        *,
        clinvar_submission_id: global___ClinicalAssertion.ClinvarSubmissionId | None = ...,
        clinvar_accession: global___ClinicalAssertion.ClinvarAccession | None = ...,
        additional_submitters: collections.abc.Iterable[global___Submitter] | None = ...,
        record_status: global___ClinicalAssertion.RecordStatus.ValueType = ...,
        replaces: collections.abc.Iterable[builtins.str] | None = ...,
        replaceds: collections.abc.Iterable[global___ClinicalAssertionRecordHistory] | None = ...,
        classifications: global___ClassificationScv | None = ...,
        assertion: global___Assertion.ValueType = ...,
        attributes: (
            collections.abc.Iterable[global___ClinicalAssertion.AttributeSetElement] | None
        ) = ...,
        observed_ins: collections.abc.Iterable[global___ObservedIn] | None = ...,
        simple_allele: global___AlleleScv | None = ...,
        haplotype: global___HaplotypeScv | None = ...,
        genotype: global___GenotypeScv | None = ...,
        trait_set: global___TraitSet | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        study_name: builtins.str | None = ...,
        study_description: builtins.str | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        submission_names: collections.abc.Iterable[builtins.str] | None = ...,
        date_created: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        date_last_updated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        submission_date: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        id: builtins.int | None = ...,
        fda_recognized_database: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_fda_recognized_database",
            b"_fda_recognized_database",
            "_genotype",
            b"_genotype",
            "_haplotype",
            b"_haplotype",
            "_id",
            b"_id",
            "_simple_allele",
            b"_simple_allele",
            "_study_description",
            b"_study_description",
            "_study_name",
            b"_study_name",
            "classifications",
            b"classifications",
            "clinvar_accession",
            b"clinvar_accession",
            "clinvar_submission_id",
            b"clinvar_submission_id",
            "date_created",
            b"date_created",
            "date_last_updated",
            b"date_last_updated",
            "fda_recognized_database",
            b"fda_recognized_database",
            "genotype",
            b"genotype",
            "haplotype",
            b"haplotype",
            "id",
            b"id",
            "simple_allele",
            b"simple_allele",
            "study_description",
            b"study_description",
            "study_name",
            b"study_name",
            "submission_date",
            b"submission_date",
            "trait_set",
            b"trait_set",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_fda_recognized_database",
            b"_fda_recognized_database",
            "_genotype",
            b"_genotype",
            "_haplotype",
            b"_haplotype",
            "_id",
            b"_id",
            "_simple_allele",
            b"_simple_allele",
            "_study_description",
            b"_study_description",
            "_study_name",
            b"_study_name",
            "additional_submitters",
            b"additional_submitters",
            "assertion",
            b"assertion",
            "attributes",
            b"attributes",
            "citations",
            b"citations",
            "classifications",
            b"classifications",
            "clinvar_accession",
            b"clinvar_accession",
            "clinvar_submission_id",
            b"clinvar_submission_id",
            "comments",
            b"comments",
            "date_created",
            b"date_created",
            "date_last_updated",
            b"date_last_updated",
            "fda_recognized_database",
            b"fda_recognized_database",
            "genotype",
            b"genotype",
            "haplotype",
            b"haplotype",
            "id",
            b"id",
            "observed_ins",
            b"observed_ins",
            "record_status",
            b"record_status",
            "replaceds",
            b"replaceds",
            "replaces",
            b"replaces",
            "simple_allele",
            b"simple_allele",
            "study_description",
            b"study_description",
            "study_name",
            b"study_name",
            "submission_date",
            b"submission_date",
            "submission_names",
            b"submission_names",
            "trait_set",
            b"trait_set",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_fda_recognized_database", b"_fda_recognized_database"]
    ) -> typing.Literal["fda_recognized_database"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_genotype", b"_genotype"]
    ) -> typing.Literal["genotype"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_haplotype", b"_haplotype"]
    ) -> typing.Literal["haplotype"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_id", b"_id"]
    ) -> typing.Literal["id"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_simple_allele", b"_simple_allele"]
    ) -> typing.Literal["simple_allele"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_study_description", b"_study_description"]
    ) -> typing.Literal["study_description"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_study_name", b"_study_name"]
    ) -> typing.Literal["study_name"] | None: ...

global___ClinicalAssertion = ClinicalAssertion

@typing.final
class Allele(google.protobuf.message.Message):
    """This is a record per variant (Measure/@ID,AlleleID).

    Corresponds to "typeAllele" in XSD.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class Gene(google.protobuf.message.Message):
        """Local type for Gene.
        nested elements
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        LOCATIONS_FIELD_NUMBER: builtins.int
        OMIMS_FIELD_NUMBER: builtins.int
        HAPLOINSUFFICIENCY_FIELD_NUMBER: builtins.int
        TRIPLOSENSITIVITY_FIELD_NUMBER: builtins.int
        PROPERTIES_FIELD_NUMBER: builtins.int
        SYMBOL_FIELD_NUMBER: builtins.int
        FULL_NAME_FIELD_NUMBER: builtins.int
        GENE_ID_FIELD_NUMBER: builtins.int
        HGNC_ID_FIELD_NUMBER: builtins.int
        SOURCE_FIELD_NUMBER: builtins.int
        RELATIONSHIP_TYPE_FIELD_NUMBER: builtins.int
        symbol: builtins.str
        """attributes

        Optional gene symbol.
        """
        full_name: builtins.str
        """Full gene name."""
        gene_id: builtins.int
        """Gene ID."""
        hgnc_id: builtins.str
        """Optional HGNC ID."""
        source: builtins.str
        """Source of gene (calculated or submitted)."""
        relationship_type: global___GeneVariantRelationship.ValueType
        """Relationship between gene and variant."""
        @property
        def locations(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Location]:
            """Gene's locations."""

        @property
        def omims(
            self,
        ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]:
            """OMIM ID."""

        @property
        def haploinsufficiency(self) -> global___DosageSensitivity:
            """Haploinsuffiency."""

        @property
        def triplosensitivity(self) -> global___DosageSensitivity:
            """Triplosensitivity."""

        @property
        def properties(
            self,
        ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
            """Used to set key words for retrieval or
            display about a gene, such as genes listed by the
            ACMG guidelines.
            """

        def __init__(
            self,
            *,
            locations: collections.abc.Iterable[global___Location] | None = ...,
            omims: collections.abc.Iterable[builtins.int] | None = ...,
            haploinsufficiency: global___DosageSensitivity | None = ...,
            triplosensitivity: global___DosageSensitivity | None = ...,
            properties: collections.abc.Iterable[builtins.str] | None = ...,
            symbol: builtins.str | None = ...,
            full_name: builtins.str = ...,
            gene_id: builtins.int = ...,
            hgnc_id: builtins.str | None = ...,
            source: builtins.str = ...,
            relationship_type: global___GeneVariantRelationship.ValueType | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_haploinsufficiency",
                b"_haploinsufficiency",
                "_hgnc_id",
                b"_hgnc_id",
                "_relationship_type",
                b"_relationship_type",
                "_symbol",
                b"_symbol",
                "_triplosensitivity",
                b"_triplosensitivity",
                "haploinsufficiency",
                b"haploinsufficiency",
                "hgnc_id",
                b"hgnc_id",
                "relationship_type",
                b"relationship_type",
                "symbol",
                b"symbol",
                "triplosensitivity",
                b"triplosensitivity",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_haploinsufficiency",
                b"_haploinsufficiency",
                "_hgnc_id",
                b"_hgnc_id",
                "_relationship_type",
                b"_relationship_type",
                "_symbol",
                b"_symbol",
                "_triplosensitivity",
                b"_triplosensitivity",
                "full_name",
                b"full_name",
                "gene_id",
                b"gene_id",
                "haploinsufficiency",
                b"haploinsufficiency",
                "hgnc_id",
                b"hgnc_id",
                "locations",
                b"locations",
                "omims",
                b"omims",
                "properties",
                b"properties",
                "relationship_type",
                b"relationship_type",
                "source",
                b"source",
                "symbol",
                b"symbol",
                "triplosensitivity",
                b"triplosensitivity",
            ],
        ) -> None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_haploinsufficiency", b"_haploinsufficiency"]
        ) -> typing.Literal["haploinsufficiency"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_hgnc_id", b"_hgnc_id"]
        ) -> typing.Literal["hgnc_id"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_relationship_type", b"_relationship_type"]
        ) -> typing.Literal["relationship_type"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_symbol", b"_symbol"]
        ) -> typing.Literal["symbol"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_triplosensitivity", b"_triplosensitivity"]
        ) -> typing.Literal["triplosensitivity"] | None: ...

    @typing.final
    class AlleleFrequency(google.protobuf.message.Message):
        """Local type for allele frequency."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        VALUE_FIELD_NUMBER: builtins.int
        SOURCE_FIELD_NUMBER: builtins.int
        URL_FIELD_NUMBER: builtins.int
        value: builtins.float
        """Value."""
        source: builtins.str
        """Source."""
        url: builtins.str
        """URL."""
        def __init__(
            self,
            *,
            value: builtins.float = ...,
            source: builtins.str = ...,
            url: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing.Literal["_url", b"_url", "url", b"url"]
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_url", b"_url", "source", b"source", "url", b"url", "value", b"value"
            ],
        ) -> None: ...
        def WhichOneof(
            self, oneof_group: typing.Literal["_url", b"_url"]
        ) -> typing.Literal["url"] | None: ...

    @typing.final
    class GlobalMinorAlleleFrequency(google.protobuf.message.Message):
        """Local type for GlobalMinorAlleleFrequency."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        VALUE_FIELD_NUMBER: builtins.int
        SOURCE_FIELD_NUMBER: builtins.int
        MINOR_ALLELE_FIELD_NUMBER: builtins.int
        URL_FIELD_NUMBER: builtins.int
        value: builtins.float
        """Value."""
        source: builtins.str
        """Source."""
        minor_allele: builtins.str
        """Minor allele."""
        url: builtins.str
        """URL."""
        def __init__(
            self,
            *,
            value: builtins.float = ...,
            source: builtins.str = ...,
            minor_allele: builtins.str | None = ...,
            url: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_minor_allele",
                b"_minor_allele",
                "_url",
                b"_url",
                "minor_allele",
                b"minor_allele",
                "url",
                b"url",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_minor_allele",
                b"_minor_allele",
                "_url",
                b"_url",
                "minor_allele",
                b"minor_allele",
                "source",
                b"source",
                "url",
                b"url",
                "value",
                b"value",
            ],
        ) -> None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_minor_allele", b"_minor_allele"]
        ) -> typing.Literal["minor_allele"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_url", b"_url"]
        ) -> typing.Literal["url"] | None: ...

    @typing.final
    class Name(google.protobuf.message.Message):
        """Local type for allele name."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        VALUE_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        value: builtins.str
        """The name's value."""
        type: builtins.str
        """The name's type."""
        def __init__(
            self,
            *,
            value: builtins.str = ...,
            type: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing.Literal["_type", b"_type", "type", b"type"]
        ) -> builtins.bool: ...
        def ClearField(
            self, field_name: typing.Literal["_type", b"_type", "type", b"type", "value", b"value"]
        ) -> None: ...
        def WhichOneof(
            self, oneof_group: typing.Literal["_type", b"_type"]
        ) -> typing.Literal["type"] | None: ...

    GENES_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    CANONICAL_SPDI_FIELD_NUMBER: builtins.int
    VARIANT_TYPES_FIELD_NUMBER: builtins.int
    LOCATIONS_FIELD_NUMBER: builtins.int
    OTHER_NAMES_FIELD_NUMBER: builtins.int
    PROTEIN_CHANGES_FIELD_NUMBER: builtins.int
    HGVS_EXPRESSIONS_FIELD_NUMBER: builtins.int
    CLASSIFICATIONS_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    FUNCTIONAL_CONSEQUENCES_FIELD_NUMBER: builtins.int
    ALLELE_FREQUENCIES_FIELD_NUMBER: builtins.int
    GLOBAL_MINOR_ALLELE_FREQUENCY_FIELD_NUMBER: builtins.int
    ALLELE_ID_FIELD_NUMBER: builtins.int
    VARIATION_ID_FIELD_NUMBER: builtins.int
    name: builtins.str
    """Name."""
    canonical_spdi: builtins.str
    """Canonical SPDI."""
    allele_id: builtins.int
    """attributes

    Allele ID.
    """
    variation_id: builtins.int
    """Variation ID."""
    @property
    def genes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Allele.Gene]:
        """nested elements

        Gene list.
        """

    @property
    def variant_types(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """Variant type(s)."""

    @property
    def locations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Location]:
        """Location."""

    @property
    def other_names(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___OtherName]:
        """List of other names."""

    @property
    def protein_changes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """These are the single-letter representations of the protein change."""

    @property
    def hgvs_expressions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___HgvsExpression
    ]:
        """List of HGVS expressions."""

    @property
    def classifications(self) -> global___AggregateClassificationSet:
        """Aggregated classifications."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    @property
    def functional_consequences(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___FunctionalConsequence
    ]:
        """List of functional consequences."""

    @property
    def allele_frequencies(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___Allele.AlleleFrequency
    ]:
        """Allele frequencies."""

    @property
    def global_minor_allele_frequency(self) -> global___Allele.GlobalMinorAlleleFrequency:
        """Global minor allele frequencies."""

    def __init__(
        self,
        *,
        genes: collections.abc.Iterable[global___Allele.Gene] | None = ...,
        name: builtins.str = ...,
        canonical_spdi: builtins.str | None = ...,
        variant_types: collections.abc.Iterable[builtins.str] | None = ...,
        locations: collections.abc.Iterable[global___Location] | None = ...,
        other_names: collections.abc.Iterable[global___OtherName] | None = ...,
        protein_changes: collections.abc.Iterable[builtins.str] | None = ...,
        hgvs_expressions: collections.abc.Iterable[global___HgvsExpression] | None = ...,
        classifications: global___AggregateClassificationSet | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        functional_consequences: (
            collections.abc.Iterable[global___FunctionalConsequence] | None
        ) = ...,
        allele_frequencies: collections.abc.Iterable[global___Allele.AlleleFrequency] | None = ...,
        global_minor_allele_frequency: global___Allele.GlobalMinorAlleleFrequency | None = ...,
        allele_id: builtins.int = ...,
        variation_id: builtins.int = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_canonical_spdi",
            b"_canonical_spdi",
            "_classifications",
            b"_classifications",
            "_global_minor_allele_frequency",
            b"_global_minor_allele_frequency",
            "canonical_spdi",
            b"canonical_spdi",
            "classifications",
            b"classifications",
            "global_minor_allele_frequency",
            b"global_minor_allele_frequency",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_canonical_spdi",
            b"_canonical_spdi",
            "_classifications",
            b"_classifications",
            "_global_minor_allele_frequency",
            b"_global_minor_allele_frequency",
            "allele_frequencies",
            b"allele_frequencies",
            "allele_id",
            b"allele_id",
            "canonical_spdi",
            b"canonical_spdi",
            "classifications",
            b"classifications",
            "comments",
            b"comments",
            "functional_consequences",
            b"functional_consequences",
            "genes",
            b"genes",
            "global_minor_allele_frequency",
            b"global_minor_allele_frequency",
            "hgvs_expressions",
            b"hgvs_expressions",
            "locations",
            b"locations",
            "name",
            b"name",
            "other_names",
            b"other_names",
            "protein_changes",
            b"protein_changes",
            "variant_types",
            b"variant_types",
            "variation_id",
            b"variation_id",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_canonical_spdi", b"_canonical_spdi"]
    ) -> typing.Literal["canonical_spdi"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_classifications", b"_classifications"]
    ) -> typing.Literal["classifications"] | None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal[
            "_global_minor_allele_frequency", b"_global_minor_allele_frequency"
        ],
    ) -> typing.Literal["global_minor_allele_frequency"] | None: ...

global___Allele = Allele

@typing.final
class Haplotype(google.protobuf.message.Message):
    """This is a record of one or more simple alleles on the same chromosome
    molecule.

    Corresponds to `typeHaplotype` in XSD
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SIMPLE_ALLELES_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    VARIATION_TYPE_FIELD_NUMBER: builtins.int
    OTHER_NAMES_FIELD_NUMBER: builtins.int
    HGVS_EXPRESSIONS_FIELD_NUMBER: builtins.int
    CLASSIFICATIONS_FIELD_NUMBER: builtins.int
    FUNCTIONAL_CONSEQUENCES_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    VARIATION_ID_FIELD_NUMBER: builtins.int
    NUMBER_OF_COPIES_FIELD_NUMBER: builtins.int
    NUMBER_OF_CHROMOSOMES_FIELD_NUMBER: builtins.int
    name: builtins.str
    """The preferred representation of the haplotype."""
    variation_type: global___HaploVariationType.ValueType
    """The type of the haplotype."""
    variation_id: builtins.int
    """Variation ID."""
    number_of_copies: builtins.int
    """Number of copies."""
    number_of_chromosomes: builtins.int
    """Number of chromosomes."""
    @property
    def simple_alleles(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Allele]:
        """The list of alleles in the haplotype."""

    @property
    def other_names(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___OtherName]:
        """Names other than 'preferred' used for the haplotype."""

    @property
    def hgvs_expressions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___HgvsExpression
    ]:
        """List of all the HGVS expressions valid for, or used to submit,
        a variant.
        """

    @property
    def classifications(self) -> global___AggregateClassificationSet:
        """Classifications of the variant."""

    @property
    def functional_consequences(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___FunctionalConsequence
    ]:
        """Functional consequences of the variant."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of cross-references."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    def __init__(
        self,
        *,
        simple_alleles: collections.abc.Iterable[global___Allele] | None = ...,
        name: builtins.str = ...,
        variation_type: global___HaploVariationType.ValueType = ...,
        other_names: collections.abc.Iterable[global___OtherName] | None = ...,
        hgvs_expressions: collections.abc.Iterable[global___HgvsExpression] | None = ...,
        classifications: global___AggregateClassificationSet | None = ...,
        functional_consequences: (
            collections.abc.Iterable[global___FunctionalConsequence] | None
        ) = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        variation_id: builtins.int = ...,
        number_of_copies: builtins.int | None = ...,
        number_of_chromosomes: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_classifications",
            b"_classifications",
            "_number_of_chromosomes",
            b"_number_of_chromosomes",
            "_number_of_copies",
            b"_number_of_copies",
            "classifications",
            b"classifications",
            "number_of_chromosomes",
            b"number_of_chromosomes",
            "number_of_copies",
            b"number_of_copies",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_classifications",
            b"_classifications",
            "_number_of_chromosomes",
            b"_number_of_chromosomes",
            "_number_of_copies",
            b"_number_of_copies",
            "classifications",
            b"classifications",
            "comments",
            b"comments",
            "functional_consequences",
            b"functional_consequences",
            "hgvs_expressions",
            b"hgvs_expressions",
            "name",
            b"name",
            "number_of_chromosomes",
            b"number_of_chromosomes",
            "number_of_copies",
            b"number_of_copies",
            "other_names",
            b"other_names",
            "simple_alleles",
            b"simple_alleles",
            "variation_id",
            b"variation_id",
            "variation_type",
            b"variation_type",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_classifications", b"_classifications"]
    ) -> typing.Literal["classifications"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_of_chromosomes", b"_number_of_chromosomes"]
    ) -> typing.Literal["number_of_chromosomes"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_number_of_copies", b"_number_of_copies"]
    ) -> typing.Literal["number_of_copies"] | None: ...

global___Haplotype = Haplotype

@typing.final
class IncludedRecord(google.protobuf.message.Message):
    """This element is used for alleles that were not directly part of a
    submission but were part of a complex submission. They have no direct submitted
    classification, but are being reported for a complete representation of all alleles
    in ClinVar. Compare to ClassifiedRecord.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class ClassifiedVariation(google.protobuf.message.Message):
        """Local type for tag `ClassifiedVariation`."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        VARIATION_ID_FIELD_NUMBER: builtins.int
        ACCESSION_FIELD_NUMBER: builtins.int
        VERSION_FIELD_NUMBER: builtins.int
        variation_id: builtins.int
        """Variation ID."""
        accession: builtins.str
        """Optional accession."""
        version: builtins.int
        """Version."""
        def __init__(
            self,
            *,
            variation_id: builtins.int = ...,
            accession: builtins.str | None = ...,
            version: builtins.int = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing.Literal["_accession", b"_accession", "accession", b"accession"]
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_accession",
                b"_accession",
                "accession",
                b"accession",
                "variation_id",
                b"variation_id",
                "version",
                b"version",
            ],
        ) -> None: ...
        def WhichOneof(
            self, oneof_group: typing.Literal["_accession", b"_accession"]
        ) -> typing.Literal["accession"] | None: ...

    SIMPLE_ALLELE_FIELD_NUMBER: builtins.int
    HAPLOTYPE_FIELD_NUMBER: builtins.int
    CLASSIFICATIONS_FIELD_NUMBER: builtins.int
    SUBMITTED_CLASSIFICATIONS_FIELD_NUMBER: builtins.int
    CLASSIFIED_VARIATIONS_FIELD_NUMBER: builtins.int
    GENERAL_CITATIONS_FIELD_NUMBER: builtins.int
    @property
    def simple_allele(self) -> global___Allele:
        """Simple allele; mutually exclusive with haplotype."""

    @property
    def haplotype(self) -> global___Haplotype:
        """Haplotype; mutually exclusive with simple_allele."""

    @property
    def classifications(self) -> global___AggregateClassificationSet:
        """Aggregate classification sets."""

    @property
    def submitted_classifications(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Scv]:
        """List of submitted records."""

    @property
    def classified_variations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___IncludedRecord.ClassifiedVariation
    ]:
        """Maintains the list of classified variants represented in
        this submission, although not submitted with an Classification
        independently.
        """

    @property
    def general_citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___GeneralCitations
    ]:
        """List of general citations."""

    def __init__(
        self,
        *,
        simple_allele: global___Allele | None = ...,
        haplotype: global___Haplotype | None = ...,
        classifications: global___AggregateClassificationSet | None = ...,
        submitted_classifications: collections.abc.Iterable[global___Scv] | None = ...,
        classified_variations: (
            collections.abc.Iterable[global___IncludedRecord.ClassifiedVariation] | None
        ) = ...,
        general_citations: collections.abc.Iterable[global___GeneralCitations] | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_classifications",
            b"_classifications",
            "_haplotype",
            b"_haplotype",
            "_simple_allele",
            b"_simple_allele",
            "classifications",
            b"classifications",
            "haplotype",
            b"haplotype",
            "simple_allele",
            b"simple_allele",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_classifications",
            b"_classifications",
            "_haplotype",
            b"_haplotype",
            "_simple_allele",
            b"_simple_allele",
            "classifications",
            b"classifications",
            "classified_variations",
            b"classified_variations",
            "general_citations",
            b"general_citations",
            "haplotype",
            b"haplotype",
            "simple_allele",
            b"simple_allele",
            "submitted_classifications",
            b"submitted_classifications",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_classifications", b"_classifications"]
    ) -> typing.Literal["classifications"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_haplotype", b"_haplotype"]
    ) -> typing.Literal["haplotype"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_simple_allele", b"_simple_allele"]
    ) -> typing.Literal["simple_allele"] | None: ...

global___IncludedRecord = IncludedRecord

@typing.final
class Genotype(google.protobuf.message.Message):
    """Used to report genotypes, be they simple or complex diplotypes.

    Corresponds to "typeGenotype" in XSD.
    nested elements
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SIMPLE_ALLELES_FIELD_NUMBER: builtins.int
    HAPLOTYPES_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    VARIATION_TYPE_FIELD_NUMBER: builtins.int
    OTHER_NAMES_FIELD_NUMBER: builtins.int
    HGVS_EXPRESSIONS_FIELD_NUMBER: builtins.int
    FUNCTIONAL_CONSEQUENCES_FIELD_NUMBER: builtins.int
    CLASSIFICATIONS_FIELD_NUMBER: builtins.int
    XREFS_FIELD_NUMBER: builtins.int
    CITATIONS_FIELD_NUMBER: builtins.int
    COMMENTS_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    VARIATION_ID_FIELD_NUMBER: builtins.int
    name: builtins.str
    """Optional name."""
    variation_type: global___VariationType.ValueType
    """The variation type."""
    variation_id: builtins.int
    """attributes

    Variation ID.
    """
    @property
    def simple_alleles(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Allele]:
        """Simple allele; mutually exclusive with `haplotype`."""

    @property
    def haplotypes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Haplotype]:
        """Haplotype; mutually exclusive with `simple_allele`.

        Allows more than 2 haplotypes per genotype to support
        representation of ploidy.
        """

    @property
    def other_names(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___OtherName]:
        """Names other than 'preferred' used for the Genotype."""

    @property
    def hgvs_expressions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___HgvsExpression
    ]:
        """HGVS descriptions."""

    @property
    def functional_consequences(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___FunctionalConsequence
    ]:
        """Functional consequences."""

    @property
    def classifications(self) -> global___AggregateClassificationSet:
        """Aggregated classifications."""

    @property
    def xrefs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Xref]:
        """List of xrefs."""

    @property
    def citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Citation]:
        """List of citations."""

    @property
    def comments(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Comment]:
        """List of comments."""

    @property
    def attributes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___AttributeSetElement
    ]:
        """Attributes."""

    def __init__(
        self,
        *,
        simple_alleles: collections.abc.Iterable[global___Allele] | None = ...,
        haplotypes: collections.abc.Iterable[global___Haplotype] | None = ...,
        name: builtins.str = ...,
        variation_type: global___VariationType.ValueType = ...,
        other_names: collections.abc.Iterable[global___OtherName] | None = ...,
        hgvs_expressions: collections.abc.Iterable[global___HgvsExpression] | None = ...,
        functional_consequences: (
            collections.abc.Iterable[global___FunctionalConsequence] | None
        ) = ...,
        classifications: global___AggregateClassificationSet | None = ...,
        xrefs: collections.abc.Iterable[global___Xref] | None = ...,
        citations: collections.abc.Iterable[global___Citation] | None = ...,
        comments: collections.abc.Iterable[global___Comment] | None = ...,
        attributes: collections.abc.Iterable[global___AttributeSetElement] | None = ...,
        variation_id: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_classifications",
            b"_classifications",
            "_variation_id",
            b"_variation_id",
            "classifications",
            b"classifications",
            "variation_id",
            b"variation_id",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_classifications",
            b"_classifications",
            "_variation_id",
            b"_variation_id",
            "attributes",
            b"attributes",
            "citations",
            b"citations",
            "classifications",
            b"classifications",
            "comments",
            b"comments",
            "functional_consequences",
            b"functional_consequences",
            "haplotypes",
            b"haplotypes",
            "hgvs_expressions",
            b"hgvs_expressions",
            "name",
            b"name",
            "other_names",
            b"other_names",
            "simple_alleles",
            b"simple_alleles",
            "variation_id",
            b"variation_id",
            "variation_type",
            b"variation_type",
            "xrefs",
            b"xrefs",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_classifications", b"_classifications"]
    ) -> typing.Literal["classifications"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_variation_id", b"_variation_id"]
    ) -> typing.Literal["variation_id"] | None: ...

global___Genotype = Genotype

@typing.final
class RcvAccession(google.protobuf.message.Message):
    """Corresponds to "typeRCV" in XSD."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class ClassifiedConditionList(google.protobuf.message.Message):
        """Local type for ClassifiedConditionList.
        nested elements
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        CLASSIFIED_CONDITIONS_FIELD_NUMBER: builtins.int
        TRAIT_SET_ID_FIELD_NUMBER: builtins.int
        trait_set_id: builtins.int
        """attributes

        Trait set ID.
        """
        @property
        def classified_conditions(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___ClassifiedCondition
        ]:
            """List of interpreted conditions."""

        def __init__(
            self,
            *,
            classified_conditions: (
                collections.abc.Iterable[global___ClassifiedCondition] | None
            ) = ...,
            trait_set_id: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_trait_set_id", b"_trait_set_id", "trait_set_id", b"trait_set_id"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_trait_set_id",
                b"_trait_set_id",
                "classified_conditions",
                b"classified_conditions",
                "trait_set_id",
                b"trait_set_id",
            ],
        ) -> None: ...
        def WhichOneof(
            self, oneof_group: typing.Literal["_trait_set_id", b"_trait_set_id"]
        ) -> typing.Literal["trait_set_id"] | None: ...

    @typing.final
    class GermlineClassification(google.protobuf.message.Message):
        """Local type for GermlineClassification.

        The aggregate review status based on
        all germline submissions for this record.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class Description(google.protobuf.message.Message):
            """Local type for Description."""

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            VALUE_FIELD_NUMBER: builtins.int
            DATE_LAST_EVALUATED_FIELD_NUMBER: builtins.int
            SUBMISSION_COUNT_FIELD_NUMBER: builtins.int
            value: builtins.str
            """The description."""
            submission_count: builtins.int
            """The number of submissions."""
            @property
            def date_last_evaluated(self) -> google.protobuf.timestamp_pb2.Timestamp:
                """attributes

                The date of the description.
                """

            def __init__(
                self,
                *,
                value: builtins.str = ...,
                date_last_evaluated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
                submission_count: builtins.int | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing.Literal[
                    "_date_last_evaluated",
                    b"_date_last_evaluated",
                    "_submission_count",
                    b"_submission_count",
                    "date_last_evaluated",
                    b"date_last_evaluated",
                    "submission_count",
                    b"submission_count",
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing.Literal[
                    "_date_last_evaluated",
                    b"_date_last_evaluated",
                    "_submission_count",
                    b"_submission_count",
                    "date_last_evaluated",
                    b"date_last_evaluated",
                    "submission_count",
                    b"submission_count",
                    "value",
                    b"value",
                ],
            ) -> None: ...
            @typing.overload
            def WhichOneof(
                self, oneof_group: typing.Literal["_date_last_evaluated", b"_date_last_evaluated"]
            ) -> typing.Literal["date_last_evaluated"] | None: ...
            @typing.overload
            def WhichOneof(
                self, oneof_group: typing.Literal["_submission_count", b"_submission_count"]
            ) -> typing.Literal["submission_count"] | None: ...

        REVIEW_STATUS_FIELD_NUMBER: builtins.int
        DESCRIPTION_FIELD_NUMBER: builtins.int
        review_status: global___AggregateGermlineReviewStatus.ValueType
        """The aggregate review status based on
        all somatic clinical impact submissions for this
        record.
        """
        @property
        def description(self) -> global___RcvAccession.GermlineClassification.Description:
            """The oncogenicity description."""

        def __init__(
            self,
            *,
            review_status: global___AggregateGermlineReviewStatus.ValueType = ...,
            description: global___RcvAccession.GermlineClassification.Description | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing.Literal["description", b"description"]
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "description", b"description", "review_status", b"review_status"
            ],
        ) -> None: ...

    @typing.final
    class SomaticClinicalImpact(google.protobuf.message.Message):
        """Local type for SomaticClinicalImpact.

        The aggregate review status based on
        all somatic clinical impact submissions for this
        record.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class Description(google.protobuf.message.Message):
            """Local type for Description."""

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            VALUE_FIELD_NUMBER: builtins.int
            CLINICAL_IMPACT_ASSERTION_TYPE_FIELD_NUMBER: builtins.int
            CLINICAL_IMPACT_CLINICAL_SIGNIFICANCE_FIELD_NUMBER: builtins.int
            DATE_LAST_EVALUATED_FIELD_NUMBER: builtins.int
            SUBMISSION_COUNT_FIELD_NUMBER: builtins.int
            value: builtins.str
            """The description."""
            clinical_impact_assertion_type: builtins.str
            """attributes

            Clinical impact assertion type.
            """
            clinical_impact_clinical_significance: builtins.str
            """Clinical impact significance"""
            submission_count: builtins.int
            """The number of submissions."""
            @property
            def date_last_evaluated(self) -> google.protobuf.timestamp_pb2.Timestamp:
                """The date of the description."""

            def __init__(
                self,
                *,
                value: builtins.str = ...,
                clinical_impact_assertion_type: builtins.str | None = ...,
                clinical_impact_clinical_significance: builtins.str | None = ...,
                date_last_evaluated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
                submission_count: builtins.int | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing.Literal[
                    "_clinical_impact_assertion_type",
                    b"_clinical_impact_assertion_type",
                    "_clinical_impact_clinical_significance",
                    b"_clinical_impact_clinical_significance",
                    "_date_last_evaluated",
                    b"_date_last_evaluated",
                    "_submission_count",
                    b"_submission_count",
                    "clinical_impact_assertion_type",
                    b"clinical_impact_assertion_type",
                    "clinical_impact_clinical_significance",
                    b"clinical_impact_clinical_significance",
                    "date_last_evaluated",
                    b"date_last_evaluated",
                    "submission_count",
                    b"submission_count",
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing.Literal[
                    "_clinical_impact_assertion_type",
                    b"_clinical_impact_assertion_type",
                    "_clinical_impact_clinical_significance",
                    b"_clinical_impact_clinical_significance",
                    "_date_last_evaluated",
                    b"_date_last_evaluated",
                    "_submission_count",
                    b"_submission_count",
                    "clinical_impact_assertion_type",
                    b"clinical_impact_assertion_type",
                    "clinical_impact_clinical_significance",
                    b"clinical_impact_clinical_significance",
                    "date_last_evaluated",
                    b"date_last_evaluated",
                    "submission_count",
                    b"submission_count",
                    "value",
                    b"value",
                ],
            ) -> None: ...
            @typing.overload
            def WhichOneof(
                self,
                oneof_group: typing.Literal[
                    "_clinical_impact_assertion_type", b"_clinical_impact_assertion_type"
                ],
            ) -> typing.Literal["clinical_impact_assertion_type"] | None: ...
            @typing.overload
            def WhichOneof(
                self,
                oneof_group: typing.Literal[
                    "_clinical_impact_clinical_significance",
                    b"_clinical_impact_clinical_significance",
                ],
            ) -> typing.Literal["clinical_impact_clinical_significance"] | None: ...
            @typing.overload
            def WhichOneof(
                self, oneof_group: typing.Literal["_date_last_evaluated", b"_date_last_evaluated"]
            ) -> typing.Literal["date_last_evaluated"] | None: ...
            @typing.overload
            def WhichOneof(
                self, oneof_group: typing.Literal["_submission_count", b"_submission_count"]
            ) -> typing.Literal["submission_count"] | None: ...

        REVIEW_STATUS_FIELD_NUMBER: builtins.int
        DESCRIPTIONS_FIELD_NUMBER: builtins.int
        review_status: global___AggregateSomaticClinicalImpactReviewStatus.ValueType
        """The aggregate review status based on
        all somatic clinical impact submissions for this
        record.
        """
        @property
        def descriptions(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___RcvAccession.SomaticClinicalImpact.Description
        ]:
            """The oncogenicity description."""

        def __init__(
            self,
            *,
            review_status: global___AggregateSomaticClinicalImpactReviewStatus.ValueType = ...,
            descriptions: (
                collections.abc.Iterable[global___RcvAccession.SomaticClinicalImpact.Description]
                | None
            ) = ...,
        ) -> None: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "descriptions", b"descriptions", "review_status", b"review_status"
            ],
        ) -> None: ...

    @typing.final
    class OncogenicityClassification(google.protobuf.message.Message):
        """Local type for OncogenicityClassification."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class Description(google.protobuf.message.Message):
            """Local type for Description."""

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            VALUE_FIELD_NUMBER: builtins.int
            DATE_LAST_EVALUATED_FIELD_NUMBER: builtins.int
            SUBMISSION_COUNT_FIELD_NUMBER: builtins.int
            value: builtins.str
            """The description."""
            submission_count: builtins.int
            """The number of submissions."""
            @property
            def date_last_evaluated(self) -> google.protobuf.timestamp_pb2.Timestamp:
                """attributes

                The date of the description.
                """

            def __init__(
                self,
                *,
                value: builtins.str = ...,
                date_last_evaluated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
                submission_count: builtins.int | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing.Literal[
                    "_date_last_evaluated",
                    b"_date_last_evaluated",
                    "_submission_count",
                    b"_submission_count",
                    "date_last_evaluated",
                    b"date_last_evaluated",
                    "submission_count",
                    b"submission_count",
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing.Literal[
                    "_date_last_evaluated",
                    b"_date_last_evaluated",
                    "_submission_count",
                    b"_submission_count",
                    "date_last_evaluated",
                    b"date_last_evaluated",
                    "submission_count",
                    b"submission_count",
                    "value",
                    b"value",
                ],
            ) -> None: ...
            @typing.overload
            def WhichOneof(
                self, oneof_group: typing.Literal["_date_last_evaluated", b"_date_last_evaluated"]
            ) -> typing.Literal["date_last_evaluated"] | None: ...
            @typing.overload
            def WhichOneof(
                self, oneof_group: typing.Literal["_submission_count", b"_submission_count"]
            ) -> typing.Literal["submission_count"] | None: ...

        REVIEW_STATUS_FIELD_NUMBER: builtins.int
        DESCRIPTION_FIELD_NUMBER: builtins.int
        review_status: global___AggregateOncogenicityReviewStatus.ValueType
        """The aggregate review status based on
        all oncogenic submissions for this record.
        """
        @property
        def description(self) -> global___RcvAccession.OncogenicityClassification.Description:
            """The oncogenicity description."""

        def __init__(
            self,
            *,
            review_status: global___AggregateOncogenicityReviewStatus.ValueType = ...,
            description: global___RcvAccession.OncogenicityClassification.Description | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing.Literal["description", b"description"]
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "description", b"description", "review_status", b"review_status"
            ],
        ) -> None: ...

    @typing.final
    class RcvClassifications(google.protobuf.message.Message):
        """Local type for RCV classifications."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        GERMLINE_CLASSIFICATION_FIELD_NUMBER: builtins.int
        SOMATIC_CLINICAL_IMPACT_FIELD_NUMBER: builtins.int
        ONCOGENICITY_CLASSIFICATION_FIELD_NUMBER: builtins.int
        @property
        def germline_classification(self) -> global___RcvAccession.GermlineClassification:
            """Germline classification."""

        @property
        def somatic_clinical_impact(self) -> global___RcvAccession.SomaticClinicalImpact:
            """Somatic clinical impact."""

        @property
        def oncogenicity_classification(self) -> global___RcvAccession.OncogenicityClassification:
            """Oncogenicity classification."""

        def __init__(
            self,
            *,
            germline_classification: global___RcvAccession.GermlineClassification | None = ...,
            somatic_clinical_impact: global___RcvAccession.SomaticClinicalImpact | None = ...,
            oncogenicity_classification: (
                global___RcvAccession.OncogenicityClassification | None
            ) = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_germline_classification",
                b"_germline_classification",
                "_oncogenicity_classification",
                b"_oncogenicity_classification",
                "_somatic_clinical_impact",
                b"_somatic_clinical_impact",
                "germline_classification",
                b"germline_classification",
                "oncogenicity_classification",
                b"oncogenicity_classification",
                "somatic_clinical_impact",
                b"somatic_clinical_impact",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_germline_classification",
                b"_germline_classification",
                "_oncogenicity_classification",
                b"_oncogenicity_classification",
                "_somatic_clinical_impact",
                b"_somatic_clinical_impact",
                "germline_classification",
                b"germline_classification",
                "oncogenicity_classification",
                b"oncogenicity_classification",
                "somatic_clinical_impact",
                b"somatic_clinical_impact",
            ],
        ) -> None: ...
        @typing.overload
        def WhichOneof(
            self,
            oneof_group: typing.Literal["_germline_classification", b"_germline_classification"],
        ) -> typing.Literal["germline_classification"] | None: ...
        @typing.overload
        def WhichOneof(
            self,
            oneof_group: typing.Literal[
                "_oncogenicity_classification", b"_oncogenicity_classification"
            ],
        ) -> typing.Literal["oncogenicity_classification"] | None: ...
        @typing.overload
        def WhichOneof(
            self,
            oneof_group: typing.Literal["_somatic_clinical_impact", b"_somatic_clinical_impact"],
        ) -> typing.Literal["somatic_clinical_impact"] | None: ...

    CLASSIFIED_CONDITION_LIST_FIELD_NUMBER: builtins.int
    RCV_CLASSIFICATIONS_FIELD_NUMBER: builtins.int
    REPLACEDS_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    ACCESSION_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    title: builtins.str
    """attributes

    Optional title.
    """
    accession: builtins.str
    """Accession."""
    version: builtins.int
    """Version."""
    @property
    def classified_condition_list(self) -> global___RcvAccession.ClassifiedConditionList:
        """nested elements

        The list of classified conditions.
        """

    @property
    def rcv_classifications(self) -> global___RcvAccession.RcvClassifications:
        """The list of RCV classifications."""

    @property
    def replaceds(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___RecordHistory
    ]:
        """The list of RCV accessions this record has replaced."""

    def __init__(
        self,
        *,
        classified_condition_list: global___RcvAccession.ClassifiedConditionList | None = ...,
        rcv_classifications: global___RcvAccession.RcvClassifications | None = ...,
        replaceds: collections.abc.Iterable[global___RecordHistory] | None = ...,
        title: builtins.str | None = ...,
        accession: builtins.str = ...,
        version: builtins.int = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_classified_condition_list",
            b"_classified_condition_list",
            "_title",
            b"_title",
            "classified_condition_list",
            b"classified_condition_list",
            "rcv_classifications",
            b"rcv_classifications",
            "title",
            b"title",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_classified_condition_list",
            b"_classified_condition_list",
            "_title",
            b"_title",
            "accession",
            b"accession",
            "classified_condition_list",
            b"classified_condition_list",
            "rcv_classifications",
            b"rcv_classifications",
            "replaceds",
            b"replaceds",
            "title",
            b"title",
            "version",
            b"version",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing.Literal["_classified_condition_list", b"_classified_condition_list"],
    ) -> typing.Literal["classified_condition_list"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_title", b"_title"]
    ) -> typing.Literal["title"] | None: ...

global___RcvAccession = RcvAccession

@typing.final
class ClassifiedRecord(google.protobuf.message.Message):
    """This element is restricted to variation records for which an explicit
    classification was submitted.  Compare to IncludedRecord, which provides aggregate
    information about variants that are part of another submission, but for which
    ClinVar has *not* received a submission specific to that variant independently.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _MappingTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ClassifiedRecord._MappingType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        MAPPING_TYPE_UNSPECIFIED: ClassifiedRecord._MappingType.ValueType  # 0
        """unspecified mapping type"""
        MAPPING_TYPE_NAME: ClassifiedRecord._MappingType.ValueType  # 1
        """corresponds to "Name" """
        MAPPING_TYPE_XREF: ClassifiedRecord._MappingType.ValueType  # 2
        """corresponds to "Xref" """

    class MappingType(_MappingType, metaclass=_MappingTypeEnumTypeWrapper):
        """Local type for the attribute `@MappingType`."""

    MAPPING_TYPE_UNSPECIFIED: ClassifiedRecord.MappingType.ValueType  # 0
    """unspecified mapping type"""
    MAPPING_TYPE_NAME: ClassifiedRecord.MappingType.ValueType  # 1
    """corresponds to "Name" """
    MAPPING_TYPE_XREF: ClassifiedRecord.MappingType.ValueType  # 2
    """corresponds to "Xref" """

    @typing.final
    class RcvList(google.protobuf.message.Message):
        """Local type for tag `RCVList`."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        RCV_ACCESSIONS_FIELD_NUMBER: builtins.int
        SUBMISSION_COUNT_FIELD_NUMBER: builtins.int
        INDEPENDENT_OBSERVATIONS_FIELD_NUMBER: builtins.int
        submission_count: builtins.int
        """The number of submissions (SCV accessions) referencing the VariationID."""
        independent_observations: builtins.int
        """The number of idependent observations."""
        @property
        def rcv_accessions(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___RcvAccession
        ]:
            """The RCV record."""

        def __init__(
            self,
            *,
            rcv_accessions: collections.abc.Iterable[global___RcvAccession] | None = ...,
            submission_count: builtins.int | None = ...,
            independent_observations: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing.Literal[
                "_independent_observations",
                b"_independent_observations",
                "_submission_count",
                b"_submission_count",
                "independent_observations",
                b"independent_observations",
                "submission_count",
                b"submission_count",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "_independent_observations",
                b"_independent_observations",
                "_submission_count",
                b"_submission_count",
                "independent_observations",
                b"independent_observations",
                "rcv_accessions",
                b"rcv_accessions",
                "submission_count",
                b"submission_count",
            ],
        ) -> None: ...
        @typing.overload
        def WhichOneof(
            self,
            oneof_group: typing.Literal["_independent_observations", b"_independent_observations"],
        ) -> typing.Literal["independent_observations"] | None: ...
        @typing.overload
        def WhichOneof(
            self, oneof_group: typing.Literal["_submission_count", b"_submission_count"]
        ) -> typing.Literal["submission_count"] | None: ...

    @typing.final
    class TraitMapping(google.protobuf.message.Message):
        """Local type for the tag `TraitMapping`."""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class Medgen(google.protobuf.message.Message):
            """Local type for the tag "MedGen" """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        MEDGENS_FIELD_NUMBER: builtins.int
        CLINICAL_ASSERTION_ID_FIELD_NUMBER: builtins.int
        TRAIT_TYPE_FIELD_NUMBER: builtins.int
        MAPPING_TYPE_FIELD_NUMBER: builtins.int
        MAPPING_VALUE_FIELD_NUMBER: builtins.int
        MAPPING_REF_FIELD_NUMBER: builtins.int
        clinical_assertion_id: builtins.int
        """attributes

        ID of clinical assertion.
        """
        trait_type: builtins.str
        """The trait type."""
        mapping_type: global___ClassifiedRecord.MappingType.ValueType
        """The mapping type."""
        mapping_value: builtins.str
        """The mapping value."""
        mapping_ref: builtins.str
        """The mapping reference."""
        @property
        def medgens(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___ClassifiedRecord.TraitMapping.Medgen
        ]:
            """nested elements"""

        def __init__(
            self,
            *,
            medgens: (
                collections.abc.Iterable[global___ClassifiedRecord.TraitMapping.Medgen] | None
            ) = ...,
            clinical_assertion_id: builtins.int = ...,
            trait_type: builtins.str = ...,
            mapping_type: global___ClassifiedRecord.MappingType.ValueType = ...,
            mapping_value: builtins.str = ...,
            mapping_ref: builtins.str = ...,
        ) -> None: ...
        def ClearField(
            self,
            field_name: typing.Literal[
                "clinical_assertion_id",
                b"clinical_assertion_id",
                "mapping_ref",
                b"mapping_ref",
                "mapping_type",
                b"mapping_type",
                "mapping_value",
                b"mapping_value",
                "medgens",
                b"medgens",
                "trait_type",
                b"trait_type",
            ],
        ) -> None: ...

    SIMPLE_ALLELE_FIELD_NUMBER: builtins.int
    HAPLOTYPE_FIELD_NUMBER: builtins.int
    GENOTYPE_FIELD_NUMBER: builtins.int
    RCV_LIST_FIELD_NUMBER: builtins.int
    CLASSIFICATIONS_FIELD_NUMBER: builtins.int
    CLINICAL_ASSERTIONS_FIELD_NUMBER: builtins.int
    TRAIT_MAPPINGS_FIELD_NUMBER: builtins.int
    DELETED_SCVS_FIELD_NUMBER: builtins.int
    GENERAL_CITATIONS_FIELD_NUMBER: builtins.int
    @property
    def simple_allele(self) -> global___Allele:
        """Describes a single sequence change relative to a
        contiguous region of a chromosome or the mitochondrion.

        Mutually exclusive with `haplotype` and `genotype`.
        """

    @property
    def haplotype(self) -> global___Haplotype:
        """Describes multiple sequence changes on one of the
        chromosomes of a homologous pair or on the mitochondrion.

        Mutually exclusive with `simple_allele` and `genotype`.
        """

    @property
    def genotype(self) -> global___Genotype:
        """Describes the combination of sequence changes on each
        chromosome of a homologous pair.

        Mutually exclusive with `simple_allele` and `haplotype`.
        """

    @property
    def rcv_list(self) -> global___ClassifiedRecord.RcvList:
        """List of RCV records."""

    @property
    def classifications(self) -> global___AggregateClassificationSet:
        """List of classifications."""

    @property
    def clinical_assertions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___ClinicalAssertion
    ]:
        """List of clinical assertions."""

    @property
    def trait_mappings(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___ClassifiedRecord.TraitMapping
    ]:
        """This element is used to report how each user-submitted
        trait name was mapped to a MedGen CUI identifier and a preferred name.
        The structure may be used in the future to report, when a trait is
        identified by a source's identifier (e.g. MIM number), the preferred
        name used by that source at the time of submission. For MappingType
        XRef, MappingRef is the database name and MappingValue is the database's
        identifier. For MappingType Name, MappingRef is Alternate or Preferred,
        and MappingValue is the submitted name of the trait. ClinicalAssertionID
        is an integer identifier that corresponds 1:1 to the SCV assigned to the
        submission.
        """

    @property
    def deleted_scvs(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DeletedScv]:
        """List of deleted SCVs."""

    @property
    def general_citations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___GeneralCitations
    ]:
        """List of general citations."""

    def __init__(
        self,
        *,
        simple_allele: global___Allele | None = ...,
        haplotype: global___Haplotype | None = ...,
        genotype: global___Genotype | None = ...,
        rcv_list: global___ClassifiedRecord.RcvList | None = ...,
        classifications: global___AggregateClassificationSet | None = ...,
        clinical_assertions: collections.abc.Iterable[global___ClinicalAssertion] | None = ...,
        trait_mappings: (
            collections.abc.Iterable[global___ClassifiedRecord.TraitMapping] | None
        ) = ...,
        deleted_scvs: collections.abc.Iterable[global___DeletedScv] | None = ...,
        general_citations: collections.abc.Iterable[global___GeneralCitations] | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_genotype",
            b"_genotype",
            "_haplotype",
            b"_haplotype",
            "_simple_allele",
            b"_simple_allele",
            "classifications",
            b"classifications",
            "genotype",
            b"genotype",
            "haplotype",
            b"haplotype",
            "rcv_list",
            b"rcv_list",
            "simple_allele",
            b"simple_allele",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_genotype",
            b"_genotype",
            "_haplotype",
            b"_haplotype",
            "_simple_allele",
            b"_simple_allele",
            "classifications",
            b"classifications",
            "clinical_assertions",
            b"clinical_assertions",
            "deleted_scvs",
            b"deleted_scvs",
            "general_citations",
            b"general_citations",
            "genotype",
            b"genotype",
            "haplotype",
            b"haplotype",
            "rcv_list",
            b"rcv_list",
            "simple_allele",
            b"simple_allele",
            "trait_mappings",
            b"trait_mappings",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_genotype", b"_genotype"]
    ) -> typing.Literal["genotype"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_haplotype", b"_haplotype"]
    ) -> typing.Literal["haplotype"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_simple_allele", b"_simple_allele"]
    ) -> typing.Literal["simple_allele"] | None: ...

global___ClassifiedRecord = ClassifiedRecord

@typing.final
class VariationArchive(google.protobuf.message.Message):
    """This element groups the set of data specific to a VariationArchive
    record, namely the summary data of what has been submitted about a
    VariationID AND for Classified records only, the content each
    submission (SCV) provided.

    Type for the `<VariationArchive>` type.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _RecordTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            VariationArchive._RecordType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        RECORD_TYPE_UNSPECIFIED: VariationArchive._RecordType.ValueType  # 0
        """unspecified record type"""
        RECORD_TYPE_INCLUDED: VariationArchive._RecordType.ValueType  # 1
        """corresponds to "included" """
        RECORD_TYPE_CLASSIFIED: VariationArchive._RecordType.ValueType  # 2
        """corresponds to "classified" """

    class RecordType(_RecordType, metaclass=_RecordTypeEnumTypeWrapper):
        """Enumeration for `@RecordType`."""

    RECORD_TYPE_UNSPECIFIED: VariationArchive.RecordType.ValueType  # 0
    """unspecified record type"""
    RECORD_TYPE_INCLUDED: VariationArchive.RecordType.ValueType  # 1
    """corresponds to "included" """
    RECORD_TYPE_CLASSIFIED: VariationArchive.RecordType.ValueType  # 2
    """corresponds to "classified" """

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

    class _RecordStatusEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            VariationArchive._RecordStatus.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        RECORD_STATUS_UNSPECIFIED: VariationArchive._RecordStatus.ValueType  # 0
        """unspecified record status"""
        RECORD_STATUS_CURRENT: VariationArchive._RecordStatus.ValueType  # 1
        """corresponds to "current" """
        RECORD_STATUS_PREVIOUS: VariationArchive._RecordStatus.ValueType  # 2
        """corresponds to "previous" """
        RECORD_STATUS_REPLACED: VariationArchive._RecordStatus.ValueType  # 3
        """corresponds to "replaced" """
        RECORD_STATUS_DELETED: VariationArchive._RecordStatus.ValueType  # 4
        """correspodns to "deleted" """

    class RecordStatus(_RecordStatus, metaclass=_RecordStatusEnumTypeWrapper):
        """Enumeration for `@RecordStatus`."""

    RECORD_STATUS_UNSPECIFIED: VariationArchive.RecordStatus.ValueType  # 0
    """unspecified record status"""
    RECORD_STATUS_CURRENT: VariationArchive.RecordStatus.ValueType  # 1
    """corresponds to "current" """
    RECORD_STATUS_PREVIOUS: VariationArchive.RecordStatus.ValueType  # 2
    """corresponds to "previous" """
    RECORD_STATUS_REPLACED: VariationArchive.RecordStatus.ValueType  # 3
    """corresponds to "replaced" """
    RECORD_STATUS_DELETED: VariationArchive.RecordStatus.ValueType  # 4
    """correspodns to "deleted" """

    VARIATION_ID_FIELD_NUMBER: builtins.int
    VARIATION_NAME_FIELD_NUMBER: builtins.int
    VARIATION_TYPE_FIELD_NUMBER: builtins.int
    DATE_CREATED_FIELD_NUMBER: builtins.int
    DATE_LAST_UPDATED_FIELD_NUMBER: builtins.int
    MOST_RECENT_SUBMISSION_FIELD_NUMBER: builtins.int
    ACCESSION_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    NUMBER_OF_SUBMITTERS_FIELD_NUMBER: builtins.int
    NUMBER_OF_SUBMISSIONS_FIELD_NUMBER: builtins.int
    RECORD_TYPE_FIELD_NUMBER: builtins.int
    RECORD_STATUS_FIELD_NUMBER: builtins.int
    REPLACED_BY_FIELD_NUMBER: builtins.int
    REPLACEDS_FIELD_NUMBER: builtins.int
    COMMENT_FIELD_NUMBER: builtins.int
    SPECIES_FIELD_NUMBER: builtins.int
    CLASSIFIED_RECORD_FIELD_NUMBER: builtins.int
    INCLUDED_RECORD_FIELD_NUMBER: builtins.int
    variation_id: builtins.int
    """attributes

    Numeric variation ID.
    """
    variation_name: builtins.str
    """This is ClinVar's name for the variant.  ClinVar uses this term in
    its web displays
    """
    variation_type: builtins.str
    """Type of the variant."""
    accession: builtins.str
    """Accession assigned to the variant, or set of variants, that was
    Classified
    """
    version: builtins.int
    """Version of record and suffix for accession."""
    number_of_submitters: builtins.int
    """Number of submitters in record."""
    number_of_submissions: builtins.int
    """Number of submissions in record."""
    record_type: global___VariationArchive.RecordType.ValueType
    """Record type."""
    record_status: global___VariationArchive.RecordStatus.ValueType
    """contained elements

    The record's status.
    """
    @property
    def date_created(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """DateCreated is the date when the record first became public in
        ClinVar.
        """

    @property
    def date_last_updated(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The date the record was last updated in the public database. The
        update may be a change to one of the submitted records (SCVs) or
        annotation added to the aggregate record by NCBI staff. This date
        is independent of a version change; annotated added by NCBI may
        change without representing a change in the version.
        """

    @property
    def most_recent_submission(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """This date is of the most recent submitted record (SCV) for the
        VCV; it may reflect a new submitted record or an update to a submitted record.
        """

    @property
    def replaced_by(self) -> global___RecordHistory:
        """Pointer to the replacing record; optional."""

    @property
    def replaceds(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___RecordHistory
    ]:
        """The list of VCV accessions this record has replaced."""

    @property
    def comment(self) -> global___Comment:
        """Comment on the record; optional."""

    @property
    def species(self) -> global___Species:
        """Specification of the species."""

    @property
    def classified_record(self) -> global___ClassifiedRecord:
        """This element describes the classification of a single
        allele, haplotype, or genotype based on all submissions to ClinVar. This
        differs from the element IncludedRecord, which describes simple alleles
        or haplotypes, referenced in ClassifiedRecord, but for which no explicit
        classification was submitted. Once that variation is described, details
        are added about the phenotypes being classified, the classification, the
        submitters providing the classifications, and all supported evidence.

        NB: mutually exclusive with `included_record`.
        """

    @property
    def included_record(self) -> global___IncludedRecord:
        """This element describes a single allele or haplotype
        included in submissions to ClinVar, but for which no explicit
        classification was submitted. It also references the submissions and the
        Classified records that include them.

        NB: mutually exclusive with `classified_record`.
        """

    def __init__(
        self,
        *,
        variation_id: builtins.int = ...,
        variation_name: builtins.str = ...,
        variation_type: builtins.str = ...,
        date_created: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        date_last_updated: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        most_recent_submission: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        accession: builtins.str = ...,
        version: builtins.int = ...,
        number_of_submitters: builtins.int = ...,
        number_of_submissions: builtins.int = ...,
        record_type: global___VariationArchive.RecordType.ValueType = ...,
        record_status: global___VariationArchive.RecordStatus.ValueType = ...,
        replaced_by: global___RecordHistory | None = ...,
        replaceds: collections.abc.Iterable[global___RecordHistory] | None = ...,
        comment: global___Comment | None = ...,
        species: global___Species | None = ...,
        classified_record: global___ClassifiedRecord | None = ...,
        included_record: global___IncludedRecord | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "_classified_record",
            b"_classified_record",
            "_included_record",
            b"_included_record",
            "classified_record",
            b"classified_record",
            "comment",
            b"comment",
            "date_created",
            b"date_created",
            "date_last_updated",
            b"date_last_updated",
            "included_record",
            b"included_record",
            "most_recent_submission",
            b"most_recent_submission",
            "replaced_by",
            b"replaced_by",
            "species",
            b"species",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "_classified_record",
            b"_classified_record",
            "_included_record",
            b"_included_record",
            "accession",
            b"accession",
            "classified_record",
            b"classified_record",
            "comment",
            b"comment",
            "date_created",
            b"date_created",
            "date_last_updated",
            b"date_last_updated",
            "included_record",
            b"included_record",
            "most_recent_submission",
            b"most_recent_submission",
            "number_of_submissions",
            b"number_of_submissions",
            "number_of_submitters",
            b"number_of_submitters",
            "record_status",
            b"record_status",
            "record_type",
            b"record_type",
            "replaced_by",
            b"replaced_by",
            "replaceds",
            b"replaceds",
            "species",
            b"species",
            "variation_id",
            b"variation_id",
            "variation_name",
            b"variation_name",
            "variation_type",
            b"variation_type",
            "version",
            b"version",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_classified_record", b"_classified_record"]
    ) -> typing.Literal["classified_record"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_included_record", b"_included_record"]
    ) -> typing.Literal["included_record"] | None: ...

global___VariationArchive = VariationArchive

@typing.final
class ClinvarVariationRelease(google.protobuf.message.Message):
    """The element to group each VariationArchive element in the release

    Type for the `<ClinVarVariationRelease>` tag.
    attributes
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RELEASE_DATE_FIELD_NUMBER: builtins.int
    VARIATION_ARCHIVES_FIELD_NUMBER: builtins.int
    @property
    def release_date(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The current release."""

    @property
    def variation_archives(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___VariationArchive
    ]:
        """contained elements

        List of `<VariationArchive>` tags.
        """

    def __init__(
        self,
        *,
        release_date: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        variation_archives: collections.abc.Iterable[global___VariationArchive] | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing.Literal["release_date", b"release_date"]
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "release_date", b"release_date", "variation_archives", b"variation_archives"
        ],
    ) -> None: ...

global___ClinvarVariationRelease = ClinvarVariationRelease
