@warlock.js/seal 4.0.162 → 4.0.163

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (765) hide show
  1. package/cjs/config.d.ts +48 -0
  2. package/cjs/config.d.ts.map +1 -0
  3. package/cjs/config.js +42 -0
  4. package/cjs/config.js.map +1 -0
  5. package/cjs/factory/index.d.ts +3 -0
  6. package/cjs/factory/index.d.ts.map +1 -0
  7. package/cjs/factory/validate.d.ts +8 -0
  8. package/cjs/factory/validate.d.ts.map +1 -0
  9. package/cjs/factory/validate.js +23 -0
  10. package/cjs/factory/validate.js.map +1 -0
  11. package/cjs/factory/validators.d.ts +56 -0
  12. package/cjs/factory/validators.d.ts.map +1 -0
  13. package/cjs/factory/validators.js +45 -0
  14. package/cjs/factory/validators.js.map +1 -0
  15. package/cjs/helpers/date-helpers.d.ts +16 -0
  16. package/cjs/helpers/date-helpers.d.ts.map +1 -0
  17. package/cjs/helpers/date-helpers.js +20 -0
  18. package/cjs/helpers/date-helpers.js.map +1 -0
  19. package/cjs/helpers/file.utils.d.ts +8 -0
  20. package/cjs/helpers/file.utils.d.ts.map +1 -0
  21. package/cjs/helpers/file.utils.js +29 -0
  22. package/cjs/helpers/file.utils.js.map +1 -0
  23. package/cjs/helpers/get-field-value.d.ts +37 -0
  24. package/cjs/helpers/get-field-value.d.ts.map +1 -0
  25. package/cjs/helpers/get-field-value.js +40 -0
  26. package/cjs/helpers/get-field-value.js.map +1 -0
  27. package/cjs/helpers/index.d.ts +6 -0
  28. package/cjs/helpers/index.d.ts.map +1 -0
  29. package/cjs/helpers/is-empty-value.d.ts +2 -0
  30. package/cjs/helpers/is-empty-value.d.ts.map +1 -0
  31. package/cjs/helpers/is-empty-value.js +3 -0
  32. package/cjs/helpers/is-empty-value.js.map +1 -0
  33. package/cjs/helpers/path-helpers.d.ts +5 -0
  34. package/cjs/helpers/path-helpers.d.ts.map +1 -0
  35. package/cjs/helpers/path-helpers.js +8 -0
  36. package/cjs/helpers/path-helpers.js.map +1 -0
  37. package/cjs/helpers/validation-helpers.d.ts +26 -0
  38. package/cjs/helpers/validation-helpers.d.ts.map +1 -0
  39. package/cjs/helpers/validation-helpers.js +74 -0
  40. package/cjs/helpers/validation-helpers.js.map +1 -0
  41. package/cjs/index.d.ts +30 -0
  42. package/cjs/index.d.ts.map +1 -0
  43. package/cjs/index.js +1 -0
  44. package/cjs/index.js.map +1 -0
  45. package/cjs/mutators/array-mutators.d.ts +12 -0
  46. package/cjs/mutators/array-mutators.d.ts.map +1 -0
  47. package/cjs/mutators/array-mutators.js +37 -0
  48. package/cjs/mutators/array-mutators.js.map +1 -0
  49. package/cjs/mutators/date-mutators.d.ts +39 -0
  50. package/cjs/mutators/date-mutators.d.ts.map +1 -0
  51. package/cjs/mutators/date-mutators.js +120 -0
  52. package/cjs/mutators/date-mutators.js.map +1 -0
  53. package/cjs/mutators/index.d.ts +7 -0
  54. package/cjs/mutators/index.d.ts.map +1 -0
  55. package/cjs/mutators/number-mutators.d.ts +22 -0
  56. package/cjs/mutators/number-mutators.d.ts.map +1 -0
  57. package/cjs/mutators/number-mutators.js +53 -0
  58. package/cjs/mutators/number-mutators.js.map +1 -0
  59. package/cjs/mutators/object-mutators.d.ts +8 -0
  60. package/cjs/mutators/object-mutators.d.ts.map +1 -0
  61. package/cjs/mutators/object-mutators.js +48 -0
  62. package/cjs/mutators/object-mutators.js.map +1 -0
  63. package/cjs/mutators/scalar-mutators.d.ts +3 -0
  64. package/cjs/mutators/scalar-mutators.d.ts.map +1 -0
  65. package/cjs/mutators/scalar-mutators.js +6 -0
  66. package/cjs/mutators/scalar-mutators.js.map +1 -0
  67. package/cjs/mutators/string-mutators.d.ts +72 -0
  68. package/cjs/mutators/string-mutators.d.ts.map +1 -0
  69. package/cjs/mutators/string-mutators.js +193 -0
  70. package/cjs/mutators/string-mutators.js.map +1 -0
  71. package/cjs/plugins/index.d.ts +7 -0
  72. package/cjs/plugins/index.d.ts.map +1 -0
  73. package/cjs/plugins/plugin-system.d.ts +71 -0
  74. package/cjs/plugins/plugin-system.d.ts.map +1 -0
  75. package/cjs/plugins/plugin-system.js +67 -0
  76. package/cjs/plugins/plugin-system.js.map +1 -0
  77. package/cjs/rules/array/array-rules.d.ts +12 -0
  78. package/cjs/rules/array/array-rules.d.ts.map +1 -0
  79. package/cjs/rules/array/array-rules.js +45 -0
  80. package/cjs/rules/array/array-rules.js.map +1 -0
  81. package/cjs/rules/array/index.d.ts +2 -0
  82. package/cjs/rules/array/index.d.ts.map +1 -0
  83. package/cjs/rules/color/color-rules.d.ts +30 -0
  84. package/cjs/rules/color/color-rules.d.ts.map +1 -0
  85. package/cjs/rules/color/color-rules.js +120 -0
  86. package/cjs/rules/color/color-rules.js.map +1 -0
  87. package/cjs/rules/color/index.d.ts +2 -0
  88. package/cjs/rules/color/index.d.ts.map +1 -0
  89. package/cjs/rules/common/enum.d.ts +26 -0
  90. package/cjs/rules/common/enum.d.ts.map +1 -0
  91. package/cjs/rules/common/enum.js +69 -0
  92. package/cjs/rules/common/enum.js.map +1 -0
  93. package/cjs/rules/common/equals-field-rules.d.ts +18 -0
  94. package/cjs/rules/common/equals-field-rules.d.ts.map +1 -0
  95. package/cjs/rules/common/equals-field-rules.js +39 -0
  96. package/cjs/rules/common/equals-field-rules.js.map +1 -0
  97. package/cjs/rules/common/index.d.ts +5 -0
  98. package/cjs/rules/common/index.d.ts.map +1 -0
  99. package/cjs/rules/common/type-rules.d.ts +38 -0
  100. package/cjs/rules/common/type-rules.d.ts.map +1 -0
  101. package/cjs/rules/common/type-rules.js +117 -0
  102. package/cjs/rules/common/type-rules.js.map +1 -0
  103. package/cjs/rules/common/unknown-key.d.ts +9 -0
  104. package/cjs/rules/common/unknown-key.d.ts.map +1 -0
  105. package/cjs/rules/common/unknown-key.js +17 -0
  106. package/cjs/rules/common/unknown-key.js.map +1 -0
  107. package/cjs/rules/conditional/forbidden-if-rules.d.ts +54 -0
  108. package/cjs/rules/conditional/forbidden-if-rules.d.ts.map +1 -0
  109. package/cjs/rules/conditional/forbidden-if-rules.js +118 -0
  110. package/cjs/rules/conditional/forbidden-if-rules.js.map +1 -0
  111. package/cjs/rules/conditional/index.d.ts +11 -0
  112. package/cjs/rules/conditional/index.d.ts.map +1 -0
  113. package/cjs/rules/conditional/present-if-rules.d.ts +45 -0
  114. package/cjs/rules/conditional/present-if-rules.d.ts.map +1 -0
  115. package/cjs/rules/conditional/present-if-rules.js +100 -0
  116. package/cjs/rules/conditional/present-if-rules.js.map +1 -0
  117. package/cjs/rules/conditional/present-unless-rules.d.ts +11 -0
  118. package/cjs/rules/conditional/present-unless-rules.d.ts.map +1 -0
  119. package/cjs/rules/conditional/present-unless-rules.js +22 -0
  120. package/cjs/rules/conditional/present-unless-rules.js.map +1 -0
  121. package/cjs/rules/conditional/present-with-rules.d.ts +26 -0
  122. package/cjs/rules/conditional/present-with-rules.d.ts.map +1 -0
  123. package/cjs/rules/conditional/present-with-rules.js +70 -0
  124. package/cjs/rules/conditional/present-with-rules.js.map +1 -0
  125. package/cjs/rules/conditional/present-without-rules.d.ts +26 -0
  126. package/cjs/rules/conditional/present-without-rules.d.ts.map +1 -0
  127. package/cjs/rules/conditional/present-without-rules.js +70 -0
  128. package/cjs/rules/conditional/present-without-rules.js.map +1 -0
  129. package/cjs/rules/conditional/required-if-rules.d.ts +77 -0
  130. package/cjs/rules/conditional/required-if-rules.d.ts.map +1 -0
  131. package/cjs/rules/conditional/required-if-rules.js +205 -0
  132. package/cjs/rules/conditional/required-if-rules.js.map +1 -0
  133. package/cjs/rules/conditional/required-unless-rules.d.ts +11 -0
  134. package/cjs/rules/conditional/required-unless-rules.d.ts.map +1 -0
  135. package/cjs/rules/conditional/required-unless-rules.js +22 -0
  136. package/cjs/rules/conditional/required-unless-rules.js.map +1 -0
  137. package/cjs/rules/conditional/required-when-rule.d.ts +18 -0
  138. package/cjs/rules/conditional/required-when-rule.d.ts.map +1 -0
  139. package/cjs/rules/conditional/required-when-rule.js +26 -0
  140. package/cjs/rules/conditional/required-when-rule.js.map +1 -0
  141. package/cjs/rules/conditional/required-with-rules.d.ts +26 -0
  142. package/cjs/rules/conditional/required-with-rules.d.ts.map +1 -0
  143. package/cjs/rules/conditional/required-with-rules.js +64 -0
  144. package/cjs/rules/conditional/required-with-rules.js.map +1 -0
  145. package/cjs/rules/conditional/required-without-rules.d.ts +26 -0
  146. package/cjs/rules/conditional/required-without-rules.d.ts.map +1 -0
  147. package/cjs/rules/conditional/required-without-rules.js +64 -0
  148. package/cjs/rules/conditional/required-without-rules.js.map +1 -0
  149. package/cjs/rules/core/equal.d.ts +8 -0
  150. package/cjs/rules/core/equal.d.ts.map +1 -0
  151. package/cjs/rules/core/equal.js +14 -0
  152. package/cjs/rules/core/equal.js.map +1 -0
  153. package/cjs/rules/core/forbidden.d.ts +6 -0
  154. package/cjs/rules/core/forbidden.d.ts.map +1 -0
  155. package/cjs/rules/core/forbidden.js +13 -0
  156. package/cjs/rules/core/forbidden.js.map +1 -0
  157. package/cjs/rules/core/index.d.ts +6 -0
  158. package/cjs/rules/core/index.d.ts.map +1 -0
  159. package/cjs/rules/core/required.d.ts +11 -0
  160. package/cjs/rules/core/required.d.ts.map +1 -0
  161. package/cjs/rules/core/required.js +31 -0
  162. package/cjs/rules/core/required.js.map +1 -0
  163. package/cjs/rules/core/union.d.ts +9 -0
  164. package/cjs/rules/core/union.d.ts.map +1 -0
  165. package/cjs/rules/core/union.js +40 -0
  166. package/cjs/rules/core/union.js.map +1 -0
  167. package/cjs/rules/core/when.d.ts +6 -0
  168. package/cjs/rules/core/when.d.ts.map +1 -0
  169. package/cjs/rules/core/when.js +40 -0
  170. package/cjs/rules/core/when.js.map +1 -0
  171. package/cjs/rules/date/date-comparison-rules.d.ts +25 -0
  172. package/cjs/rules/date/date-comparison-rules.d.ts.map +1 -0
  173. package/cjs/rules/date/date-comparison-rules.js +80 -0
  174. package/cjs/rules/date/date-comparison-rules.js.map +1 -0
  175. package/cjs/rules/date/date-day-rules.d.ts +21 -0
  176. package/cjs/rules/date/date-day-rules.d.ts.map +1 -0
  177. package/cjs/rules/date/date-day-rules.js +68 -0
  178. package/cjs/rules/date/date-day-rules.js.map +1 -0
  179. package/cjs/rules/date/date-field-comparison-rules.d.ts +28 -0
  180. package/cjs/rules/date/date-field-comparison-rules.d.ts.map +1 -0
  181. package/cjs/rules/date/date-field-comparison-rules.js +94 -0
  182. package/cjs/rules/date/date-field-comparison-rules.js.map +1 -0
  183. package/cjs/rules/date/date-period-rules.d.ts +124 -0
  184. package/cjs/rules/date/date-period-rules.d.ts.map +1 -0
  185. package/cjs/rules/date/date-period-rules.js +605 -0
  186. package/cjs/rules/date/date-period-rules.js.map +1 -0
  187. package/cjs/rules/date/date-relative-rules.d.ts +20 -0
  188. package/cjs/rules/date/date-relative-rules.d.ts.map +1 -0
  189. package/cjs/rules/date/date-relative-rules.js +60 -0
  190. package/cjs/rules/date/date-relative-rules.js.map +1 -0
  191. package/cjs/rules/date/date-special-rules.d.ts +20 -0
  192. package/cjs/rules/date/date-special-rules.d.ts.map +1 -0
  193. package/cjs/rules/date/date-special-rules.js +71 -0
  194. package/cjs/rules/date/date-special-rules.js.map +1 -0
  195. package/cjs/rules/date/date.d.ts +93 -0
  196. package/cjs/rules/date/date.d.ts.map +1 -0
  197. package/cjs/rules/date/date.js +288 -0
  198. package/cjs/rules/date/date.js.map +1 -0
  199. package/cjs/rules/date/index.d.ts +8 -0
  200. package/cjs/rules/date/index.d.ts.map +1 -0
  201. package/cjs/rules/file/dimensions.d.ts +26 -0
  202. package/cjs/rules/file/dimensions.d.ts.map +1 -0
  203. package/cjs/rules/file/dimensions.js +60 -0
  204. package/cjs/rules/file/dimensions.js.map +1 -0
  205. package/cjs/rules/file/file-size.d.ts +14 -0
  206. package/cjs/rules/file/file-size.d.ts.map +1 -0
  207. package/cjs/rules/file/file-size.js +30 -0
  208. package/cjs/rules/file/file-size.js.map +1 -0
  209. package/cjs/rules/file/index.d.ts +11 -0
  210. package/cjs/rules/file/index.d.ts.map +1 -0
  211. package/cjs/rules/index.d.ts +19 -0
  212. package/cjs/rules/index.d.ts.map +1 -0
  213. package/cjs/rules/length/index.d.ts +2 -0
  214. package/cjs/rules/length/index.d.ts.map +1 -0
  215. package/cjs/rules/length/length-rules.d.ts +49 -0
  216. package/cjs/rules/length/length-rules.d.ts.map +1 -0
  217. package/cjs/rules/length/length-rules.js +107 -0
  218. package/cjs/rules/length/length-rules.js.map +1 -0
  219. package/cjs/rules/number/index.d.ts +2 -0
  220. package/cjs/rules/number/index.d.ts.map +1 -0
  221. package/cjs/rules/number/number-rules.d.ts +65 -0
  222. package/cjs/rules/number/number-rules.d.ts.map +1 -0
  223. package/cjs/rules/number/number-rules.js +245 -0
  224. package/cjs/rules/number/number-rules.js.map +1 -0
  225. package/cjs/rules/scalar/accepted-rule.d.ts +39 -0
  226. package/cjs/rules/scalar/accepted-rule.d.ts.map +1 -0
  227. package/cjs/rules/scalar/accepted-rule.js +117 -0
  228. package/cjs/rules/scalar/accepted-rule.js.map +1 -0
  229. package/cjs/rules/scalar/declined-rule.d.ts +39 -0
  230. package/cjs/rules/scalar/declined-rule.d.ts.map +1 -0
  231. package/cjs/rules/scalar/declined-rule.js +117 -0
  232. package/cjs/rules/scalar/declined-rule.js.map +1 -0
  233. package/cjs/rules/scalar/index.d.ts +3 -0
  234. package/cjs/rules/scalar/index.d.ts.map +1 -0
  235. package/cjs/rules/string/alpha.d.ts +14 -0
  236. package/cjs/rules/string/alpha.d.ts.map +1 -0
  237. package/cjs/rules/string/alpha.js +39 -0
  238. package/cjs/rules/string/alpha.js.map +1 -0
  239. package/cjs/rules/string/credit-card.d.ts +6 -0
  240. package/cjs/rules/string/credit-card.d.ts.map +1 -0
  241. package/cjs/rules/string/credit-card.js +31 -0
  242. package/cjs/rules/string/credit-card.js.map +1 -0
  243. package/cjs/rules/string/email.d.ts +6 -0
  244. package/cjs/rules/string/email.d.ts.map +1 -0
  245. package/cjs/rules/string/email.js +13 -0
  246. package/cjs/rules/string/email.js.map +1 -0
  247. package/cjs/rules/string/index.d.ts +17 -0
  248. package/cjs/rules/string/index.d.ts.map +1 -0
  249. package/cjs/rules/string/ip.d.ts +14 -0
  250. package/cjs/rules/string/ip.d.ts.map +1 -0
  251. package/cjs/rules/string/ip.js +39 -0
  252. package/cjs/rules/string/ip.js.map +1 -0
  253. package/cjs/rules/string/matches.d.ts +8 -0
  254. package/cjs/rules/string/matches.d.ts.map +1 -0
  255. package/cjs/rules/string/matches.js +15 -0
  256. package/cjs/rules/string/matches.js.map +1 -0
  257. package/cjs/rules/string/pattern.d.ts +8 -0
  258. package/cjs/rules/string/pattern.d.ts.map +1 -0
  259. package/cjs/rules/string/pattern.js +14 -0
  260. package/cjs/rules/string/pattern.js.map +1 -0
  261. package/cjs/rules/string/string-comparison.d.ts +26 -0
  262. package/cjs/rules/string/string-comparison.d.ts.map +1 -0
  263. package/cjs/rules/string/string-comparison.js +56 -0
  264. package/cjs/rules/string/string-comparison.js.map +1 -0
  265. package/cjs/rules/string/strong-password-rule.d.ts +14 -0
  266. package/cjs/rules/string/strong-password-rule.d.ts.map +1 -0
  267. package/cjs/rules/string/strong-password-rule.js +38 -0
  268. package/cjs/rules/string/strong-password-rule.js.map +1 -0
  269. package/cjs/rules/string/url.d.ts +6 -0
  270. package/cjs/rules/string/url.d.ts.map +1 -0
  271. package/cjs/rules/string/url.js +16 -0
  272. package/cjs/rules/string/url.js.map +1 -0
  273. package/cjs/rules/string/without-whitespace.d.ts +6 -0
  274. package/cjs/rules/string/without-whitespace.d.ts.map +1 -0
  275. package/cjs/rules/string/without-whitespace.js +13 -0
  276. package/cjs/rules/string/without-whitespace.js.map +1 -0
  277. package/cjs/standard-schema/index.d.ts +4 -0
  278. package/cjs/standard-schema/index.d.ts.map +1 -0
  279. package/cjs/standard-schema/json-schema.d.ts +61 -0
  280. package/cjs/standard-schema/json-schema.d.ts.map +1 -0
  281. package/cjs/standard-schema/json-schema.js +85 -0
  282. package/cjs/standard-schema/json-schema.js.map +1 -0
  283. package/cjs/standard-schema/map-result.d.ts +18 -0
  284. package/cjs/standard-schema/map-result.d.ts.map +1 -0
  285. package/cjs/standard-schema/map-result.js +27 -0
  286. package/cjs/standard-schema/map-result.js.map +1 -0
  287. package/cjs/standard-schema/types.d.ts +93 -0
  288. package/cjs/standard-schema/types.d.ts.map +1 -0
  289. package/cjs/types/conditional-types.d.ts +15 -0
  290. package/cjs/types/conditional-types.d.ts.map +1 -0
  291. package/cjs/types/context-types.d.ts +47 -0
  292. package/cjs/types/context-types.d.ts.map +1 -0
  293. package/cjs/types/data-transformer-types.d.ts +25 -0
  294. package/cjs/types/data-transformer-types.d.ts.map +1 -0
  295. package/cjs/types/date-types.d.ts +9 -0
  296. package/cjs/types/date-types.d.ts.map +1 -0
  297. package/cjs/types/date-types.js +12 -0
  298. package/cjs/types/date-types.js.map +1 -0
  299. package/cjs/types/file.types.d.ts +5 -0
  300. package/cjs/types/file.types.d.ts.map +1 -0
  301. package/cjs/types/index.d.ts +11 -0
  302. package/cjs/types/index.d.ts.map +1 -0
  303. package/cjs/types/inference-types.d.ts +32 -0
  304. package/cjs/types/inference-types.d.ts.map +1 -0
  305. package/cjs/types/mutator-types.d.ts +27 -0
  306. package/cjs/types/mutator-types.d.ts.map +1 -0
  307. package/cjs/types/result-types.d.ts +19 -0
  308. package/cjs/types/result-types.d.ts.map +1 -0
  309. package/cjs/types/rule-types.d.ts +58 -0
  310. package/cjs/types/rule-types.d.ts.map +1 -0
  311. package/cjs/types/schema-types.d.ts +6 -0
  312. package/cjs/types/schema-types.d.ts.map +1 -0
  313. package/cjs/validators/any-validator.d.ts +29 -0
  314. package/cjs/validators/any-validator.d.ts.map +1 -0
  315. package/cjs/validators/any-validator.js +31 -0
  316. package/cjs/validators/any-validator.js.map +1 -0
  317. package/cjs/validators/array-validator.d.ts +72 -0
  318. package/cjs/validators/array-validator.d.ts.map +1 -0
  319. package/cjs/validators/array-validator.js +162 -0
  320. package/cjs/validators/array-validator.js.map +1 -0
  321. package/cjs/validators/base-validator.d.ts +425 -0
  322. package/cjs/validators/base-validator.d.ts.map +1 -0
  323. package/cjs/validators/base-validator.js +637 -0
  324. package/cjs/validators/base-validator.js.map +1 -0
  325. package/cjs/validators/boolean-validator.d.ts +67 -0
  326. package/cjs/validators/boolean-validator.d.ts.map +1 -0
  327. package/cjs/validators/boolean-validator.js +105 -0
  328. package/cjs/validators/boolean-validator.js.map +1 -0
  329. package/cjs/validators/computed-validator.d.ts +75 -0
  330. package/cjs/validators/computed-validator.d.ts.map +1 -0
  331. package/cjs/validators/computed-validator.js +124 -0
  332. package/cjs/validators/computed-validator.js.map +1 -0
  333. package/cjs/validators/date-validator.d.ts +330 -0
  334. package/cjs/validators/date-validator.d.ts.map +1 -0
  335. package/cjs/validators/date-validator.js +614 -0
  336. package/cjs/validators/date-validator.js.map +1 -0
  337. package/cjs/validators/float-validator.d.ts +8 -0
  338. package/cjs/validators/float-validator.d.ts.map +1 -0
  339. package/cjs/validators/float-validator.js +9 -0
  340. package/cjs/validators/float-validator.js.map +1 -0
  341. package/cjs/validators/index.d.ts +31 -0
  342. package/cjs/validators/index.d.ts.map +1 -0
  343. package/cjs/validators/int-validator.d.ts +19 -0
  344. package/cjs/validators/int-validator.d.ts.map +1 -0
  345. package/cjs/validators/int-validator.js +21 -0
  346. package/cjs/validators/int-validator.js.map +1 -0
  347. package/cjs/validators/managed-validator.d.ts +38 -0
  348. package/cjs/validators/managed-validator.d.ts.map +1 -0
  349. package/cjs/validators/managed-validator.js +34 -0
  350. package/cjs/validators/managed-validator.js.map +1 -0
  351. package/cjs/validators/methods/equality-conditional-methods.d.ts +88 -0
  352. package/cjs/validators/methods/equality-conditional-methods.d.ts.map +1 -0
  353. package/cjs/validators/methods/equality-conditional-methods.js +118 -0
  354. package/cjs/validators/methods/equality-conditional-methods.js.map +1 -0
  355. package/cjs/validators/methods/forbidden-methods.d.ts +58 -0
  356. package/cjs/validators/methods/forbidden-methods.d.ts.map +1 -0
  357. package/cjs/validators/methods/forbidden-methods.js +122 -0
  358. package/cjs/validators/methods/forbidden-methods.js.map +1 -0
  359. package/cjs/validators/methods/present-methods.d.ts +102 -0
  360. package/cjs/validators/methods/present-methods.d.ts.map +1 -0
  361. package/cjs/validators/methods/present-methods.js +229 -0
  362. package/cjs/validators/methods/present-methods.js.map +1 -0
  363. package/cjs/validators/methods/required-methods.d.ts +174 -0
  364. package/cjs/validators/methods/required-methods.d.ts.map +1 -0
  365. package/cjs/validators/methods/required-methods.js +246 -0
  366. package/cjs/validators/methods/required-methods.js.map +1 -0
  367. package/cjs/validators/number-validator.d.ts +166 -0
  368. package/cjs/validators/number-validator.d.ts.map +1 -0
  369. package/cjs/validators/number-validator.js +307 -0
  370. package/cjs/validators/number-validator.js.map +1 -0
  371. package/cjs/validators/numeric-validator.d.ts +15 -0
  372. package/cjs/validators/numeric-validator.d.ts.map +1 -0
  373. package/cjs/validators/numeric-validator.js +18 -0
  374. package/cjs/validators/numeric-validator.js.map +1 -0
  375. package/cjs/validators/object-validator.d.ts +233 -0
  376. package/cjs/validators/object-validator.d.ts.map +1 -0
  377. package/cjs/validators/object-validator.js +517 -0
  378. package/cjs/validators/object-validator.js.map +1 -0
  379. package/cjs/validators/primitive-validator.d.ts +70 -0
  380. package/cjs/validators/primitive-validator.d.ts.map +1 -0
  381. package/cjs/validators/primitive-validator.js +80 -0
  382. package/cjs/validators/primitive-validator.js.map +1 -0
  383. package/cjs/validators/record-validator.d.ts +54 -0
  384. package/cjs/validators/record-validator.d.ts.map +1 -0
  385. package/cjs/validators/record-validator.js +100 -0
  386. package/cjs/validators/record-validator.js.map +1 -0
  387. package/cjs/validators/scalar-validator.d.ts +93 -0
  388. package/cjs/validators/scalar-validator.d.ts.map +1 -0
  389. package/cjs/validators/scalar-validator.js +149 -0
  390. package/cjs/validators/scalar-validator.js.map +1 -0
  391. package/cjs/validators/string-validator.d.ts +189 -0
  392. package/cjs/validators/string-validator.d.ts.map +1 -0
  393. package/cjs/validators/string-validator.js +387 -0
  394. package/cjs/validators/string-validator.js.map +1 -0
  395. package/cjs/validators/tuple-validator.d.ts +56 -0
  396. package/cjs/validators/tuple-validator.d.ts.map +1 -0
  397. package/cjs/validators/tuple-validator.js +121 -0
  398. package/cjs/validators/tuple-validator.js.map +1 -0
  399. package/cjs/validators/union-validator.d.ts +55 -0
  400. package/cjs/validators/union-validator.d.ts.map +1 -0
  401. package/cjs/validators/union-validator.js +60 -0
  402. package/cjs/validators/union-validator.js.map +1 -0
  403. package/esm/index.d.ts +30 -0
  404. package/esm/index.d.ts.map +1 -0
  405. package/esm/index.js +1 -0
  406. package/esm/index.js.map +1 -0
  407. package/esm/mutators/array-mutators.d.ts +12 -0
  408. package/esm/mutators/array-mutators.d.ts.map +1 -0
  409. package/esm/mutators/array-mutators.js +37 -0
  410. package/esm/mutators/array-mutators.js.map +1 -0
  411. package/esm/mutators/date-mutators.d.ts +39 -0
  412. package/esm/mutators/date-mutators.d.ts.map +1 -0
  413. package/esm/mutators/date-mutators.js +120 -0
  414. package/esm/mutators/date-mutators.js.map +1 -0
  415. package/esm/mutators/index.d.ts +7 -0
  416. package/esm/mutators/index.d.ts.map +1 -0
  417. package/esm/mutators/number-mutators.d.ts +22 -0
  418. package/esm/mutators/number-mutators.d.ts.map +1 -0
  419. package/esm/mutators/number-mutators.js +53 -0
  420. package/esm/mutators/number-mutators.js.map +1 -0
  421. package/esm/mutators/object-mutators.d.ts +8 -0
  422. package/esm/mutators/object-mutators.d.ts.map +1 -0
  423. package/esm/mutators/object-mutators.js +48 -0
  424. package/esm/mutators/object-mutators.js.map +1 -0
  425. package/esm/mutators/scalar-mutators.d.ts +3 -0
  426. package/esm/mutators/scalar-mutators.d.ts.map +1 -0
  427. package/esm/mutators/scalar-mutators.js +6 -0
  428. package/esm/mutators/scalar-mutators.js.map +1 -0
  429. package/esm/mutators/string-mutators.d.ts +72 -0
  430. package/esm/mutators/string-mutators.d.ts.map +1 -0
  431. package/esm/mutators/string-mutators.js +193 -0
  432. package/esm/mutators/string-mutators.js.map +1 -0
  433. package/esm/plugins/index.d.ts +7 -0
  434. package/esm/plugins/index.d.ts.map +1 -0
  435. package/esm/plugins/plugin-system.d.ts +71 -0
  436. package/esm/plugins/plugin-system.d.ts.map +1 -0
  437. package/esm/plugins/plugin-system.js +67 -0
  438. package/esm/plugins/plugin-system.js.map +1 -0
  439. package/esm/rules/array/array-rules.d.ts +12 -0
  440. package/esm/rules/array/array-rules.d.ts.map +1 -0
  441. package/esm/rules/array/array-rules.js +45 -0
  442. package/esm/rules/array/array-rules.js.map +1 -0
  443. package/esm/rules/array/index.d.ts +2 -0
  444. package/esm/rules/array/index.d.ts.map +1 -0
  445. package/esm/rules/color/color-rules.d.ts +30 -0
  446. package/esm/rules/color/color-rules.d.ts.map +1 -0
  447. package/esm/rules/color/color-rules.js +120 -0
  448. package/esm/rules/color/color-rules.js.map +1 -0
  449. package/esm/rules/color/index.d.ts +2 -0
  450. package/esm/rules/color/index.d.ts.map +1 -0
  451. package/esm/rules/common/enum.d.ts +26 -0
  452. package/esm/rules/common/enum.d.ts.map +1 -0
  453. package/esm/rules/common/enum.js +69 -0
  454. package/esm/rules/common/enum.js.map +1 -0
  455. package/esm/rules/common/equals-field-rules.d.ts +18 -0
  456. package/esm/rules/common/equals-field-rules.d.ts.map +1 -0
  457. package/esm/rules/common/equals-field-rules.js +39 -0
  458. package/esm/rules/common/equals-field-rules.js.map +1 -0
  459. package/esm/rules/common/index.d.ts +5 -0
  460. package/esm/rules/common/index.d.ts.map +1 -0
  461. package/esm/rules/common/type-rules.d.ts +38 -0
  462. package/esm/rules/common/type-rules.d.ts.map +1 -0
  463. package/esm/rules/common/type-rules.js +117 -0
  464. package/esm/rules/common/type-rules.js.map +1 -0
  465. package/esm/rules/common/unknown-key.d.ts +9 -0
  466. package/esm/rules/common/unknown-key.d.ts.map +1 -0
  467. package/esm/rules/common/unknown-key.js +17 -0
  468. package/esm/rules/common/unknown-key.js.map +1 -0
  469. package/esm/rules/conditional/forbidden-if-rules.d.ts +54 -0
  470. package/esm/rules/conditional/forbidden-if-rules.d.ts.map +1 -0
  471. package/esm/rules/conditional/forbidden-if-rules.js +118 -0
  472. package/esm/rules/conditional/forbidden-if-rules.js.map +1 -0
  473. package/esm/rules/conditional/index.d.ts +11 -0
  474. package/esm/rules/conditional/index.d.ts.map +1 -0
  475. package/esm/rules/conditional/present-if-rules.d.ts +45 -0
  476. package/esm/rules/conditional/present-if-rules.d.ts.map +1 -0
  477. package/esm/rules/conditional/present-if-rules.js +100 -0
  478. package/esm/rules/conditional/present-if-rules.js.map +1 -0
  479. package/esm/rules/conditional/present-unless-rules.d.ts +11 -0
  480. package/esm/rules/conditional/present-unless-rules.d.ts.map +1 -0
  481. package/esm/rules/conditional/present-unless-rules.js +22 -0
  482. package/esm/rules/conditional/present-unless-rules.js.map +1 -0
  483. package/esm/rules/conditional/present-with-rules.d.ts +26 -0
  484. package/esm/rules/conditional/present-with-rules.d.ts.map +1 -0
  485. package/esm/rules/conditional/present-with-rules.js +70 -0
  486. package/esm/rules/conditional/present-with-rules.js.map +1 -0
  487. package/esm/rules/conditional/present-without-rules.d.ts +26 -0
  488. package/esm/rules/conditional/present-without-rules.d.ts.map +1 -0
  489. package/esm/rules/conditional/present-without-rules.js +70 -0
  490. package/esm/rules/conditional/present-without-rules.js.map +1 -0
  491. package/esm/rules/conditional/required-if-rules.d.ts +77 -0
  492. package/esm/rules/conditional/required-if-rules.d.ts.map +1 -0
  493. package/esm/rules/conditional/required-if-rules.js +205 -0
  494. package/esm/rules/conditional/required-if-rules.js.map +1 -0
  495. package/esm/rules/conditional/required-unless-rules.d.ts +11 -0
  496. package/esm/rules/conditional/required-unless-rules.d.ts.map +1 -0
  497. package/esm/rules/conditional/required-unless-rules.js +22 -0
  498. package/esm/rules/conditional/required-unless-rules.js.map +1 -0
  499. package/esm/rules/conditional/required-when-rule.d.ts +18 -0
  500. package/esm/rules/conditional/required-when-rule.d.ts.map +1 -0
  501. package/esm/rules/conditional/required-when-rule.js +26 -0
  502. package/esm/rules/conditional/required-when-rule.js.map +1 -0
  503. package/esm/rules/conditional/required-with-rules.d.ts +26 -0
  504. package/esm/rules/conditional/required-with-rules.d.ts.map +1 -0
  505. package/esm/rules/conditional/required-with-rules.js +64 -0
  506. package/esm/rules/conditional/required-with-rules.js.map +1 -0
  507. package/esm/rules/conditional/required-without-rules.d.ts +26 -0
  508. package/esm/rules/conditional/required-without-rules.d.ts.map +1 -0
  509. package/esm/rules/conditional/required-without-rules.js +64 -0
  510. package/esm/rules/conditional/required-without-rules.js.map +1 -0
  511. package/esm/rules/core/equal.d.ts +8 -0
  512. package/esm/rules/core/equal.d.ts.map +1 -0
  513. package/esm/rules/core/equal.js +14 -0
  514. package/esm/rules/core/equal.js.map +1 -0
  515. package/esm/rules/core/forbidden.d.ts +6 -0
  516. package/esm/rules/core/forbidden.d.ts.map +1 -0
  517. package/esm/rules/core/forbidden.js +13 -0
  518. package/esm/rules/core/forbidden.js.map +1 -0
  519. package/esm/rules/core/index.d.ts +6 -0
  520. package/esm/rules/core/index.d.ts.map +1 -0
  521. package/esm/rules/core/required.d.ts +11 -0
  522. package/esm/rules/core/required.d.ts.map +1 -0
  523. package/esm/rules/core/required.js +31 -0
  524. package/esm/rules/core/required.js.map +1 -0
  525. package/esm/rules/core/union.d.ts +9 -0
  526. package/esm/rules/core/union.d.ts.map +1 -0
  527. package/esm/rules/core/union.js +40 -0
  528. package/esm/rules/core/union.js.map +1 -0
  529. package/esm/rules/core/when.d.ts +6 -0
  530. package/esm/rules/core/when.d.ts.map +1 -0
  531. package/esm/rules/core/when.js +40 -0
  532. package/esm/rules/core/when.js.map +1 -0
  533. package/esm/rules/date/date-comparison-rules.d.ts +25 -0
  534. package/esm/rules/date/date-comparison-rules.d.ts.map +1 -0
  535. package/esm/rules/date/date-comparison-rules.js +80 -0
  536. package/esm/rules/date/date-comparison-rules.js.map +1 -0
  537. package/esm/rules/date/date-day-rules.d.ts +21 -0
  538. package/esm/rules/date/date-day-rules.d.ts.map +1 -0
  539. package/esm/rules/date/date-day-rules.js +68 -0
  540. package/esm/rules/date/date-day-rules.js.map +1 -0
  541. package/esm/rules/date/date-field-comparison-rules.d.ts +28 -0
  542. package/esm/rules/date/date-field-comparison-rules.d.ts.map +1 -0
  543. package/esm/rules/date/date-field-comparison-rules.js +94 -0
  544. package/esm/rules/date/date-field-comparison-rules.js.map +1 -0
  545. package/esm/rules/date/date-period-rules.d.ts +124 -0
  546. package/esm/rules/date/date-period-rules.d.ts.map +1 -0
  547. package/esm/rules/date/date-period-rules.js +605 -0
  548. package/esm/rules/date/date-period-rules.js.map +1 -0
  549. package/esm/rules/date/date-relative-rules.d.ts +20 -0
  550. package/esm/rules/date/date-relative-rules.d.ts.map +1 -0
  551. package/esm/rules/date/date-relative-rules.js +60 -0
  552. package/esm/rules/date/date-relative-rules.js.map +1 -0
  553. package/esm/rules/date/date-special-rules.d.ts +20 -0
  554. package/esm/rules/date/date-special-rules.d.ts.map +1 -0
  555. package/esm/rules/date/date-special-rules.js +71 -0
  556. package/esm/rules/date/date-special-rules.js.map +1 -0
  557. package/esm/rules/date/date.d.ts +93 -0
  558. package/esm/rules/date/date.d.ts.map +1 -0
  559. package/esm/rules/date/date.js +288 -0
  560. package/esm/rules/date/date.js.map +1 -0
  561. package/esm/rules/date/index.d.ts +8 -0
  562. package/esm/rules/date/index.d.ts.map +1 -0
  563. package/esm/rules/file/dimensions.d.ts +26 -0
  564. package/esm/rules/file/dimensions.d.ts.map +1 -0
  565. package/esm/rules/file/dimensions.js +60 -0
  566. package/esm/rules/file/dimensions.js.map +1 -0
  567. package/esm/rules/file/file-size.d.ts +14 -0
  568. package/esm/rules/file/file-size.d.ts.map +1 -0
  569. package/esm/rules/file/file-size.js +30 -0
  570. package/esm/rules/file/file-size.js.map +1 -0
  571. package/esm/rules/file/index.d.ts +11 -0
  572. package/esm/rules/file/index.d.ts.map +1 -0
  573. package/esm/rules/index.d.ts +19 -0
  574. package/esm/rules/index.d.ts.map +1 -0
  575. package/esm/rules/length/index.d.ts +2 -0
  576. package/esm/rules/length/index.d.ts.map +1 -0
  577. package/esm/rules/length/length-rules.d.ts +49 -0
  578. package/esm/rules/length/length-rules.d.ts.map +1 -0
  579. package/esm/rules/length/length-rules.js +107 -0
  580. package/esm/rules/length/length-rules.js.map +1 -0
  581. package/esm/rules/number/index.d.ts +2 -0
  582. package/esm/rules/number/index.d.ts.map +1 -0
  583. package/esm/rules/number/number-rules.d.ts +65 -0
  584. package/esm/rules/number/number-rules.d.ts.map +1 -0
  585. package/esm/rules/number/number-rules.js +245 -0
  586. package/esm/rules/number/number-rules.js.map +1 -0
  587. package/esm/rules/scalar/accepted-rule.d.ts +39 -0
  588. package/esm/rules/scalar/accepted-rule.d.ts.map +1 -0
  589. package/esm/rules/scalar/accepted-rule.js +117 -0
  590. package/esm/rules/scalar/accepted-rule.js.map +1 -0
  591. package/esm/rules/scalar/declined-rule.d.ts +39 -0
  592. package/esm/rules/scalar/declined-rule.d.ts.map +1 -0
  593. package/esm/rules/scalar/declined-rule.js +117 -0
  594. package/esm/rules/scalar/declined-rule.js.map +1 -0
  595. package/esm/rules/scalar/index.d.ts +3 -0
  596. package/esm/rules/scalar/index.d.ts.map +1 -0
  597. package/esm/rules/string/alpha.d.ts +14 -0
  598. package/esm/rules/string/alpha.d.ts.map +1 -0
  599. package/esm/rules/string/alpha.js +39 -0
  600. package/esm/rules/string/alpha.js.map +1 -0
  601. package/esm/rules/string/credit-card.d.ts +6 -0
  602. package/esm/rules/string/credit-card.d.ts.map +1 -0
  603. package/esm/rules/string/credit-card.js +31 -0
  604. package/esm/rules/string/credit-card.js.map +1 -0
  605. package/esm/rules/string/email.d.ts +6 -0
  606. package/esm/rules/string/email.d.ts.map +1 -0
  607. package/esm/rules/string/email.js +13 -0
  608. package/esm/rules/string/email.js.map +1 -0
  609. package/esm/rules/string/index.d.ts +17 -0
  610. package/esm/rules/string/index.d.ts.map +1 -0
  611. package/esm/rules/string/ip.d.ts +14 -0
  612. package/esm/rules/string/ip.d.ts.map +1 -0
  613. package/esm/rules/string/ip.js +39 -0
  614. package/esm/rules/string/ip.js.map +1 -0
  615. package/esm/rules/string/matches.d.ts +8 -0
  616. package/esm/rules/string/matches.d.ts.map +1 -0
  617. package/esm/rules/string/matches.js +15 -0
  618. package/esm/rules/string/matches.js.map +1 -0
  619. package/esm/rules/string/pattern.d.ts +8 -0
  620. package/esm/rules/string/pattern.d.ts.map +1 -0
  621. package/esm/rules/string/pattern.js +14 -0
  622. package/esm/rules/string/pattern.js.map +1 -0
  623. package/esm/rules/string/string-comparison.d.ts +26 -0
  624. package/esm/rules/string/string-comparison.d.ts.map +1 -0
  625. package/esm/rules/string/string-comparison.js +56 -0
  626. package/esm/rules/string/string-comparison.js.map +1 -0
  627. package/esm/rules/string/strong-password-rule.d.ts +14 -0
  628. package/esm/rules/string/strong-password-rule.d.ts.map +1 -0
  629. package/esm/rules/string/strong-password-rule.js +38 -0
  630. package/esm/rules/string/strong-password-rule.js.map +1 -0
  631. package/esm/rules/string/url.d.ts +6 -0
  632. package/esm/rules/string/url.d.ts.map +1 -0
  633. package/esm/rules/string/url.js +16 -0
  634. package/esm/rules/string/url.js.map +1 -0
  635. package/esm/rules/string/without-whitespace.d.ts +6 -0
  636. package/esm/rules/string/without-whitespace.d.ts.map +1 -0
  637. package/esm/rules/string/without-whitespace.js +13 -0
  638. package/esm/rules/string/without-whitespace.js.map +1 -0
  639. package/esm/standard-schema/index.d.ts +4 -0
  640. package/esm/standard-schema/index.d.ts.map +1 -0
  641. package/esm/standard-schema/json-schema.d.ts +61 -0
  642. package/esm/standard-schema/json-schema.d.ts.map +1 -0
  643. package/esm/standard-schema/json-schema.js +85 -0
  644. package/esm/standard-schema/json-schema.js.map +1 -0
  645. package/esm/standard-schema/map-result.d.ts +18 -0
  646. package/esm/standard-schema/map-result.d.ts.map +1 -0
  647. package/esm/standard-schema/map-result.js +27 -0
  648. package/esm/standard-schema/map-result.js.map +1 -0
  649. package/esm/standard-schema/types.d.ts +93 -0
  650. package/esm/standard-schema/types.d.ts.map +1 -0
  651. package/esm/types/conditional-types.d.ts +15 -0
  652. package/esm/types/conditional-types.d.ts.map +1 -0
  653. package/esm/types/context-types.d.ts +47 -0
  654. package/esm/types/context-types.d.ts.map +1 -0
  655. package/esm/types/data-transformer-types.d.ts +25 -0
  656. package/esm/types/data-transformer-types.d.ts.map +1 -0
  657. package/esm/types/date-types.d.ts +9 -0
  658. package/esm/types/date-types.d.ts.map +1 -0
  659. package/esm/types/date-types.js +12 -0
  660. package/esm/types/date-types.js.map +1 -0
  661. package/esm/types/file.types.d.ts +5 -0
  662. package/esm/types/file.types.d.ts.map +1 -0
  663. package/esm/types/index.d.ts +11 -0
  664. package/esm/types/index.d.ts.map +1 -0
  665. package/esm/types/inference-types.d.ts +32 -0
  666. package/esm/types/inference-types.d.ts.map +1 -0
  667. package/esm/types/mutator-types.d.ts +27 -0
  668. package/esm/types/mutator-types.d.ts.map +1 -0
  669. package/esm/types/result-types.d.ts +19 -0
  670. package/esm/types/result-types.d.ts.map +1 -0
  671. package/esm/types/rule-types.d.ts +58 -0
  672. package/esm/types/rule-types.d.ts.map +1 -0
  673. package/esm/types/schema-types.d.ts +6 -0
  674. package/esm/types/schema-types.d.ts.map +1 -0
  675. package/esm/validators/any-validator.d.ts +29 -0
  676. package/esm/validators/any-validator.d.ts.map +1 -0
  677. package/esm/validators/any-validator.js +31 -0
  678. package/esm/validators/any-validator.js.map +1 -0
  679. package/esm/validators/array-validator.d.ts +72 -0
  680. package/esm/validators/array-validator.d.ts.map +1 -0
  681. package/esm/validators/array-validator.js +162 -0
  682. package/esm/validators/array-validator.js.map +1 -0
  683. package/esm/validators/base-validator.d.ts +425 -0
  684. package/esm/validators/base-validator.d.ts.map +1 -0
  685. package/esm/validators/base-validator.js +637 -0
  686. package/esm/validators/base-validator.js.map +1 -0
  687. package/esm/validators/boolean-validator.d.ts +67 -0
  688. package/esm/validators/boolean-validator.d.ts.map +1 -0
  689. package/esm/validators/boolean-validator.js +105 -0
  690. package/esm/validators/boolean-validator.js.map +1 -0
  691. package/esm/validators/computed-validator.d.ts +75 -0
  692. package/esm/validators/computed-validator.d.ts.map +1 -0
  693. package/esm/validators/computed-validator.js +124 -0
  694. package/esm/validators/computed-validator.js.map +1 -0
  695. package/esm/validators/date-validator.d.ts +330 -0
  696. package/esm/validators/date-validator.d.ts.map +1 -0
  697. package/esm/validators/date-validator.js +614 -0
  698. package/esm/validators/date-validator.js.map +1 -0
  699. package/esm/validators/float-validator.d.ts +8 -0
  700. package/esm/validators/float-validator.d.ts.map +1 -0
  701. package/esm/validators/float-validator.js +9 -0
  702. package/esm/validators/float-validator.js.map +1 -0
  703. package/esm/validators/index.d.ts +31 -0
  704. package/esm/validators/index.d.ts.map +1 -0
  705. package/esm/validators/int-validator.d.ts +19 -0
  706. package/esm/validators/int-validator.d.ts.map +1 -0
  707. package/esm/validators/int-validator.js +21 -0
  708. package/esm/validators/int-validator.js.map +1 -0
  709. package/esm/validators/managed-validator.d.ts +38 -0
  710. package/esm/validators/managed-validator.d.ts.map +1 -0
  711. package/esm/validators/managed-validator.js +34 -0
  712. package/esm/validators/managed-validator.js.map +1 -0
  713. package/esm/validators/methods/equality-conditional-methods.d.ts +88 -0
  714. package/esm/validators/methods/equality-conditional-methods.d.ts.map +1 -0
  715. package/esm/validators/methods/equality-conditional-methods.js +118 -0
  716. package/esm/validators/methods/equality-conditional-methods.js.map +1 -0
  717. package/esm/validators/methods/forbidden-methods.d.ts +58 -0
  718. package/esm/validators/methods/forbidden-methods.d.ts.map +1 -0
  719. package/esm/validators/methods/forbidden-methods.js +122 -0
  720. package/esm/validators/methods/forbidden-methods.js.map +1 -0
  721. package/esm/validators/methods/present-methods.d.ts +102 -0
  722. package/esm/validators/methods/present-methods.d.ts.map +1 -0
  723. package/esm/validators/methods/present-methods.js +229 -0
  724. package/esm/validators/methods/present-methods.js.map +1 -0
  725. package/esm/validators/methods/required-methods.d.ts +174 -0
  726. package/esm/validators/methods/required-methods.d.ts.map +1 -0
  727. package/esm/validators/methods/required-methods.js +246 -0
  728. package/esm/validators/methods/required-methods.js.map +1 -0
  729. package/esm/validators/number-validator.d.ts +166 -0
  730. package/esm/validators/number-validator.d.ts.map +1 -0
  731. package/esm/validators/number-validator.js +307 -0
  732. package/esm/validators/number-validator.js.map +1 -0
  733. package/esm/validators/numeric-validator.d.ts +15 -0
  734. package/esm/validators/numeric-validator.d.ts.map +1 -0
  735. package/esm/validators/numeric-validator.js +18 -0
  736. package/esm/validators/numeric-validator.js.map +1 -0
  737. package/esm/validators/object-validator.d.ts +233 -0
  738. package/esm/validators/object-validator.d.ts.map +1 -0
  739. package/esm/validators/object-validator.js +517 -0
  740. package/esm/validators/object-validator.js.map +1 -0
  741. package/esm/validators/primitive-validator.d.ts +70 -0
  742. package/esm/validators/primitive-validator.d.ts.map +1 -0
  743. package/esm/validators/primitive-validator.js +80 -0
  744. package/esm/validators/primitive-validator.js.map +1 -0
  745. package/esm/validators/record-validator.d.ts +54 -0
  746. package/esm/validators/record-validator.d.ts.map +1 -0
  747. package/esm/validators/record-validator.js +100 -0
  748. package/esm/validators/record-validator.js.map +1 -0
  749. package/esm/validators/scalar-validator.d.ts +93 -0
  750. package/esm/validators/scalar-validator.d.ts.map +1 -0
  751. package/esm/validators/scalar-validator.js +149 -0
  752. package/esm/validators/scalar-validator.js.map +1 -0
  753. package/esm/validators/string-validator.d.ts +189 -0
  754. package/esm/validators/string-validator.d.ts.map +1 -0
  755. package/esm/validators/string-validator.js +387 -0
  756. package/esm/validators/string-validator.js.map +1 -0
  757. package/esm/validators/tuple-validator.d.ts +56 -0
  758. package/esm/validators/tuple-validator.d.ts.map +1 -0
  759. package/esm/validators/tuple-validator.js +121 -0
  760. package/esm/validators/tuple-validator.js.map +1 -0
  761. package/esm/validators/union-validator.d.ts +55 -0
  762. package/esm/validators/union-validator.d.ts.map +1 -0
  763. package/esm/validators/union-validator.js +60 -0
  764. package/esm/validators/union-validator.js.map +1 -0
  765. package/package.json +1 -1
