document-scanner-vue
Version:
Vue 3 Document Scanner with OpenCV.js - Mobile optimized with camera/gallery support
26 lines • 1.55 kB
TypeScript
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