Code reconfiguration

  void AS3935_ISR();

The line numbers don't match when I put the code in my IDE, but I assume that is the line 21 that you speak of. That is a function prototype. Arduino IDE, usually, automatically generates function prototypes, but there are cases where the automatic prototype is not right so the prototype must be "manually" provided. This may be the case. Comment the line out and if the code compiles, the prototype may not be needed.

As to line 81, that is the function definition for the Interrupt Service Routine (ISR). ISRs must be functions (code outside of the loop(), setup() or any other function). So, no, you can't remove that and place it in loop(). The ISR modifies a variable that is used in loop() so the ISR must remain or the loop() code will be broken.