using System.Security;

namespace LSFE.Infrastructure.Dto.Account
{
    public class NavigationItemDto
    {
        public required string Id { get; set; }
        public required string Label { get; set; }
        public required string Icon { get; set; }
        public string? Badge { get; set; }
        public required string Route { get; set; }
        public PermissionsDto? Permissions { get; set; }
        public List<NavigationItemDto>? Children { get; set; }
        public int? ParentModuleId { get; set; }
    }
    public class PermissionsDto
    {
        public bool CanView { get; set; }
        public bool CanCreate { get; set; }
        public bool CanEdit { get; set; }
        public bool CanDelete { get; set; }
    }
    public class NavigationResponseDto
    {
        public bool Success { get; set; }
        public List<NavigationItemDto>? Data { get; set; }
        public string? Message { get; set; }
    }
}
