inferred-types 0.46.1 → 0.47.0

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 (697) hide show
  1. package/dist/constants/Marked.d.ts +7 -0
  2. package/dist/constants/Marked.d.ts.map +1 -1
  3. package/dist/constants/Never.d.ts.map +1 -1
  4. package/dist/constants/TypeTokens.d.ts +15 -0
  5. package/dist/constants/TypeTokens.d.ts.map +1 -1
  6. package/dist/constants/TypeTokens.js +92 -0
  7. package/dist/constants/Wide.d.ts +2 -1
  8. package/dist/constants/Wide.d.ts.map +1 -1
  9. package/dist/constants/Wide.js +0 -1
  10. package/dist/constants/createConstant.d.ts.map +1 -1
  11. package/dist/constants/tsconfig.tsbuildinfo +1 -1
  12. package/dist/inferred-types/index.cjs +1799 -1076
  13. package/dist/inferred-types/tsconfig.tsbuildinfo +1 -1
  14. package/dist/runtime/api/defineApi.d.ts +1 -36
  15. package/dist/runtime/api/defineApi.d.ts.map +1 -1
  16. package/dist/runtime/api/defineApi.js +90 -73
  17. package/dist/runtime/api/handleDoneFn.d.ts.map +1 -1
  18. package/dist/runtime/api/index.d.ts +1 -1
  19. package/dist/runtime/boolean-logic/ifArray.d.ts.map +1 -1
  20. package/dist/runtime/boolean-logic/ifArrayPartial.d.ts +1 -1
  21. package/dist/runtime/boolean-logic/ifArrayPartial.d.ts.map +1 -1
  22. package/dist/runtime/boolean-logic/ifBoolean.d.ts.map +1 -1
  23. package/dist/runtime/boolean-logic/ifChar.d.ts.map +1 -1
  24. package/dist/runtime/boolean-logic/ifFalse.d.ts.map +1 -1
  25. package/dist/runtime/boolean-logic/ifHasKey.d.ts.map +1 -1
  26. package/dist/runtime/boolean-logic/ifLength.d.ts.map +1 -1
  27. package/dist/runtime/boolean-logic/ifNotNull.d.ts.map +1 -1
  28. package/dist/runtime/boolean-logic/ifNull.d.ts.map +1 -1
  29. package/dist/runtime/boolean-logic/ifNumber.d.ts.map +1 -1
  30. package/dist/runtime/boolean-logic/ifScalar.d.ts.map +1 -1
  31. package/dist/runtime/boolean-logic/ifString.d.ts.map +1 -1
  32. package/dist/runtime/boolean-logic/ifTrue.d.ts.map +1 -1
  33. package/dist/runtime/boolean-logic/ifUndefined.d.ts.map +1 -1
  34. package/dist/runtime/boolean-logic/ifUndefined.js +1 -1
  35. package/dist/runtime/combinators/and.d.ts.map +1 -1
  36. package/dist/runtime/combinators/or.d.ts.map +1 -1
  37. package/dist/runtime/dictionary/entries.js +1 -1
  38. package/dist/runtime/dictionary/get.d.ts.map +1 -1
  39. package/dist/runtime/dictionary/keysOf.d.ts.map +1 -1
  40. package/dist/runtime/dictionary/omit.d.ts.map +1 -1
  41. package/dist/runtime/dictionary/retain.d.ts +4 -9
  42. package/dist/runtime/dictionary/retain.d.ts.map +1 -1
  43. package/dist/runtime/dictionary/sharedKeys.d.ts +1 -1
  44. package/dist/runtime/dictionary/sharedKeys.d.ts.map +1 -1
  45. package/dist/runtime/dictionary/takeProp.d.ts.map +1 -1
  46. package/dist/runtime/dictionary/valuesOf.d.ts.map +1 -1
  47. package/dist/runtime/dictionary/withDefaults.d.ts.map +1 -1
  48. package/dist/runtime/dictionary/withKeys.d.ts +2 -2
  49. package/dist/runtime/dictionary/withKeys.d.ts.map +1 -1
  50. package/dist/runtime/dictionary/withoutKeys.d.ts +1 -13
  51. package/dist/runtime/dictionary/withoutKeys.d.ts.map +1 -1
  52. package/dist/runtime/dictionary/withoutValue.d.ts.map +1 -1
  53. package/dist/runtime/errors/KindError.d.ts.map +1 -1
  54. package/dist/runtime/errors/TypedError.d.ts.map +1 -1
  55. package/dist/runtime/errors/createErrorCondition.d.ts +5 -0
  56. package/dist/runtime/errors/createErrorCondition.d.ts.map +1 -1
  57. package/dist/runtime/errors/createErrorCondition.js +5 -0
  58. package/dist/runtime/errors/kindedError.d.ts.map +1 -1
  59. package/dist/runtime/functions/fnMeta.d.ts.map +1 -1
  60. package/dist/runtime/index.d.ts +2 -0
  61. package/dist/runtime/index.d.ts.map +1 -1
  62. package/dist/runtime/index.js +2 -0
  63. package/dist/runtime/initializers/addFnToProps.d.ts +2 -2
  64. package/dist/runtime/initializers/addFnToProps.d.ts.map +1 -1
  65. package/dist/runtime/initializers/addPropsToFn.d.ts +2 -2
  66. package/dist/runtime/initializers/addPropsToFn.d.ts.map +1 -1
  67. package/dist/runtime/initializers/createFnWithProps.d.ts.map +1 -1
  68. package/dist/runtime/initializers/defineObj.d.ts +2 -2
  69. package/dist/runtime/initializers/defineObj.d.ts.map +1 -1
  70. package/dist/runtime/initializers/defineTuple.d.ts.map +1 -1
  71. package/dist/runtime/lists/asArray.d.ts.map +1 -1
  72. package/dist/runtime/lists/createComparison.d.ts +2 -3
  73. package/dist/runtime/lists/createComparison.d.ts.map +1 -1
  74. package/dist/runtime/lists/createComparison.js +1 -1
  75. package/dist/runtime/lists/createConverter.d.ts +1 -1
  76. package/dist/runtime/lists/createConverter.d.ts.map +1 -1
  77. package/dist/runtime/lists/filter.d.ts +1 -1
  78. package/dist/runtime/lists/filter.js +4 -4
  79. package/dist/runtime/lists/find.d.ts +1 -1
  80. package/dist/runtime/lists/find.d.ts.map +1 -1
  81. package/dist/runtime/lists/index.d.ts +0 -1
  82. package/dist/runtime/lists/index.d.ts.map +1 -1
  83. package/dist/runtime/lists/index.js +0 -1
  84. package/dist/runtime/lists/indexOf.d.ts.map +1 -1
  85. package/dist/runtime/lists/indexOf.js +8 -5
  86. package/dist/runtime/lists/intersection.d.ts.map +1 -1
  87. package/dist/runtime/lists/join.d.ts +1 -1
  88. package/dist/runtime/lists/join.d.ts.map +1 -1
  89. package/dist/runtime/lists/join.js +6 -2
  90. package/dist/runtime/lists/last.d.ts +2 -2
  91. package/dist/runtime/lists/last.d.ts.map +1 -1
  92. package/dist/runtime/lists/logicalReturns.d.ts.map +1 -1
  93. package/dist/runtime/lists/reverse.d.ts.map +1 -1
  94. package/dist/runtime/lists/shift.d.ts +17 -5
  95. package/dist/runtime/lists/shift.d.ts.map +1 -1
  96. package/dist/runtime/lists/shift.js +33 -5
  97. package/dist/runtime/lists/slice.d.ts +2 -2
  98. package/dist/runtime/lists/slice.d.ts.map +1 -1
  99. package/dist/runtime/lists/unique.d.ts +2 -2
  100. package/dist/runtime/lists/unique.d.ts.map +1 -1
  101. package/dist/runtime/literals/box.d.ts.map +1 -1
  102. package/dist/runtime/literals/ensureLeading.d.ts +2 -2
  103. package/dist/runtime/literals/ensureLeading.d.ts.map +1 -1
  104. package/dist/runtime/literals/ensureLeading.js +6 -2
  105. package/dist/runtime/literals/ensureSurround.d.ts.map +1 -1
  106. package/dist/runtime/literals/ensureSurround.js +3 -1
  107. package/dist/runtime/literals/identity.d.ts.map +1 -1
  108. package/dist/runtime/literals/index.d.ts +2 -1
  109. package/dist/runtime/literals/index.d.ts.map +1 -1
  110. package/dist/runtime/literals/index.js +2 -1
  111. package/dist/runtime/literals/narrow.d.ts.map +1 -1
  112. package/dist/runtime/literals/phone/asPhoneNumber.d.ts +2 -0
  113. package/dist/runtime/literals/phone/asPhoneNumber.d.ts.map +1 -0
  114. package/dist/runtime/literals/phone/asPhoneNumber.js +62 -0
  115. package/dist/runtime/literals/phone/getPhoneCountryCode.d.ts +3 -0
  116. package/dist/runtime/literals/phone/getPhoneCountryCode.d.ts.map +1 -0
  117. package/dist/runtime/literals/phone/getPhoneCountryCode.js +7 -0
  118. package/dist/runtime/literals/phone/index.d.ts +4 -0
  119. package/dist/runtime/literals/phone/index.d.ts.map +1 -0
  120. package/dist/runtime/literals/phone/index.js +3 -0
  121. package/dist/runtime/literals/phone/removePhoneCountryCode.d.ts +3 -0
  122. package/dist/runtime/literals/phone/removePhoneCountryCode.d.ts.map +1 -0
  123. package/dist/runtime/literals/phone/removePhoneCountryCode.js +7 -0
  124. package/dist/runtime/literals/pluralize.d.ts.map +1 -1
  125. package/dist/runtime/literals/pluralize.js +4 -1
  126. package/dist/runtime/literals/retainAfter.d.ts.map +1 -1
  127. package/dist/runtime/literals/retainChars.d.ts +1 -1
  128. package/dist/runtime/literals/retainChars.d.ts.map +1 -1
  129. package/dist/runtime/literals/retainChars.js +2 -1
  130. package/dist/runtime/literals/retainWhile.d.ts.map +1 -1
  131. package/dist/runtime/literals/split.d.ts.map +1 -1
  132. package/dist/runtime/literals/stripAfter.d.ts.map +1 -1
  133. package/dist/runtime/literals/stripBefore.d.ts.map +1 -1
  134. package/dist/runtime/literals/stripChars.d.ts +1 -1
  135. package/dist/runtime/literals/stripChars.d.ts.map +1 -1
  136. package/dist/runtime/literals/stripChars.js +2 -1
  137. package/dist/runtime/literals/stripLeading.d.ts +1 -1
  138. package/dist/runtime/literals/stripLeading.d.ts.map +1 -1
  139. package/dist/runtime/literals/stripLeading.js +8 -6
  140. package/dist/runtime/literals/stripSurround.d.ts +19 -0
  141. package/dist/runtime/literals/stripSurround.d.ts.map +1 -0
  142. package/dist/runtime/literals/stripSurround.js +30 -0
  143. package/dist/runtime/literals/stripTrailing.d.ts +2 -2
  144. package/dist/runtime/literals/stripTrailing.d.ts.map +1 -1
  145. package/dist/runtime/literals/stripTrailing.js +9 -10
  146. package/dist/runtime/literals/stripUntil.d.ts.map +1 -1
  147. package/dist/runtime/literals/takeNumericCharacters.d.ts +2 -2
  148. package/dist/runtime/literals/takeNumericCharacters.d.ts.map +1 -1
  149. package/dist/runtime/literals/toKebabCase.d.ts.map +1 -1
  150. package/dist/runtime/literals/toNumericArray.d.ts +2 -2
  151. package/dist/runtime/literals/toNumericArray.d.ts.map +1 -1
  152. package/dist/runtime/literals/toPascalCase.d.ts.map +1 -1
  153. package/dist/runtime/literals/truncate.d.ts +1 -1
  154. package/dist/runtime/literals/truncate.d.ts.map +1 -1
  155. package/dist/runtime/literals/tuple.d.ts +1 -1
  156. package/dist/runtime/literals/tuple.d.ts.map +1 -1
  157. package/dist/runtime/meta/urlMeta.d.ts.map +1 -1
  158. package/dist/runtime/meta/urlMeta.js +8 -5
  159. package/dist/runtime/meta/youtube-meta.d.ts.map +1 -1
  160. package/dist/runtime/queues/fifo.d.ts +3 -0
  161. package/dist/runtime/queues/fifo.d.ts.map +1 -0
  162. package/dist/runtime/queues/fifo.js +40 -0
  163. package/dist/runtime/queues/index.d.ts +3 -0
  164. package/dist/runtime/queues/index.d.ts.map +1 -0
  165. package/dist/runtime/queues/index.js +2 -0
  166. package/dist/runtime/queues/lifo.d.ts +3 -0
  167. package/dist/runtime/queues/lifo.d.ts.map +1 -0
  168. package/dist/runtime/queues/lifo.js +34 -0
  169. package/dist/runtime/runtime-types/asToken.d.ts +35 -0
  170. package/dist/runtime/runtime-types/asToken.d.ts.map +1 -0
  171. package/dist/runtime/runtime-types/asToken.js +115 -0
  172. package/dist/runtime/runtime-types/asType.d.ts +4 -0
  173. package/dist/runtime/runtime-types/asType.d.ts.map +1 -0
  174. package/dist/runtime/runtime-types/asType.js +6 -0
  175. package/dist/runtime/runtime-types/choices.js +8 -8
  176. package/dist/runtime/runtime-types/index.d.ts +3 -2
  177. package/dist/runtime/runtime-types/index.d.ts.map +1 -1
  178. package/dist/runtime/runtime-types/index.js +3 -2
  179. package/dist/runtime/runtime-types/ip6Prefix.d.ts +2 -2
  180. package/dist/runtime/runtime-types/ip6Prefix.d.ts.map +1 -1
  181. package/dist/runtime/runtime-types/list.d.ts.map +1 -1
  182. package/dist/runtime/runtime-types/rec.d.ts.map +1 -1
  183. package/dist/runtime/runtime-types/shape-helpers/addToken.d.ts.map +1 -1
  184. package/dist/runtime/runtime-types/shape-helpers/atomics.d.ts.map +1 -1
  185. package/dist/runtime/runtime-types/shape-helpers/functions.d.ts +7 -2
  186. package/dist/runtime/runtime-types/shape-helpers/functions.d.ts.map +1 -1
  187. package/dist/runtime/runtime-types/shape-helpers/functions.js +5 -0
  188. package/dist/runtime/runtime-types/shape-helpers/getTokenData.d.ts +2 -1
  189. package/dist/runtime/runtime-types/shape-helpers/getTokenData.d.ts.map +1 -1
  190. package/dist/runtime/runtime-types/shape-helpers/getTokenName.d.ts +2 -1
  191. package/dist/runtime/runtime-types/shape-helpers/getTokenName.d.ts.map +1 -1
  192. package/dist/runtime/runtime-types/shape-helpers/literal-containers.d.ts.map +1 -1
  193. package/dist/runtime/runtime-types/shape-helpers/regexToken.d.ts +12 -0
  194. package/dist/runtime/runtime-types/shape-helpers/regexToken.d.ts.map +1 -0
  195. package/dist/runtime/runtime-types/shape-helpers/regexToken.js +39 -0
  196. package/dist/runtime/runtime-types/shape-helpers/singletons.d.ts +10 -0
  197. package/dist/runtime/runtime-types/shape-helpers/singletons.d.ts.map +1 -1
  198. package/dist/runtime/runtime-types/shape-helpers/singletons.js +15 -0
  199. package/dist/runtime/runtime-types/shape-helpers/union.d.ts +5 -0
  200. package/dist/runtime/runtime-types/shape-helpers/union.d.ts.map +1 -1
  201. package/dist/runtime/runtime-types/shape-helpers/union.js +5 -0
  202. package/dist/runtime/runtime-types/shape-helpers/wide-containers.d.ts +1 -1
  203. package/dist/runtime/runtime-types/shape-helpers/wide-containers.d.ts.map +1 -1
  204. package/dist/runtime/runtime-types/shape.d.ts +2 -2
  205. package/dist/runtime/runtime-types/shape.d.ts.map +1 -1
  206. package/dist/runtime/runtime-types/shape.js +1 -1
  207. package/dist/runtime/runtime-types/tokens/createTypeToken.d.ts +30 -0
  208. package/dist/runtime/runtime-types/tokens/createTypeToken.d.ts.map +1 -0
  209. package/dist/runtime/runtime-types/tokens/createTypeToken.js +29 -0
  210. package/dist/runtime/runtime-types/tokens/index.d.ts +3 -0
  211. package/dist/runtime/runtime-types/tokens/index.d.ts.map +1 -0
  212. package/dist/runtime/runtime-types/tokens/index.js +2 -0
  213. package/dist/runtime/runtime-types/tokens/simpleToken.d.ts +51 -0
  214. package/dist/runtime/runtime-types/tokens/simpleToken.d.ts.map +1 -0
  215. package/dist/runtime/runtime-types/tokens/simpleToken.js +64 -0
  216. package/dist/runtime/sets/uniqueKeys.d.ts.map +1 -1
  217. package/dist/runtime/tsconfig.tsbuildinfo +1 -1
  218. package/dist/runtime/type-conversion/asChars.d.ts.map +1 -1
  219. package/dist/runtime/type-conversion/asRecord.d.ts +1 -1
  220. package/dist/runtime/type-conversion/asRecord.d.ts.map +1 -1
  221. package/dist/runtime/type-conversion/asString.d.ts +7 -1
  222. package/dist/runtime/type-conversion/asString.d.ts.map +1 -1
  223. package/dist/runtime/type-conversion/asString.js +11 -3
  224. package/dist/runtime/type-conversion/csv.d.ts +17 -0
  225. package/dist/runtime/type-conversion/csv.d.ts.map +1 -0
  226. package/dist/runtime/type-conversion/csv.js +31 -0
  227. package/dist/runtime/type-conversion/index.d.ts +2 -0
  228. package/dist/runtime/type-conversion/index.d.ts.map +1 -1
  229. package/dist/runtime/type-conversion/index.js +2 -0
  230. package/dist/runtime/type-conversion/ip6GroupExpansion.d.ts.map +1 -1
  231. package/dist/runtime/type-conversion/json.d.ts +18 -0
  232. package/dist/runtime/type-conversion/json.d.ts.map +1 -0
  233. package/dist/runtime/type-conversion/json.js +27 -0
  234. package/dist/runtime/type-conversion/mergeObjects.d.ts.map +1 -1
  235. package/dist/runtime/type-conversion/mergeScalars.d.ts.map +1 -1
  236. package/dist/runtime/type-conversion/optional.d.ts +20 -4
  237. package/dist/runtime/type-conversion/optional.d.ts.map +1 -1
  238. package/dist/runtime/type-conversion/optional.js +24 -6
  239. package/dist/runtime/type-conversion/union.d.ts.map +1 -1
  240. package/dist/runtime/type-guards/api-tg.d.ts.map +1 -1
  241. package/dist/runtime/type-guards/hasErrorConditions.d.ts +2 -4
  242. package/dist/runtime/type-guards/hasErrorConditions.d.ts.map +1 -1
  243. package/dist/runtime/type-guards/hasIndexOf.d.ts +2 -2
  244. package/dist/runtime/type-guards/hasIndexOf.d.ts.map +1 -1
  245. package/dist/runtime/type-guards/hasKeys.d.ts.map +1 -1
  246. package/dist/runtime/type-guards/hasWhitespace.d.ts.map +1 -1
  247. package/dist/runtime/type-guards/hasWhitespace.js +1 -1
  248. package/dist/runtime/type-guards/higher-order/endsWith.d.ts.map +1 -1
  249. package/dist/runtime/type-guards/higher-order/isEqual.d.ts.map +1 -1
  250. package/dist/runtime/type-guards/higher-order/isEqual.js +1 -1
  251. package/dist/runtime/type-guards/higher-order/isLength.d.ts.map +1 -1
  252. package/dist/runtime/type-guards/higher-order/isLength.js +1 -5
  253. package/dist/runtime/type-guards/higher-order/isSameTypeOf.d.ts.map +1 -1
  254. package/dist/runtime/type-guards/higher-order/isTuple.d.ts +1 -2
  255. package/dist/runtime/type-guards/higher-order/isTuple.d.ts.map +1 -1
  256. package/dist/runtime/type-guards/higher-order/isTuple.js +1 -2
  257. package/dist/runtime/type-guards/higher-order/isTypeOf.d.ts +1 -1
  258. package/dist/runtime/type-guards/higher-order/isTypeOf.d.ts.map +1 -1
  259. package/dist/runtime/type-guards/higher-order/startsWith.d.ts.map +1 -1
  260. package/dist/runtime/type-guards/higher-order/startsWith.js +1 -2
  261. package/dist/runtime/type-guards/index.d.ts +5 -0
  262. package/dist/runtime/type-guards/index.d.ts.map +1 -1
  263. package/dist/runtime/type-guards/index.js +5 -0
  264. package/dist/runtime/type-guards/isAlpha.d.ts.map +1 -1
  265. package/dist/runtime/type-guards/isBooleanLike.d.ts +9 -0
  266. package/dist/runtime/type-guards/isBooleanLike.d.ts.map +1 -0
  267. package/dist/runtime/type-guards/isBooleanLike.js +11 -0
  268. package/dist/runtime/type-guards/isCssAspectRatio.d.ts +1 -1
  269. package/dist/runtime/type-guards/isCssAspectRatio.d.ts.map +1 -1
  270. package/dist/runtime/type-guards/isDoneFn.d.ts.map +1 -1
  271. package/dist/runtime/type-guards/isEmail.d.ts +2 -1
  272. package/dist/runtime/type-guards/isEmail.d.ts.map +1 -1
  273. package/dist/runtime/type-guards/isEmail.js +10 -4
  274. package/dist/runtime/type-guards/isFalsy.d.ts.map +1 -1
  275. package/dist/runtime/type-guards/isHexadecimal.d.ts.map +1 -1
  276. package/dist/runtime/type-guards/isInlineSvg.d.ts +2 -1
  277. package/dist/runtime/type-guards/isInlineSvg.d.ts.map +1 -1
  278. package/dist/runtime/type-guards/isLeftRight.d.ts +2 -2
  279. package/dist/runtime/type-guards/isLeftRight.d.ts.map +1 -1
  280. package/dist/runtime/type-guards/isNever.d.ts.map +1 -1
  281. package/dist/runtime/type-guards/isNumericString.d.ts +8 -0
  282. package/dist/runtime/type-guards/isNumericString.d.ts.map +1 -1
  283. package/dist/runtime/type-guards/isNumericString.js +11 -0
  284. package/dist/runtime/type-guards/isPhoneNumber.d.ts +1 -1
  285. package/dist/runtime/type-guards/isPhoneNumber.d.ts.map +1 -1
  286. package/dist/runtime/type-guards/isPhoneNumber.js +16 -10
  287. package/dist/runtime/type-guards/isRegExp.d.ts +17 -0
  288. package/dist/runtime/type-guards/isRegExp.d.ts.map +1 -0
  289. package/dist/runtime/type-guards/isRegExp.js +32 -0
  290. package/dist/runtime/type-guards/isRuntimeUnion.d.ts.map +1 -1
  291. package/dist/runtime/type-guards/isSpecificConstant.d.ts.map +1 -1
  292. package/dist/runtime/type-guards/isTrimmable.d.ts.map +1 -1
  293. package/dist/runtime/type-guards/isTruthy.d.ts.map +1 -1
  294. package/dist/runtime/type-guards/isUnset.d.ts.map +1 -1
  295. package/dist/runtime/type-guards/isUrl.d.ts +3 -3
  296. package/dist/runtime/type-guards/isUrl.d.ts.map +1 -1
  297. package/dist/runtime/type-guards/network-tg.d.ts +6 -7
  298. package/dist/runtime/type-guards/network-tg.d.ts.map +1 -1
  299. package/dist/runtime/type-guards/network-tg.js +4 -9
  300. package/dist/runtime/type-guards/repos.d.ts +9 -7
  301. package/dist/runtime/type-guards/repos.d.ts.map +1 -1
  302. package/dist/runtime/type-guards/repos.js +1 -3
  303. package/dist/runtime/type-guards/tokens/index.d.ts +6 -0
  304. package/dist/runtime/type-guards/tokens/index.d.ts.map +1 -0
  305. package/dist/runtime/type-guards/tokens/index.js +5 -0
  306. package/dist/runtime/type-guards/tokens/isAtomicToken.d.ts +9 -0
  307. package/dist/runtime/type-guards/tokens/isAtomicToken.d.ts.map +1 -0
  308. package/dist/runtime/type-guards/tokens/isAtomicToken.js +12 -0
  309. package/dist/runtime/type-guards/tokens/isContainerToken.d.ts +21 -0
  310. package/dist/runtime/type-guards/tokens/isContainerToken.d.ts.map +1 -0
  311. package/dist/runtime/type-guards/tokens/isContainerToken.js +48 -0
  312. package/dist/runtime/type-guards/tokens/isFunctionToken.d.ts +4 -0
  313. package/dist/runtime/type-guards/tokens/isFunctionToken.d.ts.map +1 -0
  314. package/dist/runtime/type-guards/tokens/isFunctionToken.js +7 -0
  315. package/dist/runtime/type-guards/tokens/isShapeToken.d.ts +9 -0
  316. package/dist/runtime/type-guards/tokens/isShapeToken.d.ts.map +1 -0
  317. package/dist/runtime/type-guards/tokens/isShapeToken.js +21 -0
  318. package/dist/runtime/type-guards/tokens/isSimpleToken.d.ts +53 -0
  319. package/dist/runtime/type-guards/tokens/isSimpleToken.d.ts.map +1 -0
  320. package/dist/runtime/type-guards/tokens/isSimpleToken.js +74 -0
  321. package/dist/runtime/type-guards/tokens/isSingletonToken.d.ts +9 -0
  322. package/dist/runtime/type-guards/tokens/isSingletonToken.d.ts.map +1 -0
  323. package/dist/runtime/type-guards/tokens/isSingletonToken.js +12 -0
  324. package/dist/runtime/type-guards/tokens/isTupleToken.d.ts +1 -0
  325. package/dist/runtime/type-guards/tokens/isTupleToken.d.ts.map +1 -0
  326. package/dist/runtime/type-guards/tokens/isTupleToken.js +1 -0
  327. package/dist/runtime/type-guards/tokens/isUnionSetToken.d.ts +1 -0
  328. package/dist/runtime/type-guards/tokens/isUnionSetToken.d.ts.map +1 -0
  329. package/dist/runtime/type-guards/tokens/isUnionSetToken.js +1 -0
  330. package/dist/runtime/type-guards/tokens/isUnionToken.d.ts +9 -0
  331. package/dist/runtime/type-guards/tokens/isUnionToken.d.ts.map +1 -0
  332. package/dist/runtime/type-guards/tokens/isUnionToken.js +12 -0
  333. package/dist/runtime/type-guards/youtube.d.ts +5 -5
  334. package/dist/runtime/type-guards/youtube.d.ts.map +1 -1
  335. package/dist/runtime/type-guards/youtube.js +1 -3
  336. package/dist/runtime/vuejs/asVueRef.d.ts +1 -1
  337. package/dist/runtime/vuejs/asVueRef.d.ts.map +1 -1
  338. package/dist/types/base-types/LikeRegExp.d.ts +9 -0
  339. package/dist/types/base-types/LikeRegExp.d.ts.map +1 -0
  340. package/dist/types/base-types/Something.d.ts.map +1 -1
  341. package/dist/types/base-types/Something.js +1 -0
  342. package/dist/types/base-types/fns/AnyFunction.d.ts.map +1 -1
  343. package/dist/types/base-types/fns/AnyFunction.js +1 -1
  344. package/dist/types/base-types/fns/FnAllowingProps.d.ts +11 -0
  345. package/dist/types/base-types/fns/FnAllowingProps.d.ts.map +1 -0
  346. package/dist/types/base-types/fns/index.d.ts +1 -2
  347. package/dist/types/base-types/fns/index.d.ts.map +1 -1
  348. package/dist/types/base-types/fns/index.js +1 -2
  349. package/dist/types/base-types/index.d.ts +1 -0
  350. package/dist/types/base-types/index.d.ts.map +1 -1
  351. package/dist/types/base-types/index.js +1 -0
  352. package/dist/types/boolean-logic/branching/OnPass.d.ts.map +1 -1
  353. package/dist/types/boolean-logic/combinators/Compare.d.ts.map +1 -1
  354. package/dist/types/boolean-logic/operators/AreSameLength.d.ts +2 -2
  355. package/dist/types/boolean-logic/operators/AreSameLength.d.ts.map +1 -1
  356. package/dist/types/boolean-logic/operators/Contains.d.ts +4 -3
  357. package/dist/types/boolean-logic/operators/Contains.d.ts.map +1 -1
  358. package/dist/types/boolean-logic/operators/HasArray.d.ts +10 -0
  359. package/dist/types/boolean-logic/operators/HasArray.d.ts.map +1 -0
  360. package/dist/types/boolean-logic/operators/HasArray.js +1 -0
  361. package/dist/types/boolean-logic/operators/HasRequiredProps.d.ts +1 -2
  362. package/dist/types/boolean-logic/operators/HasRequiredProps.d.ts.map +1 -1
  363. package/dist/types/boolean-logic/operators/HaveSameNumericSign.d.ts +9 -0
  364. package/dist/types/boolean-logic/operators/HaveSameNumericSign.d.ts.map +1 -0
  365. package/dist/types/boolean-logic/operators/HaveSameNumericSign.js +1 -0
  366. package/dist/types/boolean-logic/operators/IsEmptyString.d.ts +12 -0
  367. package/dist/types/boolean-logic/operators/IsEmptyString.d.ts.map +1 -0
  368. package/dist/types/boolean-logic/operators/IsEmptyString.js +1 -0
  369. package/dist/types/boolean-logic/operators/IsFloat.d.ts +2 -2
  370. package/dist/types/boolean-logic/operators/IsFloat.d.ts.map +1 -1
  371. package/dist/types/boolean-logic/operators/IsGreaterThan.d.ts +8 -2
  372. package/dist/types/boolean-logic/operators/IsGreaterThan.d.ts.map +1 -1
  373. package/dist/types/boolean-logic/operators/IsInteger.d.ts +2 -2
  374. package/dist/types/boolean-logic/operators/IsInteger.d.ts.map +1 -1
  375. package/dist/types/boolean-logic/operators/IsLessThan.d.ts +8 -2
  376. package/dist/types/boolean-logic/operators/IsLessThan.d.ts.map +1 -1
  377. package/dist/types/boolean-logic/operators/IsNegativeNumber.d.ts +2 -4
  378. package/dist/types/boolean-logic/operators/IsNegativeNumber.d.ts.map +1 -1
  379. package/dist/types/boolean-logic/operators/IsNonLiteralUnion.d.ts +1 -1
  380. package/dist/types/boolean-logic/operators/IsNonLiteralUnion.d.ts.map +1 -1
  381. package/dist/types/boolean-logic/operators/IsPositiveNumber.d.ts +11 -0
  382. package/dist/types/boolean-logic/operators/IsPositiveNumber.d.ts.map +1 -0
  383. package/dist/types/boolean-logic/operators/IsPositiveNumber.js +1 -0
  384. package/dist/types/boolean-logic/operators/IsTuple.d.ts +1 -1
  385. package/dist/types/boolean-logic/operators/IsUrl.d.ts +7 -8
  386. package/dist/types/boolean-logic/operators/IsUrl.d.ts.map +1 -1
  387. package/dist/types/boolean-logic/operators/MaybeError.d.ts +20 -0
  388. package/dist/types/boolean-logic/operators/MaybeError.d.ts.map +1 -0
  389. package/dist/types/boolean-logic/operators/MaybeError.js +2 -0
  390. package/dist/types/boolean-logic/operators/PhoneOperators.d.ts +2 -3
  391. package/dist/types/boolean-logic/operators/PhoneOperators.d.ts.map +1 -1
  392. package/dist/types/boolean-logic/operators/StartsWith.d.ts +8 -9
  393. package/dist/types/boolean-logic/operators/StartsWith.d.ts.map +1 -1
  394. package/dist/types/boolean-logic/operators/UnionHasArray.d.ts +14 -0
  395. package/dist/types/boolean-logic/operators/UnionHasArray.d.ts.map +1 -0
  396. package/dist/types/boolean-logic/operators/UnionHasArray.js +1 -0
  397. package/dist/types/boolean-logic/operators/index.d.ts +6 -0
  398. package/dist/types/boolean-logic/operators/index.d.ts.map +1 -1
  399. package/dist/types/boolean-logic/operators/index.js +6 -0
  400. package/dist/types/containers/RemoveEmpty.d.ts +30 -0
  401. package/dist/types/containers/RemoveEmpty.d.ts.map +1 -0
  402. package/dist/types/containers/RemoveEmpty.js +1 -0
  403. package/dist/types/containers/RemoveMarked.d.ts +1 -1
  404. package/dist/types/containers/RemoveMarked.d.ts.map +1 -1
  405. package/dist/types/containers/RemoveUndefined.d.ts +1 -7
  406. package/dist/types/containers/RemoveUndefined.d.ts.map +1 -1
  407. package/dist/types/containers/index.d.ts +1 -0
  408. package/dist/types/containers/index.d.ts.map +1 -1
  409. package/dist/types/containers/index.js +1 -0
  410. package/dist/types/dictionary/EnsureKeys.d.ts +1 -3
  411. package/dist/types/dictionary/EnsureKeys.d.ts.map +1 -1
  412. package/dist/types/dictionary/Keys.d.ts +2 -2
  413. package/dist/types/dictionary/Keys.d.ts.map +1 -1
  414. package/dist/types/dictionary/OptionalKeys.d.ts +2 -2
  415. package/dist/types/dictionary/OptionalKeys.d.ts.map +1 -1
  416. package/dist/types/dictionary/OptionalKeys.js +0 -1
  417. package/dist/types/dictionary/RequireProps.d.ts +2 -2
  418. package/dist/types/dictionary/RequireProps.d.ts.map +1 -1
  419. package/dist/types/dictionary/RequiredKeys.d.ts +2 -2
  420. package/dist/types/dictionary/RequiredKeys.d.ts.map +1 -1
  421. package/dist/types/dictionary/WithValue.d.ts +2 -3
  422. package/dist/types/dictionary/WithValue.d.ts.map +1 -1
  423. package/dist/types/dictionary/WithoutKeys.d.ts +3 -3
  424. package/dist/types/dictionary/WithoutKeys.d.ts.map +1 -1
  425. package/dist/types/functional/Result.d.ts +1 -1
  426. package/dist/types/functional/Result.d.ts.map +1 -1
  427. package/dist/types/functions/FnFrom.d.ts +1 -1
  428. package/dist/types/functions/FnFrom.d.ts.map +1 -1
  429. package/dist/types/functions/FnWithProps.d.ts +10 -0
  430. package/dist/types/functions/FnWithProps.d.ts.map +1 -0
  431. package/dist/types/functions/FnWithProps.js +1 -0
  432. package/dist/types/functions/IdentityFn.d.ts +1 -2
  433. package/dist/types/functions/IdentityFn.d.ts.map +1 -1
  434. package/dist/types/functions/index.d.ts +1 -0
  435. package/dist/types/functions/index.d.ts.map +1 -1
  436. package/dist/types/functions/index.js +1 -0
  437. package/dist/types/index.d.ts +1 -0
  438. package/dist/types/index.d.ts.map +1 -1
  439. package/dist/types/index.js +1 -0
  440. package/dist/types/lists/AsArray.d.ts +7 -2
  441. package/dist/types/lists/AsArray.d.ts.map +1 -1
  442. package/dist/types/lists/BeforeLast.d.ts +3 -3
  443. package/dist/types/lists/Filter.d.ts +2 -9
  444. package/dist/types/lists/Filter.d.ts.map +1 -1
  445. package/dist/types/lists/FilterByProp.d.ts +37 -0
  446. package/dist/types/lists/FilterByProp.d.ts.map +1 -0
  447. package/dist/types/lists/FilterByProp.js +1 -0
  448. package/dist/types/lists/Flatten.d.ts +31 -14
  449. package/dist/types/lists/Flatten.d.ts.map +1 -1
  450. package/dist/types/lists/Last.d.ts +2 -2
  451. package/dist/types/lists/Last.d.ts.map +1 -1
  452. package/dist/types/lists/Length.d.ts +3 -4
  453. package/dist/types/lists/Length.d.ts.map +1 -1
  454. package/dist/types/lists/RetainByProp.d.ts +38 -0
  455. package/dist/types/lists/RetainByProp.d.ts.map +1 -0
  456. package/dist/types/lists/RetainByProp.js +1 -0
  457. package/dist/types/lists/Shift.d.ts +5 -3
  458. package/dist/types/lists/Shift.d.ts.map +1 -1
  459. package/dist/types/lists/Slice.d.ts +17 -9
  460. package/dist/types/lists/Slice.d.ts.map +1 -1
  461. package/dist/types/lists/TakeFirst.d.ts +21 -0
  462. package/dist/types/lists/TakeFirst.d.ts.map +1 -0
  463. package/dist/types/lists/TakeFirst.js +1 -0
  464. package/dist/types/lists/TakeLast.d.ts +16 -0
  465. package/dist/types/lists/TakeLast.d.ts.map +1 -0
  466. package/dist/types/lists/TakeLast.js +1 -0
  467. package/dist/types/lists/index.d.ts +4 -0
  468. package/dist/types/lists/index.d.ts.map +1 -1
  469. package/dist/types/lists/index.js +4 -0
  470. package/dist/types/literals/BooleanLike.d.ts +8 -0
  471. package/dist/types/literals/BooleanLike.d.ts.map +1 -0
  472. package/dist/types/literals/BooleanLike.js +1 -0
  473. package/dist/types/literals/NarrowableDefined.d.ts +2 -1
  474. package/dist/types/literals/NarrowableDefined.d.ts.map +1 -1
  475. package/dist/types/literals/NarrowableDefined.js +0 -1
  476. package/dist/types/literals/Shape.d.ts +10 -1
  477. package/dist/types/literals/Shape.d.ts.map +1 -1
  478. package/dist/types/literals/index.d.ts +1 -0
  479. package/dist/types/literals/index.d.ts.map +1 -1
  480. package/dist/types/literals/index.js +1 -0
  481. package/dist/types/numeric-literals/Abs.d.ts +2 -2
  482. package/dist/types/numeric-literals/Abs.d.ts.map +1 -1
  483. package/dist/types/numeric-literals/Add.d.ts +5 -3
  484. package/dist/types/numeric-literals/Add.d.ts.map +1 -1
  485. package/dist/types/numeric-literals/AsNegativeNumber.d.ts +12 -0
  486. package/dist/types/numeric-literals/AsNegativeNumber.d.ts.map +1 -0
  487. package/dist/types/numeric-literals/AsNegativeNumber.js +1 -0
  488. package/dist/types/numeric-literals/CSV.d.ts +73 -0
  489. package/dist/types/numeric-literals/CSV.d.ts.map +1 -0
  490. package/dist/types/numeric-literals/CSV.js +1 -0
  491. package/dist/types/numeric-literals/Delta.d.ts +14 -0
  492. package/dist/types/numeric-literals/Delta.d.ts.map +1 -0
  493. package/dist/types/numeric-literals/Delta.js +1 -0
  494. package/dist/types/numeric-literals/Digit.d.ts +2 -3
  495. package/dist/types/numeric-literals/Digit.d.ts.map +1 -1
  496. package/dist/types/numeric-literals/Digitize.d.ts +10 -20
  497. package/dist/types/numeric-literals/Digitize.d.ts.map +1 -1
  498. package/dist/types/numeric-literals/Increment.d.ts +2 -5
  499. package/dist/types/numeric-literals/Increment.d.ts.map +1 -1
  500. package/dist/types/numeric-literals/InvertNumericSign.d.ts +9 -0
  501. package/dist/types/numeric-literals/InvertNumericSign.d.ts.map +1 -0
  502. package/dist/types/numeric-literals/InvertNumericSign.js +1 -0
  503. package/dist/types/numeric-literals/NumberLike.d.ts.map +1 -1
  504. package/dist/types/numeric-literals/Subtract.d.ts +11 -8
  505. package/dist/types/numeric-literals/Subtract.d.ts.map +1 -1
  506. package/dist/types/numeric-literals/Zero.d.ts +8 -0
  507. package/dist/types/numeric-literals/Zero.d.ts.map +1 -0
  508. package/dist/types/numeric-literals/Zero.js +1 -0
  509. package/dist/types/numeric-literals/index.d.ts +5 -0
  510. package/dist/types/numeric-literals/index.d.ts.map +1 -1
  511. package/dist/types/numeric-literals/index.js +5 -0
  512. package/dist/types/queues/FifoQueue.d.ts +31 -0
  513. package/dist/types/queues/FifoQueue.d.ts.map +1 -0
  514. package/dist/types/queues/FifoQueue.js +1 -0
  515. package/dist/types/queues/LifoQueue.d.ts +31 -0
  516. package/dist/types/queues/LifoQueue.d.ts.map +1 -0
  517. package/dist/types/queues/LifoQueue.js +1 -0
  518. package/dist/types/queues/index.d.ts +3 -0
  519. package/dist/types/queues/index.d.ts.map +1 -0
  520. package/dist/types/queues/index.js +2 -0
  521. package/dist/types/runtime-types/AsType.d.ts +16 -0
  522. package/dist/types/runtime-types/AsType.d.ts.map +1 -0
  523. package/dist/types/runtime-types/AsType.js +1 -0
  524. package/dist/types/runtime-types/SimpleType.d.ts +47 -0
  525. package/dist/types/runtime-types/SimpleType.d.ts.map +1 -0
  526. package/dist/types/runtime-types/SimpleType.js +1 -0
  527. package/dist/types/runtime-types/Type.d.ts +1 -1
  528. package/dist/types/runtime-types/Type.d.ts.map +1 -1
  529. package/dist/types/runtime-types/TypeOf.d.ts +1 -1
  530. package/dist/types/runtime-types/TypeOf.d.ts.map +1 -1
  531. package/dist/types/runtime-types/TypeToken.d.ts +119 -9
  532. package/dist/types/runtime-types/TypeToken.d.ts.map +1 -1
  533. package/dist/types/runtime-types/index.d.ts +2 -1
  534. package/dist/types/runtime-types/index.d.ts.map +1 -1
  535. package/dist/types/runtime-types/index.js +2 -1
  536. package/dist/types/sets/Intersection.d.ts +1 -1
  537. package/dist/types/sets/Intersection.d.ts.map +1 -1
  538. package/dist/types/string-literals/Date.d.ts +4 -4
  539. package/dist/types/string-literals/Date.d.ts.map +1 -1
  540. package/dist/types/string-literals/EnsureLeading.d.ts +10 -6
  541. package/dist/types/string-literals/EnsureLeading.d.ts.map +1 -1
  542. package/dist/types/string-literals/EnsureTrailing.d.ts +5 -6
  543. package/dist/types/string-literals/EnsureTrailing.d.ts.map +1 -1
  544. package/dist/types/string-literals/Join.d.ts +3 -2
  545. package/dist/types/string-literals/Join.d.ts.map +1 -1
  546. package/dist/types/string-literals/Proxmox.d.ts +2 -3
  547. package/dist/types/string-literals/Proxmox.d.ts.map +1 -1
  548. package/dist/types/string-literals/Split.d.ts +1 -1
  549. package/dist/types/string-literals/Split.d.ts.map +1 -1
  550. package/dist/types/string-literals/StripLeading.d.ts +2 -2
  551. package/dist/types/string-literals/StripLeading.d.ts.map +1 -1
  552. package/dist/types/string-literals/StripSurround.d.ts +16 -0
  553. package/dist/types/string-literals/StripSurround.d.ts.map +1 -0
  554. package/dist/types/string-literals/StripSurround.js +1 -0
  555. package/dist/types/string-literals/StripTrailing.d.ts +2 -2
  556. package/dist/types/string-literals/StripTrailing.d.ts.map +1 -1
  557. package/dist/types/string-literals/StripUntil.d.ts +1 -1
  558. package/dist/types/string-literals/StripUntil.d.ts.map +1 -1
  559. package/dist/types/string-literals/Suggest.d.ts.map +1 -1
  560. package/dist/types/string-literals/Surround.d.ts +2 -2
  561. package/dist/types/string-literals/Surround.d.ts.map +1 -1
  562. package/dist/types/string-literals/Truncate.d.ts +4 -4
  563. package/dist/types/string-literals/Truncate.d.ts.map +1 -1
  564. package/dist/types/string-literals/UnderlyingType.d.ts +18 -0
  565. package/dist/types/string-literals/UnderlyingType.d.ts.map +1 -0
  566. package/dist/types/string-literals/UnderlyingType.js +1 -0
  567. package/dist/types/string-literals/character-sets/CSS.d.ts +13 -0
  568. package/dist/types/string-literals/character-sets/CSS.d.ts.map +1 -1
  569. package/dist/types/string-literals/character-sets/Consonants.d.ts +3 -4
  570. package/dist/types/string-literals/character-sets/Consonants.d.ts.map +1 -1
  571. package/dist/types/string-literals/character-sets/DomainName.d.ts +1 -1
  572. package/dist/types/string-literals/character-sets/DomainName.d.ts.map +1 -1
  573. package/dist/types/string-literals/character-sets/IpAddress.d.ts +1 -1
  574. package/dist/types/string-literals/character-sets/IpAddress.d.ts.map +1 -1
  575. package/dist/types/string-literals/character-sets/LowerAlphaChar.d.ts +2 -3
  576. package/dist/types/string-literals/character-sets/LowerAlphaChar.d.ts.map +1 -1
  577. package/dist/types/string-literals/character-sets/NumericChar.d.ts +3 -4
  578. package/dist/types/string-literals/character-sets/NumericChar.d.ts.map +1 -1
  579. package/dist/types/string-literals/character-sets/Repos.d.ts +2 -1
  580. package/dist/types/string-literals/character-sets/Repos.d.ts.map +1 -1
  581. package/dist/types/string-literals/character-sets/SingularNoun.d.ts +1 -1
  582. package/dist/types/string-literals/character-sets/SingularNoun.d.ts.map +1 -1
  583. package/dist/types/string-literals/character-sets/UpperAlphaChar.d.ts +2 -3
  584. package/dist/types/string-literals/character-sets/UpperAlphaChar.d.ts.map +1 -1
  585. package/dist/types/string-literals/character-sets/Url.d.ts +4 -3
  586. package/dist/types/string-literals/character-sets/Url.d.ts.map +1 -1
  587. package/dist/types/string-literals/character-sets/Url.js +0 -1
  588. package/dist/types/string-literals/character-sets/Whitespace.d.ts +1 -1
  589. package/dist/types/string-literals/character-sets/Whitespace.d.ts.map +1 -1
  590. package/dist/types/string-literals/character-sets/index.d.ts +1 -1
  591. package/dist/types/string-literals/character-sets/index.d.ts.map +1 -1
  592. package/dist/types/string-literals/character-sets/index.js +1 -1
  593. package/dist/types/string-literals/character-sets/phone/CountryPhoneNumber.d.ts +12 -0
  594. package/dist/types/string-literals/character-sets/phone/CountryPhoneNumber.d.ts.map +1 -0
  595. package/dist/types/string-literals/character-sets/phone/CountryPhoneNumber.js +1 -0
  596. package/dist/types/string-literals/character-sets/phone/DialCountryCode.d.ts +9 -0
  597. package/dist/types/string-literals/character-sets/phone/DialCountryCode.d.ts.map +1 -0
  598. package/dist/types/string-literals/character-sets/phone/DialCountryCode.js +1 -0
  599. package/dist/types/string-literals/character-sets/phone/GetPhoneCountryCode.d.ts +14 -0
  600. package/dist/types/string-literals/character-sets/phone/GetPhoneCountryCode.d.ts.map +1 -0
  601. package/dist/types/string-literals/character-sets/phone/GetPhoneCountryCode.js +1 -0
  602. package/dist/types/string-literals/character-sets/phone/GetPhoneNumberType.d.ts +10 -0
  603. package/dist/types/string-literals/character-sets/phone/GetPhoneNumberType.d.ts.map +1 -0
  604. package/dist/types/string-literals/character-sets/phone/GetPhoneNumberType.js +1 -0
  605. package/dist/types/string-literals/character-sets/phone/InternationalPhoneNumber.d.ts +12 -0
  606. package/dist/types/string-literals/character-sets/phone/InternationalPhoneNumber.d.ts.map +1 -0
  607. package/dist/types/string-literals/character-sets/phone/InternationalPhoneNumber.js +1 -0
  608. package/dist/types/string-literals/character-sets/phone/LocalPhoneNumber.d.ts +12 -0
  609. package/dist/types/string-literals/character-sets/phone/LocalPhoneNumber.d.ts.map +1 -0
  610. package/dist/types/string-literals/character-sets/phone/LocalPhoneNumber.js +1 -0
  611. package/dist/types/string-literals/character-sets/phone/PhoneAreaCode.d.ts +6 -0
  612. package/dist/types/string-literals/character-sets/phone/PhoneAreaCode.d.ts.map +1 -0
  613. package/dist/types/string-literals/character-sets/phone/PhoneAreaCode.js +1 -0
  614. package/dist/types/string-literals/character-sets/phone/PhoneCountryCode.d.ts +13 -0
  615. package/dist/types/string-literals/character-sets/phone/PhoneCountryCode.d.ts.map +1 -0
  616. package/dist/types/string-literals/character-sets/phone/PhoneCountryCode.js +1 -0
  617. package/dist/types/string-literals/character-sets/phone/PhoneNumber.d.ts +23 -0
  618. package/dist/types/string-literals/character-sets/phone/PhoneNumber.d.ts.map +1 -0
  619. package/dist/types/string-literals/character-sets/phone/PhoneNumber.js +1 -0
  620. package/dist/types/string-literals/character-sets/phone/PhoneNumberDelimiter.d.ts +5 -0
  621. package/dist/types/string-literals/character-sets/phone/PhoneNumberDelimiter.d.ts.map +1 -0
  622. package/dist/types/string-literals/character-sets/phone/PhoneNumberDelimiter.js +1 -0
  623. package/dist/types/string-literals/character-sets/phone/PhoneShortCode.d.ts +19 -0
  624. package/dist/types/string-literals/character-sets/phone/PhoneShortCode.d.ts.map +1 -0
  625. package/dist/types/string-literals/character-sets/phone/PhoneShortCode.js +1 -0
  626. package/dist/types/string-literals/character-sets/phone/RawPhoneNumber.d.ts +30 -0
  627. package/dist/types/string-literals/character-sets/phone/RawPhoneNumber.d.ts.map +1 -0
  628. package/dist/types/string-literals/character-sets/phone/RawPhoneNumber.js +1 -0
  629. package/dist/types/string-literals/character-sets/phone/RemovePhoneCountryCode.d.ts +27 -0
  630. package/dist/types/string-literals/character-sets/phone/RemovePhoneCountryCode.d.ts.map +1 -0
  631. package/dist/types/string-literals/character-sets/phone/RemovePhoneCountryCode.js +1 -0
  632. package/dist/types/string-literals/character-sets/phone/ToPhoneFormat.d.ts +17 -0
  633. package/dist/types/string-literals/character-sets/phone/ToPhoneFormat.d.ts.map +1 -0
  634. package/dist/types/string-literals/character-sets/phone/ToPhoneFormat.js +1 -0
  635. package/dist/types/string-literals/character-sets/phone/index.d.ts +15 -0
  636. package/dist/types/string-literals/character-sets/phone/index.d.ts.map +1 -0
  637. package/dist/types/string-literals/character-sets/phone/index.js +14 -0
  638. package/dist/types/string-literals/character-sets/phone.d.ts +0 -187
  639. package/dist/types/string-literals/character-sets/phone.d.ts.map +1 -1
  640. package/dist/types/string-literals/geo/state.d.ts +1 -1
  641. package/dist/types/string-literals/geo/state.d.ts.map +1 -1
  642. package/dist/types/string-literals/geo/zip.d.ts +1 -1
  643. package/dist/types/string-literals/geo/zip.d.ts.map +1 -1
  644. package/dist/types/string-literals/index.d.ts +2 -0
  645. package/dist/types/string-literals/index.d.ts.map +1 -1
  646. package/dist/types/string-literals/index.js +2 -0
  647. package/dist/types/tsconfig.tsbuildinfo +1 -1
  648. package/dist/types/type-conversion/AsBoolean.d.ts +7 -4
  649. package/dist/types/type-conversion/AsBoolean.d.ts.map +1 -1
  650. package/dist/types/type-conversion/AsNumber.d.ts +8 -3
  651. package/dist/types/type-conversion/AsNumber.d.ts.map +1 -1
  652. package/dist/types/type-conversion/AsString.d.ts +3 -1
  653. package/dist/types/type-conversion/AsString.d.ts.map +1 -1
  654. package/dist/types/type-conversion/AsStringUnion.d.ts +25 -0
  655. package/dist/types/type-conversion/AsStringUnion.d.ts.map +1 -0
  656. package/dist/types/type-conversion/AsStringUnion.js +1 -0
  657. package/dist/types/type-conversion/JSON.d.ts +25 -0
  658. package/dist/types/type-conversion/JSON.d.ts.map +1 -0
  659. package/dist/types/type-conversion/JSON.js +1 -0
  660. package/dist/types/type-conversion/StringLiteralFromTuple.d.ts +18 -0
  661. package/dist/types/type-conversion/StringLiteralFromTuple.d.ts.map +1 -0
  662. package/dist/types/type-conversion/StringLiteralFromTuple.js +1 -0
  663. package/dist/types/type-conversion/StripChars.d.ts +7 -6
  664. package/dist/types/type-conversion/StripChars.d.ts.map +1 -1
  665. package/dist/types/type-conversion/ToJsonValue.d.ts +11 -0
  666. package/dist/types/type-conversion/ToJsonValue.d.ts.map +1 -0
  667. package/dist/types/type-conversion/ToJsonValue.js +1 -0
  668. package/dist/types/type-conversion/ToStringArray.d.ts +4 -3
  669. package/dist/types/type-conversion/ToStringArray.d.ts.map +1 -1
  670. package/dist/types/type-conversion/TupleToUnion.d.ts +2 -2
  671. package/dist/types/type-conversion/TupleToUnion.d.ts.map +1 -1
  672. package/dist/types/type-conversion/Widen.js +1 -0
  673. package/dist/types/type-conversion/index.d.ts +4 -0
  674. package/dist/types/type-conversion/index.d.ts.map +1 -1
  675. package/dist/types/type-conversion/index.js +4 -0
  676. package/package.json +36 -36
  677. package/dist/runtime/lists/pop.d.ts +0 -17
  678. package/dist/runtime/lists/pop.d.ts.map +0 -1
  679. package/dist/runtime/lists/pop.js +0 -16
  680. package/dist/runtime/literals/asPhoneNumber.d.ts +0 -10
  681. package/dist/runtime/literals/asPhoneNumber.d.ts.map +0 -1
  682. package/dist/runtime/literals/asPhoneNumber.js +0 -62
  683. package/dist/runtime/runtime-types/dict.d.ts +0 -10
  684. package/dist/runtime/runtime-types/dict.d.ts.map +0 -1
  685. package/dist/runtime/runtime-types/dict.js +0 -11
  686. package/dist/runtime/runtime-types/parse.d.ts +0 -16
  687. package/dist/runtime/runtime-types/parse.d.ts.map +0 -1
  688. package/dist/runtime/runtime-types/parse.js +0 -29
  689. package/dist/types/base-types/fns/AnyFnWithDict.d.ts +0 -9
  690. package/dist/types/base-types/fns/AnyFnWithDict.d.ts.map +0 -1
  691. package/dist/types/base-types/fns/FnWithDict.d.ts +0 -10
  692. package/dist/types/base-types/fns/FnWithDict.d.ts.map +0 -1
  693. package/dist/types/runtime-types/DescribeType.d.ts +0 -40
  694. package/dist/types/runtime-types/DescribeType.d.ts.map +0 -1
  695. package/dist/types/runtime-types/DescribeType.js +0 -2
  696. /package/dist/types/base-types/{fns/AnyFnWithDict.js → LikeRegExp.js} +0 -0
  697. /package/dist/types/base-types/fns/{FnWithDict.js → FnAllowingProps.js} +0 -0
