module Impl: (T: { ... }) => { ... };type t = Dom.mouseEvent;
include { ... };
let bubbles: t => bool;let cancelable: t => bool;let composed: t => bool;let currentTarget: t => Dom.eventTarget;let defaultPrevented: t => bool;
let eventPhase: t => Webapi__Dom__Types.EventPhase.t;
let target: t => Dom.eventTarget;let timeStamp: t => float;let type_: t => string;let isTrusted: t => bool;let preventDefault: t => unit;let stopImmediatePropagation: t => unit;let stopPropagation: t => unit;
include { ... };
let detail: t => int;let view: t => Dom.window;
include { ... };
let altKey: t => bool;let button: t => int;let buttons: t => int;let clientX: t => int;let clientY: t => int;let ctrlKey: t => bool;let metaKey: t => bool;let movementX: t => int;let movementY: t => int;let offsetX: t => int;let offsetY: t => int;let pageX: t => int;let pageY: t => int;let region: t => option(string);let relatedTarget: t => option(Dom.eventTarget);let screenX: t => int;let screenY: t => int;let shiftKey: t => bool;let x: t => int;let y: t => int;
let getModifierState: Webapi__Dom__Types.modifierKey => t => bool;
let make: string => t;let makeWithOptions: string => Js.t({.. }) => t;