Code/Entities/Analysis/TablebaseMove.cs

A plain data model representing a single tablebase move from Lichess analysis. It stores move identifiers (UCI and SAN), various distance-to-zero/mate/win metrics and boolean flags for special outcomes and a category string.

#nullable enable annotations

namespace LichessNET.Entities.Analysis;

public class TablebaseMove
{
    public string Uci { get; set; }
    public string San { get; set; }
    public int Dtz { get; set; }
    public int PreciseDtz { get; set; }
    public int Dtm { get; set; }
    public int? Dtw { get; set; }
    public bool Zeroing { get; set; }
    public bool Checkmate { get; set; }
    public bool Stalemate { get; set; }
    public bool VariantWin { get; set; }
    public bool VariantLoss { get; set; }
    public bool InsufficientMaterial { get; set; }
    public string Category { get; set; }
}