namespace XFESystem.Core; public readonly record struct WorkspaceEntry(string Path, bool IsDirectory, long Length) { public string Name => SystemPaths.Name(Path); } /// Every operation addresses the guest namespace. Implementations must never implicitly fall back to host files. public interface IWorkspaceStorage { bool IsPersistent { get; } bool Exists(string path); void CreateDirectory(string path); WorkspaceEntry[] List(string directory); string ReadText(string path); void WriteText(string path, string content); void Delete(string path); void Move(string source, string destination); }