Imported as a linear vendor commit so forge rebases do not replay the upstream root tree. git-subtree-dir: third_party/pi git-subtree-split: d981de1229ef899957bbe968bc8dcda02a21f477
17 lines
624 B
TypeScript
17 lines
624 B
TypeScript
import { Command } from "./command.ts";
|
|
import { type ClientCommandContext, clientCommand } from "./commands/client.ts";
|
|
import { type ServerCommandContext, serverCommand } from "./commands/server.ts";
|
|
|
|
interface ExperimentalCommandGroup {
|
|
readonly command: "experimental";
|
|
}
|
|
|
|
export type CliContext = ServerCommandContext & ClientCommandContext;
|
|
|
|
const experimentalCommand = new Command<ExperimentalCommandGroup, CliContext>("experimental").build(() => ({
|
|
ok: false,
|
|
errors: ["Expected experimental command: server or client"],
|
|
}));
|
|
|
|
export const cli = experimentalCommand.command(serverCommand).command(clientCommand);
|