UNPKG

@fairdatasociety/fairdrive-opfs

Version:

Fairdrive OPFS - integrate data sources from Web 2.0 or Web 3.0

52 lines (49 loc) 1.6 kB
import { Mount, Entries } from './provider' /** * ProviderDriver is the interface that all providers must implement that adheres for W3C FileSystem API. */ export interface ProviderDriver { /** * Returns true if the file or directory exists * @param name - The name of the file or directory * @param mount - mount point * @returns A boolean value indicating whether the file or directory exists */ exists: (name: string, mount: Mount) => Promise<boolean> /** * Creates a directory * @param name - name of the directory * @param mount - mount point * @returns Returns true if the directory was created, else false */ createDir: (name: string, mount: Mount) => Promise<boolean> /** * Delete a file or directory * @param name - name of the file or directory * @param mount - mount point * @returns Returns true if the file or directory was deleted, else false */ delete: (name: string, mount: Mount) => Promise<boolean> /** * Read entries from a mount point * @param mount - mount point * @returns Entries */ read: (mount: Mount) => Promise<Entries> /** * Download entries from a mount point * @param name - name of the file * @param mount - mount point * @param options - options * @returns Result */ download: (name: string, mount: Mount, options: any) => Promise<any> /** * Upload entries from a file * @param file - file to upload * @param mount - mount point * @param options - options * @returns Result */ upload: (file: File, mount: Mount, options: any) => Promise<any> }