_onModelValueChanged({ modelValue }, old) {
      let _old;
      if (old && old.modelValue) {
        _old = old.modelValue;
      }
      // @ts-expect-error [external]: lit private property
      if (this.constructor.elementProperties.get('modelValue').hasChanged(modelValue, _old)) {
        super._onModelValueChanged({ modelValue });
      }
    }
@override
hasChanged is designed for async (updated) callback, also check for sync
(requestUpdate) callback
@param {{ modelValue:unknown }} newV
@param {{ modelValue:unknown }} [old]
@protected