import { ClientSDK, RequestOptions } from "../lib/sdks.js";
import { DeleteV2TasksTaskIdRequest, DeleteV2TasksTaskIdResponse } from "../models/operations/deletev2taskstaskid.js";
import { GetV2TasksRequest, GetV2TasksResponse } from "../models/operations/getv2tasks.js";
import { GetV2TasksTaskIdRequest, GetV2TasksTaskIdResponse } from "../models/operations/getv2taskstaskid.js";
import { PatchV2TasksTaskIdRequest, PatchV2TasksTaskIdResponse } from "../models/operations/patchv2taskstaskid.js";
import { PostV2TasksRequest, PostV2TasksResponse } from "../models/operations/postv2tasks.js";
export declare class Tasks extends ClientSDK {
    /**
     * List tasks
     *
     * @remarks
     * List all tasks. Results are sorted by creation date, from oldest to newest.
     *
     * Required scopes: `task:read`, `object_configuration:read`, `record_permission:read`, `user_management:read`.
     */
    list(request: GetV2TasksRequest, options?: RequestOptions): Promise<GetV2TasksResponse>;
    /**
     * Create a task
     *
     * @remarks
     * Creates a new task.
     *
     * At present, tasks can only be created from plaintext without record reference formatting.
     *
     * Required scopes: `task:read-write`, `object_configuration:read`, `record_permission:read`, `user_management:read`.
     */
    create(request: PostV2TasksRequest, options?: RequestOptions): Promise<PostV2TasksResponse>;
    /**
     * Get a task
     *
     * @remarks
     * Get a single task by ID.
     *
     * Required scopes: `task:read`, `object_configuration:read`, `record_permission:read`, `user_management:read`.
     */
    get(request: GetV2TasksTaskIdRequest, options?: RequestOptions): Promise<GetV2TasksTaskIdResponse>;
    /**
     * 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`.
     */
    update(request: PatchV2TasksTaskIdRequest, options?: RequestOptions): Promise<PatchV2TasksTaskIdResponse>;
    /**
     * Delete a task
     *
     * @remarks
     * Delete a task by ID.
     *
     * Required scopes: `task:read-write`.
     */
    delete(request: DeleteV2TasksTaskIdRequest, options?: RequestOptions): Promise<DeleteV2TasksTaskIdResponse>;
}
//# sourceMappingURL=tasks.d.ts.map