import { Hono } from "hono"; import type { PendingDecision } from "./aggregate.js"; import type { PaneSnapshot } from "./adapter.js"; import type { AnswerResult } from "./answer.js"; export interface CanevasDeps { /** IO: current pending human decisions (read-only aggregate). */ readonly listDecisions: () => PendingDecision[]; /** IO: read-only tmux pane snapshot (lazy runtime; degraded-clean). */ readonly capturePane: (tmuxName: string, lines: number) => Promise; /** tranche-3b write-bridge: required token for POST /answer. Absent → read-only. */ readonly writeToken?: string; /** tranche-3b write-bridge: gated reply handler. Absent → 501. */ readonly postAnswer?: (decisionId: string, body: { answerId: string; note?: string; }) => AnswerResult | Promise; } export declare function createCanevasApp(deps: CanevasDeps): Hono; //# sourceMappingURL=app.d.ts.map