jgb-cli
Version:
```shell npm i -g jgb-cli #全局安装 ```
46 lines (45 loc) • 1.74 kB
TypeScript
import { Asset, IInitOptions, Resolver } from 'jgb-shared/lib';
import AwaitEventEmitter from 'jgb-shared/lib/awaitEventEmitter';
import WorkerFarm from 'jgb-shared/lib/workerfarm/WorkerFarm';
import Compiler from './Compiler';
import FSCache from './FSCache';
import PromiseQueue from './utils/PromiseQueue';
import Watcher from './Watcher';
export default class Core extends AwaitEventEmitter {
private currentDir;
private loadedAssets;
private options;
private entryFiles;
buildQueue: PromiseQueue;
resolver: Resolver;
watcher: Watcher;
compiler: Compiler;
watchedAssets: Map<any, any>;
farm: WorkerFarm;
cache: FSCache;
hooks: Array<(...args: any[]) => Promise<void>>;
/** 使用core来output资源 */
useCoreOutput: boolean;
constructor(options: IInitOptions);
normalizeEntryFiles(): string[];
/**
* 注入所需的环境变量
*/
injectEnv(): void;
normalizeOptions(options: IInitOptions): IInitOptions;
initHook(): Promise<void>;
init(): Promise<void>;
start(): Promise<void>;
scan(): Promise<void>;
processAsset(asset: Asset, isRebuild?: boolean): Promise<void>;
getAsset(name: string, parent: string): Promise<Asset>;
resolveAsset(name: string, parent?: string): Promise<Asset>;
loadAsset(asset: Asset, cacheMiss?: boolean): Promise<void>;
resolveDep(asset: Asset, dep: any): Promise<Asset>;
getLoadedAsset(path: string): Asset;
watch(path: string, asset: Asset): Promise<void>;
stop(): Promise<void>;
unwatch(path: string, asset: Asset): Promise<void>;
onChange(path: string): Promise<void>;
}
export declare function aliasResolve(options: IInitOptions, root: string): IInitOptions['alias'];