import { type BuiltInBlockArtifact } from './built-in-block-artifacts.js'; import type { BuiltInCodeArtifact } from './built-in-block-code-artifacts.js'; import { type BuiltInTemplateId } from './template-registry.js'; import { type PackageManagerId } from '../shared/package-managers.js'; export { applyWorkspaceMigrationCapability, isOfficialWorkspaceProject, } from './scaffold-bootstrap.js'; import type { ScaffoldProgressEvent, ScaffoldTemplateVariables } from './scaffold.js'; export { buildGitignore, buildReadme, mergeTextLines, } from './scaffold-documents.js'; export interface InstallDependenciesOptions { packageManager: PackageManagerId; projectDir: string; } export declare function ensureDirectory(targetDir: string, allowExisting?: boolean): Promise; export declare function writeStarterManifestFiles(targetDir: string, templateId: string, variables: ScaffoldTemplateVariables, artifacts?: readonly BuiltInBlockArtifact[]): Promise; export declare function normalizePackageManagerFiles(targetDir: string, packageManagerId: PackageManagerId): Promise; export declare function removeQueryLoopPlaceholderFiles(projectDir: string, templateId: string): Promise; export declare function removeUnexpectedLockfiles(targetDir: string, packageManagerId: PackageManagerId): Promise; /** * Recursively normalizes generated text files for the selected package manager * and repository reference. */ export declare function replaceTextRecursively(targetDir: string, packageManagerId: PackageManagerId, { repositoryManifestPaths, repositoryReference }?: { repositoryManifestPaths?: readonly string[]; repositoryReference?: string; }): Promise; export declare function defaultInstallDependencies({ projectDir, packageManager }: InstallDependenciesOptions): Promise; /** * Applies a built-in scaffold into the target directory, including generated * code artifacts, starter manifests, preset files, and placeholder rewrites. */ export declare function applyBuiltInScaffoldProjectFiles({ projectDir, templateDir, templateId, variables, artifacts, codeArtifacts, readmeContent, gitignoreContent, allowExistingDir, packageManager, withMigrationUi, withTestPreset, withWpEnv, noInstall, installDependencies, repositoryReference, onProgress, seedCompilerArtifacts }: { projectDir: string; templateDir: string; templateId: BuiltInTemplateId; variables: ScaffoldTemplateVariables; artifacts?: readonly BuiltInBlockArtifact[]; codeArtifacts?: readonly BuiltInCodeArtifact[]; readmeContent?: string; gitignoreContent?: string; allowExistingDir?: boolean; packageManager: PackageManagerId; withMigrationUi?: boolean; withTestPreset?: boolean; withWpEnv?: boolean; noInstall?: boolean; installDependencies?: ((options: InstallDependenciesOptions) => Promise) | undefined; repositoryReference?: string; onProgress?: ((event: ScaffoldProgressEvent) => void | Promise) | undefined; seedCompilerArtifacts?: boolean; }): Promise;