UNPKG

@tsonic/dotnet-pure

Version:

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

644 lines (446 loc) 20.3 kB
// Generated by tsbindgen - Architecture // Namespace: System.ComponentModel.DataAnnotations // Assembly: System.ComponentModel.Annotations // 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 { ICollection_1, IDictionary_2, IEnumerable_1 } from "../../System.Collections.Generic/internal/index.js"; import type { IDictionary } from "../../System.Collections/internal/index.js"; import * as System_ComponentModel_Internal from "../../System.ComponentModel/internal/index.js"; import type { ICustomTypeDescriptor, TypeDescriptionProvider } from "../../System.ComponentModel/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 { ISerializable, SerializationInfo, StreamingContext } from "../../System.Runtime.Serialization/internal/index.js"; import * as System_Internal from "../../System/internal/index.js"; import type { Attribute, Boolean as ClrBoolean, Double, Enum, Exception, Func_2, IComparable, IConvertible, IFormatProvider, IFormattable, Int32, IServiceProvider, ISpanFormattable, Nullable_1, Object as ClrObject, String as ClrString, TimeSpan, 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 DataType { Custom = 0, DateTime = 1, Date = 2, Time = 3, Duration = 4, PhoneNumber = 5, Currency = 6, Text = 7, Html = 8, MultilineText = 9, EmailAddress = 10, Password = 11, Url = 12, ImageUrl = 13, CreditCard = 14, PostalCode = 15, Upload = 16 } export interface IValidatableObject$instance { Validate(validationContext: ValidationContext): IEnumerable_1<ValidationResult>; } export type IValidatableObject = IValidatableObject$instance; export interface AllowedValuesAttribute$instance extends ValidationAttribute { readonly Values: unknown[]; IsValid(value: unknown): boolean; } export const AllowedValuesAttribute: { new(values: unknown[]): AllowedValuesAttribute$instance; }; export type AllowedValuesAttribute = AllowedValuesAttribute$instance; export interface AssociatedMetadataTypeTypeDescriptionProvider$instance extends TypeDescriptionProvider { GetTypeDescriptor(objectType: Type, instance: unknown): ICustomTypeDescriptor; GetTypeDescriptor(objectType: Type): ICustomTypeDescriptor; GetTypeDescriptor(instance: unknown): ICustomTypeDescriptor; } export const AssociatedMetadataTypeTypeDescriptionProvider: { new(type_: Type): AssociatedMetadataTypeTypeDescriptionProvider$instance; new(type_: Type, associatedMetadataType: Type): AssociatedMetadataTypeTypeDescriptionProvider$instance; }; export type AssociatedMetadataTypeTypeDescriptionProvider = AssociatedMetadataTypeTypeDescriptionProvider$instance; export interface AssociationAttribute$instance extends Attribute { IsForeignKey: boolean; readonly Name: string; readonly OtherKey: string; readonly OtherKeyMembers: IEnumerable_1<CLROf<string>>; readonly ThisKey: string; readonly ThisKeyMembers: IEnumerable_1<CLROf<string>>; } export const AssociationAttribute: { new(name: string, thisKey: string, otherKey: string): AssociationAttribute$instance; }; export type AssociationAttribute = AssociationAttribute$instance; export interface Base64StringAttribute$instance extends ValidationAttribute { IsValid(value: unknown): boolean; } export const Base64StringAttribute: { new(): Base64StringAttribute$instance; }; export type Base64StringAttribute = Base64StringAttribute$instance; export interface CompareAttribute$instance extends ValidationAttribute { readonly OtherProperty: string; readonly OtherPropertyDisplayName: string; readonly RequiresValidationContext: boolean; FormatErrorMessage(name: string): string; } export const CompareAttribute: { new(otherProperty: string): CompareAttribute$instance; }; export type CompareAttribute = CompareAttribute$instance; export interface ConcurrencyCheckAttribute$instance extends Attribute { } export const ConcurrencyCheckAttribute: { new(): ConcurrencyCheckAttribute$instance; }; export type ConcurrencyCheckAttribute = ConcurrencyCheckAttribute$instance; export interface CreditCardAttribute$instance extends DataTypeAttribute { IsValid(value: unknown): boolean; } export const CreditCardAttribute: { new(): CreditCardAttribute$instance; }; export type CreditCardAttribute = CreditCardAttribute$instance; export interface CustomValidationAttribute$instance extends ValidationAttribute { readonly Method: string; readonly RequiresValidationContext: boolean; readonly TypeId: unknown; readonly ValidatorType: Type; FormatErrorMessage(name: string): string; } export const CustomValidationAttribute: { new(validatorType: Type, method: string): CustomValidationAttribute$instance; }; export type CustomValidationAttribute = CustomValidationAttribute$instance; export interface DataTypeAttribute$instance extends ValidationAttribute { readonly CustomDataType: string; readonly DataType: DataType; readonly DisplayFormat: DisplayFormatAttribute; GetDataTypeName(): string; IsValid(value: unknown): boolean; } export const DataTypeAttribute: { new(dataType: DataType): DataTypeAttribute$instance; new(customDataType: string): DataTypeAttribute$instance; }; export type DataTypeAttribute = DataTypeAttribute$instance; export interface DeniedValuesAttribute$instance extends ValidationAttribute { readonly Values: unknown[]; IsValid(value: unknown): boolean; } export const DeniedValuesAttribute: { new(values: unknown[]): DeniedValuesAttribute$instance; }; export type DeniedValuesAttribute = DeniedValuesAttribute$instance; export interface DisplayAttribute$instance extends Attribute { AutoGenerateField: boolean; AutoGenerateFilter: boolean; Description: string; GroupName: string; Name: string; Order: int; Prompt: string; ResourceType: Type; ShortName: string; GetAutoGenerateField(): Nullable_1<CLROf<boolean>>; GetAutoGenerateFilter(): Nullable_1<CLROf<boolean>>; GetDescription(): string; GetGroupName(): string; GetName(): string; GetOrder(): Nullable_1<CLROf<int>>; GetPrompt(): string; GetShortName(): string; } export const DisplayAttribute: { new(): DisplayAttribute$instance; }; export type DisplayAttribute = DisplayAttribute$instance; export interface DisplayColumnAttribute$instance extends Attribute { readonly DisplayColumn: string; readonly SortColumn: string; readonly SortDescending: boolean; } export const DisplayColumnAttribute: { new(displayColumn: string): DisplayColumnAttribute$instance; new(displayColumn: string, sortColumn: string): DisplayColumnAttribute$instance; new(displayColumn: string, sortColumn: string, sortDescending: boolean): DisplayColumnAttribute$instance; }; export type DisplayColumnAttribute = DisplayColumnAttribute$instance; export interface DisplayFormatAttribute$instance extends Attribute { ApplyFormatInEditMode: boolean; ConvertEmptyStringToNull: boolean; DataFormatString: string; HtmlEncode: boolean; NullDisplayText: string; NullDisplayTextResourceType: Type; GetNullDisplayText(): string; } export const DisplayFormatAttribute: { new(): DisplayFormatAttribute$instance; }; export type DisplayFormatAttribute = DisplayFormatAttribute$instance; export interface EditableAttribute$instance extends Attribute { readonly AllowEdit: boolean; AllowInitialValue: boolean; } export const EditableAttribute: { new(allowEdit: boolean): EditableAttribute$instance; }; export type EditableAttribute = EditableAttribute$instance; export interface EmailAddressAttribute$instance extends DataTypeAttribute { IsValid(value: unknown): boolean; } export const EmailAddressAttribute: { new(): EmailAddressAttribute$instance; }; export type EmailAddressAttribute = EmailAddressAttribute$instance; export interface EnumDataTypeAttribute$instance extends DataTypeAttribute { readonly EnumType: Type; IsValid(value: unknown): boolean; } export const EnumDataTypeAttribute: { new(enumType: Type): EnumDataTypeAttribute$instance; }; export type EnumDataTypeAttribute = EnumDataTypeAttribute$instance; export interface FileExtensionsAttribute$instance extends DataTypeAttribute { Extensions: string; FormatErrorMessage(name: string): string; IsValid(value: unknown): boolean; } export const FileExtensionsAttribute: { new(): FileExtensionsAttribute$instance; }; export type FileExtensionsAttribute = FileExtensionsAttribute$instance; export interface FilterUIHintAttribute$instance extends Attribute { readonly ControlParameters: IDictionary_2<CLROf<string>, unknown>; readonly FilterUIHint: string; readonly PresentationLayer: string; Equals(obj: unknown): boolean; GetHashCode(): int; } export const FilterUIHintAttribute: { new(filterUIHint: string): FilterUIHintAttribute$instance; new(filterUIHint: string, presentationLayer: string): FilterUIHintAttribute$instance; new(filterUIHint: string, presentationLayer: string, controlParameters: unknown[]): FilterUIHintAttribute$instance; }; export type FilterUIHintAttribute = FilterUIHintAttribute$instance; export interface KeyAttribute$instance extends Attribute { } export const KeyAttribute: { new(): KeyAttribute$instance; }; export type KeyAttribute = KeyAttribute$instance; export interface LengthAttribute$instance extends ValidationAttribute { readonly MaximumLength: int; readonly MinimumLength: int; FormatErrorMessage(name: string): string; IsValid(value: unknown): boolean; } export const LengthAttribute: { new(minimumLength: int, maximumLength: int): LengthAttribute$instance; }; export type LengthAttribute = LengthAttribute$instance; export interface MaxLengthAttribute$instance extends ValidationAttribute { readonly Length: int; FormatErrorMessage(name: string): string; IsValid(value: unknown): boolean; } export const MaxLengthAttribute: { new(length: int): MaxLengthAttribute$instance; new(): MaxLengthAttribute$instance; }; export type MaxLengthAttribute = MaxLengthAttribute$instance; export interface MetadataTypeAttribute$instance extends Attribute { readonly MetadataClassType: Type; } export const MetadataTypeAttribute: { new(metadataClassType: Type): MetadataTypeAttribute$instance; }; export type MetadataTypeAttribute = MetadataTypeAttribute$instance; export interface MinLengthAttribute$instance extends ValidationAttribute { readonly Length: int; FormatErrorMessage(name: string): string; IsValid(value: unknown): boolean; } export const MinLengthAttribute: { new(length: int): MinLengthAttribute$instance; }; export type MinLengthAttribute = MinLengthAttribute$instance; export interface PhoneAttribute$instance extends DataTypeAttribute { IsValid(value: unknown): boolean; } export const PhoneAttribute: { new(): PhoneAttribute$instance; }; export type PhoneAttribute = PhoneAttribute$instance; export interface RangeAttribute$instance extends ValidationAttribute { ConvertValueInInvariantCulture: boolean; readonly Maximum: unknown; MaximumIsExclusive: boolean; readonly Minimum: unknown; MinimumIsExclusive: boolean; readonly OperandType: Type; ParseLimitsInInvariantCulture: boolean; FormatErrorMessage(name: string): string; IsValid(value: unknown): boolean; } export const RangeAttribute: { new(minimum: int, maximum: int): RangeAttribute$instance; new(minimum: double, maximum: double): RangeAttribute$instance; new(type_: Type, minimum: string, maximum: string): RangeAttribute$instance; }; export type RangeAttribute = RangeAttribute$instance; export interface RegularExpressionAttribute$instance extends ValidationAttribute { readonly MatchTimeout: TimeSpan; MatchTimeoutInMilliseconds: int; readonly Pattern: string; FormatErrorMessage(name: string): string; IsValid(value: unknown): boolean; } export const RegularExpressionAttribute: { new(pattern: string): RegularExpressionAttribute$instance; }; export type RegularExpressionAttribute = RegularExpressionAttribute$instance; export interface RequiredAttribute$instance extends ValidationAttribute { AllowEmptyStrings: boolean; IsValid(value: unknown): boolean; } export const RequiredAttribute: { new(): RequiredAttribute$instance; }; export type RequiredAttribute = RequiredAttribute$instance; export interface ScaffoldColumnAttribute$instance extends Attribute { readonly Scaffold: boolean; } export const ScaffoldColumnAttribute: { new(scaffold: boolean): ScaffoldColumnAttribute$instance; }; export type ScaffoldColumnAttribute = ScaffoldColumnAttribute$instance; export interface StringLengthAttribute$instance extends ValidationAttribute { readonly MaximumLength: int; MinimumLength: int; FormatErrorMessage(name: string): string; IsValid(value: unknown): boolean; } export const StringLengthAttribute: { new(maximumLength: int): StringLengthAttribute$instance; }; export type StringLengthAttribute = StringLengthAttribute$instance; export interface TimestampAttribute$instance extends Attribute { } export const TimestampAttribute: { new(): TimestampAttribute$instance; }; export type TimestampAttribute = TimestampAttribute$instance; export interface UIHintAttribute$instance extends Attribute { readonly ControlParameters: IDictionary_2<CLROf<string>, unknown>; readonly PresentationLayer: string; readonly UIHint: string; Equals(obj: unknown): boolean; GetHashCode(): int; } export const UIHintAttribute: { new(uiHint: string): UIHintAttribute$instance; new(uiHint: string, presentationLayer: string): UIHintAttribute$instance; new(uiHint: string, presentationLayer: string, controlParameters: unknown[]): UIHintAttribute$instance; }; export type UIHintAttribute = UIHintAttribute$instance; export interface UrlAttribute$instance extends DataTypeAttribute { IsValid(value: unknown): boolean; } export const UrlAttribute: { new(): UrlAttribute$instance; }; export type UrlAttribute = UrlAttribute$instance; export interface ValidationAttribute$instance extends Attribute { ErrorMessage: string; ErrorMessageResourceName: string; ErrorMessageResourceType: Type; readonly RequiresValidationContext: boolean; FormatErrorMessage(name: string): string; GetValidationResult(value: unknown, validationContext: ValidationContext): ValidationResult; IsValid(value: unknown): boolean; Validate(value: unknown, name: string): void; Validate(value: unknown, validationContext: ValidationContext): void; } export const ValidationAttribute: { }; export type ValidationAttribute = ValidationAttribute$instance; export interface ValidationContext$instance { DisplayName: string; readonly Items: IDictionary_2<unknown, unknown>; MemberName: string; readonly ObjectInstance: unknown; readonly ObjectType: Type; GetService(serviceType: Type): unknown; InitializeServiceProvider(serviceProvider: Func_2<Type, unknown>): void; } export const ValidationContext: { new(instance: unknown): ValidationContext$instance; new(instance: unknown, items: IDictionary_2<unknown, unknown>): ValidationContext$instance; new(instance: unknown, serviceProvider: IServiceProvider, items: IDictionary_2<unknown, unknown>): ValidationContext$instance; new(instance: unknown, displayName: string, serviceProvider: IServiceProvider, items: IDictionary_2<unknown, unknown>): ValidationContext$instance; }; export interface __ValidationContext$views { As_IServiceProvider(): System_Internal.IServiceProvider$instance; } export interface ValidationContext$instance extends System_Internal.IServiceProvider$instance {} export type ValidationContext = ValidationContext$instance & __ValidationContext$views; export interface ValidationException$instance extends Exception { readonly ValidationAttribute: ValidationAttribute; readonly ValidationResult: ValidationResult; readonly Value: unknown; GetObjectData(info: SerializationInfo, context: StreamingContext): void; } export const ValidationException: { new(validationResult: ValidationResult, validatingAttribute: ValidationAttribute, value: unknown): ValidationException$instance; new(errorMessage: string, validatingAttribute: ValidationAttribute, value: unknown): ValidationException$instance; new(): ValidationException$instance; new(message: string): ValidationException$instance; new(message: string, innerException: Exception): ValidationException$instance; }; export interface __ValidationException$views { As_ISerializable(): System_Runtime_Serialization_Internal.ISerializable$instance; } export type ValidationException = ValidationException$instance & __ValidationException$views; export interface ValidationResult$instance { ErrorMessage: string; readonly MemberNames: IEnumerable_1<CLROf<string>>; ToString(): string; } export const ValidationResult: { new(errorMessage: string): ValidationResult$instance; new(errorMessage: string, memberNames: IEnumerable_1<CLROf<string>>): ValidationResult$instance; readonly Success: ValidationResult; }; export type ValidationResult = ValidationResult$instance; export abstract class Validator$instance { static TryValidateObject(instance: unknown, validationContext: ValidationContext, validationResults: ICollection_1<ValidationResult>, validateAllProperties: boolean): boolean; static TryValidateObject(instance: unknown, validationContext: ValidationContext, validationResults: ICollection_1<ValidationResult>): boolean; static TryValidateProperty(value: unknown, validationContext: ValidationContext, validationResults: ICollection_1<ValidationResult>): boolean; static TryValidateValue(value: unknown, validationContext: ValidationContext, validationResults: ICollection_1<ValidationResult>, validationAttributes: IEnumerable_1<ValidationAttribute>): boolean; static ValidateObject(instance: unknown, validationContext: ValidationContext, validateAllProperties: boolean): void; static ValidateObject(instance: unknown, validationContext: ValidationContext): void; static ValidateProperty(value: unknown, validationContext: ValidationContext): void; static ValidateValue(value: unknown, validationContext: ValidationContext, validationAttributes: IEnumerable_1<ValidationAttribute>): void; } export type Validator = Validator$instance;