aura-glass
Version:
A comprehensive glassmorphism design system for React applications with 142+ production-ready components
85 lines • 2.6 kB
TypeScript
import React from "react";
export interface GesturePoint {
x: number;
y: number;
timestamp: number;
pressure?: number;
id: string;
}
export interface GestureStroke {
points: GesturePoint[];
startTime: number;
endTime: number;
velocity: number;
direction: number;
distance: number;
id: string;
}
export interface RecognizedGesture {
type: string;
confidence: number;
data: any;
timestamp: number;
stroke: GestureStroke;
id: string;
}
export interface GestureTemplate {
name: string;
type: string;
points: Array<{
x: number;
y: number;
}>;
threshold: number;
}
export interface GlassGestureZoneProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange"> {
/** Zone width */
width?: number;
/** Zone height */
height?: number;
/** Whether gesture recognition is active */
active?: boolean;
/** Gesture recognition sensitivity */
sensitivity?: number;
/** Maximum gesture duration */
maxGestureDuration?: number;
/** Minimum points for gesture */
minGesturePoints?: number;
/** Whether to show gesture trail */
showTrail?: boolean;
/** Trail color */
trailColor?: string;
/** Trail fade duration */
trailFadeDuration?: number;
/** Whether to show gesture feedback */
showFeedback?: boolean;
/** Feedback duration */
feedbackDuration?: number;
/** Custom gesture templates */
gestureTemplates?: GestureTemplate[];
/** Whether to enable multi-touch */
multiTouch?: boolean;
/** Maximum simultaneous touches */
maxTouches?: number;
/** Gesture recognition timeout */
recognitionTimeout?: number;
/** Whether to show debug info */
debug?: boolean;
/** Gesture start handler */
onGestureStart?: (point: GesturePoint) => void;
/** Gesture move handler */
onGestureMove?: (point: GesturePoint, stroke: GestureStroke) => void;
/** Gesture end handler */
onGestureEnd?: (stroke: GestureStroke) => void;
/** Gesture recognition handler */
onGestureRecognized?: (gesture: RecognizedGesture) => void;
/** Multi-touch handler */
onMultiTouch?: (points: GesturePoint[]) => void;
/** Show controls */
showControls?: boolean;
/** Respect user's motion preferences */
respectMotionPreference?: boolean;
}
export declare const GlassGestureZone: React.ForwardRefExoticComponent<GlassGestureZoneProps & React.RefAttributes<HTMLDivElement>>;
export default GlassGestureZone;
//# sourceMappingURL=GlassGestureZone.d.ts.map