build: bump packageManager pnpm version
[poolifier.git] / src / index.ts
index db6960b86af815b03e43460a3cfef9dfc591a3f8..5b0eb9090e3c8cf583a67ee6c9d392842a23267c 100644 (file)
@@ -1,14 +1,78 @@
-import DynamicThreadPool from './dynamic'
-import FixedThreadPool from './fixed'
-import { ThreadWorker } from './workers'
-
+export type { CircularArray } from './circular-array.js'
+export type { Deque, ILinkedListNode } from './deque.js'
+export type { AbstractPool } from './pools/abstract-pool.js'
+export { DynamicClusterPool } from './pools/cluster/dynamic.js'
+export type { ClusterPoolOptions } from './pools/cluster/fixed.js'
+export { FixedClusterPool } from './pools/cluster/fixed.js'
+export type {
+  IPool,
+  PoolEvent,
+  PoolInfo,
+  PoolOptions,
+  PoolType,
+  TasksQueueOptions
+} from './pools/pool.js'
+export { PoolEvents, PoolTypes } from './pools/pool.js'
+export type {
+  IWorkerChoiceStrategy,
+  Measurement,
+  MeasurementOptions,
+  MeasurementStatisticsRequirements,
+  StrategyPolicy,
+  TaskStatisticsRequirements,
+  WorkerChoiceStrategy,
+  WorkerChoiceStrategyOptions
+} from './pools/selection-strategies/selection-strategies-types.js'
 export {
-  Draft,
-  FixedThreadPoolOptions,
-  WorkerWithMessageChannel
-} from './fixed'
-export { DynamicThreadPoolOptions } from './dynamic'
-export { ThreadWorkerOptions } from './workers'
-export { FixedThreadPool, DynamicThreadPool, ThreadWorker }
-
-module.exports = { FixedThreadPool, DynamicThreadPool, ThreadWorker }
+  Measurements,
+  WorkerChoiceStrategies
+} from './pools/selection-strategies/selection-strategies-types.js'
+export type { WorkerChoiceStrategyContext } from './pools/selection-strategies/worker-choice-strategy-context.js'
+export { DynamicThreadPool } from './pools/thread/dynamic.js'
+export type { ThreadPoolOptions } from './pools/thread/fixed.js'
+export { FixedThreadPool } from './pools/thread/fixed.js'
+export type {
+  ErrorHandler,
+  EventHandler,
+  EventLoopUtilizationMeasurementStatistics,
+  ExitHandler,
+  IWorker,
+  IWorkerNode,
+  MeasurementStatistics,
+  MessageHandler,
+  OnlineHandler,
+  StrategyData,
+  TaskStatistics,
+  WorkerInfo,
+  WorkerNodeEventDetail,
+  WorkerNodeOptions,
+  WorkerType,
+  WorkerUsage
+} from './pools/worker.js'
+export { WorkerTypes } from './pools/worker.js'
+export type {
+  MessageValue,
+  PromiseResponseWrapper,
+  Task,
+  TaskPerformance,
+  WorkerError,
+  WorkerStatistics,
+  Writable
+} from './utility-types.js'
+export { availableParallelism } from './utils.js'
+export type { AbstractWorker } from './worker/abstract-worker.js'
+export { ClusterWorker } from './worker/cluster-worker.js'
+export type {
+  TaskAsyncFunction,
+  TaskFunction,
+  TaskFunctionOperationResult,
+  TaskFunctions,
+  TaskSyncFunction
+} from './worker/task-functions.js'
+export { ThreadWorker } from './worker/thread-worker.js'
+export type {
+  KillBehavior,
+  KillHandler,
+  WorkerOptions
+} from './worker/worker-options.js'
+export { KillBehaviors } from './worker/worker-options.js'