UNPKG

@herbertgao/surgio

Version:

Generating rules for Surge, Clash, Quantumult like a PRO

21 lines (20 loc) 816 B
import 'source-map-support/register'; import { Command, Interfaces, Config } from '@oclif/core'; import ora from 'ora'; import { CommandConfig } from './types'; export type Flags<T extends typeof Command> = Interfaces.InferredFlags<(typeof BaseCommand)['baseFlags'] & T['flags']>; export type Args<T extends typeof Command> = Interfaces.InferredArgs<T['args']>; declare abstract class BaseCommand<T extends typeof Command> extends Command { protected flags: Flags<T>; protected args: Args<T>; protected surgioConfig: CommandConfig; ora: ora.Ora; projectDir: string; constructor(argv: string[], config: Config); init(): Promise<void>; protected catch(err: Error & { exitCode?: number; }): Promise<any>; protected cleanup(): Promise<void>; } export default BaseCommand;