+ * Worker info.
+ */
+ readonly info: WorkerInfo
+ /**
+ * Worker usage statistics.
+ */
+ readonly usage: WorkerUsage
+ /**
+ * Worker choice strategy data.
+ * This is used to store data that are specific to the worker choice strategy.
+ */
+ strategyData?: StrategyData
+ /**
+ * Message channel (worker_threads only).
+ */
+ readonly messageChannel?: MessageChannel
+ /**
+ * Tasks queue back pressure size.
+ * This is the number of tasks that can be enqueued before the worker node has back pressure.
+ */
+ tasksQueueBackPressureSize: number
+ /**
+ * Tasks queue size.
+ *
+ * @returns The tasks queue size.
+ */
+ readonly tasksQueueSize: () => number
+ /**
+ * Enqueue task.
+ *
+ * @param task - The task to queue.
+ * @returns The tasks queue size.
+ */
+ readonly enqueueTask: (task: Task<Data>) => number
+ /**
+ * Prepends a task to the tasks queue.
+ *
+ * @param task - The task to prepend.
+ * @returns The tasks queue size.
+ */
+ readonly unshiftTask: (task: Task<Data>) => number
+ /**
+ * Dequeue task.
+ *
+ * @returns The dequeued task.
+ */
+ readonly dequeueTask: () => Task<Data> | undefined
+ /**
+ * Pops a task from the tasks queue.
+ *
+ * @returns The popped task.