@nodots-llc/backgammon-ai
Version:
AI and integration for nodots-backgammon using gnubg as a backend engine.
61 lines • 2.55 kB
TypeScript
import { BackgammonChecker } from './checker';
import { BackgammonBar, BackgammonOff, BackgammonPoints, BackgammonCheckerContainer, BackgammonPoint } from './checkercontainer';
import { BackgammonDieValue } from './dice';
import { BackgammonColor, BackgammonGame, BackgammonMoveDirection } from './game';
import { BackgammonCheckerContainerImport } from './import';
import { BackgammonMoveSkeleton } from './move';
import { BackgammonPlayer } from './player';
export interface BackgammonBoard {
id: string;
BackgammonPoints: BackgammonPoints;
bar: {
clockwise: BackgammonBar;
counterclockwise: BackgammonBar;
};
off: {
clockwise: BackgammonOff;
counterclockwise: BackgammonOff;
};
}
export type Quadrant = [
BackgammonPoint,
BackgammonPoint,
BackgammonPoint,
BackgammonPoint,
BackgammonPoint,
BackgammonPoint
];
export interface HomeBoard {
BackgammonPoints: Quadrant;
}
export interface BoardClass {
id: string;
BackgammonPoints: BackgammonPoints;
bar: {
clockwise: BackgammonBar;
counterclockwise: BackgammonBar;
};
off: {
clockwise: BackgammonOff;
counterclockwise: BackgammonOff;
};
initialize: (boardImport?: BackgammonCheckerContainerImport[]) => BackgammonBoard;
moveChecker: (board: BackgammonBoard, origin: BackgammonPoint | BackgammonBar, destination: BackgammonPoint | BackgammonOff, direction: BackgammonMoveDirection) => BackgammonBoard;
getCheckers: (board: BackgammonBoard) => BackgammonChecker[];
getCheckersForColor: (board: BackgammonBoard, color: BackgammonColor) => BackgammonChecker[];
getBackgammonPoints: (board: BackgammonBoard) => BackgammonPoint[];
getBars: (board: BackgammonBoard) => BackgammonBar[];
getOffs: (board: BackgammonBoard) => BackgammonOff[];
getCheckercontainers: (board: BackgammonBoard) => BackgammonCheckerContainer[];
getCheckercontainer: (board: BackgammonBoard, id: string) => BackgammonCheckerContainer;
getPossibleMoves: (board: BackgammonBoard, player: BackgammonPlayer, dieValue: BackgammonDieValue) => BackgammonMoveSkeleton[];
getPipCounts: (game: BackgammonGame) => {
black: number;
white: number;
};
buildBoard: (boardImport: BackgammonCheckerContainerImport[]) => BackgammonBoard;
generateRandomBoard: () => BackgammonBoard;
getAsciiBoard: (board: BackgammonBoard) => string;
displayAsciiBoard: (board: BackgammonBoard | undefined) => void;
}
//# sourceMappingURL=board.d.ts.map