import { collectScaffoldAnswers } from './scaffold.js'; import { type ScaffoldEmissionOptions, type ScaffoldInstallDependencies } from './cli-scaffold-emission.js'; import type { DataStorageMode, PersistencePolicy } from './scaffold.js'; import type { PackageManagerId } from '../shared/package-managers.js'; import { type ExternalLayerSelectionOption } from './external-layer-selection.js'; import type { TemplateDefinition } from './template-registry.js'; export { getNextSteps, getOptionalOnboarding } from './cli-scaffold-output.js'; export type { OptionalOnboardingGuidance, ScaffoldNextStepsOptions, ScaffoldOptionalOnboardingOptions, } from './cli-scaffold-output.js'; export type { ScaffoldDryRunPlan } from './cli-scaffold-emission.js'; interface RunScaffoldFlowOptions { allowExistingDir?: boolean; alternateRenderTargets?: string; cwd?: string; dataStorageMode?: string; dryRun?: boolean; externalLayerId?: string; externalLayerSource?: string; installDependencies?: ScaffoldInstallDependencies; innerBlocksPreset?: string; isInteractive?: boolean; namespace?: string; noInstall?: boolean; onProgress?: ScaffoldEmissionOptions['onProgress']; packageManager?: string; phpPrefix?: string; profile?: string; projectInput: string; promptText?: Parameters[0]['promptText']; queryPostType?: string; selectDataStorage?: () => Promise; selectExternalLayerId?: (options: ExternalLayerSelectionOption[]) => Promise; selectPackageManager?: () => Promise; selectPersistencePolicy?: () => Promise; selectTemplate?: () => Promise; selectWithMigrationUi?: () => Promise; selectWithTestPreset?: () => Promise; selectWithWpEnv?: () => Promise; templateId?: string; textDomain?: string; variant?: string; persistencePolicy?: string; withMigrationUi?: boolean; withTestPreset?: boolean; withWpEnv?: boolean; wpVersion?: string; yes?: boolean; } /** * Resolve scaffold options, prompts, and follow-up steps for one CLI run. * * @param options CLI/runtime inputs used to collect answers and scaffold a * project. * @returns The scaffold result together with next-step guidance. */ export declare function runScaffoldFlow({ projectInput, cwd, templateId, alternateRenderTargets, dataStorageMode, dryRun, externalLayerId, externalLayerSource, innerBlocksPreset, persistencePolicy, packageManager, namespace, profile, textDomain, phpPrefix, queryPostType, yes, noInstall, onProgress, isInteractive, allowExistingDir, selectTemplate, selectDataStorage, selectExternalLayerId, selectPersistencePolicy, selectPackageManager, promptText, installDependencies, variant, selectWithTestPreset, selectWithWpEnv, selectWithMigrationUi, withMigrationUi, withTestPreset, withWpEnv, wpVersion }: RunScaffoldFlowOptions): Promise<{ dryRun: boolean; optionalOnboarding: import("./cli-scaffold-output.js").OptionalOnboardingGuidance; plan: import("./cli-scaffold-emission.js").ScaffoldDryRunPlan | undefined; projectDir: string; projectInput: string; packageManager: PackageManagerId; nextSteps: string[]; result: { packageManager: PackageManagerId; projectDir: string; selectedVariant: string | null; templateId: string; variables: import("./scaffold.js").ScaffoldTemplateVariables; warnings: string[]; }; }>;