init
This commit is contained in:
commit
932d4ad420
46 changed files with 5800 additions and 0 deletions
18
lib/cli/CLICommand.ts
Normal file
18
lib/cli/CLICommand.ts
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
// Abstract base class for CLI commands — modeled after the Python CLICommand pattern
|
||||
import type { Argv, ArgumentsCamelCase } from "yargs"
|
||||
|
||||
export abstract class CLICommand {
|
||||
abstract readonly name: string
|
||||
abstract readonly help: string
|
||||
abstract readonly description: string
|
||||
|
||||
static _subcommands: (new () => CLICommand)[] = []
|
||||
|
||||
addArguments(yargs: Argv): Argv {
|
||||
return yargs
|
||||
}
|
||||
|
||||
async execute(args: ArgumentsCamelCase): Promise<number> {
|
||||
return 0
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue