I guess that is consistent, chop off the Js., but is that really a type or just a lang construct built into the compiler? Meaning you could replace Exn.Error(e) with Potato(e) as long as the compiler knows what to do.
It is actually a predefined exception called JsError. But it is not exposed itself and Exn.Error is also private, so it cannot be aliased to Potato I am afraid.