"""
@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.message
import google.protobuf.struct_pb2
import typing

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class Event(google.protobuf.message.Message):
    """
    The sentry v7 event structure.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class EventBreadcrumbs(google.protobuf.message.Message):
        """
        List of breadcrumbs recorded before this event.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

            CATEGORY_FIELD_NUMBER: builtins.int
            DATA_FIELD_NUMBER: builtins.int
            EVENT_ID_FIELD_NUMBER: builtins.int
            LEVEL_FIELD_NUMBER: builtins.int
            MESSAGE_FIELD_NUMBER: builtins.int
            TIMESTAMP_FIELD_NUMBER: builtins.int
            TYPE_FIELD_NUMBER: builtins.int
            category: builtins.str
            event_id: builtins.str
            level: builtins.str
            message: builtins.str
            type: builtins.str
            @property
            def data(self) -> google.protobuf.struct_pb2.Value: ...
            @property
            def timestamp(self) -> google.protobuf.struct_pb2.Value: ...
            def __init__(
                self,
                *,
                category: builtins.str = ...,
                data: google.protobuf.struct_pb2.Value | None = ...,
                event_id: builtins.str = ...,
                level: builtins.str = ...,
                message: builtins.str = ...,
                timestamp: google.protobuf.struct_pb2.Value | None = ...,
                type: builtins.str = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["category", b"category", "data", b"data", "event_id", b"event_id", "has_category", b"has_category", "has_data", b"has_data", "has_event_id", b"has_event_id", "has_level", b"has_level", "has_message", b"has_message", "has_timestamp", b"has_timestamp", "has_type", b"has_type", "level", b"level", "message", b"message", "timestamp", b"timestamp", "type", b"type"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["category", b"category", "data", b"data", "event_id", b"event_id", "has_category", b"has_category", "has_data", b"has_data", "has_event_id", b"has_event_id", "has_level", b"has_level", "has_message", b"has_message", "has_timestamp", b"has_timestamp", "has_type", b"has_type", "level", b"level", "message", b"message", "timestamp", b"timestamp", "type", b"type"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_category", b"has_category"]) -> typing.Literal["category"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_data", b"has_data"]) -> typing.Literal["data"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_event_id", b"has_event_id"]) -> typing.Literal["event_id"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_level", b"has_level"]) -> typing.Literal["level"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_message", b"has_message"]) -> typing.Literal["message"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_timestamp", b"has_timestamp"]) -> typing.Literal["timestamp"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_type", b"has_type"]) -> typing.Literal["type"] | None: ...

        VALUES_FIELD_NUMBER: builtins.int
        @property
        def values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Event.EventBreadcrumbs.EventBreadcrumbsValues]: ...
        def __init__(
            self,
            *,
            values: collections.abc.Iterable[global___Event.EventBreadcrumbs.EventBreadcrumbsValues] | None = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing.Literal["values", b"values"]) -> None: ...

    @typing.final
    class EventDebugMeta(google.protobuf.message.Message):
        """
        Meta data for event processing and debugging.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class EventDebugMetaSdkInfo(google.protobuf.message.Message):
            """
            Information about the system SDK (e.g. iOS SDK).
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            SDK_NAME_FIELD_NUMBER: builtins.int
            VERSION_MAJOR_FIELD_NUMBER: builtins.int
            VERSION_MINOR_FIELD_NUMBER: builtins.int
            VERSION_PATCHLEVEL_FIELD_NUMBER: builtins.int
            sdk_name: builtins.str
            version_major: builtins.int
            version_minor: builtins.int
            version_patchlevel: builtins.int
            def __init__(
                self,
                *,
                sdk_name: builtins.str = ...,
                version_major: builtins.int = ...,
                version_minor: builtins.int = ...,
                version_patchlevel: builtins.int = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["has_sdk_name", b"has_sdk_name", "has_version_major", b"has_version_major", "has_version_minor", b"has_version_minor", "has_version_patchlevel", b"has_version_patchlevel", "sdk_name", b"sdk_name", "version_major", b"version_major", "version_minor", b"version_minor", "version_patchlevel", b"version_patchlevel"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["has_sdk_name", b"has_sdk_name", "has_version_major", b"has_version_major", "has_version_minor", b"has_version_minor", "has_version_patchlevel", b"has_version_patchlevel", "sdk_name", b"sdk_name", "version_major", b"version_major", "version_minor", b"version_minor", "version_patchlevel", b"version_patchlevel"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_sdk_name", b"has_sdk_name"]) -> typing.Literal["sdk_name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_version_major", b"has_version_major"]) -> typing.Literal["version_major"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_version_minor", b"has_version_minor"]) -> typing.Literal["version_minor"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_version_patchlevel", b"has_version_patchlevel"]) -> typing.Literal["version_patchlevel"] | None: ...

        IMAGES_FIELD_NUMBER: builtins.int
        SDK_INFO_FIELD_NUMBER: builtins.int
        @property
        def images(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.struct_pb2.Value]: ...
        @property
        def sdk_info(self) -> global___Event.EventDebugMeta.EventDebugMetaSdkInfo: ...
        def __init__(
            self,
            *,
            images: collections.abc.Iterable[google.protobuf.struct_pb2.Value] | None = ...,
            sdk_info: global___Event.EventDebugMeta.EventDebugMetaSdkInfo | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_sdk_info", b"has_sdk_info", "sdk_info", b"sdk_info"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["has_sdk_info", b"has_sdk_info", "images", b"images", "sdk_info", b"sdk_info"]) -> None: ...
        def WhichOneof(self, oneof_group: typing.Literal["has_sdk_info", b"has_sdk_info"]) -> typing.Literal["sdk_info"] | None: ...

    @typing.final
    class EventErrors(google.protobuf.message.Message):
        """
        Errors encountered during processing. Intended to be phased out in favor of
        annotation/metadata system.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        NAME_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        name: builtins.str
        type: builtins.str
        @property
        def value(self) -> google.protobuf.struct_pb2.Value: ...
        def __init__(
            self,
            *,
            name: builtins.str = ...,
            type: builtins.str = ...,
            value: google.protobuf.struct_pb2.Value | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_name", b"has_name", "name", b"name", "value", b"value"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "name", b"name", "type", b"type", "value", b"value"]) -> None: ...
        def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...

    @typing.final
    class EventException(google.protobuf.message.Message):
        """
        One or multiple chained (nested) exceptions.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

            @typing.final
            class EventExceptionValuesMechanism(google.protobuf.message.Message):
                """
                Mechanism by which this exception was generated and handled.
                """

                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                @typing.final
                class EventExceptionValuesMechanismMeta(google.protobuf.message.Message):
                    """
                    Operating system or runtime meta information.
                    """

                    DESCRIPTOR: google.protobuf.descriptor.Descriptor

                    @typing.final
                    class EventExceptionValuesMechanismMetaErrno(google.protobuf.message.Message):
                        """
                        Optional ISO C standard error code.
                        """

                        DESCRIPTOR: google.protobuf.descriptor.Descriptor

                        NAME_FIELD_NUMBER: builtins.int
                        NUMBER_FIELD_NUMBER: builtins.int
                        name: builtins.str
                        number: builtins.int
                        def __init__(
                            self,
                            *,
                            name: builtins.str = ...,
                            number: builtins.int = ...,
                        ) -> None: ...
                        def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> builtins.bool: ...
                        def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_number", b"has_number"]) -> typing.Literal["number"] | None: ...

                    @typing.final
                    class EventExceptionValuesMechanismMetaMachException(google.protobuf.message.Message):
                        """
                        A Mach Exception on Apple systems comprising a code triple and optional descriptions.
                        """

                        DESCRIPTOR: google.protobuf.descriptor.Descriptor

                        CODE_FIELD_NUMBER: builtins.int
                        EXCEPTION_FIELD_NUMBER: builtins.int
                        NAME_FIELD_NUMBER: builtins.int
                        SUBCODE_FIELD_NUMBER: builtins.int
                        code: builtins.int
                        exception: builtins.int
                        name: builtins.str
                        subcode: builtins.int
                        def __init__(
                            self,
                            *,
                            code: builtins.int = ...,
                            exception: builtins.int = ...,
                            name: builtins.str = ...,
                            subcode: builtins.int = ...,
                        ) -> None: ...
                        def HasField(self, field_name: typing.Literal["code", b"code", "exception", b"exception", "has_code", b"has_code", "has_exception", b"has_exception", "has_name", b"has_name", "has_subcode", b"has_subcode", "name", b"name", "subcode", b"subcode"]) -> builtins.bool: ...
                        def ClearField(self, field_name: typing.Literal["code", b"code", "exception", b"exception", "has_code", b"has_code", "has_exception", b"has_exception", "has_name", b"has_name", "has_subcode", b"has_subcode", "name", b"name", "subcode", b"subcode"]) -> None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_exception", b"has_exception"]) -> typing.Literal["exception"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_subcode", b"has_subcode"]) -> typing.Literal["subcode"] | None: ...

                    @typing.final
                    class EventExceptionValuesMechanismMetaNsError(google.protobuf.message.Message):
                        """
                        An NSError on Apple systems comprising code and signal.
                        """

                        DESCRIPTOR: google.protobuf.descriptor.Descriptor

                        CODE_FIELD_NUMBER: builtins.int
                        DOMAIN_FIELD_NUMBER: builtins.int
                        code: builtins.int
                        domain: builtins.str
                        def __init__(
                            self,
                            *,
                            code: builtins.int = ...,
                            domain: builtins.str = ...,
                        ) -> None: ...
                        def HasField(self, field_name: typing.Literal["code", b"code", "domain", b"domain", "has_code", b"has_code", "has_domain", b"has_domain"]) -> builtins.bool: ...
                        def ClearField(self, field_name: typing.Literal["code", b"code", "domain", b"domain", "has_code", b"has_code", "has_domain", b"has_domain"]) -> None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_domain", b"has_domain"]) -> typing.Literal["domain"] | None: ...

                    @typing.final
                    class EventExceptionValuesMechanismMetaSignal(google.protobuf.message.Message):
                        """
                        Information on the POSIX signal.
                        """

                        DESCRIPTOR: google.protobuf.descriptor.Descriptor

                        CODE_FIELD_NUMBER: builtins.int
                        CODE_NAME_FIELD_NUMBER: builtins.int
                        NAME_FIELD_NUMBER: builtins.int
                        NUMBER_FIELD_NUMBER: builtins.int
                        code: builtins.int
                        code_name: builtins.str
                        name: builtins.str
                        number: builtins.int
                        def __init__(
                            self,
                            *,
                            code: builtins.int = ...,
                            code_name: builtins.str = ...,
                            name: builtins.str = ...,
                            number: builtins.int = ...,
                        ) -> None: ...
                        def HasField(self, field_name: typing.Literal["code", b"code", "code_name", b"code_name", "has_code", b"has_code", "has_code_name", b"has_code_name", "has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> builtins.bool: ...
                        def ClearField(self, field_name: typing.Literal["code", b"code", "code_name", b"code_name", "has_code", b"has_code", "has_code_name", b"has_code_name", "has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_code_name", b"has_code_name"]) -> typing.Literal["code_name"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_number", b"has_number"]) -> typing.Literal["number"] | None: ...

                    ERRNO_FIELD_NUMBER: builtins.int
                    MACH_EXCEPTION_FIELD_NUMBER: builtins.int
                    NS_ERROR_FIELD_NUMBER: builtins.int
                    SIGNAL_FIELD_NUMBER: builtins.int
                    @property
                    def errno(self) -> global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism.EventExceptionValuesMechanismMeta.EventExceptionValuesMechanismMetaErrno: ...
                    @property
                    def mach_exception(self) -> global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism.EventExceptionValuesMechanismMeta.EventExceptionValuesMechanismMetaMachException: ...
                    @property
                    def ns_error(self) -> global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism.EventExceptionValuesMechanismMeta.EventExceptionValuesMechanismMetaNsError: ...
                    @property
                    def signal(self) -> global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism.EventExceptionValuesMechanismMeta.EventExceptionValuesMechanismMetaSignal: ...
                    def __init__(
                        self,
                        *,
                        errno: global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism.EventExceptionValuesMechanismMeta.EventExceptionValuesMechanismMetaErrno | None = ...,
                        mach_exception: global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism.EventExceptionValuesMechanismMeta.EventExceptionValuesMechanismMetaMachException | None = ...,
                        ns_error: global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism.EventExceptionValuesMechanismMeta.EventExceptionValuesMechanismMetaNsError | None = ...,
                        signal: global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism.EventExceptionValuesMechanismMeta.EventExceptionValuesMechanismMetaSignal | None = ...,
                    ) -> None: ...
                    def HasField(self, field_name: typing.Literal["errno", b"errno", "has_errno", b"has_errno", "has_mach_exception", b"has_mach_exception", "has_ns_error", b"has_ns_error", "has_signal", b"has_signal", "mach_exception", b"mach_exception", "ns_error", b"ns_error", "signal", b"signal"]) -> builtins.bool: ...
                    def ClearField(self, field_name: typing.Literal["errno", b"errno", "has_errno", b"has_errno", "has_mach_exception", b"has_mach_exception", "has_ns_error", b"has_ns_error", "has_signal", b"has_signal", "mach_exception", b"mach_exception", "ns_error", b"ns_error", "signal", b"signal"]) -> None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_errno", b"has_errno"]) -> typing.Literal["errno"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_mach_exception", b"has_mach_exception"]) -> typing.Literal["mach_exception"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_ns_error", b"has_ns_error"]) -> typing.Literal["ns_error"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_signal", b"has_signal"]) -> typing.Literal["signal"] | None: ...

                DATA_FIELD_NUMBER: builtins.int
                DESCRIPTION_FIELD_NUMBER: builtins.int
                EXCEPTION_ID_FIELD_NUMBER: builtins.int
                HANDLED_FIELD_NUMBER: builtins.int
                HELP_LINK_FIELD_NUMBER: builtins.int
                IS_EXCEPTION_GROUP_FIELD_NUMBER: builtins.int
                META_FIELD_NUMBER: builtins.int
                PARENT_ID_FIELD_NUMBER: builtins.int
                SOURCE_FIELD_NUMBER: builtins.int
                SYNTHETIC_FIELD_NUMBER: builtins.int
                TYPE_FIELD_NUMBER: builtins.int
                description: builtins.str
                exception_id: builtins.int
                handled: builtins.bool
                help_link: builtins.str
                is_exception_group: builtins.bool
                parent_id: builtins.int
                source: builtins.str
                synthetic: builtins.bool
                type: builtins.str
                @property
                def data(self) -> google.protobuf.struct_pb2.Value: ...
                @property
                def meta(self) -> global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism.EventExceptionValuesMechanismMeta: ...
                def __init__(
                    self,
                    *,
                    data: google.protobuf.struct_pb2.Value | None = ...,
                    description: builtins.str = ...,
                    exception_id: builtins.int = ...,
                    handled: builtins.bool = ...,
                    help_link: builtins.str = ...,
                    is_exception_group: builtins.bool = ...,
                    meta: global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism.EventExceptionValuesMechanismMeta | None = ...,
                    parent_id: builtins.int = ...,
                    source: builtins.str = ...,
                    synthetic: builtins.bool = ...,
                    type: builtins.str = ...,
                ) -> None: ...
                def HasField(self, field_name: typing.Literal["data", b"data", "description", b"description", "exception_id", b"exception_id", "handled", b"handled", "has_data", b"has_data", "has_description", b"has_description", "has_exception_id", b"has_exception_id", "has_handled", b"has_handled", "has_help_link", b"has_help_link", "has_is_exception_group", b"has_is_exception_group", "has_meta", b"has_meta", "has_parent_id", b"has_parent_id", "has_source", b"has_source", "has_synthetic", b"has_synthetic", "help_link", b"help_link", "is_exception_group", b"is_exception_group", "meta", b"meta", "parent_id", b"parent_id", "source", b"source", "synthetic", b"synthetic"]) -> builtins.bool: ...
                def ClearField(self, field_name: typing.Literal["data", b"data", "description", b"description", "exception_id", b"exception_id", "handled", b"handled", "has_data", b"has_data", "has_description", b"has_description", "has_exception_id", b"has_exception_id", "has_handled", b"has_handled", "has_help_link", b"has_help_link", "has_is_exception_group", b"has_is_exception_group", "has_meta", b"has_meta", "has_parent_id", b"has_parent_id", "has_source", b"has_source", "has_synthetic", b"has_synthetic", "help_link", b"help_link", "is_exception_group", b"is_exception_group", "meta", b"meta", "parent_id", b"parent_id", "source", b"source", "synthetic", b"synthetic", "type", b"type"]) -> None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_data", b"has_data"]) -> typing.Literal["data"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_description", b"has_description"]) -> typing.Literal["description"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_exception_id", b"has_exception_id"]) -> typing.Literal["exception_id"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_handled", b"has_handled"]) -> typing.Literal["handled"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_help_link", b"has_help_link"]) -> typing.Literal["help_link"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_is_exception_group", b"has_is_exception_group"]) -> typing.Literal["is_exception_group"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_meta", b"has_meta"]) -> typing.Literal["meta"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_parent_id", b"has_parent_id"]) -> typing.Literal["parent_id"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_source", b"has_source"]) -> typing.Literal["source"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_synthetic", b"has_synthetic"]) -> typing.Literal["synthetic"] | None: ...

            @typing.final
            class EventExceptionValuesStacktrace(google.protobuf.message.Message):
                """
                Stack trace containing frames of this exception.
                """

                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                @typing.final
                class EventExceptionValuesStacktraceFrames(google.protobuf.message.Message):
                    """
                    Required. A non-empty list of stack frames. The list is ordered from caller to callee, or
                    oldest to youngest. The last frame is the one creating the exception.
                    """

                    DESCRIPTOR: google.protobuf.descriptor.Descriptor

                    @typing.final
                    class EventExceptionValuesStacktraceFramesLock(google.protobuf.message.Message):
                        """
                        A possible lock (java monitor object) held by this frame.
                        """

                        DESCRIPTOR: google.protobuf.descriptor.Descriptor

                        ADDRESS_FIELD_NUMBER: builtins.int
                        CLASS_NAME_FIELD_NUMBER: builtins.int
                        PACKAGE_NAME_FIELD_NUMBER: builtins.int
                        THREAD_ID_FIELD_NUMBER: builtins.int
                        TYPE_FIELD_NUMBER: builtins.int
                        address: builtins.str
                        class_name: builtins.str
                        package_name: builtins.str
                        type: builtins.str
                        @property
                        def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
                        def __init__(
                            self,
                            *,
                            address: builtins.str = ...,
                            class_name: builtins.str = ...,
                            package_name: builtins.str = ...,
                            thread_id: google.protobuf.struct_pb2.Value | None = ...,
                            type: builtins.str = ...,
                        ) -> None: ...
                        def HasField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id"]) -> builtins.bool: ...
                        def ClearField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id", "type", b"type"]) -> None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_address", b"has_address"]) -> typing.Literal["address"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_class_name", b"has_class_name"]) -> typing.Literal["class_name"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_package_name", b"has_package_name"]) -> typing.Literal["package_name"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...

                    ABS_PATH_FIELD_NUMBER: builtins.int
                    ADDR_MODE_FIELD_NUMBER: builtins.int
                    COLNO_FIELD_NUMBER: builtins.int
                    CONTEXT_LINE_FIELD_NUMBER: builtins.int
                    FILENAME_FIELD_NUMBER: builtins.int
                    FUNCTION_FIELD_NUMBER: builtins.int
                    FUNCTION_ID_FIELD_NUMBER: builtins.int
                    IMAGE_ADDR_FIELD_NUMBER: builtins.int
                    IN_APP_FIELD_NUMBER: builtins.int
                    INSTRUCTION_ADDR_FIELD_NUMBER: builtins.int
                    LINENO_FIELD_NUMBER: builtins.int
                    LOCK_FIELD_NUMBER: builtins.int
                    MODULE_FIELD_NUMBER: builtins.int
                    PACKAGE_FIELD_NUMBER: builtins.int
                    PLATFORM_FIELD_NUMBER: builtins.int
                    POST_CONTEXT_FIELD_NUMBER: builtins.int
                    PRE_CONTEXT_FIELD_NUMBER: builtins.int
                    RAW_FUNCTION_FIELD_NUMBER: builtins.int
                    STACK_START_FIELD_NUMBER: builtins.int
                    SYMBOL_FIELD_NUMBER: builtins.int
                    SYMBOL_ADDR_FIELD_NUMBER: builtins.int
                    VARS_FIELD_NUMBER: builtins.int
                    abs_path: builtins.str
                    addr_mode: builtins.str
                    colno: builtins.int
                    context_line: builtins.str
                    filename: builtins.str
                    function: builtins.str
                    function_id: builtins.str
                    image_addr: builtins.str
                    in_app: builtins.bool
                    instruction_addr: builtins.str
                    lineno: builtins.int
                    module: builtins.str
                    package: builtins.str
                    platform: builtins.str
                    raw_function: builtins.str
                    stack_start: builtins.bool
                    symbol: builtins.str
                    symbol_addr: builtins.str
                    @property
                    def lock(self) -> global___Event.EventException.EventExceptionValues.EventExceptionValuesStacktrace.EventExceptionValuesStacktraceFrames.EventExceptionValuesStacktraceFramesLock: ...
                    @property
                    def post_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
                    @property
                    def pre_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
                    @property
                    def vars(self) -> google.protobuf.struct_pb2.Value: ...
                    def __init__(
                        self,
                        *,
                        abs_path: builtins.str = ...,
                        addr_mode: builtins.str = ...,
                        colno: builtins.int = ...,
                        context_line: builtins.str = ...,
                        filename: builtins.str = ...,
                        function: builtins.str = ...,
                        function_id: builtins.str = ...,
                        image_addr: builtins.str = ...,
                        in_app: builtins.bool = ...,
                        instruction_addr: builtins.str = ...,
                        lineno: builtins.int = ...,
                        lock: global___Event.EventException.EventExceptionValues.EventExceptionValuesStacktrace.EventExceptionValuesStacktraceFrames.EventExceptionValuesStacktraceFramesLock | None = ...,
                        module: builtins.str = ...,
                        package: builtins.str = ...,
                        platform: builtins.str = ...,
                        post_context: collections.abc.Iterable[builtins.str] | None = ...,
                        pre_context: collections.abc.Iterable[builtins.str] | None = ...,
                        raw_function: builtins.str = ...,
                        stack_start: builtins.bool = ...,
                        symbol: builtins.str = ...,
                        symbol_addr: builtins.str = ...,
                        vars: google.protobuf.struct_pb2.Value | None = ...,
                    ) -> None: ...
                    def HasField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> builtins.bool: ...
                    def ClearField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "post_context", b"post_context", "pre_context", b"pre_context", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_abs_path", b"has_abs_path"]) -> typing.Literal["abs_path"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_addr_mode", b"has_addr_mode"]) -> typing.Literal["addr_mode"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_colno", b"has_colno"]) -> typing.Literal["colno"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_context_line", b"has_context_line"]) -> typing.Literal["context_line"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_filename", b"has_filename"]) -> typing.Literal["filename"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_function", b"has_function"]) -> typing.Literal["function"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_function_id", b"has_function_id"]) -> typing.Literal["function_id"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_image_addr", b"has_image_addr"]) -> typing.Literal["image_addr"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_in_app", b"has_in_app"]) -> typing.Literal["in_app"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr", b"has_instruction_addr"]) -> typing.Literal["instruction_addr"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_lineno", b"has_lineno"]) -> typing.Literal["lineno"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_lock", b"has_lock"]) -> typing.Literal["lock"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_module", b"has_module"]) -> typing.Literal["module"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_package", b"has_package"]) -> typing.Literal["package"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_platform", b"has_platform"]) -> typing.Literal["platform"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_raw_function", b"has_raw_function"]) -> typing.Literal["raw_function"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_stack_start", b"has_stack_start"]) -> typing.Literal["stack_start"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_symbol", b"has_symbol"]) -> typing.Literal["symbol"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_symbol_addr", b"has_symbol_addr"]) -> typing.Literal["symbol_addr"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_vars", b"has_vars"]) -> typing.Literal["vars"] | None: ...

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

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

                FRAMES_FIELD_NUMBER: builtins.int
                INSTRUCTION_ADDR_ADJUSTMENT_FIELD_NUMBER: builtins.int
                LANG_FIELD_NUMBER: builtins.int
                REGISTERS_FIELD_NUMBER: builtins.int
                SNAPSHOT_FIELD_NUMBER: builtins.int
                instruction_addr_adjustment: builtins.str
                lang: builtins.str
                snapshot: builtins.bool
                @property
                def frames(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Event.EventException.EventExceptionValues.EventExceptionValuesStacktrace.EventExceptionValuesStacktraceFrames]: ...
                @property
                def registers(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
                def __init__(
                    self,
                    *,
                    frames: collections.abc.Iterable[global___Event.EventException.EventExceptionValues.EventExceptionValuesStacktrace.EventExceptionValuesStacktraceFrames] | None = ...,
                    instruction_addr_adjustment: builtins.str = ...,
                    lang: builtins.str = ...,
                    registers: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
                    snapshot: builtins.bool = ...,
                ) -> None: ...
                def HasField(self, field_name: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "snapshot", b"snapshot"]) -> builtins.bool: ...
                def ClearField(self, field_name: typing.Literal["frames", b"frames", "has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "registers", b"registers", "snapshot", b"snapshot"]) -> None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment"]) -> typing.Literal["instruction_addr_adjustment"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_lang", b"has_lang"]) -> typing.Literal["lang"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_snapshot", b"has_snapshot"]) -> typing.Literal["snapshot"] | None: ...

            MECHANISM_FIELD_NUMBER: builtins.int
            MODULE_FIELD_NUMBER: builtins.int
            STACKTRACE_FIELD_NUMBER: builtins.int
            THREAD_ID_FIELD_NUMBER: builtins.int
            TYPE_FIELD_NUMBER: builtins.int
            VALUE_FIELD_NUMBER: builtins.int
            module: builtins.str
            type: builtins.str
            value: builtins.str
            @property
            def mechanism(self) -> global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism: ...
            @property
            def stacktrace(self) -> global___Event.EventException.EventExceptionValues.EventExceptionValuesStacktrace: ...
            @property
            def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
            def __init__(
                self,
                *,
                mechanism: global___Event.EventException.EventExceptionValues.EventExceptionValuesMechanism | None = ...,
                module: builtins.str = ...,
                stacktrace: global___Event.EventException.EventExceptionValues.EventExceptionValuesStacktrace | None = ...,
                thread_id: google.protobuf.struct_pb2.Value | None = ...,
                type: builtins.str = ...,
                value: builtins.str = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["has_mechanism", b"has_mechanism", "has_module", b"has_module", "has_stacktrace", b"has_stacktrace", "has_thread_id", b"has_thread_id", "has_type", b"has_type", "has_value", b"has_value", "mechanism", b"mechanism", "module", b"module", "stacktrace", b"stacktrace", "thread_id", b"thread_id", "type", b"type", "value", b"value"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["has_mechanism", b"has_mechanism", "has_module", b"has_module", "has_stacktrace", b"has_stacktrace", "has_thread_id", b"has_thread_id", "has_type", b"has_type", "has_value", b"has_value", "mechanism", b"mechanism", "module", b"module", "stacktrace", b"stacktrace", "thread_id", b"thread_id", "type", b"type", "value", b"value"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_mechanism", b"has_mechanism"]) -> typing.Literal["mechanism"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_module", b"has_module"]) -> typing.Literal["module"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_stacktrace", b"has_stacktrace"]) -> typing.Literal["stacktrace"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_type", b"has_type"]) -> typing.Literal["type"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_value", b"has_value"]) -> typing.Literal["value"] | None: ...

        VALUES_FIELD_NUMBER: builtins.int
        @property
        def values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Event.EventException.EventExceptionValues]: ...
        def __init__(
            self,
            *,
            values: collections.abc.Iterable[global___Event.EventException.EventExceptionValues] | None = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing.Literal["values", b"values"]) -> None: ...

    @typing.final
    class EventLogentry(google.protobuf.message.Message):
        """
        Custom parameterized message for this event.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        FORMATTED_FIELD_NUMBER: builtins.int
        MESSAGE_FIELD_NUMBER: builtins.int
        PARAMS_FIELD_NUMBER: builtins.int
        formatted: builtins.str
        message: builtins.str
        @property
        def params(self) -> google.protobuf.struct_pb2.Value: ...
        def __init__(
            self,
            *,
            formatted: builtins.str = ...,
            message: builtins.str = ...,
            params: google.protobuf.struct_pb2.Value | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["formatted", b"formatted", "has_formatted", b"has_formatted", "has_message", b"has_message", "message", b"message", "params", b"params"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["formatted", b"formatted", "has_formatted", b"has_formatted", "has_message", b"has_message", "message", b"message", "params", b"params"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_formatted", b"has_formatted"]) -> typing.Literal["formatted"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_message", b"has_message"]) -> typing.Literal["message"] | None: ...

    @typing.final
    class EventRequest(google.protobuf.message.Message):
        """
        Information about a web request that occurred during the event.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        API_TARGET_FIELD_NUMBER: builtins.int
        BODY_SIZE_FIELD_NUMBER: builtins.int
        COOKIES_FIELD_NUMBER: builtins.int
        DATA_FIELD_NUMBER: builtins.int
        ENV_FIELD_NUMBER: builtins.int
        FRAGMENT_FIELD_NUMBER: builtins.int
        HEADERS_FIELD_NUMBER: builtins.int
        INFERRED_CONTENT_TYPE_FIELD_NUMBER: builtins.int
        METHOD_FIELD_NUMBER: builtins.int
        PROTOCOL_FIELD_NUMBER: builtins.int
        QUERY_STRING_FIELD_NUMBER: builtins.int
        URL_FIELD_NUMBER: builtins.int
        api_target: builtins.str
        body_size: builtins.int
        fragment: builtins.str
        inferred_content_type: builtins.str
        method: builtins.str
        protocol: builtins.str
        url: builtins.str
        @property
        def cookies(self) -> google.protobuf.struct_pb2.Value: ...
        @property
        def data(self) -> google.protobuf.struct_pb2.Value: ...
        @property
        def env(self) -> google.protobuf.struct_pb2.Value: ...
        @property
        def headers(self) -> google.protobuf.struct_pb2.Value: ...
        @property
        def query_string(self) -> google.protobuf.struct_pb2.Value: ...
        def __init__(
            self,
            *,
            api_target: builtins.str = ...,
            body_size: builtins.int = ...,
            cookies: google.protobuf.struct_pb2.Value | None = ...,
            data: google.protobuf.struct_pb2.Value | None = ...,
            env: google.protobuf.struct_pb2.Value | None = ...,
            fragment: builtins.str = ...,
            headers: google.protobuf.struct_pb2.Value | None = ...,
            inferred_content_type: builtins.str = ...,
            method: builtins.str = ...,
            protocol: builtins.str = ...,
            query_string: google.protobuf.struct_pb2.Value | None = ...,
            url: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["api_target", b"api_target", "body_size", b"body_size", "cookies", b"cookies", "data", b"data", "env", b"env", "fragment", b"fragment", "has_api_target", b"has_api_target", "has_body_size", b"has_body_size", "has_cookies", b"has_cookies", "has_env", b"has_env", "has_fragment", b"has_fragment", "has_headers", b"has_headers", "has_inferred_content_type", b"has_inferred_content_type", "has_method", b"has_method", "has_protocol", b"has_protocol", "has_query_string", b"has_query_string", "has_url", b"has_url", "headers", b"headers", "inferred_content_type", b"inferred_content_type", "method", b"method", "protocol", b"protocol", "query_string", b"query_string", "url", b"url"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["api_target", b"api_target", "body_size", b"body_size", "cookies", b"cookies", "data", b"data", "env", b"env", "fragment", b"fragment", "has_api_target", b"has_api_target", "has_body_size", b"has_body_size", "has_cookies", b"has_cookies", "has_env", b"has_env", "has_fragment", b"has_fragment", "has_headers", b"has_headers", "has_inferred_content_type", b"has_inferred_content_type", "has_method", b"has_method", "has_protocol", b"has_protocol", "has_query_string", b"has_query_string", "has_url", b"has_url", "headers", b"headers", "inferred_content_type", b"inferred_content_type", "method", b"method", "protocol", b"protocol", "query_string", b"query_string", "url", b"url"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_api_target", b"has_api_target"]) -> typing.Literal["api_target"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_body_size", b"has_body_size"]) -> typing.Literal["body_size"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_cookies", b"has_cookies"]) -> typing.Literal["cookies"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_env", b"has_env"]) -> typing.Literal["env"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_fragment", b"has_fragment"]) -> typing.Literal["fragment"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_headers", b"has_headers"]) -> typing.Literal["headers"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_inferred_content_type", b"has_inferred_content_type"]) -> typing.Literal["inferred_content_type"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_method", b"has_method"]) -> typing.Literal["method"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_protocol", b"has_protocol"]) -> typing.Literal["protocol"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_query_string", b"has_query_string"]) -> typing.Literal["query_string"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_url", b"has_url"]) -> typing.Literal["url"] | None: ...

    @typing.final
    class EventSdk(google.protobuf.message.Message):
        """
        Information about the Sentry SDK that generated this event.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class EventSdkPackages(google.protobuf.message.Message):
            """
            List of installed and loaded SDK packages. _Optional._

            A list of packages that were installed as part of this SDK or the activated integrations.
            Each package consists of a name in the format `source:identifier` and `version`. If the
            source is a Git repository, the `source` should be `git`, the identifier should be a
            checkout link and the version should be a Git reference (branch, tag or SHA).
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            NAME_FIELD_NUMBER: builtins.int
            VERSION_FIELD_NUMBER: builtins.int
            name: builtins.str
            version: builtins.str
            def __init__(
                self,
                *,
                name: builtins.str = ...,
                version: builtins.str = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_version", b"has_version", "name", b"name", "version", b"version"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_version", b"has_version", "name", b"name", "version", b"version"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_version", b"has_version"]) -> typing.Literal["version"] | None: ...

        INTEGRATIONS_FIELD_NUMBER: builtins.int
        NAME_FIELD_NUMBER: builtins.int
        PACKAGES_FIELD_NUMBER: builtins.int
        VERSION_FIELD_NUMBER: builtins.int
        name: builtins.str
        version: builtins.str
        @property
        def integrations(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
        @property
        def packages(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Event.EventSdk.EventSdkPackages]: ...
        def __init__(
            self,
            *,
            integrations: collections.abc.Iterable[builtins.str] | None = ...,
            name: builtins.str = ...,
            packages: collections.abc.Iterable[global___Event.EventSdk.EventSdkPackages] | None = ...,
            version: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing.Literal["integrations", b"integrations", "name", b"name", "packages", b"packages", "version", b"version"]) -> None: ...

    @typing.final
    class EventStacktrace(google.protobuf.message.Message):
        """
        Event stacktrace.

        DEPRECATED: Prefer `threads` or `exception` depending on which is more appropriate.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class EventStacktraceFrames(google.protobuf.message.Message):
            """
            Required. A non-empty list of stack frames. The list is ordered from caller to callee, or
            oldest to youngest. The last frame is the one creating the exception.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            @typing.final
            class EventStacktraceFramesLock(google.protobuf.message.Message):
                """
                A possible lock (java monitor object) held by this frame.
                """

                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                ADDRESS_FIELD_NUMBER: builtins.int
                CLASS_NAME_FIELD_NUMBER: builtins.int
                PACKAGE_NAME_FIELD_NUMBER: builtins.int
                THREAD_ID_FIELD_NUMBER: builtins.int
                TYPE_FIELD_NUMBER: builtins.int
                address: builtins.str
                class_name: builtins.str
                package_name: builtins.str
                type: builtins.str
                @property
                def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
                def __init__(
                    self,
                    *,
                    address: builtins.str = ...,
                    class_name: builtins.str = ...,
                    package_name: builtins.str = ...,
                    thread_id: google.protobuf.struct_pb2.Value | None = ...,
                    type: builtins.str = ...,
                ) -> None: ...
                def HasField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id"]) -> builtins.bool: ...
                def ClearField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id", "type", b"type"]) -> None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_address", b"has_address"]) -> typing.Literal["address"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_class_name", b"has_class_name"]) -> typing.Literal["class_name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_package_name", b"has_package_name"]) -> typing.Literal["package_name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...

            ABS_PATH_FIELD_NUMBER: builtins.int
            ADDR_MODE_FIELD_NUMBER: builtins.int
            COLNO_FIELD_NUMBER: builtins.int
            CONTEXT_LINE_FIELD_NUMBER: builtins.int
            FILENAME_FIELD_NUMBER: builtins.int
            FUNCTION_FIELD_NUMBER: builtins.int
            FUNCTION_ID_FIELD_NUMBER: builtins.int
            IMAGE_ADDR_FIELD_NUMBER: builtins.int
            IN_APP_FIELD_NUMBER: builtins.int
            INSTRUCTION_ADDR_FIELD_NUMBER: builtins.int
            LINENO_FIELD_NUMBER: builtins.int
            LOCK_FIELD_NUMBER: builtins.int
            MODULE_FIELD_NUMBER: builtins.int
            PACKAGE_FIELD_NUMBER: builtins.int
            PLATFORM_FIELD_NUMBER: builtins.int
            POST_CONTEXT_FIELD_NUMBER: builtins.int
            PRE_CONTEXT_FIELD_NUMBER: builtins.int
            RAW_FUNCTION_FIELD_NUMBER: builtins.int
            STACK_START_FIELD_NUMBER: builtins.int
            SYMBOL_FIELD_NUMBER: builtins.int
            SYMBOL_ADDR_FIELD_NUMBER: builtins.int
            VARS_FIELD_NUMBER: builtins.int
            abs_path: builtins.str
            addr_mode: builtins.str
            colno: builtins.int
            context_line: builtins.str
            filename: builtins.str
            function: builtins.str
            function_id: builtins.str
            image_addr: builtins.str
            in_app: builtins.bool
            instruction_addr: builtins.str
            lineno: builtins.int
            module: builtins.str
            package: builtins.str
            platform: builtins.str
            raw_function: builtins.str
            stack_start: builtins.bool
            symbol: builtins.str
            symbol_addr: builtins.str
            @property
            def lock(self) -> global___Event.EventStacktrace.EventStacktraceFrames.EventStacktraceFramesLock: ...
            @property
            def post_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
            @property
            def pre_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
            @property
            def vars(self) -> google.protobuf.struct_pb2.Value: ...
            def __init__(
                self,
                *,
                abs_path: builtins.str = ...,
                addr_mode: builtins.str = ...,
                colno: builtins.int = ...,
                context_line: builtins.str = ...,
                filename: builtins.str = ...,
                function: builtins.str = ...,
                function_id: builtins.str = ...,
                image_addr: builtins.str = ...,
                in_app: builtins.bool = ...,
                instruction_addr: builtins.str = ...,
                lineno: builtins.int = ...,
                lock: global___Event.EventStacktrace.EventStacktraceFrames.EventStacktraceFramesLock | None = ...,
                module: builtins.str = ...,
                package: builtins.str = ...,
                platform: builtins.str = ...,
                post_context: collections.abc.Iterable[builtins.str] | None = ...,
                pre_context: collections.abc.Iterable[builtins.str] | None = ...,
                raw_function: builtins.str = ...,
                stack_start: builtins.bool = ...,
                symbol: builtins.str = ...,
                symbol_addr: builtins.str = ...,
                vars: google.protobuf.struct_pb2.Value | None = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "post_context", b"post_context", "pre_context", b"pre_context", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_abs_path", b"has_abs_path"]) -> typing.Literal["abs_path"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_addr_mode", b"has_addr_mode"]) -> typing.Literal["addr_mode"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_colno", b"has_colno"]) -> typing.Literal["colno"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_context_line", b"has_context_line"]) -> typing.Literal["context_line"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_filename", b"has_filename"]) -> typing.Literal["filename"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_function", b"has_function"]) -> typing.Literal["function"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_function_id", b"has_function_id"]) -> typing.Literal["function_id"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_image_addr", b"has_image_addr"]) -> typing.Literal["image_addr"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_in_app", b"has_in_app"]) -> typing.Literal["in_app"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr", b"has_instruction_addr"]) -> typing.Literal["instruction_addr"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_lineno", b"has_lineno"]) -> typing.Literal["lineno"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_lock", b"has_lock"]) -> typing.Literal["lock"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_module", b"has_module"]) -> typing.Literal["module"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_package", b"has_package"]) -> typing.Literal["package"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_platform", b"has_platform"]) -> typing.Literal["platform"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_raw_function", b"has_raw_function"]) -> typing.Literal["raw_function"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_stack_start", b"has_stack_start"]) -> typing.Literal["stack_start"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_symbol", b"has_symbol"]) -> typing.Literal["symbol"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_symbol_addr", b"has_symbol_addr"]) -> typing.Literal["symbol_addr"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_vars", b"has_vars"]) -> typing.Literal["vars"] | None: ...

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

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

        FRAMES_FIELD_NUMBER: builtins.int
        INSTRUCTION_ADDR_ADJUSTMENT_FIELD_NUMBER: builtins.int
        LANG_FIELD_NUMBER: builtins.int
        REGISTERS_FIELD_NUMBER: builtins.int
        SNAPSHOT_FIELD_NUMBER: builtins.int
        instruction_addr_adjustment: builtins.str
        lang: builtins.str
        snapshot: builtins.bool
        @property
        def frames(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Event.EventStacktrace.EventStacktraceFrames]: ...
        @property
        def registers(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
        def __init__(
            self,
            *,
            frames: collections.abc.Iterable[global___Event.EventStacktrace.EventStacktraceFrames] | None = ...,
            instruction_addr_adjustment: builtins.str = ...,
            lang: builtins.str = ...,
            registers: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
            snapshot: builtins.bool = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "snapshot", b"snapshot"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["frames", b"frames", "has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "registers", b"registers", "snapshot", b"snapshot"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment"]) -> typing.Literal["instruction_addr_adjustment"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_lang", b"has_lang"]) -> typing.Literal["lang"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_snapshot", b"has_snapshot"]) -> typing.Literal["snapshot"] | None: ...

    @typing.final
    class EventThreads(google.protobuf.message.Message):
        """
        Threads that were active when the event occurred.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

            @typing.final
            class EventThreadsValuesHeldLocks(google.protobuf.message.Message):
                """
                Represents a collection of locks (java monitor objects) held by a thread.

                A map of lock object addresses and their respective lock reason/details.
                """

                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                ADDRESS_FIELD_NUMBER: builtins.int
                CLASS_NAME_FIELD_NUMBER: builtins.int
                PACKAGE_NAME_FIELD_NUMBER: builtins.int
                THREAD_ID_FIELD_NUMBER: builtins.int
                TYPE_FIELD_NUMBER: builtins.int
                address: builtins.str
                class_name: builtins.str
                package_name: builtins.str
                type: builtins.str
                @property
                def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
                def __init__(
                    self,
                    *,
                    address: builtins.str = ...,
                    class_name: builtins.str = ...,
                    package_name: builtins.str = ...,
                    thread_id: google.protobuf.struct_pb2.Value | None = ...,
                    type: builtins.str = ...,
                ) -> None: ...
                def HasField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id"]) -> builtins.bool: ...
                def ClearField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id", "type", b"type"]) -> None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_address", b"has_address"]) -> typing.Literal["address"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_class_name", b"has_class_name"]) -> typing.Literal["class_name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_package_name", b"has_package_name"]) -> typing.Literal["package_name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...

            @typing.final
            class EventThreadsValuesStacktrace(google.protobuf.message.Message):
                """
                Stack trace containing frames of this exception.

                The thread that crashed with an exception should not have a stack trace, but instead, the `thread_id` attribute should be set on the exception and Sentry will connect the two.
                """

                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                @typing.final
                class EventThreadsValuesStacktraceFrames(google.protobuf.message.Message):
                    """
                    Required. A non-empty list of stack frames. The list is ordered from caller to callee, or
                    oldest to youngest. The last frame is the one creating the exception.
                    """

                    DESCRIPTOR: google.protobuf.descriptor.Descriptor

                    @typing.final
                    class EventThreadsValuesStacktraceFramesLock(google.protobuf.message.Message):
                        """
                        A possible lock (java monitor object) held by this frame.
                        """

                        DESCRIPTOR: google.protobuf.descriptor.Descriptor

                        ADDRESS_FIELD_NUMBER: builtins.int
                        CLASS_NAME_FIELD_NUMBER: builtins.int
                        PACKAGE_NAME_FIELD_NUMBER: builtins.int
                        THREAD_ID_FIELD_NUMBER: builtins.int
                        TYPE_FIELD_NUMBER: builtins.int
                        address: builtins.str
                        class_name: builtins.str
                        package_name: builtins.str
                        type: builtins.str
                        @property
                        def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
                        def __init__(
                            self,
                            *,
                            address: builtins.str = ...,
                            class_name: builtins.str = ...,
                            package_name: builtins.str = ...,
                            thread_id: google.protobuf.struct_pb2.Value | None = ...,
                            type: builtins.str = ...,
                        ) -> None: ...
                        def HasField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id"]) -> builtins.bool: ...
                        def ClearField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id", "type", b"type"]) -> None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_address", b"has_address"]) -> typing.Literal["address"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_class_name", b"has_class_name"]) -> typing.Literal["class_name"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_package_name", b"has_package_name"]) -> typing.Literal["package_name"] | None: ...
                        @typing.overload
                        def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...

                    ABS_PATH_FIELD_NUMBER: builtins.int
                    ADDR_MODE_FIELD_NUMBER: builtins.int
                    COLNO_FIELD_NUMBER: builtins.int
                    CONTEXT_LINE_FIELD_NUMBER: builtins.int
                    FILENAME_FIELD_NUMBER: builtins.int
                    FUNCTION_FIELD_NUMBER: builtins.int
                    FUNCTION_ID_FIELD_NUMBER: builtins.int
                    IMAGE_ADDR_FIELD_NUMBER: builtins.int
                    IN_APP_FIELD_NUMBER: builtins.int
                    INSTRUCTION_ADDR_FIELD_NUMBER: builtins.int
                    LINENO_FIELD_NUMBER: builtins.int
                    LOCK_FIELD_NUMBER: builtins.int
                    MODULE_FIELD_NUMBER: builtins.int
                    PACKAGE_FIELD_NUMBER: builtins.int
                    PLATFORM_FIELD_NUMBER: builtins.int
                    POST_CONTEXT_FIELD_NUMBER: builtins.int
                    PRE_CONTEXT_FIELD_NUMBER: builtins.int
                    RAW_FUNCTION_FIELD_NUMBER: builtins.int
                    STACK_START_FIELD_NUMBER: builtins.int
                    SYMBOL_FIELD_NUMBER: builtins.int
                    SYMBOL_ADDR_FIELD_NUMBER: builtins.int
                    VARS_FIELD_NUMBER: builtins.int
                    abs_path: builtins.str
                    addr_mode: builtins.str
                    colno: builtins.int
                    context_line: builtins.str
                    filename: builtins.str
                    function: builtins.str
                    function_id: builtins.str
                    image_addr: builtins.str
                    in_app: builtins.bool
                    instruction_addr: builtins.str
                    lineno: builtins.int
                    module: builtins.str
                    package: builtins.str
                    platform: builtins.str
                    raw_function: builtins.str
                    stack_start: builtins.bool
                    symbol: builtins.str
                    symbol_addr: builtins.str
                    @property
                    def lock(self) -> global___Event.EventThreads.EventThreadsValues.EventThreadsValuesStacktrace.EventThreadsValuesStacktraceFrames.EventThreadsValuesStacktraceFramesLock: ...
                    @property
                    def post_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
                    @property
                    def pre_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
                    @property
                    def vars(self) -> google.protobuf.struct_pb2.Value: ...
                    def __init__(
                        self,
                        *,
                        abs_path: builtins.str = ...,
                        addr_mode: builtins.str = ...,
                        colno: builtins.int = ...,
                        context_line: builtins.str = ...,
                        filename: builtins.str = ...,
                        function: builtins.str = ...,
                        function_id: builtins.str = ...,
                        image_addr: builtins.str = ...,
                        in_app: builtins.bool = ...,
                        instruction_addr: builtins.str = ...,
                        lineno: builtins.int = ...,
                        lock: global___Event.EventThreads.EventThreadsValues.EventThreadsValuesStacktrace.EventThreadsValuesStacktraceFrames.EventThreadsValuesStacktraceFramesLock | None = ...,
                        module: builtins.str = ...,
                        package: builtins.str = ...,
                        platform: builtins.str = ...,
                        post_context: collections.abc.Iterable[builtins.str] | None = ...,
                        pre_context: collections.abc.Iterable[builtins.str] | None = ...,
                        raw_function: builtins.str = ...,
                        stack_start: builtins.bool = ...,
                        symbol: builtins.str = ...,
                        symbol_addr: builtins.str = ...,
                        vars: google.protobuf.struct_pb2.Value | None = ...,
                    ) -> None: ...
                    def HasField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> builtins.bool: ...
                    def ClearField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "post_context", b"post_context", "pre_context", b"pre_context", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_abs_path", b"has_abs_path"]) -> typing.Literal["abs_path"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_addr_mode", b"has_addr_mode"]) -> typing.Literal["addr_mode"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_colno", b"has_colno"]) -> typing.Literal["colno"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_context_line", b"has_context_line"]) -> typing.Literal["context_line"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_filename", b"has_filename"]) -> typing.Literal["filename"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_function", b"has_function"]) -> typing.Literal["function"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_function_id", b"has_function_id"]) -> typing.Literal["function_id"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_image_addr", b"has_image_addr"]) -> typing.Literal["image_addr"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_in_app", b"has_in_app"]) -> typing.Literal["in_app"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr", b"has_instruction_addr"]) -> typing.Literal["instruction_addr"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_lineno", b"has_lineno"]) -> typing.Literal["lineno"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_lock", b"has_lock"]) -> typing.Literal["lock"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_module", b"has_module"]) -> typing.Literal["module"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_package", b"has_package"]) -> typing.Literal["package"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_platform", b"has_platform"]) -> typing.Literal["platform"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_raw_function", b"has_raw_function"]) -> typing.Literal["raw_function"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_stack_start", b"has_stack_start"]) -> typing.Literal["stack_start"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_symbol", b"has_symbol"]) -> typing.Literal["symbol"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_symbol_addr", b"has_symbol_addr"]) -> typing.Literal["symbol_addr"] | None: ...
                    @typing.overload
                    def WhichOneof(self, oneof_group: typing.Literal["has_vars", b"has_vars"]) -> typing.Literal["vars"] | None: ...

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

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

                FRAMES_FIELD_NUMBER: builtins.int
                INSTRUCTION_ADDR_ADJUSTMENT_FIELD_NUMBER: builtins.int
                LANG_FIELD_NUMBER: builtins.int
                REGISTERS_FIELD_NUMBER: builtins.int
                SNAPSHOT_FIELD_NUMBER: builtins.int
                instruction_addr_adjustment: builtins.str
                lang: builtins.str
                snapshot: builtins.bool
                @property
                def frames(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Event.EventThreads.EventThreadsValues.EventThreadsValuesStacktrace.EventThreadsValuesStacktraceFrames]: ...
                @property
                def registers(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
                def __init__(
                    self,
                    *,
                    frames: collections.abc.Iterable[global___Event.EventThreads.EventThreadsValues.EventThreadsValuesStacktrace.EventThreadsValuesStacktraceFrames] | None = ...,
                    instruction_addr_adjustment: builtins.str = ...,
                    lang: builtins.str = ...,
                    registers: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
                    snapshot: builtins.bool = ...,
                ) -> None: ...
                def HasField(self, field_name: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "snapshot", b"snapshot"]) -> builtins.bool: ...
                def ClearField(self, field_name: typing.Literal["frames", b"frames", "has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "registers", b"registers", "snapshot", b"snapshot"]) -> None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment"]) -> typing.Literal["instruction_addr_adjustment"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_lang", b"has_lang"]) -> typing.Literal["lang"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_snapshot", b"has_snapshot"]) -> typing.Literal["snapshot"] | None: ...

            @typing.final
            class HeldLocksEntry(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___Event.EventThreads.EventThreadsValues.EventThreadsValuesHeldLocks: ...
                def __init__(
                    self,
                    *,
                    key: builtins.str = ...,
                    value: global___Event.EventThreads.EventThreadsValues.EventThreadsValuesHeldLocks | 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: ...

            CRASHED_FIELD_NUMBER: builtins.int
            CURRENT_FIELD_NUMBER: builtins.int
            HELD_LOCKS_FIELD_NUMBER: builtins.int
            ID_FIELD_NUMBER: builtins.int
            MAIN_FIELD_NUMBER: builtins.int
            NAME_FIELD_NUMBER: builtins.int
            STACKTRACE_FIELD_NUMBER: builtins.int
            STATE_FIELD_NUMBER: builtins.int
            crashed: builtins.bool
            current: builtins.bool
            main: builtins.bool
            name: builtins.str
            state: builtins.str
            @property
            def held_locks(self) -> google.protobuf.internal.containers.MessageMap[builtins.str, global___Event.EventThreads.EventThreadsValues.EventThreadsValuesHeldLocks]: ...
            @property
            def id(self) -> google.protobuf.struct_pb2.Value: ...
            @property
            def stacktrace(self) -> global___Event.EventThreads.EventThreadsValues.EventThreadsValuesStacktrace: ...
            def __init__(
                self,
                *,
                crashed: builtins.bool = ...,
                current: builtins.bool = ...,
                held_locks: collections.abc.Mapping[builtins.str, global___Event.EventThreads.EventThreadsValues.EventThreadsValuesHeldLocks] | None = ...,
                id: google.protobuf.struct_pb2.Value | None = ...,
                main: builtins.bool = ...,
                name: builtins.str = ...,
                stacktrace: global___Event.EventThreads.EventThreadsValues.EventThreadsValuesStacktrace | None = ...,
                state: builtins.str = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["crashed", b"crashed", "current", b"current", "has_crashed", b"has_crashed", "has_current", b"has_current", "has_id", b"has_id", "has_main", b"has_main", "has_name", b"has_name", "has_stacktrace", b"has_stacktrace", "has_state", b"has_state", "id", b"id", "main", b"main", "name", b"name", "stacktrace", b"stacktrace", "state", b"state"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["crashed", b"crashed", "current", b"current", "has_crashed", b"has_crashed", "has_current", b"has_current", "has_id", b"has_id", "has_main", b"has_main", "has_name", b"has_name", "has_stacktrace", b"has_stacktrace", "has_state", b"has_state", "held_locks", b"held_locks", "id", b"id", "main", b"main", "name", b"name", "stacktrace", b"stacktrace", "state", b"state"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_crashed", b"has_crashed"]) -> typing.Literal["crashed"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_current", b"has_current"]) -> typing.Literal["current"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_id", b"has_id"]) -> typing.Literal["id"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_main", b"has_main"]) -> typing.Literal["main"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_stacktrace", b"has_stacktrace"]) -> typing.Literal["stacktrace"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_state", b"has_state"]) -> typing.Literal["state"] | None: ...

        VALUES_FIELD_NUMBER: builtins.int
        @property
        def values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Event.EventThreads.EventThreadsValues]: ...
        def __init__(
            self,
            *,
            values: collections.abc.Iterable[global___Event.EventThreads.EventThreadsValues] | None = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing.Literal["values", b"values"]) -> None: ...

    @typing.final
    class EventTransactionInfo(google.protobuf.message.Message):
        """
        Additional information about the name of the transaction.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class EventTransactionInfoChanges(google.protobuf.message.Message):
            """
            A list of changes prior to the final transaction name.

            This list must be empty if the transaction name is set at the beginning of the transaction
            and never changed. There is no placeholder entry for the initial transaction name.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            PROPAGATIONS_FIELD_NUMBER: builtins.int
            SOURCE_FIELD_NUMBER: builtins.int
            TIMESTAMP_FIELD_NUMBER: builtins.int
            propagations: builtins.int
            source: builtins.str
            @property
            def timestamp(self) -> google.protobuf.struct_pb2.Value: ...
            def __init__(
                self,
                *,
                propagations: builtins.int = ...,
                source: builtins.str = ...,
                timestamp: google.protobuf.struct_pb2.Value | None = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["has_propagations", b"has_propagations", "has_source", b"has_source", "has_timestamp", b"has_timestamp", "propagations", b"propagations", "source", b"source", "timestamp", b"timestamp"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["has_propagations", b"has_propagations", "has_source", b"has_source", "has_timestamp", b"has_timestamp", "propagations", b"propagations", "source", b"source", "timestamp", b"timestamp"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_propagations", b"has_propagations"]) -> typing.Literal["propagations"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_source", b"has_source"]) -> typing.Literal["source"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_timestamp", b"has_timestamp"]) -> typing.Literal["timestamp"] | None: ...

        CHANGES_FIELD_NUMBER: builtins.int
        ORIGINAL_FIELD_NUMBER: builtins.int
        PROPAGATIONS_FIELD_NUMBER: builtins.int
        SOURCE_FIELD_NUMBER: builtins.int
        original: builtins.str
        propagations: builtins.int
        source: builtins.str
        @property
        def changes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Event.EventTransactionInfo.EventTransactionInfoChanges]: ...
        def __init__(
            self,
            *,
            changes: collections.abc.Iterable[global___Event.EventTransactionInfo.EventTransactionInfoChanges] | None = ...,
            original: builtins.str = ...,
            propagations: builtins.int = ...,
            source: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_original", b"has_original", "has_propagations", b"has_propagations", "has_source", b"has_source", "original", b"original", "propagations", b"propagations", "source", b"source"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["changes", b"changes", "has_original", b"has_original", "has_propagations", b"has_propagations", "has_source", b"has_source", "original", b"original", "propagations", b"propagations", "source", b"source"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_original", b"has_original"]) -> typing.Literal["original"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_propagations", b"has_propagations"]) -> typing.Literal["propagations"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_source", b"has_source"]) -> typing.Literal["source"] | None: ...

    @typing.final
    class EventUser(google.protobuf.message.Message):
        """
        Information about the user who triggered this event.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class EventUserGeo(google.protobuf.message.Message):
            """
            Approximate geographical location of the end user or device.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            CITY_FIELD_NUMBER: builtins.int
            COUNTRY_CODE_FIELD_NUMBER: builtins.int
            REGION_FIELD_NUMBER: builtins.int
            SUBDIVISION_FIELD_NUMBER: builtins.int
            city: builtins.str
            country_code: builtins.str
            region: builtins.str
            subdivision: builtins.str
            def __init__(
                self,
                *,
                city: builtins.str = ...,
                country_code: builtins.str = ...,
                region: builtins.str = ...,
                subdivision: builtins.str = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["city", b"city", "country_code", b"country_code", "has_city", b"has_city", "has_country_code", b"has_country_code", "has_region", b"has_region", "has_subdivision", b"has_subdivision", "region", b"region", "subdivision", b"subdivision"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["city", b"city", "country_code", b"country_code", "has_city", b"has_city", "has_country_code", b"has_country_code", "has_region", b"has_region", "has_subdivision", b"has_subdivision", "region", b"region", "subdivision", b"subdivision"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_city", b"has_city"]) -> typing.Literal["city"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_country_code", b"has_country_code"]) -> typing.Literal["country_code"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_region", b"has_region"]) -> typing.Literal["region"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_subdivision", b"has_subdivision"]) -> typing.Literal["subdivision"] | None: ...

        DATA_FIELD_NUMBER: builtins.int
        EMAIL_FIELD_NUMBER: builtins.int
        GEO_FIELD_NUMBER: builtins.int
        ID_FIELD_NUMBER: builtins.int
        IP_ADDRESS_FIELD_NUMBER: builtins.int
        NAME_FIELD_NUMBER: builtins.int
        SEGMENT_FIELD_NUMBER: builtins.int
        SENTRY_USER_FIELD_NUMBER: builtins.int
        USERNAME_FIELD_NUMBER: builtins.int
        email: builtins.str
        id: builtins.str
        ip_address: builtins.str
        name: builtins.str
        segment: builtins.str
        sentry_user: builtins.str
        username: builtins.str
        @property
        def data(self) -> google.protobuf.struct_pb2.Value: ...
        @property
        def geo(self) -> global___Event.EventUser.EventUserGeo: ...
        def __init__(
            self,
            *,
            data: google.protobuf.struct_pb2.Value | None = ...,
            email: builtins.str = ...,
            geo: global___Event.EventUser.EventUserGeo | None = ...,
            id: builtins.str = ...,
            ip_address: builtins.str = ...,
            name: builtins.str = ...,
            segment: builtins.str = ...,
            sentry_user: builtins.str = ...,
            username: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["data", b"data", "email", b"email", "geo", b"geo", "has_data", b"has_data", "has_email", b"has_email", "has_geo", b"has_geo", "has_id", b"has_id", "has_ip_address", b"has_ip_address", "has_name", b"has_name", "has_segment", b"has_segment", "has_sentry_user", b"has_sentry_user", "has_username", b"has_username", "id", b"id", "ip_address", b"ip_address", "name", b"name", "segment", b"segment", "sentry_user", b"sentry_user", "username", b"username"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["data", b"data", "email", b"email", "geo", b"geo", "has_data", b"has_data", "has_email", b"has_email", "has_geo", b"has_geo", "has_id", b"has_id", "has_ip_address", b"has_ip_address", "has_name", b"has_name", "has_segment", b"has_segment", "has_sentry_user", b"has_sentry_user", "has_username", b"has_username", "id", b"id", "ip_address", b"ip_address", "name", b"name", "segment", b"segment", "sentry_user", b"sentry_user", "username", b"username"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_data", b"has_data"]) -> typing.Literal["data"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_email", b"has_email"]) -> typing.Literal["email"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_geo", b"has_geo"]) -> typing.Literal["geo"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_id", b"has_id"]) -> typing.Literal["id"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_ip_address", b"has_ip_address"]) -> typing.Literal["ip_address"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_segment", b"has_segment"]) -> typing.Literal["segment"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_sentry_user", b"has_sentry_user"]) -> typing.Literal["sentry_user"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_username", b"has_username"]) -> typing.Literal["username"] | None: ...

    @typing.final
    class ContextsEntry(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) -> google.protobuf.struct_pb2.Value: ...
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: google.protobuf.struct_pb2.Value | 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: ...

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

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

    BREADCRUMBS_FIELD_NUMBER: builtins.int
    CONTEXTS_FIELD_NUMBER: builtins.int
    CULPRIT_FIELD_NUMBER: builtins.int
    DEBUG_META_FIELD_NUMBER: builtins.int
    DIST_FIELD_NUMBER: builtins.int
    ENVIRONMENT_FIELD_NUMBER: builtins.int
    ERRORS_FIELD_NUMBER: builtins.int
    EVENT_ID_FIELD_NUMBER: builtins.int
    EXCEPTION_FIELD_NUMBER: builtins.int
    EXTRA_FIELD_NUMBER: builtins.int
    FINGERPRINT_FIELD_NUMBER: builtins.int
    LEVEL_FIELD_NUMBER: builtins.int
    LOGENTRY_FIELD_NUMBER: builtins.int
    LOGGER_FIELD_NUMBER: builtins.int
    MODULES_FIELD_NUMBER: builtins.int
    PLATFORM_FIELD_NUMBER: builtins.int
    RECEIVED_FIELD_NUMBER: builtins.int
    RELEASE_FIELD_NUMBER: builtins.int
    REQUEST_FIELD_NUMBER: builtins.int
    SDK_FIELD_NUMBER: builtins.int
    SERVER_NAME_FIELD_NUMBER: builtins.int
    STACKTRACE_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    THREADS_FIELD_NUMBER: builtins.int
    TIME_SPENT_FIELD_NUMBER: builtins.int
    TIMESTAMP_FIELD_NUMBER: builtins.int
    TRANSACTION_FIELD_NUMBER: builtins.int
    TRANSACTION_INFO_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    USER_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    culprit: builtins.str
    dist: builtins.str
    environment: builtins.str
    event_id: builtins.str
    level: builtins.str
    logger: builtins.str
    platform: builtins.str
    release: builtins.str
    server_name: builtins.str
    time_spent: builtins.int
    transaction: builtins.str
    type: builtins.str
    version: builtins.str
    @property
    def breadcrumbs(self) -> global___Event.EventBreadcrumbs: ...
    @property
    def contexts(self) -> google.protobuf.internal.containers.MessageMap[builtins.str, google.protobuf.struct_pb2.Value]: ...
    @property
    def debug_meta(self) -> global___Event.EventDebugMeta: ...
    @property
    def errors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Event.EventErrors]: ...
    @property
    def exception(self) -> global___Event.EventException: ...
    @property
    def extra(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def fingerprint(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def logentry(self) -> global___Event.EventLogentry: ...
    @property
    def modules(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def received(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def request(self) -> global___Event.EventRequest: ...
    @property
    def sdk(self) -> global___Event.EventSdk: ...
    @property
    def stacktrace(self) -> global___Event.EventStacktrace: ...
    @property
    def tags(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def threads(self) -> global___Event.EventThreads: ...
    @property
    def timestamp(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def transaction_info(self) -> global___Event.EventTransactionInfo: ...
    @property
    def user(self) -> global___Event.EventUser: ...
    def __init__(
        self,
        *,
        breadcrumbs: global___Event.EventBreadcrumbs | None = ...,
        contexts: collections.abc.Mapping[builtins.str, google.protobuf.struct_pb2.Value] | None = ...,
        culprit: builtins.str = ...,
        debug_meta: global___Event.EventDebugMeta | None = ...,
        dist: builtins.str = ...,
        environment: builtins.str = ...,
        errors: collections.abc.Iterable[global___Event.EventErrors] | None = ...,
        event_id: builtins.str = ...,
        exception: global___Event.EventException | None = ...,
        extra: google.protobuf.struct_pb2.Value | None = ...,
        fingerprint: collections.abc.Iterable[builtins.str] | None = ...,
        level: builtins.str = ...,
        logentry: global___Event.EventLogentry | None = ...,
        logger: builtins.str = ...,
        modules: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        platform: builtins.str = ...,
        received: google.protobuf.struct_pb2.Value | None = ...,
        release: builtins.str = ...,
        request: global___Event.EventRequest | None = ...,
        sdk: global___Event.EventSdk | None = ...,
        server_name: builtins.str = ...,
        stacktrace: global___Event.EventStacktrace | None = ...,
        tags: google.protobuf.struct_pb2.Value | None = ...,
        threads: global___Event.EventThreads | None = ...,
        time_spent: builtins.int = ...,
        timestamp: google.protobuf.struct_pb2.Value | None = ...,
        transaction: builtins.str = ...,
        transaction_info: global___Event.EventTransactionInfo | None = ...,
        type: builtins.str = ...,
        user: global___Event.EventUser | None = ...,
        version: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["breadcrumbs", b"breadcrumbs", "culprit", b"culprit", "debug_meta", b"debug_meta", "dist", b"dist", "environment", b"environment", "event_id", b"event_id", "exception", b"exception", "extra", b"extra", "has_breadcrumbs", b"has_breadcrumbs", "has_culprit", b"has_culprit", "has_debug_meta", b"has_debug_meta", "has_dist", b"has_dist", "has_environment", b"has_environment", "has_event_id", b"has_event_id", "has_exception", b"has_exception", "has_extra", b"has_extra", "has_level", b"has_level", "has_logentry", b"has_logentry", "has_logger", b"has_logger", "has_platform", b"has_platform", "has_received", b"has_received", "has_release", b"has_release", "has_request", b"has_request", "has_sdk", b"has_sdk", "has_server_name", b"has_server_name", "has_stacktrace", b"has_stacktrace", "has_tags", b"has_tags", "has_threads", b"has_threads", "has_time_spent", b"has_time_spent", "has_timestamp", b"has_timestamp", "has_transaction", b"has_transaction", "has_transaction_info", b"has_transaction_info", "has_type", b"has_type", "has_user", b"has_user", "has_version", b"has_version", "level", b"level", "logentry", b"logentry", "logger", b"logger", "platform", b"platform", "received", b"received", "release", b"release", "request", b"request", "sdk", b"sdk", "server_name", b"server_name", "stacktrace", b"stacktrace", "tags", b"tags", "threads", b"threads", "time_spent", b"time_spent", "timestamp", b"timestamp", "transaction", b"transaction", "transaction_info", b"transaction_info", "type", b"type", "user", b"user", "version", b"version"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["breadcrumbs", b"breadcrumbs", "contexts", b"contexts", "culprit", b"culprit", "debug_meta", b"debug_meta", "dist", b"dist", "environment", b"environment", "errors", b"errors", "event_id", b"event_id", "exception", b"exception", "extra", b"extra", "fingerprint", b"fingerprint", "has_breadcrumbs", b"has_breadcrumbs", "has_culprit", b"has_culprit", "has_debug_meta", b"has_debug_meta", "has_dist", b"has_dist", "has_environment", b"has_environment", "has_event_id", b"has_event_id", "has_exception", b"has_exception", "has_extra", b"has_extra", "has_level", b"has_level", "has_logentry", b"has_logentry", "has_logger", b"has_logger", "has_platform", b"has_platform", "has_received", b"has_received", "has_release", b"has_release", "has_request", b"has_request", "has_sdk", b"has_sdk", "has_server_name", b"has_server_name", "has_stacktrace", b"has_stacktrace", "has_tags", b"has_tags", "has_threads", b"has_threads", "has_time_spent", b"has_time_spent", "has_timestamp", b"has_timestamp", "has_transaction", b"has_transaction", "has_transaction_info", b"has_transaction_info", "has_type", b"has_type", "has_user", b"has_user", "has_version", b"has_version", "level", b"level", "logentry", b"logentry", "logger", b"logger", "modules", b"modules", "platform", b"platform", "received", b"received", "release", b"release", "request", b"request", "sdk", b"sdk", "server_name", b"server_name", "stacktrace", b"stacktrace", "tags", b"tags", "threads", b"threads", "time_spent", b"time_spent", "timestamp", b"timestamp", "transaction", b"transaction", "transaction_info", b"transaction_info", "type", b"type", "user", b"user", "version", b"version"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_breadcrumbs", b"has_breadcrumbs"]) -> typing.Literal["breadcrumbs"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_culprit", b"has_culprit"]) -> typing.Literal["culprit"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_debug_meta", b"has_debug_meta"]) -> typing.Literal["debug_meta"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_dist", b"has_dist"]) -> typing.Literal["dist"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_environment", b"has_environment"]) -> typing.Literal["environment"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_event_id", b"has_event_id"]) -> typing.Literal["event_id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_exception", b"has_exception"]) -> typing.Literal["exception"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_extra", b"has_extra"]) -> typing.Literal["extra"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_level", b"has_level"]) -> typing.Literal["level"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_logentry", b"has_logentry"]) -> typing.Literal["logentry"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_logger", b"has_logger"]) -> typing.Literal["logger"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_platform", b"has_platform"]) -> typing.Literal["platform"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_received", b"has_received"]) -> typing.Literal["received"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_release", b"has_release"]) -> typing.Literal["release"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_request", b"has_request"]) -> typing.Literal["request"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_sdk", b"has_sdk"]) -> typing.Literal["sdk"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_server_name", b"has_server_name"]) -> typing.Literal["server_name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_stacktrace", b"has_stacktrace"]) -> typing.Literal["stacktrace"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_tags", b"has_tags"]) -> typing.Literal["tags"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_threads", b"has_threads"]) -> typing.Literal["threads"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_time_spent", b"has_time_spent"]) -> typing.Literal["time_spent"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_timestamp", b"has_timestamp"]) -> typing.Literal["timestamp"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_transaction", b"has_transaction"]) -> typing.Literal["transaction"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_transaction_info", b"has_transaction_info"]) -> typing.Literal["transaction_info"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_type", b"has_type"]) -> typing.Literal["type"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_user", b"has_user"]) -> typing.Literal["user"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_version", b"has_version"]) -> typing.Literal["version"] | None: ...

global___Event = Event

@typing.final
class Appcontext(google.protobuf.message.Message):
    """
    Application information.

    App context describes the application. As opposed to the runtime, this is the actual
    application that was running and carries metadata about the current session.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    APP_BUILD_FIELD_NUMBER: builtins.int
    APP_IDENTIFIER_FIELD_NUMBER: builtins.int
    APP_MEMORY_FIELD_NUMBER: builtins.int
    APP_NAME_FIELD_NUMBER: builtins.int
    APP_START_TIME_FIELD_NUMBER: builtins.int
    APP_VERSION_FIELD_NUMBER: builtins.int
    BUILD_TYPE_FIELD_NUMBER: builtins.int
    DEVICE_APP_HASH_FIELD_NUMBER: builtins.int
    IN_FOREGROUND_FIELD_NUMBER: builtins.int
    VIEW_NAMES_FIELD_NUMBER: builtins.int
    app_build: builtins.str
    app_identifier: builtins.str
    app_memory: builtins.int
    app_name: builtins.str
    app_start_time: builtins.str
    app_version: builtins.str
    build_type: builtins.str
    device_app_hash: builtins.str
    in_foreground: builtins.bool
    @property
    def view_names(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        app_build: builtins.str = ...,
        app_identifier: builtins.str = ...,
        app_memory: builtins.int = ...,
        app_name: builtins.str = ...,
        app_start_time: builtins.str = ...,
        app_version: builtins.str = ...,
        build_type: builtins.str = ...,
        device_app_hash: builtins.str = ...,
        in_foreground: builtins.bool = ...,
        view_names: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["app_build", b"app_build", "app_identifier", b"app_identifier", "app_memory", b"app_memory", "app_name", b"app_name", "app_start_time", b"app_start_time", "app_version", b"app_version", "build_type", b"build_type", "device_app_hash", b"device_app_hash", "has_app_build", b"has_app_build", "has_app_identifier", b"has_app_identifier", "has_app_memory", b"has_app_memory", "has_app_name", b"has_app_name", "has_app_start_time", b"has_app_start_time", "has_app_version", b"has_app_version", "has_build_type", b"has_build_type", "has_device_app_hash", b"has_device_app_hash", "has_in_foreground", b"has_in_foreground", "in_foreground", b"in_foreground"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["app_build", b"app_build", "app_identifier", b"app_identifier", "app_memory", b"app_memory", "app_name", b"app_name", "app_start_time", b"app_start_time", "app_version", b"app_version", "build_type", b"build_type", "device_app_hash", b"device_app_hash", "has_app_build", b"has_app_build", "has_app_identifier", b"has_app_identifier", "has_app_memory", b"has_app_memory", "has_app_name", b"has_app_name", "has_app_start_time", b"has_app_start_time", "has_app_version", b"has_app_version", "has_build_type", b"has_build_type", "has_device_app_hash", b"has_device_app_hash", "has_in_foreground", b"has_in_foreground", "in_foreground", b"in_foreground", "view_names", b"view_names"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_app_build", b"has_app_build"]) -> typing.Literal["app_build"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_app_identifier", b"has_app_identifier"]) -> typing.Literal["app_identifier"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_app_memory", b"has_app_memory"]) -> typing.Literal["app_memory"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_app_name", b"has_app_name"]) -> typing.Literal["app_name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_app_start_time", b"has_app_start_time"]) -> typing.Literal["app_start_time"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_app_version", b"has_app_version"]) -> typing.Literal["app_version"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_build_type", b"has_build_type"]) -> typing.Literal["build_type"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_device_app_hash", b"has_device_app_hash"]) -> typing.Literal["device_app_hash"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_in_foreground", b"has_in_foreground"]) -> typing.Literal["in_foreground"] | None: ...

global___Appcontext = Appcontext

@typing.final
class Appledebugimage(google.protobuf.message.Message):
    """
    Legacy apple debug images (MachO).

    This was also used for non-apple platforms with similar debug setups.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ARCH_FIELD_NUMBER: builtins.int
    CPU_SUBTYPE_FIELD_NUMBER: builtins.int
    CPU_TYPE_FIELD_NUMBER: builtins.int
    IMAGE_ADDR_FIELD_NUMBER: builtins.int
    IMAGE_SIZE_FIELD_NUMBER: builtins.int
    IMAGE_VMADDR_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    UUID_FIELD_NUMBER: builtins.int
    arch: builtins.str
    cpu_subtype: builtins.int
    cpu_type: builtins.int
    image_addr: builtins.str
    image_size: builtins.int
    image_vmaddr: builtins.str
    name: builtins.str
    uuid: builtins.str
    def __init__(
        self,
        *,
        arch: builtins.str = ...,
        cpu_subtype: builtins.int = ...,
        cpu_type: builtins.int = ...,
        image_addr: builtins.str = ...,
        image_size: builtins.int = ...,
        image_vmaddr: builtins.str = ...,
        name: builtins.str = ...,
        uuid: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["arch", b"arch", "cpu_subtype", b"cpu_subtype", "cpu_type", b"cpu_type", "has_arch", b"has_arch", "has_cpu_subtype", b"has_cpu_subtype", "has_cpu_type", b"has_cpu_type", "has_image_vmaddr", b"has_image_vmaddr", "image_vmaddr", b"image_vmaddr"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["arch", b"arch", "cpu_subtype", b"cpu_subtype", "cpu_type", b"cpu_type", "has_arch", b"has_arch", "has_cpu_subtype", b"has_cpu_subtype", "has_cpu_type", b"has_cpu_type", "has_image_vmaddr", b"has_image_vmaddr", "image_addr", b"image_addr", "image_size", b"image_size", "image_vmaddr", b"image_vmaddr", "name", b"name", "uuid", b"uuid"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_arch", b"has_arch"]) -> typing.Literal["arch"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_cpu_subtype", b"has_cpu_subtype"]) -> typing.Literal["cpu_subtype"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_cpu_type", b"has_cpu_type"]) -> typing.Literal["cpu_type"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_image_vmaddr", b"has_image_vmaddr"]) -> typing.Literal["image_vmaddr"] | None: ...

global___Appledebugimage = Appledebugimage

@typing.final
class Breadcrumb(google.protobuf.message.Message):
    """
    The Breadcrumbs Interface specifies a series of application events, or "breadcrumbs", that
    occurred before an event.

    An event may contain one or more breadcrumbs in an attribute named `breadcrumbs`. The entries
    are ordered from oldest to newest. Consequently, the last entry in the list should be the last
    entry before the event occurred.

    While breadcrumb attributes are not strictly validated in Sentry, a breadcrumb is most useful
    when it includes at least a `timestamp` and `type`, `category` or `message`. The rendering of
    breadcrumbs in Sentry depends on what is provided.

    The following example illustrates the breadcrumbs part of the event payload and omits other
    attributes for simplicity.

    ```json
    {
    "breadcrumbs": {
    "values": [
    {
    "timestamp": "2016-04-20T20:55:53.845Z",
    "message": "Something happened",
    "category": "log",
    "data": {
    "foo": "bar",
    "blub": "blah"
    }
    },
    {
    "timestamp": "2016-04-20T20:55:53.847Z",
    "type": "navigation",
    "data": {
    "from": "/login",
    "to": "/dashboard"
    }
    }
    ]
    }
    }
    ```
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CATEGORY_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    EVENT_ID_FIELD_NUMBER: builtins.int
    LEVEL_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    TIMESTAMP_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    category: builtins.str
    event_id: builtins.str
    level: builtins.str
    message: builtins.str
    type: builtins.str
    @property
    def data(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def timestamp(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        category: builtins.str = ...,
        data: google.protobuf.struct_pb2.Value | None = ...,
        event_id: builtins.str = ...,
        level: builtins.str = ...,
        message: builtins.str = ...,
        timestamp: google.protobuf.struct_pb2.Value | None = ...,
        type: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["category", b"category", "data", b"data", "event_id", b"event_id", "has_category", b"has_category", "has_data", b"has_data", "has_event_id", b"has_event_id", "has_level", b"has_level", "has_message", b"has_message", "has_timestamp", b"has_timestamp", "has_type", b"has_type", "level", b"level", "message", b"message", "timestamp", b"timestamp", "type", b"type"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["category", b"category", "data", b"data", "event_id", b"event_id", "has_category", b"has_category", "has_data", b"has_data", "has_event_id", b"has_event_id", "has_level", b"has_level", "has_message", b"has_message", "has_timestamp", b"has_timestamp", "has_type", b"has_type", "level", b"level", "message", b"message", "timestamp", b"timestamp", "type", b"type"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_category", b"has_category"]) -> typing.Literal["category"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_data", b"has_data"]) -> typing.Literal["data"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_event_id", b"has_event_id"]) -> typing.Literal["event_id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_level", b"has_level"]) -> typing.Literal["level"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_message", b"has_message"]) -> typing.Literal["message"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_timestamp", b"has_timestamp"]) -> typing.Literal["timestamp"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_type", b"has_type"]) -> typing.Literal["type"] | None: ...

global___Breadcrumb = Breadcrumb

@typing.final
class Browsercontext(google.protobuf.message.Message):
    """
    Web browser information.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    name: builtins.str
    version: builtins.str
    def __init__(
        self,
        *,
        name: builtins.str = ...,
        version: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_version", b"has_version", "name", b"name", "version", b"version"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_version", b"has_version", "name", b"name", "version", b"version"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_version", b"has_version"]) -> typing.Literal["version"] | None: ...

global___Browsercontext = Browsercontext

@typing.final
class Cerror(google.protobuf.message.Message):
    """
    POSIX signal with optional extended data.

    Error codes set by Linux system calls and some library functions as specified in ISO C99,
    POSIX.1-2001, and POSIX.1-2008. See
    [`errno(3)`](https://man7.org/linux/man-pages/man3/errno.3.html) for more information.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    NUMBER_FIELD_NUMBER: builtins.int
    name: builtins.str
    number: builtins.int
    def __init__(
        self,
        *,
        name: builtins.str = ...,
        number: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_number", b"has_number"]) -> typing.Literal["number"] | None: ...

global___Cerror = Cerror

@typing.final
class Clientsdkinfo(google.protobuf.message.Message):
    """
    The SDK Interface describes the Sentry SDK and its configuration used to capture and transmit an event.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class ClientsdkinfoPackages(google.protobuf.message.Message):
        """
        List of installed and loaded SDK packages. _Optional._

        A list of packages that were installed as part of this SDK or the activated integrations.
        Each package consists of a name in the format `source:identifier` and `version`. If the
        source is a Git repository, the `source` should be `git`, the identifier should be a
        checkout link and the version should be a Git reference (branch, tag or SHA).
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        NAME_FIELD_NUMBER: builtins.int
        VERSION_FIELD_NUMBER: builtins.int
        name: builtins.str
        version: builtins.str
        def __init__(
            self,
            *,
            name: builtins.str = ...,
            version: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_version", b"has_version", "name", b"name", "version", b"version"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_version", b"has_version", "name", b"name", "version", b"version"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_version", b"has_version"]) -> typing.Literal["version"] | None: ...

    INTEGRATIONS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PACKAGES_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    name: builtins.str
    version: builtins.str
    @property
    def integrations(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def packages(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Clientsdkinfo.ClientsdkinfoPackages]: ...
    def __init__(
        self,
        *,
        integrations: collections.abc.Iterable[builtins.str] | None = ...,
        name: builtins.str = ...,
        packages: collections.abc.Iterable[global___Clientsdkinfo.ClientsdkinfoPackages] | None = ...,
        version: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["integrations", b"integrations", "name", b"name", "packages", b"packages", "version", b"version"]) -> None: ...

global___Clientsdkinfo = Clientsdkinfo

@typing.final
class Clientsdkpackage(google.protobuf.message.Message):
    """
    An installed and loaded package as part of the Sentry SDK.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    name: builtins.str
    version: builtins.str
    def __init__(
        self,
        *,
        name: builtins.str = ...,
        version: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_version", b"has_version", "name", b"name", "version", b"version"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_version", b"has_version", "name", b"name", "version", b"version"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_version", b"has_version"]) -> typing.Literal["version"] | None: ...

global___Clientsdkpackage = Clientsdkpackage

@typing.final
class Data(google.protobuf.message.Message):
    """
    The arbitrary data on the trace.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class DataPreviousroute(google.protobuf.message.Message):
        """
        The previous route in the application

        Set by React Native SDK.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        NAME_FIELD_NUMBER: builtins.int
        PARAMS_FIELD_NUMBER: builtins.int
        name: builtins.str
        @property
        def params(self) -> google.protobuf.struct_pb2.Value: ...
        def __init__(
            self,
            *,
            name: builtins.str = ...,
            params: google.protobuf.struct_pb2.Value | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_params", b"has_params", "name", b"name", "params", b"params"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_params", b"has_params", "name", b"name", "params", b"params"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_params", b"has_params"]) -> typing.Literal["params"] | None: ...

    @typing.final
    class DataRoute(google.protobuf.message.Message):
        """
        The current route in the application.

        Set by React Native SDK.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        NAME_FIELD_NUMBER: builtins.int
        PARAMS_FIELD_NUMBER: builtins.int
        name: builtins.str
        @property
        def params(self) -> google.protobuf.struct_pb2.Value: ...
        def __init__(
            self,
            *,
            name: builtins.str = ...,
            params: google.protobuf.struct_pb2.Value | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_params", b"has_params", "name", b"name", "params", b"params"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_params", b"has_params", "name", b"name", "params", b"params"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_params", b"has_params"]) -> typing.Literal["params"] | None: ...

    PREVIOUS_ROUTE_FIELD_NUMBER: builtins.int
    ROUTE_FIELD_NUMBER: builtins.int
    @property
    def previous_route(self) -> global___Data.DataPreviousroute: ...
    @property
    def route(self) -> global___Data.DataRoute: ...
    def __init__(
        self,
        *,
        previous_route: global___Data.DataPreviousroute | None = ...,
        route: global___Data.DataRoute | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_previous_route", b"has_previous_route", "has_route", b"has_route", "previous_route", b"previous_route", "route", b"route"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["has_previous_route", b"has_previous_route", "has_route", b"has_route", "previous_route", b"previous_route", "route", b"route"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_previous_route", b"has_previous_route"]) -> typing.Literal["previous_route"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_route", b"has_route"]) -> typing.Literal["route"] | None: ...

global___Data = Data

@typing.final
class Debugmeta(google.protobuf.message.Message):
    """
    Debugging and processing meta information.

    The debug meta interface carries debug information for processing errors and crash reports.
    Sentry amends the information in this interface.

    Example (look at field types to see more detail):

    ```json
    {
    "debug_meta": {
    "images": [],
    "sdk_info": {
    "sdk_name": "iOS",
    "version_major": 10,
    "version_minor": 3,
    "version_patchlevel": 0
    }
    }
    }
    ```
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class DebugmetaSdkInfo(google.protobuf.message.Message):
        """
        Information about the system SDK (e.g. iOS SDK).
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        SDK_NAME_FIELD_NUMBER: builtins.int
        VERSION_MAJOR_FIELD_NUMBER: builtins.int
        VERSION_MINOR_FIELD_NUMBER: builtins.int
        VERSION_PATCHLEVEL_FIELD_NUMBER: builtins.int
        sdk_name: builtins.str
        version_major: builtins.int
        version_minor: builtins.int
        version_patchlevel: builtins.int
        def __init__(
            self,
            *,
            sdk_name: builtins.str = ...,
            version_major: builtins.int = ...,
            version_minor: builtins.int = ...,
            version_patchlevel: builtins.int = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_sdk_name", b"has_sdk_name", "has_version_major", b"has_version_major", "has_version_minor", b"has_version_minor", "has_version_patchlevel", b"has_version_patchlevel", "sdk_name", b"sdk_name", "version_major", b"version_major", "version_minor", b"version_minor", "version_patchlevel", b"version_patchlevel"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["has_sdk_name", b"has_sdk_name", "has_version_major", b"has_version_major", "has_version_minor", b"has_version_minor", "has_version_patchlevel", b"has_version_patchlevel", "sdk_name", b"sdk_name", "version_major", b"version_major", "version_minor", b"version_minor", "version_patchlevel", b"version_patchlevel"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_sdk_name", b"has_sdk_name"]) -> typing.Literal["sdk_name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_version_major", b"has_version_major"]) -> typing.Literal["version_major"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_version_minor", b"has_version_minor"]) -> typing.Literal["version_minor"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_version_patchlevel", b"has_version_patchlevel"]) -> typing.Literal["version_patchlevel"] | None: ...

    IMAGES_FIELD_NUMBER: builtins.int
    SDK_INFO_FIELD_NUMBER: builtins.int
    @property
    def images(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[google.protobuf.struct_pb2.Value]: ...
    @property
    def sdk_info(self) -> global___Debugmeta.DebugmetaSdkInfo: ...
    def __init__(
        self,
        *,
        images: collections.abc.Iterable[google.protobuf.struct_pb2.Value] | None = ...,
        sdk_info: global___Debugmeta.DebugmetaSdkInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_sdk_info", b"has_sdk_info", "sdk_info", b"sdk_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["has_sdk_info", b"has_sdk_info", "images", b"images", "sdk_info", b"sdk_info"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["has_sdk_info", b"has_sdk_info"]) -> typing.Literal["sdk_info"] | None: ...

global___Debugmeta = Debugmeta

@typing.final
class Devicecontext(google.protobuf.message.Message):
    """
    Device information.

    Device context describes the device that caused the event. This is most appropriate for mobile
    applications.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ARCH_FIELD_NUMBER: builtins.int
    BATTERY_LEVEL_FIELD_NUMBER: builtins.int
    BATTERY_STATUS_FIELD_NUMBER: builtins.int
    BOOT_TIME_FIELD_NUMBER: builtins.int
    BRAND_FIELD_NUMBER: builtins.int
    CHARGING_FIELD_NUMBER: builtins.int
    CPU_DESCRIPTION_FIELD_NUMBER: builtins.int
    DEVICE_TYPE_FIELD_NUMBER: builtins.int
    DEVICE_UNIQUE_IDENTIFIER_FIELD_NUMBER: builtins.int
    EXTERNAL_FREE_STORAGE_FIELD_NUMBER: builtins.int
    EXTERNAL_STORAGE_SIZE_FIELD_NUMBER: builtins.int
    FAMILY_FIELD_NUMBER: builtins.int
    FREE_MEMORY_FIELD_NUMBER: builtins.int
    FREE_STORAGE_FIELD_NUMBER: builtins.int
    LOCALE_FIELD_NUMBER: builtins.int
    LOW_MEMORY_FIELD_NUMBER: builtins.int
    MANUFACTURER_FIELD_NUMBER: builtins.int
    MEMORY_SIZE_FIELD_NUMBER: builtins.int
    MODEL_FIELD_NUMBER: builtins.int
    MODEL_ID_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    ONLINE_FIELD_NUMBER: builtins.int
    ORIENTATION_FIELD_NUMBER: builtins.int
    PROCESSOR_COUNT_FIELD_NUMBER: builtins.int
    PROCESSOR_FREQUENCY_FIELD_NUMBER: builtins.int
    SCREEN_DENSITY_FIELD_NUMBER: builtins.int
    SCREEN_DPI_FIELD_NUMBER: builtins.int
    SCREEN_HEIGHT_PIXELS_FIELD_NUMBER: builtins.int
    SCREEN_RESOLUTION_FIELD_NUMBER: builtins.int
    SCREEN_WIDTH_PIXELS_FIELD_NUMBER: builtins.int
    SIMULATOR_FIELD_NUMBER: builtins.int
    STORAGE_SIZE_FIELD_NUMBER: builtins.int
    SUPPORTS_ACCELEROMETER_FIELD_NUMBER: builtins.int
    SUPPORTS_AUDIO_FIELD_NUMBER: builtins.int
    SUPPORTS_GYROSCOPE_FIELD_NUMBER: builtins.int
    SUPPORTS_LOCATION_SERVICE_FIELD_NUMBER: builtins.int
    SUPPORTS_VIBRATION_FIELD_NUMBER: builtins.int
    TIMEZONE_FIELD_NUMBER: builtins.int
    USABLE_MEMORY_FIELD_NUMBER: builtins.int
    UUID_FIELD_NUMBER: builtins.int
    arch: builtins.str
    battery_level: builtins.float
    battery_status: builtins.str
    boot_time: builtins.str
    brand: builtins.str
    charging: builtins.bool
    cpu_description: builtins.str
    device_type: builtins.str
    device_unique_identifier: builtins.str
    external_free_storage: builtins.int
    external_storage_size: builtins.int
    family: builtins.str
    free_memory: builtins.int
    free_storage: builtins.int
    locale: builtins.str
    low_memory: builtins.bool
    manufacturer: builtins.str
    memory_size: builtins.int
    model: builtins.str
    model_id: builtins.str
    name: builtins.str
    online: builtins.bool
    orientation: builtins.str
    processor_count: builtins.int
    processor_frequency: builtins.int
    screen_density: builtins.float
    screen_dpi: builtins.int
    screen_height_pixels: builtins.int
    screen_resolution: builtins.str
    screen_width_pixels: builtins.int
    simulator: builtins.bool
    storage_size: builtins.int
    supports_accelerometer: builtins.bool
    supports_audio: builtins.bool
    supports_gyroscope: builtins.bool
    supports_location_service: builtins.bool
    supports_vibration: builtins.bool
    timezone: builtins.str
    usable_memory: builtins.int
    uuid: builtins.str
    def __init__(
        self,
        *,
        arch: builtins.str = ...,
        battery_level: builtins.float = ...,
        battery_status: builtins.str = ...,
        boot_time: builtins.str = ...,
        brand: builtins.str = ...,
        charging: builtins.bool = ...,
        cpu_description: builtins.str = ...,
        device_type: builtins.str = ...,
        device_unique_identifier: builtins.str = ...,
        external_free_storage: builtins.int = ...,
        external_storage_size: builtins.int = ...,
        family: builtins.str = ...,
        free_memory: builtins.int = ...,
        free_storage: builtins.int = ...,
        locale: builtins.str = ...,
        low_memory: builtins.bool = ...,
        manufacturer: builtins.str = ...,
        memory_size: builtins.int = ...,
        model: builtins.str = ...,
        model_id: builtins.str = ...,
        name: builtins.str = ...,
        online: builtins.bool = ...,
        orientation: builtins.str = ...,
        processor_count: builtins.int = ...,
        processor_frequency: builtins.int = ...,
        screen_density: builtins.float = ...,
        screen_dpi: builtins.int = ...,
        screen_height_pixels: builtins.int = ...,
        screen_resolution: builtins.str = ...,
        screen_width_pixels: builtins.int = ...,
        simulator: builtins.bool = ...,
        storage_size: builtins.int = ...,
        supports_accelerometer: builtins.bool = ...,
        supports_audio: builtins.bool = ...,
        supports_gyroscope: builtins.bool = ...,
        supports_location_service: builtins.bool = ...,
        supports_vibration: builtins.bool = ...,
        timezone: builtins.str = ...,
        usable_memory: builtins.int = ...,
        uuid: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["arch", b"arch", "battery_level", b"battery_level", "battery_status", b"battery_status", "boot_time", b"boot_time", "brand", b"brand", "charging", b"charging", "cpu_description", b"cpu_description", "device_type", b"device_type", "device_unique_identifier", b"device_unique_identifier", "external_free_storage", b"external_free_storage", "external_storage_size", b"external_storage_size", "family", b"family", "free_memory", b"free_memory", "free_storage", b"free_storage", "has_arch", b"has_arch", "has_battery_level", b"has_battery_level", "has_battery_status", b"has_battery_status", "has_boot_time", b"has_boot_time", "has_brand", b"has_brand", "has_charging", b"has_charging", "has_cpu_description", b"has_cpu_description", "has_device_type", b"has_device_type", "has_device_unique_identifier", b"has_device_unique_identifier", "has_external_free_storage", b"has_external_free_storage", "has_external_storage_size", b"has_external_storage_size", "has_family", b"has_family", "has_free_memory", b"has_free_memory", "has_free_storage", b"has_free_storage", "has_locale", b"has_locale", "has_low_memory", b"has_low_memory", "has_manufacturer", b"has_manufacturer", "has_memory_size", b"has_memory_size", "has_model", b"has_model", "has_model_id", b"has_model_id", "has_name", b"has_name", "has_online", b"has_online", "has_orientation", b"has_orientation", "has_processor_count", b"has_processor_count", "has_processor_frequency", b"has_processor_frequency", "has_screen_density", b"has_screen_density", "has_screen_dpi", b"has_screen_dpi", "has_screen_height_pixels", b"has_screen_height_pixels", "has_screen_resolution", b"has_screen_resolution", "has_screen_width_pixels", b"has_screen_width_pixels", "has_simulator", b"has_simulator", "has_storage_size", b"has_storage_size", "has_supports_accelerometer", b"has_supports_accelerometer", "has_supports_audio", b"has_supports_audio", "has_supports_gyroscope", b"has_supports_gyroscope", "has_supports_location_service", b"has_supports_location_service", "has_supports_vibration", b"has_supports_vibration", "has_timezone", b"has_timezone", "has_usable_memory", b"has_usable_memory", "has_uuid", b"has_uuid", "locale", b"locale", "low_memory", b"low_memory", "manufacturer", b"manufacturer", "memory_size", b"memory_size", "model", b"model", "model_id", b"model_id", "name", b"name", "online", b"online", "orientation", b"orientation", "processor_count", b"processor_count", "processor_frequency", b"processor_frequency", "screen_density", b"screen_density", "screen_dpi", b"screen_dpi", "screen_height_pixels", b"screen_height_pixels", "screen_resolution", b"screen_resolution", "screen_width_pixels", b"screen_width_pixels", "simulator", b"simulator", "storage_size", b"storage_size", "supports_accelerometer", b"supports_accelerometer", "supports_audio", b"supports_audio", "supports_gyroscope", b"supports_gyroscope", "supports_location_service", b"supports_location_service", "supports_vibration", b"supports_vibration", "timezone", b"timezone", "usable_memory", b"usable_memory", "uuid", b"uuid"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["arch", b"arch", "battery_level", b"battery_level", "battery_status", b"battery_status", "boot_time", b"boot_time", "brand", b"brand", "charging", b"charging", "cpu_description", b"cpu_description", "device_type", b"device_type", "device_unique_identifier", b"device_unique_identifier", "external_free_storage", b"external_free_storage", "external_storage_size", b"external_storage_size", "family", b"family", "free_memory", b"free_memory", "free_storage", b"free_storage", "has_arch", b"has_arch", "has_battery_level", b"has_battery_level", "has_battery_status", b"has_battery_status", "has_boot_time", b"has_boot_time", "has_brand", b"has_brand", "has_charging", b"has_charging", "has_cpu_description", b"has_cpu_description", "has_device_type", b"has_device_type", "has_device_unique_identifier", b"has_device_unique_identifier", "has_external_free_storage", b"has_external_free_storage", "has_external_storage_size", b"has_external_storage_size", "has_family", b"has_family", "has_free_memory", b"has_free_memory", "has_free_storage", b"has_free_storage", "has_locale", b"has_locale", "has_low_memory", b"has_low_memory", "has_manufacturer", b"has_manufacturer", "has_memory_size", b"has_memory_size", "has_model", b"has_model", "has_model_id", b"has_model_id", "has_name", b"has_name", "has_online", b"has_online", "has_orientation", b"has_orientation", "has_processor_count", b"has_processor_count", "has_processor_frequency", b"has_processor_frequency", "has_screen_density", b"has_screen_density", "has_screen_dpi", b"has_screen_dpi", "has_screen_height_pixels", b"has_screen_height_pixels", "has_screen_resolution", b"has_screen_resolution", "has_screen_width_pixels", b"has_screen_width_pixels", "has_simulator", b"has_simulator", "has_storage_size", b"has_storage_size", "has_supports_accelerometer", b"has_supports_accelerometer", "has_supports_audio", b"has_supports_audio", "has_supports_gyroscope", b"has_supports_gyroscope", "has_supports_location_service", b"has_supports_location_service", "has_supports_vibration", b"has_supports_vibration", "has_timezone", b"has_timezone", "has_usable_memory", b"has_usable_memory", "has_uuid", b"has_uuid", "locale", b"locale", "low_memory", b"low_memory", "manufacturer", b"manufacturer", "memory_size", b"memory_size", "model", b"model", "model_id", b"model_id", "name", b"name", "online", b"online", "orientation", b"orientation", "processor_count", b"processor_count", "processor_frequency", b"processor_frequency", "screen_density", b"screen_density", "screen_dpi", b"screen_dpi", "screen_height_pixels", b"screen_height_pixels", "screen_resolution", b"screen_resolution", "screen_width_pixels", b"screen_width_pixels", "simulator", b"simulator", "storage_size", b"storage_size", "supports_accelerometer", b"supports_accelerometer", "supports_audio", b"supports_audio", "supports_gyroscope", b"supports_gyroscope", "supports_location_service", b"supports_location_service", "supports_vibration", b"supports_vibration", "timezone", b"timezone", "usable_memory", b"usable_memory", "uuid", b"uuid"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_arch", b"has_arch"]) -> typing.Literal["arch"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_battery_level", b"has_battery_level"]) -> typing.Literal["battery_level"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_battery_status", b"has_battery_status"]) -> typing.Literal["battery_status"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_boot_time", b"has_boot_time"]) -> typing.Literal["boot_time"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_brand", b"has_brand"]) -> typing.Literal["brand"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_charging", b"has_charging"]) -> typing.Literal["charging"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_cpu_description", b"has_cpu_description"]) -> typing.Literal["cpu_description"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_device_type", b"has_device_type"]) -> typing.Literal["device_type"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_device_unique_identifier", b"has_device_unique_identifier"]) -> typing.Literal["device_unique_identifier"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_external_free_storage", b"has_external_free_storage"]) -> typing.Literal["external_free_storage"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_external_storage_size", b"has_external_storage_size"]) -> typing.Literal["external_storage_size"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_family", b"has_family"]) -> typing.Literal["family"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_free_memory", b"has_free_memory"]) -> typing.Literal["free_memory"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_free_storage", b"has_free_storage"]) -> typing.Literal["free_storage"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_locale", b"has_locale"]) -> typing.Literal["locale"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_low_memory", b"has_low_memory"]) -> typing.Literal["low_memory"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_manufacturer", b"has_manufacturer"]) -> typing.Literal["manufacturer"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_memory_size", b"has_memory_size"]) -> typing.Literal["memory_size"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_model", b"has_model"]) -> typing.Literal["model"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_model_id", b"has_model_id"]) -> typing.Literal["model_id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_online", b"has_online"]) -> typing.Literal["online"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_orientation", b"has_orientation"]) -> typing.Literal["orientation"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_processor_count", b"has_processor_count"]) -> typing.Literal["processor_count"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_processor_frequency", b"has_processor_frequency"]) -> typing.Literal["processor_frequency"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_screen_density", b"has_screen_density"]) -> typing.Literal["screen_density"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_screen_dpi", b"has_screen_dpi"]) -> typing.Literal["screen_dpi"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_screen_height_pixels", b"has_screen_height_pixels"]) -> typing.Literal["screen_height_pixels"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_screen_resolution", b"has_screen_resolution"]) -> typing.Literal["screen_resolution"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_screen_width_pixels", b"has_screen_width_pixels"]) -> typing.Literal["screen_width_pixels"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_simulator", b"has_simulator"]) -> typing.Literal["simulator"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_storage_size", b"has_storage_size"]) -> typing.Literal["storage_size"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_supports_accelerometer", b"has_supports_accelerometer"]) -> typing.Literal["supports_accelerometer"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_supports_audio", b"has_supports_audio"]) -> typing.Literal["supports_audio"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_supports_gyroscope", b"has_supports_gyroscope"]) -> typing.Literal["supports_gyroscope"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_supports_location_service", b"has_supports_location_service"]) -> typing.Literal["supports_location_service"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_supports_vibration", b"has_supports_vibration"]) -> typing.Literal["supports_vibration"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_timezone", b"has_timezone"]) -> typing.Literal["timezone"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_usable_memory", b"has_usable_memory"]) -> typing.Literal["usable_memory"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_uuid", b"has_uuid"]) -> typing.Literal["uuid"] | None: ...

