/** * What a console line means (aidlc-console/AC-10, aidlc-console/AC-12, * aidlc-console/AC-13, aidlc-console/AC-17, aidlc-console/AC-18). * * Pure. A `/` prefix is a command, a `!` prefix a shell line, anything else goes * to the agent — so "update the readme" can never run `update`. * * @module */ /** Commands the console answers itself; everything else after `/` is an `aidlc` command. */ export declare const CONSOLE_COMMANDS: Readonly>; /** Console spellings that run a longer `aidlc` command path (aidlc-console/AC-12). */ export declare const ALIASES: Readonly>; export type Route = { kind: 'blank'; } | { kind: 'shell'; cmd: string; } | { kind: 'agent'; text: string; } | { kind: 'console'; name: string; args: string[]; } | { kind: 'command'; argv: string[]; }; /** * Split a command line into words. Single and double quotes group; a backslash * escapes the next character outside single quotes. No expansion of any kind — * the words become argv elements, never shell input. */ export declare function splitWords(line: string): string[]; /** Route one typed line (aidlc-console/AC-10). */ export declare function routeLine(line: string): Route; /** * Tab completion for a `/` command name (aidlc-console/AC-18). Only the first * word completes; returns readline's `[matches, substring]` shape. */ export declare function completeSlash(line: string, names: readonly string[]): [string[], string]; /** The `/help` listing: console commands, then the old menu's commands (aidlc-console/AC-13, AC-17). */ export declare function helpLines(): string[]; //# sourceMappingURL=route.d.ts.map