import { Player } from './player';
export declare const boardSize = 8;
export declare const boardWidth = 8;
export declare const boardHeight = 8;
export declare const boardArea: number;
export declare const whitePlayerToken = "X";
export declare const blackPlayerToken = "O";
export interface ICoordinates {
    column: number;
    row: number;
}
interface IPlacePieceResult {
    flippedPieces: ICoordinates[];
    score: number;
}
export declare class Board {
    static createInitialBoardString(): string;
    readonly boardArray: (Player | undefined)[];
    constructor(whitePlayer: Player, blackPlayer: Player, boardString?: string);
    getAsString(): string;
    areCoordinatesOnBoard(row: number, column: number): boolean;
    getSquareState(row: number, column: number): Player | undefined;
    setSquareState(row: number, column: number, player?: Player): void;
    placePiece(player: Player, row: number, column: number): IPlacePieceResult | undefined;
    getPrintedBoardAsString(): string;
    private squareScore;
    private generateFromString;
    private generateAsString;
}
export {};
