import { type Ref, ShallowRef } from 'vue';
import type { CanvasLoadedCallback, PreparePrintProgress, ViewerPdfPage } from '@/utils/types';
import { PDFDocumentProxy } from 'pdfjs-dist/types/src/display/api';
declare const usePrintControl: (pdfDocument: ShallowRef<PDFDocumentProxy | undefined>, pages: ShallowRef<ViewerPdfPage[]>, afterCanvasLoaded?: Ref<Record<number, CanvasLoadedCallback> | undefined>) => {
    print: (showProgress?: boolean) => Promise<void>;
    printControl: {
        print: (options?: {
            visibleDefaultProgress: boolean;
        } | undefined) => void;
        cancel: () => void;
        onProgress?: ((progress: PreparePrintProgress) => void) | undefined;
        onError?: ((error: Error) => void) | undefined;
        onComplete?: (() => void) | undefined;
    };
    visiblePrintProcess: Ref<boolean, boolean>;
    cancelPrint: Ref<boolean, boolean>;
    onPrintCancel: () => void;
    onPrintLoading: () => void;
    changePercent: (value: number) => void;
    printProgressPercentage: Ref<number, number>;
};
export default usePrintControl;
