import { BaseFileSystem, type FileSystemOptions, type FileSystemWriteFileContent, type FileWritableStream, type FileReadableStream, type AsyncFileSystem, type SyncFileSystem, type WritableFileSystem } from './FileSystem.ts'; import type { DirectoryEntry } from './types.ts'; export declare class NodeFileSystem extends BaseFileSystem implements AsyncFileSystem, SyncFileSystem, WritableFileSystem { #private; constructor(options?: FileSystemOptions); usesPersistentCacheByDefault(): boolean; supportsServerManagedReferenceArtifacts(): boolean; usesDirectoryMtimeSnapshotDependencies(): boolean; validatesPersistedFileDependenciesByDefault(): boolean; getAnalysisCacheMetadata(): { tsConfigFilePath: string; }; getAbsolutePath(path: string): string; getRelativePathToWorkspace(path: string): string; getWorkspaceChangeToken(rootPath: string): Promise; getWorkspaceChangedPathsSinceToken(rootPath: string, previousToken: string): Promise; readDirectorySync(path?: string): DirectoryEntry[]; readDirectory(path?: string): Promise; readFileSync(path: string): string; readFile(path: string): Promise; readFileBinarySync(path: string): Uint8Array; readFileBinary(path: string): Promise; readFileStream(path: string): FileReadableStream; getFileByteLengthSync(path: string): number | undefined; getFileByteLength(path: string): Promise; getFileDependencyMetadata(path: string): Promise<{ byteLength: number; lastModifiedMs: number; } | undefined>; writeFileSync(path: string, content: FileSystemWriteFileContent): void; writeFile(path: string, content: FileSystemWriteFileContent): Promise; writeFileStream(path: string): FileWritableStream; fileExistsSync(path: string): boolean; fileExists(path: string): Promise; deleteFileSync(path: string): void; deleteFile(path: string): Promise; createDirectory(path: string): Promise; rename(source: string, target: string, options?: { overwrite?: boolean; }): Promise; copy(source: string, target: string, options?: { overwrite?: boolean; }): Promise; isFilePathGitIgnored(filePath: string): boolean; getFileLastModifiedMsSync(path: string): number | undefined; getFileLastModifiedMs(path: string): Promise; }