@@ -1,9 +1,9 @@
1
- import { AsString, HasCharacters, IsNever, IsStringLiteral, NumberLike } from "../..";
1
+ import { HasCharacters, IsNever, IsStringLiteral, NumberLike } from "../../index";
2
2
  /**
3
3
  * **IsInteger**`<T>`
4
4
  *
5
5
  * Boolean operator which tests whether `T` is a **integer** representation of
6
6
  * a `NumberLike` type `T`.
7
7
  */
8
- export type IsInteger<T> = [IsNever<T>] extends [true] ? false : [T] extends [NumberLike] ? [IsStringLiteral<AsString<T>>] extends [true] ? [HasCharacters<AsString<T>, ".">] extends [true] ? false : true : boolean : false;
8
+ export type IsInteger<T> = [IsNever<T>] extends [true] ? false : [T] extends [NumberLike] ? [IsStringLiteral<`${T}`>] extends [true] ? [HasCharacters<`${T}`, ".">] extends [true] ? false : true : boolean : false;
9
9
  //# sourceMappingURL=IsInteger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IsInteger.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/IsInteger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGtF;;;;;GAKG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GACpD,KAAK,GACL,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,GACtB,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAC3C,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAC9C,KAAK,GACL,IAAI,GACR,OAAO,GACT,KAAK,CAAC"}
