import { type PlanOperation } from "../agent/task-plan.js"; import { PlanMeta, PlanTask, SessionPlan, TaskState } from "./plan/sqlite-backend.js"; import { shortenPlanGoal } from "./plan/task-normalization.js"; import { isBareTaskIdTitle } from "./plan/mutation.js"; export { activeForegroundTasks, enforcePlanInvariants, loadPlan, mutatePlan, savePlan, stripBareTaskIdTasks, validateSessionPlan } from "./plan/mutation.js"; export { isBareTaskIdTitle }; export type { PlanMutationResult } from "./plan/mutation.js"; export { appendPlanTask, applyForegroundSnapshot, nextPlanTaskId, normalizeTaskDependencies } from "./plan/task-normalization.js"; export { shortenPlanGoal }; export type { PlanMeta, PlanStatus, PlanTask, SessionPlan, TaskEvidence, TaskState } from "./plan/sqlite-backend.js"; export declare function tasksFromTitles(titles: string[]): PlanTask[]; export declare function createPlan(input: { sessionId: string; goal: string; detail: string; taskTitles: string[]; kind?: string | undefined; meta?: PlanMeta | undefined; }): SessionPlan; export declare function patchPlanMeta(plan: SessionPlan, patch: PlanMeta): SessionPlan; export declare function deletePlan(sessionId: string): Promise; export declare function clearAllPlans(): Promise; export declare function applySessionPlanOperation(plan: SessionPlan, operation: PlanOperation): SessionPlan; export declare function readyPlanTasks(plan: SessionPlan): PlanTask[]; export declare function markTask(plan: SessionPlan, taskId: string, state: TaskState, note?: string | undefined): boolean; export declare function markNextTask(plan: SessionPlan, state: TaskState): PlanTask | undefined; export declare function foregroundTasks(plan: SessionPlan): PlanTask[]; export declare function foregroundRemaining(plan: SessionPlan): PlanTask[]; export declare function foregroundActiveTask(plan: SessionPlan): PlanTask | undefined; export declare function responderOpenTasks(plan: SessionPlan): PlanTask[]; export declare function planProgress(plan: SessionPlan): { done: number; total: number; }; export declare function isPlanTerminal(plan: SessionPlan): boolean; export declare function isPlanSuccessful(plan: SessionPlan): boolean; /** @deprecated Use isPlanTerminal or isPlanSuccessful explicitly. */ export declare function isPlanComplete(plan: SessionPlan): boolean;