import { GConfig, Action } from '../types';
export default class Generator {
    actions: Action[];
    config: GConfig;
    running: boolean;
    constructor(config: GConfig);
    normalize(): void;
    addAction(actions: Action[]): void;
    getActionData(action: Action): {
        templateDir: string;
        outputDir: string;
        templateVars: {
            [key: string]: any;
        } & {
            [key: string]: any;
        };
    };
    /**
     * 添加项目文件的Action
     */
    runAddAction(action: Action): Promise<unknown>;
    /**
     * 修改项目文件的Action
     */
    runModifyAction(action: Action): Promise<unknown>;
    /**
     * 移动项目文件的Action
     */
    runMoveAction(action: Action): Promise<void>;
    /**
     * 删除项目文件的Action
     */
    runRemoveAction(action: Action): Promise<void>;
    /**
     * 批量运行任务
     */
    run(): Promise<void>;
    watch(): void;
    close(): void;
}
