import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation"; import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event"; import { Disposable, IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { ReadableStreamEvents } from "@codingame/monaco-vscode-api/vscode/vs/base/common/stream"; import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; import { IChannel } from "@codingame/monaco-vscode-api/vscode/vs/base/parts/ipc/common/ipc"; import { FileSystemProviderCapabilities, FileType, IFileAtomicReadOptions, IFileChange, IFileDeleteOptions, IFileOpenOptions, IFileOverwriteOptions, IFileReadStreamOptions, IFileSystemProviderWithFileAtomicReadCapability, IFileSystemProviderWithFileCloneCapability, IFileSystemProviderWithFileFolderCopyCapability, IFileSystemProviderWithFileReadStreamCapability, IFileSystemProviderWithFileReadWriteCapability, IFileSystemProviderWithOpenReadWriteCloseCapability, IFileWriteOptions, IStat, IWatchOptions } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files"; export declare const LOCAL_FILE_SYSTEM_CHANNEL_NAME = "localFilesystem"; /** * An implementation of a local disk file system provider * that is backed by a `IChannel` and thus implemented via * IPC on a different process. */ export declare class DiskFileSystemProviderClient extends Disposable implements IFileSystemProviderWithFileReadWriteCapability, IFileSystemProviderWithOpenReadWriteCloseCapability, IFileSystemProviderWithFileReadStreamCapability, IFileSystemProviderWithFileFolderCopyCapability, IFileSystemProviderWithFileAtomicReadCapability, IFileSystemProviderWithFileCloneCapability { private readonly channel; private readonly extraCapabilities; constructor(channel: IChannel, extraCapabilities: { trash?: boolean; pathCaseSensitive?: boolean; }); readonly onDidChangeCapabilities: Event; private _capabilities; get capabilities(): FileSystemProviderCapabilities; stat(resource: URI): Promise; realpath(resource: URI): Promise; readdir(resource: URI): Promise<[ string, FileType ][]>; readFile(resource: URI, opts?: IFileAtomicReadOptions): Promise; readFileStream(resource: URI, opts: IFileReadStreamOptions, token: CancellationToken): ReadableStreamEvents; writeFile(resource: URI, content: Uint8Array, opts: IFileWriteOptions): Promise; open(resource: URI, opts: IFileOpenOptions): Promise; close(fd: number): Promise; read(fd: number, pos: number, data: Uint8Array, offset: number, length: number): Promise; write(fd: number, pos: number, data: Uint8Array, offset: number, length: number): Promise; mkdir(resource: URI): Promise; delete(resource: URI, opts: IFileDeleteOptions): Promise; rename(resource: URI, target: URI, opts: IFileOverwriteOptions): Promise; copy(resource: URI, target: URI, opts: IFileOverwriteOptions): Promise; cloneFile(resource: URI, target: URI): Promise; private readonly _onDidChange; readonly onDidChangeFile: Event; private readonly _onDidWatchError; readonly onDidWatchError: Event; private readonly sessionId; private registerFileChangeListeners; watch(resource: URI, opts: IWatchOptions): IDisposable; }