1
+ {"version":3,"file":"IsInteger.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/IsInteger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,oBAAwB;AAGtF;;;;;GAKG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GACpD,KAAK,GACL,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,GACtB,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GACtC,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GACzC,KAAK,GACL,IAAI,GACR,OAAO,GACT,KAAK,CAAC"}
@@ -1,4 +1,4 @@
1
- import { AsNumber } from "../../index";
1
+ import { AsNumber, IsEqual, NumberLike } from "../../index";
2
2
  type Calc<A extends number, B extends number, Count extends 1[] = []> = Count["length"] extends B ? false : Count["length"] extends A ? true : Calc<A, B, [...Count, 1]>;
3
3
  /**
4
4
  * **IsLessThan**`<A,B>`
@@ -8,6 +8,12 @@ type Calc<A extends number, B extends number, Count extends 1[] = []> = Count["l
8
8
  *
9
9
  * **Note:** does not take negative numbers into account
10
10
  */
11
- export type IsLessThan<A extends number | `${number}`, B extends number | `${number}`> = Calc<AsNumber<A>, AsNumber<B>>;
11
+ export type IsLessThan<A extends NumberLike, B extends NumberLike> = Calc<AsNumber<A>, AsNumber<B>>;
12
+ /**
13
+ * **IsLessThanOrEqual**`<A,B>`
14
+ *
15
+ * Test whether `A` is _less than_ or _equal_ to `B`.
16
+ */
17
+ export type IsLessThanOrEqual<A extends NumberLike, B extends NumberLike> = IsEqual<A, B> extends true ? true : IsLessThan<A, B>;
12
18
  export {};
