import type { CustomOptions, CustomValidate } from "../custom/index.ts"; export declare const REGEX_SEMVER: RegExp; export type SemVer = `${number}.${number}.${number}${`-${string}` | ""}${`+${string}` | ""}`; /** * Determines whether the input is a semantic version number. * * @param input The input to check. * @param validate Additional validation to run against the input if it is a semantic version number. Default is `undefined`. * @returns `true` if the input is a semantic version number, or `false` otherwise. */ export declare function isSemVer(input: unknown, validate?: CustomValidate): input is SemVer; export type SemVerOptions = Omit, "typecheck">; /** * Verifies that the input is a semantic version, and returns it. * * @param input The value to check. * @param fallback The value to return if the input is not a semantic version. Default is `null`. * @returns The semantic version value of the input, or the fallback if the input is not a semantic version. */ export declare function semver(input: unknown, fallback: SemVer, options?: SemVerOptions): SemVer; export declare function semver(input: unknown, fallback?: SemVer | null | undefined, options?: SemVerOptions): SemVer | null;