//
// AICommonTypes.hpp
// Common type definitions used across AI utility functions
//

#ifndef EAGLE0_AICOMMONTYPES_HPP
#define EAGLE0_AICOMMONTYPES_HPP

#include <functional>

#include "src/main/cpp/net/eagle0/shardok/library/BattalionType.hpp"
#include "src/main/cpp/net/eagle0/shardok/library/ShardokCTypes.h"

namespace shardok {

// Function type for looking up battalion types by ID
// Used across AI utilities to get battalion type information without
// needing to pass the entire scorer object
using BattalionTypeGetter = std::function<BattalionTypeSPtr(BattalionTypeId)>;

}  // namespace shardok

#endif  // EAGLE0_AICOMMONTYPES_HPP
