import { OnDestroy, OnInit, OnChanges, SimpleChanges, ChangeDetectorRef } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { TranslateService } from '@ngx-translate/core';
import { PdfJsViewerComponent } from 'ng2-pdfjs-viewer';
import { UxAppShellService } from '@eui/core';
import { UxDocumentViewerConfig } from './models/ux-document-viewer.config.model';
import * as i0 from "@angular/core";
export declare class UxDocumentViewerComponent implements OnInit, OnChanges, OnDestroy {
    protected httpClient: HttpClient;
    protected cdRef: ChangeDetectorRef;
    protected translateService: TranslateService;
    protected asService: UxAppShellService;
    viewer: PdfJsViewerComponent;
    documentSrc: string;
    viewerWidth: string;
    viewerHeight: string;
    startPage: number;
    startZoom: 'auto' | 'page-width' | 'page-height' | 'page-fit';
    isPrintable: boolean;
    isDownloadable: boolean;
    isOpenable: boolean;
    e2eAttr: string;
    viewerFolder: string;
    config: UxDocumentViewerConfig;
    documentBlob: Blob;
    language: string;
    private languageSubscription;
    constructor(uxDocumentViewerConfig: UxDocumentViewerConfig, httpClient: HttpClient, cdRef: ChangeDetectorRef, translateService: TranslateService, asService: UxAppShellService);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngOnDestroy(): void;
    /**
     * If the URL is passed to PDFjs directly, the library is included in an iframe and does its own XMLHttpRequest
     * calls, it is a problem to intercept those calls to enrich them with OpenID headers. In case of Linearized PDF
     * documents there is also a lot of calls to the back-end, requesting partial content. This means every viewed
     * document would need potentially dozens of calls to get the header data and then the content as people scroll
     * up and down.
     * As a temporary solution, until something more robust is provided, the document is loaded up front and the
     * blob is passed to the library.
     */
    loadDocument(): void;
    resetLanguage(language: string): void;
    static ɵfac: i0.ɵɵFactoryDef<UxDocumentViewerComponent, [{ optional: true; }, null, null, null, null]>;
    static ɵcmp: i0.ɵɵComponentDefWithMeta<UxDocumentViewerComponent, "ux-document-viewer", never, { "documentSrc": "documentSrc"; "viewerWidth": "viewerWidth"; "viewerHeight": "viewerHeight"; "startPage": "startPage"; "startZoom": "startZoom"; "isPrintable": "isPrintable"; "isDownloadable": "isDownloadable"; "isOpenable": "isOpenable"; "e2eAttr": "e2eAttr"; "viewerFolder": "viewerFolder"; }, {}, never, never>;
}
