namespace ZahlenAnalyse.Web.Models;

public record Workspace: IOwnedEntity, IAuditableEntity
{

    public string? Id { get; set; } 
    public string Name { get; set; } = string.Empty;
    public string OwnerId { get; set; } = string.Empty; // Deine Pocket-ID (Sub)
    
    public string CreatedBy { get; set; } = string.Empty; 
    public DateTime CreatedAt { get; set; }

    public List<DimensionDefinition> Dimensions { get; set; } = new();
}

public record DimensionDefinition
{
    public string Name { get; set; } = string.Empty; 
    public List<DimensionNode> Nodes { get; set; } = new(); 
}

public record DimensionNode
{
    public string Id { get; set; } = Guid.NewGuid().ToString(); 
    public string Name { get; set; } = string.Empty;
    public List<DimensionNode> Children { get; set; } = new();
}