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

# You can extend this class by creating a "KeypointIdExt" class in "keypoint_id_ext.py".

from __future__ import annotations

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

__all__ = ["KeypointId", "KeypointIdBatch"]


class KeypointId(datatypes.KeypointId, ComponentMixin):
    """
    **Component**: A 16-bit ID representing a type of semantic keypoint within a class.

    `KeypointId`s are only meaningful within the context of a [`rerun.datatypes.ClassDescription`].

    Used to look up an [`rerun.datatypes.AnnotationInfo`] for a Keypoint within the
    [`rerun.components.AnnotationContext`].
    """

    _BATCH_TYPE = None
    # You can define your own __init__ function as a member of KeypointIdExt in keypoint_id_ext.py

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


class KeypointIdBatch(datatypes.KeypointIdBatch, ComponentBatchMixin):
    _COMPONENT_TYPE: str = "rerun.components.KeypointId"


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