/** * Advanced bitboard operations and position utilities * * This module provides fast bitboard manipulation for move generation * and attack detection. */ import { Bitboard, SquareIndex } from '../types'; /** * File masks (A-H files) */ export declare const FILE_MASKS: readonly Bitboard[]; /** * Rank masks (1-8 ranks) */ export declare const RANK_MASKS: readonly Bitboard[]; /** * Diagonal masks (A1-H8 diagonals) */ export declare const DIAGONAL_MASKS: readonly Bitboard[]; /** * Anti-diagonal masks (H1-A8 diagonals) */ export declare const ANTI_DIAGONAL_MASKS: readonly Bitboard[]; /** * Edge masks */ export declare const EDGE_MASK = 18411139144890810879n; export declare const NOT_A_FILE = 18374403900871474942n; export declare const NOT_H_FILE = 9187201950435737471n; export declare const NOT_AB_FILE = 18229723555195321596n; export declare const NOT_GH_FILE = 4557430888798830399n; export declare const NOT_RANK_1 = 18446744073709551360n; export declare const NOT_RANK_8 = 72057594037927935n; /** * Shift bitboard north (towards rank 8) */ export declare function shiftNorth(bb: Bitboard): Bitboard; /** * Shift bitboard south (towards rank 1) */ export declare function shiftSouth(bb: Bitboard): Bitboard; /** * Shift bitboard east (towards H-file) */ export declare function shiftEast(bb: Bitboard): Bitboard; /** * Shift bitboard west (towards A-file) */ export declare function shiftWest(bb: Bitboard): Bitboard; /** * Shift bitboard north-east */ export declare function shiftNorthEast(bb: Bitboard): Bitboard; /** * Shift bitboard north-west */ export declare function shiftNorthWest(bb: Bitboard): Bitboard; /** * Shift bitboard south-east */ export declare function shiftSouthEast(bb: Bitboard): Bitboard; /** * Shift bitboard south-west */ export declare function shiftSouthWest(bb: Bitboard): Bitboard; /** * Get file mask for a square */ export declare function getFileMask(index: SquareIndex): Bitboard; /** * Get rank mask for a square */ export declare function getRankMask(index: SquareIndex): Bitboard; /** * Get diagonal mask for a square (A1-H8 direction) */ export declare function getDiagonalMask(index: SquareIndex): Bitboard; /** * Get anti-diagonal mask for a square (H1-A8 direction) */ export declare function getAntiDiagonalMask(index: SquareIndex): Bitboard; export declare function getRookAttacks(square: SquareIndex, occupied: Bitboard): Bitboard; export declare function getBishopAttacks(square: SquareIndex, occupied: Bitboard): Bitboard; export declare function getQueenAttacks(square: SquareIndex, occupied: Bitboard): Bitboard; /** * Pre-computed king attack bitboards for each square */ export declare const KING_ATTACKS: Bitboard[]; /** * Pre-computed knight attack bitboards for each square */ export declare const KNIGHT_ATTACKS: Bitboard[]; /** * Initialize pre-computed attack tables */ export declare function initializeAttackTables(): void; /** * Get king attacks for a square */ export declare function getKingAttacks(square: SquareIndex): Bitboard; /** * Get knight attacks for a square */ export declare function getKnightAttacks(square: SquareIndex): Bitboard; /** * Get white pawn attacks for a square */ export declare function getWhitePawnAttacks(square: SquareIndex): Bitboard; /** * Get black pawn attacks for a square */ export declare function getBlackPawnAttacks(square: SquareIndex): Bitboard; /** * Get all white pawn attacks from a bitboard of white pawns */ export declare function getWhitePawnsAttacks(pawns: Bitboard): Bitboard; /** * Get all black pawn attacks from a bitboard of black pawns */ export declare function getBlackPawnsAttacks(pawns: Bitboard): Bitboard; //# sourceMappingURL=Position.d.ts.map