/** * Interactive setup wizard and headless init for VersionGuard. * * @packageDocumentation */ /** * Options for headless (non-interactive) initialization. * * @public * @since 0.3.0 */ export interface InitOptions { /** Working directory path. */ cwd: string; /** Versioning type (semver or calver). */ type?: 'semver' | 'calver'; /** CalVer format string. */ format?: string; /** Allow v-prefix on SemVer versions. */ allowVPrefix?: boolean; /** Allow build metadata on SemVer versions. */ allowBuildMetadata?: boolean; /** Require prerelease labels on SemVer versions. */ requirePrerelease?: boolean; /** Manifest source type. */ manifest?: string; /** Whether to generate GitHub integration files (dependabot.yml). */ github?: boolean; /** Whether to install git hooks. */ hooks?: boolean; /** Whether to enable changelog validation. */ changelog?: boolean; /** Accept defaults without prompting. */ yes?: boolean; /** Overwrite existing config. */ force?: boolean; } /** * Runs the interactive setup wizard. * * @remarks * Walks the user through versioning type, CalVer format, manifest source, * git hooks, and changelog configuration. Writes `.versionguard.yml` when done. * * @param cwd - Project directory to initialize. * @returns The path to the created config file, or `null` if cancelled. * * @example * ```ts * const configPath = await runWizard(process.cwd()); * ``` * * @public * @since 0.3.0 */ export declare function runWizard(cwd: string): Promise; /** * Initializes VersionGuard non-interactively using CLI flags. * * @remarks * When `--yes` is passed, all defaults are used without prompting. * Individual flags override specific defaults. * * @param options - Headless initialization options. * @returns The path to the created config file. * * @example * ```ts * const configPath = runHeadless({ cwd: process.cwd(), type: 'calver', format: 'YYYY.M.MICRO' }); * ``` * * @public * @since 0.3.0 */ export declare function runHeadless(options: InitOptions): string; //# sourceMappingURL=init-wizard.d.ts.map