import { type BranchDef } from '../core/command.js'; /** Decision road sign for a managed (non-root) child. Normally STD_CHILD_FOLLOW_UP, * but when the SPAWNER is an orchestrator whose context has already grown past * YIELD_NUDGE_THRESHOLD, steer it to yield now and let its fresh revive handle * the child's result. */ export declare function childFollowUp(spawnerId: string | undefined): Promise; interface FocusViewerOpts { cwd: string; name: string; pane?: string; newPane?: boolean; inPlace?: boolean; } interface FocusViewerResult { focused: boolean; session: string | null; inPlace: boolean; revived: boolean; } /** Bring a node's ONE viewer forefront beside (or navigated to) the caller — * the pure-tmux port of placement.ts `focus()`. The server (`ensureAttach`) * owns the broker revive + the view.sock accept-wait; the `@crtr_node` pane tag * is the viewer registry. crtr is tmux-only: no caller pane ⇒ not focused. */ export declare function focusViewer(nodeId: string, opts: FocusViewerOpts): Promise; export declare const surfaceNodeFocusLeaf: import("../core/command.js").LeafDef; /** The node "in front of you" in a tmux pane, resolved PURELY from the pane's * `@crtr_node` tag. Defaults to $TMUX_PANE / the caller's current pane when * `pane` is omitted — shared by `node lifecycle recycle` / `node lifecycle * demote` / `node config --lifecycle` / `node lifecycle close` / `surface node cycle`, * and the `canvas chord` leaf. * * A `crtr surface attach` viewer self-tags its pane with the node it views * (`@crtr_node`) — the tag IS the handle (a broker engine runs DETACHED with * window=null, so there is no window→node fallback). Kept SYNC + tag-only: the * re-plumbed CLI no longer reads canvas state to confirm the tagged node is * still live, so a stale tag (attach SIGKILLed without clearing) resolves until * the pane is respawned. Callers that mutate then re-validate the id via the * API (getNode 404 → clean error). */ export declare function nodeInPane(pane?: string): string | undefined; export declare const surfaceNodeIdLeaf: import("../core/command.js").LeafDef; export declare const surfaceNodePinLeaf: import("../core/command.js").LeafDef; export declare const surfaceNodeCycleLeaf: import("../core/command.js").LeafDef; export declare function registerNode(): BranchDef; export {};