# 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 .types import (
        AcmDetails,
        AcmDetailsAcmType,
        ActiveTarget,
        Agent,
        AgentRequest,
        Alert,
        AlertCondition,
        AlertLevel,
        Aliases,
        Allocation,
        AlternateId,
        AlternateIdType,
        AngleOfArrival,
        Bandwidth,
        BandwidthRange,
        CancelRequest,
        Classification,
        ClassificationInformation,
        ClassificationInformationLevel,
        Color,
        CompleteRequest,
        ComponentHealth,
        ComponentHealthHealth,
        ComponentMessage,
        ComponentMessageStatus,
        ContentIdentifier,
        ControlAreaDetails,
        ControlAreaDetailsType,
        Correlation,
        CorrelationMembership,
        CorrelationMetadata,
        CorrelationMetadataReplicationMode,
        CorrelationMetadataType,
        CronWindow,
        DecorrelatedAll,
        DecorrelatedSingle,
        Decorrelation,
        Dimensions,
        Echelon,
        EchelonArmyEchelon,
        EmitterNotation,
        Entity,
        EntityEvent,
        EntityEventEventType,
        EntityEventResponse,
        EntityIdsSelector,
        EntityStreamEvent,
        EntityStreamHeartbeat,
        Enu,
        ErrorEllipse,
        ExecuteRequest,
        FieldClassificationInformation,
        FieldOfView,
        FieldOfViewMode,
        Fixed,
        Frequency,
        FrequencyRange,
        Fuel,
        GeoDetails,
        GeoDetailsType,
        GeoEllipse,
        GeoEllipsoid,
        GeoLine,
        GeoPoint,
        GeoPolygon,
        GeoPolygonPosition,
        GeoShape,
        GoogleProtobufAny,
        GroupChild,
        GroupDetails,
        GroupParent,
        Health,
        HealthConnectionStatus,
        HealthHealthStatus,
        HeartbeatObject,
        HighValueTarget,
        HighValueTargetMatch,
        Indicators,
        LineOfBearing,
        LinearRing,
        ListResponse,
        Lla,
        LlaAltitudeReference,
        Location,
        LocationUncertainty,
        MeanKeplerianElements,
        Measurement,
        Media,
        MediaItem,
        MediaItemType,
        MergedFrom,
        MilStd2525C,
        MilView,
        MilViewDisposition,
        MilViewEnvironment,
        MilViewNationality,
        Mode5,
        Mode5Mode5InterrogationResponse,
        ModeS,
        NonPrimaryMembership,
        Ontology,
        OntologyTemplate,
        Orbit,
        OrbitMeanElements,
        OrbitMeanElementsMetadata,
        OrbitMeanElementsMetadataMeanElementTheory,
        OrbitMeanElementsMetadataRefFrame,
        Override,
        OverrideStatus,
        OverrideType,
        Overrides,
        Owner,
        PathMetadata,
        Payload,
        PayloadConfiguration,
        PayloadConfigurationEffectiveEnvironmentItem,
        PayloadConfigurationPayloadOperationalState,
        Payloads,
        Pose,
        Position,
        PowerLevel,
        PowerSource,
        PowerSourcePowerStatus,
        PowerSourcePowerType,
        PowerState,
        PrimaryCorrelation,
        PrimaryMembership,
        Principal,
        ProjectedFrustum,
        Provenance,
        PulseRepetitionInterval,
        Quaternion,
        RangeRings,
        Relations,
        Relationship,
        RelationshipType,
        Relationships,
        Replication,
        RfConfiguration,
        RouteDetails,
        ScanCharacteristics,
        ScanCharacteristicsScanType,
        Schedule,
        ScheduleScheduleType,
        Schedules,
        SecondaryCorrelation,
        Sensor,
        SensorOperationalState,
        SensorSensorType,
        Sensors,
        Signal,
        Status,
        Supplies,
        Symbology,
        System,
        TMat2,
        TMat3,
        TargetPriority,
        Task,
        TaskCatalog,
        TaskDefinition,
        TaskEntity,
        TaskError,
        TaskErrorCode,
        TaskQueryResults,
        TaskStatus,
        TaskStatusStatus,
        TaskVersion,
        Team,
        Threat,
        Timestamp,
        TleParameters,
        Tracked,
        TrackedBy,
        TransponderCodes,
        TransponderCodesMode4InterrogationResponse,
        UInt32Range,
        User,
        VisualDetails,
    )
    from .errors import (
        BadRequestError,
        ContentTooLargeError,
        InsufficientStorageError,
        InternalServerError,
        NotFoundError,
        RequestTimeoutError,
        TooManyRequestsError,
        UnauthorizedError,
    )
    from . import entities, entity, object, objects, task, tasks
    from .client import AsyncLattice, Lattice
    from .entities import StreamEntitiesResponse, StreamEntitiesResponse_Entity, StreamEntitiesResponse_Heartbeat
    from .environment import LatticeEnvironment
    from .objects import GetObjectRequestAcceptEncoding
    from .tasks import TaskQueryStatusFilter, TaskQueryStatusFilterStatus, TaskQueryUpdateTimeRange
    from .version import __version__
