Its impossible to detect damage though GUI (I'm not familiar with Jass) but once you get that the item thing should work (or dummy ability). You'd have to use an array for damage and set it for each unit.
Actually...If damage doesn't range, you could do is set say a unit's point value equal to their damage and use that to determine the damage they do. Then make the +armor an ability (you'd give this ability to your unit when its created and set the level accordingly).
Then to set the armor type / attack type, use the dummy ability or item or w/e u want.
So wait, ur doing all this to see how much damage a a hidden unit will take with dif armor types??? Hmm, I suppose you'd have to to deal damage to a hidden unit.
As you can see, it would be fairly complicated, I Just hope its worth it.
Edit: Btw, unless your units have constantly changing armor types, you can just do "if attacked unit type = (say footman), set 'armor_type' = 'Heavy' and set 'attack_type' = 'Normal'
if 'armor_type' of attacked unit = 'normal' and 'attack_type' of attacking unit = 'heavy'
then set HP of attacked unit = HP of attacked unit - 'point value of attacking unit' * '0.80'
So if the footman(normal, heavy, 10dmg) attacks say a knight(normal, heavy, 200hp),
it'll set the knights hp to 200-10*0.80) = 192.