@herbertgao/surgio
Version:
Generating rules for Surge, Clash, Quantumult like a PRO
21 lines (20 loc) • 816 B
TypeScript
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;