# 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 .device_recovery_recover_asset_request_body_missing_reason import (
        DeviceRecoveryRecoverAssetRequestBodyMissingReason,
    )
    from .device_recovery_recover_asset_request_body_recovery_status import (
        DeviceRecoveryRecoverAssetRequestBodyRecoveryStatus,
    )
    from .device_recovery_recover_asset_request_body_status import DeviceRecoveryRecoverAssetRequestBodyStatus
    from .functions_start_function_run_request_body_params_override import (
        FunctionsStartFunctionRunRequestBodyParamsOverride,
    )
    from .get_assets_inputs_request_type import GetAssetsInputsRequestType
    from .get_driver_efficiency_request_driver_activation_status import GetDriverEfficiencyRequestDriverActivationStatus
    from .get_hos_eld_events_request_driver_activation_status import GetHosEldEventsRequestDriverActivationStatus
    from .get_jobs_request_status import GetJobsRequestStatus
    from .get_qualification_records_stream_request_entity_type import GetQualificationRecordsStreamRequestEntityType
    from .get_qualification_types_request_entity_type import GetQualificationTypesRequestEntityType
    from .get_tag_group_safety_scores_request_score_type import GetTagGroupSafetyScoresRequestScoreType
    from .get_tag_safety_scores_request_score_type import GetTagSafetyScoresRequestScoreType
    from .list_carb_ctc_vehicles_request_test_status_item import ListCarbCtcVehiclesRequestTestStatusItem
    from .ridership_passengers_create_ridership_passenger_request_body_classification import (
        RidershipPassengersCreateRidershipPassengerRequestBodyClassification,
    )
    from .ridership_passengers_update_ridership_passenger_request_body_classification import (
        RidershipPassengersUpdateRidershipPassengerRequestBodyClassification,
    )
_dynamic_imports: typing.Dict[str, str] = {
    "DeviceRecoveryRecoverAssetRequestBodyMissingReason": ".device_recovery_recover_asset_request_body_missing_reason",
    "DeviceRecoveryRecoverAssetRequestBodyRecoveryStatus": ".device_recovery_recover_asset_request_body_recovery_status",
    "DeviceRecoveryRecoverAssetRequestBodyStatus": ".device_recovery_recover_asset_request_body_status",
    "FunctionsStartFunctionRunRequestBodyParamsOverride": ".functions_start_function_run_request_body_params_override",
    "GetAssetsInputsRequestType": ".get_assets_inputs_request_type",
    "GetDriverEfficiencyRequestDriverActivationStatus": ".get_driver_efficiency_request_driver_activation_status",
    "GetHosEldEventsRequestDriverActivationStatus": ".get_hos_eld_events_request_driver_activation_status",
    "GetJobsRequestStatus": ".get_jobs_request_status",
    "GetQualificationRecordsStreamRequestEntityType": ".get_qualification_records_stream_request_entity_type",
    "GetQualificationTypesRequestEntityType": ".get_qualification_types_request_entity_type",
    "GetTagGroupSafetyScoresRequestScoreType": ".get_tag_group_safety_scores_request_score_type",
    "GetTagSafetyScoresRequestScoreType": ".get_tag_safety_scores_request_score_type",
    "ListCarbCtcVehiclesRequestTestStatusItem": ".list_carb_ctc_vehicles_request_test_status_item",
    "RidershipPassengersCreateRidershipPassengerRequestBodyClassification": ".ridership_passengers_create_ridership_passenger_request_body_classification",
    "RidershipPassengersUpdateRidershipPassengerRequestBodyClassification": ".ridership_passengers_update_ridership_passenger_request_body_classification",
}


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__)
        if module_name == f".{attr_name}":
            return module
        else:
            return getattr(module, attr_name)
    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__ = [
    "DeviceRecoveryRecoverAssetRequestBodyMissingReason",
    "DeviceRecoveryRecoverAssetRequestBodyRecoveryStatus",
    "DeviceRecoveryRecoverAssetRequestBodyStatus",
    "FunctionsStartFunctionRunRequestBodyParamsOverride",
    "GetAssetsInputsRequestType",
    "GetDriverEfficiencyRequestDriverActivationStatus",
    "GetHosEldEventsRequestDriverActivationStatus",
    "GetJobsRequestStatus",
    "GetQualificationRecordsStreamRequestEntityType",
    "GetQualificationTypesRequestEntityType",
    "GetTagGroupSafetyScoresRequestScoreType",
    "GetTagSafetyScoresRequestScoreType",
    "ListCarbCtcVehiclesRequestTestStatusItem",
    "RidershipPassengersCreateRidershipPassengerRequestBodyClassification",
    "RidershipPassengersUpdateRidershipPassengerRequestBodyClassification",
]
