@evoke-ui/zsort3d
Version:
TypeScript z-plane rendering engine with 3D depth simulation using Canvas 2D and mouse-based navigation
48 lines • 1.48 kB
TypeScript
import { ITouchConfig } from '../interfaces/ITouchConfig';
export interface TouchEventData {
type: 'pan' | 'pinch' | 'tap' | 'rotate';
deltaX?: number;
deltaY?: number;
scale?: number;
rotation?: number;
center?: {
x: number;
y: number;
};
velocity?: number;
direction?: number;
originalEvent?: any;
}
export type TouchEventHandler = (data: TouchEventData) => void;
export declare class TouchManager {
private hammer;
private element;
private config;
private eventHandlers;
private isDestroyed;
private lastPanEvent;
private devicePixelRatio;
private hammerLoaded;
constructor(element: HTMLElement, config?: Partial<ITouchConfig>);
private deepMergeConfig;
private init;
private setupCSSTouchAction;
private createHammerInstance;
private setupGestures;
private setupEventListeners;
private setupOrientationHandler;
private handlePanEvent;
private handlePinchEvent;
private handleTapEvent;
private handleRotateEvent;
private handleOrientationChange;
on(eventType: string, handler: TouchEventHandler): void;
off(eventType: string, handler: TouchEventHandler): void;
private emit;
updateConfig(newConfig: Partial<ITouchConfig>): Promise<void>;
getConfig(): Required<ITouchConfig>;
setEnabled(enabled: boolean): Promise<void>;
isEnabled(): boolean;
destroy(): void;
}
//# sourceMappingURL=TouchManager.d.ts.map