import { Piece } from './Piece'; import Tile from '../Tile'; import Player from '../Player'; import Board from '../Board'; export declare class Pawn extends Piece { enPassantEligable: boolean; /** * @param {Tile} tile this this.tile of the piece. * @param {boolean} captured the captured status of the peice. * @param {boolean} isWhite is the piece white or black. * @param {boolean} hasMoves has the piece moved or not. */ constructor(tile: Tile, captured?: boolean, isWhite?: boolean, hasMoved?: boolean, enPassant?: boolean); /** * Static method in turn of copy constructor. * @param {Pawn} pawn the peice to make a copy of. */ static fromPawn: (pawn: Pawn) => Pawn; /** * Generate an array of moves for a king. * @param {Player} currentPlayer The player who's legal moves this function will return. * @param {Player} enemyPlayer this player is required to calculate legal moves for the currentPlayer * @param {Board} board the board that the two players exist in. * @return {Array} returns an array of legal moves. */ generateMoves(currentPlayer: Player, enemyPlayer: Player, board: Board): Array; }