import { InternalError, Result } from "@outfitter/contracts"; declare const DEPENDENCY_SECTIONS: readonly ["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"]; interface ResolvedPresetDependencyVersions { readonly external: Record; readonly internal: Record; } /** @internal Test-only cache reset. */ declare function clearResolvedVersionsCache(): void; /** Extract bare semver from a range string for comparison (e.g., `^1.2.3` -> `1.2.3`). */ declare function normalizeVersionRange(version: string): string; /** * Resolve dependency versions for scaffold presets. * * External deps (zod, commander, etc.) come from `@outfitter/presets` which * has concrete versions (catalog: resolved at publish time). * * Internal deps (`@outfitter/*`) come from workspace package scanning (monorepo) * or from the outfitter CLI's own package.json deps (when published). * * Returns `Result` — never throws. * Successful results are cached; failures are not cached (allowing retry). */ declare function resolvePresetDependencyVersions(): Result; declare function applyResolvedDependencyVersions(parsedPackageJson: Record, versions: ResolvedPresetDependencyVersions): string[]; export { resolvePresetDependencyVersions, normalizeVersionRange, clearResolvedVersionsCache, applyResolvedDependencyVersions, ResolvedPresetDependencyVersions, DEPENDENCY_SECTIONS };