Плюс подумай насчёт экспорта валидатора в виде просто функции, а не базового класса. Чтобы по спеке создавался валидатор-функция, которой на вход потом можно скормить массив аргументов.
LitElement задаёт статически. На самом деле с точки зрения производительности/памяти не важно абсолютно, это скорее сделано чтобы не загрязнать экземпляры класса лишними свойствами. Наверное.