global___Devicecontext = Devicecontext

@typing.final
class Eventprocessingerror(google.protobuf.message.Message):
    """
    An event processing error.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    name: builtins.str
    type: builtins.str
    @property
    def value(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        name: builtins.str = ...,
        type: builtins.str = ...,
        value: google.protobuf.struct_pb2.Value | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_name", b"has_name", "name", b"name", "value", b"value"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "name", b"name", "type", b"type", "value", b"value"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...

global___Eventprocessingerror = Eventprocessingerror

@typing.final
class Exception(google.protobuf.message.Message):
    """
    A single exception.

    Multiple values inside of an [event](#typedef-Event) represent chained exceptions and should be sorted oldest to newest. For example, consider this Python code snippet:

    ```python
    try:
    raise Exception("random boring invariant was not met!")
    except Exception as e:
    raise ValueError("something went wrong, help!") from e
    ```

    `Exception` would be described first in the values list, followed by a description of `ValueError`:

    ```json
    {
    "exception": {
    "values": [
    {"type": "Exception": "value": "random boring invariant was not met!"},
    {"type": "ValueError", "value": "something went wrong, help!"},
    ]
    }
    }
    ```
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class ExceptionMechanism(google.protobuf.message.Message):
        """
        Mechanism by which this exception was generated and handled.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class ExceptionMechanismMeta(google.protobuf.message.Message):
            """
            Operating system or runtime meta information.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            @typing.final
            class ExceptionMechanismMetaErrno(google.protobuf.message.Message):
                """
                Optional ISO C standard error code.
                """

                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                NAME_FIELD_NUMBER: builtins.int
                NUMBER_FIELD_NUMBER: builtins.int
                name: builtins.str
                number: builtins.int
                def __init__(
                    self,
                    *,
                    name: builtins.str = ...,
                    number: builtins.int = ...,
                ) -> None: ...
                def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> builtins.bool: ...
                def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_number", b"has_number"]) -> typing.Literal["number"] | None: ...

            @typing.final
            class ExceptionMechanismMetaMachException(google.protobuf.message.Message):
                """
                A Mach Exception on Apple systems comprising a code triple and optional descriptions.
                """

                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                CODE_FIELD_NUMBER: builtins.int
                EXCEPTION_FIELD_NUMBER: builtins.int
                NAME_FIELD_NUMBER: builtins.int
                SUBCODE_FIELD_NUMBER: builtins.int
                code: builtins.int
                exception: builtins.int
                name: builtins.str
                subcode: builtins.int
                def __init__(
                    self,
                    *,
                    code: builtins.int = ...,
                    exception: builtins.int = ...,
                    name: builtins.str = ...,
                    subcode: builtins.int = ...,
                ) -> None: ...
                def HasField(self, field_name: typing.Literal["code", b"code", "exception", b"exception", "has_code", b"has_code", "has_exception", b"has_exception", "has_name", b"has_name", "has_subcode", b"has_subcode", "name", b"name", "subcode", b"subcode"]) -> builtins.bool: ...
                def ClearField(self, field_name: typing.Literal["code", b"code", "exception", b"exception", "has_code", b"has_code", "has_exception", b"has_exception", "has_name", b"has_name", "has_subcode", b"has_subcode", "name", b"name", "subcode", b"subcode"]) -> None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_exception", b"has_exception"]) -> typing.Literal["exception"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_subcode", b"has_subcode"]) -> typing.Literal["subcode"] | None: ...

            @typing.final
            class ExceptionMechanismMetaNsError(google.protobuf.message.Message):
                """
                An NSError on Apple systems comprising code and signal.
                """

                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                CODE_FIELD_NUMBER: builtins.int
                DOMAIN_FIELD_NUMBER: builtins.int
                code: builtins.int
                domain: builtins.str
                def __init__(
                    self,
                    *,
                    code: builtins.int = ...,
                    domain: builtins.str = ...,
                ) -> None: ...
                def HasField(self, field_name: typing.Literal["code", b"code", "domain", b"domain", "has_code", b"has_code", "has_domain", b"has_domain"]) -> builtins.bool: ...
                def ClearField(self, field_name: typing.Literal["code", b"code", "domain", b"domain", "has_code", b"has_code", "has_domain", b"has_domain"]) -> None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_domain", b"has_domain"]) -> typing.Literal["domain"] | None: ...

            @typing.final
            class ExceptionMechanismMetaSignal(google.protobuf.message.Message):
                """
                Information on the POSIX signal.
                """

                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                CODE_FIELD_NUMBER: builtins.int
                CODE_NAME_FIELD_NUMBER: builtins.int
                NAME_FIELD_NUMBER: builtins.int
                NUMBER_FIELD_NUMBER: builtins.int
                code: builtins.int
                code_name: builtins.str
                name: builtins.str
                number: builtins.int
                def __init__(
                    self,
                    *,
                    code: builtins.int = ...,
                    code_name: builtins.str = ...,
                    name: builtins.str = ...,
                    number: builtins.int = ...,
                ) -> None: ...
                def HasField(self, field_name: typing.Literal["code", b"code", "code_name", b"code_name", "has_code", b"has_code", "has_code_name", b"has_code_name", "has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> builtins.bool: ...
                def ClearField(self, field_name: typing.Literal["code", b"code", "code_name", b"code_name", "has_code", b"has_code", "has_code_name", b"has_code_name", "has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_code_name", b"has_code_name"]) -> typing.Literal["code_name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_number", b"has_number"]) -> typing.Literal["number"] | None: ...

            ERRNO_FIELD_NUMBER: builtins.int
            MACH_EXCEPTION_FIELD_NUMBER: builtins.int
            NS_ERROR_FIELD_NUMBER: builtins.int
            SIGNAL_FIELD_NUMBER: builtins.int
            @property
            def errno(self) -> global___Exception.ExceptionMechanism.ExceptionMechanismMeta.ExceptionMechanismMetaErrno: ...
            @property
            def mach_exception(self) -> global___Exception.ExceptionMechanism.ExceptionMechanismMeta.ExceptionMechanismMetaMachException: ...
            @property
            def ns_error(self) -> global___Exception.ExceptionMechanism.ExceptionMechanismMeta.ExceptionMechanismMetaNsError: ...
            @property
            def signal(self) -> global___Exception.ExceptionMechanism.ExceptionMechanismMeta.ExceptionMechanismMetaSignal: ...
            def __init__(
                self,
                *,
                errno: global___Exception.ExceptionMechanism.ExceptionMechanismMeta.ExceptionMechanismMetaErrno | None = ...,
                mach_exception: global___Exception.ExceptionMechanism.ExceptionMechanismMeta.ExceptionMechanismMetaMachException | None = ...,
                ns_error: global___Exception.ExceptionMechanism.ExceptionMechanismMeta.ExceptionMechanismMetaNsError | None = ...,
                signal: global___Exception.ExceptionMechanism.ExceptionMechanismMeta.ExceptionMechanismMetaSignal | None = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["errno", b"errno", "has_errno", b"has_errno", "has_mach_exception", b"has_mach_exception", "has_ns_error", b"has_ns_error", "has_signal", b"has_signal", "mach_exception", b"mach_exception", "ns_error", b"ns_error", "signal", b"signal"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["errno", b"errno", "has_errno", b"has_errno", "has_mach_exception", b"has_mach_exception", "has_ns_error", b"has_ns_error", "has_signal", b"has_signal", "mach_exception", b"mach_exception", "ns_error", b"ns_error", "signal", b"signal"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_errno", b"has_errno"]) -> typing.Literal["errno"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_mach_exception", b"has_mach_exception"]) -> typing.Literal["mach_exception"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_ns_error", b"has_ns_error"]) -> typing.Literal["ns_error"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_signal", b"has_signal"]) -> typing.Literal["signal"] | None: ...

        DATA_FIELD_NUMBER: builtins.int
        DESCRIPTION_FIELD_NUMBER: builtins.int
        EXCEPTION_ID_FIELD_NUMBER: builtins.int
        HANDLED_FIELD_NUMBER: builtins.int
        HELP_LINK_FIELD_NUMBER: builtins.int
        IS_EXCEPTION_GROUP_FIELD_NUMBER: builtins.int
        META_FIELD_NUMBER: builtins.int
        PARENT_ID_FIELD_NUMBER: builtins.int
        SOURCE_FIELD_NUMBER: builtins.int
        SYNTHETIC_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        description: builtins.str
        exception_id: builtins.int
        handled: builtins.bool
        help_link: builtins.str
        is_exception_group: builtins.bool
        parent_id: builtins.int
        source: builtins.str
        synthetic: builtins.bool
        type: builtins.str
        @property
        def data(self) -> google.protobuf.struct_pb2.Value: ...
        @property
        def meta(self) -> global___Exception.ExceptionMechanism.ExceptionMechanismMeta: ...
        def __init__(
            self,
            *,
            data: google.protobuf.struct_pb2.Value | None = ...,
            description: builtins.str = ...,
            exception_id: builtins.int = ...,
            handled: builtins.bool = ...,
            help_link: builtins.str = ...,
            is_exception_group: builtins.bool = ...,
            meta: global___Exception.ExceptionMechanism.ExceptionMechanismMeta | None = ...,
            parent_id: builtins.int = ...,
            source: builtins.str = ...,
            synthetic: builtins.bool = ...,
            type: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["data", b"data", "description", b"description", "exception_id", b"exception_id", "handled", b"handled", "has_data", b"has_data", "has_description", b"has_description", "has_exception_id", b"has_exception_id", "has_handled", b"has_handled", "has_help_link", b"has_help_link", "has_is_exception_group", b"has_is_exception_group", "has_meta", b"has_meta", "has_parent_id", b"has_parent_id", "has_source", b"has_source", "has_synthetic", b"has_synthetic", "help_link", b"help_link", "is_exception_group", b"is_exception_group", "meta", b"meta", "parent_id", b"parent_id", "source", b"source", "synthetic", b"synthetic"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["data", b"data", "description", b"description", "exception_id", b"exception_id", "handled", b"handled", "has_data", b"has_data", "has_description", b"has_description", "has_exception_id", b"has_exception_id", "has_handled", b"has_handled", "has_help_link", b"has_help_link", "has_is_exception_group", b"has_is_exception_group", "has_meta", b"has_meta", "has_parent_id", b"has_parent_id", "has_source", b"has_source", "has_synthetic", b"has_synthetic", "help_link", b"help_link", "is_exception_group", b"is_exception_group", "meta", b"meta", "parent_id", b"parent_id", "source", b"source", "synthetic", b"synthetic", "type", b"type"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_data", b"has_data"]) -> typing.Literal["data"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_description", b"has_description"]) -> typing.Literal["description"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_exception_id", b"has_exception_id"]) -> typing.Literal["exception_id"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_handled", b"has_handled"]) -> typing.Literal["handled"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_help_link", b"has_help_link"]) -> typing.Literal["help_link"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_is_exception_group", b"has_is_exception_group"]) -> typing.Literal["is_exception_group"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_meta", b"has_meta"]) -> typing.Literal["meta"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_parent_id", b"has_parent_id"]) -> typing.Literal["parent_id"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_source", b"has_source"]) -> typing.Literal["source"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_synthetic", b"has_synthetic"]) -> typing.Literal["synthetic"] | None: ...

    @typing.final
    class ExceptionStacktrace(google.protobuf.message.Message):
        """
        Stack trace containing frames of this exception.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class ExceptionStacktraceFrames(google.protobuf.message.Message):
            """
            Required. A non-empty list of stack frames. The list is ordered from caller to callee, or
            oldest to youngest. The last frame is the one creating the exception.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            @typing.final
            class ExceptionStacktraceFramesLock(google.protobuf.message.Message):
                """
                A possible lock (java monitor object) held by this frame.
                """

                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                ADDRESS_FIELD_NUMBER: builtins.int
                CLASS_NAME_FIELD_NUMBER: builtins.int
                PACKAGE_NAME_FIELD_NUMBER: builtins.int
                THREAD_ID_FIELD_NUMBER: builtins.int
                TYPE_FIELD_NUMBER: builtins.int
                address: builtins.str
                class_name: builtins.str
                package_name: builtins.str
                type: builtins.str
                @property
                def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
                def __init__(
                    self,
                    *,
                    address: builtins.str = ...,
                    class_name: builtins.str = ...,
                    package_name: builtins.str = ...,
                    thread_id: google.protobuf.struct_pb2.Value | None = ...,
                    type: builtins.str = ...,
                ) -> None: ...
                def HasField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id"]) -> builtins.bool: ...
                def ClearField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id", "type", b"type"]) -> None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_address", b"has_address"]) -> typing.Literal["address"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_class_name", b"has_class_name"]) -> typing.Literal["class_name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_package_name", b"has_package_name"]) -> typing.Literal["package_name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...

            ABS_PATH_FIELD_NUMBER: builtins.int
            ADDR_MODE_FIELD_NUMBER: builtins.int
            COLNO_FIELD_NUMBER: builtins.int
            CONTEXT_LINE_FIELD_NUMBER: builtins.int
            FILENAME_FIELD_NUMBER: builtins.int
            FUNCTION_FIELD_NUMBER: builtins.int
            FUNCTION_ID_FIELD_NUMBER: builtins.int
            IMAGE_ADDR_FIELD_NUMBER: builtins.int
            IN_APP_FIELD_NUMBER: builtins.int
            INSTRUCTION_ADDR_FIELD_NUMBER: builtins.int
            LINENO_FIELD_NUMBER: builtins.int
            LOCK_FIELD_NUMBER: builtins.int
            MODULE_FIELD_NUMBER: builtins.int
            PACKAGE_FIELD_NUMBER: builtins.int
            PLATFORM_FIELD_NUMBER: builtins.int
            POST_CONTEXT_FIELD_NUMBER: builtins.int
            PRE_CONTEXT_FIELD_NUMBER: builtins.int
            RAW_FUNCTION_FIELD_NUMBER: builtins.int
            STACK_START_FIELD_NUMBER: builtins.int
            SYMBOL_FIELD_NUMBER: builtins.int
            SYMBOL_ADDR_FIELD_NUMBER: builtins.int
            VARS_FIELD_NUMBER: builtins.int
            abs_path: builtins.str
            addr_mode: builtins.str
            colno: builtins.int
            context_line: builtins.str
            filename: builtins.str
            function: builtins.str
            function_id: builtins.str
            image_addr: builtins.str
            in_app: builtins.bool
            instruction_addr: builtins.str
            lineno: builtins.int
            module: builtins.str
            package: builtins.str
            platform: builtins.str
            raw_function: builtins.str
            stack_start: builtins.bool
            symbol: builtins.str
            symbol_addr: builtins.str
            @property
            def lock(self) -> global___Exception.ExceptionStacktrace.ExceptionStacktraceFrames.ExceptionStacktraceFramesLock: ...
            @property
            def post_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
            @property
            def pre_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
            @property
            def vars(self) -> google.protobuf.struct_pb2.Value: ...
            def __init__(
                self,
                *,
                abs_path: builtins.str = ...,
                addr_mode: builtins.str = ...,
                colno: builtins.int = ...,
                context_line: builtins.str = ...,
                filename: builtins.str = ...,
                function: builtins.str = ...,
                function_id: builtins.str = ...,
                image_addr: builtins.str = ...,
                in_app: builtins.bool = ...,
                instruction_addr: builtins.str = ...,
                lineno: builtins.int = ...,
                lock: global___Exception.ExceptionStacktrace.ExceptionStacktraceFrames.ExceptionStacktraceFramesLock | None = ...,
                module: builtins.str = ...,
                package: builtins.str = ...,
                platform: builtins.str = ...,
                post_context: collections.abc.Iterable[builtins.str] | None = ...,
                pre_context: collections.abc.Iterable[builtins.str] | None = ...,
                raw_function: builtins.str = ...,
                stack_start: builtins.bool = ...,
                symbol: builtins.str = ...,
                symbol_addr: builtins.str = ...,
                vars: google.protobuf.struct_pb2.Value | None = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "post_context", b"post_context", "pre_context", b"pre_context", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_abs_path", b"has_abs_path"]) -> typing.Literal["abs_path"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_addr_mode", b"has_addr_mode"]) -> typing.Literal["addr_mode"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_colno", b"has_colno"]) -> typing.Literal["colno"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_context_line", b"has_context_line"]) -> typing.Literal["context_line"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_filename", b"has_filename"]) -> typing.Literal["filename"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_function", b"has_function"]) -> typing.Literal["function"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_function_id", b"has_function_id"]) -> typing.Literal["function_id"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_image_addr", b"has_image_addr"]) -> typing.Literal["image_addr"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_in_app", b"has_in_app"]) -> typing.Literal["in_app"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr", b"has_instruction_addr"]) -> typing.Literal["instruction_addr"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_lineno", b"has_lineno"]) -> typing.Literal["lineno"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_lock", b"has_lock"]) -> typing.Literal["lock"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_module", b"has_module"]) -> typing.Literal["module"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_package", b"has_package"]) -> typing.Literal["package"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_platform", b"has_platform"]) -> typing.Literal["platform"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_raw_function", b"has_raw_function"]) -> typing.Literal["raw_function"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_stack_start", b"has_stack_start"]) -> typing.Literal["stack_start"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_symbol", b"has_symbol"]) -> typing.Literal["symbol"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_symbol_addr", b"has_symbol_addr"]) -> typing.Literal["symbol_addr"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_vars", b"has_vars"]) -> typing.Literal["vars"] | None: ...

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

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

        FRAMES_FIELD_NUMBER: builtins.int
        INSTRUCTION_ADDR_ADJUSTMENT_FIELD_NUMBER: builtins.int
        LANG_FIELD_NUMBER: builtins.int
        REGISTERS_FIELD_NUMBER: builtins.int
        SNAPSHOT_FIELD_NUMBER: builtins.int
        instruction_addr_adjustment: builtins.str
        lang: builtins.str
        snapshot: builtins.bool
        @property
        def frames(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Exception.ExceptionStacktrace.ExceptionStacktraceFrames]: ...
        @property
        def registers(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
        def __init__(
            self,
            *,
            frames: collections.abc.Iterable[global___Exception.ExceptionStacktrace.ExceptionStacktraceFrames] | None = ...,
            instruction_addr_adjustment: builtins.str = ...,
            lang: builtins.str = ...,
            registers: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
            snapshot: builtins.bool = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "snapshot", b"snapshot"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["frames", b"frames", "has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "registers", b"registers", "snapshot", b"snapshot"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment"]) -> typing.Literal["instruction_addr_adjustment"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_lang", b"has_lang"]) -> typing.Literal["lang"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_snapshot", b"has_snapshot"]) -> typing.Literal["snapshot"] | None: ...

    MECHANISM_FIELD_NUMBER: builtins.int
    MODULE_FIELD_NUMBER: builtins.int
    STACKTRACE_FIELD_NUMBER: builtins.int
    THREAD_ID_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    module: builtins.str
    type: builtins.str
    value: builtins.str
    @property
    def mechanism(self) -> global___Exception.ExceptionMechanism: ...
    @property
    def stacktrace(self) -> global___Exception.ExceptionStacktrace: ...
    @property
    def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        mechanism: global___Exception.ExceptionMechanism | None = ...,
        module: builtins.str = ...,
        stacktrace: global___Exception.ExceptionStacktrace | None = ...,
        thread_id: google.protobuf.struct_pb2.Value | None = ...,
        type: builtins.str = ...,
        value: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_mechanism", b"has_mechanism", "has_module", b"has_module", "has_stacktrace", b"has_stacktrace", "has_thread_id", b"has_thread_id", "has_type", b"has_type", "has_value", b"has_value", "mechanism", b"mechanism", "module", b"module", "stacktrace", b"stacktrace", "thread_id", b"thread_id", "type", b"type", "value", b"value"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["has_mechanism", b"has_mechanism", "has_module", b"has_module", "has_stacktrace", b"has_stacktrace", "has_thread_id", b"has_thread_id", "has_type", b"has_type", "has_value", b"has_value", "mechanism", b"mechanism", "module", b"module", "stacktrace", b"stacktrace", "thread_id", b"thread_id", "type", b"type", "value", b"value"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_mechanism", b"has_mechanism"]) -> typing.Literal["mechanism"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_module", b"has_module"]) -> typing.Literal["module"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_stacktrace", b"has_stacktrace"]) -> typing.Literal["stacktrace"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_type", b"has_type"]) -> typing.Literal["type"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_value", b"has_value"]) -> typing.Literal["value"] | None: ...