_dynamic_imports: typing.Dict[str, str] = {
    "AcmDetails": ".types",
    "AcmDetailsAcmType": ".types",
    "ActiveTarget": ".types",
    "Agent": ".types",
    "AgentRequest": ".types",
    "Alert": ".types",
    "AlertCondition": ".types",
    "AlertLevel": ".types",
    "Aliases": ".types",
    "Allocation": ".types",
    "AlternateId": ".types",
    "AlternateIdType": ".types",
    "AngleOfArrival": ".types",
    "AsyncLattice": ".client",
    "BadRequestError": ".errors",
    "Bandwidth": ".types",
    "BandwidthRange": ".types",
    "CancelRequest": ".types",
    "Classification": ".types",
    "ClassificationInformation": ".types",
    "ClassificationInformationLevel": ".types",
    "Color": ".types",
    "CompleteRequest": ".types",
    "ComponentHealth": ".types",
    "ComponentHealthHealth": ".types",
    "ComponentMessage": ".types",
    "ComponentMessageStatus": ".types",
    "ContentIdentifier": ".types",
    "ContentTooLargeError": ".errors",
    "ControlAreaDetails": ".types",
    "ControlAreaDetailsType": ".types",
    "Correlation": ".types",
    "CorrelationMembership": ".types",
    "CorrelationMetadata": ".types",
    "CorrelationMetadataReplicationMode": ".types",
    "CorrelationMetadataType": ".types",
    "CronWindow": ".types",
    "DecorrelatedAll": ".types",
    "DecorrelatedSingle": ".types",
    "Decorrelation": ".types",
    "Dimensions": ".types",
    "Echelon": ".types",
    "EchelonArmyEchelon": ".types",
    "EmitterNotation": ".types",
    "Entity": ".types",
    "EntityEvent": ".types",
    "EntityEventEventType": ".types",
    "EntityEventResponse": ".types",
    "EntityIdsSelector": ".types",
    "EntityStreamEvent": ".types",
    "EntityStreamHeartbeat": ".types",
    "Enu": ".types",
    "ErrorEllipse": ".types",
    "ExecuteRequest": ".types",
    "FieldClassificationInformation": ".types",
    "FieldOfView": ".types",
    "FieldOfViewMode": ".types",
    "Fixed": ".types",
    "Frequency": ".types",
    "FrequencyRange": ".types",
    "Fuel": ".types",
    "GeoDetails": ".types",
    "GeoDetailsType": ".types",
    "GeoEllipse": ".types",
    "GeoEllipsoid": ".types",
    "GeoLine": ".types",
    "GeoPoint": ".types",
    "GeoPolygon": ".types",
    "GeoPolygonPosition": ".types",
    "GeoShape": ".types",
    "GetObjectRequestAcceptEncoding": ".objects",
    "GoogleProtobufAny": ".types",
    "GroupChild": ".types",
    "GroupDetails": ".types",
    "GroupParent": ".types",
    "Health": ".types",
    "HealthConnectionStatus": ".types",
    "HealthHealthStatus": ".types",
    "HeartbeatObject": ".types",
    "HighValueTarget": ".types",
    "HighValueTargetMatch": ".types",
    "Indicators": ".types",
    "InsufficientStorageError": ".errors",
    "InternalServerError": ".errors",
    "Lattice": ".client",
    "LatticeEnvironment": ".environment",
    "LineOfBearing": ".types",
    "LinearRing": ".types",
    "ListResponse": ".types",
    "Lla": ".types",
    "LlaAltitudeReference": ".types",
    "Location": ".types",
    "LocationUncertainty": ".types",
    "MeanKeplerianElements": ".types",
    "Measurement": ".types",
    "Media": ".types",
    "MediaItem": ".types",
    "MediaItemType": ".types",
    "MergedFrom": ".types",
    "MilStd2525C": ".types",
    "MilView": ".types",
    "MilViewDisposition": ".types",
    "MilViewEnvironment": ".types",
    "MilViewNationality": ".types",
    "Mode5": ".types",
    "Mode5Mode5InterrogationResponse": ".types",
    "ModeS": ".types",
    "NonPrimaryMembership": ".types",
    "NotFoundError": ".errors",
    "Ontology": ".types",
    "OntologyTemplate": ".types",
    "Orbit": ".types",
    "OrbitMeanElements": ".types",
    "OrbitMeanElementsMetadata": ".types",
    "OrbitMeanElementsMetadataMeanElementTheory": ".types",
    "OrbitMeanElementsMetadataRefFrame": ".types",
    "Override": ".types",
    "OverrideStatus": ".types",
    "OverrideType": ".types",
    "Overrides": ".types",
    "Owner": ".types",
    "PathMetadata": ".types",
    "Payload": ".types",
    "PayloadConfiguration": ".types",
    "PayloadConfigurationEffectiveEnvironmentItem": ".types",
    "PayloadConfigurationPayloadOperationalState": ".types",
    "Payloads": ".types",
    "Pose": ".types",
    "Position": ".types",
    "PowerLevel": ".types",
    "PowerSource": ".types",
    "PowerSourcePowerStatus": ".types",
    "PowerSourcePowerType": ".types",
    "PowerState": ".types",
    "PrimaryCorrelation": ".types",
    "PrimaryMembership": ".types",
    "Principal": ".types",
    "ProjectedFrustum": ".types",
    "Provenance": ".types",
    "PulseRepetitionInterval": ".types",
    "Quaternion": ".types",
    "RangeRings": ".types",
    "Relations": ".types",
    "Relationship": ".types",
    "RelationshipType": ".types",
    "Relationships": ".types",
    "Replication": ".types",
    "RequestTimeoutError": ".errors",
    "RfConfiguration": ".types",
    "RouteDetails": ".types",
    "ScanCharacteristics": ".types",
    "ScanCharacteristicsScanType": ".types",
    "Schedule": ".types",
    "ScheduleScheduleType": ".types",
    "Schedules": ".types",
    "SecondaryCorrelation": ".types",
    "Sensor": ".types",
    "SensorOperationalState": ".types",
    "SensorSensorType": ".types",
    "Sensors": ".types",
    "Signal": ".types",
    "Status": ".types",
    "StreamEntitiesResponse": ".entities",
    "StreamEntitiesResponse_Entity": ".entities",
    "StreamEntitiesResponse_Heartbeat": ".entities",
    "Supplies": ".types",
    "Symbology": ".types",
    "System": ".types",
    "TMat2": ".types",
    "TMat3": ".types",
    "TargetPriority": ".types",
    "Task": ".types",
    "TaskCatalog": ".types",
    "TaskDefinition": ".types",
    "TaskEntity": ".types",
    "TaskError": ".types",
    "TaskErrorCode": ".types",
    "TaskQueryResults": ".types",
    "TaskQueryStatusFilter": ".tasks",
    "TaskQueryStatusFilterStatus": ".tasks",
    "TaskQueryUpdateTimeRange": ".tasks",
    "TaskStatus": ".types",
    "TaskStatusStatus": ".types",
    "TaskVersion": ".types",
    "Team": ".types",
    "Threat": ".types",
    "Timestamp": ".types",
    "TleParameters": ".types",
    "TooManyRequestsError": ".errors",
    "Tracked": ".types",
    "TrackedBy": ".types",
    "TransponderCodes": ".types",
    "TransponderCodesMode4InterrogationResponse": ".types",
    "UInt32Range": ".types",
    "UnauthorizedError": ".errors",
    "User": ".types",
    "VisualDetails": ".types",
    "__version__": ".version",
    "entities": ".entities",
    "entity": ".entity",
    "object": ".object",
    "objects": ".objects",
    "task": ".task",
    "tasks": ".tasks",
}


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__ = [
    "AcmDetails",
    "AcmDetailsAcmType",
    "ActiveTarget",
    "Agent",
    "AgentRequest",
    "Alert",
    "AlertCondition",
    "AlertLevel",
    "Aliases",
    "Allocation",
    "AlternateId",
    "AlternateIdType",
    "AngleOfArrival",
    "AsyncLattice",
    "BadRequestError",
    "Bandwidth",
    "BandwidthRange",
    "CancelRequest",
    "Classification",
    "ClassificationInformation",
    "ClassificationInformationLevel",
    "Color",
    "CompleteRequest",
    "ComponentHealth",
    "ComponentHealthHealth",
    "ComponentMessage",
    "ComponentMessageStatus",
    "ContentIdentifier",
    "ContentTooLargeError",
    "ControlAreaDetails",
    "ControlAreaDetailsType",
    "Correlation",
    "CorrelationMembership",
    "CorrelationMetadata",
    "CorrelationMetadataReplicationMode",
    "CorrelationMetadataType",
    "CronWindow",
    "DecorrelatedAll",
    "DecorrelatedSingle",
    "Decorrelation",
    "Dimensions",
    "Echelon",
    "EchelonArmyEchelon",
    "EmitterNotation",
    "Entity",
    "EntityEvent",
    "EntityEventEventType",
    "EntityEventResponse",
    "EntityIdsSelector",
    "EntityStreamEvent",
    "EntityStreamHeartbeat",
    "Enu",
    "ErrorEllipse",
    "ExecuteRequest",
    "FieldClassificationInformation",
    "FieldOfView",
    "FieldOfViewMode",
    "Fixed",
    "Frequency",
    "FrequencyRange",
    "Fuel",
    "GeoDetails",
    "GeoDetailsType",
    "GeoEllipse",
    "GeoEllipsoid",
    "GeoLine",
    "GeoPoint",
    "GeoPolygon",
    "GeoPolygonPosition",
    "GeoShape",
    "GetObjectRequestAcceptEncoding",
    "GoogleProtobufAny",
    "GroupChild",
    "GroupDetails",
    "GroupParent",
    "Health",
    "HealthConnectionStatus",
    "HealthHealthStatus",
    "HeartbeatObject",
    "HighValueTarget",
    "HighValueTargetMatch",
    "Indicators",
    "InsufficientStorageError",
    "InternalServerError",
    "Lattice",
    "LatticeEnvironment",
    "LineOfBearing",
    "LinearRing",
    "ListResponse",
    "Lla",
    "LlaAltitudeReference",
    "Location",
    "LocationUncertainty",
    "MeanKeplerianElements",
    "Measurement",
    "Media",
    "MediaItem",
    "MediaItemType",
    "MergedFrom",
    "MilStd2525C",
    "MilView",
    "MilViewDisposition",
    "MilViewEnvironment",
    "MilViewNationality",
    "Mode5",
    "Mode5Mode5InterrogationResponse",
    "ModeS",
    "NonPrimaryMembership",
    "NotFoundError",
    "Ontology",
    "OntologyTemplate",
    "Orbit",
    "OrbitMeanElements",
    "OrbitMeanElementsMetadata",
    "OrbitMeanElementsMetadataMeanElementTheory",
    "OrbitMeanElementsMetadataRefFrame",
    "Override",
    "OverrideStatus",
    "OverrideType",
    "Overrides",
    "Owner",
    "PathMetadata",
    "Payload",
    "PayloadConfiguration",
    "PayloadConfigurationEffectiveEnvironmentItem",
    "PayloadConfigurationPayloadOperationalState",
    "Payloads",
    "Pose",
    "Position",
    "PowerLevel",
    "PowerSource",
    "PowerSourcePowerStatus",
    "PowerSourcePowerType",
    "PowerState",
    "PrimaryCorrelation",
    "PrimaryMembership",
    "Principal",
    "ProjectedFrustum",
    "Provenance",
    "PulseRepetitionInterval",
    "Quaternion",
    "RangeRings",
    "Relations",
    "Relationship",
    "RelationshipType",
    "Relationships",
    "Replication",
    "RequestTimeoutError",
    "RfConfiguration",
    "RouteDetails",
    "ScanCharacteristics",
    "ScanCharacteristicsScanType",
    "Schedule",
    "ScheduleScheduleType",
    "Schedules",
    "SecondaryCorrelation",
    "Sensor",
    "SensorOperationalState",
    "SensorSensorType",
    "Sensors",
    "Signal",
    "Status",
    "StreamEntitiesResponse",
    "StreamEntitiesResponse_Entity",
    "StreamEntitiesResponse_Heartbeat",
    "Supplies",
    "Symbology",
    "System",
    "TMat2",
    "TMat3",
    "TargetPriority",
    "Task",
    "TaskCatalog",
    "TaskDefinition",
    "TaskEntity",
    "TaskError",
    "TaskErrorCode",
    "TaskQueryResults",
    "TaskQueryStatusFilter",
    "TaskQueryStatusFilterStatus",
    "TaskQueryUpdateTimeRange",
    "TaskStatus",
    "TaskStatusStatus",
    "TaskVersion",
    "Team",
    "Threat",
    "Timestamp",
    "TleParameters",
    "TooManyRequestsError",
    "Tracked",
    "TrackedBy",
    "TransponderCodes",
    "TransponderCodesMode4InterrogationResponse",
    "UInt32Range",
    "UnauthorizedError",
    "User",
    "VisualDetails",
    "__version__",
    "entities",
    "entity",
    "object",
    "objects",
    "task",
    "tasks",
]
