import { ElementRef, Injector, OnDestroy, OnInit } from '@angular/core';
import { AbstractControl, FormControl, FormGroup, ValidationErrors, ValidatorFn } from '@angular/forms';
import { MatDialog } from '@angular/material/dialog';
import { OSafePipe } from '../../pipes/o-safe.pipe';
import { FormValueOptions } from '../../types';
import { OFormControl } from '../input/o-form-control.class';
import { OFormDataComponent } from '../o-form-data-component.class';
import * as i0 from "@angular/core";
export declare const DEFAULT_INPUTS_O_IMAGE: string[];
export declare class OImageComponent extends OFormDataComponent implements OnInit, OnDestroy {
    acceptFileType: string;
    maxFileSize: number;
    emptyimage: string;
    notfoundimage: string;
    emptyicon: string;
    height: string;
    autoFit: boolean;
    currentFileName: string;
    protected showControls: boolean;
    set fullScreenButton(val: boolean);
    get fullScreenButton(): boolean;
    protected _fullScreenButton: boolean;
    protected fileInput: ElementRef;
    protected _useEmptyIcon: boolean;
    protected _useEmptyImage: boolean;
    protected oSafe: OSafePipe;
    protected dialog: MatDialog;
    stateCtrl: FormControl;
    src: string;
    constructor(elRef: ElementRef, injector: Injector);
    ngOnInit(): void;
    ngOnDestroy(): void;
    ensureOFormValue(val: any): void;
    isEmpty(): boolean;
    createFormControl(cfg?: {
        value: any;
        disabled: boolean;
    }, validators?: ValidatorFn[]): OFormControl;
    fileChange(input: any): void;
    notFoundImageUrl(event: any): any;
    private getSrcValue;
    onClickBlocker(evt: Event): void;
    onClickClearValue(e: Event): void;
    hasControls(): boolean;
    useEmptyIcon(): boolean;
    useEmptyImage(): boolean;
    getFormGroup(): FormGroup;
    get hostHeight(): string;
    openFullScreen(e?: Event): void;
    openFileSelector(e?: Event): void;
    internalFormControl(): string;
    resolveValidators(): ValidatorFn[];
    setValue(val: any, options?: FormValueOptions, setDirty?: boolean): void;
    protected maxFileSizeValidator(control: AbstractControl): ValidationErrors;
    onFileDropped(pFileList: File[]): void;
    createFileListItems(files: any): FileList;
    getFileName(): string;
    getImageFile(): File;
    hasErrorInDragAndDrop(): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<OImageComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<OImageComponent, "o-image", never, { "emptyimage": { "alias": "empty-image"; "required": false; }; "notfoundimage": { "alias": "not-found-image"; "required": false; }; "emptyicon": { "alias": "empty-icon"; "required": false; }; "showControls": { "alias": "show-controls"; "required": false; }; "height": { "alias": "height"; "required": false; }; "autoFit": { "alias": "auto-fit"; "required": false; }; "fullScreenButton": { "alias": "full-screen-button"; "required": false; }; "acceptFileType": { "alias": "accept-file-type"; "required": false; }; "maxFileSize": { "alias": "max-file-size"; "required": false; }; }, {}, never, never, true, never>;
}
