import { ReadableFile, WritableFile } from "../files/file.js"; /** * A FileSystem interface can encapsulate various file sources, * a FileList, a Node.js filesystem, a ZipFile, a GoogleDrive etc. */ export interface FileSystem { /** Return a list of file names in a "directory" */ readdir(dirname?: string, options?: { recursive?: boolean; }): Promise; /** Gets information from a local file from the filesystem */ stat(filename: string, options?: object): Promise<{ size: number; }>; /** Removes a file from the file system */ unlink?(path: string): Promise; /** Fetches the full contents of a file from the filesystem (or a URL) */ fetch(path: string, options?: RequestInit): Promise; } /** * A random access file system, open readable and/or writable files */ export interface RandomAccessFileSystem extends FileSystem { /** Can open readable files */ readonly readable: boolean; /** Can open writable files */ readonly writable: boolean; /** Open a readable file */ openReadableFile(path: string, flags?: 'r'): Promise; /** Open a writable file */ openWritableFile(path: string, flags?: 'w' | 'wx', mode?: number): Promise; } //# sourceMappingURL=filesystem.d.ts.map