UNPKG

@sudoo/coco

Version:

:ocean: A simple command line tool framework

24 lines (23 loc) 987 B
import { Command } from "../command/command"; import { CocoEventArgs, CocoEventLister, CORE_EVENT } from "../event/declare"; import { Option } from "../option/option"; export declare class Coco { static create(): Coco; private _rootCommand; private readonly _commands; private readonly _options; private readonly _eventListeners; private constructor(); rootCommand(command: Command): this; getRootCommand(): Command | null; command(command: Command, ...commands: Command[]): this; commands(commands: Command[]): this; globalOption(option: Option): this; getCommands(): Command[]; on<T extends CORE_EVENT>(event: T, listener: CocoEventLister<T>): this; remove<T extends CORE_EVENT>(event: T, remove: CocoEventLister<T>): this; removeAll<T extends CORE_EVENT>(event: T): this; emit<T extends CORE_EVENT>(event: T, ...args: CocoEventArgs[T]): Promise<void>; go(argv: string[]): Promise<void>; private _marchCommand; }