global___Exception = Exception

@typing.final
class Frame(google.protobuf.message.Message):
    """
    Holds information about a single stacktrace frame.

    Each object should contain **at least** a `filename`, `function` or `instruction_addr`
    attribute. All values are optional, but recommended.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class FrameLock(google.protobuf.message.Message):
        """
        A possible lock (java monitor object) held by this frame.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        ADDRESS_FIELD_NUMBER: builtins.int
        CLASS_NAME_FIELD_NUMBER: builtins.int
        PACKAGE_NAME_FIELD_NUMBER: builtins.int
        THREAD_ID_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        address: builtins.str
        class_name: builtins.str
        package_name: builtins.str
        type: builtins.str
        @property
        def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
        def __init__(
            self,
            *,
            address: builtins.str = ...,
            class_name: builtins.str = ...,
            package_name: builtins.str = ...,
            thread_id: google.protobuf.struct_pb2.Value | None = ...,
            type: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id", "type", b"type"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_address", b"has_address"]) -> typing.Literal["address"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_class_name", b"has_class_name"]) -> typing.Literal["class_name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_package_name", b"has_package_name"]) -> typing.Literal["package_name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...

    ABS_PATH_FIELD_NUMBER: builtins.int
    ADDR_MODE_FIELD_NUMBER: builtins.int
    COLNO_FIELD_NUMBER: builtins.int
    CONTEXT_LINE_FIELD_NUMBER: builtins.int
    FILENAME_FIELD_NUMBER: builtins.int
    FUNCTION_FIELD_NUMBER: builtins.int
    FUNCTION_ID_FIELD_NUMBER: builtins.int
    IMAGE_ADDR_FIELD_NUMBER: builtins.int
    IN_APP_FIELD_NUMBER: builtins.int
    INSTRUCTION_ADDR_FIELD_NUMBER: builtins.int
    LINENO_FIELD_NUMBER: builtins.int
    LOCK_FIELD_NUMBER: builtins.int
    MODULE_FIELD_NUMBER: builtins.int
    PACKAGE_FIELD_NUMBER: builtins.int
    PLATFORM_FIELD_NUMBER: builtins.int
    POST_CONTEXT_FIELD_NUMBER: builtins.int
    PRE_CONTEXT_FIELD_NUMBER: builtins.int
    RAW_FUNCTION_FIELD_NUMBER: builtins.int
    STACK_START_FIELD_NUMBER: builtins.int
    SYMBOL_FIELD_NUMBER: builtins.int
    SYMBOL_ADDR_FIELD_NUMBER: builtins.int
    VARS_FIELD_NUMBER: builtins.int
    abs_path: builtins.str
    addr_mode: builtins.str
    colno: builtins.int
    context_line: builtins.str
    filename: builtins.str
    function: builtins.str
    function_id: builtins.str
    image_addr: builtins.str
    in_app: builtins.bool
    instruction_addr: builtins.str
    lineno: builtins.int
    module: builtins.str
    package: builtins.str
    platform: builtins.str
    raw_function: builtins.str
    stack_start: builtins.bool
    symbol: builtins.str
    symbol_addr: builtins.str
    @property
    def lock(self) -> global___Frame.FrameLock: ...
    @property
    def post_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def pre_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def vars(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        abs_path: builtins.str = ...,
        addr_mode: builtins.str = ...,
        colno: builtins.int = ...,
        context_line: builtins.str = ...,
        filename: builtins.str = ...,
        function: builtins.str = ...,
        function_id: builtins.str = ...,
        image_addr: builtins.str = ...,
        in_app: builtins.bool = ...,
        instruction_addr: builtins.str = ...,
        lineno: builtins.int = ...,
        lock: global___Frame.FrameLock | None = ...,
        module: builtins.str = ...,
        package: builtins.str = ...,
        platform: builtins.str = ...,
        post_context: collections.abc.Iterable[builtins.str] | None = ...,
        pre_context: collections.abc.Iterable[builtins.str] | None = ...,
        raw_function: builtins.str = ...,
        stack_start: builtins.bool = ...,
        symbol: builtins.str = ...,
        symbol_addr: builtins.str = ...,
        vars: google.protobuf.struct_pb2.Value | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "post_context", b"post_context", "pre_context", b"pre_context", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_abs_path", b"has_abs_path"]) -> typing.Literal["abs_path"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_addr_mode", b"has_addr_mode"]) -> typing.Literal["addr_mode"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_colno", b"has_colno"]) -> typing.Literal["colno"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_context_line", b"has_context_line"]) -> typing.Literal["context_line"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_filename", b"has_filename"]) -> typing.Literal["filename"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_function", b"has_function"]) -> typing.Literal["function"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_function_id", b"has_function_id"]) -> typing.Literal["function_id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_image_addr", b"has_image_addr"]) -> typing.Literal["image_addr"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_in_app", b"has_in_app"]) -> typing.Literal["in_app"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr", b"has_instruction_addr"]) -> typing.Literal["instruction_addr"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_lineno", b"has_lineno"]) -> typing.Literal["lineno"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_lock", b"has_lock"]) -> typing.Literal["lock"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_module", b"has_module"]) -> typing.Literal["module"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_package", b"has_package"]) -> typing.Literal["package"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_platform", b"has_platform"]) -> typing.Literal["platform"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_raw_function", b"has_raw_function"]) -> typing.Literal["raw_function"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_stack_start", b"has_stack_start"]) -> typing.Literal["stack_start"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_symbol", b"has_symbol"]) -> typing.Literal["symbol"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_symbol_addr", b"has_symbol_addr"]) -> typing.Literal["symbol_addr"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_vars", b"has_vars"]) -> typing.Literal["vars"] | None: ...

global___Frame = Frame

@typing.final
class Geo(google.protobuf.message.Message):
    """
    Geographical location of the end user or device.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CITY_FIELD_NUMBER: builtins.int
    COUNTRY_CODE_FIELD_NUMBER: builtins.int
    REGION_FIELD_NUMBER: builtins.int
    SUBDIVISION_FIELD_NUMBER: builtins.int
    city: builtins.str
    country_code: builtins.str
    region: builtins.str
    subdivision: builtins.str
    def __init__(
        self,
        *,
        city: builtins.str = ...,
        country_code: builtins.str = ...,
        region: builtins.str = ...,
        subdivision: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["city", b"city", "country_code", b"country_code", "has_city", b"has_city", "has_country_code", b"has_country_code", "has_region", b"has_region", "has_subdivision", b"has_subdivision", "region", b"region", "subdivision", b"subdivision"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["city", b"city", "country_code", b"country_code", "has_city", b"has_city", "has_country_code", b"has_country_code", "has_region", b"has_region", "has_subdivision", b"has_subdivision", "region", b"region", "subdivision", b"subdivision"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_city", b"has_city"]) -> typing.Literal["city"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_country_code", b"has_country_code"]) -> typing.Literal["country_code"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_region", b"has_region"]) -> typing.Literal["region"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_subdivision", b"has_subdivision"]) -> typing.Literal["subdivision"] | None: ...

global___Geo = Geo

@typing.final
class Gpucontext(google.protobuf.message.Message):
    """
    GPU information.

    Example:

    ```json
    "gpu": {
    "name": "AMD Radeon Pro 560",
    "vendor_name": "Apple",
    "memory_size": 4096,
    "api_type": "Metal",
    "multi_threaded_rendering": true,
    "version": "Metal",
    "npot_support": "Full"
    }
    ```
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    API_TYPE_FIELD_NUMBER: builtins.int
    GRAPHICS_SHADER_LEVEL_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    MAX_TEXTURE_SIZE_FIELD_NUMBER: builtins.int
    MEMORY_SIZE_FIELD_NUMBER: builtins.int
    MULTI_THREADED_RENDERING_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    NPOT_SUPPORT_FIELD_NUMBER: builtins.int
    SUPPORTS_COMPUTE_SHADERS_FIELD_NUMBER: builtins.int
    SUPPORTS_DRAW_CALL_INSTANCING_FIELD_NUMBER: builtins.int
    SUPPORTS_GEOMETRY_SHADERS_FIELD_NUMBER: builtins.int
    SUPPORTS_RAY_TRACING_FIELD_NUMBER: builtins.int
    VENDOR_ID_FIELD_NUMBER: builtins.int
    VENDOR_NAME_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    api_type: builtins.str
    graphics_shader_level: builtins.str
    max_texture_size: builtins.int
    memory_size: builtins.int
    multi_threaded_rendering: builtins.bool
    name: builtins.str
    npot_support: builtins.str
    supports_compute_shaders: builtins.bool
    supports_draw_call_instancing: builtins.bool
    supports_geometry_shaders: builtins.bool
    supports_ray_tracing: builtins.bool
    vendor_id: builtins.str
    vendor_name: builtins.str
    version: builtins.str
    @property
    def id(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        api_type: builtins.str = ...,
        graphics_shader_level: builtins.str = ...,
        id: google.protobuf.struct_pb2.Value | None = ...,
        max_texture_size: builtins.int = ...,
        memory_size: builtins.int = ...,
        multi_threaded_rendering: builtins.bool = ...,
        name: builtins.str = ...,
        npot_support: builtins.str = ...,
        supports_compute_shaders: builtins.bool = ...,
        supports_draw_call_instancing: builtins.bool = ...,
        supports_geometry_shaders: builtins.bool = ...,
        supports_ray_tracing: builtins.bool = ...,
        vendor_id: builtins.str = ...,
        vendor_name: builtins.str = ...,
        version: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["api_type", b"api_type", "graphics_shader_level", b"graphics_shader_level", "has_api_type", b"has_api_type", "has_graphics_shader_level", b"has_graphics_shader_level", "has_max_texture_size", b"has_max_texture_size", "has_memory_size", b"has_memory_size", "has_multi_threaded_rendering", b"has_multi_threaded_rendering", "has_name", b"has_name", "has_npot_support", b"has_npot_support", "has_supports_compute_shaders", b"has_supports_compute_shaders", "has_supports_draw_call_instancing", b"has_supports_draw_call_instancing", "has_supports_geometry_shaders", b"has_supports_geometry_shaders", "has_supports_ray_tracing", b"has_supports_ray_tracing", "has_vendor_id", b"has_vendor_id", "has_vendor_name", b"has_vendor_name", "has_version", b"has_version", "id", b"id", "max_texture_size", b"max_texture_size", "memory_size", b"memory_size", "multi_threaded_rendering", b"multi_threaded_rendering", "name", b"name", "npot_support", b"npot_support", "supports_compute_shaders", b"supports_compute_shaders", "supports_draw_call_instancing", b"supports_draw_call_instancing", "supports_geometry_shaders", b"supports_geometry_shaders", "supports_ray_tracing", b"supports_ray_tracing", "vendor_id", b"vendor_id", "vendor_name", b"vendor_name", "version", b"version"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["api_type", b"api_type", "graphics_shader_level", b"graphics_shader_level", "has_api_type", b"has_api_type", "has_graphics_shader_level", b"has_graphics_shader_level", "has_max_texture_size", b"has_max_texture_size", "has_memory_size", b"has_memory_size", "has_multi_threaded_rendering", b"has_multi_threaded_rendering", "has_name", b"has_name", "has_npot_support", b"has_npot_support", "has_supports_compute_shaders", b"has_supports_compute_shaders", "has_supports_draw_call_instancing", b"has_supports_draw_call_instancing", "has_supports_geometry_shaders", b"has_supports_geometry_shaders", "has_supports_ray_tracing", b"has_supports_ray_tracing", "has_vendor_id", b"has_vendor_id", "has_vendor_name", b"has_vendor_name", "has_version", b"has_version", "id", b"id", "max_texture_size", b"max_texture_size", "memory_size", b"memory_size", "multi_threaded_rendering", b"multi_threaded_rendering", "name", b"name", "npot_support", b"npot_support", "supports_compute_shaders", b"supports_compute_shaders", "supports_draw_call_instancing", b"supports_draw_call_instancing", "supports_geometry_shaders", b"supports_geometry_shaders", "supports_ray_tracing", b"supports_ray_tracing", "vendor_id", b"vendor_id", "vendor_name", b"vendor_name", "version", b"version"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_api_type", b"has_api_type"]) -> typing.Literal["api_type"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_graphics_shader_level", b"has_graphics_shader_level"]) -> typing.Literal["graphics_shader_level"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_max_texture_size", b"has_max_texture_size"]) -> typing.Literal["max_texture_size"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_memory_size", b"has_memory_size"]) -> typing.Literal["memory_size"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_multi_threaded_rendering", b"has_multi_threaded_rendering"]) -> typing.Literal["multi_threaded_rendering"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_npot_support", b"has_npot_support"]) -> typing.Literal["npot_support"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_supports_compute_shaders", b"has_supports_compute_shaders"]) -> typing.Literal["supports_compute_shaders"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_supports_draw_call_instancing", b"has_supports_draw_call_instancing"]) -> typing.Literal["supports_draw_call_instancing"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_supports_geometry_shaders", b"has_supports_geometry_shaders"]) -> typing.Literal["supports_geometry_shaders"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_supports_ray_tracing", b"has_supports_ray_tracing"]) -> typing.Literal["supports_ray_tracing"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_vendor_id", b"has_vendor_id"]) -> typing.Literal["vendor_id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_vendor_name", b"has_vendor_name"]) -> typing.Literal["vendor_name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_version", b"has_version"]) -> typing.Literal["version"] | None: ...

global___Gpucontext = Gpucontext

@typing.final
class Jvmdebugimage(google.protobuf.message.Message):
    """
    A debug image consisting of source files for a JVM based language.

    Examples:

    ```json
    {
    "type": "jvm",
    "debug_id": "395835f4-03e0-4436-80d3-136f0749a893"
    }
    ```
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DEBUG_ID_FIELD_NUMBER: builtins.int
    debug_id: builtins.str
    def __init__(
        self,
        *,
        debug_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["debug_id", b"debug_id"]) -> None: ...

global___Jvmdebugimage = Jvmdebugimage

@typing.final
class Lockreason(google.protobuf.message.Message):
    """
    Represents an instance of a held lock (java monitor object) in a thread.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ADDRESS_FIELD_NUMBER: builtins.int
    CLASS_NAME_FIELD_NUMBER: builtins.int
    PACKAGE_NAME_FIELD_NUMBER: builtins.int
    THREAD_ID_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    address: builtins.str
    class_name: builtins.str
    package_name: builtins.str
    type: builtins.str
    @property
    def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        address: builtins.str = ...,
        class_name: builtins.str = ...,
        package_name: builtins.str = ...,
        thread_id: google.protobuf.struct_pb2.Value | None = ...,
        type: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id", "type", b"type"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_address", b"has_address"]) -> typing.Literal["address"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_class_name", b"has_class_name"]) -> typing.Literal["class_name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_package_name", b"has_package_name"]) -> typing.Literal["package_name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...

global___Lockreason = Lockreason

@typing.final
class Logentry(google.protobuf.message.Message):
    """
    A log entry message.

    A log message is similar to the `message` attribute on the event itself but
    can additionally hold optional parameters.

    ```json
    {
    "message": {
    "message": "My raw message with interpreted strings like %s",
    "params": ["this"]
    }
    }
    ```

    ```json
    {
    "message": {
    "message": "My raw message with interpreted strings like {foo}",
    "params": {"foo": "this"}
    }
    }
    ```
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FORMATTED_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    PARAMS_FIELD_NUMBER: builtins.int
    formatted: builtins.str
    message: builtins.str
    @property
    def params(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        formatted: builtins.str = ...,
        message: builtins.str = ...,
        params: google.protobuf.struct_pb2.Value | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["formatted", b"formatted", "has_formatted", b"has_formatted", "has_message", b"has_message", "message", b"message", "params", b"params"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["formatted", b"formatted", "has_formatted", b"has_formatted", "has_message", b"has_message", "message", b"message", "params", b"params"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_formatted", b"has_formatted"]) -> typing.Literal["formatted"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_message", b"has_message"]) -> typing.Literal["message"] | None: ...

global___Logentry = Logentry

@typing.final
class Machexception(google.protobuf.message.Message):
    """
    Mach exception information.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CODE_FIELD_NUMBER: builtins.int
    EXCEPTION_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    SUBCODE_FIELD_NUMBER: builtins.int
    code: builtins.int
    exception: builtins.int
    name: builtins.str
    subcode: builtins.int
    def __init__(
        self,
        *,
        code: builtins.int = ...,
        exception: builtins.int = ...,
        name: builtins.str = ...,
        subcode: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["code", b"code", "exception", b"exception", "has_code", b"has_code", "has_exception", b"has_exception", "has_name", b"has_name", "has_subcode", b"has_subcode", "name", b"name", "subcode", b"subcode"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["code", b"code", "exception", b"exception", "has_code", b"has_code", "has_exception", b"has_exception", "has_name", b"has_name", "has_subcode", b"has_subcode", "name", b"name", "subcode", b"subcode"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_exception", b"has_exception"]) -> typing.Literal["exception"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_subcode", b"has_subcode"]) -> typing.Literal["subcode"] | None: ...

global___Machexception = Machexception

@typing.final
class Mechanism(google.protobuf.message.Message):
    """
    The mechanism by which an exception was generated and handled.

    The exception mechanism is an optional field residing in the [exception](#typedef-Exception).
    It carries additional information about the way the exception was created on the target system.
    This includes general exception values obtained from the operating system or runtime APIs, as
    well as mechanism-specific values.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class MechanismMeta(google.protobuf.message.Message):
        """
        Operating system or runtime meta information.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class MechanismMetaErrno(google.protobuf.message.Message):
            """
            Optional ISO C standard error code.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            NAME_FIELD_NUMBER: builtins.int
            NUMBER_FIELD_NUMBER: builtins.int
            name: builtins.str
            number: builtins.int
            def __init__(
                self,
                *,
                name: builtins.str = ...,
                number: builtins.int = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_number", b"has_number"]) -> typing.Literal["number"] | None: ...

        @typing.final
        class MechanismMetaMachException(google.protobuf.message.Message):
            """
            A Mach Exception on Apple systems comprising a code triple and optional descriptions.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            CODE_FIELD_NUMBER: builtins.int
            EXCEPTION_FIELD_NUMBER: builtins.int
            NAME_FIELD_NUMBER: builtins.int
            SUBCODE_FIELD_NUMBER: builtins.int
            code: builtins.int
            exception: builtins.int
            name: builtins.str
            subcode: builtins.int
            def __init__(
                self,
                *,
                code: builtins.int = ...,
                exception: builtins.int = ...,
                name: builtins.str = ...,
                subcode: builtins.int = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["code", b"code", "exception", b"exception", "has_code", b"has_code", "has_exception", b"has_exception", "has_name", b"has_name", "has_subcode", b"has_subcode", "name", b"name", "subcode", b"subcode"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["code", b"code", "exception", b"exception", "has_code", b"has_code", "has_exception", b"has_exception", "has_name", b"has_name", "has_subcode", b"has_subcode", "name", b"name", "subcode", b"subcode"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_exception", b"has_exception"]) -> typing.Literal["exception"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_subcode", b"has_subcode"]) -> typing.Literal["subcode"] | None: ...

        @typing.final
        class MechanismMetaNsError(google.protobuf.message.Message):
            """
            An NSError on Apple systems comprising code and signal.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            CODE_FIELD_NUMBER: builtins.int
            DOMAIN_FIELD_NUMBER: builtins.int
            code: builtins.int
            domain: builtins.str
            def __init__(
                self,
                *,
                code: builtins.int = ...,
                domain: builtins.str = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["code", b"code", "domain", b"domain", "has_code", b"has_code", "has_domain", b"has_domain"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["code", b"code", "domain", b"domain", "has_code", b"has_code", "has_domain", b"has_domain"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_domain", b"has_domain"]) -> typing.Literal["domain"] | None: ...

        @typing.final
        class MechanismMetaSignal(google.protobuf.message.Message):
            """
            Information on the POSIX signal.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            CODE_FIELD_NUMBER: builtins.int
            CODE_NAME_FIELD_NUMBER: builtins.int
            NAME_FIELD_NUMBER: builtins.int
            NUMBER_FIELD_NUMBER: builtins.int
            code: builtins.int
            code_name: builtins.str
            name: builtins.str
            number: builtins.int
            def __init__(
                self,
                *,
                code: builtins.int = ...,
                code_name: builtins.str = ...,
                name: builtins.str = ...,
                number: builtins.int = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["code", b"code", "code_name", b"code_name", "has_code", b"has_code", "has_code_name", b"has_code_name", "has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["code", b"code", "code_name", b"code_name", "has_code", b"has_code", "has_code_name", b"has_code_name", "has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_code_name", b"has_code_name"]) -> typing.Literal["code_name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_number", b"has_number"]) -> typing.Literal["number"] | None: ...

        ERRNO_FIELD_NUMBER: builtins.int
        MACH_EXCEPTION_FIELD_NUMBER: builtins.int
        NS_ERROR_FIELD_NUMBER: builtins.int
        SIGNAL_FIELD_NUMBER: builtins.int
        @property
        def errno(self) -> global___Mechanism.MechanismMeta.MechanismMetaErrno: ...
        @property
        def mach_exception(self) -> global___Mechanism.MechanismMeta.MechanismMetaMachException: ...
        @property
        def ns_error(self) -> global___Mechanism.MechanismMeta.MechanismMetaNsError: ...
        @property
        def signal(self) -> global___Mechanism.MechanismMeta.MechanismMetaSignal: ...
        def __init__(
            self,
            *,
            errno: global___Mechanism.MechanismMeta.MechanismMetaErrno | None = ...,
            mach_exception: global___Mechanism.MechanismMeta.MechanismMetaMachException | None = ...,
            ns_error: global___Mechanism.MechanismMeta.MechanismMetaNsError | None = ...,
            signal: global___Mechanism.MechanismMeta.MechanismMetaSignal | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["errno", b"errno", "has_errno", b"has_errno", "has_mach_exception", b"has_mach_exception", "has_ns_error", b"has_ns_error", "has_signal", b"has_signal", "mach_exception", b"mach_exception", "ns_error", b"ns_error", "signal", b"signal"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["errno", b"errno", "has_errno", b"has_errno", "has_mach_exception", b"has_mach_exception", "has_ns_error", b"has_ns_error", "has_signal", b"has_signal", "mach_exception", b"mach_exception", "ns_error", b"ns_error", "signal", b"signal"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_errno", b"has_errno"]) -> typing.Literal["errno"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_mach_exception", b"has_mach_exception"]) -> typing.Literal["mach_exception"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_ns_error", b"has_ns_error"]) -> typing.Literal["ns_error"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_signal", b"has_signal"]) -> typing.Literal["signal"] | None: ...

    DATA_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    EXCEPTION_ID_FIELD_NUMBER: builtins.int
    HANDLED_FIELD_NUMBER: builtins.int
    HELP_LINK_FIELD_NUMBER: builtins.int
    IS_EXCEPTION_GROUP_FIELD_NUMBER: builtins.int
    META_FIELD_NUMBER: builtins.int
    PARENT_ID_FIELD_NUMBER: builtins.int
    SOURCE_FIELD_NUMBER: builtins.int
    SYNTHETIC_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    description: builtins.str
    exception_id: builtins.int
    handled: builtins.bool
    help_link: builtins.str
    is_exception_group: builtins.bool
    parent_id: builtins.int
    source: builtins.str
    synthetic: builtins.bool
    type: builtins.str
    @property
    def data(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def meta(self) -> global___Mechanism.MechanismMeta: ...
    def __init__(
        self,
        *,
        data: google.protobuf.struct_pb2.Value | None = ...,
        description: builtins.str = ...,
        exception_id: builtins.int = ...,
        handled: builtins.bool = ...,
        help_link: builtins.str = ...,
        is_exception_group: builtins.bool = ...,
        meta: global___Mechanism.MechanismMeta | None = ...,
        parent_id: builtins.int = ...,
        source: builtins.str = ...,
        synthetic: builtins.bool = ...,
        type: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["data", b"data", "description", b"description", "exception_id", b"exception_id", "handled", b"handled", "has_data", b"has_data", "has_description", b"has_description", "has_exception_id", b"has_exception_id", "has_handled", b"has_handled", "has_help_link", b"has_help_link", "has_is_exception_group", b"has_is_exception_group", "has_meta", b"has_meta", "has_parent_id", b"has_parent_id", "has_source", b"has_source", "has_synthetic", b"has_synthetic", "help_link", b"help_link", "is_exception_group", b"is_exception_group", "meta", b"meta", "parent_id", b"parent_id", "source", b"source", "synthetic", b"synthetic"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["data", b"data", "description", b"description", "exception_id", b"exception_id", "handled", b"handled", "has_data", b"has_data", "has_description", b"has_description", "has_exception_id", b"has_exception_id", "has_handled", b"has_handled", "has_help_link", b"has_help_link", "has_is_exception_group", b"has_is_exception_group", "has_meta", b"has_meta", "has_parent_id", b"has_parent_id", "has_source", b"has_source", "has_synthetic", b"has_synthetic", "help_link", b"help_link", "is_exception_group", b"is_exception_group", "meta", b"meta", "parent_id", b"parent_id", "source", b"source", "synthetic", b"synthetic", "type", b"type"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_data", b"has_data"]) -> typing.Literal["data"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_description", b"has_description"]) -> typing.Literal["description"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_exception_id", b"has_exception_id"]) -> typing.Literal["exception_id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_handled", b"has_handled"]) -> typing.Literal["handled"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_help_link", b"has_help_link"]) -> typing.Literal["help_link"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_is_exception_group", b"has_is_exception_group"]) -> typing.Literal["is_exception_group"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_meta", b"has_meta"]) -> typing.Literal["meta"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_parent_id", b"has_parent_id"]) -> typing.Literal["parent_id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_source", b"has_source"]) -> typing.Literal["source"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_synthetic", b"has_synthetic"]) -> typing.Literal["synthetic"] | None: ...

global___Mechanism = Mechanism

@typing.final
class Mechanismmeta(google.protobuf.message.Message):
    """
    Operating system or runtime meta information to an exception mechanism.

    The mechanism metadata usually carries error codes reported by the runtime or operating system,
    along with a platform-dependent interpretation of these codes. SDKs can safely omit code names
    and descriptions for well-known error codes, as it will be filled out by Sentry. For
    proprietary or vendor-specific error codes, adding these values will give additional
    information to the user.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class MechanismmetaErrno(google.protobuf.message.Message):
        """
        Optional ISO C standard error code.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        NAME_FIELD_NUMBER: builtins.int
        NUMBER_FIELD_NUMBER: builtins.int
        name: builtins.str
        number: builtins.int
        def __init__(
            self,
            *,
            name: builtins.str = ...,
            number: builtins.int = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_number", b"has_number"]) -> typing.Literal["number"] | None: ...

    @typing.final
    class MechanismmetaMachException(google.protobuf.message.Message):
        """
        A Mach Exception on Apple systems comprising a code triple and optional descriptions.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        CODE_FIELD_NUMBER: builtins.int
        EXCEPTION_FIELD_NUMBER: builtins.int
        NAME_FIELD_NUMBER: builtins.int
        SUBCODE_FIELD_NUMBER: builtins.int
        code: builtins.int
        exception: builtins.int
        name: builtins.str
        subcode: builtins.int
        def __init__(
            self,
            *,
            code: builtins.int = ...,
            exception: builtins.int = ...,
            name: builtins.str = ...,
            subcode: builtins.int = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["code", b"code", "exception", b"exception", "has_code", b"has_code", "has_exception", b"has_exception", "has_name", b"has_name", "has_subcode", b"has_subcode", "name", b"name", "subcode", b"subcode"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["code", b"code", "exception", b"exception", "has_code", b"has_code", "has_exception", b"has_exception", "has_name", b"has_name", "has_subcode", b"has_subcode", "name", b"name", "subcode", b"subcode"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_exception", b"has_exception"]) -> typing.Literal["exception"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_subcode", b"has_subcode"]) -> typing.Literal["subcode"] | None: ...

    @typing.final
    class MechanismmetaNsError(google.protobuf.message.Message):
        """
        An NSError on Apple systems comprising code and signal.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        CODE_FIELD_NUMBER: builtins.int
        DOMAIN_FIELD_NUMBER: builtins.int
        code: builtins.int
        domain: builtins.str
        def __init__(
            self,
            *,
            code: builtins.int = ...,
            domain: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["code", b"code", "domain", b"domain", "has_code", b"has_code", "has_domain", b"has_domain"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["code", b"code", "domain", b"domain", "has_code", b"has_code", "has_domain", b"has_domain"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_domain", b"has_domain"]) -> typing.Literal["domain"] | None: ...

    @typing.final
    class MechanismmetaSignal(google.protobuf.message.Message):
        """
        Information on the POSIX signal.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        CODE_FIELD_NUMBER: builtins.int
        CODE_NAME_FIELD_NUMBER: builtins.int
        NAME_FIELD_NUMBER: builtins.int
        NUMBER_FIELD_NUMBER: builtins.int
        code: builtins.int
        code_name: builtins.str
        name: builtins.str
        number: builtins.int
        def __init__(
            self,
            *,
            code: builtins.int = ...,
            code_name: builtins.str = ...,
            name: builtins.str = ...,
            number: builtins.int = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["code", b"code", "code_name", b"code_name", "has_code", b"has_code", "has_code_name", b"has_code_name", "has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["code", b"code", "code_name", b"code_name", "has_code", b"has_code", "has_code_name", b"has_code_name", "has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_code_name", b"has_code_name"]) -> typing.Literal["code_name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_number", b"has_number"]) -> typing.Literal["number"] | None: ...

    ERRNO_FIELD_NUMBER: builtins.int
    MACH_EXCEPTION_FIELD_NUMBER: builtins.int
    NS_ERROR_FIELD_NUMBER: builtins.int
    SIGNAL_FIELD_NUMBER: builtins.int
    @property
    def errno(self) -> global___Mechanismmeta.MechanismmetaErrno: ...
    @property
    def mach_exception(self) -> global___Mechanismmeta.MechanismmetaMachException: ...
    @property
    def ns_error(self) -> global___Mechanismmeta.MechanismmetaNsError: ...
    @property
    def signal(self) -> global___Mechanismmeta.MechanismmetaSignal: ...
    def __init__(
        self,
        *,
        errno: global___Mechanismmeta.MechanismmetaErrno | None = ...,
        mach_exception: global___Mechanismmeta.MechanismmetaMachException | None = ...,
        ns_error: global___Mechanismmeta.MechanismmetaNsError | None = ...,
        signal: global___Mechanismmeta.MechanismmetaSignal | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["errno", b"errno", "has_errno", b"has_errno", "has_mach_exception", b"has_mach_exception", "has_ns_error", b"has_ns_error", "has_signal", b"has_signal", "mach_exception", b"mach_exception", "ns_error", b"ns_error", "signal", b"signal"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["errno", b"errno", "has_errno", b"has_errno", "has_mach_exception", b"has_mach_exception", "has_ns_error", b"has_ns_error", "has_signal", b"has_signal", "mach_exception", b"mach_exception", "ns_error", b"ns_error", "signal", b"signal"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_errno", b"has_errno"]) -> typing.Literal["errno"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_mach_exception", b"has_mach_exception"]) -> typing.Literal["mach_exception"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_ns_error", b"has_ns_error"]) -> typing.Literal["ns_error"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_signal", b"has_signal"]) -> typing.Literal["signal"] | None: ...

global___Mechanismmeta = Mechanismmeta

@typing.final
class Nativedebugimage(google.protobuf.message.Message):
    """
    A generic (new-style) native platform debug information file.

    The `type` key must be one of:

    - `macho`
    - `elf`: ELF images are used on Linux platforms. Their structure is identical to other native images.
    - `pe`

    Examples:

    ```json
    {
    "type": "elf",
    "code_id": "68220ae2c65d65c1b6aaa12fa6765a6ec2f5f434",
    "code_file": "/lib/x86_64-linux-gnu/libgcc_s.so.1",
    "debug_id": "e20a2268-5dc6-c165-b6aa-a12fa6765a6e",
    "image_addr": "0x7f5140527000",
    "image_size": 90112,
    "image_vmaddr": "0x40000",
    "arch": "x86_64"
    }
    ```

    ```json
    {
    "type": "pe",
    "code_id": "57898e12145000",
    "code_file": "C:\\\\Windows\\\\System32\\\\dbghelp.dll",
    "debug_id": "9c2a902b-6fdf-40ad-8308-588a41d572a0-1",
    "debug_file": "dbghelp.pdb",
    "image_addr": "0x70850000",
    "image_size": "1331200",
    "image_vmaddr": "0x40000",
    "arch": "x86"
    }
    ```

    ```json
    {
    "type": "macho",
    "debug_id": "84a04d24-0e60-3810-a8c0-90a65e2df61a",
    "debug_file": "libDiagnosticMessagesClient.dylib",
    "code_file": "/usr/lib/libDiagnosticMessagesClient.dylib",
    "image_addr": "0x7fffe668e000",
    "image_size": 8192,
    "image_vmaddr": "0x40000",
    "arch": "x86_64",
    }
    ```
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ARCH_FIELD_NUMBER: builtins.int
    CODE_FILE_FIELD_NUMBER: builtins.int
    CODE_ID_FIELD_NUMBER: builtins.int
    DEBUG_CHECKSUM_FIELD_NUMBER: builtins.int
    DEBUG_FILE_FIELD_NUMBER: builtins.int
    DEBUG_ID_FIELD_NUMBER: builtins.int
    IMAGE_ADDR_FIELD_NUMBER: builtins.int
    IMAGE_SIZE_FIELD_NUMBER: builtins.int
    IMAGE_VMADDR_FIELD_NUMBER: builtins.int
    arch: builtins.str
    code_file: builtins.str
    code_id: builtins.str
    debug_checksum: builtins.str
    debug_file: builtins.str
    debug_id: builtins.str
    image_addr: builtins.str
    image_size: builtins.int
    image_vmaddr: builtins.str
    def __init__(
        self,
        *,
        arch: builtins.str = ...,
        code_file: builtins.str = ...,
        code_id: builtins.str = ...,
        debug_checksum: builtins.str = ...,
        debug_file: builtins.str = ...,
        debug_id: builtins.str = ...,
        image_addr: builtins.str = ...,
        image_size: builtins.int = ...,
        image_vmaddr: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["arch", b"arch", "code_id", b"code_id", "debug_checksum", b"debug_checksum", "debug_file", b"debug_file", "has_arch", b"has_arch", "has_code_id", b"has_code_id", "has_debug_checksum", b"has_debug_checksum", "has_debug_file", b"has_debug_file", "has_image_addr", b"has_image_addr", "has_image_size", b"has_image_size", "has_image_vmaddr", b"has_image_vmaddr", "image_addr", b"image_addr", "image_size", b"image_size", "image_vmaddr", b"image_vmaddr"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["arch", b"arch", "code_file", b"code_file", "code_id", b"code_id", "debug_checksum", b"debug_checksum", "debug_file", b"debug_file", "debug_id", b"debug_id", "has_arch", b"has_arch", "has_code_id", b"has_code_id", "has_debug_checksum", b"has_debug_checksum", "has_debug_file", b"has_debug_file", "has_image_addr", b"has_image_addr", "has_image_size", b"has_image_size", "has_image_vmaddr", b"has_image_vmaddr", "image_addr", b"image_addr", "image_size", b"image_size", "image_vmaddr", b"image_vmaddr"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_arch", b"has_arch"]) -> typing.Literal["arch"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_code_id", b"has_code_id"]) -> typing.Literal["code_id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_debug_checksum", b"has_debug_checksum"]) -> typing.Literal["debug_checksum"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_debug_file", b"has_debug_file"]) -> typing.Literal["debug_file"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_image_addr", b"has_image_addr"]) -> typing.Literal["image_addr"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_image_size", b"has_image_size"]) -> typing.Literal["image_size"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_image_vmaddr", b"has_image_vmaddr"]) -> typing.Literal["image_vmaddr"] | None: ...

global___Nativedebugimage = Nativedebugimage

@typing.final
class Nelcontext(google.protobuf.message.Message):
    """
    Contains NEL report information.

    Network Error Logging (NEL) is a browser feature that allows reporting of failed network
    requests from the client side. See the following resources for more information:

    - [W3C Editor's Draft](https://w3c.github.io/network-error-logging/)
    - [MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Network_Error_Logging)
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ELAPSED_TIME_FIELD_NUMBER: builtins.int
    ERROR_TYPE_FIELD_NUMBER: builtins.int
    PHASE_FIELD_NUMBER: builtins.int
    SAMPLING_FRACTION_FIELD_NUMBER: builtins.int
    SERVER_IP_FIELD_NUMBER: builtins.int
    elapsed_time: builtins.int
    error_type: builtins.str
    sampling_fraction: builtins.float
    server_ip: builtins.str
    @property
    def phase(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        elapsed_time: builtins.int = ...,
        error_type: builtins.str = ...,
        phase: google.protobuf.struct_pb2.Value | None = ...,
        sampling_fraction: builtins.float = ...,
        server_ip: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["elapsed_time", b"elapsed_time", "error_type", b"error_type", "has_elapsed_time", b"has_elapsed_time", "has_error_type", b"has_error_type", "has_phase", b"has_phase", "has_sampling_fraction", b"has_sampling_fraction", "has_server_ip", b"has_server_ip", "phase", b"phase", "sampling_fraction", b"sampling_fraction", "server_ip", b"server_ip"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["elapsed_time", b"elapsed_time", "error_type", b"error_type", "has_elapsed_time", b"has_elapsed_time", "has_error_type", b"has_error_type", "has_phase", b"has_phase", "has_sampling_fraction", b"has_sampling_fraction", "has_server_ip", b"has_server_ip", "phase", b"phase", "sampling_fraction", b"sampling_fraction", "server_ip", b"server_ip"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_elapsed_time", b"has_elapsed_time"]) -> typing.Literal["elapsed_time"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_error_type", b"has_error_type"]) -> typing.Literal["error_type"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_phase", b"has_phase"]) -> typing.Literal["phase"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_sampling_fraction", b"has_sampling_fraction"]) -> typing.Literal["sampling_fraction"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_server_ip", b"has_server_ip"]) -> typing.Literal["server_ip"] | None: ...

global___Nelcontext = Nelcontext

@typing.final
class Nserror(google.protobuf.message.Message):
    """
    NSError informaiton.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CODE_FIELD_NUMBER: builtins.int
    DOMAIN_FIELD_NUMBER: builtins.int
    code: builtins.int
    domain: builtins.str
    def __init__(
        self,
        *,
        code: builtins.int = ...,
        domain: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["code", b"code", "domain", b"domain", "has_code", b"has_code", "has_domain", b"has_domain"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["code", b"code", "domain", b"domain", "has_code", b"has_code", "has_domain", b"has_domain"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_domain", b"has_domain"]) -> typing.Literal["domain"] | None: ...

global___Nserror = Nserror

@typing.final
class Oscontext(google.protobuf.message.Message):
    """
    Operating system information.

    OS context describes the operating system on which the event was created. In web contexts, this
    is the operating system of the browser (generally pulled from the User-Agent string).
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    BUILD_FIELD_NUMBER: builtins.int
    KERNEL_VERSION_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    RAW_DESCRIPTION_FIELD_NUMBER: builtins.int
    ROOTED_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    build: builtins.str
    kernel_version: builtins.str
    name: builtins.str
    raw_description: builtins.str
    rooted: builtins.bool
    version: builtins.str
    def __init__(
        self,
        *,
        build: builtins.str = ...,
        kernel_version: builtins.str = ...,
        name: builtins.str = ...,
        raw_description: builtins.str = ...,
        rooted: builtins.bool = ...,
        version: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["build", b"build", "has_build", b"has_build", "has_kernel_version", b"has_kernel_version", "has_name", b"has_name", "has_raw_description", b"has_raw_description", "has_rooted", b"has_rooted", "has_version", b"has_version", "kernel_version", b"kernel_version", "name", b"name", "raw_description", b"raw_description", "rooted", b"rooted", "version", b"version"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["build", b"build", "has_build", b"has_build", "has_kernel_version", b"has_kernel_version", "has_name", b"has_name", "has_raw_description", b"has_raw_description", "has_rooted", b"has_rooted", "has_version", b"has_version", "kernel_version", b"kernel_version", "name", b"name", "raw_description", b"raw_description", "rooted", b"rooted", "version", b"version"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_build", b"has_build"]) -> typing.Literal["build"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_kernel_version", b"has_kernel_version"]) -> typing.Literal["kernel_version"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_raw_description", b"has_raw_description"]) -> typing.Literal["raw_description"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_rooted", b"has_rooted"]) -> typing.Literal["rooted"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_version", b"has_version"]) -> typing.Literal["version"] | None: ...

global___Oscontext = Oscontext

@typing.final
class Otelcontext(google.protobuf.message.Message):
    """
    OpenTelemetry Context

    If an event has this context, it was generated from an OpenTelemetry signal (trace, metric, log).
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ATTRIBUTES_FIELD_NUMBER: builtins.int
    RESOURCE_FIELD_NUMBER: builtins.int
    @property
    def attributes(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def resource(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        attributes: google.protobuf.struct_pb2.Value | None = ...,
        resource: google.protobuf.struct_pb2.Value | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["attributes", b"attributes", "has_attributes", b"has_attributes", "has_resource", b"has_resource", "resource", b"resource"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["attributes", b"attributes", "has_attributes", b"has_attributes", "has_resource", b"has_resource", "resource", b"resource"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_attributes", b"has_attributes"]) -> typing.Literal["attributes"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_resource", b"has_resource"]) -> typing.Literal["resource"] | None: ...

global___Otelcontext = Otelcontext

@typing.final
class Posixsignal(google.protobuf.message.Message):
    """
    POSIX signal with optional extended data.

    On Apple systems, signals also carry a code in addition to the signal number describing the
    signal in more detail. On Linux, this code does not exist.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CODE_FIELD_NUMBER: builtins.int
    CODE_NAME_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    NUMBER_FIELD_NUMBER: builtins.int
    code: builtins.int
    code_name: builtins.str
    name: builtins.str
    number: builtins.int
    def __init__(
        self,
        *,
        code: builtins.int = ...,
        code_name: builtins.str = ...,
        name: builtins.str = ...,
        number: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["code", b"code", "code_name", b"code_name", "has_code", b"has_code", "has_code_name", b"has_code_name", "has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["code", b"code", "code_name", b"code_name", "has_code", b"has_code", "has_code_name", b"has_code_name", "has_name", b"has_name", "has_number", b"has_number", "name", b"name", "number", b"number"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_code", b"has_code"]) -> typing.Literal["code"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_code_name", b"has_code_name"]) -> typing.Literal["code_name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_number", b"has_number"]) -> typing.Literal["number"] | None: ...

global___Posixsignal = Posixsignal

@typing.final
class Profilecontext(google.protobuf.message.Message):
    """
    Profile context
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PROFILE_ID_FIELD_NUMBER: builtins.int
    profile_id: builtins.str
    def __init__(
        self,
        *,
        profile_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["profile_id", b"profile_id"]) -> None: ...

global___Profilecontext = Profilecontext

@typing.final
class Proguarddebugimage(google.protobuf.message.Message):
    """
    Proguard mapping file.

    Proguard images refer to `mapping.txt` files generated when Proguard obfuscates function names. The Java SDK integrations assign this file a unique identifier, which has to be included in the list of images.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    UUID_FIELD_NUMBER: builtins.int
    uuid: builtins.str
    def __init__(
        self,
        *,
        uuid: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["uuid", b"uuid"]) -> None: ...

global___Proguarddebugimage = Proguarddebugimage

@typing.final
class Rawstacktrace(google.protobuf.message.Message):
    """
    A stack trace of a single thread.

    A stack trace contains a list of frames, each with various bits (most optional) describing the
    context of that frame. Frames should be sorted from oldest to newest.

    For the given example program written in Python:

    ```python
    def foo():
    my_var = 'foo'
    raise ValueError()

    def main():
    foo()
    ```

    A minimalistic stack trace for the above program in the correct order:

    ```json
    {
    "frames": [
    {"function": "main"},
    {"function": "foo"}
    ]
    }
    ```

    The top frame fully symbolicated with five lines of source context:

    ```json
    {
    "frames": [{
    "in_app": true,
    "function": "myfunction",
    "abs_path": "/real/file/name.py",
    "filename": "file/name.py",
    "lineno": 3,
    "vars": {
    "my_var": "'value'"
    },
    "pre_context": [
    "def foo():",
    "  my_var = 'foo'",
    ],
    "context_line": "  raise ValueError()",
    "post_context": [
    "",
    "def main():"
    ],
    }]
    }
    ```

    A minimal native stack trace with register values. Note that the `package` event attribute must
    be "native" for these frames to be symbolicated.

    ```json
    {
    "frames": [
    {"instruction_addr": "0x7fff5bf3456c"},
    {"instruction_addr": "0x7fff5bf346c0"},
    ],
    "registers": {
    "rip": "0x00007ff6eef54be2",
    "rsp": "0x0000003b710cd9e0"
    }
    }
    ```
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class RawstacktraceFrames(google.protobuf.message.Message):
        """
        Required. A non-empty list of stack frames. The list is ordered from caller to callee, or
        oldest to youngest. The last frame is the one creating the exception.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class RawstacktraceFramesLock(google.protobuf.message.Message):
            """
            A possible lock (java monitor object) held by this frame.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            ADDRESS_FIELD_NUMBER: builtins.int
            CLASS_NAME_FIELD_NUMBER: builtins.int
            PACKAGE_NAME_FIELD_NUMBER: builtins.int
            THREAD_ID_FIELD_NUMBER: builtins.int
            TYPE_FIELD_NUMBER: builtins.int
            address: builtins.str
            class_name: builtins.str
            package_name: builtins.str
            type: builtins.str
            @property
            def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
            def __init__(
                self,
                *,
                address: builtins.str = ...,
                class_name: builtins.str = ...,
                package_name: builtins.str = ...,
                thread_id: google.protobuf.struct_pb2.Value | None = ...,
                type: builtins.str = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id", "type", b"type"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_address", b"has_address"]) -> typing.Literal["address"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_class_name", b"has_class_name"]) -> typing.Literal["class_name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_package_name", b"has_package_name"]) -> typing.Literal["package_name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...

        ABS_PATH_FIELD_NUMBER: builtins.int
        ADDR_MODE_FIELD_NUMBER: builtins.int
        COLNO_FIELD_NUMBER: builtins.int
        CONTEXT_LINE_FIELD_NUMBER: builtins.int
        FILENAME_FIELD_NUMBER: builtins.int
        FUNCTION_FIELD_NUMBER: builtins.int
        FUNCTION_ID_FIELD_NUMBER: builtins.int
        IMAGE_ADDR_FIELD_NUMBER: builtins.int
        IN_APP_FIELD_NUMBER: builtins.int
        INSTRUCTION_ADDR_FIELD_NUMBER: builtins.int
        LINENO_FIELD_NUMBER: builtins.int
        LOCK_FIELD_NUMBER: builtins.int
        MODULE_FIELD_NUMBER: builtins.int
        PACKAGE_FIELD_NUMBER: builtins.int
        PLATFORM_FIELD_NUMBER: builtins.int
        POST_CONTEXT_FIELD_NUMBER: builtins.int
        PRE_CONTEXT_FIELD_NUMBER: builtins.int
        RAW_FUNCTION_FIELD_NUMBER: builtins.int
        STACK_START_FIELD_NUMBER: builtins.int
        SYMBOL_FIELD_NUMBER: builtins.int
        SYMBOL_ADDR_FIELD_NUMBER: builtins.int
        VARS_FIELD_NUMBER: builtins.int
        abs_path: builtins.str
        addr_mode: builtins.str
        colno: builtins.int
        context_line: builtins.str
        filename: builtins.str
        function: builtins.str
        function_id: builtins.str
        image_addr: builtins.str
        in_app: builtins.bool
        instruction_addr: builtins.str
        lineno: builtins.int
        module: builtins.str
        package: builtins.str
        platform: builtins.str
        raw_function: builtins.str
        stack_start: builtins.bool
        symbol: builtins.str
        symbol_addr: builtins.str
        @property
        def lock(self) -> global___Rawstacktrace.RawstacktraceFrames.RawstacktraceFramesLock: ...
        @property
        def post_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
        @property
        def pre_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
        @property
        def vars(self) -> google.protobuf.struct_pb2.Value: ...
        def __init__(
            self,
            *,
            abs_path: builtins.str = ...,
            addr_mode: builtins.str = ...,
            colno: builtins.int = ...,
            context_line: builtins.str = ...,
            filename: builtins.str = ...,
            function: builtins.str = ...,
            function_id: builtins.str = ...,
            image_addr: builtins.str = ...,
            in_app: builtins.bool = ...,
            instruction_addr: builtins.str = ...,
            lineno: builtins.int = ...,
            lock: global___Rawstacktrace.RawstacktraceFrames.RawstacktraceFramesLock | None = ...,
            module: builtins.str = ...,
            package: builtins.str = ...,
            platform: builtins.str = ...,
            post_context: collections.abc.Iterable[builtins.str] | None = ...,
            pre_context: collections.abc.Iterable[builtins.str] | None = ...,
            raw_function: builtins.str = ...,
            stack_start: builtins.bool = ...,
            symbol: builtins.str = ...,
            symbol_addr: builtins.str = ...,
            vars: google.protobuf.struct_pb2.Value | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "post_context", b"post_context", "pre_context", b"pre_context", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_abs_path", b"has_abs_path"]) -> typing.Literal["abs_path"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_addr_mode", b"has_addr_mode"]) -> typing.Literal["addr_mode"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_colno", b"has_colno"]) -> typing.Literal["colno"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_context_line", b"has_context_line"]) -> typing.Literal["context_line"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_filename", b"has_filename"]) -> typing.Literal["filename"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_function", b"has_function"]) -> typing.Literal["function"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_function_id", b"has_function_id"]) -> typing.Literal["function_id"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_image_addr", b"has_image_addr"]) -> typing.Literal["image_addr"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_in_app", b"has_in_app"]) -> typing.Literal["in_app"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr", b"has_instruction_addr"]) -> typing.Literal["instruction_addr"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_lineno", b"has_lineno"]) -> typing.Literal["lineno"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_lock", b"has_lock"]) -> typing.Literal["lock"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_module", b"has_module"]) -> typing.Literal["module"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_package", b"has_package"]) -> typing.Literal["package"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_platform", b"has_platform"]) -> typing.Literal["platform"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_raw_function", b"has_raw_function"]) -> typing.Literal["raw_function"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_stack_start", b"has_stack_start"]) -> typing.Literal["stack_start"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_symbol", b"has_symbol"]) -> typing.Literal["symbol"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_symbol_addr", b"has_symbol_addr"]) -> typing.Literal["symbol_addr"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_vars", b"has_vars"]) -> typing.Literal["vars"] | None: ...

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

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

    FRAMES_FIELD_NUMBER: builtins.int
    INSTRUCTION_ADDR_ADJUSTMENT_FIELD_NUMBER: builtins.int
    LANG_FIELD_NUMBER: builtins.int
    REGISTERS_FIELD_NUMBER: builtins.int
    SNAPSHOT_FIELD_NUMBER: builtins.int
    instruction_addr_adjustment: builtins.str
    lang: builtins.str
    snapshot: builtins.bool
    @property
    def frames(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Rawstacktrace.RawstacktraceFrames]: ...
    @property
    def registers(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        frames: collections.abc.Iterable[global___Rawstacktrace.RawstacktraceFrames] | None = ...,
        instruction_addr_adjustment: builtins.str = ...,
        lang: builtins.str = ...,
        registers: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        snapshot: builtins.bool = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "snapshot", b"snapshot"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["frames", b"frames", "has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "registers", b"registers", "snapshot", b"snapshot"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment"]) -> typing.Literal["instruction_addr_adjustment"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_lang", b"has_lang"]) -> typing.Literal["lang"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_snapshot", b"has_snapshot"]) -> typing.Literal["snapshot"] | None: ...

