import { SystemError } from './error'; export declare class FolderError extends SystemError { readonly operation: string; readonly reason: string; constructor(operation: string, reason: string); } export declare class Folder { private readonly folderPath; constructor(folderPath: string); /** Returns an interface to interact with a folders contents. */ contents(): Contents; /** * Copies a file or folder into this folder. If this folder does not exist, it will be created. * Any existing files copied into this folder will be overwritten. */ add(systemPath: string): Promise; /** Copies this folder to a target folder. */ copy(folderPath: string): Promise; /** Creates this folder. If the folder exists, no action. */ create(): Promise; /** Deletes this folder. If the folder does not exist, no action. */ delete(): Promise; /** Returns true if this folder exists. */ exists(): Promise; /** Moves this folder to a target folder. */ move(folderPath: string): Promise; /** Renames this folder. */ rename(newName: string): Promise; /** Returns the size of this folder in bytes. */ size(): Promise; /** Returns a stats object for this folder. */ stat(): Promise; /** Asserts the given system path exists. */ private assertExists; private checkExists; private createFolder; /** Recursively enumerates all files within this directory. */ private enumerateFiles; } export declare class ContentsError extends SystemError { readonly operation: string; readonly reason: string; constructor(operation: string, reason: string); } export declare class Contents { private folderPath; constructor(folderPath: string); /** Copies the contents for this folder into a target folder. */ copy(folderPath: string): Promise; /** Copies the contents for this folder into a target folder. */ move(folderPath: string): Promise; private createFolder; private assertExists; private checkExists; } /** Returns an interface to interact with a folder. */ export declare function folder(folderPath: string): Folder;