enableHotKeys(componentId, actionNameToKeyMap = {}, actionNameToHandlersMap = {}, options) {
    if (this.resetOnNextFocus) {
      /**
       * We know components have just lost focus or keymaps have already been built,
       * meaning we are either anticipating a new set of components to be focused or
       * we are receiving notice of a component being focused when we aren't expecting it.
       * In either case, the internal state needs to be reset.
       */
      this._reset();
      this.resetOnNextFocus = false;
    }

    if (this.componentList.containsId(componentId)) {
      /**
       * The <tt>componentId</tt> has already been registered - this occurs when the
       * same component has somehow managed to be focused twice, without being blurred
       * in between.
       *
       * @see https://github.com/greena13/react-hotkeys/issues/173
       */
      return;
    }

    this._addComponent(
      componentId, actionNameToKeyMap, actionNameToHandlersMap, 'Focused', options
    );

    return this.focusTree.id;
  }
Registers the actions and handlers of a HotKeys component that has gained focus
@param {ComponentId} componentId - Id of the component that the keyMap belongs to
@param {KeyMap} actionNameToKeyMap - Map of actions to key expressions
@param {HandlersMap} actionNameToHandlersMap - Map of actions to handler functions
@param {Object} options Hash of options that configure how the actions
       and handlers are associated and called.
@returns {FocusTreeId|undefined} The current focus tree's ID or undefined if the
       the <tt>componentId</tt> has already been registered (shouldn't normally
       occur).