import { fabric } from 'fabric'; import { Region } from '../../types'; interface UseRegionUpdateParams { canvas: fabric.Canvas | undefined; image: fabric.Image | undefined; draggable: boolean; canvasToImageCoords: (canvasX: number, canvasY: number) => { x: number; y: number; }; imageToCanvasCoords: (imageX: number, imageY: number) => { x: number; y: number; }; cropRegionImage: (region: Region) => Promise; onChange?: (labels: Region[]) => void; onRegionChange?: (region: Region | null, action: 'create' | 'update' | 'delete') => void; performOCRIfNeeded: (region: Region, action: 'create' | 'update') => Promise; updateTextLayers: (rect: fabric.Rect, region: Region) => void; rectMapRef: React.MutableRefObject>; regionNameTextMapRef: React.MutableRefObject>; ocrLoadingIconMapRef: React.MutableRefObject>; } /** * Hook for updating region shape and image * @param params - Region update configuration parameters * @returns updateRegionShapeAndImage function to update region shape and crop image */ export declare const useRegionUpdate: ({ canvas, image, draggable, canvasToImageCoords, imageToCanvasCoords, cropRegionImage, onChange, onRegionChange, performOCRIfNeeded, updateTextLayers, rectMapRef, regionNameTextMapRef, ocrLoadingIconMapRef, }: UseRegionUpdateParams) => { updateRegionShapeAndImage: (rect: fabric.Rect) => void; }; export {};