import type { EditAction } from "../../types.js"; export interface RedactRect { x: number; y: number; w: number; h: number; } interface Drawing { startX: number; startY: number; currentX: number; currentY: number; } export interface ApplyRedactResult { blob: Blob; actions: EditAction[]; } export interface RedactToolState { rects: RedactRect[]; drawing: Drawing | null; displaySize: { width: number; height: number; }; handleImageLoad: (e: React.SyntheticEvent) => void; startDrawing: (x: number, y: number) => void; updateDrawing: (x: number, y: number) => void; finishDrawing: () => void; deleteRect: (index: number) => void; clearAll: () => void; applyRedact: () => Promise; } /** Manages state and logic for the blur-redaction tool. */ export declare function useRedactTool(imageUrl: string): RedactToolState; /** Standalone replay handler for the "redact-blur" action type. */ export declare function replayRedactBlur(imageUrl: string, params: Record): Promise; /** Normalises a drawing into a positional rect (min x/y, positive w/h). */ export declare function normRect(d: { startX: number; startY: number; currentX: number; currentY: number; }): { x: number; y: number; w: number; h: number; }; export {};