# 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/components/clear_is_recursive.fbs".

# You can extend this class by creating a "ClearIsRecursiveExt" class in "clear_is_recursive_ext.py".

from __future__ import annotations

from .. import datatypes
from .._baseclasses import (
    ComponentBatchMixin,
    ComponentMixin,
)
from .clear_is_recursive_ext import ClearIsRecursiveExt

__all__ = ["ClearIsRecursive", "ClearIsRecursiveBatch"]


class ClearIsRecursive(ClearIsRecursiveExt, datatypes.Bool, ComponentMixin):
    """**Component**: Configures how a clear operation should behave - recursive or not."""

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

    # Note: there are no fields here because ClearIsRecursive delegates to datatypes.Bool


class ClearIsRecursiveBatch(datatypes.BoolBatch, ComponentBatchMixin):
    _COMPONENT_TYPE: str = "rerun.components.ClearIsRecursive"


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