pub mod types;
pub mod board;
pub mod movegen;
pub mod fen;
pub mod pgn;
pub mod opening;
pub mod game;
pub mod uci;
pub mod classifications;
pub mod analyzer;
pub use types::{
ChessError, ChessResult, Color, DrawReason, GameStatus, Move, MoveFlag, Piece, PieceType,
Square, CastlingRights, file_of, rank_of, make_square, square_name, parse_square,
};
pub use board::Board;
pub use game::Game;
pub use movegen::{generate_legal_moves, is_in_check, is_square_attacked, apply_move};
pub use fen::{board_to_fen, parse_fen};
pub use pgn::{move_to_san, moves_to_pgn, parse_pgn};
pub use opening::OpeningBook;
pub use classifications::{
ClassificationKind, MoveClassification, Evaluation,
get_move_accuracy, get_expected_points_loss,
};
pub use analyzer::{AnalyzerConfig, GameReport, MoveAnalyzer, PlayerSummary, PgnAnalysisBuilder, Side};