using System; using System.Runtime.InteropServices; namespace System.Security { /// Defines methods implemented by permission types. // Token: 0x020005C1 RID: 1473 [ComVisible(true)] public interface IPermission : ISecurityEncodable { /// Creates and returns an identical copy of the current permission. /// A copy of the current permission. // Token: 0x060035C3 RID: 13763 IPermission Copy(); /// Throws a at run time if the security requirement is not met. // Token: 0x060035C4 RID: 13764 void Demand(); /// Creates and returns a permission that is the intersection of the current permission and the specified permission. /// A new permission that represents the intersection of the current permission and the specified permission. This new permission is null if the intersection is empty. /// A permission to intersect with the current permission. It must be of the same type as the current permission. /// The parameter is not null and is not an instance of the same class as the current permission. // Token: 0x060035C5 RID: 13765 IPermission Intersect(IPermission target); /// Determines whether the current permission is a subset of the specified permission. /// true if the current permission is a subset of the specified permission; otherwise, false. /// A permission that is to be tested for the subset relationship. This permission must be of the same type as the current permission. /// The parameter is not null and is not of the same type as the current permission. // Token: 0x060035C6 RID: 13766 bool IsSubsetOf(IPermission target); /// Creates a permission that is the union of the current permission and the specified permission. /// A new permission that represents the union of the current permission and the specified permission. /// A permission to combine with the current permission. It must be of the same type as the current permission. /// The parameter is not null and is not of the same type as the current permission. // Token: 0x060035C7 RID: 13767 IPermission Union(IPermission target); } }