@@ -0,0 +1,307 @@
1
+ 'use strict';require('@mongez/reinforcements'),require('@mongez/supportive-is'),require('dayjs');var numberMutators=require('../mutators/number-mutators.js');require('net');var numberRules=require('../rules/number/number-rules.js'),lengthRules=require('../rules/length/length-rules.js'),typeRules=require('../rules/common/type-rules.js'),primitiveValidator=require('./primitive-validator.js'),jsonSchema=require('../standard-schema/json-schema.js');/**
2
+ * Number validator class - base for Int and Float validators
3
+ */
4
+ class NumberValidator extends primitiveValidator.PrimitiveValidator {
5
+ constructor(errorMessage) {
6
+ super();
7
+ this.addMutableRule(typeRules.numberRule, errorMessage);
8
+ }
9
+ /**
10
+ * Check if value is a number type
11
+ */
12
+ matchesType(value) {
13
+ return typeof value === "number" && !isNaN(value);
14
+ }
15
+ /**
16
+ * Value must be equal or higher than the given number or field
17
+ * Smart detection: number or field name
18
+ *
19
+ * @category Validation Rule
20
+ */
21
+ min(min, errorMessage) {
22
+ return this.addRule(numberRules.minRule, errorMessage, { min, scope: "global" });
23
+ }
24
+ /**
25
+ * Value must be equal or less than the given number or field
26
+ * Smart detection: number or field name
27
+ *
28
+ * @category Validation Rule
29
+ */
30
+ max(max, errorMessage) {
31
+ return this.addRule(numberRules.maxRule, errorMessage, { max, scope: "global" });
32
+ }
33
+ /**
34
+ * Value must be >= sibling field value
35
+ * @category Validation Rule
36
+ */
37
+ minSibling(field, errorMessage) {
38
+ return this.addRule(numberRules.minRule, errorMessage, { min: field, scope: "sibling" });
39
+ }
40
+ /**
41
+ * Value must be <= sibling field value
42
+ * @category Validation Rule
43
+ */
44
+ maxSibling(field, errorMessage) {
45
+ return this.addRule(numberRules.maxRule, errorMessage, { max: field, scope: "sibling" });
46
+ }
47
+ /**
48
+ * Value must be strictly greater than the given number or field (>)
49
+ * Smart detection: number or field name
50
+ *
51
+ * @category Validation Rule
52
+ */
53
+ greaterThan(value, errorMessage) {
54
+ return this.addRule(numberRules.greaterThanRule, errorMessage, {
55
+ value,
56
+ scope: "global",
57
+ });
58
+ }
59
+ /**
60
+ * Value must be strictly less than the given number or field (<)
61
+ * Smart detection: number or field name
62
+ *
63
+ * @category Validation Rule
64
+ */
65
+ lessThan(value, errorMessage) {
66
+ return this.addRule(numberRules.lessThanRule, errorMessage, {
67
+ value,
68
+ scope: "global",
69
+ });
70
+ }
71
+ /**
72
+ * Alias for greaterThan() - shorter syntax
73
+ * @category Validation Rule
74
+ */
75
+ gt(value, errorMessage) {
76
+ return this.greaterThan(value, errorMessage);
77
+ }
78
+ /**
79
+ * Alias for lessThan() - shorter syntax
80
+ * @category Validation Rule
81
+ */
82
+ lt(value, errorMessage) {
83
+ return this.lessThan(value, errorMessage);
84
+ }
85
+ /**
86
+ * Value must be > sibling field value
87
+ * @category Validation Rule
88
+ */
89
+ greaterThanSibling(field, errorMessage) {
90
+ return this.addRule(numberRules.greaterThanRule, errorMessage, {
91
+ value: field,
92
+ scope: "sibling",
93
+ });
94
+ }
95
+ /**
96
+ * Alias for greaterThanSibling() - shorter syntax
97
+ * @category Validation Rule
98
+ */
99
+ gtSibling(field, errorMessage) {
100
+ return this.greaterThanSibling(field, errorMessage);
101
+ }
102
+ /**
103
+ * Value must be < sibling field value
104
+ * @category Validation Rule
105
+ */
106
+ lessThanSibling(field, errorMessage) {
107
+ return this.addRule(numberRules.lessThanRule, errorMessage, {
108
+ value: field,
109
+ scope: "sibling",
110
+ });
111
+ }
112
+ /**
113
+ * Alias for lessThanSibling() - shorter syntax
114
+ * @category Validation Rule
115
+ */
116
+ ltSibling(field, errorMessage) {
117
+ return this.lessThanSibling(field, errorMessage);
118
+ }
119
+ /** Value must be a modulo of the given number */
120
+ modulo(value, errorMessage) {
121
+ return this.addRule(numberRules.moduloRule, errorMessage, { value });
122
+ }
123
+ /**
124
+ * Alias for modulo() - Value must be divisible by the given number
125
+ */
126
+ divisibleBy(value, errorMessage) {
127
+ return this.modulo(value, errorMessage);
128
+ }
129
+ /**
130
+ * Alias for modulo() - Value must be a multiple of the given number
131
+ */
132
+ multipleOf(value, errorMessage) {
133
+ return this.modulo(value, errorMessage);
134
+ }
135
+ /**
136
+ * Alias for modulo() - Value must be a multiple of the given number
137
+ */
138
+ modulusOf(value, errorMessage) {
139
+ return this.modulo(value, errorMessage);
140
+ }
141
+ /** Accept only numbers higher than 0 */
142
+ positive(errorMessage) {
143
+ return this.addRule(numberRules.positiveRule, errorMessage);
144
+ }
145
+ /** Accept only negative numbers */
146
+ negative(errorMessage) {
147
+ return this.addRule(numberRules.negativeRule, errorMessage);
148
+ }
149
+ /** Accept only odd numbers */
150
+ odd(errorMessage) {
151
+ return this.addRule(numberRules.oddRule, errorMessage);
152
+ }
153
+ /** Accept only even numbers */
154
+ even(errorMessage) {
155
+ return this.addRule(numberRules.evenRule, errorMessage);
156
+ }
157
+ /**
158
+ * Accept only numbers between the given two numbers or fields (Inclusive)
159
+ * Smart detection: number or field name
160
+ *
161
+ * @category Validation Rule
162
+ */
163
+ between(min, max, errorMessage) {
164
+ return this.addRule(numberRules.betweenNumbersRule, errorMessage, {
165
+ min,
166
+ max,
167
+ scope: "global",
168
+ });
169
+ }
170
+ /**
171
+ * Value must be between sibling field values
172
+ * @category Validation Rule
173
+ */
174
+ betweenSibling(minField, maxField, errorMessage) {
175
+ return this.addRule(numberRules.betweenNumbersRule, errorMessage, {
176
+ min: minField,
177
+ max: maxField,
178
+ scope: "sibling",
179
+ });
180
+ }
181
+ // Enum and value membership methods are inherited from PrimitiveValidator.
182
+ /**
183
+ * Value (as a string) must be exactly this many characters.
184
+ * Useful for fixed-format numeric codes (e.g. 4-digit PIN).
185
+ */
186
+ length(length, errorMessage) {
187
+ return this.addRule(lengthRules.lengthRule, errorMessage, { length });
188
+ }
189
+ /** Value (as string representation) length must be ≥ min */
190
+ minLength(length, errorMessage) {
191
+ return this.addRule(lengthRules.minLengthRule, errorMessage, { minLength: length });
192
+ }
193
+ /** Value (as string representation) length must be ≤ max */
194
+ maxLength(length, errorMessage) {
195
+ return this.addRule(lengthRules.maxLengthRule, errorMessage, { maxLength: length });
196
+ }
197
+ // Mutators
198
+ /**
199
+ * Convert value to its absolute value
200
+ */
201
+ abs() {
202
+ return this.addMutator(numberMutators.absMutator);
203
+ }
204
+ /**
205
+ * Round value up to the nearest integer
206
+ */
207
+ ceil() {
208
+ return this.addMutator(numberMutators.ceilMutator);
209
+ }
210
+ /**
211
+ * Round value down to the nearest integer
212
+ */
213
+ floor() {
214
+ return this.addMutator(numberMutators.floorMutator);
215
+ }
216
+ /**
217
+ * Round value to the nearest integer or specified decimals
218
+ */
219
+ round(decimals = 0) {
220
+ return this.addMutator(numberMutators.roundMutator, { decimals });
221
+ }
222
+ /**
223
+ * Format number using fixed-point notation
224
+ */
225
+ toFixed(decimals = 2) {
226
+ return this.addMutator(numberMutators.toFixedMutator, { decimals });
227
+ }
228
+ /**
229
+ * @inheritdoc
230
+ *
231
+ * Returns `{ type: "number" }` with numeric constraint keywords.
232
+ * IntValidator overrides `type` to `"integer"`.
233
+ *
234
+ * @note Sibling-scoped rules (minSibling, maxSibling, etc.) are not representable
235
+ * in JSON Schema and are silently omitted.
236
+ *
237
+ * @example
238
+ * ```ts
239
+ * v.number().min(0).max(100).toJsonSchema("draft-2020-12")
240
+ * // → { type: "number", minimum: 0, maximum: 100 }
241
+ * ```
242
+ */
243
+ toJsonSchema(target = "draft-2020-12") {
244
+ return this.buildNumberJsonSchema("number", target);
245
+ }
246
+ /**
247
+ * Shared logic for number/integer JSON Schema generation.
248
+ * Called by NumberValidator.toJsonSchema() (→ type: "number")
249
+ * and IntValidator.toJsonSchema() (→ type: "integer").
250
+ */
251
+ buildNumberJsonSchema(type, target) {
252
+ const schema = { type };
253
+ // minimum (inclusive)
254
+ const minOpts = jsonSchema.getRuleOptions(this.rules, "min");
255
+ if (minOpts?.min !== undefined && typeof minOpts.min === "number") {
256
+ schema.minimum = minOpts.min;
257
+ }
258
+ // maximum (inclusive)
259
+ const maxOpts = jsonSchema.getRuleOptions(this.rules, "max");
260
+ if (maxOpts?.max !== undefined && typeof maxOpts.max === "number") {
261
+ schema.maximum = maxOpts.max;
262
+ }
263
+ // between (inclusive range)
264
+ const betweenOpts = jsonSchema.getRuleOptions(this.rules, "betweenNumbers");
265
+ if (betweenOpts) {
266
+ if (typeof betweenOpts.min === "number")
267
+ schema.minimum = betweenOpts.min;
268
+ if (typeof betweenOpts.max === "number")
269
+ schema.maximum = betweenOpts.max;
270
+ }
271
+ // greaterThan (>) → exclusiveMinimum
272
+ const gtOpts = jsonSchema.getRuleOptions(this.rules, "greaterThan");
273
+ if (gtOpts?.value !== undefined && typeof gtOpts.value === "number") {
274
+ if (target === "draft-07") {
275
+ schema.minimum = gtOpts.value;
276
+ schema.exclusiveMinimum = true;
277
+ }
278
+ else {
279
+ schema.exclusiveMinimum = gtOpts.value;
280
+ }
281
+ }
282
+ // lessThan (<) → exclusiveMaximum
283
+ const ltOpts = jsonSchema.getRuleOptions(this.rules, "lessThan");
284
+ if (ltOpts?.value !== undefined && typeof ltOpts.value === "number") {
285
+ if (target === "draft-07") {
286
+ schema.maximum = ltOpts.value;
287
+ schema.exclusiveMaximum = true;
288
+ }
289
+ else {
290
+ schema.exclusiveMaximum = ltOpts.value;
291
+ }
292
+ }
293
+ // multipleOf / modulo
294
+ const moduloOpts = jsonSchema.getRuleOptions(this.rules, "modulo");
295
+ if (moduloOpts?.value !== undefined && typeof moduloOpts.value === "number") {
296
+ schema.multipleOf = moduloOpts.value;
297
+ }
298
+ // enum (from PrimitiveValidator.in / .enum)
299
+ const inOpts = jsonSchema.getRuleOptions(this.rules, "in");
300
+ if (inOpts?.values && Array.isArray(inOpts.values)) {
301
+ schema.enum = inOpts.values;
302
+ }
303
+ if (this.isNullable)
304
+ jsonSchema.applyNullable(schema, target);
305
+ return schema;
306
+ }
307
+ }exports.NumberValidator=NumberValidator;//# sourceMappingURL=number-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number-validator.js","sources":["../../src/validators/number-validator.ts"],"sourcesContent":[null],"names":["PrimitiveValidator","numberRule","minRule","maxRule","greaterThanRule","lessThanRule","moduloRule","positiveRule","negativeRule","oddRule","evenRule","betweenNumbersRule","lengthRule","minLengthRule","maxLengthRule","absMutator","ceilMutator","floorMutator","roundMutator","toFixedMutator","getRuleOptions","applyNullable"],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { NumberValidator } from "./number-validator";
2
+ /**
3
+ * Numeric validator class - base for Int and Float validators either as number or string
4
+ */
5
+ export declare class NumericValidator extends NumberValidator {
6
+ /**
7
+ * Constructor
8
+ */
9
+ constructor(errorMessage?: string);
10
+ /**
11
+ * Check if value is a numeric type
12
+ */
13
+ matchesType(value: any): boolean;
14
+ }
15
+ //# sourceMappingURL=numeric-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numeric-validator.d.ts","sourceRoot":"","sources":["../../src/validators/numeric-validator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,eAAe;IACnD;;OAEG;gBACgB,YAAY,CAAC,EAAE,MAAM;IAKxC;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;CAGxC"}
@@ -0,0 +1,18 @@
1
+ 'use strict';var supportiveIs=require('@mongez/supportive-is'),numberMutators=require('../mutators/number-mutators.js'),numberValidator=require('./number-validator.js');/**
2
+ * Numeric validator class - base for Int and Float validators either as number or string
3
+ */
4
+ class NumericValidator extends numberValidator.NumberValidator {
5
+ /**
6
+ * Constructor
7
+ */
8
+ constructor(errorMessage) {
9
+ super(errorMessage);
10
+ this.addMutableMutator(numberMutators.numericMutator);
11
+ }
12
+ /**
13
+ * Check if value is a numeric type
14
+ */
15
+ matchesType(value) {
16
+ return supportiveIs.isNumeric(value);
17
+ }
18
+ }exports.NumericValidator=NumericValidator;//# sourceMappingURL=numeric-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numeric-validator.js","sources":["../../src/validators/numeric-validator.ts"],"sourcesContent":[null],"names":["NumberValidator","numericMutator","isNumeric"],"mappings":"yKAIA;;AAEG;AACG,MAAO,gBAAiB,SAAQA,+BAAe,CAAA;AACnD;;AAEG;AACH,IAAA,WAAA,CAAmB,YAAqB,EAAA;QACtC,KAAK,CAAC,YAAY,CAAC,CAAC;AACpB,QAAA,IAAI,CAAC,iBAAiB,CAACC,6BAAc,CAAC,CAAC;KACxC;AAED;;AAEG;AACI,IAAA,WAAW,CAAC,KAAU,EAAA;AAC3B,QAAA,OAAOC,sBAAS,CAAC,KAAK,CAAC,CAAC;KACzB;AACF"}
@@ -0,0 +1,233 @@
1
+ import type { JsonSchemaResult, JsonSchemaTarget } from "../standard-schema/json-schema";
2
+ import type { Schema, SchemaContext, ValidationResult } from "../types";
3
+ import { BaseValidator } from "./base-validator";
4
+ /**
5
+ * Object validator class with generic schema type for proper type inference
6
+ */
7
+ export declare class ObjectValidator<TSchema extends Schema = Schema> extends BaseValidator {
8
+ schema: TSchema;
9
+ protected shouldAllowUnknown: boolean;
10
+ protected allowedKeys: string[];
11
+ protected hasUnknownKeyRule: boolean;
12
+ constructor(schema: TSchema, errorMessage?: string);
13
+ /**
14
+ * Check if value is an object type (plain object, not array or date)
15
+ */
16
+ matchesType(value: any): boolean;
17
+ /** Strip unknown keys from the data */
18
+ stripUnknown(): this;
19
+ /** Add list of allowed keys that could be in the data but not necessarily validated */
20
+ allow(...keys: string[]): this;
21
+ /** Trim values of the object properties */
22
+ trim(recursive?: boolean): this;
23
+ /** Whether to allow unknown properties
24
+ * Please note it will allow only unknown direct children keys, not nested children keys
25
+ */
26
+ allowUnknown(allow?: boolean): this;
27
+ /**
28
+ * Create a copy of this object validator with the same configuration
29
+ * Copies schema, rules, mutators, transformers, and object-specific settings
30
+ *
31
+ * @returns A new ObjectValidator instance with copied configuration
32
+ *
33
+ * @example
34
+ * ```ts
35
+ * const baseUser = v.object({ name: v.string() }).allowUnknown();
36
+ * const userCopy = baseUser.clone();
37
+ * // userCopy has the same schema and allowUnknown setting
38
+ * ```
39
+ */
40
+ clone(keys?: string[]): this;
41
+ /**
42
+ * Extend this schema with additional fields
43
+ * Clones the current validator and adds new fields to the schema
44
+ * **Keeps original configuration** (allowUnknown, stripUnknown, etc.)
45
+ *
46
+ * If an ObjectValidator is provided, only its schema is used - its configuration is ignored.
47
+ * This is useful for creating reusable field collections that can be added to different schemas.
48
+ *
49
+ * @param schemaOrValidator - Plain schema object or ObjectValidator to extend with
50
+ * @returns A new ObjectValidator with merged schema and original configuration
51
+ *
52
+ * @example
53
+ * ```ts
54
+ * // Extend with plain schema
55
+ * const baseUser = v.object({
56
+ * name: v.string().required(),
57
+ * email: v.string().email().required()
58
+ * }).allowUnknown();
59
+ *
60
+ * const adminUser = baseUser.extend({
61
+ * role: v.string().in(['admin', 'superadmin']).required()
62
+ * });
63
+ * // adminUser has: name, email, role
64
+ * // adminUser keeps: allowUnknown() from base ✅
65
+ *
66
+ * // Extend with ObjectValidator (only schema is used)
67
+ * const auditFields = v.object({
68
+ * createdAt: v.date().required(),
69
+ * updatedAt: v.date().required()
70
+ * }).stripUnknown(); // This config is ignored!
71
+ *
72
+ * const fullUser = baseUser.extend(auditFields);
73
+ * // fullUser has: name, email, createdAt, updatedAt
74
+ * // fullUser keeps: allowUnknown() from base (NOT stripUnknown from auditFields) ✅
75
+ *
76
+ * // Chain multiple extends
77
+ * const complexSchema = baseUser
78
+ * .extend(auditFields)
79
+ * .extend({ metadata: v.object({}) });
80
+ * ```
81
+ */
82
+ extend<TExtension extends Schema>(schemaOrValidator: TExtension | ObjectValidator<TExtension>): ObjectValidator<TSchema & TExtension>;
83
+ /**
84
+ * Merge with another ObjectValidator
85
+ * Clones current validator, merges schemas, and **overrides configuration** with other validator's config
86
+ *
87
+ * Unlike extend(), merge() combines both schemas AND configurations.
88
+ * The other validator's configuration (allowUnknown, stripUnknown, etc.) takes precedence.
89
+ *
90
+ * @param validator - Another ObjectValidator to merge with
91
+ * @returns A new ObjectValidator with merged schema and configuration
92
+ *
93
+ * @example
94
+ * ```ts
95
+ * const baseUser = v.object({
96
+ * name: v.string().required()
97
+ * }).allowUnknown();
98
+ *
99
+ * const timestamps = v.object({
100
+ * createdAt: v.date().required(),
101
+ * updatedAt: v.date().required()
102
+ * }).stripUnknown();
103
+ *
104
+ * const merged = baseUser.merge(timestamps);
105
+ * // merged has: name, createdAt, updatedAt
106
+ * // merged config: stripUnknown() from timestamps (overrides allowUnknown) ✅
107
+ *
108
+ * // Chain multiple merges
109
+ * const full = baseUser.merge(timestamps).merge(softDeleteSchema);
110
+ * ```
111
+ */
112
+ merge<TMerge extends Schema>(validator: ObjectValidator<TMerge>): ObjectValidator<TSchema & TMerge>;
113
+ /**
114
+ * Create a new schema with only the specified fields
115
+ * Clones the current validator and keeps only the selected fields
116
+ * **Preserves all configuration** (allowUnknown, stripUnknown, etc.)
117
+ *
118
+ * @param keys - Field names to keep in the schema
119
+ * @returns A new ObjectValidator with only the picked fields
120
+ *
121
+ * @example
122
+ * ```ts
123
+ * const fullUser = v.object({
124
+ * id: v.int().required(),
125
+ * name: v.string().required(),
126
+ * email: v.string().email().required(),
127
+ * password: v.string().required(),
128
+ * role: v.string()
129
+ * }).allowUnknown();
130
+ *
131
+ * // For login - only need email and password
132
+ * const loginSchema = fullUser.pick('email', 'password');
133
+ * // loginSchema has: { email, password }
134
+ * // loginSchema keeps: allowUnknown() ✅
135
+ *
136
+ * // For public profile
137
+ * const publicSchema = fullUser.pick('id', 'name', 'role');
138
+ * // publicSchema has: { id, name, role }
139
+ * ```
140
+ */
141
+ pick<K extends keyof TSchema>(...keys: K[]): ObjectValidator<Pick<TSchema, K>>;
142
+ /**
143
+ * Mark all or the given schema fields as optional
144
+ */
145
+ partial<K extends keyof TSchema>(...keys: K[]): this;
146
+ /**
147
+ * Make the all or the given fields as required
148
+ */
149
+ requiredFields<K extends keyof TSchema>(...keys: K[]): this;
150
+ /**
151
+ * Create a new schema excluding the specified fields
152
+ * Clones the current validator and removes the specified fields
153
+ * **Preserves all configuration** (allowUnknown, stripUnknown, etc.)
154
+ *
155
+ * @param keys - Field names to exclude from the schema
156
+ * @returns A new ObjectValidator without the excluded fields
157
+ *
158
+ * @example
159
+ * ```ts
160
+ * const fullUser = v.object({
161
+ * id: v.int().required(),
162
+ * name: v.string().required(),
163
+ * email: v.string().email().required(),
164
+ * password: v.string().required(),
165
+ * role: v.string()
166
+ * }).allowUnknown();
167
+ *
168
+ * // For updates - exclude id
169
+ * const updateSchema = fullUser.without('id');
170
+ * // updateSchema has: { name, email, password, role }
171
+ * // updateSchema keeps: allowUnknown() ✅
172
+ *
173
+ * // For public API - exclude sensitive fields
174
+ * const publicSchema = fullUser.without('password', 'role');
175
+ * // publicSchema has: { id, name, email }
176
+ *
177
+ * // Combine with other methods
178
+ * const patchSchema = fullUser.without('id', 'password');
179
+ * // patchSchema has: { name, email, role }
180
+ * ```
181
+ */
182
+ without<K extends keyof TSchema>(...keys: K[]): ObjectValidator<Omit<TSchema, K>>;
183
+ /** Mutate the data */
184
+ mutate(data: any, context: SchemaContext): any;
185
+ /** Validate the data */
186
+ validate(data: any, context?: SchemaContext): Promise<ValidationResult>;
187
+ /**
188
+ * Check if a validator is a computed or managed field
189
+ * ManagedValidator extends ComputedValidator, so instanceof catches both
190
+ */
191
+ private isComputedValidator;
192
+ /**
193
+ * Get all computed/managed fields from the schema
194
+ */
195
+ private getComputedFields;
196
+ /**
197
+ * @inheritdoc
198
+ *
199
+ * Recursively generates JSON Schema for all input fields in the schema.
200
+ * Computed/managed fields are skipped — they have no input representation.
201
+ *
202
+ * **Standard targets** (`draft-2020-12`, `draft-07`, `openapi-3.0`):
203
+ * - Fields marked `.optional()` are excluded from `required`.
204
+ *
205
+ * **`openai-strict` target** (OpenAI Structured Outputs):
206
+ * - ALL fields appear in `required` — OpenAI rejects schemas with optional fields.
207
+ * - Optional fields are instead expressed as nullable types:
208
+ * `{ type: ["string", "null"] }` so the model can output `null` for them.
209
+ * - Recursively applies `openai-strict` to all nested objects.
210
+ *
211
+ * @example
212
+ * ```ts
213
+ * v.object({
214
+ * name: v.string().required(),
215
+ * age: v.int().optional(),
216
+ * }).toJsonSchema("draft-2020-12")
217
+ * // → { type: "object",
218
+ * // properties: { name: { type: "string" }, age: { type: "integer" } },
219
+ * // required: ["name"], additionalProperties: false }
220
+ *
221
+ * v.object({
222
+ * name: v.string().required(),
223
+ * age: v.int().optional(),
224
+ * }).toJsonSchema("openai-strict")
225
+ * // → { type: "object",
226
+ * // properties: { name: { type: "string" }, age: { type: ["integer", "null"] } },
227
+ * // required: ["name", "age"], ← all fields
228
+ * // additionalProperties: false }
229
+ * ```
230
+ */
231
+ toJsonSchema(target?: JsonSchemaTarget): JsonSchemaResult;
232
+ }
233
+ //# sourceMappingURL=object-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-validator.d.ts","sourceRoot":"","sources":["../../src/validators/object-validator.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAEzF,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD;;GAEG;AACH,qBAAa,eAAe,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,aAAa;IAMxE,MAAM,EAAE,OAAO;IALxB,SAAS,CAAC,kBAAkB,UAAS;IACrC,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,CAAM;IACrC,SAAS,CAAC,iBAAiB,UAAS;gBAG3B,MAAM,EAAE,OAAO,EACtB,YAAY,CAAC,EAAE,MAAM;IAMvB;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAIvC,uCAAuC;IAChC,YAAY;IASnB,uFAAuF;IAChF,KAAK,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE;IAM9B,2CAA2C;IACpC,IAAI,CAAC,SAAS,UAAO;IAK5B;;OAEG;IACI,YAAY,CAAC,KAAK,UAAO;IAMhC;;;;;;;;;;;;OAYG;IACa,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAuB5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACI,MAAM,CAAC,UAAU,SAAS,MAAM,EACrC,iBAAiB,EAAE,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC,GAC1D,eAAe,CAAC,OAAO,GAAG,UAAU,CAAC;IAgBxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACI,KAAK,CAAC,MAAM,SAAS,MAAM,EAChC,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC,GACjC,eAAe,CAAC,OAAO,GAAG,MAAM,CAAC;IAgCpC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACI,IAAI,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAiBrF;;OAEG;IACI,OAAO,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE;IAcpD;;OAEG;IACI,cAAc,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE;IAc3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACI,OAAO,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAiBxF,sBAAsB;IACf,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa;IAK/C,wBAAwB;IACX,QAAQ,CACnB,IAAI,EAAE,GAAG,EACT,OAAO,GAAE,aAA6C,GACrD,OAAO,CAAC,gBAAgB,CAAC;IA4H5B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACa,YAAY,CAAC,MAAM,GAAE,gBAAkC,GAAG,gBAAgB;CAoC3F"}