@tsonic/dotnet-pure
Version:
TypeScript type definitions for .NET 10 BCL (Base Class Library) - CLR naming
459 lines (373 loc) • 16.2 kB
TypeScript
// Generated by tsbindgen - Architecture
// Namespace: System.Security.Principal
// Assembly: System.Private.CoreLib, System.Security.Claims, System.Security.Principal.Windows
// Branded primitive types are sourced from @tsonic/types
import type { sbyte, byte, short, ushort, int, uint, long, ulong, int128, uint128, half, float, double, decimal, nint, nuint, char } from '@tsonic/types';
// Import types from other namespaces
import type { SafeAccessTokenHandle } from "../../Microsoft.Win32.SafeHandles/internal/index.js";
import * as System_Collections_Generic_Internal from "../../System.Collections.Generic/internal/index.js";
import type { ICollection_1, IEnumerable_1, IEnumerator_1 } from "../../System.Collections.Generic/internal/index.js";
import * as System_Collections_Internal from "../../System.Collections/internal/index.js";
import type { IDictionary, IEnumerable, IEnumerator } from "../../System.Collections/internal/index.js";
import type { BinaryWriter } from "../../System.IO/internal/index.js";
import type { MethodBase } from "../../System.Reflection/internal/index.js";
import * as System_Runtime_Serialization_Internal from "../../System.Runtime.Serialization/internal/index.js";
import type { IDeserializationCallback, ISerializable, SerializationInfo, StreamingContext } from "../../System.Runtime.Serialization/internal/index.js";
import * as System_Security_Claims_Internal from "../../System.Security.Claims/internal/index.js";
import type { Claim, ClaimsIdentity, ClaimsPrincipal } from "../../System.Security.Claims/internal/index.js";
import type { Task, Task_1 } from "../../System.Threading.Tasks/internal/index.js";
import * as System_Internal from "../../System/internal/index.js";
import type { Action, Boolean as ClrBoolean, Byte, Enum, Exception, Func_1, IComparable, IComparable_1, IConvertible, IDisposable, IFormatProvider, IFormattable, Int32, IntPtr, ISpanFormattable, Object as ClrObject, Predicate_1, String as ClrString, SystemException, Type, TypeCode, Void } from "../../System/internal/index.js";
// CLROf<T> - Maps ergonomic primitives to their CLR types for generic constraints
// This utility is used ONLY in generic type arguments to satisfy CLR interface constraints
// Value positions (parameters, return types) use lowercase primitives for ergonomics
export type CLROf<T> =
T extends sbyte ? System_Internal.SByte :
T extends short ? System_Internal.Int16 :
T extends int ? System_Internal.Int32 :
T extends long ? System_Internal.Int64 :
T extends int128 ? System_Internal.Int128 :
T extends nint ? System_Internal.IntPtr :
T extends byte ? System_Internal.Byte :
T extends ushort ? System_Internal.UInt16 :
T extends uint ? System_Internal.UInt32 :
T extends ulong ? System_Internal.UInt64 :
T extends uint128 ? System_Internal.UInt128 :
T extends nuint ? System_Internal.UIntPtr :
T extends half ? System_Internal.Half :
T extends float ? System_Internal.Single :
T extends double ? System_Internal.Double :
T extends decimal ? System_Internal.Decimal :
T extends char ? System_Internal.Char :
T extends boolean ? System_Internal.Boolean :
T extends string ? System_Internal.String :
T; // Identity fallback for non-primitive types
export enum PrincipalPolicy {
UnauthenticatedPrincipal = 0,
NoPrincipal = 1,
WindowsPrincipal = 2
}
export enum TokenAccessLevels {
AssignPrimary = 1,
Duplicate = 2,
Impersonate = 4,
Query = 8,
QuerySource = 16,
AdjustPrivileges = 32,
AdjustGroups = 64,
AdjustDefault = 128,
AdjustSessionId = 256,
Read = 131080,
Write = 131296,
AllAccess = 983551,
MaximumAllowed = 33554432
}
export enum TokenImpersonationLevel {
None = 0,
Anonymous = 1,
Identification = 2,
Impersonation = 3,
Delegation = 4
}
export enum WellKnownSidType {
NullSid = 0,
WorldSid = 1,
LocalSid = 2,
CreatorOwnerSid = 3,
CreatorGroupSid = 4,
CreatorOwnerServerSid = 5,
CreatorGroupServerSid = 6,
NTAuthoritySid = 7,
DialupSid = 8,
NetworkSid = 9,
BatchSid = 10,
InteractiveSid = 11,
ServiceSid = 12,
AnonymousSid = 13,
ProxySid = 14,
EnterpriseControllersSid = 15,
SelfSid = 16,
AuthenticatedUserSid = 17,
RestrictedCodeSid = 18,
TerminalServerSid = 19,
RemoteLogonIdSid = 20,
LogonIdsSid = 21,
LocalSystemSid = 22,
LocalServiceSid = 23,
NetworkServiceSid = 24,
BuiltinDomainSid = 25,
BuiltinAdministratorsSid = 26,
BuiltinUsersSid = 27,
BuiltinGuestsSid = 28,
BuiltinPowerUsersSid = 29,
BuiltinAccountOperatorsSid = 30,
BuiltinSystemOperatorsSid = 31,
BuiltinPrintOperatorsSid = 32,
BuiltinBackupOperatorsSid = 33,
BuiltinReplicatorSid = 34,
BuiltinPreWindows2000CompatibleAccessSid = 35,
BuiltinRemoteDesktopUsersSid = 36,
BuiltinNetworkConfigurationOperatorsSid = 37,
AccountAdministratorSid = 38,
AccountGuestSid = 39,
AccountKrbtgtSid = 40,
AccountDomainAdminsSid = 41,
AccountDomainUsersSid = 42,
AccountDomainGuestsSid = 43,
AccountComputersSid = 44,
AccountControllersSid = 45,
AccountCertAdminsSid = 46,
AccountSchemaAdminsSid = 47,
AccountEnterpriseAdminsSid = 48,
AccountPolicyAdminsSid = 49,
AccountRasAndIasServersSid = 50,
NtlmAuthenticationSid = 51,
DigestAuthenticationSid = 52,
SChannelAuthenticationSid = 53,
ThisOrganizationSid = 54,
OtherOrganizationSid = 55,
BuiltinIncomingForestTrustBuildersSid = 56,
BuiltinPerformanceMonitoringUsersSid = 57,
BuiltinPerformanceLoggingUsersSid = 58,
BuiltinAuthorizationAccessSid = 59,
MaxDefined = 60,
WinBuiltinTerminalServerLicenseServersSid = 60,
WinBuiltinDCOMUsersSid = 61,
WinBuiltinIUsersSid = 62,
WinIUserSid = 63,
WinBuiltinCryptoOperatorsSid = 64,
WinUntrustedLabelSid = 65,
WinLowLabelSid = 66,
WinMediumLabelSid = 67,
WinHighLabelSid = 68,
WinSystemLabelSid = 69,
WinWriteRestrictedCodeSid = 70,
WinCreatorOwnerRightsSid = 71,
WinCacheablePrincipalsGroupSid = 72,
WinNonCacheablePrincipalsGroupSid = 73,
WinEnterpriseReadonlyControllersSid = 74,
WinAccountReadonlyControllersSid = 75,
WinBuiltinEventLogReadersGroup = 76,
WinNewEnterpriseReadonlyControllersSid = 77,
WinBuiltinCertSvcDComAccessGroup = 78,
WinMediumPlusLabelSid = 79,
WinLocalLogonSid = 80,
WinConsoleLogonSid = 81,
WinThisOrganizationCertificateSid = 82,
WinApplicationPackageAuthoritySid = 83,
WinBuiltinAnyPackageSid = 84,
WinCapabilityInternetClientSid = 85,
WinCapabilityInternetClientServerSid = 86,
WinCapabilityPrivateNetworkClientServerSid = 87,
WinCapabilityPicturesLibrarySid = 88,
WinCapabilityVideosLibrarySid = 89,
WinCapabilityMusicLibrarySid = 90,
WinCapabilityDocumentsLibrarySid = 91,
WinCapabilitySharedUserCertificatesSid = 92,
WinCapabilityEnterpriseAuthenticationSid = 93,
WinCapabilityRemovableStorageSid = 94
}
export enum WindowsAccountType {
Normal = 0,
Guest = 1,
System = 2,
Anonymous = 3
}
export enum WindowsBuiltInRole {
Administrator = 544,
User = 545,
Guest = 546,
PowerUser = 547,
AccountOperator = 548,
SystemOperator = 549,
PrintOperator = 550,
BackupOperator = 551,
Replicator = 552
}
export interface IIdentity$instance {
readonly Name: string;
readonly AuthenticationType: string;
readonly IsAuthenticated: boolean;
}
export type IIdentity = IIdentity$instance;
export interface IPrincipal$instance {
readonly Identity: IIdentity;
IsInRole(role: string): boolean;
}
export type IPrincipal = IPrincipal$instance;
export interface GenericIdentity$instance extends ClaimsIdentity {
readonly AuthenticationType: string;
readonly Claims: IEnumerable_1<Claim>;
readonly IsAuthenticated: boolean;
readonly Name: string;
Clone(): ClaimsIdentity;
}
export const GenericIdentity: {
new(name: string): GenericIdentity$instance;
new(name: string, type_: string): GenericIdentity$instance;
};
export interface __GenericIdentity$views {
As_IIdentity(): IIdentity$instance;
}
export interface GenericIdentity$instance extends IIdentity$instance {}
export type GenericIdentity = GenericIdentity$instance & __GenericIdentity$views;
export interface GenericPrincipal$instance extends ClaimsPrincipal {
readonly Identity: IIdentity;
IsInRole(role: string): boolean;
}
export const GenericPrincipal: {
new(identity: IIdentity, roles: string[]): GenericPrincipal$instance;
};
export interface __GenericPrincipal$views {
As_IPrincipal(): IPrincipal$instance;
}
export type GenericPrincipal = GenericPrincipal$instance & __GenericPrincipal$views;
export interface IdentityNotMappedException$instance extends SystemException {
readonly UnmappedIdentities: IdentityReferenceCollection;
GetObjectData(serializationInfo: SerializationInfo, streamingContext: StreamingContext): void;
}
export const IdentityNotMappedException: {
new(): IdentityNotMappedException$instance;
new(message: string): IdentityNotMappedException$instance;
new(message: string, inner: Exception): IdentityNotMappedException$instance;
};
export interface __IdentityNotMappedException$views {
As_ISerializable(): System_Runtime_Serialization_Internal.ISerializable$instance;
}
export type IdentityNotMappedException = IdentityNotMappedException$instance & __IdentityNotMappedException$views;
export interface IdentityReference$instance {
readonly Value: string;
Equals(o: unknown): boolean;
GetHashCode(): int;
IsValidTargetType(targetType: Type): boolean;
ToString(): string;
Translate(targetType: Type): IdentityReference;
}
export const IdentityReference: {
};
export type IdentityReference = IdentityReference$instance;
export interface IdentityReferenceCollection$instance {
readonly Count: int;
Item: IdentityReference;
Add(identity: IdentityReference): void;
Clear(): void;
Contains(identity: IdentityReference): boolean;
CopyTo(array: IdentityReference[], offset: int): void;
GetEnumerator(): IEnumerator_1<IdentityReference>;
Remove(identity: IdentityReference): boolean;
Translate(targetType: Type): IdentityReferenceCollection;
Translate(targetType: Type, forceSuccess: boolean): IdentityReferenceCollection;
}
export const IdentityReferenceCollection: {
new(): IdentityReferenceCollection$instance;
new(capacity: int): IdentityReferenceCollection$instance;
};
export interface __IdentityReferenceCollection$views {
As_ICollection_1(): System_Collections_Generic_Internal.ICollection_1$instance<IdentityReference>;
As_IEnumerable_1(): System_Collections_Generic_Internal.IEnumerable_1$instance<IdentityReference>;
As_IEnumerable(): System_Collections_Internal.IEnumerable$instance;
}
export type IdentityReferenceCollection = IdentityReferenceCollection$instance & __IdentityReferenceCollection$views;
export interface NTAccount$instance extends IdentityReference {
readonly Value: string;
Equals(o: unknown): boolean;
GetHashCode(): int;
IsValidTargetType(targetType: Type): boolean;
ToString(): string;
Translate(targetType: Type): IdentityReference;
}
export const NTAccount: {
new(name: string): NTAccount$instance;
new(domainName: string, accountName: string): NTAccount$instance;
};
export type NTAccount = NTAccount$instance;
export interface SecurityIdentifier$instance extends IdentityReference {
readonly AccountDomainSid: SecurityIdentifier;
readonly BinaryLength: int;
readonly Value: string;
CompareTo(sid: SecurityIdentifier): int;
Equals(o: unknown): boolean;
Equals(sid: SecurityIdentifier): boolean;
GetBinaryForm(binaryForm: byte[], offset: int): void;
GetHashCode(): int;
IsAccountSid(): boolean;
IsEqualDomainSid(sid: SecurityIdentifier): boolean;
IsValidTargetType(targetType: Type): boolean;
IsWellKnown(type_: WellKnownSidType): boolean;
ToString(): string;
Translate(targetType: Type): IdentityReference;
}
export const SecurityIdentifier: {
new(binaryForm: byte[], offset: int): SecurityIdentifier$instance;
new(binaryForm: nint): SecurityIdentifier$instance;
new(sidType: WellKnownSidType, domainSid: SecurityIdentifier): SecurityIdentifier$instance;
new(sddlForm: string): SecurityIdentifier$instance;
readonly MaxBinaryLength: int;
readonly MinBinaryLength: int;
};
export interface __SecurityIdentifier$views {
As_IComparable_1(): System_Internal.IComparable_1$instance<SecurityIdentifier>;
// Structural method bridges for numeric interface constraints
CompareTo(obj: unknown): int;
}
export interface SecurityIdentifier$instance extends System_Internal.IComparable_1$instance<SecurityIdentifier> {}
export type SecurityIdentifier = SecurityIdentifier$instance & __SecurityIdentifier$views;
export interface WindowsIdentity$instance extends ClaimsIdentity {
readonly AccessToken: SafeAccessTokenHandle;
readonly AuthenticationType: string;
readonly Claims: IEnumerable_1<Claim>;
readonly DeviceClaims: IEnumerable_1<Claim>;
readonly Groups: IdentityReferenceCollection;
readonly ImpersonationLevel: TokenImpersonationLevel;
readonly IsAnonymous: boolean;
readonly IsAuthenticated: boolean;
readonly IsGuest: boolean;
readonly IsSystem: boolean;
readonly Name: string;
readonly Owner: SecurityIdentifier;
readonly Token: nint;
readonly User: SecurityIdentifier;
readonly UserClaims: IEnumerable_1<Claim>;
Clone(): ClaimsIdentity;
Dispose(): void;
}
export const WindowsIdentity: {
new(userToken: nint): WindowsIdentity$instance;
new(userToken: nint, type_: string): WindowsIdentity$instance;
new(userToken: nint, type_: string, acctType: WindowsAccountType): WindowsIdentity$instance;
new(userToken: nint, type_: string, acctType: WindowsAccountType, isAuthenticated: boolean): WindowsIdentity$instance;
new(info: SerializationInfo, context: StreamingContext): WindowsIdentity$instance;
new(sUserPrincipalName: string): WindowsIdentity$instance;
readonly DefaultIssuer: string;
GetAnonymous(): WindowsIdentity;
GetCurrent(): WindowsIdentity;
GetCurrent(ifImpersonating: boolean): WindowsIdentity;
GetCurrent(desiredAccess: TokenAccessLevels): WindowsIdentity;
RunImpersonated<T>(safeAccessTokenHandle: SafeAccessTokenHandle, func: Func_1<T>): T;
RunImpersonated(safeAccessTokenHandle: SafeAccessTokenHandle, action: Action): void;
RunImpersonatedAsync<T>(safeAccessTokenHandle: SafeAccessTokenHandle, func: Func_1<Task_1<T>>): Task_1<T>;
RunImpersonatedAsync(safeAccessTokenHandle: SafeAccessTokenHandle, func: Func_1<Task>): Task;
};
export interface __WindowsIdentity$views {
As_IDisposable(): System_Internal.IDisposable$instance;
As_IDeserializationCallback(): System_Runtime_Serialization_Internal.IDeserializationCallback$instance;
As_ISerializable(): System_Runtime_Serialization_Internal.ISerializable$instance;
As_IIdentity(): IIdentity$instance;
}
export interface WindowsIdentity$instance extends System_Internal.IDisposable$instance, System_Runtime_Serialization_Internal.IDeserializationCallback$instance, System_Runtime_Serialization_Internal.ISerializable$instance, IIdentity$instance {}
export type WindowsIdentity = WindowsIdentity$instance & __WindowsIdentity$views;
export interface WindowsPrincipal$instance extends ClaimsPrincipal {
readonly DeviceClaims: IEnumerable_1<Claim>;
readonly Identity: IIdentity;
readonly UserClaims: IEnumerable_1<Claim>;
IsInRole(sid: SecurityIdentifier): boolean;
IsInRole(role: WindowsBuiltInRole): boolean;
IsInRole(role: string): boolean;
}
export const WindowsPrincipal: {
new(ntIdentity: WindowsIdentity): WindowsPrincipal$instance;
};
export interface __WindowsPrincipal$views {
As_IPrincipal(): IPrincipal$instance;
}
export type WindowsPrincipal = WindowsPrincipal$instance & __WindowsPrincipal$views;