import type BaseGenerator from './base/index.js';
import type { NeedleInsertion } from './base/support/needles.js';
export type NeedleFileModel = {
    file: string;
    needle: string;
    splicable: string | string[];
    path?: string;
    prettierAware?: boolean;
    regexp?: RegExp | string;
    haystack?: string;
};
export default class {
    generator: BaseGenerator;
    constructor(generator: BaseGenerator);
    get clientSrcDir(): string;
    get clientFramework(): string;
    addBlockContentToFile(rewriteFileModel: NeedleFileModel, errorMessage?: string): void;
    editFile(fullPath: any, errorMessage: string, needleData: NeedleInsertion): void;
    logNeedleNotFound(exception: Error, message?: string, fullPath?: string): void;
    generateFileModelWithPath(aPath: string, aFile: string, needleTag: string, ...content: string[]): NeedleFileModel;
    generateFileModel(aFile: string, needleTag: string, ...content: string[]): NeedleFileModel;
}
