import { MiniProgramCore } from '../../types';
import { BaseProject } from '../baseProject';
export declare class ReactiveProject extends BaseProject implements MiniProgramCore.IPreCompileProject {
    project: MiniProgramCore.IPreCompileProject;
    private fileBoxs;
    private statBoxs;
    private attrBox;
    private appidBox;
    private typeBox;
    private miniprogramRootBox;
    private pluginRootBox;
    constructor(project: MiniProgramCore.IPreCompileProject);
    get appid(): string;
    get type(): import("../../types").MiniProgramCI.ProjectType;
    get nameMappingFromDevtools(): import("../../types").MiniProgramCI.IStringKeyMap<string> | undefined;
    get projectPath(): string;
    get privateKey(): string;
    get miniprogramRoot(): string;
    set miniprogramRoot(val: string);
    get pluginRoot(): string;
    set pluginRoot(val: string);
    init(): Promise<void>;
    updateFileAndDirs(): void;
    updateProject(): Promise<unknown>;
    release(): void;
    attr(): Promise<MiniProgramCore.IProjectAttr>;
    getSrcFile(prefix: string, filePath: string): Buffer;
    getFileList(prefix?: string, extName?: string): string[];
    getFilesAndDirs(): {
        files: string[];
        dirs: string[];
    };
    getExtAppid(): Promise<string | void>;
    onFileChange: (type: "unlink" | "unlinkDir" | "add" | "addDir" | "change", targetPath: string) => Promise<void>;
    getFile(prefix: string, filePath: string): Buffer;
    stat(prefix: string, filePath: string): import("../../types").MiniProgramCI.IStat | undefined;
    attrSync(): import("../../types").MiniProgramCI.IProjectAttr;
}
