import { ControlValueAccessor } from '@angular/forms';
import { Observable } from "rxjs";
import { HttpClient, HttpHeaders } from "@angular/common/http";
export declare class NgxMatDragDropFileComponent implements ControlValueAccessor {
    private http;
    constructor(http: HttpClient);
    additionalData: any;
    addImageStringBase64: string;
    uploader: NgxMatCdkUploader;
    deleteFileLabel: string;
    maximumFileLimitLabel: string;
    maxFilePickCount: number;
    addImageIcon: string;
    maxFilePickCountError: boolean;
    errors: any[];
    fileType: number | FileTypes;
    get disabled(): boolean;
    set disabled(val: boolean);
    set multiple(value: boolean);
    get multiple(): boolean;
    set displayFileSize(value: boolean);
    get displayFileSize(): boolean;
    set borderColor(color: string);
    get borderColor(): string;
    get files(): File[];
    get isEmpty(): boolean;
    get isDragover(): boolean;
    set isDragover(value: boolean);
    private valueChanged;
    private fileInputEl;
    accept: string;
    private _disabled;
    _multiple: boolean;
    emptyPlaceholder: string;
    private _displayFileSize;
    private _activeBorderColor;
    private _files;
    private _isDragOver;
    private _onChange;
    private _onTouched;
    writeValue(files: File[]): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    setDisabledState?(isDisabled: boolean): void;
    private emitChanges;
    addFiles(files: File[] | FileList | File): void;
    removeFile(file: File): void;
    clear(): void;
    change(event: Event): void;
    activate(e: any): void;
    deactivate(e: any): void;
    handleDrop(e: any): void;
    open(): void;
    private removeDirectories;
    private getLasIndexType;
    private convertToArray;
    private _getUploader;
    private _uploader;
}
export declare class NgxMatDragDropFileDto {
    id: any;
    fileName: string;
    fileSize: number;
    fileContentType: string;
    type?: number | FileTypes;
    tempId: string;
    addresses?: string[];
    imageUrl?: string;
    status?: string;
}
export declare enum FileTypes {
    User = 0
}
export declare class NgxMatCdkUploader {
    uploaderFunc?: (formDate: FormData, tempId: string) => Observable<any>;
    uploaderUrl?: string;
    uploaderHttpHeaders?: HttpHeaders;
}
