/** * What remains of the one-shot menu (interactive-cli-menu/AC-10, * interactive-cli-menu/AC-14, interactive-cli-menu/AC-31). * * The select itself was retired by aidlc-console: bare `aidlc` and `aidlc menu` * now open the console (`console/index.ts`). Its off-terminal fallbacks and the * command-form teaching string stay here, and the console reuses the roster, * `resolve.ts` and `dispatch.ts` beside them. * * @module */ import type { Command } from 'commander'; import type { MenuEntry } from './roster.js'; /** Which entry point asked for the menu; selects the non-interactive fallback. */ export type MenuMode = 'bare' | 'menu'; /** * The equivalent command form for an entry (interactive-cli-menu/AC-14). * * This is the teaching string: what the user would type to do the same thing * without the menu. The `--` separator `buildArgv` inserts is deliberately * omitted — it is a parser safeguard, not part of a command anyone types. */ export declare function commandForm(entry: MenuEntry, values?: readonly string[]): string; /** * Non-interactive fallbacks (interactive-cli-menu/AC-10, * interactive-cli-menu/AC-31). * * `'bare'` preserves today's contract exactly — the program help on stderr, zero * bytes on stdout, exit 1 — because the argv guard runs before `parseAsync`, so * commander never emits its own no-args help. `outputHelp` is used rather than * `help`, which calls `_exit`. * * `'menu'` is a deliberate non-replay: the user named a valid command, so the * diagnostic is about the terminal, not the command surface. */ export declare function writeNonInteractiveFallback(program: Command, mode: MenuMode): void; //# sourceMappingURL=index.d.ts.map