using CareFusion.Lib.StorageSystem.Attributes;
using System.ComponentModel;

namespace CareFusion.Lib.StorageSystem.Helpers.Enums
{
    /// <summary>
    /// Defines the supported by Mosaic capabilities.
    /// </summary>
    public enum MosaicSupportedCapabilities
    {
        [Description("Keep alive")]
        [UserSelectableProperty]
        KeepAlive = 0,

        [Description("Status")]
        [UserSelectableProperty]
        Status = 1,

        [Description("Input")]
        [UserSelectableProperty]
        Input = 2,

        [Description("Initiate input")]
        [UserSelectableProperty]
        InitiateInput = 3,

        [Description("Article master")]
        [UserSelectableProperty]
        ArticleMaster = 4,

        [Description("Stock delivery")]
        [UserSelectableProperty]
        StockDelivery = 5,

        [Description("Stock info")]
        [UserSelectableProperty]
        StockInfo = 6,

        [Description("Output")]
        [UserSelectableProperty]
        Output = 7,

        [Description("Task info")]
        [UserSelectableProperty]
        TaskInfo = 8,

        [Description("Task cancel")]
        [UserSelectableProperty]
        TaskCancel = 9,

        [Description("Configuration")]
        [UserSelectableProperty]
        Configuration = 10,

        [Description("Stock location info")]
        [UserSelectableProperty]
        StockLocationInfo = 11,

        [Description("Article info")]
        [UserSelectableProperty]
        ArticleInfo = 12,

        [Description("Infeed")]
        [UserSelectableProperty]
        Infeed = 13,

        [Description("Output destination")]
        [UserSelectableProperty]
        OutputDestination = 14,

        [Description("Unprocessed")]
        [UserSelectableProperty]
        Unprocessed = 15
    }
}