feat(03-01): create 7 core models and 3 service interfaces for Phase 3

- StorageNode, StorageScanOptions models
- SearchResult, SearchOptions models
- DuplicateItem, DuplicateGroup, DuplicateScanOptions models
- IStorageService, ISearchService, IDuplicatesService interfaces
This commit is contained in:
Dev
2026-04-02 15:23:04 +02:00
parent d09db015f2
commit b52f60f8eb
10 changed files with 123 additions and 0 deletions

View File

@@ -0,0 +1,16 @@
namespace SharepointToolbox.Core.Models;
public class StorageNode
{
public string Name { get; set; } = string.Empty;
public string Url { get; set; } = string.Empty;
public string SiteTitle { get; set; } = string.Empty;
public string Library { get; set; } = string.Empty;
public long TotalSizeBytes { get; set; }
public long FileStreamSizeBytes { get; set; }
public long VersionSizeBytes => Math.Max(0L, TotalSizeBytes - FileStreamSizeBytes);
public long TotalFileCount { get; set; }
public DateTime? LastModified { get; set; }
public int IndentLevel { get; set; }
public List<StorageNode> Children { get; set; } = new();
}