namespace SolutionErp.Application.Permissions.Dtos;

public record MenuNodeDto(
    string Key,
    string Label,
    string? ParentKey,
    int Order,
    string? Icon,
    bool CanRead,
    bool CanCreate,
    bool CanUpdate,
    bool CanDelete,
    List<MenuNodeDto> Children);

public record PermissionDto(
    Guid Id,
    Guid RoleId,
    string MenuKey,
    bool CanRead,
    bool CanCreate,
    bool CanUpdate,
    bool CanDelete);

public record RoleDto(
    Guid Id,
    string Name,
    string? ShortName,
    string? Description,
    DateTime CreatedAt);

public record MenuItemDto(
    string Key,
    string Label,
    string? ParentKey,
    int Order,
    string? Icon);
