namespace HyperBooru; [Flags] public enum ObjectPermissions : ulong { [AclPermission] Read = 0x01, [AclPermission] Write = 0x02, [AclPermission] Delete = 0x04, [AclPermission("View tags")] GetTags = 0x08, [AclPermission("Set tags")] SetTags = 0x10, [AclPermission("View permissions")] GetAcl = 0x20, [AclPermission("Set permissions")] SetAcl = 0x40, [AclPermission("Full control")] FullControl = 0x7F } [Flags] public enum MediaPermissions : ulong { [AclPermission("View media")] Read = 0x01, [AclPermission("Edit info")] Write = 0x02, [AclPermission] Delete = 0x04, [AclPermission("View tags")] GetTags = 0x08, [AclPermission("Set tags")] SetTags = 0x10, [AclPermission("View permissions")] GetAcl = 0x20, [AclPermission("Set permissions")] SetAcl = 0x40, [AclPermission("Full control")] FullControl = 0x7F } [Flags] public enum TagPermissions : ulong { [AclPermission("View info")] Read = 0x01, [AclPermission("Edit info")] Write = 0x02, [AclPermission] Delete = 0x04, [AclPermission("View implicit tags")] GetImplicitTags = 0x08, [AclPermission("Set implicit tags")] SetImplicitTags = 0x10, [AclPermission("View permissions")] GetAcl = 0x20, [AclPermission("Set permissions")] SetAcl = 0x40, [AclPermission("Full control")] FullControl = 0x7F }