removeEventListener(obj, type, func = null) {
    const indexes = [];
    if (!obj) {
      return;
    }

    this.eventHandlers.forEach((handler, index) => {
      if (
        (handler.id === this.id)
        && obj.removeEventListener
        && (handler.type === type)
        && (!func || handler.func === func)
      ) {
        obj.removeEventListener(type, handler.func);
        indexes.push(index);
      }
    });
    if (indexes.length) {
      _.pullAt(this.eventHandlers, indexes);
    }

    return this;
  }
Remove an event listener from the object.
@param {HTMLElement} obj - The DOM element to remove the event from.
@param {string} type - The event name to remove.
@param {Function} func - The callback function to remove.
@returns {this | void} - The instance of the element.