// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// https://w3c.github.io/pointerevents/#pointerevent-interface
[
Exposed=Window
] interface PointerEvent : MouseEvent {
constructor(DOMString type, optional PointerEventInit eventInitDict = {});
[MeasureAs=PointerEventAttributeCount, ImplementedAs=pointerIdForBindings] readonly attribute long pointerId;
[MeasureAs=PointerEventAttributeCount] readonly attribute double width;
[MeasureAs=PointerEventAttributeCount] readonly attribute double height;
[MeasureAs=PointerEventAttributeCount] readonly attribute float pressure;
[MeasureAs=PointerEventAttributeCount] readonly attribute long tiltX;
[MeasureAs=PointerEventAttributeCount] readonly attribute long tiltY;
[MeasureAs=PointerEventAttributeCount] readonly attribute double azimuthAngle;
[MeasureAs=PointerEventAttributeCount] readonly attribute double altitudeAngle;
[MeasureAs=PointerEventAttributeCount] readonly attribute float tangentialPressure;
[MeasureAs=PointerEventAttributeCount] readonly attribute long twist;
[MeasureAs=PointerEventAttributeCount] readonly attribute DOMString pointerType;
[MeasureAs=PointerEventAttributeCount] readonly attribute boolean isPrimary;
[Measure, RuntimeEnabled=PointerEventDeviceId] readonly attribute long persistentDeviceId;
// https://w3c.github.io/pointerevents/extension.html#extensions-to-the-pointerevent-interface
[Measure, SecureContext] sequence<PointerEvent> getCoalescedEvents();
[Measure] sequence<PointerEvent> getPredictedEvents();
};