import { Attributes } from "graphology-types"; import Sigma from "../../sigma.js"; import { CameraState, Coordinates, Dimensions, TouchCoords } from "../../types.js"; import Captor from "./captor.js"; export type FakeSigmaMouseEvent = MouseEvent & { isFakeSigmaMouseEvent?: true; }; export type TouchCaptorEvents = { touchdown(coordinates: TouchCoords): void; touchup(coordinates: TouchCoords): void; touchmove(coordinates: TouchCoords): void; }; export default class TouchCaptor extends Captor { enabled: boolean; isMoving: boolean; hasMoved: boolean; startCameraState?: CameraState; touchMode: number; movingTimeout?: number; startTouchesAngle?: number; startTouchesDistance?: number; startTouchesPositions: Coordinates[]; lastTouchesPositions?: Coordinates[]; lastTouches?: Touch[]; constructor(container: HTMLElement, renderer: Sigma); kill(): void; getDimensions(): Dimensions; dispatchRelatedMouseEvent(type: string, e: TouchEvent, touch?: Touch, emitter?: EventTarget): void; handleStart(e: TouchEvent): void; handleLeave(e: TouchEvent): void; handleMove(e: TouchEvent): void; }