def METHOD_NAME():
    """Register ``napari.types`` objects with magicgui."""
    import sys
    from concurrent.futures import Future
    from magicgui import register_type
    from napari.utils import _magicgui as _mgui
    for type_ in (LayerDataTuple, List[LayerDataTuple]):
        register_type(
            type_,
            return_callback=_mgui.add_layer_data_tuples_to_viewer,
        )
        if sys.version_info >= (3, 9):
            future_type = Future[type_]  # type: ignore [valid-type]
            register_type(future_type, return_callback=_mgui.add_future_data)
    for data_type in get_args(_LayerData):
        register_type(
            data_type,
            choices=_mgui.get_layers_data,
            return_callback=_mgui.add_layer_data_to_viewer,
        )
        if sys.version_info >= (3, 9):
            register_type(
                Future[data_type],  # type: ignore [valid-type]
                choices=_mgui.get_layers_data,
                return_callback=partial(
                    _mgui.add_future_data, _from_tuple=False
                ),
            )
        register_type(
            Optional[data_type],  # type: ignore [call-overload]
            choices=_mgui.get_layers_data,
            return_callback=_mgui.add_layer_data_to_viewer,
        )
        if sys.version_info >= (3, 9):
            register_type(
                Future[Optional[data_type]],  # type: ignore [valid-type]
                choices=_mgui.get_layers_data,
                return_callback=partial(
                    _mgui.add_future_data, _from_tuple=False
                ),
            )