global___Rawstacktrace = Rawstacktrace

@typing.final
class Replaycontext(google.protobuf.message.Message):
    """
    Replay context.

    The replay context contains the replay_id of the session replay if the event
    occurred during a replay. The replay_id is added onto the dynamic sampling context
    on the javascript SDK which propagates it through the trace. In relay, we take
    this value from the DSC and create a context which contains only the replay_id
    This context is never set on the client for events, only on relay.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    REPLAY_ID_FIELD_NUMBER: builtins.int
    replay_id: builtins.str
    def __init__(
        self,
        *,
        replay_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_replay_id", b"has_replay_id", "replay_id", b"replay_id"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["has_replay_id", b"has_replay_id", "replay_id", b"replay_id"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["has_replay_id", b"has_replay_id"]) -> typing.Literal["replay_id"] | None: ...

global___Replaycontext = Replaycontext

@typing.final
class Request(google.protobuf.message.Message):
    """
    Http request information.

    The Request interface contains information on a HTTP request related to the event. In client
    SDKs, this can be an outgoing request, or the request that rendered the current web page. On
    server SDKs, this could be the incoming web request that is being handled.

    The data variable should only contain the request body (not the query string). It can either be
    a dictionary (for standard HTTP requests) or a raw request body.

    ### Ordered Maps

    In the Request interface, several attributes can either be declared as string, object, or list
    of tuples. Sentry attempts to parse structured information from the string representation in
    such cases.

    Sometimes, keys can be declared multiple times, or the order of elements matters. In such
    cases, use the tuple representation over a plain object.

    Example of request headers as object:

    ```json
    {
    "content-type": "application/json",
    "accept": "application/json, application/xml"
    }
    ```

    Example of the same headers as list of tuples:

    ```json
    [
    ["content-type", "application/json"],
    ["accept", "application/json"],
    ["accept", "application/xml"]
    ]
    ```

    Example of a fully populated request object:

    ```json
    {
    "request": {
    "method": "POST",
    "url": "http://absolute.uri/foo",
    "query_string": "query=foobar&page=2",
    "data": {
    "foo": "bar"
    },
    "cookies": "PHPSESSID=298zf09hf012fh2; csrftoken=u32t4o3tb3gg43; _gat=1;",
    "headers": {
    "content-type": "text/html"
    },
    "env": {
    "REMOTE_ADDR": "192.168.0.1"
    }
    }
    }
    ```
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    API_TARGET_FIELD_NUMBER: builtins.int
    BODY_SIZE_FIELD_NUMBER: builtins.int
    COOKIES_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    ENV_FIELD_NUMBER: builtins.int
    FRAGMENT_FIELD_NUMBER: builtins.int
    HEADERS_FIELD_NUMBER: builtins.int
    INFERRED_CONTENT_TYPE_FIELD_NUMBER: builtins.int
    METHOD_FIELD_NUMBER: builtins.int
    PROTOCOL_FIELD_NUMBER: builtins.int
    QUERY_STRING_FIELD_NUMBER: builtins.int
    URL_FIELD_NUMBER: builtins.int
    api_target: builtins.str
    body_size: builtins.int
    fragment: builtins.str
    inferred_content_type: builtins.str
    method: builtins.str
    protocol: builtins.str
    url: builtins.str
    @property
    def cookies(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def data(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def env(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def headers(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def query_string(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        api_target: builtins.str = ...,
        body_size: builtins.int = ...,
        cookies: google.protobuf.struct_pb2.Value | None = ...,
        data: google.protobuf.struct_pb2.Value | None = ...,
        env: google.protobuf.struct_pb2.Value | None = ...,
        fragment: builtins.str = ...,
        headers: google.protobuf.struct_pb2.Value | None = ...,
        inferred_content_type: builtins.str = ...,
        method: builtins.str = ...,
        protocol: builtins.str = ...,
        query_string: google.protobuf.struct_pb2.Value | None = ...,
        url: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["api_target", b"api_target", "body_size", b"body_size", "cookies", b"cookies", "data", b"data", "env", b"env", "fragment", b"fragment", "has_api_target", b"has_api_target", "has_body_size", b"has_body_size", "has_cookies", b"has_cookies", "has_env", b"has_env", "has_fragment", b"has_fragment", "has_headers", b"has_headers", "has_inferred_content_type", b"has_inferred_content_type", "has_method", b"has_method", "has_protocol", b"has_protocol", "has_query_string", b"has_query_string", "has_url", b"has_url", "headers", b"headers", "inferred_content_type", b"inferred_content_type", "method", b"method", "protocol", b"protocol", "query_string", b"query_string", "url", b"url"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["api_target", b"api_target", "body_size", b"body_size", "cookies", b"cookies", "data", b"data", "env", b"env", "fragment", b"fragment", "has_api_target", b"has_api_target", "has_body_size", b"has_body_size", "has_cookies", b"has_cookies", "has_env", b"has_env", "has_fragment", b"has_fragment", "has_headers", b"has_headers", "has_inferred_content_type", b"has_inferred_content_type", "has_method", b"has_method", "has_protocol", b"has_protocol", "has_query_string", b"has_query_string", "has_url", b"has_url", "headers", b"headers", "inferred_content_type", b"inferred_content_type", "method", b"method", "protocol", b"protocol", "query_string", b"query_string", "url", b"url"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_api_target", b"has_api_target"]) -> typing.Literal["api_target"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_body_size", b"has_body_size"]) -> typing.Literal["body_size"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_cookies", b"has_cookies"]) -> typing.Literal["cookies"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_env", b"has_env"]) -> typing.Literal["env"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_fragment", b"has_fragment"]) -> typing.Literal["fragment"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_headers", b"has_headers"]) -> typing.Literal["headers"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_inferred_content_type", b"has_inferred_content_type"]) -> typing.Literal["inferred_content_type"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_method", b"has_method"]) -> typing.Literal["method"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_protocol", b"has_protocol"]) -> typing.Literal["protocol"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_query_string", b"has_query_string"]) -> typing.Literal["query_string"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_url", b"has_url"]) -> typing.Literal["url"] | None: ...

global___Request = Request

@typing.final
class Responsecontext(google.protobuf.message.Message):
    """
    Response interface that contains information on a HTTP response related to the event.

    The data variable should only contain the response body. It can either be
    a dictionary (for standard HTTP responses) or a raw response body.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    BODY_SIZE_FIELD_NUMBER: builtins.int
    COOKIES_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    HEADERS_FIELD_NUMBER: builtins.int
    INFERRED_CONTENT_TYPE_FIELD_NUMBER: builtins.int
    STATUS_CODE_FIELD_NUMBER: builtins.int
    body_size: builtins.int
    inferred_content_type: builtins.str
    status_code: builtins.int
    @property
    def cookies(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def data(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def headers(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        body_size: builtins.int = ...,
        cookies: google.protobuf.struct_pb2.Value | None = ...,
        data: google.protobuf.struct_pb2.Value | None = ...,
        headers: google.protobuf.struct_pb2.Value | None = ...,
        inferred_content_type: builtins.str = ...,
        status_code: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["body_size", b"body_size", "cookies", b"cookies", "data", b"data", "has_body_size", b"has_body_size", "has_cookies", b"has_cookies", "has_headers", b"has_headers", "has_inferred_content_type", b"has_inferred_content_type", "has_status_code", b"has_status_code", "headers", b"headers", "inferred_content_type", b"inferred_content_type", "status_code", b"status_code"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["body_size", b"body_size", "cookies", b"cookies", "data", b"data", "has_body_size", b"has_body_size", "has_cookies", b"has_cookies", "has_headers", b"has_headers", "has_inferred_content_type", b"has_inferred_content_type", "has_status_code", b"has_status_code", "headers", b"headers", "inferred_content_type", b"inferred_content_type", "status_code", b"status_code"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_body_size", b"has_body_size"]) -> typing.Literal["body_size"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_cookies", b"has_cookies"]) -> typing.Literal["cookies"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_headers", b"has_headers"]) -> typing.Literal["headers"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_inferred_content_type", b"has_inferred_content_type"]) -> typing.Literal["inferred_content_type"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_status_code", b"has_status_code"]) -> typing.Literal["status_code"] | None: ...

global___Responsecontext = Responsecontext

@typing.final
class Route(google.protobuf.message.Message):
    """
    The route in the application, set by React Native SDK.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    PARAMS_FIELD_NUMBER: builtins.int
    name: builtins.str
    @property
    def params(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        name: builtins.str = ...,
        params: google.protobuf.struct_pb2.Value | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_params", b"has_params", "name", b"name", "params", b"params"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_params", b"has_params", "name", b"name", "params", b"params"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_params", b"has_params"]) -> typing.Literal["params"] | None: ...

global___Route = Route

@typing.final
class Runtimecontext(google.protobuf.message.Message):
    """
    Runtime information.

    Runtime context describes a runtime in more detail. Typically, this context is present in
    `contexts` multiple times if multiple runtimes are involved (for instance, if you have a
    JavaScript application running on top of JVM).
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    BUILD_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    RAW_DESCRIPTION_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    build: builtins.str
    name: builtins.str
    raw_description: builtins.str
    version: builtins.str
    def __init__(
        self,
        *,
        build: builtins.str = ...,
        name: builtins.str = ...,
        raw_description: builtins.str = ...,
        version: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["build", b"build", "has_build", b"has_build", "has_name", b"has_name", "has_raw_description", b"has_raw_description", "has_version", b"has_version", "name", b"name", "raw_description", b"raw_description", "version", b"version"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["build", b"build", "has_build", b"has_build", "has_name", b"has_name", "has_raw_description", b"has_raw_description", "has_version", b"has_version", "name", b"name", "raw_description", b"raw_description", "version", b"version"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_build", b"has_build"]) -> typing.Literal["build"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_raw_description", b"has_raw_description"]) -> typing.Literal["raw_description"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_version", b"has_version"]) -> typing.Literal["version"] | None: ...

global___Runtimecontext = Runtimecontext

@typing.final
class Sourcemapdebugimage(google.protobuf.message.Message):
    """
    A debug image pointing to a source map.

    Examples:

    ```json
    {
    "type": "sourcemap",
    "code_file": "https://example.com/static/js/main.min.js",
    "debug_id": "395835f4-03e0-4436-80d3-136f0749a893"
    }
    ```

    *Note:** Stack frames and the correlating entries in the debug image here
    for `code_file`/`abs_path` are not PII stripped as they need to line up
    perfectly for source map processing.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CODE_FILE_FIELD_NUMBER: builtins.int
    DEBUG_FILE_FIELD_NUMBER: builtins.int
    DEBUG_ID_FIELD_NUMBER: builtins.int
    code_file: builtins.str
    debug_file: builtins.str
    debug_id: builtins.str
    def __init__(
        self,
        *,
        code_file: builtins.str = ...,
        debug_file: builtins.str = ...,
        debug_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["debug_file", b"debug_file", "has_debug_file", b"has_debug_file"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["code_file", b"code_file", "debug_file", b"debug_file", "debug_id", b"debug_id", "has_debug_file", b"has_debug_file"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["has_debug_file", b"has_debug_file"]) -> typing.Literal["debug_file"] | None: ...

global___Sourcemapdebugimage = Sourcemapdebugimage

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

    @typing.final
    class StacktraceFrames(google.protobuf.message.Message):
        """
        Required. A non-empty list of stack frames. The list is ordered from caller to callee, or
        oldest to youngest. The last frame is the one creating the exception.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class StacktraceFramesLock(google.protobuf.message.Message):
            """
            A possible lock (java monitor object) held by this frame.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            ADDRESS_FIELD_NUMBER: builtins.int
            CLASS_NAME_FIELD_NUMBER: builtins.int
            PACKAGE_NAME_FIELD_NUMBER: builtins.int
            THREAD_ID_FIELD_NUMBER: builtins.int
            TYPE_FIELD_NUMBER: builtins.int
            address: builtins.str
            class_name: builtins.str
            package_name: builtins.str
            type: builtins.str
            @property
            def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
            def __init__(
                self,
                *,
                address: builtins.str = ...,
                class_name: builtins.str = ...,
                package_name: builtins.str = ...,
                thread_id: google.protobuf.struct_pb2.Value | None = ...,
                type: builtins.str = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id", "type", b"type"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_address", b"has_address"]) -> typing.Literal["address"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_class_name", b"has_class_name"]) -> typing.Literal["class_name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_package_name", b"has_package_name"]) -> typing.Literal["package_name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...

        ABS_PATH_FIELD_NUMBER: builtins.int
        ADDR_MODE_FIELD_NUMBER: builtins.int
        COLNO_FIELD_NUMBER: builtins.int
        CONTEXT_LINE_FIELD_NUMBER: builtins.int
        FILENAME_FIELD_NUMBER: builtins.int
        FUNCTION_FIELD_NUMBER: builtins.int
        FUNCTION_ID_FIELD_NUMBER: builtins.int
        IMAGE_ADDR_FIELD_NUMBER: builtins.int
        IN_APP_FIELD_NUMBER: builtins.int
        INSTRUCTION_ADDR_FIELD_NUMBER: builtins.int
        LINENO_FIELD_NUMBER: builtins.int
        LOCK_FIELD_NUMBER: builtins.int
        MODULE_FIELD_NUMBER: builtins.int
        PACKAGE_FIELD_NUMBER: builtins.int
        PLATFORM_FIELD_NUMBER: builtins.int
        POST_CONTEXT_FIELD_NUMBER: builtins.int
        PRE_CONTEXT_FIELD_NUMBER: builtins.int
        RAW_FUNCTION_FIELD_NUMBER: builtins.int
        STACK_START_FIELD_NUMBER: builtins.int
        SYMBOL_FIELD_NUMBER: builtins.int
        SYMBOL_ADDR_FIELD_NUMBER: builtins.int
        VARS_FIELD_NUMBER: builtins.int
        abs_path: builtins.str
        addr_mode: builtins.str
        colno: builtins.int
        context_line: builtins.str
        filename: builtins.str
        function: builtins.str
        function_id: builtins.str
        image_addr: builtins.str
        in_app: builtins.bool
        instruction_addr: builtins.str
        lineno: builtins.int
        module: builtins.str
        package: builtins.str
        platform: builtins.str
        raw_function: builtins.str
        stack_start: builtins.bool
        symbol: builtins.str
        symbol_addr: builtins.str
        @property
        def lock(self) -> global___Stacktrace.StacktraceFrames.StacktraceFramesLock: ...
        @property
        def post_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
        @property
        def pre_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
        @property
        def vars(self) -> google.protobuf.struct_pb2.Value: ...
        def __init__(
            self,
            *,
            abs_path: builtins.str = ...,
            addr_mode: builtins.str = ...,
            colno: builtins.int = ...,
            context_line: builtins.str = ...,
            filename: builtins.str = ...,
            function: builtins.str = ...,
            function_id: builtins.str = ...,
            image_addr: builtins.str = ...,
            in_app: builtins.bool = ...,
            instruction_addr: builtins.str = ...,
            lineno: builtins.int = ...,
            lock: global___Stacktrace.StacktraceFrames.StacktraceFramesLock | None = ...,
            module: builtins.str = ...,
            package: builtins.str = ...,
            platform: builtins.str = ...,
            post_context: collections.abc.Iterable[builtins.str] | None = ...,
            pre_context: collections.abc.Iterable[builtins.str] | None = ...,
            raw_function: builtins.str = ...,
            stack_start: builtins.bool = ...,
            symbol: builtins.str = ...,
            symbol_addr: builtins.str = ...,
            vars: google.protobuf.struct_pb2.Value | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "post_context", b"post_context", "pre_context", b"pre_context", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_abs_path", b"has_abs_path"]) -> typing.Literal["abs_path"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_addr_mode", b"has_addr_mode"]) -> typing.Literal["addr_mode"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_colno", b"has_colno"]) -> typing.Literal["colno"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_context_line", b"has_context_line"]) -> typing.Literal["context_line"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_filename", b"has_filename"]) -> typing.Literal["filename"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_function", b"has_function"]) -> typing.Literal["function"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_function_id", b"has_function_id"]) -> typing.Literal["function_id"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_image_addr", b"has_image_addr"]) -> typing.Literal["image_addr"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_in_app", b"has_in_app"]) -> typing.Literal["in_app"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr", b"has_instruction_addr"]) -> typing.Literal["instruction_addr"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_lineno", b"has_lineno"]) -> typing.Literal["lineno"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_lock", b"has_lock"]) -> typing.Literal["lock"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_module", b"has_module"]) -> typing.Literal["module"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_package", b"has_package"]) -> typing.Literal["package"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_platform", b"has_platform"]) -> typing.Literal["platform"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_raw_function", b"has_raw_function"]) -> typing.Literal["raw_function"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_stack_start", b"has_stack_start"]) -> typing.Literal["stack_start"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_symbol", b"has_symbol"]) -> typing.Literal["symbol"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_symbol_addr", b"has_symbol_addr"]) -> typing.Literal["symbol_addr"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_vars", b"has_vars"]) -> typing.Literal["vars"] | None: ...

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

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

    FRAMES_FIELD_NUMBER: builtins.int
    INSTRUCTION_ADDR_ADJUSTMENT_FIELD_NUMBER: builtins.int
    LANG_FIELD_NUMBER: builtins.int
    REGISTERS_FIELD_NUMBER: builtins.int
    SNAPSHOT_FIELD_NUMBER: builtins.int
    instruction_addr_adjustment: builtins.str
    lang: builtins.str
    snapshot: builtins.bool
    @property
    def frames(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Stacktrace.StacktraceFrames]: ...
    @property
    def registers(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        frames: collections.abc.Iterable[global___Stacktrace.StacktraceFrames] | None = ...,
        instruction_addr_adjustment: builtins.str = ...,
        lang: builtins.str = ...,
        registers: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        snapshot: builtins.bool = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "snapshot", b"snapshot"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["frames", b"frames", "has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "registers", b"registers", "snapshot", b"snapshot"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment"]) -> typing.Literal["instruction_addr_adjustment"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_lang", b"has_lang"]) -> typing.Literal["lang"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_snapshot", b"has_snapshot"]) -> typing.Literal["snapshot"] | None: ...

