/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @flow */ 'use strict'; import canUseDOM from '../canUseDom'; type Listener = (e: any) => void; type EventHandle = (target: EventTarget, callback: ?Listener) => () => void; export type EventOptions = { capture?: boolean, passive?: boolean, }; declare var emptyFunction: () => any; declare function supportsPassiveEvents(): boolean; const canUsePassiveEvents = supportsPassiveEvents(); declare function getOptions(options: ?EventOptions): EventOptions | boolean; /** * Shim generic API compatibility with ReactDOM's synthetic events, without needing the * large amount of code ReactDOM uses to do this. Ideally we wouldn't use a synthetic * event wrapper at all. */ declare function isPropagationStopped(): any; declare function isDefaultPrevented(): any; declare function normalizeEvent(event: any): any; /** * */ declare export default function createEventHandle(type: string, options: ?EventOptions): EventHandle;