13
19
  //# sourceMappingURL=IsLessThan.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IsLessThan.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/IsLessThan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,oBAAwB;AAE3C,KAAK,IAAI,CACP,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,MAAM,EAChB,KAAK,SAAS,CAAC,EAAE,GAAG,EAAE,IAExB,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,GACrB,KAAK,GACL,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,GACvB,IAAI,GACJ,IAAI,CAAC,CAAC,EAAC,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AAE/B;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,CACpB,CAAC,SAAS,MAAM,GAAG,GAAG,MAAM,EAAE,EAC9B,CAAC,SAAS,MAAM,GAAG,GAAG,MAAM,EAAE,IAC5B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"IsLessThan.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/IsLessThan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,oBAAwB;AAEhE,KAAK,IAAI,CACP,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,MAAM,EAChB,KAAK,SAAS,CAAC,EAAE,GAAG,EAAE,IAExB,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,GACrB,KAAK,GACL,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,GACvB,IAAI,GACJ,IAAI,CAAC,CAAC,EAAC,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AAE/B;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,CACpB,CAAC,SAAS,UAAU,EACpB,CAAC,SAAS,UAAU,IAClB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAInC;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,CAC3B,CAAC,SAAS,UAAU,EACpB,CAAC,SAAS,UAAU,IAClB,OAAO,CAAC,CAAC,EAAC,CAAC,CAAC,SAAS,IAAI,GAC3B,IAAI,GACJ,UAAU,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC"}
