@tsonic/dotnet-pure
Version:
TypeScript type definitions for .NET 10 BCL (Base Class Library) - CLR naming
89 lines (72 loc) • 3.47 kB
TypeScript
// Generated by tsbindgen - Architecture
// Namespace: System.Security.Policy
// Assembly: System.Security.AccessControl
// 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 * as System_Collections_Internal from "../../System.Collections/internal/index.js";
import type { ICollection, IEnumerable, IEnumerator } from "../../System.Collections/internal/index.js";
import * as System_Internal from "../../System/internal/index.js";
import type { Array as ClrArray, Boolean as ClrBoolean, Int32, Object as ClrObject, String as ClrString, Type, 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 interface Evidence$instance {
readonly Count: int;
readonly IsReadOnly: boolean;
readonly IsSynchronized: boolean;
Locked: boolean;
readonly SyncRoot: unknown;
AddAssembly(id: unknown): void;
AddAssemblyEvidence<T extends EvidenceBase>(evidence: T): void;
AddHost(id: unknown): void;
AddHostEvidence<T extends EvidenceBase>(evidence: T): void;
Clear(): void;
Clone(): Evidence;
CopyTo(array: ClrArray, index: int): void;
GetAssemblyEnumerator(): IEnumerator;
GetAssemblyEvidence<T extends EvidenceBase>(): T;
GetEnumerator(): IEnumerator;
GetHostEnumerator(): IEnumerator;
GetHostEvidence<T extends EvidenceBase>(): T;
Merge(evidence: Evidence): void;
RemoveType(t: Type): void;
}
export const Evidence: {
new(): Evidence$instance;
new(hostEvidence: unknown[], assemblyEvidence: unknown[]): Evidence$instance;
new(evidence: Evidence): Evidence$instance;
new(hostEvidence: EvidenceBase[], assemblyEvidence: EvidenceBase[]): Evidence$instance;
};
export interface __Evidence$views {
As_ICollection(): System_Collections_Internal.ICollection$instance;
As_IEnumerable(): System_Collections_Internal.IEnumerable$instance;
}
export type Evidence = Evidence$instance & __Evidence$views;
export interface EvidenceBase$instance {
Clone(): EvidenceBase;
}
export const EvidenceBase: {
};
export type EvidenceBase = EvidenceBase$instance;