code: function deconstructComponentInternal(component) {
      if (component) {
        var componentIndex = createdComponents_.indexOf(component);
        createdComponents_.splice(componentIndex, 1);
  
        var upgrades = component.element_.getAttribute('data-upgraded').split(',');
        var componentPlace = upgrades.indexOf(component[componentConfigProperty_].classAsString);
        upgrades.splice(componentPlace, 1);
        component.element_.setAttribute('data-upgraded', upgrades.join(','));
  
        var ev;
        if ('CustomEvent' in window && typeof window.CustomEvent === 'function') {
          ev = new CustomEvent('mdl-componentdowngraded', {
            bubbles: true, cancelable: false
          });
        } else {
          ev = document.createEvent('Events');
          ev.initEvent('mdl-componentdowngraded', true, true);
        }
        component.element_.dispatchEvent(ev);
      }
    }
docs: Check the component for the downgrade method.
  Execute if found.
  Remove component from createdComponents list.
  
  @param {?componentHandler.Component} component