"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.internal.enum_type_wrapper
import google.protobuf.message
import sys
import typing
if sys.version_info >= (3, 10):
    import typing as typing_extensions
else:
    import typing_extensions
DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

class _ProtoScale:
    ValueType = typing.NewType('ValueType', builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _ProtoScaleEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_ProtoScale.ValueType], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    linear: _ProtoScale.ValueType
    log: _ProtoScale.ValueType

class ProtoScale(_ProtoScale, metaclass=_ProtoScaleEnumTypeWrapper):
    ...
linear: ProtoScale.ValueType
log: ProtoScale.ValueType
global___ProtoScale = ProtoScale

class _ProtoLineage:
    ValueType = typing.NewType('ValueType', builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _ProtoLineageEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_ProtoLineage.ValueType], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    FULL: _ProtoLineage.ValueType
    ONLY_OWNED: _ProtoLineage.ValueType

class ProtoLineage(_ProtoLineage, metaclass=_ProtoLineageEnumTypeWrapper):
    """Enum for lineage types"""
FULL: ProtoLineage.ValueType
ONLY_OWNED: ProtoLineage.ValueType
global___ProtoLineage = ProtoLineage

class _LineageEntityType:
    ValueType = typing.NewType('ValueType', builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _LineageEntityTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_LineageEntityType.ValueType], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    EXPERIMENT: _LineageEntityType.ValueType
    RUN: _LineageEntityType.ValueType

class LineageEntityType(_LineageEntityType, metaclass=_LineageEntityTypeEnumTypeWrapper):
    ...
EXPERIMENT: LineageEntityType.ValueType
RUN: LineageEntityType.ValueType
global___LineageEntityType = LineageEntityType

@typing.final
class ProtoGetTimeseriesBucketsRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    EXPRESSIONS_FIELD_NUMBER: builtins.int
    VIEW_FIELD_NUMBER: builtins.int

    @property
    def expressions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ProtoCustomExpression]:
        ...

    @property
    def view(self) -> global___ProtoView:
        ...

    def __init__(self, *, expressions: collections.abc.Iterable[global___ProtoCustomExpression] | None=..., view: global___ProtoView | None=...) -> None:
        ...

    def HasField(self, field_name: typing.Literal['view', b'view']) -> builtins.bool:
        ...

    def ClearField(self, field_name: typing.Literal['expressions', b'expressions', 'view', b'view']) -> None:
        ...
global___ProtoGetTimeseriesBucketsRequest = ProtoGetTimeseriesBucketsRequest

@typing.final
class ProtoCustomExpression(google.protobuf.message.Message):
    """Custom metric configuration"""
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    REQUESTID_FIELD_NUMBER: builtins.int
    RUNID_FIELD_NUMBER: builtins.int
    CUSTOMYFORMULA_FIELD_NUMBER: builtins.int
    INCLUDEPREVIEW_FIELD_NUMBER: builtins.int
    LINEAGE_FIELD_NUMBER: builtins.int
    ENTITYTYPE_FIELD_NUMBER: builtins.int
    requestId: builtins.str
    'needs to be unique in the whole ProtoGetTimeseriesBucketsRequest'
    runId: builtins.str
    customYFormula: builtins.str
    includePreview: builtins.bool
    lineage: global___ProtoLineage.ValueType
    entityType: global___LineageEntityType.ValueType

    def __init__(self, *, requestId: builtins.str=..., runId: builtins.str=..., customYFormula: builtins.str=..., includePreview: builtins.bool | None=..., lineage: global___ProtoLineage.ValueType=..., entityType: global___LineageEntityType.ValueType=...) -> None:
        ...

    def HasField(self, field_name: typing.Literal['_includePreview', b'_includePreview', 'includePreview', b'includePreview']) -> builtins.bool:
        ...

    def ClearField(self, field_name: typing.Literal['_includePreview', b'_includePreview', 'customYFormula', b'customYFormula', 'entityType', b'entityType', 'includePreview', b'includePreview', 'lineage', b'lineage', 'requestId', b'requestId', 'runId', b'runId']) -> None:
        ...

    def WhichOneof(self, oneof_group: typing.Literal['_includePreview', b'_includePreview']) -> typing.Literal['includePreview'] | None:
        ...
global___ProtoCustomExpression = ProtoCustomExpression