global___Stacktrace = Stacktrace

@typing.final
class Systemsdkinfo(google.protobuf.message.Message):
    """
    Holds information about the system SDK.

    This is relevant for iOS and other platforms that have a system
    SDK.  Not to be confused with the client SDK.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SDK_NAME_FIELD_NUMBER: builtins.int
    VERSION_MAJOR_FIELD_NUMBER: builtins.int
    VERSION_MINOR_FIELD_NUMBER: builtins.int
    VERSION_PATCHLEVEL_FIELD_NUMBER: builtins.int
    sdk_name: builtins.str
    version_major: builtins.int
    version_minor: builtins.int
    version_patchlevel: builtins.int
    def __init__(
        self,
        *,
        sdk_name: builtins.str = ...,
        version_major: builtins.int = ...,
        version_minor: builtins.int = ...,
        version_patchlevel: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_sdk_name", b"has_sdk_name", "has_version_major", b"has_version_major", "has_version_minor", b"has_version_minor", "has_version_patchlevel", b"has_version_patchlevel", "sdk_name", b"sdk_name", "version_major", b"version_major", "version_minor", b"version_minor", "version_patchlevel", b"version_patchlevel"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["has_sdk_name", b"has_sdk_name", "has_version_major", b"has_version_major", "has_version_minor", b"has_version_minor", "has_version_patchlevel", b"has_version_patchlevel", "sdk_name", b"sdk_name", "version_major", b"version_major", "version_minor", b"version_minor", "version_patchlevel", b"version_patchlevel"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_sdk_name", b"has_sdk_name"]) -> typing.Literal["sdk_name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_version_major", b"has_version_major"]) -> typing.Literal["version_major"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_version_minor", b"has_version_minor"]) -> typing.Literal["version_minor"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_version_patchlevel", b"has_version_patchlevel"]) -> typing.Literal["version_patchlevel"] | None: ...

global___Systemsdkinfo = Systemsdkinfo

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

    A0_FIELD_NUMBER: builtins.int
    A1_FIELD_NUMBER: builtins.int
    a0: builtins.str
    a1: builtins.str
    def __init__(
        self,
        *,
        a0: builtins.str = ...,
        a1: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["a0", b"a0", "a1", b"a1", "has_a0", b"has_a0", "has_a1", b"has_a1"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["a0", b"a0", "a1", b"a1", "has_a0", b"has_a0", "has_a1", b"has_a1"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_a0", b"has_a0"]) -> typing.Literal["a0"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_a1", b"has_a1"]) -> typing.Literal["a1"] | None: ...

global___Tagentry = Tagentry

@typing.final
class Thread(google.protobuf.message.Message):
    """
    A process thread of an event.

    The Threads Interface specifies threads that were running at the time an event happened. These threads can also contain stack traces.

    An event may contain one or more threads in an attribute named `threads`.

    The following example illustrates the threads part of the event payload and omits other attributes for simplicity.

    ```json
    {
    "threads": {
    "values": [
    {
    "id": "0",
    "name": "main",
    "crashed": true,
    "stacktrace": {}
    }
    ]
    }
    }
    ```
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class ThreadHeldLocks(google.protobuf.message.Message):
        """
        Represents a collection of locks (java monitor objects) held by a thread.

        A map of lock object addresses and their respective lock reason/details.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        ADDRESS_FIELD_NUMBER: builtins.int
        CLASS_NAME_FIELD_NUMBER: builtins.int
        PACKAGE_NAME_FIELD_NUMBER: builtins.int
        THREAD_ID_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        address: builtins.str
        class_name: builtins.str
        package_name: builtins.str
        type: builtins.str
        @property
        def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
        def __init__(
            self,
            *,
            address: builtins.str = ...,
            class_name: builtins.str = ...,
            package_name: builtins.str = ...,
            thread_id: google.protobuf.struct_pb2.Value | None = ...,
            type: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id", "type", b"type"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_address", b"has_address"]) -> typing.Literal["address"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_class_name", b"has_class_name"]) -> typing.Literal["class_name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_package_name", b"has_package_name"]) -> typing.Literal["package_name"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...

    @typing.final
    class ThreadStacktrace(google.protobuf.message.Message):
        """
        Stack trace containing frames of this exception.

        The thread that crashed with an exception should not have a stack trace, but instead, the `thread_id` attribute should be set on the exception and Sentry will connect the two.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class ThreadStacktraceFrames(google.protobuf.message.Message):
            """
            Required. A non-empty list of stack frames. The list is ordered from caller to callee, or
            oldest to youngest. The last frame is the one creating the exception.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            @typing.final
            class ThreadStacktraceFramesLock(google.protobuf.message.Message):
                """
                A possible lock (java monitor object) held by this frame.
                """

                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                ADDRESS_FIELD_NUMBER: builtins.int
                CLASS_NAME_FIELD_NUMBER: builtins.int
                PACKAGE_NAME_FIELD_NUMBER: builtins.int
                THREAD_ID_FIELD_NUMBER: builtins.int
                TYPE_FIELD_NUMBER: builtins.int
                address: builtins.str
                class_name: builtins.str
                package_name: builtins.str
                type: builtins.str
                @property
                def thread_id(self) -> google.protobuf.struct_pb2.Value: ...
                def __init__(
                    self,
                    *,
                    address: builtins.str = ...,
                    class_name: builtins.str = ...,
                    package_name: builtins.str = ...,
                    thread_id: google.protobuf.struct_pb2.Value | None = ...,
                    type: builtins.str = ...,
                ) -> None: ...
                def HasField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id"]) -> builtins.bool: ...
                def ClearField(self, field_name: typing.Literal["address", b"address", "class_name", b"class_name", "has_address", b"has_address", "has_class_name", b"has_class_name", "has_package_name", b"has_package_name", "has_thread_id", b"has_thread_id", "package_name", b"package_name", "thread_id", b"thread_id", "type", b"type"]) -> None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_address", b"has_address"]) -> typing.Literal["address"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_class_name", b"has_class_name"]) -> typing.Literal["class_name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_package_name", b"has_package_name"]) -> typing.Literal["package_name"] | None: ...
                @typing.overload
                def WhichOneof(self, oneof_group: typing.Literal["has_thread_id", b"has_thread_id"]) -> typing.Literal["thread_id"] | None: ...

            ABS_PATH_FIELD_NUMBER: builtins.int
            ADDR_MODE_FIELD_NUMBER: builtins.int
            COLNO_FIELD_NUMBER: builtins.int
            CONTEXT_LINE_FIELD_NUMBER: builtins.int
            FILENAME_FIELD_NUMBER: builtins.int
            FUNCTION_FIELD_NUMBER: builtins.int
            FUNCTION_ID_FIELD_NUMBER: builtins.int
            IMAGE_ADDR_FIELD_NUMBER: builtins.int
            IN_APP_FIELD_NUMBER: builtins.int
            INSTRUCTION_ADDR_FIELD_NUMBER: builtins.int
            LINENO_FIELD_NUMBER: builtins.int
            LOCK_FIELD_NUMBER: builtins.int
            MODULE_FIELD_NUMBER: builtins.int
            PACKAGE_FIELD_NUMBER: builtins.int
            PLATFORM_FIELD_NUMBER: builtins.int
            POST_CONTEXT_FIELD_NUMBER: builtins.int
            PRE_CONTEXT_FIELD_NUMBER: builtins.int
            RAW_FUNCTION_FIELD_NUMBER: builtins.int
            STACK_START_FIELD_NUMBER: builtins.int
            SYMBOL_FIELD_NUMBER: builtins.int
            SYMBOL_ADDR_FIELD_NUMBER: builtins.int
            VARS_FIELD_NUMBER: builtins.int
            abs_path: builtins.str
            addr_mode: builtins.str
            colno: builtins.int
            context_line: builtins.str
            filename: builtins.str
            function: builtins.str
            function_id: builtins.str
            image_addr: builtins.str
            in_app: builtins.bool
            instruction_addr: builtins.str
            lineno: builtins.int
            module: builtins.str
            package: builtins.str
            platform: builtins.str
            raw_function: builtins.str
            stack_start: builtins.bool
            symbol: builtins.str
            symbol_addr: builtins.str
            @property
            def lock(self) -> global___Thread.ThreadStacktrace.ThreadStacktraceFrames.ThreadStacktraceFramesLock: ...
            @property
            def post_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
            @property
            def pre_context(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
            @property
            def vars(self) -> google.protobuf.struct_pb2.Value: ...
            def __init__(
                self,
                *,
                abs_path: builtins.str = ...,
                addr_mode: builtins.str = ...,
                colno: builtins.int = ...,
                context_line: builtins.str = ...,
                filename: builtins.str = ...,
                function: builtins.str = ...,
                function_id: builtins.str = ...,
                image_addr: builtins.str = ...,
                in_app: builtins.bool = ...,
                instruction_addr: builtins.str = ...,
                lineno: builtins.int = ...,
                lock: global___Thread.ThreadStacktrace.ThreadStacktraceFrames.ThreadStacktraceFramesLock | None = ...,
                module: builtins.str = ...,
                package: builtins.str = ...,
                platform: builtins.str = ...,
                post_context: collections.abc.Iterable[builtins.str] | None = ...,
                pre_context: collections.abc.Iterable[builtins.str] | None = ...,
                raw_function: builtins.str = ...,
                stack_start: builtins.bool = ...,
                symbol: builtins.str = ...,
                symbol_addr: builtins.str = ...,
                vars: google.protobuf.struct_pb2.Value | None = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["abs_path", b"abs_path", "addr_mode", b"addr_mode", "colno", b"colno", "context_line", b"context_line", "filename", b"filename", "function", b"function", "function_id", b"function_id", "has_abs_path", b"has_abs_path", "has_addr_mode", b"has_addr_mode", "has_colno", b"has_colno", "has_context_line", b"has_context_line", "has_filename", b"has_filename", "has_function", b"has_function", "has_function_id", b"has_function_id", "has_image_addr", b"has_image_addr", "has_in_app", b"has_in_app", "has_instruction_addr", b"has_instruction_addr", "has_lineno", b"has_lineno", "has_lock", b"has_lock", "has_module", b"has_module", "has_package", b"has_package", "has_platform", b"has_platform", "has_raw_function", b"has_raw_function", "has_stack_start", b"has_stack_start", "has_symbol", b"has_symbol", "has_symbol_addr", b"has_symbol_addr", "has_vars", b"has_vars", "image_addr", b"image_addr", "in_app", b"in_app", "instruction_addr", b"instruction_addr", "lineno", b"lineno", "lock", b"lock", "module", b"module", "package", b"package", "platform", b"platform", "post_context", b"post_context", "pre_context", b"pre_context", "raw_function", b"raw_function", "stack_start", b"stack_start", "symbol", b"symbol", "symbol_addr", b"symbol_addr", "vars", b"vars"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_abs_path", b"has_abs_path"]) -> typing.Literal["abs_path"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_addr_mode", b"has_addr_mode"]) -> typing.Literal["addr_mode"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_colno", b"has_colno"]) -> typing.Literal["colno"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_context_line", b"has_context_line"]) -> typing.Literal["context_line"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_filename", b"has_filename"]) -> typing.Literal["filename"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_function", b"has_function"]) -> typing.Literal["function"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_function_id", b"has_function_id"]) -> typing.Literal["function_id"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_image_addr", b"has_image_addr"]) -> typing.Literal["image_addr"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_in_app", b"has_in_app"]) -> typing.Literal["in_app"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr", b"has_instruction_addr"]) -> typing.Literal["instruction_addr"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_lineno", b"has_lineno"]) -> typing.Literal["lineno"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_lock", b"has_lock"]) -> typing.Literal["lock"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_module", b"has_module"]) -> typing.Literal["module"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_package", b"has_package"]) -> typing.Literal["package"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_platform", b"has_platform"]) -> typing.Literal["platform"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_raw_function", b"has_raw_function"]) -> typing.Literal["raw_function"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_stack_start", b"has_stack_start"]) -> typing.Literal["stack_start"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_symbol", b"has_symbol"]) -> typing.Literal["symbol"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_symbol_addr", b"has_symbol_addr"]) -> typing.Literal["symbol_addr"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_vars", b"has_vars"]) -> typing.Literal["vars"] | None: ...

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

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

        FRAMES_FIELD_NUMBER: builtins.int
        INSTRUCTION_ADDR_ADJUSTMENT_FIELD_NUMBER: builtins.int
        LANG_FIELD_NUMBER: builtins.int
        REGISTERS_FIELD_NUMBER: builtins.int
        SNAPSHOT_FIELD_NUMBER: builtins.int
        instruction_addr_adjustment: builtins.str
        lang: builtins.str
        snapshot: builtins.bool
        @property
        def frames(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Thread.ThreadStacktrace.ThreadStacktraceFrames]: ...
        @property
        def registers(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
        def __init__(
            self,
            *,
            frames: collections.abc.Iterable[global___Thread.ThreadStacktrace.ThreadStacktraceFrames] | None = ...,
            instruction_addr_adjustment: builtins.str = ...,
            lang: builtins.str = ...,
            registers: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
            snapshot: builtins.bool = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "snapshot", b"snapshot"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["frames", b"frames", "has_instruction_addr_adjustment", b"has_instruction_addr_adjustment", "has_lang", b"has_lang", "has_snapshot", b"has_snapshot", "instruction_addr_adjustment", b"instruction_addr_adjustment", "lang", b"lang", "registers", b"registers", "snapshot", b"snapshot"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_instruction_addr_adjustment", b"has_instruction_addr_adjustment"]) -> typing.Literal["instruction_addr_adjustment"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_lang", b"has_lang"]) -> typing.Literal["lang"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_snapshot", b"has_snapshot"]) -> typing.Literal["snapshot"] | None: ...

    @typing.final
    class HeldLocksEntry(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___Thread.ThreadHeldLocks: ...
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: global___Thread.ThreadHeldLocks | 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: ...

    CRASHED_FIELD_NUMBER: builtins.int
    CURRENT_FIELD_NUMBER: builtins.int
    HELD_LOCKS_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    MAIN_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    STACKTRACE_FIELD_NUMBER: builtins.int
    STATE_FIELD_NUMBER: builtins.int
    crashed: builtins.bool
    current: builtins.bool
    main: builtins.bool
    name: builtins.str
    state: builtins.str
    @property
    def held_locks(self) -> google.protobuf.internal.containers.MessageMap[builtins.str, global___Thread.ThreadHeldLocks]: ...
    @property
    def id(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def stacktrace(self) -> global___Thread.ThreadStacktrace: ...
    def __init__(
        self,
        *,
        crashed: builtins.bool = ...,
        current: builtins.bool = ...,
        held_locks: collections.abc.Mapping[builtins.str, global___Thread.ThreadHeldLocks] | None = ...,
        id: google.protobuf.struct_pb2.Value | None = ...,
        main: builtins.bool = ...,
        name: builtins.str = ...,
        stacktrace: global___Thread.ThreadStacktrace | None = ...,
        state: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["crashed", b"crashed", "current", b"current", "has_crashed", b"has_crashed", "has_current", b"has_current", "has_id", b"has_id", "has_main", b"has_main", "has_name", b"has_name", "has_stacktrace", b"has_stacktrace", "has_state", b"has_state", "id", b"id", "main", b"main", "name", b"name", "stacktrace", b"stacktrace", "state", b"state"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["crashed", b"crashed", "current", b"current", "has_crashed", b"has_crashed", "has_current", b"has_current", "has_id", b"has_id", "has_main", b"has_main", "has_name", b"has_name", "has_stacktrace", b"has_stacktrace", "has_state", b"has_state", "held_locks", b"held_locks", "id", b"id", "main", b"main", "name", b"name", "stacktrace", b"stacktrace", "state", b"state"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_crashed", b"has_crashed"]) -> typing.Literal["crashed"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_current", b"has_current"]) -> typing.Literal["current"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_id", b"has_id"]) -> typing.Literal["id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_main", b"has_main"]) -> typing.Literal["main"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_stacktrace", b"has_stacktrace"]) -> typing.Literal["stacktrace"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_state", b"has_state"]) -> typing.Literal["state"] | None: ...

global___Thread = Thread

@typing.final
class Tracecontext(google.protobuf.message.Message):
    """
    Trace context
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class TracecontextData(google.protobuf.message.Message):
        """
        Arbitrary additional data on a trace.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing.final
        class TracecontextDataPreviousroute(google.protobuf.message.Message):
            """
            The previous route in the application

            Set by React Native SDK.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            NAME_FIELD_NUMBER: builtins.int
            PARAMS_FIELD_NUMBER: builtins.int
            name: builtins.str
            @property
            def params(self) -> google.protobuf.struct_pb2.Value: ...
            def __init__(
                self,
                *,
                name: builtins.str = ...,
                params: google.protobuf.struct_pb2.Value | None = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_params", b"has_params", "name", b"name", "params", b"params"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_params", b"has_params", "name", b"name", "params", b"params"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_params", b"has_params"]) -> typing.Literal["params"] | None: ...

        @typing.final
        class TracecontextDataRoute(google.protobuf.message.Message):
            """
            The current route in the application.

            Set by React Native SDK.
            """

            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            NAME_FIELD_NUMBER: builtins.int
            PARAMS_FIELD_NUMBER: builtins.int
            name: builtins.str
            @property
            def params(self) -> google.protobuf.struct_pb2.Value: ...
            def __init__(
                self,
                *,
                name: builtins.str = ...,
                params: google.protobuf.struct_pb2.Value | None = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["has_name", b"has_name", "has_params", b"has_params", "name", b"name", "params", b"params"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["has_name", b"has_name", "has_params", b"has_params", "name", b"name", "params", b"params"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing.Literal["has_params", b"has_params"]) -> typing.Literal["params"] | None: ...

        PREVIOUS_ROUTE_FIELD_NUMBER: builtins.int
        ROUTE_FIELD_NUMBER: builtins.int
        @property
        def previous_route(self) -> global___Tracecontext.TracecontextData.TracecontextDataPreviousroute: ...
        @property
        def route(self) -> global___Tracecontext.TracecontextData.TracecontextDataRoute: ...
        def __init__(
            self,
            *,
            previous_route: global___Tracecontext.TracecontextData.TracecontextDataPreviousroute | None = ...,
            route: global___Tracecontext.TracecontextData.TracecontextDataRoute | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_previous_route", b"has_previous_route", "has_route", b"has_route", "previous_route", b"previous_route", "route", b"route"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["has_previous_route", b"has_previous_route", "has_route", b"has_route", "previous_route", b"previous_route", "route", b"route"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_previous_route", b"has_previous_route"]) -> typing.Literal["previous_route"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_route", b"has_route"]) -> typing.Literal["route"] | None: ...

    CLIENT_SAMPLE_RATE_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    EXCLUSIVE_TIME_FIELD_NUMBER: builtins.int
    OP_FIELD_NUMBER: builtins.int
    ORIGIN_FIELD_NUMBER: builtins.int
    PARENT_SPAN_ID_FIELD_NUMBER: builtins.int
    SAMPLED_FIELD_NUMBER: builtins.int
    SPAN_ID_FIELD_NUMBER: builtins.int
    STATUS_FIELD_NUMBER: builtins.int
    TRACE_ID_FIELD_NUMBER: builtins.int
    client_sample_rate: builtins.float
    exclusive_time: builtins.float
    op: builtins.str
    origin: builtins.str
    parent_span_id: builtins.str
    sampled: builtins.bool
    span_id: builtins.str
    status: builtins.str
    trace_id: builtins.str
    @property
    def data(self) -> global___Tracecontext.TracecontextData: ...
    def __init__(
        self,
        *,
        client_sample_rate: builtins.float = ...,
        data: global___Tracecontext.TracecontextData | None = ...,
        exclusive_time: builtins.float = ...,
        op: builtins.str = ...,
        origin: builtins.str = ...,
        parent_span_id: builtins.str = ...,
        sampled: builtins.bool = ...,
        span_id: builtins.str = ...,
        status: builtins.str = ...,
        trace_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["client_sample_rate", b"client_sample_rate", "data", b"data", "exclusive_time", b"exclusive_time", "has_client_sample_rate", b"has_client_sample_rate", "has_data", b"has_data", "has_exclusive_time", b"has_exclusive_time", "has_op", b"has_op", "has_origin", b"has_origin", "has_parent_span_id", b"has_parent_span_id", "has_sampled", b"has_sampled", "has_status", b"has_status", "op", b"op", "origin", b"origin", "parent_span_id", b"parent_span_id", "sampled", b"sampled", "status", b"status"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["client_sample_rate", b"client_sample_rate", "data", b"data", "exclusive_time", b"exclusive_time", "has_client_sample_rate", b"has_client_sample_rate", "has_data", b"has_data", "has_exclusive_time", b"has_exclusive_time", "has_op", b"has_op", "has_origin", b"has_origin", "has_parent_span_id", b"has_parent_span_id", "has_sampled", b"has_sampled", "has_status", b"has_status", "op", b"op", "origin", b"origin", "parent_span_id", b"parent_span_id", "sampled", b"sampled", "span_id", b"span_id", "status", b"status", "trace_id", b"trace_id"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_client_sample_rate", b"has_client_sample_rate"]) -> typing.Literal["client_sample_rate"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_data", b"has_data"]) -> typing.Literal["data"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_exclusive_time", b"has_exclusive_time"]) -> typing.Literal["exclusive_time"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_op", b"has_op"]) -> typing.Literal["op"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_origin", b"has_origin"]) -> typing.Literal["origin"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_parent_span_id", b"has_parent_span_id"]) -> typing.Literal["parent_span_id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_sampled", b"has_sampled"]) -> typing.Literal["sampled"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_status", b"has_status"]) -> typing.Literal["status"] | None: ...

global___Tracecontext = Tracecontext

@typing.final
class Transactioninfo(google.protobuf.message.Message):
    """
    Additional information about the name of the transaction.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class TransactioninfoChanges(google.protobuf.message.Message):
        """
        A list of changes prior to the final transaction name.

        This list must be empty if the transaction name is set at the beginning of the transaction
        and never changed. There is no placeholder entry for the initial transaction name.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        PROPAGATIONS_FIELD_NUMBER: builtins.int
        SOURCE_FIELD_NUMBER: builtins.int
        TIMESTAMP_FIELD_NUMBER: builtins.int
        propagations: builtins.int
        source: builtins.str
        @property
        def timestamp(self) -> google.protobuf.struct_pb2.Value: ...
        def __init__(
            self,
            *,
            propagations: builtins.int = ...,
            source: builtins.str = ...,
            timestamp: google.protobuf.struct_pb2.Value | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["has_propagations", b"has_propagations", "has_source", b"has_source", "has_timestamp", b"has_timestamp", "propagations", b"propagations", "source", b"source", "timestamp", b"timestamp"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["has_propagations", b"has_propagations", "has_source", b"has_source", "has_timestamp", b"has_timestamp", "propagations", b"propagations", "source", b"source", "timestamp", b"timestamp"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_propagations", b"has_propagations"]) -> typing.Literal["propagations"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_source", b"has_source"]) -> typing.Literal["source"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_timestamp", b"has_timestamp"]) -> typing.Literal["timestamp"] | None: ...

    CHANGES_FIELD_NUMBER: builtins.int
    ORIGINAL_FIELD_NUMBER: builtins.int
    PROPAGATIONS_FIELD_NUMBER: builtins.int
    SOURCE_FIELD_NUMBER: builtins.int
    original: builtins.str
    propagations: builtins.int
    source: builtins.str
    @property
    def changes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Transactioninfo.TransactioninfoChanges]: ...
    def __init__(
        self,
        *,
        changes: collections.abc.Iterable[global___Transactioninfo.TransactioninfoChanges] | None = ...,
        original: builtins.str = ...,
        propagations: builtins.int = ...,
        source: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_original", b"has_original", "has_propagations", b"has_propagations", "has_source", b"has_source", "original", b"original", "propagations", b"propagations", "source", b"source"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["changes", b"changes", "has_original", b"has_original", "has_propagations", b"has_propagations", "has_source", b"has_source", "original", b"original", "propagations", b"propagations", "source", b"source"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_original", b"has_original"]) -> typing.Literal["original"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_propagations", b"has_propagations"]) -> typing.Literal["propagations"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_source", b"has_source"]) -> typing.Literal["source"] | None: ...

global___Transactioninfo = Transactioninfo

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

    PROPAGATIONS_FIELD_NUMBER: builtins.int
    SOURCE_FIELD_NUMBER: builtins.int
    TIMESTAMP_FIELD_NUMBER: builtins.int
    propagations: builtins.int
    source: builtins.str
    @property
    def timestamp(self) -> google.protobuf.struct_pb2.Value: ...
    def __init__(
        self,
        *,
        propagations: builtins.int = ...,
        source: builtins.str = ...,
        timestamp: google.protobuf.struct_pb2.Value | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["has_propagations", b"has_propagations", "has_source", b"has_source", "has_timestamp", b"has_timestamp", "propagations", b"propagations", "source", b"source", "timestamp", b"timestamp"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["has_propagations", b"has_propagations", "has_source", b"has_source", "has_timestamp", b"has_timestamp", "propagations", b"propagations", "source", b"source", "timestamp", b"timestamp"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_propagations", b"has_propagations"]) -> typing.Literal["propagations"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_source", b"has_source"]) -> typing.Literal["source"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_timestamp", b"has_timestamp"]) -> typing.Literal["timestamp"] | None: ...

global___Transactionnamechange = Transactionnamechange

@typing.final
class User(google.protobuf.message.Message):
    """
    Information about the user who triggered an event.

    ```json
    {
    "user": {
    "id": "unique_id",
    "username": "my_user",
    "email": "foo@example.com",
    "ip_address": "127.0.0.1",
    "subscription": "basic"
    }
    }
    ```
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class UserGeo(google.protobuf.message.Message):
        """
        Approximate geographical location of the end user or device.
        """

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        CITY_FIELD_NUMBER: builtins.int
        COUNTRY_CODE_FIELD_NUMBER: builtins.int
        REGION_FIELD_NUMBER: builtins.int
        SUBDIVISION_FIELD_NUMBER: builtins.int
        city: builtins.str
        country_code: builtins.str
        region: builtins.str
        subdivision: builtins.str
        def __init__(
            self,
            *,
            city: builtins.str = ...,
            country_code: builtins.str = ...,
            region: builtins.str = ...,
            subdivision: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["city", b"city", "country_code", b"country_code", "has_city", b"has_city", "has_country_code", b"has_country_code", "has_region", b"has_region", "has_subdivision", b"has_subdivision", "region", b"region", "subdivision", b"subdivision"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["city", b"city", "country_code", b"country_code", "has_city", b"has_city", "has_country_code", b"has_country_code", "has_region", b"has_region", "has_subdivision", b"has_subdivision", "region", b"region", "subdivision", b"subdivision"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_city", b"has_city"]) -> typing.Literal["city"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_country_code", b"has_country_code"]) -> typing.Literal["country_code"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_region", b"has_region"]) -> typing.Literal["region"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing.Literal["has_subdivision", b"has_subdivision"]) -> typing.Literal["subdivision"] | None: ...

    DATA_FIELD_NUMBER: builtins.int
    EMAIL_FIELD_NUMBER: builtins.int
    GEO_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    IP_ADDRESS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    SEGMENT_FIELD_NUMBER: builtins.int
    SENTRY_USER_FIELD_NUMBER: builtins.int
    USERNAME_FIELD_NUMBER: builtins.int
    email: builtins.str
    id: builtins.str
    ip_address: builtins.str
    name: builtins.str
    segment: builtins.str
    sentry_user: builtins.str
    username: builtins.str
    @property
    def data(self) -> google.protobuf.struct_pb2.Value: ...
    @property
    def geo(self) -> global___User.UserGeo: ...
    def __init__(
        self,
        *,
        data: google.protobuf.struct_pb2.Value | None = ...,
        email: builtins.str = ...,
        geo: global___User.UserGeo | None = ...,
        id: builtins.str = ...,
        ip_address: builtins.str = ...,
        name: builtins.str = ...,
        segment: builtins.str = ...,
        sentry_user: builtins.str = ...,
        username: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["data", b"data", "email", b"email", "geo", b"geo", "has_data", b"has_data", "has_email", b"has_email", "has_geo", b"has_geo", "has_id", b"has_id", "has_ip_address", b"has_ip_address", "has_name", b"has_name", "has_segment", b"has_segment", "has_sentry_user", b"has_sentry_user", "has_username", b"has_username", "id", b"id", "ip_address", b"ip_address", "name", b"name", "segment", b"segment", "sentry_user", b"sentry_user", "username", b"username"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["data", b"data", "email", b"email", "geo", b"geo", "has_data", b"has_data", "has_email", b"has_email", "has_geo", b"has_geo", "has_id", b"has_id", "has_ip_address", b"has_ip_address", "has_name", b"has_name", "has_segment", b"has_segment", "has_sentry_user", b"has_sentry_user", "has_username", b"has_username", "id", b"id", "ip_address", b"ip_address", "name", b"name", "segment", b"segment", "sentry_user", b"sentry_user", "username", b"username"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_data", b"has_data"]) -> typing.Literal["data"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_email", b"has_email"]) -> typing.Literal["email"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_geo", b"has_geo"]) -> typing.Literal["geo"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_id", b"has_id"]) -> typing.Literal["id"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_ip_address", b"has_ip_address"]) -> typing.Literal["ip_address"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_name", b"has_name"]) -> typing.Literal["name"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_segment", b"has_segment"]) -> typing.Literal["segment"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_sentry_user", b"has_sentry_user"]) -> typing.Literal["sentry_user"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_username", b"has_username"]) -> typing.Literal["username"] | None: ...

global___User = User

@typing.final
class Userreportv2Context(google.protobuf.message.Message):
    """
    Feedback context.

    This contexts contains user feedback specific attributes.
    We don't PII scrub contact_email as that is provided by the user.
    TODO(jferg): rename to FeedbackContext once old UserReport logic is deprecated.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CONTACT_EMAIL_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    contact_email: builtins.str
    message: builtins.str
    def __init__(
        self,
        *,
        contact_email: builtins.str = ...,
        message: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["contact_email", b"contact_email", "has_contact_email", b"has_contact_email", "has_message", b"has_message", "message", b"message"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["contact_email", b"contact_email", "has_contact_email", b"has_contact_email", "has_message", b"has_message", "message", b"message"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_contact_email", b"has_contact_email"]) -> typing.Literal["contact_email"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["has_message", b"has_message"]) -> typing.Literal["message"] | None: ...

global___Userreportv2Context = Userreportv2Context
