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

import typing

import typing_extensions
from ..core.serialization import FieldMetadata
from ..types.step_run_base_status import StepRunBaseStatus
from .file_summary import FileSummaryParams


class StepRunBaseParams(typing_extensions.TypedDict):
    """
    Base properties shared by all step run types.
    """

    object: typing.Literal["workflow_step_run"]
    """
    The type of object. In this case, it will always be `"workflow_step_run"`.
    """

    id: str
    """
    The ID of the workflow step run.
    
    Example: `"workflow_step_run_xKm9pNv3qWsY_jL2tR5Dh"`
    """

    workflow_run_id: typing_extensions.Annotated[str, FieldMetadata(alias="workflowRunId")]
    """
    The ID of the parent workflow run.
    
    Example: `"workflow_run_xKm9pNv3qWsY_jL2tR5Dh"`
    """

    status: StepRunBaseStatus
    """
    The status of the workflow step run:
    * `"PENDING"` - The step run is waiting to be executed
    * `"WAITING"` - The step run is waiting for a dependency to complete
    * `"PROCESSING"` - The step run is currently executing
    * `"PROCESSED"` - The step run completed successfully
    * `"FAILED"` - The step run encountered an error
    * `"CANCELLED"` - The step run was cancelled
    """

    files: typing.Sequence[FileSummaryParams]
    """
    The files associated with this step run.
    """
