Любой класс вида FilterInterfaceName, который пробрасывает вызовы функций и позволяет получить текущее значение объекта, которому пробрасываются вызовы, должен быть генериком.