namespace Fitness_core_BE.DTOs.Rbac { public class NavItemDto { public string Key { get; set; } = string.Empty; public string Label { get; set; } = string.Empty; public string? ShortLabel { get; set; } public string Href { get; set; } = string.Empty; public string Icon { get; set; } = string.Empty; } public class NavResponseDto { public bool IsOwner { get; set; } public List Items { get; set; } = new(); } public class GymRoleDto { public Guid GymRoleId { get; set; } public string Name { get; set; } = string.Empty; public bool IsActive { get; set; } public List NavKeys { get; set; } = new(); } public class CreateGymRoleRequest { public string Name { get; set; } = string.Empty; } public class UpdateGymRoleRequest { public string? Name { get; set; } public bool? IsActive { get; set; } } public class SetRolePermissionsRequest { public List NavKeys { get; set; } = new(); } public class AssignStaffRoleRequest { // Nullable to support unassigning a staff member's role. public Guid? GymRoleId { get; set; } } }