UNPKG

ixfs

Version:

An 'fs' kind of library dedicated to the browser

32 lines (31 loc) 1.69 kB
import { IDirectoryEntry, IFileEntry } from "../types"; import { IReadDirectoryInstanceOutput } from './parts'; export type AnyFunction = (...args: any[]) => any; export interface ICreateFsProps { databaseName?: string; databaseVersion?: number; objectStoreName?: string; rootDirectoryName?: string; } export interface ICreateFsOutput { copyFile: <TData = unknown>(sourcePath: string, destinationPath: string) => Promise<IFileEntry<TData>>; createDirectory: (fullPath: string) => Promise<IDirectoryEntry>; databaseName: string; databaseVersion: number; details: (fullPath: string) => Promise<IFileEntry<unknown> | IDirectoryEntry>; directoryDetails: (fullPath: string) => Promise<IDirectoryEntry>; exists: (fullPath: string) => Promise<boolean>; fileDetails: <TData = unknown>(fullPath: string) => Promise<IFileEntry<TData>>; isDirectory: (fullPath: string) => Promise<boolean>; isFile: (fullPath: string) => Promise<boolean>; moveFile: <TData = unknown>(sourcePath: string, destinationPath: string) => Promise<IFileEntry<TData>>; objectStoreName: string; readDirectory: (fullPath: string) => Promise<IReadDirectoryInstanceOutput>; readFile: <TData = unknown>(fullPath: string) => Promise<TData>; remove: (fullPath: string) => Promise<void>; removeDirectory: (fullPath: string) => Promise<void>; removeFile: (fullPath: string) => Promise<void>; renameFile: <TData = unknown>(fullPath: string, newFilename: string) => Promise<IFileEntry<TData>>; rootDirectoryName: string; writeFile: <TData = unknown>(fullPath: string, data: TData) => Promise<IFileEntry<TData>>; }