import { HttpClient } from '@angular/common/http';
import { ElementRef } from '@angular/core';
import { ResponseResult } from '../../../models/response-result';
import { AuthenService } from '../../../services/authen.service';
import { CommonService } from '../../../services/common.service';
import { ModuleConfigService } from '../../../services/module-config.service';
import { CopyFileDto } from '../models/copy-file-dto';
import { FolderCreateAndSetPermissionDTO } from '../models/folder-create-and-set-permission-dto';
import { GenerateLinkDownloadDTO } from '../models/generate-link-download-dto';
import { MoveFileDTO } from '../models/move-file-dto';
import { ServiceRequestModel } from '../models/service-request-model';
import { ShareFileDTO } from '../models/share-file-dto';
import { ShareFolderDTO } from '../models/share-folder-dto';
import { NotifierService } from '../../../services/notifier.service';
export declare class FileExplorerService {
    private _http;
    private _authenService;
    private _commonSerivce;
    private _moduleConfigService;
    private _notifierService;
    readonly RETRY_COUNT: number;
    readonly REPLAY_COUNT: number;
    private _serviceUri;
    _documentServerUrl: any;
    constructor(_http: HttpClient, _authenService: AuthenService, _commonSerivce: CommonService, _moduleConfigService: ModuleConfigService, _notifierService: NotifierService);
    getMyFiles(): Promise<ResponseResult>;
    getServiceFolderId(model: ServiceRequestModel): Promise<ResponseResult>;
    deleteServiceFolder(model: ServiceRequestModel): Promise<ResponseResult>;
    getByFolderId(folderId: string): Promise<ResponseResult>;
    getMyDrive(folderId: string): Promise<ResponseResult>;
    getMyShare(userId: number): Promise<ResponseResult>;
    getMyShareToOther(ownerId: number): Promise<ResponseResult>;
    getFolderTree(folderId: string): Promise<ResponseResult>;
    copyFile(copyFileDto: CopyFileDto): Promise<ResponseResult>;
    convertDocumentToPdfAndSave(copyFileDto: CopyFileDto): Promise<ResponseResult>;
    createNewFolder(folder: FolderCreateAndSetPermissionDTO): Promise<ResponseResult>;
    deleteFolder(folderId: string): Promise<ResponseResult>;
    deleteMultipleFolder(folderIds: any): Promise<ResponseResult>;
    renameFolder(folderId: string, newFolderName: string): Promise<ResponseResult>;
    shareFolder(shareFolder: ShareFolderDTO): Promise<ResponseResult>;
    deleteShareFolder(folderId: string, objectId: string): Promise<ResponseResult>;
    getUploadUrl(): string;
    getServiceCreateFile(): string;
    checkPhysicalFile(fileId: string): Promise<ResponseResult>;
    getFileDownloadUrl(fileId: string): string;
    getBinaryFileByFileId(fileId: string): Promise<any>;
    getScanFileUploadEndpoint(correlationId: string): string;
    getFile(fileId: string): Promise<ResponseResult>;
    getBase64FromFileId(fileId: string, isFileVersion?: boolean): Promise<string>;
    getBase64ImageFromUrl(imageUrl: any): Promise<string>;
    getBase64FromFileIdToUrl(fileId: string, isFileVersion?: boolean): Promise<string>;
    getFileVersionDownloadUrl(fileVersionId: string): string;
    getAnonymousDownloadUrl(hash: string): string;
    generateLinkDownload(model: GenerateLinkDownloadDTO): Promise<ResponseResult>;
    downloadFile(fileId: string, isFileVersion?: boolean, fileName?: any): void;
    /**
     * Save file tải từ server với tên được truyền vào, cho phép lưu cả audio, video.
     */
    saveWithFileName(url: any, fileName: any): void;
    generateLinkDownloadMultiple(model: GenerateLinkDownloadDTO[]): Promise<ResponseResult>;
    downloadFolder(folderId: string): void;
    getBinaryFile(linkDownload: string): Promise<Object>;
    setMoveFileItem(moveFile: MoveFileDTO): Promise<ResponseResult>;
    deleteFile(fileId: string): Promise<ResponseResult>;
    deleteMultipleFile(fileIds: any): Promise<ResponseResult>;
    renameFile(fileId: string, newFileName: string): Promise<ResponseResult>;
    shareFile(shareFile: ShareFileDTO): Promise<ResponseResult>;
    deleteShareFile(fileId: string, objectId: string): Promise<ResponseResult>;
    getSharedFiles(folderId?: string): Promise<ResponseResult>;
    getUserSharingByFile(fileId: string): Promise<ResponseResult>;
    getFolderId(userId: string): Promise<ResponseResult>;
    needConvertBeforeSign(fileName: string): boolean;
    changeFileExtension(fileName: string, newExtension: string): string;
    isSupportedViewOnline(fileName: string): boolean;
    getFileType(fileName: string): string;
    convertToPdf(fileName: string, fileId: string, isFileVersion: boolean): Promise<any>;
    print(data: any): void;
    downloadByIframe(_elementRef: ElementRef, fileId: any): void;
    handleError(error: any): Promise<never>;
    supportDigitalSignature(fileName: string): boolean;
    saveSignedFile(data: any): Promise<ResponseResult>;
    kySimSaveSignedFile(data: any): Promise<ResponseResult>;
    getSignatureInfoByFileId(fileId: string): Promise<ResponseResult>;
    getSignatureInfoByFileVersionId(fileVersionId: string): Promise<ResponseResult>;
    getUploadFileVersionApiUrl(): string;
    getRemoveFileVersionApiUrl(): string;
    downloadFileByServiceRequestModel(serviceRequestModel: any): string;
    getImageFileBase64(fileId: string, extension?: string, width?: number, height?: number): Promise<any>;
    /**
     * Lấy file bằng bộ 3 key: service, entity, entityInstanceId
     */
    getSingleServiceFile(serviceRequestModel: any): Promise<ResponseResult>;
    getServiceFileExplorer(serviceCode: string, entity: string, entityKey: string): Promise<ResponseResult>;
    createServiceFile(serviceFileObjectDTO: FormData): Promise<ResponseResult>;
    createServiceFileAnonymous(serviceFileObjectDTO: FormData): Promise<ResponseResult>;
}
//# sourceMappingURL=file-explorer.service.d.ts.map