UNPKG

@tsonic/dotnet

Version:

TypeScript type definitions for .NET 10 BCL (Base Class Library)

92 lines (68 loc) 3.4 kB
// Generated by tsbindgen - Architecture // Namespace: System.Runtime.InteropServices.Java // Assembly: System.Private.CoreLib // 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 support types from @tsonic/types import type { ptr, ref } from "@tsonic/types"; // Import types from other namespaces import type { GCHandle } from "../../System.Runtime.InteropServices/internal/index.js"; import * as System_Internal from "../../System/internal/index.js"; import type { Boolean as ClrBoolean, Int32, Object as ClrObject, ReadOnlySpan_1, String as ClrString, Type, UIntPtr, ValueType, 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 ComponentCrossReference$instance { sourceGroupIndex: nuint; destinationGroupIndex: nuint; } export const ComponentCrossReference: { new(): ComponentCrossReference$instance; }; export type ComponentCrossReference = ComponentCrossReference$instance; export interface MarkCrossReferencesArgs$instance { componentCount: nuint; components: ptr<StronglyConnectedComponent>; crossReferenceCount: nuint; crossReferences: ptr<ComponentCrossReference>; } export const MarkCrossReferencesArgs: { new(): MarkCrossReferencesArgs$instance; }; export type MarkCrossReferencesArgs = MarkCrossReferencesArgs$instance; export interface StronglyConnectedComponent$instance { count: nuint; contexts: ptr<void>; } export const StronglyConnectedComponent: { new(): StronglyConnectedComponent$instance; }; export type StronglyConnectedComponent = StronglyConnectedComponent$instance; export abstract class JavaMarshal$instance { static createReferenceTrackingHandle(obj: unknown, context: ptr<void>): GCHandle; static finishCrossReferenceProcessing(crossReferences: ptr<MarkCrossReferencesArgs>, unreachableObjectHandles: ReadOnlySpan_1<GCHandle>): void; static getContext(obj: GCHandle): ptr<void>; static initialize(markCrossReferences: unknown): void; } export type JavaMarshal = JavaMarshal$instance;