import { fabric } from "fabric"; import type { UseBlurReturn } from "../types"; interface UseBlurOptions { /** Blur intensity in pixels (default: 20) */ blurIntensity?: number; /** Throttle delay for blur updates in ms (default: 50) */ throttleMs?: number; /** Callback when blur is added */ onBlurAdd?: (rect: fabric.Rect) => void; /** Callback when blur is removed */ onBlurRemove?: (id: string) => void; } /** * Hook for managing blur regions on the canvas * * @example * ```tsx * const blur = useBlur(canvasRef, imageRef, { * blurIntensity: 20, * onBlurAdd: (rect) => saveState(), * }); * * // Add blur region * blur.addBlur(); * * // Remove specific blur * blur.removeBlur('blur-123'); * * // Clear all blur regions * blur.clearAllBlur(); * ``` */ export declare function useBlur(canvasRef: React.MutableRefObject, imageRef: React.MutableRefObject, options?: UseBlurOptions): UseBlurReturn; export default useBlur;