UNPKG

document-scanner-vue

Version:

Vue 3 Document Scanner with OpenCV.js - Mobile optimized with camera/gallery support

33 lines 1.7 kB
import { type ComputedRef, type DeepReadonly, type Ref } from 'vue'; import type { Page, Point } from '@/types'; export interface ImageOperationsOptions { pageManager: { pages: ComputedRef<DeepReadonly<Page[]>>; currentPage: ComputedRef<Page | null>; updatePageData: (pageId: string, data: any) => void; getPageById: (pageId: string) => Page | undefined; }; isOpenCVReady: Ref<boolean>; performPerspectiveTransform: (imageDataURL: string, corners: ReadonlyArray<Point>, outputFormat?: any) => Promise<{ imageDataURL: string; processedWidth: number; processedHeight: number; } | null>; rotateImageData: (imageDataURL: string, angle: number) => Promise<string>; transformCornersForRotationIncrement: (corners: ReadonlyArray<Point> | null, rotationIncrement: number, originalWidth: number, originalHeight: number) => ReadonlyArray<Point> | null; } export declare function useImageOperations(options: ImageOperationsOptions): { isLoading: Ref<boolean, boolean>; processingStatus: Ref<string, string>; processingProgress: Ref<number, number>; currentDisplayPage: ComputedRef<Page | null>; rotatedImageDataURLByRotation: ComputedRef<string | null>; imageSrcForPreviewComponent: ComputedRef<string | null>; processActivePage: (outputFormat?: any) => Promise<void>; resetCornersForCurrentPage: () => void; rotateCurrentPage: (direction: "left" | "right") => Promise<void>; applyPerspectiveTransformAndGetDataURL: (pageId: string) => Promise<string | null>; clearPageCache: (pageId: string) => void; clearAllCache: () => void; }; //# sourceMappingURL=useImageOperations.d.ts.map