import { EventEmitter, ChangeDetectorRef } from '@angular/core';
import { TdFileInputComponent, TdFileInputLabelDirective } from '../file-input/file-input.component';
import { ControlValueAccessor } from '@angular/forms';
import * as i0 from "@angular/core";
export declare class TdFileUploadBase {
_changeDetectorRef: ChangeDetectorRef;
constructor(_changeDetectorRef: ChangeDetectorRef);
}
export declare class TdFileUploadComponent implements ControlValueAccessor {
private _changeDetectorRef;
private _multiple;
private _required;
private _disabled;
fileInput?: TdFileInputComponent;
inputLabel?: TdFileInputLabelDirective;
/**
* defaultColor?: 'accent' | 'primary' | 'warn'
* Sets browse button color. Uses same color palette accepted as [MatButton] and defaults to 'primary'.
*/
defaultColor: 'accent' | 'primary' | 'warn';
/**
* activeColor?: 'accent' | 'primary' | 'warn'
* Sets upload button color. Uses same color palette accepted as [MatButton] and defaults to 'accent'.
*/
activeColor: 'accent' | 'primary' | 'warn';
/**
* cancelColor?: 'accent' | 'primary' | 'warn'
* Sets cancel button color. Uses same color palette accepted as [MatButton] and defaults to 'warn'.
*/
cancelColor: 'accent' | 'primary' | 'warn';
/**
* multiple?: boolean
* Sets if multiple files can be dropped/selected at once in [TdFileUploadComponent].
*/
set multiple(multiple: boolean);
get multiple(): boolean;
/**
* required?: boolean
* Forces at least one file upload.
* Defaults to 'false'
*/
set required(required: boolean);
get required(): boolean;
/**
* accept?: string
* Sets files accepted when opening the file browser dialog.
* Same as 'accept' attribute in element.
*/
accept?: string;
set disabled(disabled: boolean);
get disabled(): boolean;
value?: File | FileList | undefined;
/**
* select?: function
* Event emitted when a file is selected.
* Emits a [File | FileList] object.
*/
selectFile: EventEmitter;
/**
* upload?: function
* Event emitted when upload button is clicked.
* Emits a [File | FileList] object.
*/
upload: EventEmitter;
/**
* cancel?: function
* Event emitted when cancel button is clicked.
*/
cancel: EventEmitter;
constructor(_changeDetectorRef: ChangeDetectorRef);
writeValue(value: File | FileList): void;
registerOnChange(): void;
registerOnTouched(): void;
/**
* Method executed when upload button is clicked.
*/
uploadPressed(): void;
/**
* Method executed when a file is selected.
*/
handleSelect(value: File | FileList | undefined): void;
/**
* Methods executed when cancel button is clicked.
* Clears files.
*/
_cancel(): void;
/** Method executed when the disabled value changes */
onDisabledChange(v: boolean): void;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}