import { AddRenderFile, AddTemplateFiles, GeneratorApi, ModifyRenderData, Render, RenderData, RenderFile, TemplateOptions } from '@tuzki/scaffold-types';
interface Options {
    rootDir: string;
    targetDir?: string;
    defaultRenderData?: RenderData;
    templates?: (string | TemplateOptions)[];
}
export default class Generator {
    private rootDir;
    private targetDir;
    private rerender;
    private renderData;
    private renderTemplates;
    private renderDataRegistration;
    constructor(options: Options);
    setRenderData: (renderData: RenderData) => void;
    private debounceRender;
    /** 添加模板目录文件 */
    addTemplateFiles: AddTemplateFiles;
    addRenderFile: AddRenderFile;
    render: Render;
    modifyRenderData: ModifyRenderData;
    renderFile: RenderFile;
}
/**
 * 获取 generatorApi
 *
 * @export
 * @param {Options} args 参数
 * @return {*}
 */
export declare function getGeneratorApi(args: Options): GeneratorApi;
export {};
