import type { PagedResult, Task } from "./schema.js"; import type { CampaignApiClientOptions } from "./types.js"; /** List tasks under a deliverable (paged). */ export declare const listTasks: (options: CampaignApiClientOptions, projectId: string, deliverableId: string) => Promise>; /** Read a single task by id. */ export declare const getTask: (options: CampaignApiClientOptions, projectId: string, deliverableId: string, taskId: string) => Promise; /** Input for `createTask`. Field set observed on the wire. */ export type CreateTaskInput = { name: string; due_date?: string; status?: string; dependencies?: unknown[]; }; /** Create a task under a deliverable. Returns the persisted record (201). */ export declare const createTask: (options: CampaignApiClientOptions, projectId: string, deliverableId: string, input: CreateTaskInput) => Promise; /** * Input for `updateTask`. PUT is full-replacement — fetch the task * first and merge if you only mean to change one field. */ export type UpdateTaskInput = { name: string; due_date?: string; status?: string; priority?: string | null; description?: string | null; assignee?: string | null; labels?: string[]; dependencies?: unknown[]; archived?: boolean; [key: string]: unknown; }; /** Full-replacement update of a task (PUT). Returns the persisted record. */ export declare const updateTask: (options: CampaignApiClientOptions, projectId: string, deliverableId: string, taskId: string, input: UpdateTaskInput) => Promise; /** * Delete a task * (`DELETE …/projects/{p}/deliverables/{d}/tasks/{t}`). Returns void — * a 204 is expected on success. * * UNVERIFIED — DELETE was never captured; inferred from REST conventions * (the same single-task path `getTask`/`updateTask` use). Smoke-test * before relying on it. */ export declare const deleteTask: (options: CampaignApiClientOptions, projectId: string, deliverableId: string, taskId: string) => Promise;