chess-easy
Version:
Chess engine that makes writing chessgame easier than writing a calculator
35 lines (34 loc) • 1.03 kB
TypeScript
import { GameStateObject, PossibleMoves, PromotionPossibility } from "../types/game";
export declare class Game {
private fen;
private gameState;
private movesNext;
castlingAvailability: string;
enPassantPossibility: string;
halfMoveClock: number;
fullMoveNumber: number;
possibleMoves: PossibleMoves;
isCheck: boolean;
isCheckmate: boolean;
private isStalemate;
private isInsufficientMaterial;
private START_GAME_FEN;
constructor(fen?: string);
private parseGameStateRowFen;
private parseGameStateFen;
private fenToGameState;
private getAllPossibleMoves;
getGameStateObject(): GameStateObject;
isPromotionMove(from: string, to: string): boolean;
isDraw(): {
isDraw: boolean;
reason: string;
} | {
isDraw: boolean;
reason?: undefined;
};
move(from: string, to: string, promotion?: PromotionPossibility): boolean;
generateFen(): string;
getNextColor(): "black" | "white";
}
export default Game;