/** * Extremely small move ordering module. * * Goals: * - Be deterministic and fast. * - Provide “good enough” ordering for alpha-beta. * - Avoid expensive heuristics (SEE / legal-move regeneration / etc.). */ import { InternalMove } from '../types'; export declare class KillerMoves { private killers; private readonly maxPly; constructor(maxPly?: number); clear(): void; store(move: InternalMove, ply: number): void; isKiller(move: InternalMove, ply: number): boolean; } /** * Incremental move ordering via selection sort. * Scores all moves upfront, then picks the best remaining move on demand. * On beta cutoffs, the remaining unsorted moves are never touched. */ export declare class MoveSelector { private readonly moves; private readonly scores; private readonly n; private cursor; constructor(moves: InternalMove[], ttMove: InternalMove | null, killers: KillerMoves | null, ply: number); /** Return the next best move, or null when exhausted. */ pickNext(): InternalMove | null; } //# sourceMappingURL=MoveOrdering.d.ts.map