using System.ComponentModel.DataAnnotations.Schema;
using Marco.Pms.Model.Entitlements;
using Microsoft.AspNetCore.Mvc.ModelBinding.Validation;

namespace Marco.Pms.Model.Master
{
    public class Feature
    {
        public Guid Id { get; set; } // Unique identifier for the feature
        public Guid ModuleId { get; set; }
        [ValidateNever]
        [ForeignKey(nameof(ModuleId))]
        public Module? Module { get; set; }
        public string? Name { get; set; } // Feature name
        public string? Description { get; set; } // Feature description
        public bool IsActive { get; set; }

        public ICollection<FeaturePermission>? FeaturePermissions { get; set; }// Features assigned to this role
    }

}
