import { AfterViewInit, OnDestroy } from '@angular/core'; import { ActionSheetController } from '@ionic/angular'; import { GcPdfViewer } from '@mescius/dspdfviewer'; import { UofxFileModel } from '@uofx/app-components/file-helper'; import { UofxI18NService } from '@uofx/core'; import { UofxWatermarkSettingModel } from '../api/pdf.model'; import { UofxPdfLogic } from '../logic/pdf.logic'; import * as i0 from "@angular/core"; export declare class UofxFullscreenViewerDialog implements AfterViewInit, OnDestroy { private pdfLogic; private actionSheetCtrl; private i18n; /** 檢視器標題(如果未填,會顯示file.fileName) */ title: string; /** PDF浮水印相關設定 */ watermarkSetting: UofxWatermarkSettingModel; /** 是否允許viewer內點擊下載檔案 */ enabledDownloadPdf: boolean; /** 要檢視的PDF檔案 */ file: UofxFileModel; /** 是否直接將取得的pdf丟進viewer打開,不再需要經過加密動作 */ simpleOpen: boolean; /** simpleOpen時,是否套用浮水印設定 */ simpleOpenWithWatermark: boolean; /** * 下載url(file:綁token的下載url、img:原始檔案url), * 欄位是前端用,未在 UofxFileModel裡,所以另外傳入。 */ downloadUrl: string; /** 是否可以編輯,可編輯時才可下載原始檔 */ editable: boolean; /** 是否允許下載原始檔 (editable大多是用來給表單相關的判斷,跟allowDownloadFile的使用情境還是有些不同,暫時兩個flag共存) */ allowDownloadFile: boolean; /** 文件檢視器物件 */ viewer: GcPdfViewer; /** openPdfStatus$ 的訂閱 */ private openPdfStatusSub$; /** pdf是否讀取中 */ isLoading: boolean; /** * 顯示GcPdfViewer的html element id * - * 產生一個GcPdfViewer只能認一組id,所以不能將此id寫死 */ viewerHtmlId: string; constructor(pdfLogic: UofxPdfLogic, actionSheetCtrl: ActionSheetController, i18n: UofxI18NService); ngAfterViewInit(): void; ngOnDestroy(): void; /** * 開啟viewer * - * 有三條路: * 1. 正常開啟 (加密、吃浮水印) * 2. simpleOpen (不加密、不吃浮水印) * 3. simpleOpenWithWatermark (不加密、吃浮水印) */ openViewer(): void; /** 點按右上角 [更多] 按鈕 */ onMoreBtnClick(): Promise; /** 右上角 [更多] 按鈕 */ setMoreItemButtons(): any[]; /** 開啟pdf狀態的subject訂閱 */ private initOpenPdfStatusSub; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }