   `board`.
   """
   @spec start_link(t) :: Agent.on_start
-  def start_link(board) do
+  def start_link(%LexibombServer.Board{} = board) do
     Agent.start_link(fn -> board end)
   end
 

  Stores the state of `board` in the given process.
  """
  @spec set(t, pid) :: :ok
  def set(board, pid) do
    Agent.update(pid, fn _ -> board end)
  end


    end)
  end

  def __reveal__(%LexibombServer.Board{} = board) do
    %{board | grid: Grid.__reveal__(board.grid)}
  end
end
