import { ITemplateGenerator } from "./i-template-generator";
import { ICreateTaskExecuteOptions } from "../../task/create-task/i-create-task-execute-options";
import { TemplateFile } from "./template-file";
import { Generator } from "../generator";
import { IBuildConfig } from "../../build-config/i-build-config";
import { IFormatter } from "../../formatter/i-formatter";
import { IStringUtil } from "@wessberg/stringutil";
/**
 * A class that helps with generating the fovea-cli config file
 */
export declare class TemplateGenerator extends Generator implements ITemplateGenerator {
    private readonly config;
    private readonly stringUtil;
    private readonly formatter;
    constructor(config: IBuildConfig, stringUtil: IStringUtil, formatter: IFormatter);
    /**
     * Gets the selector for the root component
     * @returns {string}
     */
    private readonly rootComponentSelector;
    /**
     * Gets the class name for the root component
     * @returns {string}
     */
    private readonly rootComponentClassName;
    /**
     * Generates the project template
     * @param {ICreateTaskExecuteOptions} options
     * @returns {Promise<string>}
     */
    onGenerate(options: ICreateTaskExecuteOptions): Promise<TemplateFile[]>;
    /**
     * Generates a standard template
     * @returns {TemplateFile[]}
     */
    private generateStandardTemplate();
}
