import type { VisualInterrogationOverlay, VisualQuestionEntry } from '../adapters/visual/wire.js'; import { type QuestionVerb } from './question-verbs.js'; /** * The interview, where the drawing happens (#292). * * One home for both scopes: a selected element shows the questions that name * it — the `design --subject` reading of the model — and no selection shows * the workspace-scoped questions, which name no subject and would otherwise * be the model's biggest holes rendered nowhere. Read-only by design: the * answer path stays `apply` (through the editor's own forms or an agent), * never a text box here that would bypass the compile gate. */ export declare function OpenQuestions({ overlay, selectedId, readOnly, onVerb, onDelegate, delegateLabel, }: { readonly overlay: VisualInterrogationOverlay; readonly selectedId: string | null; /** A viewer has no pen (#298): rows read, and offer nothing. */ readonly readOnly?: boolean; /** * Runs a row's verb (#515): the gesture that would answer it, derived from * the trigger. Absent, rows carry no button, which is how a host without * the gestures mounts the pane. */ readonly onVerb?: (entry: VisualQuestionEntry, verb: QuestionVerb, subjectId: string | null) => void; /** * Hands the question to whoever answers questions for this host (#515, * ADR 0151): the agent on the socket, the host's own assistant, or the * clipboard for an assistant that is elsewhere. The label says which. */ readonly onDelegate?: (entry: VisualQuestionEntry, subjectId: string | null) => void; readonly delegateLabel?: string; }): import("react").JSX.Element;