import { FileStructureHookProps } from './use-file-structure-types';
declare const garbageFiles: string[];
/**
 * This functionality is built on File and Directory Entries API and is possible through
 * support of limited number of major browsers, such as Chrome, Firefox,
 * Edge and even Safari (at least 13.0.3).
 * https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItem/webkitGetAsEntry
 *
 * @param {number} maxDepth - Limit file tree to specified depth.
 * @param {array} filesToExclude - A list of garbage files.
 * @param {func} allowFile - A method to validate provided File before proceeding.
 * @param {func} fileStructureAdapter - allows to shape the output for purpose
 * @param {boolean} hideEmptyFolders - To not handle empty folders
 * @param {boolean} retainFileStructure
 * @returns {object} - { fileStructure, filesPending, generateFileStructure }
 */
declare const useFileStructure: ({ maxDepth, filesToExclude, allowFile, fileStructureAdapter, hideEmptyFolders, retainFileStructure, }?: FileStructureHookProps) => {
    fileStructure: any[];
    filesPending: boolean;
    generateFileStructure: (dataTransfer: DataTransfer | any) => Promise<any>;
    createFileStructure: ({ items, files, }?: DataTransfer | any) => Promise<{}>;
};
export { useFileStructure, garbageFiles };
