yeah use bribe's one, its also the one i started with, but i dont think this will solve your problem, because you can detect which unit deals damage and which unit takes damage, so this will refer to any kind of damage. I dont know how much you are experienced in triggers, but i would recommend you to fully do the spell in the trigger editor. As you said it has to be a chain lightning (jumps to the target and searches the nearest enemy in X AoE and jumps to this one... and so on) you can pick the target and then check in a periodic timer trigger (= every x seconds) if there is a unit nearby, if so, pick the nearest one and damage this one. Also, heal your unit of course. The trigger gets disabled if there is no valid target in the AoE or a counter (integer counter = 5 for example) reaches 0 (just reduce the counter by 1 for each target). However, if you need it to be cast by multiple units at the same time, you can use the Bribe's Unit indexer, which is included in the test map.
What is the unit indexer?
it gives every unit a specific so called Custom Value that you can catch in the trigger editor. now, with the help of arrays, you can save a specific variable (integer or unit or ...) for a specific unit. If you didnt understand what i mean, tell me! then i will do the trigger for you, but give it a try. and sorry for my bad explanations :/