namespace ReactorMaintenance.Simulation;

public sealed record PropState
{
    public EPropType Type { get; init; }
    public ECarrierType Carrier { get; init; }
    public EPropSwitchState SwitchState { get; init; } = EPropSwitchState.Enabled;
    public EConsumerServiceState ServiceState { get; init; } = EConsumerServiceState.Unknown;
    public int JunctionMode { get; init; }
    public ERemedyType RemedyType { get; init; }
    public bool Depleted { get; init; }
    public int ReactorId { get; init; }

    public bool IsEnabled => SwitchState == EPropSwitchState.Enabled;
}