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

import builtins
import dbtlabs.proto.public.v1.events.fusion.phase.phase_pb2
import google.protobuf.descriptor
import google.protobuf.message
import sys
import typing

if sys.version_info >= (3, 10):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class AssetParsed(google.protobuf.message.Message):
    """Span event tracking parsing of a single asset."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PACKAGE_NAME_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    RELATIVE_PATH_FIELD_NUMBER: builtins.int
    DISPLAY_PATH_FIELD_NUMBER: builtins.int
    UNIQUE_ID_FIELD_NUMBER: builtins.int
    PHASE_FIELD_NUMBER: builtins.int
    package_name: builtins.str
    """Package name that owns this asset."""
    name: builtins.str
    """Asset name (typically the file stem)."""
    relative_path: builtins.str
    """Path to the asset relative to the project root."""
    display_path: builtins.str
    """Display path used for CLI progress output."""
    unique_id: builtins.str
    """Unique identifier for this asset when available."""
    phase: dbtlabs.proto.public.v1.events.fusion.phase.phase_pb2.ExecutionPhase.ValueType
    """Execution phase for this event."""
    def __init__(
        self,
        *,
        package_name: builtins.str = ...,
        name: builtins.str = ...,
        relative_path: builtins.str = ...,
        display_path: builtins.str = ...,
        unique_id: builtins.str | None = ...,
        phase: dbtlabs.proto.public.v1.events.fusion.phase.phase_pb2.ExecutionPhase.ValueType = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["_unique_id", b"_unique_id", "unique_id", b"unique_id"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["_unique_id", b"_unique_id", "display_path", b"display_path", "name", b"name", "package_name", b"package_name", "phase", b"phase", "relative_path", b"relative_path", "unique_id", b"unique_id"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["_unique_id", b"_unique_id"]) -> typing.Literal["unique_id"] | None: ...

Global___AssetParsed: typing_extensions.TypeAlias = AssetParsed
