"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import sarus_data_spec.protobuf.path_pb2
import sarus_data_spec.protobuf.statistics_pb2
import typing
import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ...

class Links(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    class PropertiesEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: typing.Text = ...
        value: typing.Text = ...
        def __init__(self,
            *,
            key : typing.Text = ...,
            value : typing.Text = ...,
            ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ...

    class LinkStat(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
        class PropertiesEntry(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            KEY_FIELD_NUMBER: builtins.int
            VALUE_FIELD_NUMBER: builtins.int
            key: typing.Text = ...
            value: typing.Text = ...
            def __init__(self,
                *,
                key : typing.Text = ...,
                value : typing.Text = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal["key",b"key","value",b"value"]) -> None: ...

        POINTING_FIELD_NUMBER: builtins.int
        POINTED_FIELD_NUMBER: builtins.int
        DISTRIBUTION_FIELD_NUMBER: builtins.int
        PROPERTIES_FIELD_NUMBER: builtins.int
        @property
        def pointing(self) -> sarus_data_spec.protobuf.path_pb2.Path: ...
        @property
        def pointed(self) -> sarus_data_spec.protobuf.path_pb2.Path: ...
        @property
        def distribution(self) -> sarus_data_spec.protobuf.statistics_pb2.Distribution: ...
        @property
        def properties(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]:
            """Needed for compatibility with typing"""
            pass
        def __init__(self,
            *,
            pointing : typing.Optional[sarus_data_spec.protobuf.path_pb2.Path] = ...,
            pointed : typing.Optional[sarus_data_spec.protobuf.path_pb2.Path] = ...,
            distribution : typing.Optional[sarus_data_spec.protobuf.statistics_pb2.Distribution] = ...,
            properties : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ...,
            ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["distribution",b"distribution","pointed",b"pointed","pointing",b"pointing"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["distribution",b"distribution","pointed",b"pointed","pointing",b"pointing","properties",b"properties"]) -> None: ...

    UUID_FIELD_NUMBER: builtins.int
    DATASET_FIELD_NUMBER: builtins.int
    LINKS_STATISTICS_FIELD_NUMBER: builtins.int
    PROPERTIES_FIELD_NUMBER: builtins.int
    uuid: typing.Text = ...
    dataset: typing.Text = ...
    """uuid"""

    @property
    def links_statistics(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Links.LinkStat]: ...
    @property
    def properties(self) -> google.protobuf.internal.containers.ScalarMap[typing.Text, typing.Text]: ...
    def __init__(self,
        *,
        uuid : typing.Text = ...,
        dataset : typing.Text = ...,
        links_statistics : typing.Optional[typing.Iterable[global___Links.LinkStat]] = ...,
        properties : typing.Optional[typing.Mapping[typing.Text, typing.Text]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["dataset",b"dataset","links_statistics",b"links_statistics","properties",b"properties","uuid",b"uuid"]) -> None: ...
global___Links = Links
