@gluestack-v2/framework-cli
Version:
Gluestack V2 Framework CLI
29 lines (28 loc) • 1.27 kB
TypeScript
import AppCLI from '../helpers/lib/app';
import IPlugin, { RunningPlatforms } from '../types/plugin/interface/IPlugin';
import IInstance from '../types/plugin/interface/IInstance';
import IGluePluginStore from '../types/store/interface/IGluePluginStore';
export default abstract class BaseGluestackPlugin implements IPlugin {
app: AppCLI;
instances: IInstance[];
type: 'stateless' | 'stateful' | 'devonly';
gluePluginStore: IGluePluginStore;
runningPlatforms: RunningPlatforms;
pluginEnvironment: 'server' | 'client';
constructor(app: AppCLI, gluePluginStore: IGluePluginStore);
abstract init(): void;
abstract destroy(): void;
abstract getVersion(): string;
abstract getName(): string;
abstract runPostInstall(instanceName: string, target: string): void;
abstract createInstance(key: string, gluePluginStore: IGluePluginStore, installationPath: string): IInstance;
getType(): 'stateless' | 'stateful' | 'devonly';
prepare(): Promise<void>;
getTemplateFolderPath(): string;
getPackagePath(): string;
getInstallationPath(target: string): string;
getInstances(): IInstance[];
getPluginEnvironment(): "server" | "client";
build(): Promise<void>;
watch(callback: Function): Promise<void>;
}