UNPKG

@sirhc77/canvas-math-kit

Version:

A lightweight, interactive canvas-based vector visualizer for math, linear algebra, and ML education. Built with React + TypeScript.

20 lines (19 loc) 663 B
import React from 'react'; export interface DragTarget { x: number; y: number; draggable?: boolean; } export interface PointerDragOptions { origin: { x: number; y: number; }; scale: number; snap?: number | ((x: number, y: number) => [number, number]); isLocked?: boolean; hitRadius?: number; onDragStart?: () => void; onDragEnd?: () => void; } export declare function usePointerDrag<T extends DragTarget>(canvasRef: React.RefObject<HTMLCanvasElement | null>, items: T[], onChange: (updated: T[]) => void, { origin, scale, snap, isLocked, hitRadius, onDragStart, onDragEnd, }: PointerDragOptions): void;