Нет, ограничение new()
требует, чтобы экземпляр типа мог быть создан с синтаксисом
new T()
Это явно не относится ни к абстрактному классу, ни к интерфейсу, только к конкретному классу с открытым конструктором без параметров.
Вы можете отложить проблему до времени выполнения, удалив ограничение и используя:
Activator.CreateInstance<T>()
вместо того, чтобы создать объект. Тогда, пока фактический тип, используемый во время выполнения, удовлетворяет этим ограничениям, ваш код будет работать так, как вы хотите. Однако, если вы попытаетесь использовать интерфейс или абстрактный класс, вы столкнетесь с ошибкой во время выполнения.
В вашем конкретном случае эта строка выдаст исключение
var val = Activator.CreateInstance<SomeGenericType<ISomeInterface>>();
Вы прошли ошибку времени компиляции, но безрезультатно.