using e_suite.Workflow.Core.Attributes;

namespace e_suite.Workflow.Core.Interfaces;

public interface IOutcomeAction
{
    Guid Task { get; }
}

public class OutcomeAction<T> : IOutcomeAction
{
    public T Outcome { get; set; }
    public Guid Task { get; set; }
}

[TaskCapability]
public interface IOutcome<T>
{
    //Todo runtime only property.
    //public T? TaskOutcome { get; set; }

    List<OutcomeAction<T>> OutcomeActions { get; set; }
}