namespace FlappyBird.Core
{
///
/// Contract for the central game-state service.
/// Matches the interface defined in AI_RULES.md.
///
public interface IGameStateManager
{
/// The currently active game state.
GameState CurrentState { get; }
///
/// Transitions to .
/// Fires after the transition completes.
///
void ChangeState(GameState newState);
///
/// Fired every time the game state changes.
/// Passes the new value.
///
event System.Action OnStateChanged;
}
}