interface Patchable { patch: () => void; path: string; } interface FileUpdatable extends Patchable { contents: string; addBefore: (line: string | RegExp, add: string) => void; addAfter: (line: string | RegExp, add: string) => void; hasLine: (line: string | RegExp) => boolean; getPaddingFromString: (searchString: string) => string; getPaddingAfterStringToTheNextString: (searchString: RegExp) => string; deleteLine: (line: string | RegExp) => void; } declare const patchFiles: (...files: Array<() => Promise>) => Promise; declare const NoopFile: { path: string; contents: string; patch: () => void; hasLine: (_: string) => boolean; getPaddingFromString: (_searchString: string) => string; getPaddingAfterStringToTheNextString: (_searchString: RegExp) => string; addBefore: (_line: string, _add: string) => void; addAfter: (_line: string, _add: string) => void; deleteLine: (_line: string) => void; }; declare const getFileContents: (path: string) => FileUpdatable; export { type Patchable, type FileUpdatable, patchFiles, NoopFile, getFileContents, };