export declare type Ver = StableVer | PreviewVer | PullRequestVer; export declare type StableVer = { version: string; vprefix: boolean; major: number; minor: number; patch: number; }; export declare type PreviewVer = { version: string; vprefix: boolean; major: number; minor: number; patch: number; preRelease: { identifier: string; buildNum: number; }; }; export declare type PullRequestVer = { version: string; vprefix: boolean; major: number; minor: number; patch: number; preRelease: { identifier: 'pr'; prNum: number; shortSha: string; }; }; export declare type MajMinPat = 'major' | 'minor' | 'patch'; /** * Calculate the stable increment to a given version. */ export declare function incStable(bumpType: MajMinPat, v: Ver): Ver; /** * Add pre-release info to a stable release. In other words convert a stable * release into a pre-release one. */ export declare function stableToPreview(v: StableVer, identifier: string, buildNum: number): PreviewVer; /** * Create a semantic pre-release version programatically. */ export declare function createPreRelease(major: number, minor: number, patch: number, identifier: string, buildNum: number, opts?: { vprefix: boolean; }): PreviewVer; /** * Create a semantic version programatically. */ export declare function createStable(major: number, minor: number, patch: number, opts?: { vprefix: boolean; }): StableVer; /** * Is the given version a PR one? */ export declare function isPullRequest(v: Ver): v is PullRequestVer; /** * Is the given version a preview one? */ export declare function isPreview(v: Ver): v is PreviewVer; /** * Is the given version a stable one? */ export declare function isStable(v: Ver): v is StableVer; /** * Parse a version that you believe should be a preview variant. If not, an error is thrown. */ export declare function parsePreview(ver: string): null | PreviewVer; /** * Parse a version string into structured data. */ export declare function parse(ver: string): null | StableVer | PreviewVer; export declare function setBuildNum(ver: PreviewVer, buildNum: number): PreviewVer; export declare const zeroVer: StableVer; export declare const zeroBuildNum = 0; /** * Render the given version. This will result in a valid semver value, thus, * without the vprefix (if enabled at all). If you want the vprefix see `renderStyledVersion`. */ export declare function renderVersion(v: Ver): string; /** * Render the given verson including the vprefix if enabled. Do not use this in * places where a valid semver is expected since vprefix is not valid semver. */ export declare function renderStyledVersion(v: Ver): string; //# sourceMappingURL=semver.d.ts.map