import type { PackageManagerId } from '../shared/package-managers.js'; import type { ScaffoldTemplateVariables } from './scaffold.js'; /** * Builds the generated README markdown for one scaffolded project. * * @param templateId Scaffold template family or template identifier. * @param variables Interpolated scaffold variables used in generated content. * @param packageManager Package manager used to format install and script commands. * @param options Optional README sections enabled by scaffold presets. * @returns Markdown README content for the generated project root. */ export declare function buildReadme(templateId: string, variables: ScaffoldTemplateVariables, packageManager: PackageManagerId, { withMigrationUi, withTestPreset, withWpEnv }?: { withMigrationUi?: boolean; withTestPreset?: boolean; withWpEnv?: boolean; }): string; /** * Build the default `.gitignore` contents for a scaffolded project. * * @returns A newline-terminated `.gitignore` string covering dependency, build, editor, OS, and WordPress artifacts. */ export declare function buildGitignore(): string; /** * Merge generated and existing text files while keeping line order stable. * * Existing unique lines are appended after the primary content, duplicate * non-empty lines are removed, and runs of more than two blank lines collapse * to a single empty separator. * * @param primaryContent Newly generated text that should appear first. * @param existingContent Existing file contents preserved after unique generated lines. * @returns The merged text block with a trailing newline. */ export declare function mergeTextLines(primaryContent: string, existingContent: string): string;