// Generated by tsbindgen - Architecture // Namespace: Microsoft.Extensions.ObjectPool // Facade - Public API Surface // Import internal declarations import * as Internal from './Microsoft.Extensions.ObjectPool/internal/index.js'; // Core type aliases from @tsonic/core import type { fnptr, ptr, sbyte, byte, short, ushort, int, uint, long, ulong, int128, uint128, half, float, double, decimal, nint, nuint, char } from '@tsonic/core/types.js'; // Cross-namespace type imports for constraints import type { Boolean as ClrBoolean, Int32, Object as ClrObject, Void } from '@tsonic/dotnet/System.js'; import type { StringBuilder } from '@tsonic/dotnet/System.Text.js'; // Public API exports (curated - no internal $instance/$views leakage) export { DefaultObjectPool_1 as DefaultObjectPool } from './Microsoft.Extensions.ObjectPool/internal/index.js'; export { DefaultObjectPoolProvider as DefaultObjectPoolProvider } from './Microsoft.Extensions.ObjectPool/internal/index.js'; export { DefaultPooledObjectPolicy_1 as DefaultPooledObjectPolicy } from './Microsoft.Extensions.ObjectPool/internal/index.js'; export type IPooledObjectPolicy = Internal.IPooledObjectPolicy_1; export type IResettable = Internal.IResettable; export { LeakTrackingObjectPool_1 as LeakTrackingObjectPool } from './Microsoft.Extensions.ObjectPool/internal/index.js'; export { LeakTrackingObjectPoolProvider as LeakTrackingObjectPoolProvider } from './Microsoft.Extensions.ObjectPool/internal/index.js'; export { ObjectPoolProvider as ObjectPoolProvider } from './Microsoft.Extensions.ObjectPool/internal/index.js'; export { ObjectPoolProviderExtensions$instance as ObjectPoolProviderExtensions } from './Microsoft.Extensions.ObjectPool/internal/index.js'; export { PooledObjectPolicy_1 as PooledObjectPolicy } from './Microsoft.Extensions.ObjectPool/internal/index.js'; export { StringBuilderPooledObjectPolicy as StringBuilderPooledObjectPolicy } from './Microsoft.Extensions.ObjectPool/internal/index.js'; // Multi-arity family value exports (arity-0 constructors/static namespaces) export const ObjectPool: typeof Internal.ObjectPool$instance; // Multi-arity family sentinel (detects unspecified type parameters) declare const __unspecified: unique symbol; export type __ = typeof __unspecified; export type ObjectPool< T1 extends (object | null) | __ = __, > = [T1] extends [__] ? Internal.ObjectPool : [T1] extends [(object | null)] ? Internal.ObjectPool_1 : never; // Extension methods (C# using semantics) export type { ExtensionMethods_Microsoft_Extensions_ObjectPool as ExtensionMethods } from './__internal/extensions/index.js';