/// <reference types="replace-in-file" />
export interface ITemplateFields {
    name: string;
    token: string;
    updatePrefix?: string;
    prompt: string;
    options?: string[];
    value?: string;
}
export interface ITemplateData {
    name: string;
    description: string;
    hardhat?: any[];
    templateFields: ITemplateFields[];
}
export declare class TemplateProcessor {
    private templateData;
    private workspace;
    constructor(templateData: ITemplateData, workspace: string);
    processTemplateUpdate(values: any[]): Promise<void>;
    updateHardHat(file: string): Promise<void>;
    getHardHatDirectory(): string;
    replaceInFiles(values: any[], fileNames: string[]): Promise<import("replace-in-file").ReplaceResult[]>;
    getValuesFromTSTemplate(): any[];
    insertTrimmedName(values: any[]): any[];
    escapeRegExp(string: string): string;
}
