"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import arg_services.mining.v1.adu_pb2
import builtins
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.internal.enum_type_wrapper
import google.protobuf.message
import google.protobuf.struct_pb2
import typing
import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

class _EntailmentType:
    ValueType = typing.NewType('ValueType', builtins.int)
    V: typing_extensions.TypeAlias = ValueType
class _EntailmentTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_EntailmentType.ValueType], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    ENTAILMENT_TYPE_UNSPECIFIED: _EntailmentType.ValueType  # 0
    ENTAILMENT_TYPE_ENTAILMENT: _EntailmentType.ValueType  # 1
    ENTAILMENT_TYPE_CONTRADICTION: _EntailmentType.ValueType  # 2
    ENTAILMENT_TYPE_NEUTRAL: _EntailmentType.ValueType  # 3
class EntailmentType(_EntailmentType, metaclass=_EntailmentTypeEnumTypeWrapper):
    pass

ENTAILMENT_TYPE_UNSPECIFIED: EntailmentType.ValueType  # 0
ENTAILMENT_TYPE_ENTAILMENT: EntailmentType.ValueType  # 1
ENTAILMENT_TYPE_CONTRADICTION: EntailmentType.ValueType  # 2
ENTAILMENT_TYPE_NEUTRAL: EntailmentType.ValueType  # 3
global___EntailmentType = EntailmentType


class EntailmentRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    LANGUAGE_FIELD_NUMBER: builtins.int
    PREMISE_FIELD_NUMBER: builtins.int
    CLAIM_FIELD_NUMBER: builtins.int
    EXTRAS_FIELD_NUMBER: builtins.int
    language: typing.Text
    premise: typing.Text
    claim: typing.Text
    @property
    def extras(self) -> google.protobuf.struct_pb2.Struct:
        """Implementation-specific information can be encoded here"""
        pass
    def __init__(self,
        *,
        language: typing.Text = ...,
        premise: typing.Text = ...,
        claim: typing.Text = ...,
        extras: typing.Optional[google.protobuf.struct_pb2.Struct] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["extras",b"extras"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["claim",b"claim","extras",b"extras","language",b"language","premise",b"premise"]) -> None: ...
global___EntailmentRequest = EntailmentRequest

class EntailmentResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    ENTAILMENT_TYPE_FIELD_NUMBER: builtins.int
    PREDICTIONS_FIELD_NUMBER: builtins.int
    EXTRAS_FIELD_NUMBER: builtins.int
    entailment_type: global___EntailmentType.ValueType
    @property
    def predictions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___EntailmentPrediction]: ...
    @property
    def extras(self) -> google.protobuf.struct_pb2.Struct:
        """Implementation-specific information can be encoded here"""
        pass
    def __init__(self,
        *,
        entailment_type: global___EntailmentType.ValueType = ...,
        predictions: typing.Optional[typing.Iterable[global___EntailmentPrediction]] = ...,
        extras: typing.Optional[google.protobuf.struct_pb2.Struct] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["extras",b"extras"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["entailment_type",b"entailment_type","extras",b"extras","predictions",b"predictions"]) -> None: ...
global___EntailmentResponse = EntailmentResponse

class EntailmentsRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    class SegmentsEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor
        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: typing.Text
        @property
        def value(self) -> arg_services.mining.v1.adu_pb2.Segment: ...
        def __init__(self,
            *,
            key: typing.Text = ...,
            value: typing.Optional[arg_services.mining.v1.adu_pb2.Segment] = ...,
            ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["value",b"value"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ...

    LANGUAGE_FIELD_NUMBER: builtins.int
    SEGMENTS_FIELD_NUMBER: builtins.int
    EXTRAS_FIELD_NUMBER: builtins.int
    language: typing.Text
    @property
    def segments(self) -> google.protobuf.internal.containers.MessageMap[typing.Text, arg_services.mining.v1.adu_pb2.Segment]: ...
    @property
    def extras(self) -> google.protobuf.struct_pb2.Struct:
        """Implementation-specific information can be encoded here"""
        pass
    def __init__(self,
        *,
        language: typing.Text = ...,
        segments: typing.Optional[typing.Mapping[typing.Text, arg_services.mining.v1.adu_pb2.Segment]] = ...,
        extras: typing.Optional[google.protobuf.struct_pb2.Struct] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["extras",b"extras"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["extras",b"extras","language",b"language","segments",b"segments"]) -> None: ...
global___EntailmentsRequest = EntailmentsRequest

class EntailmentsResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    RESULTS_FIELD_NUMBER: builtins.int
    EXTRAS_FIELD_NUMBER: builtins.int
    @property
    def results(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___EntailmentResult]: ...
    @property
    def extras(self) -> google.protobuf.struct_pb2.Struct:
        """Implementation-specific information can be encoded here"""
        pass
    def __init__(self,
        *,
        results: typing.Optional[typing.Iterable[global___EntailmentResult]] = ...,
        extras: typing.Optional[google.protobuf.struct_pb2.Struct] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["extras",b"extras"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["extras",b"extras","results",b"results"]) -> None: ...
global___EntailmentsResponse = EntailmentsResponse

class EntailmentResult(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    ENTAILMENT_FIELD_NUMBER: builtins.int
    PREDICTIONS_FIELD_NUMBER: builtins.int
    @property
    def entailment(self) -> global___Entailment: ...
    @property
    def predictions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___EntailmentPrediction]: ...
    def __init__(self,
        *,
        entailment: typing.Optional[global___Entailment] = ...,
        predictions: typing.Optional[typing.Iterable[global___EntailmentPrediction]] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["entailment",b"entailment"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["entailment",b"entailment","predictions",b"predictions"]) -> None: ...
global___EntailmentResult = EntailmentResult

class Entailment(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    PREMISE_ID_FIELD_NUMBER: builtins.int
    CLAIM_ID_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    premise_id: typing.Text
    claim_id: typing.Text
    type: global___EntailmentType.ValueType
    def __init__(self,
        *,
        premise_id: typing.Text = ...,
        claim_id: typing.Text = ...,
        type: global___EntailmentType.ValueType = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["claim_id",b"claim_id","premise_id",b"premise_id","type",b"type"]) -> None: ...
global___Entailment = Entailment

class EntailmentPrediction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    PROBABILITY_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    probability: builtins.float
    type: global___EntailmentType.ValueType
    def __init__(self,
        *,
        probability: builtins.float = ...,
        type: global___EntailmentType.ValueType = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["probability",b"probability","type",b"type"]) -> None: ...
global___EntailmentPrediction = EntailmentPrediction
