export type Task = { stage: TaskStage; order: number; task: (data: any) => Promise; }; type TSConfig = { compilerOptions: { baseUrl: string; paths: { [path: string]: Array; }; }; }; export declare enum TaskStage { Clean = "Clean", Build = "Build", BeforeCreateServer = "BeforeCreateServer", CreateServer = "CreateServer", AfterCreateServer = "AfterCreateServer", BeforeScanManifests = "BeforeScanManifests", AfterScanManifests = "AfterScanManifests", BeforeBundleManifest = "BeforeBundleManifest", BundleManifest = "BundleManifest", AfterBundleManifest = "AfterBundleManifest", BeforeGenerateManifestsMetadata = "BeforeGenerateManifestsMetadata", GenerateManifestsMetadata = "GenerateManifestsMetadata", AfterGenerateManifestsMetadata = "AfterGenerateManifestsMetadata" } declare function registerServeTask(serveTask: Task): void; declare function getRegisteredServeTasks(): Task[]; declare function registerCleanTask(cleanTask: Omit): void; declare function getCleanTasks(): Omit[]; /** * buildTask: {type: BeforeBuild|AfterBuild, order:number(default 100 for extension), task: () -> promise } */ declare function registerBuildTask(buildTask: Task): void; declare function getRegisteredBuildTasks(): Task[]; declare function getExtensionInfo(): any; declare function getTSConfig(): TSConfig; declare function getWebpackResolveModules(): Array; declare function getWebpackResolveAlias(): Object; declare function getEnviromentInfo(): any; declare function getConfig(path: any): any; declare function loadFile(path: any): any; declare function registerTsNode(): void; declare function registerTSConfig(): void; export declare class ResolvablePromise { promise: Promise; resolve: (value: T) => void; reject: (reason: any) => void; private _resolved; private _rejected; resolving: boolean; constructor(); get resolved(): boolean; get rejected(): boolean; } export { registerTSConfig, registerTsNode, getConfig, getExtensionInfo, getEnviromentInfo, registerServeTask, getRegisteredServeTasks, getCleanTasks, registerBuildTask, getRegisteredBuildTasks, registerCleanTask, loadFile, getTSConfig, getWebpackResolveModules, getWebpackResolveAlias };