@@ -1,5 +1,4 @@
1
- import { AsString, IsStringLiteral, IsWideType, NumberLike, StartsWith } from "../../index";
2
- type Process<T extends `${number}`> = [IsStringLiteral<T>] extends [true] ? T extends `${number}` ? [StartsWith<T, "-">] extends [true] ? true : false : false : boolean;
1
+ import { AsString, IsEqual, IsWideType, NumberLike } from "../../index";
3
2
  /**
4
3
  * **IsNegativeNumber**`<T>`
5
4
  *
@@ -7,6 +6,5 @@ type Process<T extends `${number}`> = [IsStringLiteral<T>] extends [true] ? T ex
7
6
  * negative value. This includes string literal representations of
8
7
  * a number.
9
8
  */
10
- export type IsNegativeNumber<T extends NumberLike> = IsWideType<T> extends true ? boolean : NumberLike extends T ? boolean : T extends number ? Process<AsString<T>> : T extends string ? Process<T> : never;
11
- export {};
9
+ export type IsNegativeNumber<T extends NumberLike> = IsWideType<T> extends true ? boolean : IsEqual<T, NumberLike> extends true ? boolean : AsString<T> extends `-${number}` ? true : false;
12
10
  //# sourceMappingURL=IsNegativeNumber.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IsNegativeNumber.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/IsNegativeNumber.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,eAAe,EACf,UAAU,EACV,UAAU,EACV,UAAU,EACX,oBAAwB;AAEzB,KAAK,OAAO,CACV,CAAC,SAAS,GAAG,MAAM,EAAE,IACnB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GACrC,CAAC,SAAS,GAAG,MAAM,EAAE,GACnB,CAAC,UAAU,CAAC,CAAC,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAChC,IAAI,GACJ,KAAK,GACT,KAAK,GACL,OAAO,CAAC;AAEV;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,CAC1B,CAAC,SAAS,UAAU,IAClB,UAAU,CAAC,CAAC,CAAC,SAAS,IAAI,GAC5B,OAAO,GACP,UAAU,SAAS,CAAC,GACpB,OAAO,GACP,CAAC,SAAS,MAAM,GAChB,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GACpB,CAAC,SAAS,MAAM,GACd,OAAO,CAAC,CAAC,CAAC,GACV,KAAK,CAAA"}
1
+ {"version":3,"file":"IsNegativeNumber.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/IsNegativeNumber.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,OAAO,EACP,UAAU,EACV,UAAU,EACX,oBAAwB;AAEzB;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,CAC1B,CAAC,SAAS,UAAU,IAClB,UAAU,CAAC,CAAC,CAAC,SAAS,IAAI,GAC5B,OAAO,GACP,OAAO,CAAC,CAAC,EAAC,UAAU,CAAC,SAAS,IAAI,GAClC,OAAO,GACP,QAAQ,CAAC,CAAC,CAAC,SAAS,IAAI,MAAM,EAAE,GAC9B,IAAI,GACJ,KAAK,CAAC"}
@@ -1,4 +1,4 @@
1
- import { If, IsUnion, RetainLiterals, UnionToTuple } from "../..";
1
+ import { If, IsUnion, RetainLiterals, UnionToTuple } from "../../index";
2
2
  type Process<T> = UnionToTuple<T> extends readonly unknown[] ? RetainLiterals<UnionToTuple<T>>["length"] extends UnionToTuple<T>["length"] ? false : true : never;
3
3
  /**
4
4
  * **IsNonLiteralUnion**`<T>`
@@ -1 +1 @@
1
- {"version":3,"file":"IsNonLiteralUnion.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/IsNonLiteralUnion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAG,EAAE,EAAE,OAAO,EAAE,cAAc,EAAG,YAAY,EAAE,MAAM,OAAO,CAAC;AAGpE,KAAK,OAAO,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,GAC1D,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GACzE,KAAK,GACL,IAAI,GACN,KAAK,CAAC;AAER;;;;;;;GAOG;AACH,MAAM,MAAM,iBAAiB,CAC3B,CAAC,IAAI,EAAE,CACP,OAAO,CAAC,CAAC,CAAC,EACV,OAAO,CAAC,CAAC,CAAC,EACV,KAAK,CACN,CAAA"}
1
+ {"version":3,"file":"IsNonLiteralUnion.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/IsNonLiteralUnion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAG,EAAE,EAAE,OAAO,EAAE,cAAc,EAAG,YAAY,EAAE,oBAAwB;AAG9E,KAAK,OAAO,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,GAC1D,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GACzE,KAAK,GACL,IAAI,GACN,KAAK,CAAC;AAER;;;;;;;GAOG;AACH,MAAM,MAAM,iBAAiB,CAC3B,CAAC,IAAI,EAAE,CACP,OAAO,CAAC,CAAC,CAAC,EACV,OAAO,CAAC,CAAC,CAAC,EACV,KAAK,CACN,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { NumberLike } from "../../numeric-literals";
2
+ import { IsNegativeNumber } from "./IsNegativeNumber";
3
+ /**
4
+ * **IsPositiveNumber**`<T>`
5
+ *
6
+ * Boolean operator which checks whether the value `T` is a _positive_ number.
7
+ *
8
+ * **Related:** `IsNegativeNumber`, `Abs`, `InvertNumericSign`
9
+ */
10
+ export type IsPositiveNumber<T extends NumberLike> = IsNegativeNumber<T> extends true ? false : true;
11
+ //# sourceMappingURL=IsPositiveNumber.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsPositiveNumber.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/IsPositiveNumber.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,+BAAmC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,UAAU,IAAI,gBAAgB,CAAC,CAAC,CAAC,SAAS,IAAI,GACnF,KAAK,GACL,IAAI,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { IsNever } from "./IsNever";
2
2
  type Process<T> = [IsNever<T>] extends [true] ? false : T extends readonly unknown[] ? number extends T["length"] ? false : true : false;
3
3
  /**
4
- * **IfTuple**`<T>`
4
+ * **IsTuple**`<T>`
5
5
  *
6
6
  * Boolean operator which tests whether the given `T` is
7
7
  * a _tuple_ value where a tuple is defined as:
@@ -1,14 +1,13 @@
1
- import { And, As, AsString, Equals, Extends, GetUrlPath, GetUrlSource, IsNever, IsString, IsStringLiteral, NetworkProtocol, NetworkProtocolPrefix, Not, Or } from "../../index";
1
+ import { And, Extends, GetUrlPath, GetUrlSource, IsNever, IsStringLiteral, NetworkProtocol, NetworkProtocolPrefix, Not, Or } from "../../index";
2
2
  export type HasUrlPath<T extends string> = And<[
3
- IsString<T>,
4
3
  Not<IsNever<GetUrlPath<T>>>,
5
4
  Or<[
6
5
  Extends<GetUrlPath<T>, "">,
7
6
  Extends<GetUrlPath<T>, `/${string}`>,
8
- Equals<GetUrlPath<T>, string>
7
+ string extends GetUrlPath<T> ? true : false
9
8
  ]>
10
9
  ]>;
11
- export type HasUrlSource<T> = Not<IsNever<GetUrlSource<AsString<T>>>>;
10
+ export type HasUrlSource<T extends string> = Not<IsNever<GetUrlSource<T>>>;
12
11
  export type HasNetworkProtocolReference<TTest extends string, TProto extends NetworkProtocol> = Extends<TTest, `${NetworkProtocolPrefix<TProto>}${string}`>;
13
12
  /**
14
13
  * **IsUrl**`<TTest,[TProtocol]>`
@@ -24,12 +23,12 @@ export type HasNetworkProtocolReference<TTest extends string, TProto extends Net
24
23
  * type and it will then accept the protocols you've selected or a URL
25
24
  * without a protocol.
26
25
  */
