from truefoundry.deploy._autogen.models import (
    AppProtocol,
    Autoshutdown,
    CanaryStep,
    CapacityType,
    Claim,
    ConcurrencyPolicy,
    JobAlert,
    Kustomize,
    ParamType,
    Protocol,
    SparkDriverConfig,
    SparkExecutorConfig,
    SparkExecutorDynamicScaling,
    SparkExecutorFixedInstances,
    WorkbenchImage,
    WorkflowAlert,
)
from truefoundry.deploy.lib.dao.application import (
    delete_application,
    get_application,
    get_job_run,
    list_applications,
    list_job_runs,
    terminate_job_run,
    trigger_job,
    trigger_workflow,
)
from truefoundry.deploy.lib.dao.version import (
    get_version as get_application_version,
)
from truefoundry.deploy.lib.dao.version import (
    list_versions as list_application_versions,
)
from truefoundry.deploy.lib.dao.workspace import (
    delete_workspace,
    get_workspace_by_fqn,
    list_workspaces,
)
from truefoundry.deploy.v2.lib.deployable_patched_models import (
    Application,
    ApplicationSet,
    AsyncService,
    Helm,
    Job,
    Notebook,
    RStudio,
    Service,
    SparkJob,
    SSHServer,
    Volume,
    Workflow,
)
from truefoundry.deploy.v2.lib.patched_models import (
    UV,
    AMQPInputConfig,
    AMQPMetricConfig,
    AMQPOutputConfig,
    ArtifactsCacheVolume,
    ArtifactsDownload,
    AsyncProcessorSidecar,
    AsyncServiceAutoscaling,
    Autoscaling,
    AWSAccessKeyAuth,
    AWSInferentia,
    AWSInferentiaAccelerator,
    AwsSqsAccessKeyBasedAuth,
    AwsSqsAssumedRoleBasedAuth,
    BasicAuthCreds,
    BlueGreen,
    Build,
    Canary,
    CoreNATSOutputConfig,
    CPUUtilizationMetric,
    CronMetric,
    CUDAVersion,
    DockerFileBuild,
    DynamicVolumeConfig,
    Email,
    Endpoint,
    GcpTPU,
    GitHelmRepo,
    GitSource,
    GPUType,
    HealthProbe,
    HelmRepo,
    HttpProbe,
    HuggingfaceArtifactSource,
    Image,
    JwtAuthConfig,
    KafkaInputConfig,
    KafkaMetricConfig,
    KafkaOutputConfig,
    KafkaSASLAuth,
    LocalSource,
    Manual,
    NATSInputConfig,
    NATSMetricConfig,
    NATSOutputConfig,
    NATSUserPasswordAuth,
    NodepoolSelector,
    NodeSelector,
    NvidiaGPU,
    NvidiaMIGGPU,
    NvidiaTimeslicingGPU,
    OCIRepo,
    Param,
    Pip,
    Poetry,
    Port,
    PythonBuild,
    RemoteSource,
    Resources,
    Rolling,
    RPSMetric,
    Schedule,
    SecretMount,
    ServiceAutoscaling,
    SlackBot,
    SlackWebhook,
    SparkBuild,
    SparkImage,
    SparkImageBuild,
    SparkJobJavaEntrypoint,
    SparkJobPythonEntrypoint,
    SparkJobPythonNotebookEntrypoint,
    SparkJobScalaEntrypoint,
    SparkJobScalaNotebookEntrypoint,
    SQSInputConfig,
    SQSOutputConfig,
    SQSQueueMetricConfig,
    StaticVolumeConfig,
    StringDataMount,
    TPUType,
    TrueFoundryArtifactSource,
    TruefoundryArtifactSource,  # deprecated, kept for backwards compatibility
    TrueFoundryInteractiveLogin,
    VolumeBrowser,
    VolumeMount,
    WorkerConfig,
)
