@minecraft/creator-tools
Version:
Minecraft Creator Tools command line and libraries.
72 lines (71 loc) • 3.15 kB
TypeScript
import IFolder, { FolderErrorStatus } from "./IFolder";
import IFile from "./IFile";
import IStorage, { IFolderMove } from "./IStorage";
export default abstract class FolderBase implements IFolder {
#private;
abstract get name(): string;
get ensuredName(): string;
isDisposed: boolean;
abstract get parentFolder(): IFolder | null;
abstract get storage(): IStorage;
manager?: any;
errorStatus?: FolderErrorStatus;
get onFolderMoved(): import("ste-events").IEvent<FolderBase, IFolderMove>;
get onChildFolderMoved(): import("ste-events").IEvent<FolderBase, IFolderMove>;
get isLoaded(): boolean;
get canIgnore(): boolean;
get allFiles(): AsyncIterable<IFile>;
get folderCount(): number;
get fileCount(): number;
get storageRelativePath(): string;
get lastLoadedOrSaved(): Date;
get fullPath(): string;
get extendedPath(): string;
constructor();
updateLastLoadedOrSaved(): void;
getFolderRelativePath(toFolder: IFolder): string | undefined;
dispose(): void;
setStructureFromFileList(fileList: string[]): Promise<void>;
isSameFolder(newFolderStorageRelativePath: string): boolean;
_addExistingFolderToParent(folder: IFolder): void;
_removeExistingFolderFromParent(folder: IFolder): void;
folderExists(name: string): boolean;
fileExists(name: string): boolean;
deleteFileFromRelativePath(path: string): Promise<boolean>;
canonicalizePath(path: string): string;
getFileFromRelativePath(path: string): Promise<IFile | undefined>;
clearAllManagers(): void;
getFolderFromRelativePath(path: string): Promise<IFolder | undefined>;
getFolderByIndex(index: number): IFolder;
getSortedFolderKeys(): string[];
getSortedFileKeys(): string[];
getSummary(): string;
getFolderFromRelativePathLocal(path: string): IFolder | undefined;
saveAll(force?: boolean): Promise<boolean>;
ensureFolderFromRelativePath(path: string, ignoreLoad?: boolean): Promise<IFolder>;
ensureFileFromRelativePath(path: string, ignoreLoad?: boolean): Promise<IFile>;
deleteFile(name: string): Promise<boolean>;
removeFolder(name: string): boolean;
rename(name: string): Promise<boolean>;
recursiveDeleteThisFolder(): Promise<boolean>;
recursiveDeleteContentsOfThisFolder(): Promise<boolean>;
notifyFolderMoved(folderMove: IFolderMove): void;
notifyChildFolderMoved(folderMove: IFolderMove): void;
removeMeFromParent(): void;
abstract scanForChanges(): Promise<void>;
abstract deleteThisFolder(): Promise<boolean>;
abstract deleteAllFolderContents(): Promise<boolean>;
abstract exists(): Promise<boolean>;
abstract ensureExists(): Promise<boolean>;
abstract folders: {
[name: string]: IFolder | undefined;
};
abstract files: {
[name: string]: IFile | undefined;
};
abstract moveTo(newStorageRelativePath: string): Promise<boolean>;
abstract load(force?: boolean): Promise<Date>;
abstract ensureFolder(name: string): IFolder;
abstract ensureFile(name: string): IFile;
abstract createFile(name: string): Promise<IFile>;
}