import { PreCompileProject } from '../project/advance/precompileProject'; import { MiniProgramCI, MiniProgramCore, MiniProgramDevtools } from '../types'; import { IMessageHub, IConsoleDisplay } from '../utils/messageHub'; import { PreCompiler } from './precompiler/index'; import { SummerCompiler } from './corecompiler/summerCompiler'; import { NativeCompiler } from './nativecompiler'; import { Analyzer } from '../common/code-analyse'; export interface IBuilderOptions { summerCompilerClass?: typeof SummerCompiler; cachePath?: string; miniappDirPath?: string; devtoolsVersion?: string; projectInfo?: MiniProgramDevtools.IDevtoolsProjectInfo; devtoolMessagehub?: IMessageHub; consoleDisplay?: IConsoleDisplay; targetPlatform?: MiniProgramCore.ITargetPlatform; targetPlatformDefines?: MiniProgramCore.ITargetPlatformDefine; outputDir?: string; filterFactory?: MiniProgramDevtools.IFilterFactory; onInitSummerCompilerFinished?: (e?: Error) => void; } export declare class Builder { originProject: MiniProgramCI.IProject; private _precompileProject; private _preCompiler; private _summerCompiler; private _nativeCompiler; private _options; private _checkReadyTask?; private _getSummerCompilerTask?; private _getPrecompileProjectTask?; private _originalCompiler; private _analyzer?; constructor(project: MiniProgramCI.IProject, opts: IBuilderOptions); getCompiler(): Promise; getAnalyzer(): Promise; getPreCompileProject(): Promise; private _getPreCompileProject; getPreCompiler(): Promise; getSummerCompiler(): Promise; private _getSummerCompiler; onInitSummerCompilerFinished(e?: Error): void; ready(): Promise; init(): Promise; getNativeCompiler(): Promise; getFullCompiler(): Promise; initNativeCompiler(opts: IBuilderOptions): Promise; getPreCompileOptions(): { targetPlatform: MiniProgramCore.ITargetPlatform | undefined; targetPlatformDefines: MiniProgramCore.ITargetPlatformDefine | undefined; }; changePreCompileOptions(opts: MiniProgramCore.IConditionCompileInfo): Promise; setLocale(locale: string): Promise; destroy(): void; }