import { ElementRef } from '@angular/core';
import { AbstractControl, UntypedFormControl } from '@angular/forms';
import { ThemePalette } from '@angular/material/core';
import { PghLoader } from '@tapsellorg/angular-material-library/src/lib/loader';
import { PghValidationFileInput } from '../drag-drop.model';
import * as i0 from "@angular/core";
export declare class PghDragDropFileComponent {
    _display: string;
    fileInput?: ElementRef<HTMLInputElement>;
    filesControl: import("@angular/core").InputSignal<UntypedFormControl | AbstractControl<any, any> | undefined>;
    color: import("@angular/core").InputSignal<ThemePalette>;
    loader: import("@angular/core").InputSignal<PghLoader | undefined>;
    /** default value: ```false``` */
    canChooseMultipleFiles: import("@angular/core").InputSignal<boolean>;
    showSelectedFilesInfo: import("@angular/core").InputSignal<boolean>;
    filesChange: import("@angular/core").OutputEmitterRef<File[]>;
    validation: import("@angular/core").InputSignal<PghValidationFileInput>;
    messageErrorField: import("@angular/core").ModelSignal<string[]>;
    selectedFiles: import("@angular/core").WritableSignal<File[]>;
    private get filesControlValue();
    onFileDrop(files: FileList): Promise<void>;
    onFileInput({ target: _target }: Event): Promise<void>;
    removeFile(selectedFile: File): void;
    openFilePicker(): void;
    private handleAddFiles;
    private updateFiles;
    checkValidation(files: FileList | null): Promise<void>;
    private getFileDimensions;
    static ɵfac: i0.ɵɵFactoryDeclaration<PghDragDropFileComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<PghDragDropFileComponent, "pgh-drag-drop-file", never, { "filesControl": { "alias": "filesControl"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "loader": { "alias": "loader"; "required": false; "isSignal": true; }; "canChooseMultipleFiles": { "alias": "canChooseMultipleFiles"; "required": false; "isSignal": true; }; "showSelectedFilesInfo": { "alias": "showSelectedFilesInfo"; "required": false; "isSignal": true; }; "validation": { "alias": "validation"; "required": false; "isSignal": true; }; "messageErrorField": { "alias": "messageErrorField"; "required": false; "isSignal": true; }; }, { "filesChange": "filesChange"; "messageErrorField": "messageErrorFieldChange"; }, never, ["[pgh-drop-placeholder]"], false, never>;
}
