package dev.llan.model.state;
import dev.llan.model.board.Point;
import dev.llan.events.GameEvent;
import java.util.List;
public interface GameState {
List<GameEvent> tryMoveTo(Point position);
List<GameEvent> moveActivePath();
List<GameEvent> endTurn();
List<GameEvent> waitTurn();
List<GameEvent> selectCard(int cardIndex);
List<GameEvent> useCardOn(Point position);
List<GameEvent> swapCards(int first, int second);
List<GameEvent> removeCard(int index);
List<GameEvent> equip(int index);
List<GameEvent> swapEquipment(int first, int second);
List<GameEvent> removeEquipment(int index);
List<GameEvent> onSwapTo();
List<GameEvent> setHighlighted(Point point, boolean highlighted);
State getState();
}