I think maybe we should revert https://github.com/facebook/react/pull/5947.

People already think `proxyEvent` is some kind of an API: https://github.com/facebook/react/issues/12169.

It's also annoying to view in the debugger because none of the properties show up.

Instead, we could seal the event object or something like that.
const action = isFunction ? 'setting the method' : 'setting the property';
    warn(action, 'This is effectively a no-op');
    return val;
  }
  function get() {
    const action = isFunction
      ? 'accessing the method'
      : 'accessing the property';
    const result = isFunction
      ? 'This is a no-op function'
      : 'This is set to null';
    warn(action, result);
    return getVal;
  }
  function warn(action, result) {
    const warningCondition = false;
    warningWithoutStack(
      warningCondition,
      "This synthetic event is reused for performance reasons. If you're seeing this, " +
        "you're %s `%s` on a released/nullified synthetic event. %s. " +
        'If you must keep the original synthetic event around, use event.persist(). ' +
        'See https://fb.me/react-event-pooling for more information.',
      action,
      propName,
      result,
    );
  }
}
function getPooledEvent(dispatchConfig, targetInst, nativeEvent, nativeInst) {