namespace AyaNovaQBI
{
    /// <summary>
    /// All AyaNova types and their attributes indicating what features that type will support (tagging, attachments etc)
    /// </summary>
    public enum AyaType : int
    {
        NoType = 0,
        Global = 1,
        FormUserOptions = 2,
        User = 3,
        ServerState = 4,
        License = 5,
        LogFile = 6,
        PickListTemplate = 7,
        Customer = 8,
        ServerJob = 9,
        Contract = 10,
        TrialSeeder = 11,
        ServerMetrics = 12,
        Translation = 13,
        UserOptions = 14,
        HeadOffice = 15,
        LoanUnit = 16,
        FileAttachment = 17,
        DataListSavedFilter = 18,
        FormCustom = 19,
        Part = 20,
        PM = 21,
        PMItem = 22,
        QuoteItemExpense = 23,
        QuoteItemLabor = 24,
        Project = 25,
        PurchaseOrder = 26,
        Quote = 27,
        QuoteItem = 28,
        QuoteItemLoan = 29,
        QuoteItemPart = 30,
        Unit = 31,
        UnitModel = 32,
        Vendor = 33,
        //--- WorkOrder
        WorkOrder = 34,
        WorkOrderItem = 35,
        WorkOrderItemExpense = 36,
        WorkOrderItemLabor = 37,
        WorkOrderItemLoan = 38,
        WorkOrderItemPart = 39,
        WorkOrderItemPartRequest = 40,
        WorkOrderItemScheduledUser = 41,
        WorkOrderItemTask = 42,
        WorkOrderItemTravel = 43,
        WorkOrderItemUnit = 44,
        //---
        QuoteItemScheduledUser = 45,
        QuoteItemTask = 46,
        GlobalOps = 47,//really only used for rights, not an object type of any kind
        BizMetrics = 48,//deprecate?  Not used for anything as of nov 2020
        Backup = 49,
        Notification = 50,
        NotifySubscription = 51,
        Reminder = 52,
        UnitMeterReading = 53,
        CustomerServiceRequest = 54,
        // ServiceBank = 55,
        OpsNotificationSettings = 56,
        Report = 57,
        DashboardView = 58,
        CustomerNote = 59,
        Memo = 60,
        Review = 61,
        ServiceRate = 62,
        TravelRate = 63,
        TaxCode = 64,
        PartAssembly = 65,
        PartWarehouse = 66,
        PartInventory = 67,
        DataListColumnView = 68,
        PartInventoryRestock = 69,//for list only, synthetic object
        PartInventoryRequest = 70,//for list only, synthetic object
        WorkOrderStatus = 71,
        TaskGroup = 72,
        WorkOrderItemOutsideService = 73,
        WorkOrderItemPriority = 74,
        WorkOrderItemStatus = 75,
        QuoteItemTravel = 76,
        QuoteItemUnit = 77,
        QuoteStatus = 78,
        QuoteItemOutsideService = 79,
        PMItemExpense = 80,
        PMItemLabor = 81,
        PMItemLoan = 82,
        PMItemPart = 83,
        CustomerNotifySubscription = 84,//proxy subs for customers
        PMItemScheduledUser = 85,
        PMItemTask = 86,
        PMItemTravel = 87,
        PMItemUnit = 88,
        PMItemOutsideService = 89,
        PartInventoryDataList = 90,//for list/reporting only, synthetic object    
        PartInventoryRequestDataList = 91,//for list/reporting only, synthetic object
        Integration = 92 //3rd party or add-on integration data store
    }
}
