"""Backward compatible module for omni.graph.tools version 1.11 and earlier.
This module contains everything that was formerly visible by default but will no longer be part of the Python API
for omni.graph.tools. If there is something here you rely on contact the OmniGraph team and let them know.

Currently the module is in pre-deprecation, meaning you can still access everything here from the main module with

.. code-block:: python

    import omni.graph.tools as ogt

    ogt.pre_deprecated_but_still_visible()

Once the soft deprecation is enabled you will only be able to access the deprecated function with an explicit import:

.. code-block:: python

    import omni.graph.tools as ogt
    import omni.graph.tools._1_11 as ogt1_11

    if i_want_v1_11:
        ogt1_11.soft_deprecated_but_still_accessible()
    else:
        ogt.current_function()

When hard deprecation is in place all functionality will be removed and import of this module will fail:

.. code-block:: python

    import omni.graph.tools._1_11 as ot1_11
    # Raises DeprecationError
"""
from ._impl.debugging import OGN_DEBUG, OGN_EVAL_DEBUG, OGN_GC_DEBUG, OGN_UI_DEBUG, dbg, dbg_eval, dbg_gc, dbg_ui
from ._impl.node_generator.attributes.management import ATTRIBUTE_MANAGERS
from ._impl.node_generator.attributes.parsing import sdf_type_name
from ._impl.node_generator.generate_test_imports import import_tests_in_directory

# Code that should be retired
from ._impl.node_generator.keys import GraphSetupKeys_V1
from ._impl.node_generator.type_definitions import apply_type_definitions

# Code that should be refactored and moved to an appropriate location
from ._impl.node_generator.utils import (
    OGN_PARSE_DEBUG,
    OGN_REG_DEBUG,
    Settings,
    dbg_parse,
    dbg_reg,
    is_unwritable,
    shorten_string_lines_to,
)

# Code that is entirely internal to the node description editor and should be made local
from ._impl.ogn_types import _OGN_TO_SDF_BASE_NAME as OGN_TO_SDF_BASE_NAME
from ._impl.ogn_types import _SDF_BASE_NAME_TO_OGN as SDF_BASE_NAME_TO_OGN
from ._impl.ogn_types import _SDF_TO_OGN as SDF_TO_OGN

__all__ = [
    "apply_type_definitions",
    "ATTRIBUTE_MANAGERS",
    "dbg_eval",
    "dbg_gc",
    "dbg_parse",
    "dbg_reg",
    "dbg_ui",
    "dbg",
    "GraphSetupKeys_V1",
    "import_tests_in_directory",
    "is_unwritable",
    "OGN_DEBUG",
    "OGN_EVAL_DEBUG",
    "OGN_GC_DEBUG",
    "OGN_PARSE_DEBUG",
    "OGN_REG_DEBUG",
    "OGN_TO_SDF_BASE_NAME",
    "OGN_UI_DEBUG",
    "SDF_BASE_NAME_TO_OGN",
    "SDF_TO_OGN",
    "sdf_type_name",
    "Settings",
    "shorten_string_lines_to",
]
