# Path: google/cloud/datalabeling_v1beta1/types/annotation.py
# class AnnotationSource(proto.Enum):
# class AnnotationSentiment(proto.Enum):
# class AnnotationType(proto.Enum):
# class Annotation(proto.Message):
# class AnnotationValue(proto.Message):
# class ImageClassificationAnnotation(proto.Message):
# class Vertex(proto.Message):
# class NormalizedVertex(proto.Message):
# class BoundingPoly(proto.Message):
# class NormalizedBoundingPoly(proto.Message):
# class ImageBoundingPolyAnnotation(proto.Message):
# class Polyline(proto.Message):
# class NormalizedPolyline(proto.Message):
# class ImagePolylineAnnotation(proto.Message):
# class ImageSegmentationAnnotation(proto.Message):
# class TextClassificationAnnotation(proto.Message):
# class TextEntityExtractionAnnotation(proto.Message):
# class SequentialSegment(proto.Message):
# class TimeSegment(proto.Message):
# class VideoClassificationAnnotation(proto.Message):
# class ObjectTrackingFrame(proto.Message):
# class VideoObjectTrackingAnnotation(proto.Message):
# class VideoEventAnnotation(proto.Message):
# class AnnotationMetadata(proto.Message):
# class OperatorMetadata(proto.Message):
#     ANNOTATION_SOURCE_UNSPECIFIED = 0
#     OPERATOR = 3
#     ANNOTATION_SENTIMENT_UNSPECIFIED = 0
#     NEGATIVE = 1
#     POSITIVE = 2
#     ANNOTATION_TYPE_UNSPECIFIED = 0
#     IMAGE_CLASSIFICATION_ANNOTATION = 1
#     IMAGE_BOUNDING_BOX_ANNOTATION = 2
#     IMAGE_ORIENTED_BOUNDING_BOX_ANNOTATION = 13
#     IMAGE_BOUNDING_POLY_ANNOTATION = 10
#     IMAGE_POLYLINE_ANNOTATION = 11
#     IMAGE_SEGMENTATION_ANNOTATION = 12
#     VIDEO_SHOTS_CLASSIFICATION_ANNOTATION = 3
#     VIDEO_OBJECT_TRACKING_ANNOTATION = 4
#     VIDEO_OBJECT_DETECTION_ANNOTATION = 5
#     VIDEO_EVENT_ANNOTATION = 6
#     TEXT_CLASSIFICATION_ANNOTATION = 8
#     TEXT_ENTITY_EXTRACTION_ANNOTATION = 9
#     GENERAL_CLASSIFICATION_ANNOTATION = 14
# 
# Path: google/cloud/datalabeling_v1beta1/types/data_payloads.py
# class ImagePayload(proto.Message):
# class TextPayload(proto.Message):
# class VideoThumbnail(proto.Message):
# class VideoPayload(proto.Message):
# 
# Path: google/cloud/datalabeling_v1beta1/types/human_annotation_config.py
# class StringAggregationType(proto.Enum):
# class HumanAnnotationConfig(proto.Message):
# class ImageClassificationConfig(proto.Message):
# class BoundingPolyConfig(proto.Message):
# class PolylineConfig(proto.Message):
# class SegmentationConfig(proto.Message):
# class VideoClassificationConfig(proto.Message):
#     class AnnotationSpecSetConfig(proto.Message):
# class ObjectDetectionConfig(proto.Message):
# class ObjectTrackingConfig(proto.Message):
# class EventConfig(proto.Message):
# class TextClassificationConfig(proto.Message):
# class SentimentConfig(proto.Message):
# class TextEntityExtractionConfig(proto.Message):
#     STRING_AGGREGATION_TYPE_UNSPECIFIED = 0
#     MAJORITY_VOTE = 1
#     UNANIMOUS_VOTE = 2
#     NO_AGGREGATION = 3


