"use strict";
/* Socket Lib - Built with rolldown */
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
const require_versions__internal = require('./_internal.js');

//#region src/versions/modify.ts
/**
* @file Mutation helpers — `incrementVersion` bumps a version by release type
*   ('major' | 'minor' | 'patch' | 'pre*'), and `versionDiff` returns the kind
*   of step between two versions. Both use the vendored `semver` directly
*   because the increment / diff APIs aren't on the smol-versions surface.
*/
/**
* Increment a version by the specified release type.
*
* @example
*   ;```typescript
*   incrementVersion('1.2.3', 'patch') // '1.2.4'
*   incrementVersion('1.2.3', 'minor') // '1.3.0'
*   incrementVersion('1.2.3', 'major') // '2.0.0'
*   ```
*/
function incrementVersion(version, release, identifier) {
	return require_versions__internal.getSemver().inc(version, release, identifier) || void 0;
}
/**
* Get the difference between two versions.
*
* @example
*   ;```typescript
*   versionDiff('1.0.0', '2.0.0') // 'major'
*   versionDiff('1.0.0', '1.1.0') // 'minor'
*   versionDiff('1.0.0', '1.0.1') // 'patch'
*   ```
*/
function versionDiff(version1, version2) {
	try {
		return require_versions__internal.getSemver().diff(version1, version2) || void 0;
	} catch {
		return;
	}
}

//#endregion
exports.incrementVersion = incrementVersion;
exports.versionDiff = versionDiff;