useDynLib(ply, .registration = TRUE)
importFrom(Rcpp, evalCpp)
importFrom(stats, setNames)

# High-level ply API
export(ply_fen_parse)
export(ply_fen_serialize)
export(ply_game_init)
export(ply_move_apply)
export(ply_legal_moves)
export(ply_in_check)
export(ply_is_checkmate)
export(ply_is_stalemate)
export(ply_is_insufficient_material)
export(ply_validate)
export(ply_hash)
export(ply_enrich_batch)
export(ply_game_new)
export(ply_game_join)
export(ply_game_move)
export(ply_game_resign)
export(ply_game_offer_draw)
export(ply_game_accept_draw)
export(ply_game_cancel)
export(ply_game_new_from_fen)
export(ply_game_count)
export(ply_game_reset_registry)
export(ply_game_info)
export(ply_game_fen)
export(ply_game_history)

# PGN utilities
export(ply_pgn_parse_tags)
export(ply_pgn_extract_movetext)
export(ply_pgn_load_games)
