"""
@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 google.protobuf.timestamp_pb2
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 _TraceItemName:
    ValueType = typing.NewType("ValueType", builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _TraceItemNameEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_TraceItemName.ValueType], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    TRACE_ITEM_NAME_UNSPECIFIED: _TraceItemName.ValueType  # 0
    TRACE_ITEM_NAME_EAP_SPANS: _TraceItemName.ValueType  # 1

class TraceItemName(_TraceItemName, metaclass=_TraceItemNameEnumTypeWrapper): ...

TRACE_ITEM_NAME_UNSPECIFIED: TraceItemName.ValueType  # 0
TRACE_ITEM_NAME_EAP_SPANS: TraceItemName.ValueType  # 1
global___TraceItemName = TraceItemName

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

    ORGANIZATION_ID_FIELD_NUMBER: builtins.int
    COGS_CATEGORY_FIELD_NUMBER: builtins.int
    REFERRER_FIELD_NUMBER: builtins.int
    PROJECT_IDS_FIELD_NUMBER: builtins.int
    START_TIMESTAMP_FIELD_NUMBER: builtins.int
    END_TIMESTAMP_FIELD_NUMBER: builtins.int
    TRACE_ITEM_NAME_FIELD_NUMBER: builtins.int
    organization_id: builtins.int
    cogs_category: builtins.str
    referrer: builtins.str
    trace_item_name: global___TraceItemName.ValueType
    @property
    def project_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]:
        """can be empty"""

    @property
    def start_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
    @property
    def end_timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
    def __init__(
        self,
        *,
        organization_id: builtins.int = ...,
        cogs_category: builtins.str = ...,
        referrer: builtins.str = ...,
        project_ids: collections.abc.Iterable[builtins.int] | None = ...,
        start_timestamp: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        end_timestamp: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        trace_item_name: global___TraceItemName.ValueType = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["end_timestamp", b"end_timestamp", "start_timestamp", b"start_timestamp"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["cogs_category", b"cogs_category", "end_timestamp", b"end_timestamp", "organization_id", b"organization_id", "project_ids", b"project_ids", "referrer", b"referrer", "start_timestamp", b"start_timestamp", "trace_item_name", b"trace_item_name"]) -> None: ...

global___RequestMeta = RequestMeta
