import { ElementRef, EnvironmentInjector, EventEmitter, Injector, OnDestroy, OnInit } from '@angular/core';
import { PreviewService, ThemeService } from '../services';
import { AutoThemeConfig, PreviewEvent, PreviewFileInput, ThemeMode } from '../types';
import * as i0 from "@angular/core";
export declare class PreviewDirective implements OnInit, OnDestroy {
    private previewService;
    private themeService;
    private injector;
    private envInjector;
    private elementRef;
    fileInput: PreviewFileInput;
    previewIndex: number;
    trigger: string;
    private _themeMode;
    get themeMode(): ThemeMode;
    set themeMode(value: ThemeMode);
    autoConfig?: AutoThemeConfig;
    private _lang;
    get lang(): string;
    set lang(value: string);
    previewEvent: EventEmitter<PreviewEvent>;
    t(key: string, ...args: (string | number)[]): string;
    private destroy$;
    private element;
    private longPressTimer;
    private isLongPressing;
    constructor(previewService: PreviewService, themeService: ThemeService, injector: Injector, envInjector: EnvironmentInjector, elementRef: ElementRef);
    ngOnInit(): void;
    private setupTriggers;
    private preview;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<PreviewDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<PreviewDirective, "[ngxFilePreview]", never, { "fileInput": { "alias": "ngxFilePreview"; "required": false; }; "previewIndex": { "alias": "previewIndex"; "required": false; }; "trigger": { "alias": "trigger"; "required": false; }; "themeMode": { "alias": "themeMode"; "required": false; }; "autoConfig": { "alias": "autoConfig"; "required": false; }; "lang": { "alias": "lang"; "required": false; }; }, { "previewEvent": "previewEvent"; }, never, never, true, never>;
}
