# This file was auto-generated by Fern from our API Definition.

# isort: skip_file

import typing
from importlib import import_module

if typing.TYPE_CHECKING:
    from .upsert_dlc_schema_keywords import UpsertDlcSchemaKeywords
    from .upsert_dlc_schema_keywords_help import UpsertDlcSchemaKeywordsHelp
    from .upsert_dlc_schema_keywords_opt_in import UpsertDlcSchemaKeywordsOptIn
    from .upsert_dlc_schema_keywords_opt_out import UpsertDlcSchemaKeywordsOptOut
    from .upsert_dlc_schema_links import UpsertDlcSchemaLinks
    from .upsert_dlc_schema_options import UpsertDlcSchemaOptions
    from .upsert_dlc_schema_use_case import UpsertDlcSchemaUseCase
_dynamic_imports: typing.Dict[str, str] = {
    "UpsertDlcSchemaKeywords": ".upsert_dlc_schema_keywords",
    "UpsertDlcSchemaKeywordsHelp": ".upsert_dlc_schema_keywords_help",
    "UpsertDlcSchemaKeywordsOptIn": ".upsert_dlc_schema_keywords_opt_in",
    "UpsertDlcSchemaKeywordsOptOut": ".upsert_dlc_schema_keywords_opt_out",
    "UpsertDlcSchemaLinks": ".upsert_dlc_schema_links",
    "UpsertDlcSchemaOptions": ".upsert_dlc_schema_options",
    "UpsertDlcSchemaUseCase": ".upsert_dlc_schema_use_case",
}


def __getattr__(attr_name: str) -> typing.Any:
    module_name = _dynamic_imports.get(attr_name)
    if module_name is None:
        raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
    try:
        module = import_module(module_name, __package__)
        result = getattr(module, attr_name)
        return result
    except ImportError as e:
        raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
    except AttributeError as e:
        raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e


def __dir__():
    lazy_attrs = list(_dynamic_imports.keys())
    return sorted(lazy_attrs)


__all__ = [
    "UpsertDlcSchemaKeywords",
    "UpsertDlcSchemaKeywordsHelp",
    "UpsertDlcSchemaKeywordsOptIn",
    "UpsertDlcSchemaKeywordsOptOut",
    "UpsertDlcSchemaLinks",
    "UpsertDlcSchemaOptions",
    "UpsertDlcSchemaUseCase",
]
