import { HttpClient } from 'aurelia-fetch-client';
import { Router } from 'aurelia-router';
import { DialogController } from "aurelia-dialog";
import { Config } from '../../../config';
import { RemoteFileStorage } from '../../../services/file-storage-service';
type FilePreviewerModel = {
    fileExtension: string;
    fileUrl: string;
    fileName?: string;
    isBlob?: boolean;
};
export declare class FilePreviewer {
    private dialogController;
    private router;
    private config;
    private httpClient;
    private fileStorageService;
    private loadTimeout;
    private iframeRef;
    private originalUrl;
    private fileName;
    private model;
    private timer;
    private isLoading;
    private canDownloadFiles;
    private isBlob;
    constructor(dialogController: DialogController, router: Router, config: Config, httpClient: HttpClient, fileStorageService: RemoteFileStorage.Service);
    activate(model: FilePreviewerModel): Promise<void>;
    attached(): void;
    detached(): void;
    private loadIframe;
    private markIframeLoaded;
    private get isPictureOrGif();
    private get isOther();
    private get isOffice();
    private get isNotSupported();
    private get isFromLocalStorage();
    private getUrlFrame;
    download(): Promise<void>;
}
export {};
