namespace MainShell.Process
{
    public class DieTransferDecisionResult
    {
        public bool IsSubstrateComplete { get; set; }

        public bool IsChipExhausted { get; set; }

        public bool NeedsRecheck { get; set; }

        public AutoProductionRoute SuggestedRoute { get; set; } = AutoProductionRoute.None;
    }

    public enum CurrentChipLifecycleState
    {
        Empty = 0,
        Loading = 1,
        InUse = 2,
        PendingUnload = 3,
        Unloading = 4,
        LoadedPendingTransfer = 5
    }

    public enum SubstrateLifecycleState
    {
        NotLoaded = 0,
        Loaded = 1,
        Positioned = 2,
        HeightMeasured = 3,
        InProcess = 4,
        Complete = 5,
        Unloading = 6
    }
}