import { Koma } from './koma'; import { Player } from './player'; import { Move, FinishState, BoardHistory } from './history'; import { ThinkingInfo } from './thinkinginfo'; import { YakuInfo } from './yaku'; import { DealOptions } from "./dealoptions"; /** Goita Board Class */ export declare class Board { players: Array; history: BoardHistory; kingFallbacks: boolean; showDebuggingInfo: boolean; private redoStack; private suspendedGoshi; private _yakuInfo; private constructor(); readonly isEndOfDeal: boolean; getFinishState(): FinishState; /** get initial-shi infomation */ readonly yakuInfo: Array; readonly isGoshiSuspended: boolean; readonly goshiPlayerNo: Array; readonly turnPlayer: Player; private init(dealer, tegomas); play(block: Koma, attack: Koma, playablecheck?: boolean): void; pass(playablecheck?: boolean): void; playMove(move: Move): void; continueGoshi(): void; /** finalize this board as redeal */ redeal(): void; /** finalize this board */ abort(): void; private createCurrentPlayersMove(block, attack); canPlay(block: Koma, attack: Koma): boolean; canPass(): boolean; canPlayMove(move: Move): boolean; canUndo(): boolean; /** undo the latest move */ undo(): void; canRedo(): boolean; redo(): void; static createRandomly(dealer: number, options?: DealOptions): Board; /** create from history string */ static createFromString(historyStr: string): Board; /** table to history string */ toHistoryString(): string; toThinkingInfo(): ThinkingInfo; }