"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

import builtins
import collections.abc
import typing

import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class HistogramProto(google.protobuf.message.Message):
    """Serialization format for histogram module in
    tsl/lib/histogram/histogram.h
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MIN_FIELD_NUMBER: builtins.int
    MAX_FIELD_NUMBER: builtins.int
    NUM_FIELD_NUMBER: builtins.int
    SUM_FIELD_NUMBER: builtins.int
    SUM_SQUARES_FIELD_NUMBER: builtins.int
    BUCKET_LIMIT_FIELD_NUMBER: builtins.int
    BUCKET_FIELD_NUMBER: builtins.int
    min: builtins.float
    max: builtins.float
    num: builtins.float
    sum: builtins.float
    sum_squares: builtins.float
    @property
    def bucket_limit(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]:
        """Parallel arrays encoding the bucket boundaries and the bucket values.
        bucket(i) is the count for the bucket i.  The range for
        a bucket is:
          i == 0:  -DBL_MAX .. bucket_limit(0)
          i != 0:  bucket_limit(i-1) .. bucket_limit(i)
        """

    @property
    def bucket(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]: ...
    def __init__(
        self,
        *,
        min: builtins.float | None = ...,
        max: builtins.float | None = ...,
        num: builtins.float | None = ...,
        sum: builtins.float | None = ...,
        sum_squares: builtins.float | None = ...,
        bucket_limit: collections.abc.Iterable[builtins.float] | None = ...,
        bucket: collections.abc.Iterable[builtins.float] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["bucket", b"bucket", "bucket_limit", b"bucket_limit", "max", b"max", "min", b"min", "num", b"num", "sum", b"sum", "sum_squares", b"sum_squares"]) -> None: ...

global___HistogramProto = HistogramProto
