import { ElementRef, EventEmitter, Injector, OnInit } from '@angular/core';
import { DeviceDetectorService } from 'ngx-device-detector';
import { ConfirmationService, MessageService } from 'tn-custom-primeng/api';
import { Sidebar } from 'tn-custom-primeng/sidebar';
import { ComponentBase } from '../../../classes/base/component-base';
import { AuthenService } from '../../../services/authen.service';
import { CustomRouterService } from '../../../services/custom-router.service';
import { ModuleConfigService } from '../../../services/module-config.service';
import { NotifierService } from '../../../services/notifier.service';
import { TnClientService } from '../../../services/tn-client.service';
import { GenerateLinkDownloadDTO } from '../models/generate-link-download-dto';
import { DownloadLinkService } from '../services/download-link.service';
import { FileExplorerService } from '../services/file-explorer.service';
import { FileObjectService } from '../services/file-object.service';
import { FileVersionService } from '../services/file-version.service';
import { FolderService } from '../services/folder.service';
export declare class FileViewerComponent extends ComponentBase implements OnInit {
    private _moduleConfigService;
    private _elementRef;
    private _authenService;
    private _fileExplorerService;
    private _messageService;
    private _notifierService;
    private _confirmService;
    private _tnClientService;
    private _fileVersionService;
    private _customRouterService;
    _deviceDetectorService: DeviceDetectorService;
    private _fileObjectService;
    private _downloadLinkService;
    private _folderService;
    protected _injector: Injector;
    sidebar: Sidebar;
    model: any;
    readonly: boolean;
    showPrint: boolean;
    showDownload: boolean;
    showDelete: boolean;
    onClose: EventEmitter<any>;
    onRename: EventEmitter<any>;
    onDelete: EventEmitter<any>;
    private _moduleConfig;
    data: any;
    show: boolean;
    isReadonly: boolean;
    fileTypes: {
        IMAGE: string;
        VIDEO: string;
        AUDIO: string;
        TEXT: string;
        SPREADSHEET: string;
        PRESENTATION: string;
        OTHER: string;
        PDF: string;
    };
    renameFileForm: any;
    private _translateService;
    constructor(_moduleConfigService: ModuleConfigService, _elementRef: ElementRef, _authenService: AuthenService, _fileExplorerService: FileExplorerService, _messageService: MessageService, _notifierService: NotifierService, _confirmService: ConfirmationService, _tnClientService: TnClientService, _fileVersionService: FileVersionService, _customRouterService: CustomRouterService, _deviceDetectorService: DeviceDetectorService, _fileObjectService: FileObjectService, _downloadLinkService: DownloadLinkService, _folderService: FolderService, _injector: Injector);
    ngOnInit(): void;
    init(): Promise<void>;
    getDetail(): Promise<void>;
    showFile(): void;
    getGenerateDownloadLinkModel(): GenerateLinkDownloadDTO;
    showImageWhenLoaded(): void;
    processShowImage(url: string): void;
    processVideoOrAudio(url: string): void;
    processFilePdf(url: string): void;
    processOtherFileExtension(url: string): void;
    initDocumentViewer(fileExtension: any, fileType: any, fileUrl: any): void;
    initForm(): void;
    getOrientation(imageUrl: any, callback: any): Promise<void>;
    getBase64(blob: any, orientation: any): Promise<void>;
    resetOrientation(srcBase64: any, srcOrientation: any, callback: any): void;
    onTopbarItemClick(event: any): void;
    closeSidebar(event?: any): void;
    print(): void;
    download(): void;
    deleteFile(): void;
    renameFile(): void;
    onSavedRenameFile(): Promise<void>;
    onCancelRenameFile(): void;
    editFile(): void;
    tryConnectToClient(): void;
    isDesktop(): boolean;
    isFileType(type: any): boolean;
    getStyleClassByDocumentType(docType: any): string;
}
//# sourceMappingURL=file-viewer.component.d.ts.map