-import DynamicThreadPool from './dynamic'
-import FixedThreadPool from './fixed'
-import { ThreadWorker } from './workers'
-
-export type {
- Draft,
- FixedThreadPoolOptions,
- WorkerWithMessageChannel
-} from './fixed'
-export type { DynamicThreadPoolOptions } from './dynamic'
-export type { ThreadWorkerOptions } from './workers'
-export { FixedThreadPool, DynamicThreadPool, ThreadWorker }
-
-module.exports = { FixedThreadPool, DynamicThreadPool, ThreadWorker }
+export type { AbstractPool } from './pools/abstract-pool'
+export { DynamicClusterPool } from './pools/cluster/dynamic'
+export {
+ FixedClusterPool,
+ type ClusterPoolOptions
+} from './pools/cluster/fixed'
+export { PoolEvents, PoolTypes } from './pools/pool'
+export type {
+ IPool,
+ PoolEmitter,
+ PoolEvent,
+ PoolInfo,
+ PoolOptions,
+ PoolType,
+ TasksQueueOptions
+} from './pools/pool'
+export { WorkerTypes } from './pools/worker'
+export type {
+ ErrorHandler,
+ EventLoopUtilizationMeasurementStatistics,
+ ExitHandler,
+ IWorker,
+ IWorkerNode,
+ MeasurementStatistics,
+ MessageHandler,
+ OnlineHandler,
+ TaskStatistics,
+ WorkerInfo,
+ WorkerNodeEventCallback,
+ WorkerType,
+ WorkerUsage
+} from './pools/worker'
+export {
+ Measurements,
+ WorkerChoiceStrategies
+} from './pools/selection-strategies/selection-strategies-types'
+export type {
+ IWorkerChoiceStrategy,
+ Measurement,
+ MeasurementOptions,
+ MeasurementStatisticsRequirements,
+ StrategyPolicy,
+ TaskStatisticsRequirements,
+ WorkerChoiceStrategy,
+ WorkerChoiceStrategyOptions
+} from './pools/selection-strategies/selection-strategies-types'
+export type { WorkerChoiceStrategyContext } from './pools/selection-strategies/worker-choice-strategy-context'
+export { DynamicThreadPool } from './pools/thread/dynamic'
+export { FixedThreadPool, type ThreadPoolOptions } from './pools/thread/fixed'
+export type { AbstractWorker } from './worker/abstract-worker'
+export { ClusterWorker } from './worker/cluster-worker'
+export { ThreadWorker } from './worker/thread-worker'
+export { KillBehaviors } from './worker/worker-options'
+export type {
+ KillBehavior,
+ WorkerOptions,
+ KillHandler
+} from './worker/worker-options'
+export type {
+ TaskAsyncFunction,
+ TaskFunction,
+ TaskFunctions,
+ TaskSyncFunction
+} from './worker/task-functions'
+export type {
+ MessageValue,
+ PromiseResponseWrapper,
+ Task,
+ TaskError,
+ TaskPerformance,
+ WorkerStatistics,
+ Writable
+} from './utility-types'
+export type { CircularArray } from './circular-array'
+export type { Deque, Node } from './deque'
+export { availableParallelism } from './utils'