namespace SharepointToolbox.Core.Models; /// /// A consolidated permission row produced by grouping UserAccessEntry rows /// that share the same (UserLogin, PermissionLevel, AccessType, GrantedThrough) key. /// All distinct locations for that key are collected into . /// public record ConsolidatedPermissionEntry( string UserDisplayName, string UserLogin, string PermissionLevel, AccessType AccessType, string GrantedThrough, bool IsHighPrivilege, bool IsExternalUser, IReadOnlyList Locations ) { /// Convenience count — equals Locations.Count. public int LocationCount => Locations.Count; }