import { type Ref } from 'vue';
import { Point, Page as PageType, PaperFormat } from "../types";
/**
 * Composable for handling image processing operations
 * Manages corner detection, adjustment, and perspective transform
 */
export declare function useImageProcessing(isOpenCVReady: Readonly<Ref<boolean>>): {
    detectedCorners: Readonly<Ref<readonly Point[] | null, readonly Point[] | null>>;
    adjustedCorners: Readonly<Ref<readonly Point[] | null, readonly Point[] | null>>;
    currentRotation: Readonly<Ref<number, number>>;
    isProcessing: Readonly<Ref<boolean, boolean>>;
    detectEdges: (imageDataURL: string) => Promise<ReadonlyArray<Point> | null>;
    performPerspectiveTransform: (imageDataURL: string, cornersToApply: ReadonlyArray<Point>, outputFormat?: PaperFormat | null) => Promise<{
        imageDataURL: string;
        processedWidth: number;
        processedHeight: number;
    } | null>;
    setAdjustedCorners: (newCorners: ReadonlyArray<Point> | null) => void;
    resetActiveImageState: () => void;
    setRotation: (rotation: number) => void;
    syncStateFromPage: (page: PageType | null) => void;
    rotateImageData: (imageDataURL: string, rotationAngle: number) => Promise<string>;
    transformCornersForRotationIncrement: (corners: ReadonlyArray<Point> | null, rotationIncrement: number, originalWidth: number, originalHeight: number) => ReadonlyArray<Point> | null;
};
export declare function calculateOriginalAspectRatio(corners: Point[]): number | null;
//# sourceMappingURL=useImageProcessing.d.ts.map