﻿namespace BeeEngine.Exports
{
    public interface IReadOnlyPosition
    {
        // TODO - remove this
        ChessboardCell WhiteKing { get; }
        // TODO - remove this
        ChessboardCell BlackKing { get; }

        bool IsWhiteToMove { get; }

        bool IsInCheck { get; }
        bool IsCheckmate { get; }
        bool IsStalemate { get; }

        int? CaptureEnPassantColumn { get; }
        ushort FullmoveNumber { get; }
        ushort HalfmoveClock { get; }

        bool IsCanCastleShort(Players player);
        bool IsCanCastleLong(Players player);
    }
}
