export type CliSubcommandName = "mcp" | "login" | "logout" | "sessions" | "telegram" | "serve" | "doctor" | "agent-home-login" | "agent-home";
export type CliCommandRouteResult = {
    kind: "handled";
    subcommand: CliSubcommandName;
} | {
    kind: "continue";
} | {
    kind: "main";
    subcommand: string | undefined;
};
type SubcommandHandler = () => void;
export interface CliCommandRoutingOptions {
    argv: string[];
    printHelp: () => void;
    exit: (code: number) => never;
    handlers: Record<CliSubcommandName, SubcommandHandler>;
}
/**
 * Routes the early CLI command layer before parseArgs handles normal flags.
 *
 * This intentionally preserves the legacy startup contract:
 * - any -h/--help anywhere prints top-level help and exits before subcommands;
 * - selected subcommands remove their command token before their mode parser runs;
 * - `continue` is not a standalone handler, it only toggles the later TUI resume path.
 */
export declare function routeCliCommandInput(options: CliCommandRoutingOptions): CliCommandRouteResult;
export {};
//# sourceMappingURL=command-routing.d.ts.map