@typing.final
class ProtoView(google.protobuf.message.Message):
    """View configuration"""
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    FROM_FIELD_NUMBER: builtins.int
    TO_FIELD_NUMBER: builtins.int
    POINTFILTERS_FIELD_NUMBER: builtins.int
    MAXBUCKETS_FIELD_NUMBER: builtins.int
    XSCALE_FIELD_NUMBER: builtins.int
    YSCALE_FIELD_NUMBER: builtins.int
    XAXIS_FIELD_NUMBER: builtins.int
    to: builtins.float
    maxBuckets: builtins.int
    xScale: global___ProtoScale.ValueType
    yScale: global___ProtoScale.ValueType

    @property
    def pointFilters(self) -> global___ProtoPointFilters:
        ...

    @property
    def xAxis(self) -> global___ProtoXAxis:
        ...

    def __init__(self, *, to: builtins.float | None=..., pointFilters: global___ProtoPointFilters | None=..., maxBuckets: builtins.int=..., xScale: global___ProtoScale.ValueType=..., yScale: global___ProtoScale.ValueType=..., xAxis: global___ProtoXAxis | None=...) -> None:
        ...

    def HasField(self, field_name: typing.Literal['_from', b'_from', '_pointFilters', b'_pointFilters', '_to', b'_to', 'from', b'from', 'pointFilters', b'pointFilters', 'to', b'to', 'xAxis', b'xAxis']) -> builtins.bool:
        ...

    def ClearField(self, field_name: typing.Literal['_from', b'_from', '_pointFilters', b'_pointFilters', '_to', b'_to', 'from', b'from', 'maxBuckets', b'maxBuckets', 'pointFilters', b'pointFilters', 'to', b'to', 'xAxis', b'xAxis', 'xScale', b'xScale', 'yScale', b'yScale']) -> None:
        ...

    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal['_from', b'_from']) -> typing.Literal['from'] | None:
        ...

    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal['_pointFilters', b'_pointFilters']) -> typing.Literal['pointFilters'] | None:
        ...

    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal['_to', b'_to']) -> typing.Literal['to'] | None:
        ...
global___ProtoView = ProtoView

@typing.final
class ProtoPointFilters(google.protobuf.message.Message):
    """Point filters"""
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    STEPRANGE_FIELD_NUMBER: builtins.int

    @property
    def stepRange(self) -> global___ProtoOpenRange:
        ...

    def __init__(self, *, stepRange: global___ProtoOpenRange | None=...) -> None:
        ...

    def HasField(self, field_name: typing.Literal['_stepRange', b'_stepRange', 'stepRange', b'stepRange']) -> builtins.bool:
        ...

    def ClearField(self, field_name: typing.Literal['_stepRange', b'_stepRange', 'stepRange', b'stepRange']) -> None:
        ...

    def WhichOneof(self, oneof_group: typing.Literal['_stepRange', b'_stepRange']) -> typing.Literal['stepRange'] | None:
        ...
global___ProtoPointFilters = ProtoPointFilters

@typing.final
class ProtoOpenRange(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    FROM_FIELD_NUMBER: builtins.int
    TO_FIELD_NUMBER: builtins.int
    to: builtins.float

    def __init__(self, *, to: builtins.float | None=...) -> None:
        ...

    def HasField(self, field_name: typing.Literal['_from', b'_from', '_to', b'_to', 'from', b'from', 'to', b'to']) -> builtins.bool:
        ...

    def ClearField(self, field_name: typing.Literal['_from', b'_from', '_to', b'_to', 'from', b'from', 'to', b'to']) -> None:
        ...

    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal['_from', b'_from']) -> typing.Literal['from'] | None:
        ...

    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal['_to', b'_to']) -> typing.Literal['to'] | None:
        ...
global___ProtoOpenRange = ProtoOpenRange

@typing.final
class ProtoXAxis(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    STEPS_FIELD_NUMBER: builtins.int
    EPOCHMILLIS_FIELD_NUMBER: builtins.int
    RELATIVETIME_FIELD_NUMBER: builtins.int
    CUSTOM_FIELD_NUMBER: builtins.int

    @property
    def steps(self) -> global___XSteps:
        ...

    @property
    def epochMillis(self) -> global___XEpochMillis:
        ...

    @property
    def relativeTime(self) -> global___XRelativeTime:
        ...

    @property
    def custom(self) -> global___XCustom:
        ...

    def __init__(self, *, steps: global___XSteps | None=..., epochMillis: global___XEpochMillis | None=..., relativeTime: global___XRelativeTime | None=..., custom: global___XCustom | None=...) -> None:
        ...

    def HasField(self, field_name: typing.Literal['custom', b'custom', 'epochMillis', b'epochMillis', 'relativeTime', b'relativeTime', 'steps', b'steps', 'value', b'value']) -> builtins.bool:
        ...

    def ClearField(self, field_name: typing.Literal['custom', b'custom', 'epochMillis', b'epochMillis', 'relativeTime', b'relativeTime', 'steps', b'steps', 'value', b'value']) -> None:
        ...

    def WhichOneof(self, oneof_group: typing.Literal['value', b'value']) -> typing.Literal['steps', 'epochMillis', 'relativeTime', 'custom'] | None:
        ...
global___ProtoXAxis = ProtoXAxis

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

    def __init__(self) -> None:
        ...
global___XSteps = XSteps

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

    def __init__(self) -> None:
        ...
global___XEpochMillis = XEpochMillis

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

    def __init__(self) -> None:
        ...
global___XRelativeTime = XRelativeTime

@typing.final
class XCustom(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    EXPRESSION_FIELD_NUMBER: builtins.int
    expression: builtins.str

    def __init__(self, *, expression: builtins.str=...) -> None:
        ...

    def ClearField(self, field_name: typing.Literal['expression', b'expression']) -> None:
        ...
global___XCustom = XCustom