using HopFrame.Database.Models; namespace HopFrame.Security.Services; public interface IPermissionService { Task HasPermission(string permission, Guid user); Task GetPermissionGroup(string name); Task CreatePermissionGroup(string name, bool isDefault = false, string description = null); Task DeletePermissionGroup(PermissionGroup group); /// /// permission system:
/// - "*" -> all rights
/// - "group.[name]" -> group member
/// - "[namespace].[name]" -> single permission
/// - "[namespace].*" -> all permissions in the namespace ///
/// /// /// Task AddPermission(IPermissionOwner owner, string permission); Task DeletePermission(Permission permission); internal Task GetFullPermissions(string user); }