"""Model Registry REST API.

REST API for Model Registry to create and manage ML model metadata

The version of the OpenAPI document: v1alpha3
Generated by OpenAPI Generator (https://openapi-generator.tech)

Do not edit the class manually.
"""  # noqa: E501

from __future__ import annotations

import json
from enum import Enum

from typing_extensions import Self


class ExperimentRunStatus(str, Enum):
    """The state of the Experiment Run. The state transitions are   [SCHEDULED ->] RUNNING -> FINISHED | FAILED | KILLED RUNNING: Run has been initiated. SCHEDULED: Run is scheduled to run at a later time. FINISHED: Run has completed. FAILED: Run execution failed. KILLED: Run killed by user."""

    """
    allowed enum values
    """
    RUNNING = "RUNNING"
    SCHEDULED = "SCHEDULED"
    FINISHED = "FINISHED"
    FAILED = "FAILED"
    KILLED = "KILLED"

    @classmethod
    def from_json(cls, json_str: str) -> Self:
        """Create an instance of ExperimentRunStatus from a JSON string."""
        return cls(json.loads(json_str))
