import { Method } from '@rxap/pattern';
import { Subject } from 'rxjs';
import * as i0 from "@angular/core";
export interface FileUploadMethodParameters {
    accept?: string;
    fileInput?: HTMLInputElement;
}
export declare class FileUploadMethod implements Method<File | null, FileUploadMethodParameters> {
    progress$: Subject<number>;
    protected _fileInput: HTMLInputElement | null;
    protected _document: Document | null;
    protected get document(): Document;
    call(parameters?: FileUploadMethodParameters): Promise<File | null>;
    setDocument(document: Document): void;
    protected handleFileInputChange(event: any): File | null;
    protected removeInputFromDom(): void;
    protected readFile(file: File): Promise<File>;
    protected addInputToDom(accept: string): HTMLInputElement;
    protected getDocument(): Document;
    static ɵfac: i0.ɵɵFactoryDeclaration<FileUploadMethod, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<FileUploadMethod>;
}
