import type { BaseBuildOptions, BaseBuildOutput, PlayableScriptsConfig } from './types.js';
/**
 * 基础构建器 - 路由到不同构建工具适配器
 *
 * 职责：
 * 1. 确定引擎类型和构建工具（从 options 或自动检测）
 * 2. 根据构建工具路由到对应适配器执行 Base Build
 *
 * 路由规则（按 buildTool）：
 * - playcanvas-native → PlayCanvasAdapter：处理 PlayCanvas 项目
 * - playable-scripts → PlayableScriptsAdapter：处理 @playcraft/devkit 项目
 * - generic → GenericAdapter：处理外部引擎（npm install + npm run build）
 */
export declare class BaseBuilder {
    private projectDir;
    private options;
    private playableScriptsConfig?;
    private usePlayableScripts?;
    private _metadata?;
    constructor(projectDir: string, options: BaseBuildOptions, extraOptions?: {
        playableScriptsConfig?: PlayableScriptsConfig;
        usePlayableScripts?: boolean;
    });
    /**
     * 获取构建元数据（在 build() 完成后可用）
     */
    get metadata(): BaseBuildOutput['metadata'] | undefined;
    /**
     * 执行基础构建
     * 根据构建工具路由到对应适配器
     */
    build(): Promise<BaseBuildOutput>;
    /**
     * 解析引擎类型和构建工具
     * 优先级：
     * 1. --use-playable-scripts 显式指定
     * 2. options.engine 用户显式指定引擎
     * 3. 自动检测（detectFull）
     */
    private resolveDetection;
}
export type { BaseBuildOptions, BaseBuildOutput } from './types.js';
