/**
 * Copyright (c) OpenLens Maintainers. All rights reserved.
 * Licensed under MIT License. See LICENSE in root directory for more information.
 */
import type { InputHTMLAttributes } from "react";
import React from "react";
export interface FileInputSelection<T = string> {
    file: File;
    data?: T | any;
    error?: string;
}
export interface FileInputProps extends InputHTMLAttributes<any> {
    id?: string;
    accept?: string;
    readAsText?: boolean;
    multiple?: boolean;
    onSelectFiles(...selectedFiles: FileInputSelection[]): void;
}
export declare class FileInput extends React.Component<FileInputProps> {
    protected input: HTMLInputElement | null;
    protected style: React.CSSProperties;
    selectFiles: () => void;
    protected onChange: (evt: React.ChangeEvent<HTMLInputElement>) => Promise<void>;
    render(): React.JSX.Element;
}
