As far as I know no network is limited to a fixed set of ban types.
Of course, there are some types used more often than others

Is this not sufficient?
on *:ban:#:{
if ($banmask iswm $ial($me)) { mode $chan -b $banmask }
}
Edit: I did not notice the missing closing bracket at first. This missing bracket is likely to be the reason for your "on: unknown command" error.