+ * Adds a task function to this pool.
+ * If a task function with the same name already exists, it will be overwritten.
+ * @param name - The name of the task function.
+ * @param fn - The task function.
+ * @returns `true` if the task function was added, `false` otherwise.
+ * @throws {@link https://nodejs.org/api/errors.html#class-typeerror} If the `name` parameter is not a string or an empty string.
+ * @throws {@link https://nodejs.org/api/errors.html#class-typeerror} If the `fn` parameter is not a function or task function object.
+ */
+ readonly addTaskFunction: (
+ name: string,
+ fn: TaskFunction<Data, Response> | TaskFunctionObject<Data, Response>
+ ) => Promise<boolean>
+ /**
+ * Removes a task function from this pool.
+ * @param name - The name of the task function.
+ * @returns `true` if the task function was removed, `false` otherwise.
+ */
+ readonly removeTaskFunction: (name: string) => Promise<boolean>
+ /**
+ * Lists the properties of task functions available in this pool.
+ * @returns The properties of task functions available in this pool.
+ */
+ readonly listTaskFunctionsProperties: () => TaskFunctionProperties[]
+ /**
+ * Sets the default task function in this pool.
+ * @param name - The name of the task function.
+ * @returns `true` if the default task function was set, `false` otherwise.
+ */
+ readonly setDefaultTaskFunction: (name: string) => Promise<boolean>
+ /**
+ * Sets the default worker choice strategy in this pool.
+ * @param workerChoiceStrategy - The default worker choice strategy.