using System.Collections.Generic;

namespace Model.TechTree;

public class TechTreeNodeModel
{
    public string Id { get; set; } = "";
    public string Name { get; set; } = "";
    public string EntityType { get; set; } = "";
    public string Faction { get; set; } = "";
    public string Descriptive { get; set; } = "";
    public int Layer { get; set; }
    public float X { get; set; }
    public float Y { get; set; }
}

public class TechTreeEdgeModel
{
    public string SourceId { get; set; } = "";
    public string TargetId { get; set; } = "";
    public string EdgeType { get; set; } = "";
}

public class TechTreeGraphModel
{
    public List<TechTreeNodeModel> Nodes { get; set; } = new();
    public List<TechTreeEdgeModel> Edges { get; set; } = new();
    public Dictionary<string, List<string>> Unlocks { get; set; } = new();
}