27
- export type IsUrl<TTest, TProtocol extends NetworkProtocol | "optional" = "https"> = IsString<TTest> extends true ? IsStringLiteral<TTest> extends true ? And<[
26
+ export type IsUrl<TTest, TProtocol extends NetworkProtocol | "optional" = "https"> = TTest extends string ? IsStringLiteral<TTest> extends true ? And<[
28
27
  Or<[
29
- HasNetworkProtocolReference<AsString<TTest>, As<TProtocol, NetworkProtocol>>,
28
+ HasNetworkProtocolReference<TTest, TProtocol extends NetworkProtocol ? TProtocol : "https">,
30
29
  Extends<"optional", TProtocol>
31
30
  ]>,
32
- HasUrlPath<AsString<TTest>>,
33
- HasUrlSource<AsString<TTest>>
31
+ HasUrlPath<TTest>,
32
+ HasUrlSource<TTest>
34
33
  ]> : boolean : false;
35
34
  //# sourceMappingURL=IsUrl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IsUrl.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/IsUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,EAAE,EACF,QAAQ,EACR,MAAM,EACN,OAAO,EACP,UAAU,EACV,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,GAAG,EACH,EAAE,EACH,oBAAwB;AAGzB,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,MAAM,IAAI,GAAG,CAAC;IAC7C,QAAQ,CAAC,CAAC,CAAC;IACX,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3B,EAAE,CAAC;QACD,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAC,EAAE,CAAC;QACzB,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAC,IAAI,MAAM,EAAE,CAAC;QACnC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;KAC9B,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEtE,MAAM,MAAM,2BAA2B,CACrC,KAAK,SAAS,MAAM,EACpB,MAAM,SAAS,eAAe,IAC5B,OAAO,CAAC,KAAK,EAAE,GAAG,qBAAqB,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;AAEhE;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,KAAK,CACf,KAAK,EACL,SAAS,SAAS,eAAe,GAAG,UAAU,GAAG,OAAO,IACtD,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,GAC9B,eAAe,CAAC,KAAK,CAAC,SAAS,IAAI,GACjC,GAAG,CAAC;IACF,EAAE,CAAC;QACD,2BAA2B,CACzB,QAAQ,CAAC,KAAK,CAAC,EACf,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC,CAC/B;QACD,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC;KAC/B,CAAC;IACF,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3B,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;CAC9B,CAAC,GACF,OAAO,GACV,KAAK,CAAC"}
1
+ {"version":3,"file":"IsUrl.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/IsUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,OAAO,EACP,UAAU,EACV,YAAY,EACZ,OAAO,EACP,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,GAAG,EACH,EAAE,EACH,oBAAwB;AAGzB,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,MAAM,IAAI,GAAG,CAAC;IAC7C,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3B,EAAE,CAAC;QACD,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAC,EAAE,CAAC;QACzB,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAC,IAAI,MAAM,EAAE,CAAC;QACnC,MAAM,SAAS,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK;KAC5C,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE3E,MAAM,MAAM,2BAA2B,CACrC,KAAK,SAAS,MAAM,EACpB,MAAM,SAAS,eAAe,IAC5B,OAAO,CAAC,KAAK,EAAE,GAAG,qBAAqB,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;AAEhE;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,KAAK,CACf,KAAK,EACL,SAAS,SAAS,eAAe,GAAG,UAAU,GAAG,OAAO,IACtD,KAAK,SAAS,MAAM,GACtB,eAAe,CAAC,KAAK,CAAC,SAAS,IAAI,GACjC,GAAG,CAAC;IACF,EAAE,CAAC;QACD,2BAA2B,CACzB,KAAK,EACL,SAAS,SAAS,eAAe,GAC7B,SAAS,GACT,OAAO,CACZ;QACD,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC;KAC/B,CAAC;IACF,UAAU,CAAC,KAAK,CAAC;IACjB,YAAY,CAAC,KAAK,CAAC;CACpB,CAAC,GACF,OAAO,GACV,KAAK,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { UnionToTuple, IsUnion, Contains, ErrorCondition } from "../../index";
2
+ type AnyError<T extends readonly unknown[]> = Contains<T, ErrorCondition> extends true ? true : Contains<T, Error> extends true ? true : false;
3
+ /**
4
+ * **MaybeError**`<T>`
5
+ *
6
+ * Tests whether T is part of a union and if it is then
7
+ * tests whether any element of that union is an error, where
8
+ * an error is:
9
+ *
10
+ * - `ErrorCondition`
11
+ * - extends JS's `Error` class
12
+ *
13
+ * MaybeError returns **false** if there _is_ an error; it is
14
+ * positive only when it _might_ be an error.
15
+ *
16
+ * **Related**: `IsError`, `IsErrorCondition`
17
+ */
18
+ export type MaybeError<T> = IsUnion<T> extends true ? AnyError<UnionToTuple<T>> : false;
19
+ export {};
20
+ //# sourceMappingURL=MaybeError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaybeError.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/MaybeError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,oBAAwB;AAGlF,KAAK,QAAQ,CACX,CAAC,SAAS,SAAS,OAAO,EAAE,IAC1B,QAAQ,CAAC,CAAC,EAAE,cAAc,CAAC,SAAS,IAAI,GAC1C,IAAI,GACJ,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,IAAI,GAC/B,IAAI,GACJ,KAAK,CAAC;AAGR;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GACjD,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GACzB,KAAK,CAAC"}
@@ -0,0 +1,2 @@
1
+ ;
2
+ export {};
@@ -1,5 +1,4 @@
1
- import { GetPhoneCountryCode, IsNever, IsTrue, PhoneCountryCode, PhoneNumber } from "../..";
2
- import { IsStringLiteral } from "./IsStringLiteral";
1
+ import { IsStringLiteral, GetPhoneCountryCode, IsTrue, PhoneNumber, PhoneCountryCode, IsErrorCondition, MaybeError } from "../../index";
3
2
  /**
4
3
  * **IsPhoneNumber**`<T>`
5
4
  *
@@ -15,7 +14,7 @@ import { IsStringLiteral } from "./IsStringLiteral";
15
14
  *
16
15
  * **Related:** `PhoneNumber`, `HasPhoneCountryCode`
17
16
  */
18
- export type IsPhoneNumber<T> = T extends string ? IsStringLiteral<T> extends true ? IsNever<PhoneNumber<T>> extends true ? false : true : boolean : false;
17
+ export type IsPhoneNumber<T extends string | number> = IsErrorCondition<PhoneNumber<T>> extends true ? false : MaybeError<PhoneNumber<T>> extends true ? boolean : true;
19
18
  /**
20
19
  * **HasPhoneCountryCode**`<T>`
21
20
  *
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneOperators.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/PhoneOperators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIpD;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAC7C,eAAe,CAAC,CAAC,CAAC,SAAS,IAAI,GAC7B,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAClC,KAAK,GACL,IAAI,GACR,OAAO,GACP,KAAK,CAAC;AAGR;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,mBAAmB,CAC7B,MAAM,EACN,SAAS,SAAS,OAAO,GAAG,IAAI,IAC9B,MAAM,SAAS,MAAM,GACvB,eAAe,CAAC,MAAM,CAAC,SAAS,IAAI,GAChC,MAAM,CAAC,SAAS,CAAC,SAAS,IAAI,GAC5B,mBAAmB,CAAC,MAAM,CAAC,SAAS,gBAAgB,GAClD,IAAI,GACJ,KAAK,GACP,mBAAmB,CAAC,MAAM,CAAC,SAAS,EAAE,GACpC,KAAK,GACL,IAAI,GACZ,OAAO,GACP,KAAK,CAAC"}
1
+ {"version":3,"file":"PhoneOperators.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/PhoneOperators.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,MAAM,EACN,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACX,oBAAwB;AAIzB;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAChG,KAAK,GACL,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GACvC,OAAO,GACP,IAAI,CAAC;AAGT;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,mBAAmB,CAC7B,MAAM,EACN,SAAS,SAAS,OAAO,GAAG,IAAI,IAC9B,MAAM,SAAS,MAAM,GACvB,eAAe,CAAC,MAAM,CAAC,SAAS,IAAI,GAChC,MAAM,CAAC,SAAS,CAAC,SAAS,IAAI,GAC5B,mBAAmB,CAAC,MAAM,CAAC,SAAS,gBAAgB,GAClD,IAAI,GACJ,KAAK,GACP,mBAAmB,CAAC,MAAM,CAAC,SAAS,EAAE,GACpC,KAAK,GACL,IAAI,GACZ,OAAO,GACP,KAAK,CAAC"}
@@ -1,11 +1,10 @@
1
- import { AsString, IsFalse, IsEqual, IsUnion, Or } from "../../index";
2
- type TestThatExtends<TValue extends string, TComparator extends string> = [TValue] extends [`${TComparator}${string}`] ? true : false;
3
- type Process<TValue extends string, TComparator extends string> = [IsFalse<TestThatExtends<TValue, TComparator>>] extends [true] ? false : true;
4
- type ProcessEach<TValue extends string, TComparator extends readonly string[]> = {
5
- [K in keyof TComparator]: Process<TValue, TComparator[K]>;
6
- };
7
- type PreProcess<TValue extends string, TComparator extends string | readonly string[]> = TComparator extends readonly string[] ? ProcessEach<TValue, TComparator> extends readonly boolean[] ? Or<ProcessEach<TValue, TComparator>> : never : TComparator extends string ? Process<TValue, AsString<TComparator>> : never;
8
- type IsWide<TValue extends string | number, TComparator extends string | number | readonly string[]> = [IsEqual<AsString<TValue>, string>] extends [true] ? true : [IsEqual<AsString<TComparator>, string>] extends [true] ? true : false;
1
+ import { AsString, IsWideType, TupleToUnion, IsEqual } from "../../index";
2
+ type Check<TValue extends string, TComparator extends string | number> = TValue extends `${TComparator}${string}` ? true : false;
3
+ type Process<TValue extends string, TComparator extends string | number | readonly string[]> = TComparator extends readonly string[] ? Check<[
4
+ TValue
5
+ ] extends [number] ? `${TValue}` : TValue, TupleToUnion<TComparator>> : Check<[
6
+ TValue
7
+ ] extends [number] ? `${TValue}` : TValue, AsString<TComparator>>;
9
8
  /**
10
9
  * **StartsWith**<TValue, TComparator>
11
10
  *
@@ -20,6 +19,6 @@ type IsWide<TValue extends string | number, TComparator extends string | number
20
19
  * - this can be much more type efficient for unions with lots of characters
21
20
  * - if you need larger pattern matches then use a Tuple for `TComparator`
22
21
  */
23
- export type StartsWith<TValue extends string | number, TComparator extends string | number | readonly string[]> = [IsWide<TValue, TComparator>] extends [true] ? boolean : [IsUnion<TComparator>] extends [true] ? IsFalse<PreProcess<`${TValue}`, TComparator extends number ? AsString<TComparator> : TComparator>> extends true ? false : true : PreProcess<AsString<TValue>, TComparator extends number ? `${TComparator}` : TComparator>;
22
+ export type StartsWith<TValue extends string | number, TComparator extends string | number | readonly string[]> = [IsWideType<TValue>] extends [true] ? boolean : [IsWideType<TComparator>] extends [true] ? boolean : IsEqual<Process<AsString<TValue>, TComparator>, boolean> extends true ? true : Process<AsString<TValue>, TComparator>;
24
23
  export {};
25
24
  //# sourceMappingURL=StartsWith.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StartsWith.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/StartsWith.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,OAAO,EACP,OAAO,EACP,OAAO,EACP,EAAE,EACH,oBAAwB;AAEzB,KAAK,eAAe,CAClB,MAAM,SAAS,MAAM,EACrB,WAAW,SAAS,MAAM,IACxB,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,WAAW,GAAG,MAAM,EAAE,CAAC,GAAG,IAAI,GAAG,KAAK,CAAA;AAE/D,KAAK,OAAO,CACV,MAAM,SAAS,MAAM,EACrB,WAAW,SAAS,MAAM,IACxB,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,EAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAC/D,KAAK,GACL,IAAI,CAAC;AAEP,KAAK,WAAW,CACZ,MAAM,SAAS,MAAM,EACrB,WAAW,SAAS,SAAS,MAAM,EAAE,IACrC;KACD,CAAC,IAAI,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,EAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CACzD,CAAC;AAIF,KAAK,UAAU,CACb,MAAM,SAAS,MAAM,EACrB,WAAW,SAAS,MAAM,GAAG,SAAS,MAAM,EAAE,IAC5C,WAAW,SAAS,SAAS,MAAM,EAAE,GACrC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,SAAS,SAAS,OAAO,EAAE,GACzD,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,GACpC,KAAK,GACP,WAAW,SAAS,MAAM,GACxB,OAAO,CAAC,MAAM,EAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,GACrC,KAAK,CAAC;AAEZ,KAAK,MAAM,CACT,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,WAAW,SAAS,MAAM,GAAG,MAAM,GAAG,SAAS,MAAM,EAAE,IACrD,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAC,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GACnD,IAAI,GACJ,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAC,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GACtD,IAAI,GACJ,KAAK,CAAC;AAER;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,UAAU,CACpB,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,WAAW,SAAS,MAAM,GAAG,MAAM,GAAG,SAAS,MAAM,EAAE,IACrD,CAAC,MAAM,CAAC,MAAM,EAAC,WAAW,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAC7C,OAAO,GACP,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GACnC,OAAO,CACL,UAAU,CACR,GAAG,MAAM,EAAE,EACX,WAAW,SAAS,MAAM,GACtB,QAAQ,CAAC,WAAW,CAAC,GACrB,WAAW,CAChB,CACF,SAAS,IAAI,GACZ,KAAK,GACL,IAAI,GACN,UAAU,CACR,QAAQ,CAAC,MAAM,CAAC,EAChB,WAAW,SAAS,MAAM,GACtB,GAAG,WAAW,EAAE,GAChB,WAAW,CAChB,CAAC"}
1
+ {"version":3,"file":"StartsWith.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/StartsWith.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,OAAO,EACR,oBAAwB;AAGzB,KAAK,KAAK,CACR,MAAM,SAAS,MAAM,EACrB,WAAW,SAAS,MAAM,GAAG,MAAM,IAClC,MAAM,SAAS,GAAG,WAAW,GAAG,MAAM,EAAE,GACzC,IAAI,GACJ,KAAK,CAAC;AAER,KAAK,OAAO,CACV,MAAM,SAAS,MAAM,EACrB,WAAW,SAAS,MAAM,GAAG,MAAM,GAAG,SAAS,MAAM,EAAE,IACrD,WAAW,SAAS,SAAS,MAAM,EAAE,GACvC,KAAK,CACH;IAAC,MAAM;CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,EAAE,GAAG,MAAM,EAChD,YAAY,CAAC,WAAW,CAAC,CAC1B,GACD,KAAK,CACH;IAAC,MAAM;CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,GAAG,MAAM,EAAE,GAAG,MAAM,EAChD,QAAQ,CAAC,WAAW,CAAC,CACtB,CAAC;AAEJ;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,UAAU,CACpB,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,WAAW,SAAS,MAAM,GAAG,MAAM,GAAG,SAAS,MAAM,EAAE,IACrD,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GACrC,OAAO,GACP,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GACxC,OAAO,GACP,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,SAAS,IAAI,GACnE,IAAI,GACJ,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { HasArray, IsUnion, UnionToTuple } from "../../index";
2
+ type Process<T extends readonly unknown[]> = HasArray<T> extends true ? true : false;
3
+ /**
4
+ * **UnionHasArray**`<T>`
5
+ *
6
+ * A boolean operator which tests whether T is:
7
+ *
8
+ * - indeed a _union_ type
9
+ * - and that one of the elements of the union is an array
10
+ * of some sort.
11
+ */
12
+ export type UnionHasArray<T> = IsUnion<T> extends true ? Process<UnionToTuple<T>> : false;
13
+ export {};
14
+ //# sourceMappingURL=UnionHasArray.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UnionHasArray.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/UnionHasArray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,oBAAwB;AAGlE,KAAK,OAAO,CACV,CAAC,SAAS,SAAS,OAAO,EAAE,IAC1B,QAAQ,CAAC,CAAC,CAAC,SAAS,IAAI,GAC1B,IAAI,GACJ,KAAK,CAAC;AAGR;;;;;;;;GAQG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GACpD,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GACxB,KAAK,CAAC"}
@@ -93,4 +93,10 @@ export * from "./IsUrl";
93
93
  export * from "./Network-operators";
94
94
  export * from "./PhoneOperators";
95
95
  export * from "./IsUnset";
96
+ export * from "./IsEmptyString";
97
+ export * from "./IsPositiveNumber";
98
+ export * from "./HaveSameNumericSign";
99
+ export * from "./HasArray";
100
+ export * from "./UnionHasArray";
101
+ export * from "./MaybeError";
96
102
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/boolean-logic/operators/index.ts"],"names":[],"mappings":"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"}
@@ -93,3 +93,9 @@ export * from "./IsUrl.js";
93
93
  export * from "./Network-operators.js";
94
94
  export * from "./PhoneOperators.js";
95
95
  export * from "./IsUnset.js";
96
+ export * from "./IsEmptyString.js";
97
+ export * from "./IsPositiveNumber.js";
98
+ export * from "./HaveSameNumericSign.js";
99
+ export * from "./HasArray.js";
100
+ export * from "./UnionHasArray.js";
101
+ export * from "./MaybeError.js";
@@ -0,0 +1,30 @@
1
+ import { Marked } from "../../constants/index";
2
+ import { As, Container, Dictionary, EmptyObject, Tuple, IsEmptyString, IsNever, IsNull, IsUndefined, Or, IsEmptyContainer, RemoveMarked, Keys, AfterFirst, First } from "../index";
3
+ type IsEmpty<T> = Or<[
4
+ IsNull<T>,
5
+ T extends Container ? IsEmptyContainer<T> : false,
6
+ IsEmptyString<T>,
7
+ IsUndefined<T>,
8
+ IsNever<T>
9
+ ]> extends true ? true : false;
10
+ type ProcessTup<T extends Tuple, Result extends Tuple = []> = [] extends T ? Result : ProcessTup<AfterFirst<T>, [
11
+ ...Result,
12
+ IsEmpty<First<T>> extends true ? Marked : First<T>
13
+ ]>;
14
+ type ProcessObj<TObj extends Dictionary, TKeys extends readonly (keyof TObj)[], TResult extends Dictionary = EmptyObject> = [] extends TKeys ? TResult : ProcessObj<TObj, AfterFirst<TKeys>, IsEmpty<First<TKeys>> extends true ? TResult & Record<First<TKeys>, TObj[First<TKeys>]> : TResult>;
15
+ /**
16
+ * **RemoveEmpty**
17
+ *
18
+ * A _container_ utility looks at all immediate keys of the
19
+ * container and removes all which are "empty". Being empty means:
20
+ *
21
+ * - is either `null`, `undefined`, or `never`
22
+ * - has an _empty string literal_ of `""`
23
+ * - is an empty container
24
+ *
25
+ * For any value `T` which is not a container nor a union type, the value
26
+ * is just passed through.
27
+ */
28
+ export type RemoveEmpty<T> = T extends Tuple ? As<RemoveMarked<ProcessTup<T>>, readonly unknown[]> : T extends Dictionary ? As<RemoveMarked<ProcessObj<T, Keys<T>>>, Dictionary> : T;
29
+ export {};
30
+ //# sourceMappingURL=RemoveEmpty.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RemoveEmpty.d.ts","sourceRoot":"","sources":["../../../src/types/containers/RemoveEmpty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,8BAA4B;AAE7C,OAAO,EACL,EAAE,EACF,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,EACL,aAAa,EACb,OAAO,EACP,MAAM,EACN,WAAW,EACX,EAAE,EACF,gBAAgB,EAChB,YAAY,EACZ,IAAI,EACJ,UAAU,EAAE,KAAK,EAClB,iBAAwB;AAGzB,KAAK,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IACnB,MAAM,CAAC,CAAC,CAAC;IACT,CAAC,SAAS,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,GAAG,KAAK;IACjD,aAAa,CAAC,CAAC,CAAC;IAChB,WAAW,CAAC,CAAC,CAAC;IACd,OAAO,CAAC,CAAC,CAAC;CACX,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AAG/B,KAAK,UAAU,CACb,CAAC,SAAS,KAAK,EACf,MAAM,SAAS,KAAK,GAAE,EAAE,IACtB,EAAE,SAAS,CAAC,GACd,MAAM,GACN,UAAU,CACR,UAAU,CAAC,CAAC,CAAC,EACb;IACE,GAAG,MAAM;IACT,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;CACnD,CACF,CAAC;AAEJ,KAAK,UAAU,CACX,IAAI,SAAS,UAAU,EACvB,KAAK,SAAS,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE,EACrC,OAAO,SAAS,UAAU,GAAG,WAAW,IACxC,EAAE,SAAS,KAAK,GAClB,OAAO,GACP,UAAU,CACR,IAAI,EACJ,UAAU,CAAC,KAAK,CAAC,EACjB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,IAAI,GAC9B,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAClD,OAAO,CACZ,CAAA;AAIH;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,GAC1C,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC,GACnD,CAAC,SAAS,UAAU,GACpB,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GACpD,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -1,4 +1,4 @@
1
- import { MARKED } from "../../constants/index";
1
+ import type { MARKED } from "../../constants/index";
2
2
  import { DoesExtend, UnionToTuple, First, AfterFirst, NumericKeys, RemoveIndexKeys, Container, EmptyObject, Dictionary, ObjectKey, Tuple } from "../index";
3
3
  type Marked = typeof MARKED;
4
4
  type _Keys<T extends object> = UnionToTuple<keyof RemoveIndexKeys<T>> extends readonly ObjectKey[] ? UnionToTuple<keyof RemoveIndexKeys<T>> : never;
@@ -1 +1 @@
1
- {"version":3,"file":"RemoveMarked.d.ts","sourceRoot":"","sources":["../../../src/types/containers/RemoveMarked.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,8BAA4B;AAC7C,OAAO,EACL,UAAU,EACV,YAAY,EACZ,KAAK,EACL,UAAU,EACV,WAAW,EACX,eAAe,EACf,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EACrD,iBAAwB;AAGzB,KAAK,MAAM,GAAG,OAAO,MAAM,CAAC;AAE5B,KAAK,KAAK,CAAC,CAAC,SAAS,MAAM,IAAI,YAAY,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,SACrE,SAAS,SAAS,EAAE,GAChB,YAAY,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,GACtC,KAAK,CAAC;AAEV,KAAK,OAAO,CACV,CAAC,SAAS,SAAS,EACnB,KAAK,SAAS,SAAS,WAAW,EAAE,EACpC,QAAQ,SAAS,SAAS,GAAG,CAAC,SAAS,SAAS,OAAO,EAAE,GAAG,EAAE,GAAG,WAAW,IAC1E,EAAE,SAAS,KAAK,GAClB,QAAQ,GACR,KAAK,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,GAC1B,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,IAAI,GAC9C,OAAO,CAAC,CAAC,EAAC,UAAU,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,GACtC,OAAO,CACL,CAAC,EACD,UAAU,CAAC,KAAK,CAAC,EACjB,KAAK,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,GACxB,QAAQ,SAAS,SAAS,OAAO,EAAE,GACjC,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAC9B,QAAQ,SAAS,UAAU,GACzB,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAChD,KAAK,GACT,KAAK,CACV,GAEH,KAAK,CAAA;AAET;;;;GAIG;AACH,MAAM,MAAM,YAAY,CACtB,CAAC,SAAS,SAAS,IACjB,OAAO,CACT,CAAC,EACD,CAAC,SAAS,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,GAAI,KAAK,CAAC,CAAC,CAAC,CAC7C,CAAA"}
1
+ {"version":3,"file":"RemoveMarked.d.ts","sourceRoot":"","sources":["../../../src/types/containers/RemoveMarked.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,8BAA4B;AAClD,OAAO,EACL,UAAU,EACV,YAAY,EACZ,KAAK,EACL,UAAU,EACV,WAAW,EACX,eAAe,EACf,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EACrD,iBAAwB;AAGzB,KAAK,MAAM,GAAG,OAAO,MAAM,CAAC;AAE5B,KAAK,KAAK,CAAC,CAAC,SAAS,MAAM,IAAI,YAAY,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,SACrE,SAAS,SAAS,EAAE,GAChB,YAAY,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,GACtC,KAAK,CAAC;AAEV,KAAK,OAAO,CACV,CAAC,SAAS,SAAS,EACnB,KAAK,SAAS,SAAS,WAAW,EAAE,EACpC,QAAQ,SAAS,SAAS,GAAG,CAAC,SAAS,SAAS,OAAO,EAAE,GAAG,EAAE,GAAG,WAAW,IAC1E,EAAE,SAAS,KAAK,GAClB,QAAQ,GACR,KAAK,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,GAC1B,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,IAAI,GAC9C,OAAO,CAAC,CAAC,EAAC,UAAU,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,GACtC,OAAO,CACL,CAAC,EACD,UAAU,CAAC,KAAK,CAAC,EACjB,KAAK,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,GACxB,QAAQ,SAAS,SAAS,OAAO,EAAE,GACjC,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAC9B,QAAQ,SAAS,UAAU,GACzB,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAChD,KAAK,GACT,KAAK,CACV,GAEH,KAAK,CAAA;AAET;;;;GAIG;AACH,MAAM,MAAM,YAAY,CACtB,CAAC,SAAS,SAAS,IACjB,OAAO,CACT,CAAC,EACD,CAAC,SAAS,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,GAAI,KAAK,CAAC,CAAC,CAAC,CAC7C,CAAA"}
@@ -1,10 +1,4 @@
1
- import { Container, EmptyObject, Dictionary, ObjectKey, Tuple } from "../base-types";
2
- import { IsUndefined } from "../boolean-logic/operators/IsUndefined";
3
- import { RemoveIndexKeys } from "../dictionary/RemoveIndexKeys";
4
- import { NumericKeys } from "../lists";
5
- import { AfterFirst } from "../lists/AfterFirst";
6
- import { First } from "../lists/First";
7
- import { UnionToTuple } from "../type-conversion/UnionToTuple";
1
+ import { Container, EmptyObject, Dictionary, ObjectKey, Tuple, IsUndefined, RemoveIndexKeys, NumericKeys, AfterFirst, First, UnionToTuple } from "../index";
8
2
  type _Keys<T extends object> = UnionToTuple<keyof RemoveIndexKeys<T>> extends readonly ObjectKey[] ? UnionToTuple<keyof RemoveIndexKeys<T>> : never;
9
3
  type Process<T extends Container, TKeys extends readonly PropertyKey[], TResults extends Container = T extends readonly unknown[] ? [] : EmptyObject> = [] extends TKeys ? TResults : First<TKeys> extends keyof T ? IsUndefined<T[First<TKeys>]> extends true ? Process<T, AfterFirst<TKeys>, TResults> : Process<T, AfterFirst<TKeys>, First<TKeys> extends keyof T ? TResults extends readonly unknown[] ? [...TResults, T[First<TKeys>]] : TResults extends Dictionary ? TResults & Record<First<TKeys>, T[First<TKeys>]> : never : never> : never;
10
4
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"RemoveUndefined.d.ts","sourceRoot":"","sources":["../../../src/types/containers/RemoveUndefined.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,KAAK,KAAK,CAAC,CAAC,SAAS,MAAM,IAAI,YAAY,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,SACrE,SAAS,SAAS,EAAE,GAChB,YAAY,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,GACtC,KAAK,CAAC;AAEV,KAAK,OAAO,CACV,CAAC,SAAS,SAAS,EACnB,KAAK,SAAS,SAAS,WAAW,EAAE,EACpC,QAAQ,SAAS,SAAS,GAAG,CAAC,SAAS,SAAS,OAAO,EAAE,GAAG,EAAE,GAAG,WAAW,IAC1E,EAAE,SAAS,KAAK,GAClB,QAAQ,GACR,KAAK,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,GAExB,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAAI,GACvC,OAAO,CAAC,CAAC,EAAC,UAAU,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,GACtC,OAAO,CACP,CAAC,EACD,UAAU,CAAC,KAAK,CAAC,EACjB,KAAK,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,GACxB,QAAQ,SAAS,SAAS,OAAO,EAAE,GACjC,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAC9B,QAAQ,SAAS,UAAU,GACzB,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAChD,KAAK,GACT,KAAK,CACV,GACH,KAAK,CAAA;AAGT;;;;GAIG;AACH,MAAM,MAAM,eAAe,CACzB,CAAC,SAAS,SAAS,IACjB,OAAO,CACT,CAAC,EACD,CAAC,SAAS,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,GAAI,KAAK,CAAC,CAAC,CAAC,CAC7C,CAAA"}
1
+ {"version":3,"file":"RemoveUndefined.d.ts","sourceRoot":"","sources":["../../../src/types/containers/RemoveUndefined.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,WAAW,EACX,UAAU,EACV,SAAS,EACT,KAAK,EACL,WAAW,EACX,eAAe,EACf,WAAW,EACX,UAAU,EACV,KAAK,EACL,YAAY,EACb,iBAAwB;AAGzB,KAAK,KAAK,CAAC,CAAC,SAAS,MAAM,IAAI,YAAY,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,SACrE,SAAS,SAAS,EAAE,GAChB,YAAY,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,GACtC,KAAK,CAAC;AAEV,KAAK,OAAO,CACV,CAAC,SAAS,SAAS,EACnB,KAAK,SAAS,SAAS,WAAW,EAAE,EACpC,QAAQ,SAAS,SAAS,GAAG,CAAC,SAAS,SAAS,OAAO,EAAE,GAAG,EAAE,GAAG,WAAW,IAC1E,EAAE,SAAS,KAAK,GAClB,QAAQ,GACR,KAAK,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,GAExB,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAAI,GACvC,OAAO,CAAC,CAAC,EAAC,UAAU,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,GACtC,OAAO,CACP,CAAC,EACD,UAAU,CAAC,KAAK,CAAC,EACjB,KAAK,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,GACxB,QAAQ,SAAS,SAAS,OAAO,EAAE,GACjC,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAC9B,QAAQ,SAAS,UAAU,GACzB,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAChD,KAAK,GACT,KAAK,CACV,GACH,KAAK,CAAA;AAGT;;;;GAIG;AACH,MAAM,MAAM,eAAe,CACzB,CAAC,SAAS,SAAS,IACjB,OAAO,CACT,CAAC,EACD,CAAC,SAAS,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,GAAI,KAAK,CAAC,CAAC,CAAC,CAC7C,CAAA"}
@@ -3,4 +3,5 @@ export * from "./IsNonEmptyContainer";
3
3
  export * from "./RemoveNever";
4
4
  export * from "./RemoveMarked";
5
5
  export * from "./RemoveUndefined";
6
+ export * from "./RemoveEmpty";
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/containers/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/containers/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC"}
@@ -3,3 +3,4 @@ export * from "./IsNonEmptyContainer.js";
3
3
  export * from "./RemoveNever.js";
4
4
  export * from "./RemoveMarked.js";
5
5
  export * from "./RemoveUndefined.js";
6
+ export * from "./RemoveEmpty.js";
@@ -1,6 +1,4 @@
1
- import { Dictionary } from "../base-types";
2
- import { ExpandRecursively } from "../literals";
3
- import { CreateKV } from "./CreateKV";
1
+ import { Dictionary, ExpandRecursively, CreateKV } from "../index";
4
2
  type BuildObj<T extends readonly string[] | Dictionary | [Dictionary], TType> = T extends Dictionary ? T : T extends [Dictionary] ? T[0] : T extends string[] ? CreateKV<T, TType> : never;
5
3
  /**
6
4
  * **EnsureKeys**`<TObj,TKeys,[TType]>`
@@ -1 +1 @@
1
- {"version":3,"file":"EnsureKeys.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/EnsureKeys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,KAAK,QAAQ,CACX,CAAC,SAAS,SAAS,MAAM,EAAE,GAAG,UAAU,GAAG,CAAC,UAAU,CAAC,EACvD,KAAK,IACH,CAAC,SAAS,UAAU,GACtB,CAAC,GACD,CAAC,SAAS,CAAC,UAAU,CAAC,GACtB,CAAC,CAAC,CAAC,CAAC,GACJ,CAAC,SAAS,MAAM,EAAE,GAClB,QAAQ,CAAC,CAAC,EAAC,KAAK,CAAC,GACjB,KAAK,CAAC;AAGR;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,UAAU,CACpB,IAAI,SAAS,MAAM,EACnB,KAAK,SAAS,SAAS,MAAM,EAAE,GAAG,UAAU,GAAG,CAAC,UAAU,CAAC,EAC3D,KAAK,GAAG,OAAO,IACb,iBAAiB,CACnB,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAC9B,CAAA"}
1
+ {"version":3,"file":"EnsureKeys.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/EnsureKeys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAC,QAAQ,EAAG,iBAAwB;AAE1E,KAAK,QAAQ,CACX,CAAC,SAAS,SAAS,MAAM,EAAE,GAAG,UAAU,GAAG,CAAC,UAAU,CAAC,EACvD,KAAK,IACH,CAAC,SAAS,UAAU,GACtB,CAAC,GACD,CAAC,SAAS,CAAC,UAAU,CAAC,GACtB,CAAC,CAAC,CAAC,CAAC,GACJ,CAAC,SAAS,MAAM,EAAE,GAClB,QAAQ,CAAC,CAAC,EAAC,KAAK,CAAC,GACjB,KAAK,CAAC;AAGR;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,UAAU,CACpB,IAAI,SAAS,MAAM,EACnB,KAAK,SAAS,SAAS,MAAM,EAAE,GAAG,UAAU,GAAG,CAAC,UAAU,CAAC,EAC3D,KAAK,GAAG,OAAO,IACb,iBAAiB,CACnB,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAC9B,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { Container, ObjectKey, UnionToTuple, NumericKeys, RemoveIndexKeys, IsVueRef, IsTuple, IsObjectLiteral, AfterFirst, StartsWith, First, TupleToUnion, As, Tuple, IsWideUnion } from "../index";
1
+ import type { Container, ObjectKey, UnionToTuple, NumericKeys, RemoveIndexKeys, IsVueRef, IsTuple, IsObjectLiteral, AfterFirst, First, TupleToUnion, As, Tuple, IsWideUnion } from "../index";
2
2
  type _Keys<T extends object> = UnionToTuple<keyof RemoveIndexKeys<T>>;
3
3
  type GetKeys<T extends object> = IsVueRef<T> extends true ? ["value"] : _Keys<T> extends [symbol] ? ObjectKey[] : _Keys<T> extends [] ? UnionToTuple<keyof T> extends [ObjectKey] ? (keyof T)[] : ObjectKey[] : _Keys<T>;
4
4
  type ProcessObj<TContainer extends object> = GetKeys<TContainer>;
@@ -21,7 +21,7 @@ type Process<TContainer extends Container> = TContainer extends readonly unknown
21
21
  * **Related:** `ValidKey`, `PublicKeys`
22
22
  */
23
23
  export type Keys<TContainer extends Container> = TContainer extends Tuple ? As<Process<TContainer>, readonly number[]> : As<Process<TContainer>, readonly ObjectKey[]>;
24
- type _Public<TInput extends readonly PropertyKey[], TOutput extends readonly PropertyKey[] = []> = [] extends TInput ? TOutput : _Public<AfterFirst<TInput>, First<TInput> extends string ? StartsWith<First<TInput>, "_"> extends true ? TOutput : [...TOutput, First<TInput>] : TOutput>;
24
+ type _Public<TInput extends readonly PropertyKey[], TOutput extends readonly PropertyKey[] = []> = [] extends TInput ? TOutput : _Public<AfterFirst<TInput>, First<TInput> extends `_${string}` ? TOutput : [...TOutput, First<TInput>]>;
25
25
  /**
26
26
  * **PublicKeys**`<TContainer>`
27
27
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Keys.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/Keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Keys.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/Keys.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AnyObject, If, IsEqual, Unset } from "../index";
1
+ import { AnyObject, EmptyObject, If, IsEqual, Unset } from "../index";
2
2
  /**
3
3
  * **OptionalKeys**`<T,[V]>`
4
4
  *
@@ -19,7 +19,7 @@ import { AnyObject, If, IsEqual, Unset } from "../index";
19
19
  * **Related:** `RequiredKeys`, `RequiredProps`
20
20
  */
21
21
  export type OptionalKeys<T extends AnyObject, V = Unset> = {
22
- [K in keyof T]-?: {} extends {
22
+ [K in keyof T]-?: EmptyObject extends {
23
23
  [P in K]: T[K];
24
24
  } ? If<IsEqual<V, Unset>, K, K extends V ? K : never> : never;
25
25
  }[keyof T];
@@ -1 +1 @@
1
- {"version":3,"file":"OptionalKeys.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/OptionalKeys.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,SAAS,EACT,EAAE,EACF,OAAO,EACP,KAAK,EACL,iBAAwB;AAE1B;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,YAAY,CACtB,CAAC,SAAS,SAAS,EACnB,CAAC,GAAG,KAAK,IACP;KACD,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS;SAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KAAE,GAC3C,EAAE,CAAC,OAAO,CAAC,CAAC,EAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAChD,KAAK;CACV,CAAC,MAAM,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"OptionalKeys.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/OptionalKeys.ts"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EACT,WAAW,EACX,EAAE,EACF,OAAO,EACP,KAAK,EACL,iBAAwB;AAE1B;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,YAAY,CACtB,CAAC,SAAS,SAAS,EACnB,CAAC,GAAG,KAAK,IACP;KACD,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,WAAW,SAAS;SAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KAAE,GACpD,EAAE,CAAC,OAAO,CAAC,CAAC,EAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAChD,KAAK;CACV,CAAC,MAAM,CAAC,CAAC,CAAC"}
@@ -1,2 +1 @@
1
- /* eslint-disable @typescript-eslint/ban-types */
2
1
  export {};
@@ -1,4 +1,4 @@
1
- import { ExpandRecursively } from "../index";
1
+ import { EmptyObject, ExpandRecursively } from "../index";
2
2
  /**
3
3
  * Given a dictionary of type `<T>`, this utility function will
4
4
  * make the `<R>` generic property _required_ (use a union to make
@@ -9,5 +9,5 @@ import { ExpandRecursively } from "../index";
9
9
  * type Example = RequireProps<{foo?: string, bar?: number}, "foo">;
10
10
  * ```
11
11
  */
12
- export type RequireProps<T extends {}, R extends keyof T> = ExpandRecursively<Required<Pick<T, R>> & T>;
12
+ export type RequireProps<T extends EmptyObject, R extends keyof T> = ExpandRecursively<Required<Pick<T, R>> & T>;
13
13
  //# sourceMappingURL=RequireProps.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RequireProps.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/RequireProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,iBAAwB;AAEpD;;;;;;;;;GASG;AAEH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,iBAAiB,CAC3E,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CACzB,CAAC"}
1
+ {"version":3,"file":"RequireProps.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/RequireProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,iBAAwB;AAEjE;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,iBAAiB,CACpF,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CACzB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { As, Dictionary, IfUnset, ObjectKey, Unset } from "../index";
1
+ import { As, Dictionary, EmptyObject, IfUnset, ObjectKey, Unset } from "../index";
2
2
  /**
3
3
  * **RequiredKeys**`<T,[V]>`
4
4
  *
@@ -12,7 +12,7 @@ import { As, Dictionary, IfUnset, ObjectKey, Unset } from "../index";
12
12
  * **Related:** `OptionalKeys`, `RequiredProps`
13
13
  */
14
14
  export type RequiredKeys<T extends Dictionary, V = Unset> = As<{
15
- [K in keyof T]-?: {} extends {
15
+ [K in keyof T]-?: EmptyObject extends {
16
16
  [P in K]: T[K];
17
17
  } ? never : IfUnset<V, K, T[K] extends V ? K : never>;
18
18
  }[keyof T], ObjectKey>;
@@ -1 +1 @@
1
- {"version":3,"file":"RequiredKeys.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/RequiredKeys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAG,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAwB;AAE7E;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,CACtB,CAAC,SAAS,UAAU,EACpB,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;KAEf,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS;SAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KAAE,GAC3C,KAAK,GACL,OAAO,CACL,CAAC,EACD,CAAC,EACD,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GACV,CAAC,GACD,KAAK,CACV;CACN,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC"}
1
+ {"version":3,"file":"RequiredKeys.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/RequiredKeys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAG,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAwB;AAE1F;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,CACtB,CAAC,SAAS,UAAU,EACpB,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;KACf,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,WAAW,SAAS;SAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KAAE,GACpD,KAAK,GACL,OAAO,CACL,CAAC,EACD,CAAC,EACD,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GACV,CAAC,GACD,KAAK,CACV;CACN,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC"}
@@ -1,6 +1,5 @@
1
- import { MARKED } from "../../constants/index";
2
- import { Compare, ExpandRecursively, If, Dictionary } from "../index";
3
- import { RemoveMarked } from "../containers/RemoveMarked";
1
+ import type { MARKED } from "../../constants/index";
2
+ import { Compare, ExpandRecursively, If, Dictionary, RemoveMarked } from "../index";
4
3
  type Marked = typeof MARKED;
5
4
  type Process<TObj extends Dictionary, TValue, TOp extends "equals" | "extends"> = RemoveMarked<{
6
5
  [K in keyof TObj]: If<Compare<TObj[K], TOp, TValue>, TObj[K], Marked>;
@@ -1 +1 @@
1
- {"version":3,"file":"WithValue.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/WithValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,8BAA4B;AAC7C,OAAO,EACL,OAAO,EACP,iBAAiB,EACjB,EAAE,EACF,UAAU,EACX,iBAAwB;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,KAAK,MAAM,GAAG,OAAO,MAAM,CAAC;AAE5B,KAAK,OAAO,CACV,IAAI,SAAS,UAAU,EACvB,MAAM,EACN,GAAG,SAAS,QAAQ,GAAG,SAAS,IAC9B,YAAY,CAAC;KACZ,CAAC,IAAI,MAAM,IAAI,GAAG,EAAE,CACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAC7B,IAAI,CAAC,CAAC,CAAC,EACP,MAAM,CACP;CACJ,CAAC,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,SAAS,CACnB,IAAI,SAAS,UAAU,EACvB,MAAM,EACN,GAAG,SAAS,QAAQ,GAAG,SAAS,GAAG,SAAS,IAC1C,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAC,MAAM,EAAC,GAAG,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"WithValue.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary/WithValue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,8BAA4B;AAClD,OAAO,EACL,OAAO,EACP,iBAAiB,EACjB,EAAE,EACF,UAAU,EACV,YAAY,EACb,iBAAwB;AAGzB,KAAK,MAAM,GAAG,OAAO,MAAM,CAAC;AAE5B,KAAK,OAAO,CACV,IAAI,SAAS,UAAU,EACvB,MAAM,EACN,GAAG,SAAS,QAAQ,GAAG,SAAS,IAC9B,YAAY,CAAC;KACZ,CAAC,IAAI,MAAM,IAAI,GAAG,EAAE,CACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAC7B,IAAI,CAAC,CAAC,CAAC,EACP,MAAM,CACP;CACJ,CAAC,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,SAAS,CACnB,IAAI,SAAS,UAAU,EACvB,MAAM,EACN,GAAG,SAAS,QAAQ,GAAG,SAAS,GAAG,SAAS,IAC1C,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAC,MAAM,EAAC,GAAG,CAAC,CAAC,CAAA"}
@@ -1,5 +1,5 @@
1
- import { ExpandRecursively, TupleToUnion, AsArray, IfLength, ObjectKey, Dictionary, ExplicitlyEmptyObject, RemoveIndexKeys } from "../index";
2
- type Process<TObj extends Dictionary, TKeys extends ObjectKey | readonly ObjectKey[]> = IfLength<AsArray<TKeys>, 0, TObj, ExpandRecursively<Omit<TObj, TupleToUnion<AsArray<TKeys>>>> extends ExplicitlyEmptyObject ? ExplicitlyEmptyObject : ExpandRecursively<Omit<TObj, TupleToUnion<AsArray<TKeys>>>>>;
1
+ import { TupleToUnion, ObjectKey, Dictionary, ExpandDictionary } from "../index";
2
+ type Process<TObj extends Dictionary, TKeys extends ObjectKey> = [] extends TKeys ? TObj : Omit<TObj, TKeys>;
3
3
  /**
4
4
  * **WithoutKeys**`<TObj, TKeys>`
5
5
  *
@@ -7,6 +7,6 @@ type Process<TObj extends Dictionary, TKeys extends ObjectKey | readonly ObjectK
7
7
  * functionally equivalent to the `Omit<T,U>` built-in but rather than
8
8
  * taking a union type it takes an array of keys.
9
9
  */
10
- export type WithoutKeys<TObj extends Dictionary, TKeys extends ObjectKey | readonly ObjectKey[]> = ExpandRecursively<RemoveIndexKeys<Process<TObj, TKeys>>>;
10
+ export type WithoutKeys<TObj extends Dictionary, TKeys extends ObjectKey | readonly ObjectKey[]> = TKeys extends readonly ObjectKey[] ? Process<TObj, TupleToUnion<TKeys>> : ExpandDictionary<Process<TObj, TKeys extends readonly ObjectKey[] ? TupleToUnion<TKeys> : TKeys>>;
11
11
  export {};
12
12
  //# sourceMappingURL=WithoutKeys.d.ts.map