UNPKG

@tsonic/dotnet-pure

Version:

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

400 lines (292 loc) 17.8 kB
// Generated by tsbindgen - Architecture // Namespace: System.Dynamic // Assembly: System.Linq.Expressions // 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 * as System_Collections_Generic_Internal from "../../System.Collections.Generic/internal/index.js"; import type { ICollection_1, IDictionary_2, IEnumerable_1, IEnumerator_1, IList_1, KeyValuePair_2 } from "../../System.Collections.Generic/internal/index.js"; import type { ReadOnlyCollection_1 } from "../../System.Collections.ObjectModel/internal/index.js"; import * as System_Collections_Internal from "../../System.Collections/internal/index.js"; import type { IEnumerable, IEnumerator } from "../../System.Collections/internal/index.js"; import * as System_ComponentModel_Internal from "../../System.ComponentModel/internal/index.js"; import type { INotifyPropertyChanged } from "../../System.ComponentModel/internal/index.js"; import type { Expression, ExpressionType, LabelTarget, ParameterExpression } from "../../System.Linq.Expressions/internal/index.js"; import * as System_Runtime_CompilerServices_Internal from "../../System.Runtime.CompilerServices/internal/index.js"; import type { CallSite_1, CallSiteBinder } from "../../System.Runtime.CompilerServices/internal/index.js"; import * as System_Internal from "../../System/internal/index.js"; import type { 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 IDynamicMetaObjectProvider$instance { GetMetaObject(parameter: Expression): DynamicMetaObject; } export type IDynamicMetaObjectProvider = IDynamicMetaObjectProvider$instance; export interface IInvokeOnGetBinder$instance { readonly InvokeOnGet: boolean; } export type IInvokeOnGetBinder = IInvokeOnGetBinder$instance; export interface BinaryOperationBinder$instance extends DynamicMetaObjectBinder { readonly Operation: ExpressionType; readonly ReturnType: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackBinaryOperation(target: DynamicMetaObject, arg: DynamicMetaObject): DynamicMetaObject; FallbackBinaryOperation(target: DynamicMetaObject, arg: DynamicMetaObject, errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const BinaryOperationBinder: { }; export type BinaryOperationBinder = BinaryOperationBinder$instance; export interface BindingRestrictions$instance { Merge(restrictions: BindingRestrictions): BindingRestrictions; ToExpression(): Expression; } export const BindingRestrictions: { readonly Empty: BindingRestrictions; Combine(contributingObjects: IList_1<DynamicMetaObject>): BindingRestrictions; GetExpressionRestriction(expression: Expression): BindingRestrictions; GetInstanceRestriction(expression: Expression, instance: unknown): BindingRestrictions; GetTypeRestriction(expression: Expression, type_: Type): BindingRestrictions; }; export type BindingRestrictions = BindingRestrictions$instance; export interface CallInfo$instance { readonly ArgumentCount: int; readonly ArgumentNames: ReadOnlyCollection_1<CLROf<string>>; Equals(obj: unknown): boolean; GetHashCode(): int; } export const CallInfo: { new(argCount: int, argNames: string[]): CallInfo$instance; new(argCount: int, argNames: IEnumerable_1<CLROf<string>>): CallInfo$instance; }; export type CallInfo = CallInfo$instance; export interface ConvertBinder$instance extends DynamicMetaObjectBinder { readonly Explicit: boolean; readonly ReturnType: Type; readonly Type: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackConvert(target: DynamicMetaObject): DynamicMetaObject; FallbackConvert(target: DynamicMetaObject, errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const ConvertBinder: { }; export type ConvertBinder = ConvertBinder$instance; export interface CreateInstanceBinder$instance extends DynamicMetaObjectBinder { readonly CallInfo: CallInfo; readonly ReturnType: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackCreateInstance(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; FallbackCreateInstance(target: DynamicMetaObject, args: DynamicMetaObject[], errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const CreateInstanceBinder: { }; export type CreateInstanceBinder = CreateInstanceBinder$instance; export interface DeleteIndexBinder$instance extends DynamicMetaObjectBinder { readonly CallInfo: CallInfo; readonly ReturnType: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackDeleteIndex(target: DynamicMetaObject, indexes: DynamicMetaObject[]): DynamicMetaObject; FallbackDeleteIndex(target: DynamicMetaObject, indexes: DynamicMetaObject[], errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const DeleteIndexBinder: { }; export type DeleteIndexBinder = DeleteIndexBinder$instance; export interface DeleteMemberBinder$instance extends DynamicMetaObjectBinder { readonly IgnoreCase: boolean; readonly Name: string; readonly ReturnType: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackDeleteMember(target: DynamicMetaObject): DynamicMetaObject; FallbackDeleteMember(target: DynamicMetaObject, errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const DeleteMemberBinder: { }; export type DeleteMemberBinder = DeleteMemberBinder$instance; export interface DynamicMetaObject$instance { readonly Expression: Expression; readonly HasValue: boolean; readonly LimitType: Type; readonly Restrictions: BindingRestrictions; readonly RuntimeType: Type; readonly Value: unknown; BindBinaryOperation(binder: BinaryOperationBinder, arg: DynamicMetaObject): DynamicMetaObject; BindConvert(binder: ConvertBinder): DynamicMetaObject; BindCreateInstance(binder: CreateInstanceBinder, args: DynamicMetaObject[]): DynamicMetaObject; BindDeleteIndex(binder: DeleteIndexBinder, indexes: DynamicMetaObject[]): DynamicMetaObject; BindDeleteMember(binder: DeleteMemberBinder): DynamicMetaObject; BindGetIndex(binder: GetIndexBinder, indexes: DynamicMetaObject[]): DynamicMetaObject; BindGetMember(binder: GetMemberBinder): DynamicMetaObject; BindInvoke(binder: InvokeBinder, args: DynamicMetaObject[]): DynamicMetaObject; BindInvokeMember(binder: InvokeMemberBinder, args: DynamicMetaObject[]): DynamicMetaObject; BindSetIndex(binder: SetIndexBinder, indexes: DynamicMetaObject[], value: DynamicMetaObject): DynamicMetaObject; BindSetMember(binder: SetMemberBinder, value: DynamicMetaObject): DynamicMetaObject; BindUnaryOperation(binder: UnaryOperationBinder): DynamicMetaObject; GetDynamicMemberNames(): IEnumerable_1<CLROf<string>>; } export const DynamicMetaObject: { new(expression: Expression, restrictions: BindingRestrictions): DynamicMetaObject$instance; new(expression: Expression, restrictions: BindingRestrictions, value: unknown): DynamicMetaObject$instance; readonly EmptyMetaObjects: DynamicMetaObject[]; Create(value: unknown, expression: Expression): DynamicMetaObject; }; export type DynamicMetaObject = DynamicMetaObject$instance; export interface DynamicMetaObjectBinder$instance extends CallSiteBinder { readonly ReturnType: Type; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; Defer(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Defer(args: DynamicMetaObject[]): DynamicMetaObject; GetUpdateExpression(type_: Type): Expression; } export const DynamicMetaObjectBinder: { }; export type DynamicMetaObjectBinder = DynamicMetaObjectBinder$instance; export interface DynamicObject$instance { GetDynamicMemberNames(): IEnumerable_1<CLROf<string>>; GetMetaObject(parameter: Expression): DynamicMetaObject; TryBinaryOperation(binder: BinaryOperationBinder, arg: unknown, result: { value: ref<unknown> }): boolean; TryConvert(binder: ConvertBinder, result: { value: ref<unknown> }): boolean; TryCreateInstance(binder: CreateInstanceBinder, args: unknown[], result: { value: ref<unknown> }): boolean; TryDeleteIndex(binder: DeleteIndexBinder, indexes: unknown[]): boolean; TryDeleteMember(binder: DeleteMemberBinder): boolean; TryGetIndex(binder: GetIndexBinder, indexes: unknown[], result: { value: ref<unknown> }): boolean; TryGetMember(binder: GetMemberBinder, result: { value: ref<unknown> }): boolean; TryInvoke(binder: InvokeBinder, args: unknown[], result: { value: ref<unknown> }): boolean; TryInvokeMember(binder: InvokeMemberBinder, args: unknown[], result: { value: ref<unknown> }): boolean; TrySetIndex(binder: SetIndexBinder, indexes: unknown[], value: unknown): boolean; TrySetMember(binder: SetMemberBinder, value: unknown): boolean; TryUnaryOperation(binder: UnaryOperationBinder, result: { value: ref<unknown> }): boolean; } export const DynamicObject: { new(): DynamicObject$instance; }; export interface __DynamicObject$views { As_IDynamicMetaObjectProvider(): IDynamicMetaObjectProvider$instance; } export interface DynamicObject$instance extends IDynamicMetaObjectProvider$instance {} export type DynamicObject = DynamicObject$instance & __DynamicObject$views; export interface ExpandoObject$instance extends INotifyPropertyChanged { } export const ExpandoObject: { new(): ExpandoObject$instance; }; export interface __ExpandoObject$views { As_IDynamicMetaObjectProvider(): IDynamicMetaObjectProvider$instance; As_ICollection_1(): System_Collections_Generic_Internal.ICollection_1$instance<KeyValuePair_2<CLROf<string>, unknown>>; As_IDictionary_2(): System_Collections_Generic_Internal.IDictionary_2$instance<CLROf<string>, unknown>; As_IEnumerable_1(): System_Collections_Generic_Internal.IEnumerable_1$instance<KeyValuePair_2<CLROf<string>, unknown>>; As_IEnumerable(): System_Collections_Internal.IEnumerable$instance; } export interface ExpandoObject$instance extends System_Collections_Generic_Internal.IDictionary_2$instance<CLROf<string>, unknown>, System_ComponentModel_Internal.INotifyPropertyChanged$instance, IDynamicMetaObjectProvider$instance {} export type ExpandoObject = ExpandoObject$instance & __ExpandoObject$views; export interface GetIndexBinder$instance extends DynamicMetaObjectBinder { readonly CallInfo: CallInfo; readonly ReturnType: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackGetIndex(target: DynamicMetaObject, indexes: DynamicMetaObject[]): DynamicMetaObject; FallbackGetIndex(target: DynamicMetaObject, indexes: DynamicMetaObject[], errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const GetIndexBinder: { }; export type GetIndexBinder = GetIndexBinder$instance; export interface GetMemberBinder$instance extends DynamicMetaObjectBinder { readonly IgnoreCase: boolean; readonly Name: string; readonly ReturnType: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackGetMember(target: DynamicMetaObject): DynamicMetaObject; FallbackGetMember(target: DynamicMetaObject, errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const GetMemberBinder: { }; export type GetMemberBinder = GetMemberBinder$instance; export interface InvokeBinder$instance extends DynamicMetaObjectBinder { readonly CallInfo: CallInfo; readonly ReturnType: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackInvoke(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; FallbackInvoke(target: DynamicMetaObject, args: DynamicMetaObject[], errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const InvokeBinder: { }; export type InvokeBinder = InvokeBinder$instance; export interface InvokeMemberBinder$instance extends DynamicMetaObjectBinder { readonly CallInfo: CallInfo; readonly IgnoreCase: boolean; readonly Name: string; readonly ReturnType: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackInvoke(target: DynamicMetaObject, args: DynamicMetaObject[], errorSuggestion: DynamicMetaObject): DynamicMetaObject; FallbackInvokeMember(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; FallbackInvokeMember(target: DynamicMetaObject, args: DynamicMetaObject[], errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const InvokeMemberBinder: { }; export type InvokeMemberBinder = InvokeMemberBinder$instance; export interface SetIndexBinder$instance extends DynamicMetaObjectBinder { readonly CallInfo: CallInfo; readonly ReturnType: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackSetIndex(target: DynamicMetaObject, indexes: DynamicMetaObject[], value: DynamicMetaObject): DynamicMetaObject; FallbackSetIndex(target: DynamicMetaObject, indexes: DynamicMetaObject[], value: DynamicMetaObject, errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const SetIndexBinder: { }; export type SetIndexBinder = SetIndexBinder$instance; export interface SetMemberBinder$instance extends DynamicMetaObjectBinder { readonly IgnoreCase: boolean; readonly Name: string; readonly ReturnType: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackSetMember(target: DynamicMetaObject, value: DynamicMetaObject): DynamicMetaObject; FallbackSetMember(target: DynamicMetaObject, value: DynamicMetaObject, errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const SetMemberBinder: { }; export type SetMemberBinder = SetMemberBinder$instance; export interface UnaryOperationBinder$instance extends DynamicMetaObjectBinder { readonly Operation: ExpressionType; readonly ReturnType: Type; Bind(target: DynamicMetaObject, args: DynamicMetaObject[]): DynamicMetaObject; Bind(args: unknown[], parameters: ReadOnlyCollection_1<ParameterExpression>, returnLabel: LabelTarget): Expression; FallbackUnaryOperation(target: DynamicMetaObject): DynamicMetaObject; FallbackUnaryOperation(target: DynamicMetaObject, errorSuggestion: DynamicMetaObject): DynamicMetaObject; } export const UnaryOperationBinder: { }; export type UnaryOperationBinder = UnaryOperationBinder$instance;