namespace e_suite.Workflow.Core.Attributes;

public abstract class TaskTypeAttribute : Attribute
{
    protected TaskTypeAttribute(string taskIcon = "")
    {
        TaskIcon = taskIcon;
    }

    public string TaskIcon { get; }
}

public class GeneralTaskAttribute : TaskTypeAttribute
{
    public GeneralTaskAttribute(string taskIcon = "", bool allowMultiple = true) : base(taskIcon)
    {
        AllowMultiple = allowMultiple;
    }
    
    public bool AllowMultiple { get; }
}

public class ApprovalTaskAttribute : TaskTypeAttribute
{
    public ApprovalTaskAttribute(string taskIcon = "") : base(taskIcon)
    {

    }
}