build(deps-dev): apply updates
[poolifier.git] / examples / typescript / smtp-client-pool / src / pool.ts
index f73094471fb017a3d385e5561168b7b38b5f2a21..747837037499e5665e0f6482cc7f4946be08882a 100644 (file)
@@ -1,24 +1,25 @@
-import { fileURLToPath } from 'node:url'
 import { dirname, extname, join } from 'node:path'
-import { DynamicThreadPool, availableParallelism } from 'poolifier'
-import { type WorkerData } from './types.js'
+import { fileURLToPath } from 'node:url'
+
+import type SMTPTransport from 'nodemailer/lib/smtp-transport/index.js'
+import { availableParallelism, DynamicThreadPool } from 'poolifier'
+
+import type { WorkerData } from './types.js'
 
 const workerFile = join(
   dirname(fileURLToPath(import.meta.url)),
   `worker${extname(fileURLToPath(import.meta.url))}`
 )
 
-export const smtpClientPool = new DynamicThreadPool<WorkerData>(
-  1,
-  availableParallelism(),
-  workerFile,
-  {
-    enableTasksQueue: true,
-    tasksQueueOptions: {
-      concurrency: 8
-    },
-    errorHandler: (e: Error) => {
-      console.error('Thread worker error:', e)
-    }
-  }
-)
+export const smtpClientPool = new DynamicThreadPool<
+  WorkerData,
+  SMTPTransport.SentMessageInfo
+>(0, availableParallelism(), workerFile, {
+  enableTasksQueue: true,
+  tasksQueueOptions: {
+    concurrency: 8,
+  },
+  errorHandler: (e: Error) => {
+    console.error('Thread worker error:', e)
+  },
+})