I have the following interface:
public interface IRegisterable { T Register(string username, string passw) where T : User, ICanLogin, new(); } >
UML DOES support parametric types (other things can be parametrized as well, and things other than types can be used as parameters as well).