import proto  # type: ignore
from google.cloud.datalabeling_v1beta1.types import annotation
from google.cloud.datalabeling_v1beta1.types import data_payloads
from google.cloud.datalabeling_v1beta1.types import (
    human_annotation_config as gcd_human_annotation_config,
)
from google.protobuf import timestamp_pb2  # type: ignore
    """

    image_classification_config = proto.Field(
        proto.MESSAGE,
        number=2,
        oneof="annotation_request_config",
        message=gcd_human_annotation_config.ImageClassificationConfig,
    )
    bounding_poly_config = proto.Field(
        proto.MESSAGE,
        number=3,
        oneof="annotation_request_config",
        message=gcd_human_annotation_config.BoundingPolyConfig,
    )
    polyline_config = proto.Field(
        proto.MESSAGE,
        number=4,
        oneof="annotation_request_config",
        message=gcd_human_annotation_config.PolylineConfig,
    )
    segmentation_config = proto.Field(
        proto.MESSAGE,
        number=5,
        oneof="annotation_request_config",
        message=gcd_human_annotation_config.SegmentationConfig,
    )
    video_classification_config = proto.Field(
        proto.MESSAGE,
        number=6,
        oneof="annotation_request_config",

# Path: google/cloud/datalabeling_v1beta1/types/annotation.py
# class AnnotationSource(proto.Enum):
# class AnnotationSentiment(proto.Enum):
# class AnnotationType(proto.Enum):
# class Annotation(proto.Message):
# class AnnotationValue(proto.Message):
# class ImageClassificationAnnotation(proto.Message):
# class Vertex(proto.Message):
# class NormalizedVertex(proto.Message):
# class BoundingPoly(proto.Message):
# class NormalizedBoundingPoly(proto.Message):
# class ImageBoundingPolyAnnotation(proto.Message):
# class Polyline(proto.Message):
# class NormalizedPolyline(proto.Message):
# class ImagePolylineAnnotation(proto.Message):
# class ImageSegmentationAnnotation(proto.Message):
# class TextClassificationAnnotation(proto.Message):
# class TextEntityExtractionAnnotation(proto.Message):
# class SequentialSegment(proto.Message):
# class TimeSegment(proto.Message):
# class VideoClassificationAnnotation(proto.Message):
# class ObjectTrackingFrame(proto.Message):
# class VideoObjectTrackingAnnotation(proto.Message):
# class VideoEventAnnotation(proto.Message):
# class AnnotationMetadata(proto.Message):
# class OperatorMetadata(proto.Message):
#     ANNOTATION_SOURCE_UNSPECIFIED = 0
#     OPERATOR = 3
#     ANNOTATION_SENTIMENT_UNSPECIFIED = 0
#     NEGATIVE = 1
#     POSITIVE = 2
#     ANNOTATION_TYPE_UNSPECIFIED = 0
#     IMAGE_CLASSIFICATION_ANNOTATION = 1
#     IMAGE_BOUNDING_BOX_ANNOTATION = 2
#     IMAGE_ORIENTED_BOUNDING_BOX_ANNOTATION = 13
#     IMAGE_BOUNDING_POLY_ANNOTATION = 10
#     IMAGE_POLYLINE_ANNOTATION = 11
#     IMAGE_SEGMENTATION_ANNOTATION = 12
#     VIDEO_SHOTS_CLASSIFICATION_ANNOTATION = 3
#     VIDEO_OBJECT_TRACKING_ANNOTATION = 4
#     VIDEO_OBJECT_DETECTION_ANNOTATION = 5
#     VIDEO_EVENT_ANNOTATION = 6
#     TEXT_CLASSIFICATION_ANNOTATION = 8
#     TEXT_ENTITY_EXTRACTION_ANNOTATION = 9
#     GENERAL_CLASSIFICATION_ANNOTATION = 14
# 
# Path: google/cloud/datalabeling_v1beta1/types/data_payloads.py
# class ImagePayload(proto.Message):
# class TextPayload(proto.Message):
# class VideoThumbnail(proto.Message):
# class VideoPayload(proto.Message):
# 
# Path: google/cloud/datalabeling_v1beta1/types/human_annotation_config.py
# class StringAggregationType(proto.Enum):
# class HumanAnnotationConfig(proto.Message):
# class ImageClassificationConfig(proto.Message):
# class BoundingPolyConfig(proto.Message):
# class PolylineConfig(proto.Message):
# class SegmentationConfig(proto.Message):
# class VideoClassificationConfig(proto.Message):
#     class AnnotationSpecSetConfig(proto.Message):
# class ObjectDetectionConfig(proto.Message):
# class ObjectTrackingConfig(proto.Message):
# class EventConfig(proto.Message):
# class TextClassificationConfig(proto.Message):
# class SentimentConfig(proto.Message):
# class TextEntityExtractionConfig(proto.Message):
#     STRING_AGGREGATION_TYPE_UNSPECIFIED = 0
#     MAJORITY_VOTE = 1
#     UNANIMOUS_VOTE = 2
#     NO_AGGREGATION = 3


# Path: google/cloud/datalabeling_v1beta1/types/dataset.py
import proto  # type: ignore
from google.cloud.datalabeling_v1beta1.types import annotation
from google.cloud.datalabeling_v1beta1.types import data_payloads
from google.cloud.datalabeling_v1beta1.types import (
    human_annotation_config as gcd_human_annotation_config,
)
from google.protobuf import timestamp_pb2  # type: ignore

    """

    image_classification_config = proto.Field(
        proto.MESSAGE,
        number=2,
        oneof="annotation_request_config",
        message=gcd_human_annotation_config.ImageClassificationConfig,
    )
    bounding_poly_config = proto.Field(
        proto.MESSAGE,
        number=3,
        oneof="annotation_request_config",
        message=gcd_human_annotation_config.BoundingPolyConfig,
    )
    polyline_config = proto.Field(
        proto.MESSAGE,
        number=4,
        oneof="annotation_request_config",
        message=gcd_human_annotation_config.PolylineConfig,
    )
    segmentation_config = proto.Field(
        proto.MESSAGE,
        number=5,
        oneof="annotation_request_config",
        message=gcd_human_annotation_config.SegmentationConfig,
    )
    video_classification_config = proto.Field(
        proto.MESSAGE,
        number=6,
        oneof="annotation_request_config",

        message=gcd_human_annotation_config.VideoClassificationConfig,