import { Context, ContextManager, Event, Observable } from '../index'; /** * Defines the modes for interpreting touch gestures. */ export declare enum GestureMode { ScaleOnly = "Scale Only", RotateOnly = "Rotate Only", ScaleRotate = "Scale Rotate" } /** * Configuration options for GestureContext construction. */ interface ConstructionProps { /** * The HTML element to which touch event listeners are attached. * Defaults to canvas. */ element?: HTMLElement; } /** * Manages touch gestures for scaling and rotating elements. * @deprecated Use the GestureTransform component instead. This context will be removed in the next major version. * @zcontext **/ export declare class GestureContext extends Context { private element; private canScale; private gestureMode; private canRotate; private initialDistance; private initialAngle; private oneFingerRotateMode; private initialTouchX; /** * Observable representing the current rotation value. */ rotation: Observable; /** * Observable representing the current scale value. */ scale: Observable; /** * Event triggered when rotation occurs. */ onRotate: Event<[number]>; /** * Event triggered when scaling occurs. */ onScale: Event<[number]>; /** * Observable indicating whether gesture interactions are enabled. * Defaults to true. */ enabled: Observable; /** * Minimum scale factor. Defaults to 0.5. */ minScale: number; /** * Maximum scale factor. Defaults to 2. */ maxScale: number; /** * Sensitivity of rotation. Defaults to 1. */ rotationSensitivity: number; /** * Creates an instance of GestureContext. * @param contextManager - The current ContextManager * @param constructorProps - The constructor properties. */ constructor(contextManager: ContextManager, constructorProps: ConstructionProps); private onTouchStart; private onTouchMove; private handleOneFingerRotate; private handleTwoFingerGestures; private handleScale; private handleRotate; private onTouchEnd; private getDistanceBetweenTouches; private getAngleBetweenTouches; private attachEventListeners; private detachEventListeners; dispose(): never; } export {};