@tsonic/dotnet-pure
Version:
TypeScript type definitions for .NET 10 BCL (Base Class Library) - CLR naming
131 lines (99 loc) • 6.08 kB
TypeScript
// Generated by tsbindgen - Architecture
// Namespace: System.IO.Enumeration
// 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 * as System_Collections_Generic_Internal from "../../System.Collections.Generic/internal/index.js";
import type { IEnumerable_1, IEnumerator_1 } from "../../System.Collections.Generic/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 type { EnumerationOptions, FileAttributes, FileSystemInfo } from "../../System.IO/internal/index.js";
import type { MethodInfo } from "../../System.Reflection/internal/index.js";
import * as System_Runtime_ConstrainedExecution_Internal from "../../System.Runtime.ConstrainedExecution/internal/index.js";
import type { CriticalFinalizerObject } from "../../System.Runtime.ConstrainedExecution/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 { AsyncCallback, Boolean as ClrBoolean, Char, DateTimeOffset, Delegate, IAsyncResult, ICloneable, IDisposable, Int32, Int64, IntPtr, MulticastDelegate, Object as ClrObject, ReadOnlySpan_1, String as ClrString, Type, 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 type FileSystemEnumerable_1_FindPredicate<TResult> = (entry: ref<FileSystemEntry>) => boolean;
export type FileSystemEnumerable_1_FindTransform<TResult> = (entry: ref<FileSystemEntry>) => TResult;
export interface FileSystemEntry$instance {
readonly Attributes: FileAttributes;
readonly CreationTimeUtc: DateTimeOffset;
readonly Directory: ReadOnlySpan_1<CLROf<char>>;
readonly FileName: ReadOnlySpan_1<CLROf<char>>;
readonly IsDirectory: boolean;
readonly IsHidden: boolean;
readonly LastAccessTimeUtc: DateTimeOffset;
readonly LastWriteTimeUtc: DateTimeOffset;
readonly Length: long;
readonly OriginalRootDirectory: ReadOnlySpan_1<CLROf<char>>;
readonly RootDirectory: ReadOnlySpan_1<CLROf<char>>;
ToFileSystemInfo(): FileSystemInfo;
ToFullPath(): string;
ToSpecifiedFullPath(): string;
}
export const FileSystemEntry: {
new(): FileSystemEntry$instance;
};
export type FileSystemEntry = FileSystemEntry$instance;
export interface FileSystemEnumerable_1$instance<TResult> {
ShouldIncludePredicate: FileSystemEnumerable_1_FindPredicate<TResult>;
ShouldRecursePredicate: FileSystemEnumerable_1_FindPredicate<TResult>;
GetEnumerator(): IEnumerator_1<TResult>;
}
export const FileSystemEnumerable_1: {
new<TResult>(directory: string, transform: FileSystemEnumerable_1_FindTransform<TResult>, options: EnumerationOptions): FileSystemEnumerable_1$instance<TResult>;
};
export interface __FileSystemEnumerable_1$views<TResult> {
As_IEnumerable_1(): System_Collections_Generic_Internal.IEnumerable_1$instance<TResult>;
As_IEnumerable(): System_Collections_Internal.IEnumerable$instance;
}
export type FileSystemEnumerable_1<TResult> = FileSystemEnumerable_1$instance<TResult> & __FileSystemEnumerable_1$views<TResult>;
export interface FileSystemEnumerator_1$instance<TResult> extends CriticalFinalizerObject, IDisposable {
readonly Current: TResult;
Dispose(): void;
MoveNext(): boolean;
Reset(): void;
}
export const FileSystemEnumerator_1: {
new<TResult>(directory: string, options: EnumerationOptions): FileSystemEnumerator_1$instance<TResult>;
};
export interface __FileSystemEnumerator_1$views<TResult> {
As_IEnumerator_1(): System_Collections_Generic_Internal.IEnumerator_1$instance<TResult>;
As_IEnumerator(): System_Collections_Internal.IEnumerator$instance;
}
export type FileSystemEnumerator_1<TResult> = FileSystemEnumerator_1$instance<TResult> & __FileSystemEnumerator_1$views<TResult>;
export abstract class FileSystemName$instance {
static MatchesSimpleExpression(expression: ReadOnlySpan_1<CLROf<char>>, name: ReadOnlySpan_1<CLROf<char>>, ignoreCase?: boolean): boolean;
static MatchesWin32Expression(expression: ReadOnlySpan_1<CLROf<char>>, name: ReadOnlySpan_1<CLROf<char>>, ignoreCase?: boolean): boolean;
static TranslateWin32Expression(expression: string): string;
}
export type FileSystemName = FileSystemName$instance;