Extended type check in registration classes to handle open generics