export interface TaskUpdateParams { taskId: string; accountId: string; name?: string; description?: string; /** * Status enum (`running` discriminates "action mid-flight" from `active` * ("commitment accepted")). Transition * to `completed` or `failed` auto-sets `completedAt`. Transition to * `failed` also requires `errorMessage` to be non-empty. */ status?: "pending" | "active" | "running" | "completed" | "failed" | "cancelled"; priority?: "low" | "normal" | "high" | "urgent"; dueDate?: string; /** Appended to notes with a timestamp — never overwrites */ note?: string; /** * append a single step label to the Task's `steps[]` array. * Atomic Cypher SET t.steps = coalesce(t.steps, []) + $step (no * read-modify-write race). Each appendStep call adds one entry; emit * one call per phase of the action. */ appendStep?: string; /** * error message stored on the Task when status transitions * to `failed`. Required for the `failed` transition; empty errorMessage * with status=failed is rejected. */ errorMessage?: string; /** * Task 1982 — reassign or unassign the task. A non-empty string sets * (:Task)-[:ASSIGNED_TO]->(:AdminUser) to that userId, validated against the * assignable set (house admins ∪ owner); `null` clears the assignment; * `undefined` (absent) leaves it untouched. Any prior ASSIGNED_TO is replaced. */ assigneeUserId?: string | null; } export declare function workUpdate(params: TaskUpdateParams): Promise; //# sourceMappingURL=work-update.d.ts.map