declare module "windows.ui.input" { export class Point { constructor(); } export class Rect { constructor(); } export class ManipulationDelta { translation: Object; scale: Number; rotation: Number; expansion: Number; constructor(); } export class ManipulationVelocities { linear: Object; angular: Number; expansion: Number; constructor(); } export class CrossSlideThresholds { selectionStart: Number; speedBumpStart: Number; speedBumpEnd: Number; rearrangeStart: Number; constructor(); } export enum EdgeGestureKind { touch, keyboard, mouse, } export enum HoldingState { started, completed, canceled, } export enum DraggingState { started, continuing, completed, } export enum CrossSlidingState { started, dragging, selecting, selectSpeedBumping, speedBumping, rearranging, completed, } export enum GestureSettings { none, tap, doubleTap, hold, holdWithMouse, rightTap, drag, manipulationTranslateX, manipulationTranslateY, manipulationTranslateRailsX, manipulationTranslateRailsY, manipulationRotate, manipulationScale, manipulationTranslateInertia, manipulationRotateInertia, manipulationScaleInertia, crossSlide, manipulationMultipleFingerPanning, } export enum PointerUpdateKind { other, leftButtonPressed, leftButtonReleased, rightButtonPressed, rightButtonReleased, middleButtonPressed, middleButtonReleased, xButton1Pressed, xButton1Released, xButton2Pressed, xButton2Released, } export class EdgeGestureEventArgs { kind: EdgeGestureKind; constructor(); } export class EdgeGesture { constructor(); static getForCurrentView(): EdgeGesture; addListener(type: "Canceled", listener: (ev: Event) => void): void ; removeListener(type: "Canceled", listener: (ev: Event) => void): void ; on(type: "Canceled", listener: (ev: Event) => void): void ; off(type: "Canceled", listener: (ev: Event) => void): void ; addListener(type: "Completed", listener: (ev: Event) => void): void ; removeListener(type: "Completed", listener: (ev: Event) => void): void ; on(type: "Completed", listener: (ev: Event) => void): void ; off(type: "Completed", listener: (ev: Event) => void): void ; addListener(type: "Starting", listener: (ev: Event) => void): void ; removeListener(type: "Starting", listener: (ev: Event) => void): void ; on(type: "Starting", listener: (ev: Event) => void): void ; off(type: "Starting", listener: (ev: Event) => void): void ; addListener(type: string, listener: (ev: Event) => void): void ; removeListener(type: string, listener: (ev: Event) => void): void ; on(type: string, listener: (ev: Event) => void): void ; off(type: string, listener: (ev: Event) => void): void ; } export class MouseWheelParameters { pageTranslation: Object; deltaScale: Number; deltaRotationAngle: Number; charTranslation: Object; constructor(); } export class GestureRecognizer { inertiaRotationDeceleration: Number; inertiaRotationAngle: Number; inertiaExpansionDeceleration: Number; inertiaExpansion: Number; gestureSettings: GestureSettings; crossSlideThresholds: CrossSlideThresholds; crossSlideHorizontally: Boolean; crossSlideExact: Boolean; autoProcessInertia: Boolean; showGestureFeedback: Boolean; pivotRadius: Number; pivotCenter: Object; manipulationExact: Boolean; inertiaTranslationDisplacement: Number; inertiaTranslationDeceleration: Number; isActive: Boolean; isInertial: Boolean; mouseWheelParameters: MouseWheelParameters; constructor(); canBeDoubleTap(value: PointerPoint): Boolean; processDownEvent(value: PointerPoint): void; processMoveEvents(value: Object): void; processUpEvent(value: PointerPoint): void; processMouseWheelEvent(value: PointerPoint, isShiftKeyDown: Boolean, isControlKeyDown: Boolean): void; processInertia(): void; completeGesture(): void; addListener(type: "CrossSliding", listener: (ev: Event) => void): void ; removeListener(type: "CrossSliding", listener: (ev: Event) => void): void ; on(type: "CrossSliding", listener: (ev: Event) => void): void ; off(type: "CrossSliding", listener: (ev: Event) => void): void ; addListener(type: "Dragging", listener: (ev: Event) => void): void ; removeListener(type: "Dragging", listener: (ev: Event) => void): void ; on(type: "Dragging", listener: (ev: Event) => void): void ; off(type: "Dragging", listener: (ev: Event) => void): void ; addListener(type: "Holding", listener: (ev: Event) => void): void ; removeListener(type: "Holding", listener: (ev: Event) => void): void ; on(type: "Holding", listener: (ev: Event) => void): void ; off(type: "Holding", listener: (ev: Event) => void): void ; addListener(type: "ManipulationCompleted", listener: (ev: Event) => void): void ; removeListener(type: "ManipulationCompleted", listener: (ev: Event) => void): void ; on(type: "ManipulationCompleted", listener: (ev: Event) => void): void ; off(type: "ManipulationCompleted", listener: (ev: Event) => void): void ; addListener(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ; removeListener(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ; on(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ; off(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ; addListener(type: "ManipulationStarted", listener: (ev: Event) => void): void ; removeListener(type: "ManipulationStarted", listener: (ev: Event) => void): void ; on(type: "ManipulationStarted", listener: (ev: Event) => void): void ; off(type: "ManipulationStarted", listener: (ev: Event) => void): void ; addListener(type: "ManipulationUpdated", listener: (ev: Event) => void): void ; removeListener(type: "ManipulationUpdated", listener: (ev: Event) => void): void ; on(type: "ManipulationUpdated", listener: (ev: Event) => void): void ; off(type: "ManipulationUpdated", listener: (ev: Event) => void): void ; addListener(type: "RightTapped", listener: (ev: Event) => void): void ; removeListener(type: "RightTapped", listener: (ev: Event) => void): void ; on(type: "RightTapped", listener: (ev: Event) => void): void ; off(type: "RightTapped", listener: (ev: Event) => void): void ; addListener(type: "Tapped", listener: (ev: Event) => void): void ; removeListener(type: "Tapped", listener: (ev: Event) => void): void ; on(type: "Tapped", listener: (ev: Event) => void): void ; off(type: "Tapped", listener: (ev: Event) => void): void ; addListener(type: string, listener: (ev: Event) => void): void ; removeListener(type: string, listener: (ev: Event) => void): void ; on(type: string, listener: (ev: Event) => void): void ; off(type: string, listener: (ev: Event) => void): void ; } export class TappedEventArgs { pointerDeviceType: Number; position: Object; tapCount: Number; constructor(); } export class RightTappedEventArgs { pointerDeviceType: Number; position: Object; constructor(); } export class HoldingEventArgs { holdingState: HoldingState; pointerDeviceType: Number; position: Object; constructor(); } export class DraggingEventArgs { draggingState: DraggingState; pointerDeviceType: Number; position: Object; constructor(); } export class ManipulationStartedEventArgs { cumulative: ManipulationDelta; pointerDeviceType: Number; position: Object; constructor(); } export class ManipulationUpdatedEventArgs { cumulative: ManipulationDelta; delta: ManipulationDelta; pointerDeviceType: Number; position: Object; velocities: ManipulationVelocities; constructor(); } export class ManipulationInertiaStartingEventArgs { cumulative: ManipulationDelta; delta: ManipulationDelta; pointerDeviceType: Number; position: Object; velocities: ManipulationVelocities; constructor(); } export class ManipulationCompletedEventArgs { cumulative: ManipulationDelta; pointerDeviceType: Number; position: Object; velocities: ManipulationVelocities; constructor(); } export class CrossSlidingEventArgs { crossSlidingState: CrossSlidingState; pointerDeviceType: Number; position: Object; constructor(); } export class PointerPoint { frameId: Number; isInContact: Boolean; pointerDevice: Object; pointerId: Number; position: Object; properties: PointerPointProperties; rawPosition: Object; timestamp: Number; constructor(); static getCurrentPoint(pointerId: Number): PointerPoint; static getCurrentPoint(pointerId: Number, transform: IPointerPointTransform): PointerPoint; static getIntermediatePoints(pointerId: Number): Object; static getIntermediatePoints(pointerId: Number, transform: IPointerPointTransform): Object; } export class IPointerPointTransform { inverse: IPointerPointTransform; constructor(); tryTransform(inPoint: Object, outPoint: Object): Boolean; transformBounds(rect: Object): Object; } export class PointerPointProperties { contactRect: Object; contactRectRaw: Object; isBarrelButtonPressed: Boolean; isCanceled: Boolean; isEraser: Boolean; isHorizontalMouseWheel: Boolean; isInRange: Boolean; isInverted: Boolean; isLeftButtonPressed: Boolean; isMiddleButtonPressed: Boolean; isPrimary: Boolean; isRightButtonPressed: Boolean; isXButton1Pressed: Boolean; isXButton2Pressed: Boolean; mouseWheelDelta: Number; orientation: Number; pointerUpdateKind: PointerUpdateKind; pressure: Number; touchConfidence: Boolean; twist: Number; xTilt: Number; yTilt: Number; constructor(); hasUsage(usagePage: Number, usageId: Number): Boolean; getUsageValue(usagePage: Number, usageId: Number): Number; } export class PointerVisualizationSettings { isContactFeedbackEnabled: Boolean; isBarrelButtonFeedbackEnabled: Boolean; constructor(); static getForCurrentView(): PointerVisualizationSettings; } }