///
import { EventEmitter } from 'events';
import { Directory } from './directory';
import { File } from './file';
import { Item } from './item';
import { ReferenceManager } from './reference-manager';
import { Structure } from './structure';
export declare class FileStructure implements Structure {
allDirectoriesByPath: Record;
allFilesByPath: Record;
fileTypes: Record;
path: string;
referenceManager: ReferenceManager;
structure: Directory;
url: string;
watcher: EventEmitter | null;
private _ready;
private _watcher;
constructor(fsPath: string, url?: string);
addFileType(fileConstructor: typeof File): void;
addItem(item: Item): void;
getFileConstructor(filePath: string): typeof File | null;
init(): void;
read(): Promise | void>;
removeItem(item: Item): void;
unwatch(): void;
watch(): EventEmitter;
private _stopWatching;
}
//# sourceMappingURL=file-structure.d.ts.map