import CoreGenerator from '../../base-core/index.js';
import { CascatedEditFileCallback, EditFileCallback } from '../api.js';
export type NeedleInsertion = {
    needle: string;
    contentToAdd: string | string[] | ((content: string, options: {
        needleIndent: number;
        indentPrefix: string;
    }) => string);
    contentToCheck?: string | RegExp;
    ignoreWhitespaces?: boolean;
    optional?: boolean;
    autoIndent?: boolean;
};
type NeedleFileInsertion = NeedleInsertion & {
    filePath?: string;
    needlesPrefix?: string;
};
type NeedleContentInsertion = NeedleInsertion & {
    content: string;
};
export declare const convertToPrettierExpressions: (str: string) => string;
export declare const checkContentIn: (contentToCheck: string | RegExp, content: any, ignoreWhitespaces?: boolean) => boolean;
export declare const insertContentBeforeNeedle: ({ content, contentToAdd, needle, autoIndent }: NeedleContentInsertion) => string | null;
export declare const createNeedleCallback: <Generator extends CoreGenerator = CoreGenerator>({ needle, contentToAdd, contentToCheck, optional, ignoreWhitespaces, autoIndent, }: NeedleInsertion) => EditFileCallback<Generator>;
export declare function createBaseNeedle<Generator extends CoreGenerator = CoreGenerator>(this: Generator | void, options: NeedleFileInsertion | Record<string, string>, needles?: Record<string, string>): EditFileCallback<Generator> | CascatedEditFileCallback<Generator>;
export {};
