import { IMaterialItem, IWeAppData, IPlugin, IExtraData } from '@cloudbase/lowcode-generator/lib/weapps-core';
import { BuildType, GenerateMpType, WebpackBuildCallBack, WebpackModeType } from '../types/common';
import { DEPLOY_MODE, RUNTIME } from '../../types';
import { IPlatformApp } from '@cloudbase/cals';
export interface IBaseAppProps {
    appKey: string;
    dependencies?: IMaterialItem[];
    publicPath?: string;
    buildTypeList: BuildType[];
    mode?: WebpackModeType;
    devTool?: string;
    watch?: boolean;
    generateMpType?: GenerateMpType;
    plugins?: IPlugin[];
    domain: string;
    extraData?: IExtraData;
}
export interface BuildAppProps extends IBaseAppProps {
    mainAppSerializeData?: IWeAppData;
    subAppSerializeDataList?: IWeAppData[];
    generateMpPath?: string;
}
export interface IBuildWedaApp extends IBaseAppProps {
    cals: IPlatformApp;
    subAppCalsList?: IPlatformApp[];
    deployOptions?: {
        mode: DEPLOY_MODE;
        mpAppId?: string;
        targetMpAppId?: string;
    };
    runtime?: RUNTIME;
    ignoreInstall?: boolean;
    resourceAppId?: string;
    output?: {
        path?: string;
    };
    isBrowserMpBuilder?: boolean;
}
export declare function buildWedaApp({ cals, subAppCalsList, dependencies, appKey, runtime, ignoreInstall, buildTypeList, mode, devTool, deployOptions, generateMpType, plugins, extraData, resourceAppId, domain, output, isBrowserMpBuilder, }: IBuildWedaApp, cb?: WebpackBuildCallBack): Promise<string | undefined>;
export declare function cleanComponentDir(): Promise<void>;
export declare const version: any;
export { getFiles, fileToZip, strToBuf } from '../util/generateFiles';
export { downloadZip } from '../util/net';
export { getCompileDirs } from '../util';
export default buildWedaApp;
