import { AfterContentInit, ElementRef, EventEmitter, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import { BehaviorSubject, Observable } from 'rxjs';
import { Store } from '@ngrx/store';
import { PdfJsWrapperFactory } from './pdf-js/pdf-js-wrapper.provider';
import { AnnotationSet } from '../../annotations/annotation-set/annotation-set.model';
import { ToolbarEventService } from '../../toolbar/toolbar-event.service';
import { PrintService } from '../../print.service';
import { ResponseType, ViewerException } from '../viewer-exception.model';
import { ToolbarButtonVisibilityService } from '../../toolbar/toolbar-button-visibility.service';
import { Outline } from './side-bar/outline-item/outline.model';
import * as fromStore from '../../store/reducers/reducers';
import { IcpState } from '../../icp/icp.interfaces';
import { ViewerEventService } from '../viewer-event.service';
import { IcpService } from '../../icp/icp.service';
import { IcpEventService } from '../../toolbar/icp-event.service';
import * as i0 from "@angular/core";
export declare class PdfViewerComponent implements AfterContentInit, OnChanges, OnDestroy {
    private store;
    private icpStore;
    private readonly pdfJsWrapperFactory;
    private readonly printService;
    readonly toolbarEvents: ToolbarEventService;
    private readonly viewerEvents;
    private icpService;
    readonly toolbarButtons: ToolbarButtonVisibilityService;
    private readonly icpEventService;
    mediaLoadStatus: EventEmitter<ResponseType>;
    pdfViewerException: EventEmitter<ViewerException>;
    documentTitle: EventEmitter<string>;
    downloadUrl: string;
    url: string;
    downloadFileName: string;
    enableAnnotations: boolean;
    enableRedactions: boolean;
    enableICP: boolean;
    annotationSet: AnnotationSet | null;
    enableRedactSearch: AnnotationSet | null;
    height: string;
    pageHeights: any[];
    rotation: number;
    zoom: number;
    caseId: string;
    highlightMode: Observable<boolean>;
    drawMode: BehaviorSubject<boolean>;
    documentOutline: Outline[];
    loadingDocument: boolean;
    loadingDocumentProgress: number;
    errorMessage: string;
    hasDifferentPageSize: boolean;
    viewerContainer: ElementRef<HTMLDivElement>;
    pdfViewer: ElementRef<HTMLDivElement>;
    private pdfWrapper;
    private $subscription;
    private viewerException;
    showCommentsPanel: boolean;
    showIcpParticipantsList: boolean;
    enableGrabNDrag: boolean;
    constructor(store: Store<fromStore.AnnotationSetState>, icpStore: Store<IcpState>, pdfJsWrapperFactory: PdfJsWrapperFactory, printService: PrintService, toolbarEvents: ToolbarEventService, viewerEvents: ViewerEventService, icpService: IcpService, toolbarButtons: ToolbarButtonVisibilityService, icpEventService: IcpEventService);
    ngAfterContentInit(): Promise<void>;
    ngOnChanges(changes: SimpleChanges): Promise<void>;
    resetRotation(): void;
    ngOnDestroy(): void;
    private loadDocument;
    private onDocumentLoadProgress;
    private onDocumentLoaded;
    private onDocumentLoadFailed;
    private updatePages;
    set searchBarHidden(hidden: boolean);
    toggleCommentsSummary(): void;
    private rotateDocument;
    private initDocumentProgress;
    private setZoom;
    private stepZoom;
    setPageHeights(): void;
    calculateZoomValue(zoomValue: any, increment?: number): number;
    private goToDestination;
    private goToDestinationICP;
    getCurrentPageNumber(): number;
    static ɵfac: i0.ɵɵFactoryDeclaration<PdfViewerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<PdfViewerComponent, "mv-pdf-viewer", never, { "downloadUrl": { "alias": "downloadUrl"; "required": false; }; "url": { "alias": "url"; "required": false; }; "downloadFileName": { "alias": "downloadFileName"; "required": false; }; "enableAnnotations": { "alias": "enableAnnotations"; "required": false; }; "enableRedactions": { "alias": "enableRedactions"; "required": false; }; "enableICP": { "alias": "enableICP"; "required": false; }; "annotationSet": { "alias": "annotationSet"; "required": false; }; "enableRedactSearch": { "alias": "enableRedactSearch"; "required": false; }; "height": { "alias": "height"; "required": false; }; "caseId": { "alias": "caseId"; "required": false; }; "searchBarHidden": { "alias": "searchBarHidden"; "required": false; }; }, { "mediaLoadStatus": "mediaLoadStatus"; "pdfViewerException": "pdfViewerException"; "documentTitle": "documentTitle"; }, never, never, false, never>;
}
//# sourceMappingURL=pdf-viewer.component.d.ts.map