// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../resource'; import { isRequestOptions } from '../core'; import * as Core from '../core'; import * as TaskWorkersAPI from './task-workers'; export class TaskWorkers extends APIResource { /** * Read active task workers. Optionally filter by task keys. */ query( params?: TaskWorkerQueryParams, options?: Core.RequestOptions, ): Core.APIPromise; query(options?: Core.RequestOptions): Core.APIPromise; query( params: TaskWorkerQueryParams | Core.RequestOptions = {}, options?: Core.RequestOptions, ): Core.APIPromise { if (isRequestOptions(params)) { return this.query({}, params); } const { 'x-prefect-api-version': xPrefectAPIVersion, ...body } = params; return this._client.post('/api/task_workers/filter', { body, ...options, headers: { ...(xPrefectAPIVersion != null ? { 'x-prefect-api-version': xPrefectAPIVersion } : undefined), ...options?.headers, }, }); } } export interface TaskWorkerResponse { identifier: string; task_keys: Array; timestamp: string; } export type TaskWorkerQueryResponse = Array; export interface TaskWorkerQueryParams { /** * Body param: The task worker filter */ task_worker_filter?: TaskWorkerQueryParams.TaskWorkerFilter | null; /** * Header param: */ 'x-prefect-api-version'?: string; } export namespace TaskWorkerQueryParams { /** * The task worker filter */ export interface TaskWorkerFilter { task_keys: Array; } } export namespace TaskWorkers { export import TaskWorkerResponse = TaskWorkersAPI.TaskWorkerResponse; export import TaskWorkerQueryResponse = TaskWorkersAPI.TaskWorkerQueryResponse; export import TaskWorkerQueryParams = TaskWorkersAPI.TaskWorkerQueryParams; }