import { RendererFactory2 } from '@angular/core'; import { Subject } from 'rxjs'; import { EditorAnnotation } from './options/editor-annotations'; import { PdfLayer } from './options/optional_content_config'; import { PDFPrintRange } from './options/pdf-print-range'; import * as i0 from "@angular/core"; export interface FindOptions { highlightAll?: boolean; matchCase?: boolean; wholeWords?: boolean; matchDiacritics?: boolean; } export interface PDFExportScaleFactor { width?: number; height?: number; scale?: number; } type DirectionType = 'ltr' | 'rtl' | 'both' | undefined; export interface PdfImageParameters { urlOrDataUrl: string; page?: number; left?: number | string; bottom?: number | string; right?: number | string; top?: number | string; rotation?: 0 | 90 | 180 | 270; } export interface Line { x: number; y: number; width: number; height: number; direction: DirectionType; text: string; } export interface Section { x: number; y: number; width: number; height: number; direction: DirectionType; lines: Array; } export declare class NgxExtendedPdfViewerService { private rendererFactory; ngxExtendedPdfViewerInitialized: boolean; recalculateSize$: Subject; secondaryMenuIsEmpty: boolean; private renderer; constructor(rendererFactory: RendererFactory2); find(text: string, options?: FindOptions): boolean; findNext(): boolean; findPrevious(): boolean; print(printRange?: PDFPrintRange): void; removePrintRange(): void; setPrintRange(printRange: PDFPrintRange): void; filteredPageCount(pageCount: number, range: PDFPrintRange): number; isInPDFPrintRange(pageIndex: number, printRange: PDFPrintRange): boolean; getPageAsLines(pageNumber: number): Promise>; getPageAsText(pageNumber: number): Promise; private convertTextInfoToText; getPageAsImage(pageNumber: number, scale: PDFExportScaleFactor, background?: string, backgroundColorToReplace?: string): Promise; private draw; private getPageDrawContext; getCurrentDocumentAsBlob(): Promise; getFormData(currentFormValues?: boolean): Promise>; /** * Adds a page to the rendering queue * @param {number} pageIndex Index of the page to render * @returns {boolean} false, if the page has already been rendered * or if it's out of range */ addPageToRenderQueue(pageIndex: number): boolean; isRenderQueueEmpty(): boolean; hasPageBeenRendered(pageIndex: number): boolean; private sleep; renderPage(pageIndex: number): Promise; currentlyRenderedPages(): Array; numberOfPages(): number; getCurrentlyVisiblePageNumbers(): Array; recalculateSize(): void; listLayers(): Promise | undefined>; toggleLayer(layerId: string): Promise; scrollPageIntoView(pageNumber: number, pageSpot?: { top?: number | string; left?: number | string; }): void; getSerializedAnnotations(): EditorAnnotation[] | null; addEditorAnnotation(serializedAnnotation: string | EditorAnnotation): void; removeEditorAnnotations(filter?: (serialized: object) => boolean): void; private loadImageAsDataURL; addImageToAnnotationLayer({ urlOrDataUrl, page, left, bottom, right, top, rotation }: PdfImageParameters): Promise; currentPageIndex(): number; private convertToPDFCoordinates; switchAnnotationEdtorMode(mode: number): void; set editorFontSize(size: number); set editorFontColor(color: string); set editorInkColor(color: string); set editorInkOpacity(opacity: number); set editorInkThickness(thickness: number); set editorHighlightColor(color: string); set editorHighlightDefaultColor(color: string); set editorHighlightShowAll(showAll: boolean); set editorHighlightThickness(thickness: number); setEditorProperty(editorPropertyType: number, value: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } export {};