/**
 * OwlCoda Native TaskUpdate Tool
 *
 * Updates an existing task's fields (subject, description, status, etc.).
 *
 * Upstream parity notes:
 * - Upstream supports addBlocks/removeBlocks, teammate mailbox writes
 * - Supports 'deleted' as a special status that removes the task
 * - Our version: same update operations, simplified blocking
 */
import type { NativeToolDef } from './types.js';
import { type TaskStatus, type TaskStepStatus, type TaskVerificationResult } from './task-store.js';
export interface TaskUpdateInput {
    taskId: string;
    subject?: string;
    description?: string;
    status?: TaskStatus | 'deleted';
    activeForm?: string;
    addBlocks?: string[];
    removeBlocks?: string[];
    /** Step ID to update (Slice 1). If present, performs a step-level update. */
    stepId?: string;
    /** New status for the step (Slice 1). */
    stepStatus?: TaskStepStatus;
    /** Paths touched during this step (Slice 1). Appended to existing touchedPaths. */
    touchedPaths?: string[];
    /** Verification results to record for this step (Slice 1). Replaces existing results. */
    verificationResults?: TaskVerificationResult[];
    /** Failure reason for failed/blocked steps (Slice 1). Required when stepStatus is 'failed' or 'blocked'. */
    failureReason?: string;
}
export declare function createTaskUpdateTool(): NativeToolDef<TaskUpdateInput>;
