import { PDFDocumentProxy } from 'pdfjs-dist/types/src/display/api';
import type { PDFPageProxy } from 'pdfjs-dist/types/web/interfaces';
import { type InjectionKey, type Slot, type Ref, type ComponentPublicInstance, type ShallowRef, type Reactive, type ComputedRef } from 'vue';
import type { HighlightMatchPosition, HighlightOptions, NormalizedKeyword, Offset, PdfProperties, ToolbarOptions, ViewerPdfPage, RenderQueueItem, FullMatchHighlightResult, TextSelectionMenuOption, AnnotationTextSelectionType } from './utils/types';
import { LicenseProduct } from './utils/enumerators';
import { LicenseType, ScrollMode, ViewMode, ZoomLevel } from './components';
import { AnnotationType, AnnotationFreeTextFontColors, AnnotationHighlightColors, AnnotationUnderlineColors, AnnotationStrikethroughColors } from '@vue-pdf-viewer/shared';
import { AnnotationImageManager } from './utils/annotation-image';
import { HistoryManager } from './utils/historyManager';
export declare const CSS_CLASSES: {
    SELECTING: string;
    END_OF_CONTENT: string;
    FOCUS_IN: string;
};
export declare const DEFAULT_TOOLBAR_OPTIONS: ToolbarOptions;
export declare const DEFAULT_PROPS: {
    workerUrl: undefined;
    wasmUrl: undefined;
    initialPage: number;
    initialScale: ZoomLevel;
    initialScrollMode: ScrollMode;
    initialViewMode: ViewMode;
    initialRotation: number;
    initialThumbnailsVisible: boolean;
    initialSearch: undefined;
    textLayer: boolean;
    characterMap: undefined;
    toolbarOptions: ToolbarOptions;
    localization: Record<string, import("@vue-pdf-viewer/shared").Localization>;
    afterCanvasLoaded: undefined;
};
export declare const DEFAULT_OFFSET: Offset;
export declare const DEFAULT_VIEWER_HEIGHT = 768;
export declare const PERCENTAGE = 100;
export declare const MIN_ZOOM_SCALE = 0.25;
export declare const MAX_ZOOM_SCALE = 10;
export declare const DEFAULT_SCALE_DELTA = 1.1;
export declare const ANNOTATION_OUTLINE_BORDER_WIDTH = 0.0025;
export declare const ANNOTATION_OUTLINE_INNER_MARGIN = 0.00025;
export declare const TEXT_MARKUP_LINE_THICKNESS = 0.075;
export declare const SCROLL_BAR_WIDTH = 20;
export declare const PAGE_PADDING = 1;
export declare const PAGE_OFFSET = 0;
export declare const LAST_PAGE_OFFSET = 4;
export declare const SEARCH_MAX_HEIGHT = 97;
export declare const FILE_INPUT: InjectionKey<Ref<ComponentPublicInstance<import("vue").DefineComponent<{}, {
    triggerClick: () => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    change: (file: string) => void;
} & {
    filenameChange: (file: string) => void;
}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{
    onChange?: ((file: string) => any) | undefined;
    onFilenameChange?: ((file: string) => any) | undefined;
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | undefined, ComponentPublicInstance<import("vue").DefineComponent<{}, {
    triggerClick: () => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    change: (file: string) => void;
} & {
    filenameChange: (file: string) => void;
}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{
    onChange?: ((file: string) => any) | undefined;
    onFilenameChange?: ((file: string) => any) | undefined;
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import("vue").ComponentProvideOptions>, {}, {}, "", {}, any> | undefined>>;
export declare const EMPTY_KEYWORD_REGEXP: NormalizedKeyword;
export declare const CURRENT_MATCH_CSS_CLASS = "vpv-highlight__text-current";
export declare const LATEST_MATCH_POSITION: InjectionKey<Ref<HighlightMatchPosition | undefined, HighlightMatchPosition | undefined>>;
export declare const GET_PAGE: InjectionKey<(doc: PDFDocumentProxy, pageIndex: number) => Promise<PDFPageProxy>>;
export declare const RESTRICTED_CUSTOM: InjectionKey<Ref<boolean, boolean>>;
export declare const VIEWER_STATE: InjectionKey<{
    pdfDocument: {
        _pdfInfo: any;
        _transport: any;
        readonly annotationStorage: {
            onSetModified: any;
            onResetModified: any;
            onAnnotationEditor: any;
            getValue: (key: string, defaultValue: Object) => Object;
            getRawValue: (key: string) => Object;
            remove: (key: string) => void;
            setValue: (key: string, value: Object) => void;
            has: (key: string) => boolean;
            readonly size: number;
            resetModified: () => void;
            readonly print: {
                readonly serializable: {
                    map: any;
                    hash: any;
                    transfer: any;
                };
                readonly modifiedIds: any;
                onSetModified: any;
                onResetModified: any;
                onAnnotationEditor: any;
                getValue: (key: string, defaultValue: Object) => Object;
                getRawValue: (key: string) => Object;
                remove: (key: string) => void;
                setValue: (key: string, value: Object) => void;
                has: (key: string) => boolean;
                readonly size: number;
                resetModified: () => void;
                readonly print: any;
                readonly editorStats: any;
                resetModifiedIds: () => void;
                updateEditor: (annotationId: any, data: any) => boolean;
                getEditor: (annotationId: any) => any;
                [Symbol.iterator]: () => MapIterator<[any, any]>;
            };
            readonly serializable: {
                readonly map: null;
                readonly hash: "";
                readonly transfer: undefined;
            } | {
                map: Map<any, any> & Omit<Map<any, any>, keyof Map<any, any>>;
                hash: string;
                transfer: any[];
            };
            readonly editorStats: any;
            resetModifiedIds: () => void;
            updateEditor: (annotationId: any, data: any) => boolean;
            getEditor: (annotationId: any) => any;
            readonly modifiedIds: {
                ids: Set<string> & Omit<Set<string>, keyof Set<any>>;
                hash: string;
            };
            [Symbol.iterator]: () => MapIterator<[any, any]>;
        };
        readonly canvasFactory: Object;
        readonly filterFactory: Object;
        readonly numPages: number;
        readonly fingerprints: (string | null)[];
        readonly isPureXfa: boolean;
        readonly allXfaHtml: Object | null;
        getPage: (pageNumber: number) => Promise<import("pdfjs-dist/types/src/display/api").PDFPageProxy>;
        getPageIndex: (ref: import("pdfjs-dist/types/src/display/api").RefProxy) => Promise<number>;
        getDestinations: () => Promise<{
            [x: string]: any[];
        }>;
        getDestination: (id: string) => Promise<any[] | null>;
        getPageLabels: () => Promise<string[] | null>;
        getPageLayout: () => Promise<string>;
        getPageMode: () => Promise<string>;
        getViewerPreferences: () => Promise<Object | null>;
        getOpenAction: () => Promise<any>;
        getAttachments: () => Promise<any>;
        getAnnotationsByType: (types: Set<number>, pageIndexesToSkip: Set<number>) => Promise<Object[]>;
        getJSActions: () => Promise<Object | null>;
        getOutline: () => Promise<{
            title: string;
            bold: boolean;
            italic: boolean;
            color: Uint8ClampedArray;
            dest: string | any[] | null;
            url: string | null;
            unsafeUrl: string | undefined;
            newWindow: boolean | undefined;
            count: number | undefined;
            items: any[];
        }[]>;
        getOptionalContentConfig: ({ intent }?: {
            intent?: string | undefined;
        } | undefined) => Promise<import("pdfjs-dist/types/src/display/optional_content_config").OptionalContentConfig>;
        getPermissions: () => Promise<number[] | null>;
        getMetadata: () => Promise<{
            info: Object;
            metadata: import("pdfjs-dist/types/src/display/metadata").Metadata;
        }>;
        getMarkInfo: () => Promise<{
            Marked: boolean;
            UserProperties: boolean;
            Suspects: boolean;
        } | null>;
        getData: () => Promise<Uint8Array>;
        saveDocument: () => Promise<Uint8Array>;
        extractPages: (pageInfos: {
            document: Uint8Array | null;
            includePages?: (number | number[])[] | undefined;
            excludePages?: (number | number[])[] | undefined;
        }[]) => Promise<Uint8Array>;
        getDownloadInfo: () => Promise<{
            length: number;
        }>;
        cleanup: (keepLoadedFonts?: boolean | undefined) => Promise<any>;
        destroy: () => Promise<void>;
        cachedPageNumber: (ref: import("pdfjs-dist/types/src/display/api").RefProxy) => number | null;
        readonly loadingParams: {
            url?: string | {
                hash: string;
                host: string;
                hostname: string;
                href: string;
                toString: () => string;
                readonly origin: string;
                password: string;
                pathname: string;
                port: string;
                protocol: string;
                search: string;
                readonly searchParams: {
                    append: (name: string, value: string) => void;
                    delete: (name: string) => void;
                    get: (name: string) => string | null;
                    getAll: (name: string) => string[];
                    has: (name: string) => boolean;
                    set: (name: string, value: string) => void;
                    sort: () => void;
                    toString: () => string;
                    forEach: (callbackfn: (value: string, key: string, parent: URLSearchParams) => void, thisArg?: any) => void;
                    entries: () => IterableIterator<[string, string]>;
                    keys: () => IterableIterator<string>;
                    values: () => IterableIterator<string>;
                    [Symbol.iterator]: () => IterableIterator<[string, string]>;
                    readonly size: number;
                };
                username: string;
                toJSON: () => string;
            } | undefined;
            data?: string | number[] | {
                [x: number]: number;
                readonly BYTES_PER_ELEMENT: number;
                readonly buffer: {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => ArrayBuffer;
                    readonly [Symbol.toStringTag]: string;
                } | {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => SharedArrayBuffer;
                    readonly [Symbol.species]: SharedArrayBuffer;
                    readonly [Symbol.toStringTag]: "SharedArrayBuffer";
                };
                readonly byteLength: number;
                readonly byteOffset: number;
                copyWithin: (target: number, start: number, end?: number | undefined) => Uint8ClampedArray;
                every: (predicate: (value: number, index: number, array: Uint8ClampedArray) => unknown, thisArg?: any) => boolean;
                fill: (value: number, start?: number | undefined, end?: number | undefined) => Uint8ClampedArray;
                filter: (predicate: (value: number, index: number, array: Uint8ClampedArray) => any, thisArg?: any) => Uint8ClampedArray;
                find: (predicate: (value: number, index: number, obj: Uint8ClampedArray) => boolean, thisArg?: any) => number | undefined;
                findIndex: (predicate: (value: number, index: number, obj: Uint8ClampedArray) => boolean, thisArg?: any) => number;
                forEach: (callbackfn: (value: number, index: number, array: Uint8ClampedArray) => void, thisArg?: any) => void;
                indexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                join: (separator?: string | undefined) => string;
                lastIndexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                readonly length: number;
                map: (callbackfn: (value: number, index: number, array: Uint8ClampedArray) => number, thisArg?: any) => Uint8ClampedArray;
                reduce: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => number, initialValue: number): number;
                    <U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => U, initialValue: U): U;
                };
                reduceRight: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => number, initialValue: number): number;
                    <U_1>(callbackfn: (previousValue: U_1, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => U_1, initialValue: U_1): U_1;
                };
                reverse: () => Uint8ClampedArray;
                set: (array: ArrayLike<number>, offset?: number | undefined) => void;
                slice: (start?: number | undefined, end?: number | undefined) => Uint8ClampedArray;
                some: (predicate: (value: number, index: number, array: Uint8ClampedArray) => unknown, thisArg?: any) => boolean;
                sort: (compareFn?: ((a: number, b: number) => number) | undefined) => Uint8ClampedArray;
                subarray: (begin?: number | undefined, end?: number | undefined) => Uint8ClampedArray;
                toLocaleString: () => string;
                toString: () => string;
                valueOf: () => Uint8ClampedArray;
                entries: () => IterableIterator<[number, number]>;
                keys: () => IterableIterator<number>;
                values: () => IterableIterator<number>;
                includes: (searchElement: number, fromIndex?: number | undefined) => boolean;
                at: (index: number) => number | undefined;
                [Symbol.iterator]: () => IterableIterator<number>;
                readonly [Symbol.toStringTag]: "Uint8ClampedArray";
            } | {
                [x: number]: number;
                readonly BYTES_PER_ELEMENT: number;
                readonly buffer: {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => ArrayBuffer;
                    readonly [Symbol.toStringTag]: string;
                } | {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => SharedArrayBuffer;
                    readonly [Symbol.species]: SharedArrayBuffer;
                    readonly [Symbol.toStringTag]: "SharedArrayBuffer";
                };
                readonly byteLength: number;
                readonly byteOffset: number;
                copyWithin: (target: number, start: number, end?: number | undefined) => Float32Array;
                every: (predicate: (value: number, index: number, array: Float32Array) => unknown, thisArg?: any) => boolean;
                fill: (value: number, start?: number | undefined, end?: number | undefined) => Float32Array;
                filter: (predicate: (value: number, index: number, array: Float32Array) => any, thisArg?: any) => Float32Array;
                find: (predicate: (value: number, index: number, obj: Float32Array) => boolean, thisArg?: any) => number | undefined;
                findIndex: (predicate: (value: number, index: number, obj: Float32Array) => boolean, thisArg?: any) => number;
                forEach: (callbackfn: (value: number, index: number, array: Float32Array) => void, thisArg?: any) => void;
                indexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                join: (separator?: string | undefined) => string;
                lastIndexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                readonly length: number;
                map: (callbackfn: (value: number, index: number, array: Float32Array) => number, thisArg?: any) => Float32Array;
                reduce: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float32Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float32Array) => number, initialValue: number): number;
                    <U_2>(callbackfn: (previousValue: U_2, currentValue: number, currentIndex: number, array: Float32Array) => U_2, initialValue: U_2): U_2;
                };
                reduceRight: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float32Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float32Array) => number, initialValue: number): number;
                    <U_3>(callbackfn: (previousValue: U_3, currentValue: number, currentIndex: number, array: Float32Array) => U_3, initialValue: U_3): U_3;
                };
                reverse: () => Float32Array;
                set: (array: ArrayLike<number>, offset?: number | undefined) => void;
                slice: (start?: number | undefined, end?: number | undefined) => Float32Array;
                some: (predicate: (value: number, index: number, array: Float32Array) => unknown, thisArg?: any) => boolean;
                sort: (compareFn?: ((a: number, b: number) => number) | undefined) => Float32Array;
                subarray: (begin?: number | undefined, end?: number | undefined) => Float32Array;
                toLocaleString: () => string;
                toString: () => string;
                valueOf: () => Float32Array;
                entries: () => IterableIterator<[number, number]>;
                keys: () => IterableIterator<number>;
                values: () => IterableIterator<number>;
                includes: (searchElement: number, fromIndex?: number | undefined) => boolean;
                at: (index: number) => number | undefined;
                [Symbol.iterator]: () => IterableIterator<number>;
                readonly [Symbol.toStringTag]: "Float32Array";
            } | {
                readonly byteLength: number;
                slice: (begin: number, end?: number | undefined) => ArrayBuffer;
                readonly [Symbol.toStringTag]: string;
            } | {
                [x: number]: number;
                readonly BYTES_PER_ELEMENT: number;
                readonly buffer: {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => ArrayBuffer;
                    readonly [Symbol.toStringTag]: string;
                } | {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => SharedArrayBuffer;
                    readonly [Symbol.species]: SharedArrayBuffer;
                    readonly [Symbol.toStringTag]: "SharedArrayBuffer";
                };
                readonly byteLength: number;
                readonly byteOffset: number;
                copyWithin: (target: number, start: number, end?: number | undefined) => Uint8Array;
                every: (predicate: (value: number, index: number, array: Uint8Array) => unknown, thisArg?: any) => boolean;
                fill: (value: number, start?: number | undefined, end?: number | undefined) => Uint8Array;
                filter: (predicate: (value: number, index: number, array: Uint8Array) => any, thisArg?: any) => Uint8Array;
                find: (predicate: (value: number, index: number, obj: Uint8Array) => boolean, thisArg?: any) => number | undefined;
                findIndex: (predicate: (value: number, index: number, obj: Uint8Array) => boolean, thisArg?: any) => number;
                forEach: (callbackfn: (value: number, index: number, array: Uint8Array) => void, thisArg?: any) => void;
                indexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                join: (separator?: string | undefined) => string;
                lastIndexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                readonly length: number;
                map: (callbackfn: (value: number, index: number, array: Uint8Array) => number, thisArg?: any) => Uint8Array;
                reduce: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number, initialValue: number): number;
                    <U_4>(callbackfn: (previousValue: U_4, currentValue: number, currentIndex: number, array: Uint8Array) => U_4, initialValue: U_4): U_4;
                };
                reduceRight: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number, initialValue: number): number;
                    <U_5>(callbackfn: (previousValue: U_5, currentValue: number, currentIndex: number, array: Uint8Array) => U_5, initialValue: U_5): U_5;
                };
                reverse: () => Uint8Array;
                set: (array: ArrayLike<number>, offset?: number | undefined) => void;
                slice: (start?: number | undefined, end?: number | undefined) => Uint8Array;
                some: (predicate: (value: number, index: number, array: Uint8Array) => unknown, thisArg?: any) => boolean;
                sort: (compareFn?: ((a: number, b: number) => number) | undefined) => Uint8Array;
                subarray: (begin?: number | undefined, end?: number | undefined) => Uint8Array;
                toLocaleString: () => string;
                toString: () => string;
                valueOf: () => Uint8Array;
                entries: () => IterableIterator<[number, number]>;
                keys: () => IterableIterator<number>;
                values: () => IterableIterator<number>;
                includes: (searchElement: number, fromIndex?: number | undefined) => boolean;
                at: (index: number) => number | undefined;
                [Symbol.iterator]: () => IterableIterator<number>;
                readonly [Symbol.toStringTag]: "Uint8Array";
            } | {
                [x: number]: number;
                readonly BYTES_PER_ELEMENT: number;
                readonly buffer: {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => ArrayBuffer;
                    readonly [Symbol.toStringTag]: string;
                } | {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => SharedArrayBuffer;
                    readonly [Symbol.species]: SharedArrayBuffer;
                    readonly [Symbol.toStringTag]: "SharedArrayBuffer";
                };
                readonly byteLength: number;
                readonly byteOffset: number;
                copyWithin: (target: number, start: number, end?: number | undefined) => Int8Array;
                every: (predicate: (value: number, index: number, array: Int8Array) => unknown, thisArg?: any) => boolean;
                fill: (value: number, start?: number | undefined, end?: number | undefined) => Int8Array;
                filter: (predicate: (value: number, index: number, array: Int8Array) => any, thisArg?: any) => Int8Array;
                find: (predicate: (value: number, index: number, obj: Int8Array) => boolean, thisArg?: any) => number | undefined;
                findIndex: (predicate: (value: number, index: number, obj: Int8Array) => boolean, thisArg?: any) => number;
                forEach: (callbackfn: (value: number, index: number, array: Int8Array) => void, thisArg?: any) => void;
                indexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                join: (separator?: string | undefined) => string;
                lastIndexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                readonly length: number;
                map: (callbackfn: (value: number, index: number, array: Int8Array) => number, thisArg?: any) => Int8Array;
                reduce: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int8Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int8Array) => number, initialValue: number): number;
                    <U_6>(callbackfn: (previousValue: U_6, currentValue: number, currentIndex: number, array: Int8Array) => U_6, initialValue: U_6): U_6;
                };
                reduceRight: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int8Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int8Array) => number, initialValue: number): number;
                    <U_7>(callbackfn: (previousValue: U_7, currentValue: number, currentIndex: number, array: Int8Array) => U_7, initialValue: U_7): U_7;
                };
                reverse: () => Int8Array;
                set: (array: ArrayLike<number>, offset?: number | undefined) => void;
                slice: (start?: number | undefined, end?: number | undefined) => Int8Array;
                some: (predicate: (value: number, index: number, array: Int8Array) => unknown, thisArg?: any) => boolean;
                sort: (compareFn?: ((a: number, b: number) => number) | undefined) => Int8Array;
                subarray: (begin?: number | undefined, end?: number | undefined) => Int8Array;
                toLocaleString: () => string;
                toString: () => string;
                valueOf: () => Int8Array;
                entries: () => IterableIterator<[number, number]>;
                keys: () => IterableIterator<number>;
                values: () => IterableIterator<number>;
                includes: (searchElement: number, fromIndex?: number | undefined) => boolean;
                at: (index: number) => number | undefined;
                [Symbol.iterator]: () => IterableIterator<number>;
                readonly [Symbol.toStringTag]: "Int8Array";
            } | {
                [x: number]: number;
                readonly BYTES_PER_ELEMENT: number;
                readonly buffer: {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => ArrayBuffer;
                    readonly [Symbol.toStringTag]: string;
                } | {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => SharedArrayBuffer;
                    readonly [Symbol.species]: SharedArrayBuffer;
                    readonly [Symbol.toStringTag]: "SharedArrayBuffer";
                };
                readonly byteLength: number;
                readonly byteOffset: number;
                copyWithin: (target: number, start: number, end?: number | undefined) => Int16Array;
                every: (predicate: (value: number, index: number, array: Int16Array) => unknown, thisArg?: any) => boolean;
                fill: (value: number, start?: number | undefined, end?: number | undefined) => Int16Array;
                filter: (predicate: (value: number, index: number, array: Int16Array) => any, thisArg?: any) => Int16Array;
                find: (predicate: (value: number, index: number, obj: Int16Array) => boolean, thisArg?: any) => number | undefined;
                findIndex: (predicate: (value: number, index: number, obj: Int16Array) => boolean, thisArg?: any) => number;
                forEach: (callbackfn: (value: number, index: number, array: Int16Array) => void, thisArg?: any) => void;
                indexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                join: (separator?: string | undefined) => string;
                lastIndexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                readonly length: number;
                map: (callbackfn: (value: number, index: number, array: Int16Array) => number, thisArg?: any) => Int16Array;
                reduce: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int16Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int16Array) => number, initialValue: number): number;
                    <U_8>(callbackfn: (previousValue: U_8, currentValue: number, currentIndex: number, array: Int16Array) => U_8, initialValue: U_8): U_8;
                };
                reduceRight: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int16Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int16Array) => number, initialValue: number): number;
                    <U_9>(callbackfn: (previousValue: U_9, currentValue: number, currentIndex: number, array: Int16Array) => U_9, initialValue: U_9): U_9;
                };
                reverse: () => Int16Array;
                set: (array: ArrayLike<number>, offset?: number | undefined) => void;
                slice: (start?: number | undefined, end?: number | undefined) => Int16Array;
                some: (predicate: (value: number, index: number, array: Int16Array) => unknown, thisArg?: any) => boolean;
                sort: (compareFn?: ((a: number, b: number) => number) | undefined) => Int16Array;
                subarray: (begin?: number | undefined, end?: number | undefined) => Int16Array;
                toLocaleString: () => string;
                toString: () => string;
                valueOf: () => Int16Array;
                entries: () => IterableIterator<[number, number]>;
                keys: () => IterableIterator<number>;
                values: () => IterableIterator<number>;
                includes: (searchElement: number, fromIndex?: number | undefined) => boolean;
                at: (index: number) => number | undefined;
                [Symbol.iterator]: () => IterableIterator<number>;
                readonly [Symbol.toStringTag]: "Int16Array";
            } | {
                [x: number]: number;
                readonly BYTES_PER_ELEMENT: number;
                readonly buffer: {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => ArrayBuffer;
                    readonly [Symbol.toStringTag]: string;
                } | {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => SharedArrayBuffer;
                    readonly [Symbol.species]: SharedArrayBuffer;
                    readonly [Symbol.toStringTag]: "SharedArrayBuffer";
                };
                readonly byteLength: number;
                readonly byteOffset: number;
                copyWithin: (target: number, start: number, end?: number | undefined) => Uint16Array;
                every: (predicate: (value: number, index: number, array: Uint16Array) => unknown, thisArg?: any) => boolean;
                fill: (value: number, start?: number | undefined, end?: number | undefined) => Uint16Array;
                filter: (predicate: (value: number, index: number, array: Uint16Array) => any, thisArg?: any) => Uint16Array;
                find: (predicate: (value: number, index: number, obj: Uint16Array) => boolean, thisArg?: any) => number | undefined;
                findIndex: (predicate: (value: number, index: number, obj: Uint16Array) => boolean, thisArg?: any) => number;
                forEach: (callbackfn: (value: number, index: number, array: Uint16Array) => void, thisArg?: any) => void;
                indexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                join: (separator?: string | undefined) => string;
                lastIndexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                readonly length: number;
                map: (callbackfn: (value: number, index: number, array: Uint16Array) => number, thisArg?: any) => Uint16Array;
                reduce: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint16Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint16Array) => number, initialValue: number): number;
                    <U_10>(callbackfn: (previousValue: U_10, currentValue: number, currentIndex: number, array: Uint16Array) => U_10, initialValue: U_10): U_10;
                };
                reduceRight: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint16Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint16Array) => number, initialValue: number): number;
                    <U_11>(callbackfn: (previousValue: U_11, currentValue: number, currentIndex: number, array: Uint16Array) => U_11, initialValue: U_11): U_11;
                };
                reverse: () => Uint16Array;
                set: (array: ArrayLike<number>, offset?: number | undefined) => void;
                slice: (start?: number | undefined, end?: number | undefined) => Uint16Array;
                some: (predicate: (value: number, index: number, array: Uint16Array) => unknown, thisArg?: any) => boolean;
                sort: (compareFn?: ((a: number, b: number) => number) | undefined) => Uint16Array;
                subarray: (begin?: number | undefined, end?: number | undefined) => Uint16Array;
                toLocaleString: () => string;
                toString: () => string;
                valueOf: () => Uint16Array;
                entries: () => IterableIterator<[number, number]>;
                keys: () => IterableIterator<number>;
                values: () => IterableIterator<number>;
                includes: (searchElement: number, fromIndex?: number | undefined) => boolean;
                at: (index: number) => number | undefined;
                [Symbol.iterator]: () => IterableIterator<number>;
                readonly [Symbol.toStringTag]: "Uint16Array";
            } | {
                [x: number]: number;
                readonly BYTES_PER_ELEMENT: number;
                readonly buffer: {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => ArrayBuffer;
                    readonly [Symbol.toStringTag]: string;
                } | {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => SharedArrayBuffer;
                    readonly [Symbol.species]: SharedArrayBuffer;
                    readonly [Symbol.toStringTag]: "SharedArrayBuffer";
                };
                readonly byteLength: number;
                readonly byteOffset: number;
                copyWithin: (target: number, start: number, end?: number | undefined) => Int32Array;
                every: (predicate: (value: number, index: number, array: Int32Array) => unknown, thisArg?: any) => boolean;
                fill: (value: number, start?: number | undefined, end?: number | undefined) => Int32Array;
                filter: (predicate: (value: number, index: number, array: Int32Array) => any, thisArg?: any) => Int32Array;
                find: (predicate: (value: number, index: number, obj: Int32Array) => boolean, thisArg?: any) => number | undefined;
                findIndex: (predicate: (value: number, index: number, obj: Int32Array) => boolean, thisArg?: any) => number;
                forEach: (callbackfn: (value: number, index: number, array: Int32Array) => void, thisArg?: any) => void;
                indexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                join: (separator?: string | undefined) => string;
                lastIndexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                readonly length: number;
                map: (callbackfn: (value: number, index: number, array: Int32Array) => number, thisArg?: any) => Int32Array;
                reduce: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int32Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int32Array) => number, initialValue: number): number;
                    <U_12>(callbackfn: (previousValue: U_12, currentValue: number, currentIndex: number, array: Int32Array) => U_12, initialValue: U_12): U_12;
                };
                reduceRight: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int32Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int32Array) => number, initialValue: number): number;
                    <U_13>(callbackfn: (previousValue: U_13, currentValue: number, currentIndex: number, array: Int32Array) => U_13, initialValue: U_13): U_13;
                };
                reverse: () => Int32Array;
                set: (array: ArrayLike<number>, offset?: number | undefined) => void;
                slice: (start?: number | undefined, end?: number | undefined) => Int32Array;
                some: (predicate: (value: number, index: number, array: Int32Array) => unknown, thisArg?: any) => boolean;
                sort: (compareFn?: ((a: number, b: number) => number) | undefined) => Int32Array;
                subarray: (begin?: number | undefined, end?: number | undefined) => Int32Array;
                toLocaleString: () => string;
                toString: () => string;
                valueOf: () => Int32Array;
                entries: () => IterableIterator<[number, number]>;
                keys: () => IterableIterator<number>;
                values: () => IterableIterator<number>;
                includes: (searchElement: number, fromIndex?: number | undefined) => boolean;
                at: (index: number) => number | undefined;
                [Symbol.iterator]: () => IterableIterator<number>;
                readonly [Symbol.toStringTag]: "Int32Array";
            } | {
                [x: number]: number;
                readonly BYTES_PER_ELEMENT: number;
                readonly buffer: {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => ArrayBuffer;
                    readonly [Symbol.toStringTag]: string;
                } | {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => SharedArrayBuffer;
                    readonly [Symbol.species]: SharedArrayBuffer;
                    readonly [Symbol.toStringTag]: "SharedArrayBuffer";
                };
                readonly byteLength: number;
                readonly byteOffset: number;
                copyWithin: (target: number, start: number, end?: number | undefined) => Uint32Array;
                every: (predicate: (value: number, index: number, array: Uint32Array) => unknown, thisArg?: any) => boolean;
                fill: (value: number, start?: number | undefined, end?: number | undefined) => Uint32Array;
                filter: (predicate: (value: number, index: number, array: Uint32Array) => any, thisArg?: any) => Uint32Array;
                find: (predicate: (value: number, index: number, obj: Uint32Array) => boolean, thisArg?: any) => number | undefined;
                findIndex: (predicate: (value: number, index: number, obj: Uint32Array) => boolean, thisArg?: any) => number;
                forEach: (callbackfn: (value: number, index: number, array: Uint32Array) => void, thisArg?: any) => void;
                indexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                join: (separator?: string | undefined) => string;
                lastIndexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                readonly length: number;
                map: (callbackfn: (value: number, index: number, array: Uint32Array) => number, thisArg?: any) => Uint32Array;
                reduce: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint32Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint32Array) => number, initialValue: number): number;
                    <U_14>(callbackfn: (previousValue: U_14, currentValue: number, currentIndex: number, array: Uint32Array) => U_14, initialValue: U_14): U_14;
                };
                reduceRight: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint32Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint32Array) => number, initialValue: number): number;
                    <U_15>(callbackfn: (previousValue: U_15, currentValue: number, currentIndex: number, array: Uint32Array) => U_15, initialValue: U_15): U_15;
                };
                reverse: () => Uint32Array;
                set: (array: ArrayLike<number>, offset?: number | undefined) => void;
                slice: (start?: number | undefined, end?: number | undefined) => Uint32Array;
                some: (predicate: (value: number, index: number, array: Uint32Array) => unknown, thisArg?: any) => boolean;
                sort: (compareFn?: ((a: number, b: number) => number) | undefined) => Uint32Array;
                subarray: (begin?: number | undefined, end?: number | undefined) => Uint32Array;
                toLocaleString: () => string;
                toString: () => string;
                valueOf: () => Uint32Array;
                entries: () => IterableIterator<[number, number]>;
                keys: () => IterableIterator<number>;
                values: () => IterableIterator<number>;
                includes: (searchElement: number, fromIndex?: number | undefined) => boolean;
                at: (index: number) => number | undefined;
                [Symbol.iterator]: () => IterableIterator<number>;
                readonly [Symbol.toStringTag]: "Uint32Array";
            } | {
                [x: number]: number;
                readonly BYTES_PER_ELEMENT: number;
                readonly buffer: {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => ArrayBuffer;
                    readonly [Symbol.toStringTag]: string;
                } | {
                    readonly byteLength: number;
                    slice: (begin: number, end?: number | undefined) => SharedArrayBuffer;
                    readonly [Symbol.species]: SharedArrayBuffer;
                    readonly [Symbol.toStringTag]: "SharedArrayBuffer";
                };
                readonly byteLength: number;
                readonly byteOffset: number;
                copyWithin: (target: number, start: number, end?: number | undefined) => Float64Array;
                every: (predicate: (value: number, index: number, array: Float64Array) => unknown, thisArg?: any) => boolean;
                fill: (value: number, start?: number | undefined, end?: number | undefined) => Float64Array;
                filter: (predicate: (value: number, index: number, array: Float64Array) => any, thisArg?: any) => Float64Array;
                find: (predicate: (value: number, index: number, obj: Float64Array) => boolean, thisArg?: any) => number | undefined;
                findIndex: (predicate: (value: number, index: number, obj: Float64Array) => boolean, thisArg?: any) => number;
                forEach: (callbackfn: (value: number, index: number, array: Float64Array) => void, thisArg?: any) => void;
                indexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                join: (separator?: string | undefined) => string;
                lastIndexOf: (searchElement: number, fromIndex?: number | undefined) => number;
                readonly length: number;
                map: (callbackfn: (value: number, index: number, array: Float64Array) => number, thisArg?: any) => Float64Array;
                reduce: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float64Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float64Array) => number, initialValue: number): number;
                    <U_16>(callbackfn: (previousValue: U_16, currentValue: number, currentIndex: number, array: Float64Array) => U_16, initialValue: U_16): U_16;
                };
                reduceRight: {
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float64Array) => number): number;
                    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float64Array) => number, initialValue: number): number;
                    <U_17>(callbackfn: (previousValue: U_17, currentValue: number, currentIndex: number, array: Float64Array) => U_17, initialValue: U_17): U_17;
                };
                reverse: () => Float64Array;
                set: (array: ArrayLike<number>, offset?: number | undefined) => void;
                slice: (start?: number | undefined, end?: number | undefined) => Float64Array;
                some: (predicate: (value: number, index: number, array: Float64Array) => unknown, thisArg?: any) => boolean;
                sort: (compareFn?: ((a: number, b: number) => number) | undefined) => Float64Array;
                subarray: (begin?: number | undefined, end?: number | undefined) => Float64Array;
                toString: () => string;
                valueOf: () => Float64Array;
                entries: () => IterableIterator<[number, number]>;
                keys: () => IterableIterator<number>;
                values: () => IterableIterator<number>;
                includes: (searchElement: number, fromIndex?: number | undefined) => boolean;
                at: (index: number) => number | undefined;
                [Symbol.iterator]: () => IterableIterator<number>;
                readonly [Symbol.toStringTag]: "Float64Array";
            } | undefined;
            httpHeaders?: Object | undefined;
            withCredentials?: boolean | undefined;
            password?: string | undefined;
            length?: number | undefined;
            range?: {
                length: number;
                initialData: any;
                progressiveDone: boolean;
                contentDispositionFilename: string;
                addRangeListener: (listener: Function) => void;
                addProgressListener: (listener: Function) => void;
                addProgressiveReadListener: (listener: Function) => void;
                addProgressiveDoneListener: (listener: Function) => void;
                onDataRange: (begin: number, chunk: Uint8Array | null) => void;
                onDataProgress: (loaded: number, total: number | undefined) => void;
                onDataProgressiveRead: (chunk: Uint8Array | null) => void;
                onDataProgressiveDone: () => void;
                transportReady: () => void;
                requestDataRange: (begin: number, end: number) => void;
                abort: () => void;
            } | undefined;
            rangeChunkSize?: number | undefined;
            worker?: {
                name: any;
                destroyed: boolean;
                verbosity: number;
                readonly promise: {
                    then: <TResult1 = void, TResult2 = never>(onfulfilled?: ((value: void) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined) => Promise<TResult1 | TResult2>;
                    catch: <TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | null | undefined) => Promise<void | TResult>;
                    finally: (onfinally?: (() => void) | null | undefined) => Promise<void>;
                    readonly [Symbol.toStringTag]: string;
                };
                readonly port: {
                    onmessage: ((this: Worker, ev: MessageEvent<any>) => any) | null;
                    onmessageerror: ((this: Worker, ev: MessageEvent<any>) => any) | null;
                    postMessage: {
                        (message: any, transfer: Transferable[]): void;
                        (message: any, options?: StructuredSerializeOptions | undefined): void;
                    };
                    terminate: () => void;
                    addEventListener: {
                        <K extends keyof WorkerEventMap>(type: K, listener: (this: Worker, ev: WorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions | undefined): void;
                        (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void;
                    };
                    removeEventListener: {
                        <K_1 extends keyof WorkerEventMap>(type: K_1, listener: (this: Worker, ev: WorkerEventMap[K_1]) => any, options?: boolean | EventListenerOptions | undefined): void;
                        (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void;
                    };
                    dispatchEvent: (event: Event) => boolean;
                    onerror: ((this: AbstractWorker, ev: ErrorEvent) => any) | null;
                };
                readonly messageHandler: {
                    sourceName: any;
                    targetName: any;
                    comObj: any;
                    callbackId: number;
                    streamId: number;
                    streamSinks: any;
                    streamControllers: any;
                    callbackCapabilities: any;
                    actionHandler: any;
                    on: (actionName: any, handler: any) => void;
                    send: (actionName: string, data: JSON, transfers?: any[] | undefined) => void;
                    sendWithPromise: (actionName: string, data: JSON, transfers?: any[] | undefined) => Promise<any>;
                    sendWithStream: (actionName: string, data: JSON, queueingStrategy: Object, transfers?: any[] | undefined) => ReadableStream<any>;
                    destroy: () => void;
                };
                destroy: () => void;
            } | undefined;
            verbosity?: number | undefined;
            docBaseUrl?: string | undefined;
            cMapUrl?: string | undefined;
            cMapPacked?: boolean | undefined;
            CMapReaderFactory?: Object | undefined;
            iccUrl?: string | undefined;
            useSystemFonts?: boolean | undefined;
            standardFontDataUrl?: string | undefined;
            StandardFontDataFactory?: Object | undefined;
            wasmUrl?: string | undefined;
            WasmFactory?: Object | undefined;
            useWorkerFetch?: boolean | undefined;
            useWasm?: boolean | undefined;
            stopAtErrors?: boolean | undefined;
            maxImageSize?: number | undefined;
            isEvalSupported?: boolean | undefined;
            isOffscreenCanvasSupported?: boolean | undefined;
            isImageDecoderSupported?: boolean | undefined;
            canvasMaxAreaInBytes?: number | undefined;
            disableFontFace?: boolean | undefined;
            fontExtraProperties?: boolean | undefined;
            enableXfa?: boolean | undefined;
            ownerDocument?: HTMLDocument | undefined;
            disableRange?: boolean | undefined;
            disableStream?: boolean | undefined;
            disableAutoFetch?: boolean | undefined;
            pdfBug?: boolean | undefined;
            CanvasFactory?: Object | undefined;
            FilterFactory?: Object | undefined;
            enableHWA?: boolean | undefined;
        };
        readonly loadingTask: {
            docId: string;
            destroyed: boolean;
            onPassword: Function;
            onProgress: Function;
            readonly promise: {
                then: <TResult1_1 = PDFDocumentProxy, TResult2_1 = never>(onfulfilled?: ((value: PDFDocumentProxy) => TResult1_1 | PromiseLike<TResult1_1>) | null | undefined, onrejected?: ((reason: any) => TResult2_1 | PromiseLike<TResult2_1>) | null | undefined) => Promise<TResult1_1 | TResult2_1>;
                catch: <TResult_1 = never>(onrejected?: ((reason: any) => TResult_1 | PromiseLike<TResult_1>) | null | undefined) => Promise<PDFDocumentProxy | TResult_1>;
                finally: (onfinally?: (() => void) | null | undefined) => Promise<PDFDocumentProxy>;
                readonly [Symbol.toStringTag]: string;
            };
            destroy: () => Promise<void>;
            getData: () => Promise<Uint8Array>;
        };
        getFieldObjects: () => Promise<{
            [x: string]: Object[];
        } | null>;
        hasJSActions: () => Promise<boolean>;
        getCalculationOrderIds: () => Promise<string[] | null>;
    } | undefined;
    pagesContainerRef: HTMLElement | undefined;
    pageIndex: number;
    viewMode: ViewMode;
    scrollMode: ScrollMode;
    scale: number;
    targetScale: number;
    isScaling: boolean;
    rotation: number;
    isEditing: boolean;
}>;
export declare const SCALE_ROUND_VALUES: InjectionKey<ComputedRef<{
    scaleRoundX: string;
    scaleRoundY: string;
}>>;
export declare const VIEWER_PAGES_PER_ROW: InjectionKey<Ref<number, number>>;
export declare const TOOLBAR_OPTIONS: InjectionKey<Ref<ToolbarOptions | undefined, ToolbarOptions | undefined>>;
export declare const TOTAL_TOOL_OTHERS_MENU: InjectionKey<Ref<number, number>>;
export declare const IS_DARK: InjectionKey<Ref<boolean, boolean>>;
export declare const IS_MOBILE_VIEW: InjectionKey<Ref<boolean, boolean>>;
export declare const CONTAINER: InjectionKey<ShallowRef<HTMLDivElement | undefined, HTMLDivElement | undefined>>;
export declare const PAGES_CONTAINER: InjectionKey<ShallowRef<HTMLDivElement | undefined, HTMLDivElement | undefined>>;
export declare const ACTUAL_PDF_PAGES: InjectionKey<ShallowRef<ViewerPdfPage[], ViewerPdfPage[]>>;
export declare const FOCUSED_PAGE_NUMBER: InjectionKey<Ref<number, number>>;
export declare const ROTATION_DEGREE: InjectionKey<Ref<number, number>>;
export declare const PAGE_ROTATION_MAP: InjectionKey<Ref<Map<number, number>, Map<number, number>>>;
export declare const TOTAL_PAGE: InjectionKey<Ref<number, number>>;
export declare const INITIAL_TEXT_LAYER: InjectionKey<boolean>;
export declare const DOWNLOAD_FILE: InjectionKey<() => Promise<void>>;
export declare const LICENSE: InjectionKey<{
    invalidatedMessage?: string | undefined;
    isValidating: boolean;
    isValidated: boolean;
    isValidKey: boolean;
    type: LicenseType;
    product: LicenseProduct;
}>;
export declare const LICENSE_KEY: InjectionKey<ComputedRef<string | null | undefined>>;
export declare const HIGHLIGHT_OPTIONS: InjectionKey<ShallowRef<HighlightOptions, HighlightOptions>>;
export declare const PDF_PROPERTIES: InjectionKey<Ref<PdfProperties | undefined, PdfProperties | undefined>>;
export declare const SLOT_LOADER_IMAGE: InjectionKey<Slot<any> | undefined>;
export declare const SLOT_ICON_OPEN_FILE: InjectionKey<Slot<any> | undefined>;
export declare const SLOT_ICON_DOWNLOAD: InjectionKey<Slot<any> | undefined>;
export declare const SLOT_ICON_PRINT: InjectionKey<Slot<any> | undefined>;
export declare const SLOT_ICON_FULLSCREEN: InjectionKey<Slot<any> | undefined>;
export declare const HISTORY_MANAGER: InjectionKey<HistoryManager>;
export declare const HIGHLIGHT_MATCHES: InjectionKey<Ref<Record<string, FullMatchHighlightResult[]>, Record<string, FullMatchHighlightResult[]>>>;
type AnnotationKeys = {
    ANNOTATION_IMAGE_MANAGER: InjectionKey<AnnotationImageManager>;
    ENABLE_ANNOTATION_EDITOR: InjectionKey<Ref<boolean>>;
    ACTIVE_ANNOTATION: InjectionKey<Reactive<Record<keyof typeof AnnotationType, boolean>>>;
    ENABLE_ANNOTATION_IMAGE_EDITOR: InjectionKey<Ref<boolean>>;
    FREE_TEXT_FONT_COLORS: InjectionKey<Ref<AnnotationFreeTextFontColors>>;
    FREE_TEXT_FONT_SIZE_VALUES: InjectionKey<Ref<number[] | null>>;
    FREE_TEXT_CURRENT_COLOR: InjectionKey<Ref<string | null>>;
    FREE_TEXT_CURRENT_FONT_SIZE: InjectionKey<Ref<number | null>>;
    TEXT_SELECTION_OPTION: InjectionKey<Reactive<TextSelectionMenuOption | null>>;
    TEXT_SELECTION_DEFAULT_TOOL: InjectionKey<Ref<AnnotationTextSelectionType | null>>;
    TEXT_SELECTION_DEFAULT_HIGHLIGHT_COLORS: InjectionKey<Ref<AnnotationHighlightColors | null>>;
    TEXT_SELECTION_DEFAULT_UNDERLINE_COLORS: InjectionKey<Ref<AnnotationUnderlineColors | null>>;
    TEXT_SELECTION_DEFAULT_STRIKETHROUGH_COLORS: InjectionKey<Ref<AnnotationStrikethroughColors | null>>;
    TEXT_SELECTION_HIGHLIGHT_COLOR: InjectionKey<Ref<string | null>>;
    TEXT_SELECTION_UNDERLINE_COLOR: InjectionKey<Ref<string | null>>;
    TEXT_SELECTION_STRIKETHROUGH_COLOR: InjectionKey<Ref<string | null>>;
};
export declare const SYMBOL_ANNOTATION_KEYS: AnnotationKeys;
export declare const SYMBOL_INSTANCE_ID: InjectionKey<number>;
export declare const FUNC_GO_TO_PAGE: InjectionKey<(page: number) => void>;
export declare const LICENSE_DEFAULT: {
    isValidated: boolean;
    isValidating: boolean;
    isValidKey: boolean;
    licenseKey: null;
    type: LicenseType;
    product: LicenseProduct;
};
export declare const PDF_COMMENTS: InjectionKey<{
    comments: Map<number, import("./components").Comment[]>;
    repliedCommentPages: import("./components").PdfCommentPage[];
}>;
export declare const ANNOTATION_CANVAS_MAP: InjectionKey<Reactive<Map<string, HTMLCanvasElement>>>;
export declare const QUEUE_RENDER_TASK: InjectionKey<{
    enqueue: (id: string, data: RenderQueueItem, priority?: number) => void;
    dequeue: () => import("./utils/Queue").QueueItem<RenderQueueItem> | undefined;
    removeQueue: (id: string) => boolean;
    changePagePriority: (id: string | RegExp, newPriority: number) => boolean;
    readonly items: {
        id: string;
        priority: number;
        data: {
            page: {
                _pageIndex: any;
                _pageInfo: any;
                _transport: any;
                _stats: {
                    started: any;
                    times: any[];
                    time: (name: any) => void;
                    timeEnd: (name: any) => void;
                    toString: () => string;
                } | null;
                _pdfBug: boolean;
                commonObjs: {
                    get: (objId: string, callback?: Function | undefined) => any;
                    has: (objId: string) => boolean;
                    delete: (objId: string) => boolean;
                    resolve: (objId: string, data?: any) => void;
                    clear: () => void;
                    [Symbol.iterator]: () => Generator<any[], void, unknown>;
                };
                objs: {
                    get: (objId: string, callback?: Function | undefined) => any;
                    has: (objId: string) => boolean;
                    delete: (objId: string) => boolean;
                    resolve: (objId: string, data?: any) => void;
                    clear: () => void;
                    [Symbol.iterator]: () => Generator<any[], void, unknown>;
                };
                _intentStates: Map<any, any> & Omit<Map<any, any>, keyof Map<any, any>>;
                destroyed: boolean;
                recordedBBoxes: any;
                readonly pageNumber: number;
                readonly rotate: number;
                readonly ref: {
                    num: number;
                    gen: number;
                } | null;
                readonly userUnit: number;
                readonly view: number[];
                getViewport: ({ scale, rotation, offsetX, offsetY, dontFlip, }?: import("pdfjs-dist/types/src/display/api").GetViewportParameters | undefined) => import("pdfjs-dist/types/src/display/display_utils").PageViewport;
                getAnnotations: ({ intent }?: import("pdfjs-dist/types/src/display/api").GetAnnotationsParameters | undefined) => Promise<any[]>;
                getJSActions: () => Promise<Object>;
                readonly filterFactory: Object;
                readonly isPureXfa: boolean;
                getXfa: () => Promise<Object | null>;
                render: ({ canvasContext, canvas, viewport, intent, annotationMode, transform, background, optionalContentConfigPromise, annotationCanvasMap, pageColors, printAnnotationStorage, isEditing, recordOperations, operationsFilter, }: import("pdfjs-dist/types/src/display/api").RenderParameters) => import("pdfjs-dist/types/src/display/api").RenderTask;
                getOperatorList: ({ intent, annotationMode, printAnnotationStorage, isEditing, }?: import("pdfjs-dist/types/src/display/api").GetOperatorListParameters | undefined) => Promise<import("pdfjs-dist/types/src/display/api").PDFOperatorList>;
                streamTextContent: ({ includeMarkedContent, disableNormalization, }?: import("pdfjs-dist/types/src/display/api").getTextContentParameters | undefined) => ReadableStream<any>;
                getTextContent: (params?: import("pdfjs-dist/types/src/display/api").getTextContentParameters | undefined) => Promise<import("pdfjs-dist/types/src/display/api").TextContent>;
                getStructTree: () => Promise<import("pdfjs-dist/types/src/display/api").StructTreeNode>;
                cleanup: (resetStats?: boolean | undefined) => boolean;
                readonly stats: {
                    started: any;
                    times: any[];
                    time: (name: any) => void;
                    timeEnd: (name: any) => void;
                    toString: () => string;
                } | null;
            };
            canvasElem: HTMLCanvasElement;
            options: {
                canvas: HTMLCanvasElement | null;
                viewport: {
                    viewBox: number[];
                    userUnit: number;
                    scale: number;
                    rotation: number;
                    offsetX: number;
                    offsetY: number;
                    transform: number[];
                    width: number;
                    height: number;
                    readonly rawDims: Object;
                    clone: ({ scale, rotation, offsetX, offsetY, dontFlip, }?: import("pdfjs-dist/types/src/display/display_utils").PageViewportCloneParameters | undefined) => import("pdfjs-dist/types/src/display/display_utils").PageViewport;
                    convertToViewportPoint: (x: number, y: number) => any[];
                    convertToViewportRectangle: (rect: any[]) => any[];
                    convertToPdfPoint: (x: number, y: number) => any[];
                };
                canvasContext?: {
                    readonly canvas: HTMLCanvasElement;
                    getContextAttributes: () => CanvasRenderingContext2DSettings;
                    globalAlpha: number;
                    globalCompositeOperation: GlobalCompositeOperation;
                    drawImage: {
                        (image: CanvasImageSource, dx: number, dy: number): void;
                        (image: CanvasImageSource, dx: number, dy: number, dw: number, dh: number): void;
                        (image: CanvasImageSource, sx: number, sy: number, sw: number, sh: number, dx: number, dy: number, dw: number, dh: number): void;
                    };
                    beginPath: () => void;
                    clip: {
                        (fillRule?: CanvasFillRule | undefined): void;
                        (path: Path2D, fillRule?: CanvasFillRule | undefined): void;
                    };
                    fill: {
                        (fillRule?: CanvasFillRule | undefined): void;
                        (path: Path2D, fillRule?: CanvasFillRule | undefined): void;
                    };
                    isPointInPath: {
                        (x: number, y: number, fillRule?: CanvasFillRule | undefined): boolean;
                        (path: Path2D, x: number, y: number, fillRule?: CanvasFillRule | undefined): boolean;
                    };
                    isPointInStroke: {
                        (x: number, y: number): boolean;
                        (path: Path2D, x: number, y: number): boolean;
                    };
                    stroke: {
                        (): void;
                        (path: Path2D): void;
                    };
                    fillStyle: string | {
                        addColorStop: (offset: number, color: string) => void;
                    } | {
                        setTransform: (transform?: DOMMatrix2DInit | undefined) => void;
                    };
                    strokeStyle: string | {
                        addColorStop: (offset: number, color: string) => void;
                    } | {
                        setTransform: (transform?: DOMMatrix2DInit | undefined) => void;
                    };
                    createConicGradient: (startAngle: number, x: number, y: number) => CanvasGradient;
                    createLinearGradient: (x0: number, y0: number, x1: number, y1: number) => CanvasGradient;
                    createPattern: (image: CanvasImageSource, repetition: string | null) => CanvasPattern | null;
                    createRadialGradient: (x0: number, y0: number, r0: number, x1: number, y1: number, r1: number) => CanvasGradient;
                    filter: string;
                    createImageData: {
                        (sw: number, sh: number, settings?: ImageDataSettings | undefined): ImageData;
                        (imagedata: ImageData): ImageData;
                    };
                    getImageData: (sx: number, sy: number, sw: number, sh: number, settings?: ImageDataSettings | undefined) => ImageData;
                    putImageData: {
                        (imagedata: ImageData, dx: number, dy: number): void;
                        (imagedata: ImageData, dx: number, dy: number, dirtyX: number, dirtyY: number, dirtyWidth: number, dirtyHeight: number): void;
                    };
                    imageSmoothingEnabled: boolean;
                    imageSmoothingQuality: ImageSmoothingQuality;
                    arc: (x: number, y: number, radius: number, startAngle: number, endAngle: number, counterclockwise?: boolean | undefined) => void;
                    arcTo: (x1: number, y1: number, x2: number, y2: number, radius: number) => void;
                    bezierCurveTo: (cp1x: number, cp1y: number, cp2x: number, cp2y: number, x: number, y: number) => void;
                    closePath: () => void;
                    ellipse: (x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean | undefined) => void;
                    lineTo: (x: number, y: number) => void;
                    moveTo: (x: number, y: number) => void;
                    quadraticCurveTo: (cpx: number, cpy: number, x: number, y: number) => void;
                    rect: (x: number, y: number, w: number, h: number) => void;
                    roundRect: {
                        (x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | (number | DOMPointInit)[] | undefined): void;
                        (x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | Iterable<number | DOMPointInit> | undefined): void;
                    };
                    lineCap: CanvasLineCap;
                    lineDashOffset: number;
                    lineJoin: CanvasLineJoin;
                    lineWidth: number;
                    miterLimit: number;
                    getLineDash: () => number[];
                    setLineDash: {
                        (segments: number[]): void;
                        (segments: Iterable<number>): void;
                    };
                    clearRect: (x: number, y: number, w: number, h: number) => void;
                    fillRect: (x: number, y: number, w: number, h: number) => void;
                    strokeRect: (x: number, y: number, w: number, h: number) => void;
                    shadowBlur: number;
                    shadowColor: string;
                    shadowOffsetX: number;
                    shadowOffsetY: number;
                    restore: () => void;
                    save: () => void;
                    fillText: (text: string, x: number, y: number, maxWidth?: number | undefined) => void;
                    measureText: (text: string) => TextMetrics;
                    strokeText: (text: string, x: number, y: number, maxWidth?: number | undefined) => void;
                    direction: CanvasDirection;
                    font: string;
                    fontKerning: CanvasFontKerning;
                    textAlign: CanvasTextAlign;
                    textBaseline: CanvasTextBaseline;
                    getTransform: () => DOMMatrix;
                    resetTransform: () => void;
                    rotate: (angle: number) => void;
                    scale: (x: number, y: number) => void;
                    setTransform: {
                        (a: number, b: number, c: number, d: number, e: number, f: number): void;
                        (transform?: DOMMatrix2DInit | undefined): void;
                    };
                    transform: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
                    translate: (x: number, y: number) => void;
                    drawFocusIfNeeded: {
                        (element: Element): void;
                        (path: Path2D, element: Element): void;
                    };
                } | undefined;
                intent?: string | undefined;
                annotationMode?: number | undefined;
                transform?: any[] | undefined;
                background?: string | {
                    addColorStop: (offset: number, color: string) => void;
                } | {
                    setTransform: (transform?: DOMMatrix2DInit | undefined) => void;
                } | undefined;
                pageColors?: Object | undefined;
                optionalContentConfigPromise?: {
                    then: <TResult1 = import("pdfjs-dist/types/src/display/optional_content_config").OptionalContentConfig, TResult2 = never>(onfulfilled?: ((value: import("pdfjs-dist/types/src/display/optional_content_config").OptionalContentConfig) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined) => Promise<TResult1 | TResult2>;
                    catch: <TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | null | undefined) => Promise<import("pdfjs-dist/types/src/display/optional_content_config").OptionalContentConfig | TResult>;
                    finally: (onfinally?: (() => void) | null | undefined) => Promise<import("pdfjs-dist/types/src/display/optional_content_config").OptionalContentConfig>;
                    readonly [Symbol.toStringTag]: string;
                } | undefined;
                annotationCanvasMap?: (Map<string, HTMLCanvasElement> & Omit<Map<string, HTMLCanvasElement>, keyof Map<any, any>>) | undefined;
                printAnnotationStorage?: {
                    readonly serializable: {
                        map: any;
                        hash: any;
                        transfer: any;
                    };
                    readonly modifiedIds: any;
                    onSetModified: any;
                    onResetModified: any;
                    onAnnotationEditor: any;
                    getValue: (key: string, defaultValue: Object) => Object;
                    getRawValue: (key: string) => Object;
                    remove: (key: string) => void;
                    setValue: (key: string, value: Object) => void;
                    has: (key: string) => boolean;
                    readonly size: number;
                    resetModified: () => void;
                    readonly print: any;
                    readonly editorStats: any;
                    resetModifiedIds: () => void;
                    updateEditor: (annotationId: any, data: any) => boolean;
                    getEditor: (annotationId: any) => any;
                    [Symbol.iterator]: () => MapIterator<[any, any]>;
                } | undefined;
                isEditing?: boolean | undefined;
                recordOperations?: boolean | undefined;
                operationsFilter?: import("pdfjs-dist/types/src/display/api").OperationsFilter | undefined;
            };
            onLoaded?: ((renderTask: import("pdfjs-dist/types/src/display/api").RenderTask) => void) | undefined;
            onError?: ((error: Error) => void) | undefined;
            onComplete?: (() => void) | undefined;
        };
    }[];
    peekAll: () => import("./utils/Queue").QueueItem<RenderQueueItem>[];
    isEmpty: () => boolean;
    size: () => number;
    clear: () => void;
}>;
export declare const PDF_CANVAS_TRACKER: InjectionKey<{
    hasPageBeenRendered: (pageIndex: number) => boolean;
    markPageAsRendered: (pageIndex: number) => void;
}>;
export declare const SUPPORTED_IMAGE_MIME_TYPES: readonly ["image/apng", "image/avif", "image/bmp", "image/gif", "image/jpeg", "image/png", "image/svg+xml", "image/webp", "image/x-icon"];
export declare const PIXELS_PER_INCH: {
    CSS: number;
    PDF: number;
    PDF_TO_CSS_UNITS: number;
};
export {};
