import type { TaskActivity, TaskHealth, TaskRecord } from "./types.js"; export declare const TASK_RECORD_KEYS: readonly ["schema_version", "protocol_version", "task_id", "run_id", "version", "activity", "health", "attempt", "max_attempts", "source_digest", "source_snapshot", "worktree_id", "worktree_path", "base_commit", "engine", "model", "advice_operation_id", "last_failure_operation_id", "last_failure_digest", "draft_pr_url", "pane_id", "provider_session_id", "launch_operation_id", "launch_identity_digest", "pending_verification", "policy_digest", "capability_evidence_digest", "created_at", "updated_at"]; export declare function parseTaskActivityStrict(value: unknown, label: string): TaskActivity; export declare function parseTaskHealthStrict(value: unknown, label: string): TaskHealth; /** * One private complete TaskRecord parser. * Rejects arrays, extras, missing keys, non-boolean pending, invalid engine, unsafe ints. */ export declare function parseExactTaskRecord(raw: unknown, label: string): TaskRecord; /** Canonical equality for object-valued fields (key order independent). */ export declare function canonicalFieldEqual(a: unknown, b: unknown): boolean; export declare function exactTaskEqual(a: TaskRecord, b: TaskRecord): boolean;