/** * @typedef {object} TouchGestureEvent * @prop {"touchgesture"} type * @prop {"move" | "end"} phase * @prop {1 | 2} pointerCount * @prop {number} xDelta * @prop {number} yDelta * @prop {number} zDelta * @prop {() => void} [preventDefault] */ /** * Side-effect-free query event for wheel ownership. Handlers should only * claim wheel if they would consume native wheel at the current pointer * location. * * @typedef {object} WheelClaimProbeEvent * @prop {"wheelclaimprobe"} type */ /** * @typedef {Pick< * WheelEvent, * "type" | "deltaX" | "deltaY" | "deltaMode" | "preventDefault" | "ctrlKey" * >} WheelLikeEvent */ /** * @typedef {UIEvent | WheelLikeEvent | TouchGestureEvent | WheelClaimProbeEvent} InteractionUiEvent */ /** * @param {unknown} eventLike * @returns {eventLike is TouchGestureEvent} */ export function isTouchGestureEvent(eventLike: unknown): eventLike is TouchGestureEvent; /** * @param {unknown} eventLike * @returns {eventLike is WheelLikeEvent} */ export function isWheelEvent(eventLike: unknown): eventLike is WheelLikeEvent; /** * @param {WheelLikeEvent} wheelEvent * @param {number} deltaX * @param {number} deltaY * @returns {WheelLikeEvent} */ export function overrideWheelEventDeltas(wheelEvent: WheelLikeEvent, deltaX: number, deltaY: number): WheelLikeEvent; /** * Create a safe proxy for an event-like object that exposes only primitive * (string, number, boolean, bigint, symbol, undefined) properties and null. * * @param {T} target The event-like object to wrap. * @returns {T} A proxy exposing only primitive properties. * @template T */ export function createPrimitiveEventProxy(target: T): T; export type TouchGestureEvent = { type: "touchgesture"; phase: "move" | "end"; pointerCount: 1 | 2; xDelta: number; yDelta: number; zDelta: number; preventDefault?: () => void; }; /** * Side-effect-free query event for wheel ownership. Handlers should only * claim wheel if they would consume native wheel at the current pointer * location. */ export type WheelClaimProbeEvent = { type: "wheelclaimprobe"; }; export type WheelLikeEvent = Pick; export type InteractionUiEvent = UIEvent | WheelLikeEvent | TouchGestureEvent | WheelClaimProbeEvent; //# sourceMappingURL=interactionEvent.d.ts.map