"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
Copyright 2024 Flower Labs GmbH. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
==============================================================================
"""

import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import typing

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class DoubleList(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALS_FIELD_NUMBER: builtins.int
    @property
    def vals(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]: ...
    def __init__(
        self,
        *,
        vals: collections.abc.Iterable[builtins.float] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["vals", b"vals"]) -> None: ...

global___DoubleList = DoubleList

@typing.final
class SintList(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALS_FIELD_NUMBER: builtins.int
    @property
    def vals(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ...
    def __init__(
        self,
        *,
        vals: collections.abc.Iterable[builtins.int] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["vals", b"vals"]) -> None: ...

global___SintList = SintList

@typing.final
class UintList(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALS_FIELD_NUMBER: builtins.int
    @property
    def vals(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ...
    def __init__(
        self,
        *,
        vals: collections.abc.Iterable[builtins.int] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["vals", b"vals"]) -> None: ...

global___UintList = UintList

@typing.final
class BoolList(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALS_FIELD_NUMBER: builtins.int
    @property
    def vals(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bool]: ...
    def __init__(
        self,
        *,
        vals: collections.abc.Iterable[builtins.bool] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["vals", b"vals"]) -> None: ...

global___BoolList = BoolList

@typing.final
class StringList(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALS_FIELD_NUMBER: builtins.int
    @property
    def vals(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        vals: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["vals", b"vals"]) -> None: ...

global___StringList = StringList

@typing.final
class BytesList(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALS_FIELD_NUMBER: builtins.int
    @property
    def vals(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]: ...
    def __init__(
        self,
        *,
        vals: collections.abc.Iterable[builtins.bytes] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["vals", b"vals"]) -> None: ...

global___BytesList = BytesList

@typing.final
class Array(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DTYPE_FIELD_NUMBER: builtins.int
    SHAPE_FIELD_NUMBER: builtins.int
    STYPE_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    dtype: builtins.str
    stype: builtins.str
    data: builtins.bytes
    @property
    def shape(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ...
    def __init__(
        self,
        *,
        dtype: builtins.str = ...,
        shape: collections.abc.Iterable[builtins.int] | None = ...,
        stype: builtins.str = ...,
        data: builtins.bytes = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["data", b"data", "dtype", b"dtype", "shape", b"shape", "stype", b"stype"]) -> None: ...

global___Array = Array

@typing.final
class MetricRecordValue(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DOUBLE_FIELD_NUMBER: builtins.int
    SINT64_FIELD_NUMBER: builtins.int
    UINT64_FIELD_NUMBER: builtins.int
    DOUBLE_LIST_FIELD_NUMBER: builtins.int
    SINT_LIST_FIELD_NUMBER: builtins.int
    UINT_LIST_FIELD_NUMBER: builtins.int
    double: builtins.float
    """Single element"""
    sint64: builtins.int
    uint64: builtins.int
    @property
    def double_list(self) -> global___DoubleList:
        """List types"""

    @property
    def sint_list(self) -> global___SintList: ...
    @property
    def uint_list(self) -> global___UintList: ...
    def __init__(
        self,
        *,
        double: builtins.float = ...,
        sint64: builtins.int = ...,
        uint64: builtins.int = ...,
        double_list: global___DoubleList | None = ...,
        sint_list: global___SintList | None = ...,
        uint_list: global___UintList | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["double", b"double", "double_list", b"double_list", "sint64", b"sint64", "sint_list", b"sint_list", "uint64", b"uint64", "uint_list", b"uint_list", "value", b"value"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["double", b"double", "double_list", b"double_list", "sint64", b"sint64", "sint_list", b"sint_list", "uint64", b"uint64", "uint_list", b"uint_list", "value", b"value"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["value", b"value"]) -> typing.Literal["double", "sint64", "uint64", "double_list", "sint_list", "uint_list"] | None: ...

global___MetricRecordValue = MetricRecordValue

@typing.final
class ConfigRecordValue(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DOUBLE_FIELD_NUMBER: builtins.int
    SINT64_FIELD_NUMBER: builtins.int
    UINT64_FIELD_NUMBER: builtins.int
    BOOL_FIELD_NUMBER: builtins.int
    STRING_FIELD_NUMBER: builtins.int
    BYTES_FIELD_NUMBER: builtins.int
    DOUBLE_LIST_FIELD_NUMBER: builtins.int
    SINT_LIST_FIELD_NUMBER: builtins.int
    UINT_LIST_FIELD_NUMBER: builtins.int
    BOOL_LIST_FIELD_NUMBER: builtins.int
    STRING_LIST_FIELD_NUMBER: builtins.int
    BYTES_LIST_FIELD_NUMBER: builtins.int
    double: builtins.float
    """Single element"""
    sint64: builtins.int
    uint64: builtins.int
    bool: builtins.bool
    string: builtins.str
    bytes: builtins.bytes
    @property
    def double_list(self) -> global___DoubleList:
        """List types"""

    @property
    def sint_list(self) -> global___SintList: ...
    @property
    def uint_list(self) -> global___UintList: ...
    @property
    def bool_list(self) -> global___BoolList: ...
    @property
    def string_list(self) -> global___StringList: ...
    @property
    def bytes_list(self) -> global___BytesList: ...
    def __init__(
        self,
        *,
        double: builtins.float = ...,
        sint64: builtins.int = ...,
        uint64: builtins.int = ...,
        bool: builtins.bool = ...,
        string: builtins.str = ...,
        bytes: builtins.bytes = ...,
        double_list: global___DoubleList | None = ...,
        sint_list: global___SintList | None = ...,
        uint_list: global___UintList | None = ...,
        bool_list: global___BoolList | None = ...,
        string_list: global___StringList | None = ...,
        bytes_list: global___BytesList | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["bool", b"bool", "bool_list", b"bool_list", "bytes", b"bytes", "bytes_list", b"bytes_list", "double", b"double", "double_list", b"double_list", "sint64", b"sint64", "sint_list", b"sint_list", "string", b"string", "string_list", b"string_list", "uint64", b"uint64", "uint_list", b"uint_list", "value", b"value"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["bool", b"bool", "bool_list", b"bool_list", "bytes", b"bytes", "bytes_list", b"bytes_list", "double", b"double", "double_list", b"double_list", "sint64", b"sint64", "sint_list", b"sint_list", "string", b"string", "string_list", b"string_list", "uint64", b"uint64", "uint_list", b"uint_list", "value", b"value"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["value", b"value"]) -> typing.Literal["double", "sint64", "uint64", "bool", "string", "bytes", "double_list", "sint_list", "uint_list", "bool_list", "string_list", "bytes_list"] | None: ...

global___ConfigRecordValue = ConfigRecordValue

@typing.final
class ArrayRecord(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class Item(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        @property
        def value(self) -> global___Array: ...
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: global___Array | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ...

    ITEMS_FIELD_NUMBER: builtins.int
    @property
    def items(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ArrayRecord.Item]: ...
    def __init__(
        self,
        *,
        items: collections.abc.Iterable[global___ArrayRecord.Item] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["items", b"items"]) -> None: ...

global___ArrayRecord = ArrayRecord

@typing.final
class MetricRecord(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class Item(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        @property
        def value(self) -> global___MetricRecordValue: ...
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: global___MetricRecordValue | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ...

    ITEMS_FIELD_NUMBER: builtins.int
    @property
    def items(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MetricRecord.Item]: ...
    def __init__(
        self,
        *,
        items: collections.abc.Iterable[global___MetricRecord.Item] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["items", b"items"]) -> None: ...

global___MetricRecord = MetricRecord

@typing.final
class ConfigRecord(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class Item(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        @property
        def value(self) -> global___ConfigRecordValue: ...
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: global___ConfigRecordValue | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ...

    ITEMS_FIELD_NUMBER: builtins.int
    @property
    def items(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ConfigRecord.Item]: ...
    def __init__(
        self,
        *,
        items: collections.abc.Iterable[global___ConfigRecord.Item] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["items", b"items"]) -> None: ...

global___ConfigRecord = ConfigRecord

@typing.final
class RecordDict(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class Item(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        ARRAY_RECORD_FIELD_NUMBER: builtins.int
        METRIC_RECORD_FIELD_NUMBER: builtins.int
        CONFIG_RECORD_FIELD_NUMBER: builtins.int
        key: builtins.str
        @property
        def array_record(self) -> global___ArrayRecord: ...
        @property
        def metric_record(self) -> global___MetricRecord: ...
        @property
        def config_record(self) -> global___ConfigRecord: ...
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            array_record: global___ArrayRecord | None = ...,
            metric_record: global___MetricRecord | None = ...,
            config_record: global___ConfigRecord | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["array_record", b"array_record", "config_record", b"config_record", "metric_record", b"metric_record", "value", b"value"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["array_record", b"array_record", "config_record", b"config_record", "key", b"key", "metric_record", b"metric_record", "value", b"value"]) -> None: ...
        def WhichOneof(self, oneof_group: typing.Literal["value", b"value"]) -> typing.Literal["array_record", "metric_record", "config_record"] | None: ...

    ITEMS_FIELD_NUMBER: builtins.int
    @property
    def items(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___RecordDict.Item]: ...
    def __init__(
        self,
        *,
        items: collections.abc.Iterable[global___RecordDict.Item] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["items", b"items"]) -> None: ...

global___RecordDict = RecordDict
