using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
namespace AyaNova.Models
{
    /// <summary>
    /// Interface for biz object models with standard fields
    /// used for bulk operations etc
    /// </summary>
    internal interface ICoreBizObjectModel
    {
        //Note: almost all biz objects support all these propertys, the exceptions are extremely few so auto-implementing them here
        //this is not a public api so I don't care about the "contract" aspect, just practicality
        //didn't want to end up with a zillion interfaces for all manner of stuff
        public long Id { get; set; }
        public uint Concurrency { get; set; }
        public string Name { get => throw new System.NotImplementedException(); set => throw new System.NotImplementedException(); }
        public bool? Active { get => throw new System.NotImplementedException(); set => throw new System.NotImplementedException(); }
        public string Wiki { get => throw new System.NotImplementedException(); set => throw new System.NotImplementedException(); }
        public string CustomFields { get; set; }
        public List<string> Tags { get; set; }
        public AyaNova.Biz.AyaType AyaType { get; }

    }

}