handleKeyDown(event) {
    const key = getKeyName(event);

    if (this._isIgnoringRepeatedEvent(event, key, KeyEventType.keydown)) {
      return;
    }

    this.currentCombination.resolveModifierFlagDiscrepancies(event, key, KeyEventType.keydown);

    const reactAppResponse =
      this._howReactAppRespondedTo(event, key, KeyEventType.keydown);

    if (reactAppResponse === EventResponse.unseen && this.eventOptions.ignoreEventsCondition(event)) {
      this.logger.logEventRejectedByFilter(event, key, KeyEventType.keydown);

      return;
    }

    if (reactAppResponse !== EventResponse.ignored) {
      this._recordKeyDown(event, key);
    }

    this._callHandlerIfNeeded(reactAppResponse, event, key, KeyEventType.keydown);

    this.keyEventManager.simulatePendingKeyPressEvents();
    this._simulator.handleKeyPressSimulation({event, key});
  }
Records a keydown keyboard event and matches it against the list of pre-registered
event handlers, calling the first matching handler with the highest priority if
one exists.

This method is called once when a keyboard event bubbles up to document, and checks
the keymaps for all of the mounted global HotKey components.
@param {SyntheticKeyboardEvent} event - Event containing the key name and state