import { LitElement, PropertyValueMap } from 'lit';
import { Ref } from 'lit/directives/ref.js';
import { PDFDocumentProxy } from 'pdfjs-dist';
import { EventBus, GenericL10n, PDFHistory, PDFLinkService, PDFViewer } from 'pdfjs-dist/web/pdf_viewer.mjs';
import { WeavyProps } from '../types/weavy.types';
import { ShadowPartsController } from '../controllers/shadow-parts-controller';
type pdfjsLibType = typeof import("pdfjs-dist");
type pdfjsViewerType = typeof import("pdfjs-dist/web/pdf_viewer.mjs");
/**
 * PDF Viewer component based on pdfjs examples
 *
 * @see https://github.com/mozilla/pdf.js/blob/master/examples/mobile-viewer
 * @see https://github.com/mozilla/pdf.js/blob/master/examples/components/
 */
export default class WyPdfViewer extends LitElement {
    static styles: import('lit').CSSResult[];
    protected exportParts: ShadowPartsController;
    private weavy?;
    whenPdfjsResolve?: (value: {
        pdfjsLib: pdfjsLibType;
        pdfjsViewer: pdfjsViewerType;
    }) => void;
    whenPdfjs: Promise<{
        pdfjsLib: pdfjsLibType;
        pdfjsViewer: pdfjsViewerType;
    }>;
    pdfjsLib?: pdfjsLibType;
    pdfjsViewer?: pdfjsViewerType;
    MAX_CANVAS_PIXELS: number;
    TEXT_LAYER_MODE: number;
    MAX_IMAGE_SIZE: number;
    CMAP_URL?: URL;
    CMAP_PACKED: boolean;
    DEFAULT_SCALE_DELTA: number;
    MIN_SCALE: number;
    MAX_SCALE: number;
    DEFAULT_SCALE_VALUE: string;
    ENABLE_XFA: boolean;
    DEFAULT_WORKER_URL: string;
    WORKER_URL?: URL;
    src: string;
    pageNumberRef: Ref<HTMLInputElement>;
    totalPagesRef: Ref<HTMLSpanElement>;
    zoomLevelRef: Ref<HTMLInputElement>;
    viewerContainerRef: Ref<HTMLDivElement>;
    pdfDocument?: PDFDocumentProxy;
    l10n?: GenericL10n;
    pdfHistory?: PDFHistory;
    pdfViewer?: PDFViewer;
    pdfEventBus?: EventBus;
    pdfLinkService?: PDFLinkService;
    private pdfLoadingTask?;
    private open;
    private close;
    private pdfViewError;
    setPage(pageNumber: number): void;
    zoomIn(ticks: number): void;
    zoomOut(ticks: number): void;
    setScale(scale: number | string): void;
    updatePage(): void;
    select(e: Event): void;
    fitToPage(): void;
    fitToWidth(): void;
    updateZoom(): void;
    willUpdate(changedProperties: PropertyValueMap<this & WeavyProps>): Promise<void>;
    update(changedProperties: PropertyValueMap<this & WeavyProps>): void;
    updated(): Promise<void>;
    render(): import('../../node_modules/lit-html/node/lit-html.js').TemplateResult<1>;
    disconnectedCallback(): void;
}
export {};
//# sourceMappingURL=wy-pdf-viewer.d.ts.map