import { NodeCache } from "node-cache/index"; interface Frauderface { root: string; extension: string; updateFunction?: Function; softDelete: boolean; allowDirectories: boolean; deletedPrefix: string; cache: NodeCache; } interface Constructor { directory: string; extension?: string; update?: Function; softDelete?: boolean; deletedPrefix?: string; stdTTL?: number; checkperiod?: number; allowDirectories?: boolean; } interface FileObject { [index: string]: any; } export default class Fraud implements Frauderface { root: string; extension: string; updateFunction?: Function; softDelete: boolean; allowDirectories: boolean; deletedPrefix: string; cache: NodeCache; constructor({ directory, extension, update, softDelete, deletedPrefix, stdTTL, checkperiod, allowDirectories }: Constructor); init(): Promise; callUpdate(fileName?: string): any; getPath(fileName: string): string; updateCache(fileName: string, contents?: FileObject): Promise; updateCacheSync(fileName: string, contents?: FileObject): void; getCached(fileName: string): Promise; getCachedSync(fileName: string): FileObject; deleteCache(fileName: string): Promise; deleteCacheSync(fileName: string): number; exists(fileName: string): Promise; existsSync(fileName: string): boolean; listCache(): Promise; listCacheSync(): string[]; list(): Promise; listSync(): string[]; readAll(): Promise; readAllSync(): FileObject; create(fileName: string, contents: any): Promise; createSync(fileName: string, contents: any): void; read(fileName: string, detailed?: boolean): Promise; readSync(fileName: string, detailed?: boolean): FileObject; delete(fileName: string): Promise; deleteSync(fileName: string): void; rename(fileName: string, newFileName: string): Promise; renameSync(fileName: string, newFileName: string): void; update(fileName: string, updateObject: any): Promise; updateSync(fileName: string, updateObject: any): FileObject; } export {};