import { AttioCore } from "../core.js";
import { RequestOptions } from "../lib/sdks.js";
import { APIError } from "../models/errors/apierror.js";
import { PatchV2TasksTaskIdNotFoundError, PostV2TasksValidationTypeError } from "../models/errors/getv2objectsobject.js";
import { ConnectionError, InvalidRequestError, RequestAbortedError, RequestTimeoutError, UnexpectedClientError } from "../models/errors/httpclienterrors.js";
import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
import { PatchV2TasksTaskIdRequest, PatchV2TasksTaskIdResponse } from "../models/operations/patchv2taskstaskid.js";
import { APIPromise } from "../types/async.js";
import { Result } from "../types/fp.js";
/**
 * Update a task
 *
 * @remarks
 * Updates an existing task by `task_id`. At present, only the `deadline_at`, `is_completed`, `linked_records`, and `assignees` fields can be updated.
 *
 * Required scopes: `task:read-write`, `object_configuration:read`, `record_permission:read`, `user_management:read`.
 */
export declare function tasksUpdate(client: AttioCore, request: PatchV2TasksTaskIdRequest, options?: RequestOptions): APIPromise<Result<PatchV2TasksTaskIdResponse, PostV2TasksValidationTypeError | PatchV2TasksTaskIdNotFoundError | APIError | SDKValidationError | UnexpectedClientError | InvalidRequestError | RequestAbortedError | RequestTimeoutError | ConnectionError>>;
//# sourceMappingURL=tasksUpdate.d.ts.map