/** * Persists run-lifecycle status as gitignored runtime state at * .diablo//state.json (NOT in the issue markdown — that keeps the * triage label intact). .diablo/ is already gitignored. * * A missing or malformed state file must never crash a listing — always falls * back to DEFAULT_STATUS ("open"). The state.json shape and path are an * implementation detail behind these two functions. */ import type { FsPort } from "../ports/fs.ts"; import { type IssueStatus } from "../domain/issue-status.ts"; export interface IssueStatusStoreDeps { fs: FsPort; } export declare function readStatus(deps: IssueStatusStoreDeps, opts: { diabloDir: string; issue: string; }): Promise; export declare function writeStatus(deps: IssueStatusStoreDeps, opts: { diabloDir: string; issue: string; status: IssueStatus; }): Promise;