kinetic-slider
Version:
A WebGL-powered kinetic slider component using PIXI.js
25 lines (24 loc) • 899 B
TypeScript
import { type RefObject } from "react";
import { Sprite } from "pixi.js";
import ResourceManager from '../managers/ResourceManager';
interface UseMouseDragProps {
sliderRef: RefObject<HTMLDivElement | null>;
slidesRef: RefObject<Sprite[]>;
currentIndex: RefObject<number>;
swipeScaleIntensity: number;
swipeDistance: number;
onSwipeLeft: () => void;
onSwipeRight: () => void;
resourceManager?: ResourceManager | null;
}
/**
* Hook to handle mouse drag interactions for slides
* Fully optimized with:
* - Batch animation processing
* - Comprehensive error handling
* - Memory leak prevention
* - Performance optimizations
* - Throttled event handling
*/
declare const useMouseDrag: ({ sliderRef, slidesRef, currentIndex, swipeScaleIntensity, swipeDistance, onSwipeLeft, onSwipeRight, resourceManager }: UseMouseDragProps) => void;
export default useMouseDrag;