import type { SessionPlan } from "../../store/plan.js"; import { canMarkTaskDone, type LooseWorkReceipt, type TaskWorkLedger } from "../task-evidence.js"; export interface TaskGatePorts { readonly getLiveLedger: () => TaskWorkLedger | null; readonly setLiveLedger: (ledger: TaskWorkLedger) => void; readonly getLooseWork: () => readonly LooseWorkReceipt[]; readonly featureAppRequired: boolean; readonly existingProject: () => boolean; } export declare const planHasVerifiedRuntime: (plan: SessionPlan) => boolean; export declare const planHasVerifiedRemoteWork: (plan: SessionPlan) => boolean; export declare const resolveLedgerForTaskGate: (ports: TaskGatePorts, plan: SessionPlan, taskId: string) => TaskWorkLedger | null; export declare const evaluateTaskCompletionGate: (ports: TaskGatePorts, plan: SessionPlan, taskId: string) => ReturnType;