resolve = (action, e, k) => {
    if (typeof action == 'function') {
      const keyDefFn = /** @type {!hterm.Keyboard.KeyDefFunction} */ (action);
      return keyDefFn.call(this, e, k);
    }
    return action;
  }
This function is used by the "macro" functions below.  It makes it
possible to use the call() macro as an argument to any other macro.

@param {!hterm.Keyboard.KeyDefAction} action
@param {!KeyboardEvent} e
@param {!hterm.Keyboard.KeyDef} k
@return {!hterm.Keyboard.KeyAction}