"""The PEtab 2.0 subpackage.

Contains all functionality related to handling PEtab 2.0 problems.
"""

from warnings import warn

warn(
    "Support for PEtab2.0 and all of petab.v2 is experimental "
    "and subject to changes!",
    stacklevel=1,
)

# TODO: move this module to v2
from petab.v1.mapping import (  # noqa: F403, F401, E402
    get_mapping_df,
    write_mapping_df,
)
from petab.v1.measurements import (  # noqa: F401, E402
    get_measurement_df,
    write_measurement_df,
)
from petab.v1.observables import (  # noqa: F401, E402
    get_observable_df,
    write_observable_df,
)
from petab.v1.parameters import (  # noqa: F401, E402
    get_parameter_df,
    write_parameter_df,
)
from petab.v1.yaml import load_yaml  # noqa: F401, E402

# import after v1
from ..version import __version__  # noqa: F401, E402
from . import (  # noqa: F401, E402
    C,  # noqa: F401, E402
    models,  # noqa: F401, E402
)
from .conditions import *  # noqa: F403, F401, E402
from .core import *  # noqa: F401, E402
from .experiments import (  # noqa: F401, E402
    get_experiment_df,
    write_experiment_df,
)
from .lint import lint_problem  # noqa: F401, E402
from .models import MODEL_TYPE_PYSB, MODEL_TYPE_SBML, Model  # noqa: F401, E402
