import*as v from"valibot";const ALPHANUMERIC_OR_UNDERSCORE_REGEX={any:/^[a-zA-Z0-9_]+$/,lowercase:/^[a-z0-9_]+$/,uppercase:/^[A-Z0-9_]+$/},ALPHANUMERIC_OR_HYPHEN_REGEX={any:/^[a-zA-Z0-9-]+$/,lowercase:/^[a-z0-9-]+$/,uppercase:/^[A-Z0-9-]+$/},TITLE_CASE_REGEX=/^[A-Z][a-z]*(?:\s[A-Z][a-z]*)*$/;function stringValueSchema(name){return v.string(`Expected a string value for '${name}'`)}function nonEmptyStringValueSchema(name){return v.pipe(stringValueSchema(name),v.nonEmpty(`The value of "${name}" must not be empty`))}function booleanValueSchema(name){return v.boolean(`Expected a boolean value for '${name}'`)}function alphaNumericOrUnderscoreSchema(name,casing=`any`){let casingLabel=casing===`any`?``:` (${casing} only)`;return v.pipe(stringValueSchema(name),v.regex(ALPHANUMERIC_OR_UNDERSCORE_REGEX[casing],`Only alphanumeric characters and underscores are allowed in string value of "${name}"${casingLabel}`))}function alphaNumericOrHyphenSchema(name,casing=`any`){let casingLabel=casing===`any`?``:` (${casing} only)`;return v.pipe(stringValueSchema(name),v.regex(ALPHANUMERIC_OR_HYPHEN_REGEX[casing],`Only alphanumeric characters and hyphens are allowed in string value of "${name}"${casingLabel}`))}function titleCaseSchema(name){return v.pipe(nonEmptyStringValueSchema(name),v.regex(TITLE_CASE_REGEX,`The value of "${name}" must be in Title Case, which means, an uppercase letter after each space (e.g., "Some Title Case")`))}export{stringValueSchema as a,nonEmptyStringValueSchema as i,alphaNumericOrUnderscoreSchema as n,titleCaseSchema as o,booleanValueSchema as r,alphaNumericOrHyphenSchema as t};