import { Koma } from './koma'; export declare class Move { describe: string; no: number; attack: Koma; block: Koma; pass: boolean; faceDown: boolean; finish: boolean; doubleUp: boolean; private constructor(); /** block and attack move */ static ofMatch(no: number, blockKoma: Koma, attackKoma: Koma): Move; /** face down and attack move */ static ofFaceDown(no: number, blockKoma: Koma, attackKoma: Koma): Move; /** pass move */ static ofPass(no: number): Move; static ofFinish(no: number, block: Koma, final: Koma): Move; static ofDoubleUpFinish(no: number, block: Koma, final: Koma): Move; static fromStr(move: string, attaker?: number): Move; toString(): string; toOpenString(): string; toTextString(): string; toOpenTextString(): string; toScore(): number; clone(): Move; } /** finish state of board */ export declare class FinishState { nextDealerNo: number; redeal: boolean; aborted: boolean; wonScore: number; private constructor(); static ofFinish(no: number, score: number): FinishState; static ofRedeal(no: number): FinishState; static ofAborted(no: number): FinishState; } export declare class BoardHistory { moveStack: Array; attackerLog: Array; turn: number; kingUsed: number; finishState: FinishState; hands: Array; dealer: number; constructor(dealer: number, hands: Array); private init(dealer, hands); readonly lastMove: Move; readonly lastAttacker: number; readonly lastAttackMove: Move; push(move: Move): void; pop(): Move; static fromString(history: string): BoardHistory; static parseMoveHistory(moveHistory: Array): Array; toString(): string; /** describe history to observers */ toAllHiddenString(): string; /** describe history in the view of given player no */ toHiddenString(no: number): string; }