import { EJSON } from 'bson'; /** * Provides functionality for manipulating files and directories. */ export declare class FileSystem { static FILE_NAME_SPLIT_CHARACTER: string; /** * Lists file names for a given path. * * @param path File path */ listFileNames(path: string): string[]; /** * Lists directories which are not empty or hidden. * * @param path File path */ listValidDirectories(path: string): string[]; /** * Checks if a directory is empty. * * @param path File path */ isEmpty(path: string): boolean; /** * Checks if a file or directory is empty. * * @param fileOrDirectoryName File or directory name */ isHidden(fileOrDirectoryName: string): boolean; /** * Checks if a path is a directory. * * @param path File path */ isDirectory(path: string): boolean; /** * Filters files which are supported for database seeding. * * @param fileNames Array of file names * @param supportedExtensions Supported file extensions array */ filterSupportedDocumentFileNames(fileNames: string[], supportedExtensions: string[]): string[]; /** * Checks if a file should be ignored based on extension. * * @param fileNameSplitByDot Array, which comes from file name split by dot */ shouldIgnoreFile(fileNameSplitByDot: string[]): boolean; /** * Reads content for multiple files. * * @param paths Array of paths */ readFilesContent(paths: string[], ejsonParseOptions: EJSON.Options): any[]; /** * Reads a file from path. If it is a JSON, uses EJSON parser. * * @param path File path */ readFile(path: string, ejsonParseOptions: EJSON.Options): any; } /** * Default `FileSystem` instance */ export declare const fileSystem: FileSystem;