import { ReactNode } from "react";
import { ReadFileError, ReadFileResult, ReadMode } from "@ryuzaki13/react-foundation-lib/file";
/**
 * Пропсы компонента DropZone.
 *
 * Компонент представляет собой визуальную зону для выбора файлов.
 * Поддерживает перетаскивание и выбор по клику, а результаты передаются в onDrop.
 */
export interface DropZoneProps {
    value: ReadFileResult[];
    /** Вызывается с массивом результатов readFile после сброса файлов */
    onChange: (results: ReadFileResult[]) => void;
    /** Callback ошибки чтения одного из файлов */
    onChangeError?: (error: ReadFileError) => void;
    /** HTML-атрибут accept для нативного input[type="file"] (например `[".pdf", ".docx"]`) */
    accept?: readonly string[];
    /** Список допустимых MIME-типов — передаётся в readFile (например `["application/pdf", "image/png"]`) */
    allowedMime?: readonly string[];
    /** Максимальный размер одного файла в байтах */
    maxBytes?: number;
    /** Режим чтения: "data-url" (по умолчанию) или "array-buffer" */
    readMode?: ReadMode;
    /** Разрешить сброс нескольких файлов (по умолчанию true) */
    multiple?: boolean;
    /** Блокировка компонента */
    disabled?: boolean;
    /** CSS-класс обёртки */
    className?: string;
    /**
     * Кастомный контент внутри зоны.
     * По умолчанию отображается иконка загрузки и текст "Перетащите файлы сюда".
     */
    children?: ReactNode;
}
/**
 * DropZone — зона для перетаскивания файлов и выбора по клику.
 *
 * При наведении файла зона подсвечивается (пунктирная рамка меняет цвет).
 * При сбросе файлов каждый читается через readFile, успешные результаты
 * передаются в onDrop, ошибки — в onDropError.
 *
 * Поддерживает кастомный контент через children.
 * Если children не указан — отображается иконка загрузки и подсказка.
 */
export declare function DropZone({ value, onChange, onChangeError, accept, allowedMime, maxBytes, readMode, multiple, disabled, className, children }: DropZoneProps): import("react").JSX.Element;
//# sourceMappingURL=DropZone.d.ts.map