- PermissionEntry record with 9 fields matching PS Generate-PnPSitePermissionRpt - ScanOptions record with defaults: IncludeInherited=false, ScanFolders=true, FolderDepth=1, IncludeSubsites=false - IPermissionsService interface with ScanSiteAsync method enabling ViewModel mocking