import type { SessionManager } from "@caupulican/pi-agent-core/node"; import { type SessionSnapshotPayload } from "../session-snapshot.ts"; import { type TaskStepsState } from "./task-state.ts"; export declare const TASK_STEPS_STATE_CUSTOM_TYPE = "task_steps_state"; export type TaskStepsStateSnapshotPayload = SessionSnapshotPayload<"state", TaskStepsState>; export declare function appendTaskStepsStateSnapshot(sessionManager: Pick, state: TaskStepsState): string; /** Pure payload decode: validates + clones a task-steps snapshot payload. No SessionManager access, * so unit tests can exercise decoding directly against a constructed `data` value. */ export declare function decodeTaskStepsStateSnapshotPayload(data: unknown): TaskStepsState | undefined; /** * Most recent VALID task-steps snapshot on the active branch. Walks leaf→root ancestry via * `getLatestCustomEntryOnBranch`, skipping entries whose payload fails to decode and resuming * the search from that entry's parent, so an older valid snapshot still wins over a newer * malformed one (matches the pre-branch-scoping flat-list resolution semantics). */ export declare function getLatestTaskStepsStateSnapshot(sessionManager: Pick): TaskStepsState | undefined; //# sourceMappingURL=session-task-state.d.ts.map