# DO NOT EDIT! This file was auto-generated by crates/build/re_types_builder/src/codegen/python/mod.rs
# Based on "crates/store/re_sdk_types/definitions/rerun/blueprint/components/visual_bounds2d.fbs".

# You can extend this class by creating a "VisualBounds2DExt" class in "visual_bounds2d_ext.py".

from __future__ import annotations

from ... import datatypes
from ..._baseclasses import (
    ComponentBatchMixin,
    ComponentMixin,
)
from .visual_bounds2d_ext import VisualBounds2DExt

__all__ = ["VisualBounds2D", "VisualBounds2DBatch"]


class VisualBounds2D(VisualBounds2DExt, datatypes.Range2D, ComponentMixin):
    """
    **Component**: Visual bounds in 2D space used for `Spatial2DView`.

    ⚠️ **This type is _unstable_ and may change significantly in a way that the data won't be backwards compatible.**
    """

    _BATCH_TYPE = None
    # __init__ can be found in visual_bounds2d_ext.py

    # Note: there are no fields here because VisualBounds2D delegates to datatypes.Range2D


class VisualBounds2DBatch(datatypes.Range2DBatch, ComponentBatchMixin):
    _COMPONENT_TYPE: str = "rerun.blueprint.components.VisualBounds2D"


# This is patched in late to avoid circular dependencies.
VisualBounds2D._BATCH_TYPE = VisualBounds2DBatch  # type: ignore[assignment]
