typia 9.7.0 → 9.7.2

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 (407) hide show
  1. package/lib/AssertionGuard.d.mts +27 -25
  2. package/lib/AssertionGuard.d.ts +27 -25
  3. package/lib/CamelCase.d.mts +1 -1
  4. package/lib/CamelCase.d.ts +1 -1
  5. package/lib/IRandomGenerator.d.mts +44 -42
  6. package/lib/IRandomGenerator.d.ts +44 -42
  7. package/lib/IReadableURLSearchParams.d.mts +2 -2
  8. package/lib/IReadableURLSearchParams.d.ts +2 -2
  9. package/lib/PascalCase.d.mts +1 -1
  10. package/lib/PascalCase.d.ts +1 -1
  11. package/lib/Primitive.d.mts +20 -22
  12. package/lib/Primitive.d.ts +20 -22
  13. package/lib/Resolved.d.mts +16 -18
  14. package/lib/Resolved.d.ts +16 -18
  15. package/lib/SnakeCase.d.mts +3 -2
  16. package/lib/SnakeCase.d.ts +3 -2
  17. package/lib/TypeGuardError.d.mts +88 -61
  18. package/lib/TypeGuardError.d.ts +88 -61
  19. package/lib/TypeGuardError.js +40 -29
  20. package/lib/TypeGuardError.js.map +1 -1
  21. package/lib/TypeGuardError.mjs +70 -48
  22. package/lib/factories/MetadataCollection.js +4 -12
  23. package/lib/factories/MetadataCollection.js.map +1 -1
  24. package/lib/factories/MetadataCollection.mjs +4 -12
  25. package/lib/factories/MetadataCommentTagFactory.js +5 -15
  26. package/lib/factories/MetadataCommentTagFactory.js.map +1 -1
  27. package/lib/factories/MetadataCommentTagFactory.mjs +5 -15
  28. package/lib/factories/MetadataFactory.js +1 -3
  29. package/lib/factories/MetadataFactory.js.map +1 -1
  30. package/lib/factories/MetadataFactory.mjs +1 -3
  31. package/lib/factories/ProtobufFactory.js +1 -3
  32. package/lib/factories/ProtobufFactory.js.map +1 -1
  33. package/lib/factories/ProtobufFactory.mjs +1 -3
  34. package/lib/functional.d.mts +196 -195
  35. package/lib/functional.d.ts +196 -195
  36. package/lib/functional.js +18 -54
  37. package/lib/functional.js.map +1 -1
  38. package/lib/functional.mjs +18 -54
  39. package/lib/http.d.mts +303 -319
  40. package/lib/http.d.ts +303 -319
  41. package/lib/http.js +26 -78
  42. package/lib/http.js.map +1 -1
  43. package/lib/http.mjs +26 -78
  44. package/lib/internal/_ProtobufReader.d.mts +3 -9
  45. package/lib/internal/_ProtobufReader.d.ts +3 -9
  46. package/lib/internal/_ProtobufReader.js.map +1 -1
  47. package/lib/internal/_ProtobufReader.mjs +3 -9
  48. package/lib/internal/_ProtobufSizer.d.mts +4 -12
  49. package/lib/internal/_ProtobufSizer.d.ts +4 -12
  50. package/lib/internal/_ProtobufSizer.js.map +1 -1
  51. package/lib/internal/_ProtobufSizer.mjs +4 -12
  52. package/lib/internal/_ProtobufWriter.d.mts +5 -15
  53. package/lib/internal/_ProtobufWriter.d.ts +5 -15
  54. package/lib/internal/_ProtobufWriter.js.map +1 -1
  55. package/lib/internal/_ProtobufWriter.mjs +5 -15
  56. package/lib/internal/_jsonStringifyString.d.mts +4 -4
  57. package/lib/internal/_jsonStringifyString.d.ts +4 -4
  58. package/lib/internal/_jsonStringifyString.js +4 -4
  59. package/lib/internal/_jsonStringifyString.mjs +4 -4
  60. package/lib/json.d.mts +174 -195
  61. package/lib/json.d.ts +174 -195
  62. package/lib/json.js +16 -48
  63. package/lib/json.js.map +1 -1
  64. package/lib/json.mjs +16 -48
  65. package/lib/llm.d.mts +275 -192
  66. package/lib/llm.d.ts +275 -192
  67. package/lib/llm.js +4 -12
  68. package/lib/llm.js.map +1 -1
  69. package/lib/llm.mjs +4 -12
  70. package/lib/misc.d.mts +149 -172
  71. package/lib/misc.d.ts +149 -172
  72. package/lib/misc.js +17 -51
  73. package/lib/misc.js.map +1 -1
  74. package/lib/misc.mjs +17 -51
  75. package/lib/module.d.mts +263 -275
  76. package/lib/module.d.ts +263 -275
  77. package/lib/module.js +18 -54
  78. package/lib/module.js.map +1 -1
  79. package/lib/module.mjs +18 -54
  80. package/lib/notations.d.mts +153 -174
  81. package/lib/notations.d.ts +153 -174
  82. package/lib/notations.js +24 -72
  83. package/lib/notations.js.map +1 -1
  84. package/lib/notations.mjs +24 -72
  85. package/lib/programmers/FeatureProgrammer.d.mts +19 -41
  86. package/lib/programmers/FeatureProgrammer.d.ts +19 -41
  87. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  88. package/lib/programmers/ImportProgrammer.js +3 -9
  89. package/lib/programmers/ImportProgrammer.js.map +1 -1
  90. package/lib/programmers/ImportProgrammer.mjs +3 -9
  91. package/lib/programmers/RandomProgrammer.js +6 -0
  92. package/lib/programmers/RandomProgrammer.js.map +1 -1
  93. package/lib/programmers/RandomProgrammer.mjs +6 -0
  94. package/lib/programmers/helpers/ProtobufWire.d.mts +13 -13
  95. package/lib/programmers/helpers/ProtobufWire.d.ts +13 -13
  96. package/lib/programmers/internal/check_array_length.js +2 -6
  97. package/lib/programmers/internal/check_array_length.js.map +1 -1
  98. package/lib/programmers/internal/check_array_length.mjs +2 -6
  99. package/lib/programmers/internal/check_bigint.js +2 -6
  100. package/lib/programmers/internal/check_bigint.js.map +1 -1
  101. package/lib/programmers/internal/check_bigint.mjs +2 -6
  102. package/lib/programmers/internal/check_dynamic_key.js +2 -6
  103. package/lib/programmers/internal/check_dynamic_key.js.map +1 -1
  104. package/lib/programmers/internal/check_dynamic_key.mjs +2 -6
  105. package/lib/programmers/internal/check_dynamic_properties.js +3 -9
  106. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  107. package/lib/programmers/internal/check_dynamic_properties.mjs +3 -9
  108. package/lib/programmers/internal/check_everything.js +1 -3
  109. package/lib/programmers/internal/check_everything.js.map +1 -1
  110. package/lib/programmers/internal/check_everything.mjs +1 -3
  111. package/lib/programmers/internal/check_native.js +2 -6
  112. package/lib/programmers/internal/check_native.js.map +1 -1
  113. package/lib/programmers/internal/check_native.mjs +2 -6
  114. package/lib/programmers/internal/check_number.js +2 -6
  115. package/lib/programmers/internal/check_number.js.map +1 -1
  116. package/lib/programmers/internal/check_number.mjs +2 -6
  117. package/lib/programmers/internal/check_object.js +2 -6
  118. package/lib/programmers/internal/check_object.js.map +1 -1
  119. package/lib/programmers/internal/check_object.mjs +2 -6
  120. package/lib/programmers/internal/check_string.js +2 -6
  121. package/lib/programmers/internal/check_string.js.map +1 -1
  122. package/lib/programmers/internal/check_string.mjs +2 -6
  123. package/lib/programmers/internal/check_template.js +1 -3
  124. package/lib/programmers/internal/check_template.js.map +1 -1
  125. package/lib/programmers/internal/check_template.mjs +1 -3
  126. package/lib/programmers/internal/check_union_array_like.js +1 -3
  127. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  128. package/lib/programmers/internal/check_union_array_like.mjs +1 -3
  129. package/lib/programmers/internal/decode_union_object.js +2 -6
  130. package/lib/programmers/internal/decode_union_object.js.map +1 -1
  131. package/lib/programmers/internal/decode_union_object.mjs +2 -6
  132. package/lib/programmers/internal/feature_object_entries.js +1 -3
  133. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  134. package/lib/programmers/internal/feature_object_entries.mjs +1 -3
  135. package/lib/programmers/internal/json_schema_escaped.js +2 -6
  136. package/lib/programmers/internal/json_schema_escaped.js.map +1 -1
  137. package/lib/programmers/internal/json_schema_escaped.mjs +2 -6
  138. package/lib/programmers/internal/json_schema_object.js +3 -9
  139. package/lib/programmers/internal/json_schema_object.js.map +1 -1
  140. package/lib/programmers/internal/json_schema_object.mjs +3 -9
  141. package/lib/programmers/internal/metadata_to_pattern.js +1 -3
  142. package/lib/programmers/internal/metadata_to_pattern.js.map +1 -1
  143. package/lib/programmers/internal/metadata_to_pattern.mjs +1 -3
  144. package/lib/programmers/internal/postfix_of_tuple.js +1 -3
  145. package/lib/programmers/internal/postfix_of_tuple.js.map +1 -1
  146. package/lib/programmers/internal/postfix_of_tuple.mjs +1 -3
  147. package/lib/programmers/internal/prune_object_properties.js +1 -3
  148. package/lib/programmers/internal/prune_object_properties.js.map +1 -1
  149. package/lib/programmers/internal/prune_object_properties.mjs +1 -3
  150. package/lib/programmers/internal/stringify_dynamic_properties.js +2 -6
  151. package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
  152. package/lib/programmers/internal/stringify_dynamic_properties.mjs +2 -6
  153. package/lib/programmers/internal/stringify_native.js +1 -3
  154. package/lib/programmers/internal/stringify_native.js.map +1 -1
  155. package/lib/programmers/internal/stringify_native.mjs +1 -3
  156. package/lib/programmers/internal/stringify_regular_properties.js +2 -6
  157. package/lib/programmers/internal/stringify_regular_properties.js.map +1 -1
  158. package/lib/programmers/internal/stringify_regular_properties.mjs +2 -6
  159. package/lib/programmers/internal/template_to_pattern.js +1 -3
  160. package/lib/programmers/internal/template_to_pattern.js.map +1 -1
  161. package/lib/programmers/internal/template_to_pattern.mjs +1 -3
  162. package/lib/programmers/internal/wrap_metadata_rest_tuple.js +1 -3
  163. package/lib/programmers/internal/wrap_metadata_rest_tuple.js.map +1 -1
  164. package/lib/programmers/internal/wrap_metadata_rest_tuple.mjs +1 -3
  165. package/lib/protobuf.d.mts +290 -297
  166. package/lib/protobuf.d.ts +290 -297
  167. package/lib/protobuf.js +17 -51
  168. package/lib/protobuf.js.map +1 -1
  169. package/lib/protobuf.mjs +17 -51
  170. package/lib/reflect.d.mts +2 -4
  171. package/lib/reflect.d.ts +2 -4
  172. package/lib/reflect.js +1 -3
  173. package/lib/reflect.js.map +1 -1
  174. package/lib/reflect.mjs +1 -3
  175. package/lib/schemas/json/IJsonApplication.d.mts +4 -4
  176. package/lib/schemas/json/IJsonApplication.d.ts +4 -4
  177. package/lib/schemas/json/IJsonSchemaCollection.d.mts +73 -56
  178. package/lib/schemas/json/IJsonSchemaCollection.d.ts +73 -56
  179. package/lib/schemas/json/IJsonSchemaUnit.d.mts +83 -70
  180. package/lib/schemas/json/IJsonSchemaUnit.d.ts +83 -70
  181. package/lib/schemas/metadata/Metadata.d.mts +1 -3
  182. package/lib/schemas/metadata/Metadata.d.ts +1 -3
  183. package/lib/schemas/metadata/Metadata.js +9 -27
  184. package/lib/schemas/metadata/Metadata.js.map +1 -1
  185. package/lib/schemas/metadata/Metadata.mjs +9 -27
  186. package/lib/schemas/metadata/MetadataAliasType.d.mts +1 -3
  187. package/lib/schemas/metadata/MetadataAliasType.d.ts +1 -3
  188. package/lib/schemas/metadata/MetadataAliasType.js +3 -9
  189. package/lib/schemas/metadata/MetadataAliasType.js.map +1 -1
  190. package/lib/schemas/metadata/MetadataAliasType.mjs +3 -9
  191. package/lib/schemas/metadata/MetadataApplication.d.mts +1 -3
  192. package/lib/schemas/metadata/MetadataApplication.d.ts +1 -3
  193. package/lib/schemas/metadata/MetadataApplication.js +2 -6
  194. package/lib/schemas/metadata/MetadataApplication.js.map +1 -1
  195. package/lib/schemas/metadata/MetadataApplication.mjs +2 -6
  196. package/lib/schemas/metadata/MetadataArray.d.mts +1 -3
  197. package/lib/schemas/metadata/MetadataArray.d.ts +1 -3
  198. package/lib/schemas/metadata/MetadataArray.js +1 -3
  199. package/lib/schemas/metadata/MetadataArray.js.map +1 -1
  200. package/lib/schemas/metadata/MetadataArray.mjs +1 -3
  201. package/lib/schemas/metadata/MetadataArrayType.d.mts +1 -3
  202. package/lib/schemas/metadata/MetadataArrayType.d.ts +1 -3
  203. package/lib/schemas/metadata/MetadataArrayType.js +3 -9
  204. package/lib/schemas/metadata/MetadataArrayType.js.map +1 -1
  205. package/lib/schemas/metadata/MetadataArrayType.mjs +3 -9
  206. package/lib/schemas/metadata/MetadataAtomic.js +1 -3
  207. package/lib/schemas/metadata/MetadataAtomic.js.map +1 -1
  208. package/lib/schemas/metadata/MetadataAtomic.mjs +1 -3
  209. package/lib/schemas/metadata/MetadataEscaped.d.mts +1 -3
  210. package/lib/schemas/metadata/MetadataEscaped.d.ts +1 -3
  211. package/lib/schemas/metadata/MetadataEscaped.js +3 -9
  212. package/lib/schemas/metadata/MetadataEscaped.js.map +1 -1
  213. package/lib/schemas/metadata/MetadataEscaped.mjs +3 -9
  214. package/lib/schemas/metadata/MetadataFunction.d.mts +1 -3
  215. package/lib/schemas/metadata/MetadataFunction.d.ts +1 -3
  216. package/lib/schemas/metadata/MetadataFunction.js +2 -6
  217. package/lib/schemas/metadata/MetadataFunction.js.map +1 -1
  218. package/lib/schemas/metadata/MetadataFunction.mjs +2 -6
  219. package/lib/schemas/metadata/MetadataObject.d.mts +1 -3
  220. package/lib/schemas/metadata/MetadataObject.d.ts +1 -3
  221. package/lib/schemas/metadata/MetadataObject.js +1 -3
  222. package/lib/schemas/metadata/MetadataObject.js.map +1 -1
  223. package/lib/schemas/metadata/MetadataObject.mjs +1 -3
  224. package/lib/schemas/metadata/MetadataObjectType.d.mts +1 -3
  225. package/lib/schemas/metadata/MetadataObjectType.d.ts +1 -3
  226. package/lib/schemas/metadata/MetadataObjectType.js +5 -15
  227. package/lib/schemas/metadata/MetadataObjectType.js.map +1 -1
  228. package/lib/schemas/metadata/MetadataObjectType.mjs +6 -18
  229. package/lib/schemas/metadata/MetadataParameter.js +1 -3
  230. package/lib/schemas/metadata/MetadataParameter.js.map +1 -1
  231. package/lib/schemas/metadata/MetadataParameter.mjs +1 -3
  232. package/lib/schemas/metadata/MetadataProperty.d.mts +1 -3
  233. package/lib/schemas/metadata/MetadataProperty.d.ts +1 -3
  234. package/lib/schemas/metadata/MetadataProperty.js +3 -9
  235. package/lib/schemas/metadata/MetadataProperty.js.map +1 -1
  236. package/lib/schemas/metadata/MetadataProperty.mjs +3 -9
  237. package/lib/schemas/metadata/MetadataTemplate.js +1 -3
  238. package/lib/schemas/metadata/MetadataTemplate.js.map +1 -1
  239. package/lib/schemas/metadata/MetadataTemplate.mjs +1 -3
  240. package/lib/schemas/metadata/MetadataTuple.d.mts +1 -3
  241. package/lib/schemas/metadata/MetadataTuple.d.ts +1 -3
  242. package/lib/schemas/metadata/MetadataTuple.js +2 -6
  243. package/lib/schemas/metadata/MetadataTuple.js.map +1 -1
  244. package/lib/schemas/metadata/MetadataTuple.mjs +2 -6
  245. package/lib/schemas/metadata/MetadataTupleType.js +2 -6
  246. package/lib/schemas/metadata/MetadataTupleType.js.map +1 -1
  247. package/lib/schemas/metadata/MetadataTupleType.mjs +3 -9
  248. package/lib/tags/Constant.d.mts +32 -0
  249. package/lib/tags/Constant.d.ts +32 -0
  250. package/lib/tags/ContentMediaType.d.mts +17 -0
  251. package/lib/tags/ContentMediaType.d.ts +17 -0
  252. package/lib/tags/Default.d.mts +30 -0
  253. package/lib/tags/Default.d.ts +30 -0
  254. package/lib/tags/Example.d.mts +32 -0
  255. package/lib/tags/Example.d.ts +32 -0
  256. package/lib/tags/Examples.d.mts +40 -0
  257. package/lib/tags/Examples.d.ts +40 -0
  258. package/lib/tags/ExclusiveMaximum.d.mts +21 -0
  259. package/lib/tags/ExclusiveMaximum.d.ts +21 -0
  260. package/lib/tags/ExclusiveMinimum.d.mts +21 -0
  261. package/lib/tags/ExclusiveMinimum.d.ts +21 -0
  262. package/lib/tags/Format.d.mts +28 -0
  263. package/lib/tags/Format.d.ts +28 -0
  264. package/lib/tags/JsonSchemaPlugin.d.mts +28 -0
  265. package/lib/tags/JsonSchemaPlugin.d.ts +28 -0
  266. package/lib/tags/MaxItems.d.mts +19 -0
  267. package/lib/tags/MaxItems.d.ts +19 -0
  268. package/lib/tags/MaxLength.d.mts +13 -0
  269. package/lib/tags/MaxLength.d.ts +13 -0
  270. package/lib/tags/Maximum.d.mts +20 -0
  271. package/lib/tags/Maximum.d.ts +20 -0
  272. package/lib/tags/MinItems.d.mts +19 -0
  273. package/lib/tags/MinItems.d.ts +19 -0
  274. package/lib/tags/MinLength.d.mts +13 -0
  275. package/lib/tags/MinLength.d.ts +13 -0
  276. package/lib/tags/Minimum.d.mts +20 -0
  277. package/lib/tags/Minimum.d.ts +20 -0
  278. package/lib/tags/MultipleOf.d.mts +21 -0
  279. package/lib/tags/MultipleOf.d.ts +21 -0
  280. package/lib/tags/Pattern.d.mts +18 -0
  281. package/lib/tags/Pattern.d.ts +18 -0
  282. package/lib/tags/Sequence.d.mts +27 -0
  283. package/lib/tags/Sequence.d.ts +27 -0
  284. package/lib/tags/TagBase.d.mts +38 -18
  285. package/lib/tags/TagBase.d.ts +38 -18
  286. package/lib/tags/Type.d.mts +27 -0
  287. package/lib/tags/Type.d.ts +27 -0
  288. package/lib/tags/UniqueItems.d.mts +20 -0
  289. package/lib/tags/UniqueItems.d.ts +20 -0
  290. package/lib/tags/internal/FormatCheatSheet.d.mts +1 -3
  291. package/lib/tags/internal/FormatCheatSheet.d.ts +1 -3
  292. package/lib/tags/internal/FormatCheatSheet.js +1 -3
  293. package/lib/tags/internal/FormatCheatSheet.js.map +1 -1
  294. package/lib/tags/internal/FormatCheatSheet.mjs +1 -3
  295. package/lib/transformers/ITransformOptions.d.mts +27 -19
  296. package/lib/transformers/ITransformOptions.d.ts +27 -19
  297. package/lib/transformers/ImportTransformer.js +114 -1
  298. package/lib/transformers/ImportTransformer.js.map +1 -1
  299. package/lib/transformers/ImportTransformer.mjs +114 -1
  300. package/lib/transformers/NoTransformConfigurationError.js +1 -3
  301. package/lib/transformers/NoTransformConfigurationError.js.map +1 -1
  302. package/lib/transformers/NoTransformConfigurationError.mjs +1 -3
  303. package/lib/transformers/features/llm/LlmApplicationTransformer.js +1 -3
  304. package/lib/transformers/features/llm/LlmApplicationTransformer.js.map +1 -1
  305. package/lib/transformers/features/llm/LlmApplicationTransformer.mjs +1 -3
  306. package/lib/typings/Equal.d.mts +6 -6
  307. package/lib/typings/Equal.d.ts +6 -6
  308. package/package.json +2 -1
  309. package/src/AssertionGuard.ts +27 -25
  310. package/src/CamelCase.ts +1 -1
  311. package/src/IRandomGenerator.ts +57 -47
  312. package/src/IReadableURLSearchParams.ts +2 -2
  313. package/src/PascalCase.ts +1 -1
  314. package/src/Primitive.ts +20 -22
  315. package/src/Resolved.ts +16 -18
  316. package/src/SnakeCase.ts +3 -2
  317. package/src/TypeGuardError.ts +101 -64
  318. package/src/factories/MetadataCollection.ts +4 -12
  319. package/src/factories/MetadataCommentTagFactory.ts +8 -24
  320. package/src/factories/MetadataFactory.ts +1 -3
  321. package/src/factories/ProtobufFactory.ts +1 -3
  322. package/src/functional.ts +214 -249
  323. package/src/http.ts +329 -397
  324. package/src/internal/_ProtobufReader.ts +3 -9
  325. package/src/internal/_ProtobufSizer.ts +4 -12
  326. package/src/internal/_ProtobufWriter.ts +5 -15
  327. package/src/internal/_jsonStringifyString.ts +4 -4
  328. package/src/json.ts +190 -243
  329. package/src/llm.ts +279 -204
  330. package/src/misc.ts +166 -223
  331. package/src/module.ts +281 -329
  332. package/src/notations.ts +177 -246
  333. package/src/programmers/FeatureProgrammer.ts +19 -41
  334. package/src/programmers/ImportProgrammer.ts +3 -9
  335. package/src/programmers/RandomProgrammer.ts +6 -1
  336. package/src/programmers/helpers/ProtobufWire.ts +13 -13
  337. package/src/programmers/internal/check_array_length.ts +2 -6
  338. package/src/programmers/internal/check_bigint.ts +2 -6
  339. package/src/programmers/internal/check_dynamic_key.ts +2 -6
  340. package/src/programmers/internal/check_dynamic_properties.ts +3 -9
  341. package/src/programmers/internal/check_everything.ts +1 -3
  342. package/src/programmers/internal/check_native.ts +2 -6
  343. package/src/programmers/internal/check_number.ts +2 -6
  344. package/src/programmers/internal/check_object.ts +3 -9
  345. package/src/programmers/internal/check_string.ts +2 -6
  346. package/src/programmers/internal/check_template.ts +1 -3
  347. package/src/programmers/internal/check_union_array_like.ts +2 -6
  348. package/src/programmers/internal/decode_union_object.ts +3 -9
  349. package/src/programmers/internal/feature_object_entries.ts +1 -3
  350. package/src/programmers/internal/json_schema_escaped.ts +2 -6
  351. package/src/programmers/internal/json_schema_object.ts +4 -12
  352. package/src/programmers/internal/metadata_to_pattern.ts +1 -3
  353. package/src/programmers/internal/postfix_of_tuple.ts +1 -3
  354. package/src/programmers/internal/prune_object_properties.ts +1 -3
  355. package/src/programmers/internal/stringify_dynamic_properties.ts +2 -6
  356. package/src/programmers/internal/stringify_native.ts +1 -3
  357. package/src/programmers/internal/stringify_regular_properties.ts +2 -6
  358. package/src/programmers/internal/template_to_pattern.ts +1 -3
  359. package/src/programmers/internal/wrap_metadata_rest_tuple.ts +1 -3
  360. package/src/protobuf.ts +307 -348
  361. package/src/reflect.ts +3 -7
  362. package/src/schemas/json/IJsonApplication.ts +4 -4
  363. package/src/schemas/json/IJsonSchemaCollection.ts +73 -56
  364. package/src/schemas/json/IJsonSchemaUnit.ts +83 -70
  365. package/src/schemas/metadata/IMetadataTypeTag.ts +1 -3
  366. package/src/schemas/metadata/Metadata.ts +9 -27
  367. package/src/schemas/metadata/MetadataAliasType.ts +3 -9
  368. package/src/schemas/metadata/MetadataApplication.ts +2 -6
  369. package/src/schemas/metadata/MetadataArray.ts +1 -3
  370. package/src/schemas/metadata/MetadataArrayType.ts +3 -9
  371. package/src/schemas/metadata/MetadataAtomic.ts +1 -3
  372. package/src/schemas/metadata/MetadataEscaped.ts +3 -9
  373. package/src/schemas/metadata/MetadataFunction.ts +2 -6
  374. package/src/schemas/metadata/MetadataObject.ts +1 -3
  375. package/src/schemas/metadata/MetadataObjectType.ts +6 -18
  376. package/src/schemas/metadata/MetadataParameter.ts +1 -3
  377. package/src/schemas/metadata/MetadataProperty.ts +3 -9
  378. package/src/schemas/metadata/MetadataTemplate.ts +1 -3
  379. package/src/schemas/metadata/MetadataTuple.ts +2 -6
  380. package/src/schemas/metadata/MetadataTupleType.ts +3 -9
  381. package/src/tags/Constant.ts +32 -0
  382. package/src/tags/ContentMediaType.ts +17 -0
  383. package/src/tags/Default.ts +30 -0
  384. package/src/tags/Example.ts +32 -0
  385. package/src/tags/Examples.ts +40 -0
  386. package/src/tags/ExclusiveMaximum.ts +21 -0
  387. package/src/tags/ExclusiveMinimum.ts +21 -0
  388. package/src/tags/Format.ts +28 -0
  389. package/src/tags/JsonSchemaPlugin.ts +28 -0
  390. package/src/tags/MaxItems.ts +19 -0
  391. package/src/tags/MaxLength.ts +13 -0
  392. package/src/tags/Maximum.ts +20 -0
  393. package/src/tags/MinItems.ts +19 -0
  394. package/src/tags/MinLength.ts +13 -0
  395. package/src/tags/Minimum.ts +20 -0
  396. package/src/tags/MultipleOf.ts +21 -0
  397. package/src/tags/Pattern.ts +18 -0
  398. package/src/tags/Sequence.ts +27 -0
  399. package/src/tags/TagBase.ts +38 -18
  400. package/src/tags/Type.ts +27 -0
  401. package/src/tags/UniqueItems.ts +20 -0
  402. package/src/tags/internal/FormatCheatSheet.ts +1 -3
  403. package/src/transformers/ITransformOptions.ts +27 -19
  404. package/src/transformers/ImportTransformer.ts +173 -1
  405. package/src/transformers/NoTransformConfigurationError.ts +1 -3
  406. package/src/transformers/features/llm/LlmApplicationTransformer.ts +1 -3
  407. package/src/typings/Equal.ts +6 -6
package/lib/module.d.ts CHANGED
@@ -30,148 +30,152 @@ export * from "./IReadableURLSearchParams";
30
30
  /**
31
31
  * Asserts a value type.
32
32
  *
33
- * Asserts a parametric value type and throws a {@link TypeGuardError} with a detailed
34
- * reason, if the parametric value is not following the type `T`. Otherwise, if the
35
- * value is following the type `T`, the input parameter will be returned.
33
+ * Asserts a parametric value type and throws a {@link TypeGuardError} with a
34
+ * detailed reason, if the parametric value is not following the type `T`.
35
+ * Otherwise, if the value is following the type `T`, the input parameter will
36
+ * be returned.
36
37
  *
37
- * If what you want is not asserting but just knowing whether the parametric value is
38
- * following the type `T` or not, you can choose the {@link is} function instead.
39
- * Otherwise, if you want to know all the errors, {@link validate} is the way to go.
40
- * Also, if you want to automatically cast the parametric value to the type `T`
41
- * when there is no problem (perform the assertion guard of type).
38
+ * If what you want is not asserting but just knowing whether the parametric
39
+ * value is following the type `T` or not, you can choose the {@link is} function
40
+ * instead. Otherwise, if you want to know all the errors, {@link validate} is
41
+ * the way to go. Also, if you want to automatically cast the parametric value
42
+ * to the type `T` when there is no problem (perform the assertion guard of
43
+ * type).
42
44
  *
43
- * On the other hand, if you don't want to allow any superfluous property that is not
44
- * enrolled to the type `T`, you can use {@link assertEquals} function instead.
45
+ * On the other hand, if you don't want to allow any superfluous property that
46
+ * is not enrolled to the type `T`, you can use {@link assertEquals} function
47
+ * instead.
45
48
  *
49
+ * @author Jeongho Nam - https://github.com/samchon
46
50
  * @template T Type of the input value
47
51
  * @param input A value to be asserted
48
52
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
49
53
  * @returns Parametric input value
50
54
  * @throws A {@link TypeGuardError} instance with a detailed reason
51
- *
52
- * @author Jeongho Nam - https://github.com/samchon
53
55
  */
54
56
  export declare function assert<T>(input: T, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): T;
55
57
  /**
56
58
  * Asserts a value type.
57
59
  *
58
- * Asserts a parametric value type and throws a {@link TypeGuardError} with a detailed
59
- * reason, if the parametric value is not following the type `T`. Otherwise, if the
60
- * value is following the type `T`, the input parameter will be returned.
60
+ * Asserts a parametric value type and throws a {@link TypeGuardError} with a
61
+ * detailed reason, if the parametric value is not following the type `T`.
62
+ * Otherwise, if the value is following the type `T`, the input parameter will
63
+ * be returned.
61
64
  *
62
- * If what you want is not asserting but just knowing whether the parametric value is
63
- * following the type `T` or not, you can choose the {@link is} function instead.
64
- * Otherwise, if you want to know all the errors, {@link validate} is the way to go.
65
+ * If what you want is not asserting but just knowing whether the parametric
66
+ * value is following the type `T` or not, you can choose the {@link is} function
67
+ * instead. Otherwise, if you want to know all the errors, {@link validate} is
68
+ * the way to go.
65
69
  *
66
- * On the other hand, if you don't want to allow any superfluous property that is not
67
- * enrolled to the type `T`, you can use {@link assertEquals} function instead.
70
+ * On the other hand, if you don't want to allow any superfluous property that
71
+ * is not enrolled to the type `T`, you can use {@link assertEquals} function
72
+ * instead.
68
73
  *
74
+ * @author Jeongho Nam - https://github.com/samchon
69
75
  * @template T Type of the input value
70
76
  * @param input A value to be asserted
71
77
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
72
78
  * @returns Parametric input value casted as `T`
73
79
  * @throws A {@link TypeGuardError} instance with a detailed reason
74
- *
75
- * @author Jeongho Nam - https://github.com/samchon
76
80
  */
77
81
  export declare function assert<T>(input: unknown, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): T;
78
82
  /**
79
83
  * Assertion guard of a value type.
80
84
  *
81
- * Asserts a parametric value type and throws a {@link TypeGuardError} with a detailed
82
- * reason, if the parametric value is not following the type `T`. Otherwise, if the
83
- * value is following the type `T`, nothing will be returned, but the input value
84
- * will be automatically casted to the type `T`. This is the concept of
85
- * "Assertion Guard" of a value type.
85
+ * Asserts a parametric value type and throws a {@link TypeGuardError} with a
86
+ * detailed reason, if the parametric value is not following the type `T`.
87
+ * Otherwise, if the value is following the type `T`, nothing will be returned,
88
+ * but the input value will be automatically casted to the type `T`. This is the
89
+ * concept of "Assertion Guard" of a value type.
86
90
  *
87
- * If what you want is not asserting but just knowing whether the parametric value is
88
- * following the type `T` or not, you can choose the {@link is} function instead.
89
- * Otherwise, if you want to know all the errors, {@link validate} is the way to go.
90
- * Also, if you want to return the parametric value when there is no problem, you can use
91
- * {@link assert} function instead.
91
+ * If what you want is not asserting but just knowing whether the parametric
92
+ * value is following the type `T` or not, you can choose the {@link is} function
93
+ * instead. Otherwise, if you want to know all the errors, {@link validate} is
94
+ * the way to go. Also, if you want to return the parametric value when there is
95
+ * no problem, you can use {@link assert} function instead.
92
96
  *
93
- * On the other hand, if you don't want to allow any superfluous property that is not
94
- * enrolled to the type `T`, you can use {@link assertGuardEquals} function instead.
97
+ * On the other hand, if you don't want to allow any superfluous property that
98
+ * is not enrolled to the type `T`, you can use {@link assertGuardEquals}
99
+ * function instead.
95
100
  *
101
+ * @author Jeongho Nam - https://github.com/samchon
96
102
  * @template T Type of the input value
97
103
  * @param input A value to be asserted
98
104
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
99
105
  * @throws A {@link TypeGuardError} instance with a detailed reason
100
- *
101
- * @author Jeongho Nam - https://github.com/samchon
102
106
  */
103
107
  export declare function assertGuard<T>(input: T, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): asserts input is T;
104
108
  /**
105
109
  * Assertion guard of a value type.
106
110
  *
107
- * Asserts a parametric value type and throws a {@link TypeGuardError} with a detailed
108
- * reason, if the parametric value is not following the type `T`. Otherwise, if the
109
- * value is following the type `T`, nothing will be returned, but the input value
110
- * will be automatically casted to the type `T`. This is the concept of
111
- * "Assertion Guard" of a value type.
111
+ * Asserts a parametric value type and throws a {@link TypeGuardError} with a
112
+ * detailed reason, if the parametric value is not following the type `T`.
113
+ * Otherwise, if the value is following the type `T`, nothing will be returned,
114
+ * but the input value will be automatically casted to the type `T`. This is the
115
+ * concept of "Assertion Guard" of a value type.
112
116
  *
113
- * If what you want is not asserting but just knowing whether the parametric value is
114
- * following the type `T` or not, you can choose the {@link is} function instead.
115
- * Otherwise, if you want to know all the errors, {@link validate} is the way to go.
116
- * Also, if you want to return the parametric value when there is no problem, you can use
117
- * {@link assert} function instead.
117
+ * If what you want is not asserting but just knowing whether the parametric
118
+ * value is following the type `T` or not, you can choose the {@link is} function
119
+ * instead. Otherwise, if you want to know all the errors, {@link validate} is
120
+ * the way to go. Also, if you want to return the parametric value when there is
121
+ * no problem, you can use {@link assert} function instead.
118
122
  *
119
- * On the other hand, if you don't want to allow any superfluous property that is not
120
- * enrolled to the type `T`, you can use {@link assertGuardEquals} function instead.
123
+ * On the other hand, if you don't want to allow any superfluous property that
124
+ * is not enrolled to the type `T`, you can use {@link assertGuardEquals}
125
+ * function instead.
121
126
  *
127
+ * @author Jeongho Nam - https://github.com/samchon
122
128
  * @template T Type of the input value
123
129
  * @param input A value to be asserted
124
130
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
125
131
  * @throws A {@link TypeGuardError} instance with a detailed reason
126
- *
127
- * @author Jeongho Nam - https://github.com/samchon
128
132
  */
129
133
  export declare function assertGuard<T>(input: unknown, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): asserts input is T;
130
134
  /**
131
135
  * Tests a value type.
132
136
  *
133
- * Tests a parametric value type and returns whether it's following the type `T` or not.
134
- * If the parametric value is matched with the type `T`, `true` value will be returned.
135
- * Otherwise, if the parametric value is not following the type `T`, `false` value will be
136
- * returned.
137
+ * Tests a parametric value type and returns whether it's following the type `T`
138
+ * or not. If the parametric value is matched with the type `T`, `true` value
139
+ * will be returned. Otherwise, if the parametric value is not following the
140
+ * type `T`, `false` value will be returned.
137
141
  *
138
- * If what you want is not just knowing whether the parametric value is following the
139
- * type `T` or not, but throwing an exception with a detailed reason, you can choose
140
- * {@link assert} function instead. Also, if you want to know all the errors with
141
- * detailed reasons, {@link validate} function will be useful.
142
+ * If what you want is not just knowing whether the parametric value is
143
+ * following the type `T` or not, but throwing an exception with a detailed
144
+ * reason, you can choose {@link assert} function instead. Also, if you want to
145
+ * know all the errors with detailed reasons, {@link validate} function will be
146
+ * useful.
142
147
  *
143
- * On the other hand, if you don't want to allow any superfluous property that is not
144
- * enrolled to the type `T`, you can use {@link equals} function instead.
148
+ * On the other hand, if you don't want to allow any superfluous property that
149
+ * is not enrolled to the type `T`, you can use {@link equals} function instead.
145
150
  *
151
+ * @author Jeongho Nam - https://github.com/samchon
146
152
  * @template T Type of the input value
147
153
  * @param input A value to be tested
148
154
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
149
155
  * @returns Whether the parametric value is following the type `T` or not
150
- *
151
- * @author Jeongho Nam - https://github.com/samchon
152
156
  */
153
157
  export declare function is<T>(input: T): input is T;
154
158
  /**
155
159
  * Tests a value type.
156
160
  *
157
- * Tests a parametric value type and returns whether it's following the type `T` or not.
158
- * If the parametric value is matched with the type `T`, `true` value will be returned.
159
- * Otherwise, if the parametric value is not following the type `T`, `false` value will be
160
- * returned.
161
+ * Tests a parametric value type and returns whether it's following the type `T`
162
+ * or not. If the parametric value is matched with the type `T`, `true` value
163
+ * will be returned. Otherwise, if the parametric value is not following the
164
+ * type `T`, `false` value will be returned.
161
165
  *
162
- * If what you want is not just knowing whether the parametric value is following the
163
- * type `T` or not, but throwing an exception with a detailed reason, you can choose
164
- * {@link assert} function instead. Also, if you want to know all the errors with
165
- * detailed reasons, {@link validate} function will be useful.
166
+ * If what you want is not just knowing whether the parametric value is
167
+ * following the type `T` or not, but throwing an exception with a detailed
168
+ * reason, you can choose {@link assert} function instead. Also, if you want to
169
+ * know all the errors with detailed reasons, {@link validate} function will be
170
+ * useful.
166
171
  *
167
- * On the other hand, if you don't want to allow any superfluous property that is not
168
- * enrolled to the type `T`, you can use {@link equals} function instead.
172
+ * On the other hand, if you don't want to allow any superfluous property that
173
+ * is not enrolled to the type `T`, you can use {@link equals} function instead.
169
174
  *
175
+ * @author Jeongho Nam - https://github.com/samchon
170
176
  * @template T Type of the input value
171
177
  * @param input A value to be tested
172
178
  * @returns Whether the parametric value is following the type `T` or not
173
- *
174
- * @author Jeongho Nam - https://github.com/samchon
175
179
  */
176
180
  export declare function is<T>(input: unknown): input is T;
177
181
  /**
@@ -183,19 +187,19 @@ export declare function is<T>(input: unknown): input is T;
183
187
  * {@link IValidation.errors} array will be empty and {@link IValidation.success}
184
188
  * will have the `true` value.
185
189
  *
186
- * If what you want is not finding all the errors, but asserting the parametric value
187
- * type with exception throwing, you can choose {@link assert} function instead.
188
- * Otherwise, if you just want to know whether the parametric value is matched with the
189
- * type `T`, {@link is} function is the way to go.
190
+ * If what you want is not finding all the errors, but asserting the parametric
191
+ * value type with exception throwing, you can choose {@link assert} function
192
+ * instead. Otherwise, if you just want to know whether the parametric value is
193
+ * matched with the type `T`, {@link is} function is the way to go.
190
194
  *
191
- * On the other hand, if you don't want to allow any superfluous property that is not
192
- * enrolled to the type `T`, you can use {@link validateEquals} function instead.
195
+ * On the other hand, if you don't want to allow any superfluous property that
196
+ * is not enrolled to the type `T`, you can use {@link validateEquals} function
197
+ * instead.
193
198
  *
199
+ * @author Jeongho Nam - https://github.com/samchon
194
200
  * @template T Type of the input value
195
201
  * @param input A value to be validated
196
202
  * @returns Validation result
197
- *
198
- * @author Jeongho Nam - https://github.com/samchon
199
203
  */
200
204
  export declare function validate<T>(input: T): IValidation<T>;
201
205
  /**
@@ -207,175 +211,179 @@ export declare function validate<T>(input: T): IValidation<T>;
207
211
  * {@link IValidation.errors} array will be empty and {@link IValidation.success}
208
212
  * will have the `true` value.
209
213
  *
210
- * If what you want is not finding all the errors, but asserting the parametric value
211
- * type with exception throwing, you can choose {@link assert} function instead.
212
- * Otherwise, if you just want to know whether the parametric value is matched with the
213
- * type `T`, {@link is} function is the way to go.
214
+ * If what you want is not finding all the errors, but asserting the parametric
215
+ * value type with exception throwing, you can choose {@link assert} function
216
+ * instead. Otherwise, if you just want to know whether the parametric value is
217
+ * matched with the type `T`, {@link is} function is the way to go.
214
218
  *
215
- * On the other hand, if you don't want to allow any superfluous property that is not
216
- * enrolled to the type `T`, you can use {@link validateEquals} function instead.
219
+ * On the other hand, if you don't want to allow any superfluous property that
220
+ * is not enrolled to the type `T`, you can use {@link validateEquals} function
221
+ * instead.
217
222
  *
223
+ * @author Jeongho Nam - https://github.com/samchon
218
224
  * @template T Type of the input value
219
225
  * @param input A value to be validated
220
226
  * @returns Validation result
221
- *
222
- * @author Jeongho Nam - https://github.com/samchon
223
227
  */
224
228
  export declare function validate<T>(input: unknown): IValidation<T>;
225
229
  /**
226
230
  * Asserts equality between a value and its type.
227
231
  *
228
- * Asserts a parametric value type and throws a {@link TypeGuardError} with detailed
229
- * reason, if the parametric value is not following the type `T` or some superfluous
230
- * property that is not listed on the type `T` has been found. Otherwise, the value is
231
- * following the type `T` without any superfluous property, just input parameter would
232
- * be returned.
232
+ * Asserts a parametric value type and throws a {@link TypeGuardError} with
233
+ * detailed reason, if the parametric value is not following the type `T` or
234
+ * some superfluous property that is not listed on the type `T` has been found.
235
+ * Otherwise, the value is following the type `T` without any superfluous
236
+ * property, just input parameter would be returned.
233
237
  *
234
- * If what you want is not asserting but just knowing whether the parametric value is
235
- * following the type `T` or not, you can choose the {@link equals} function instead.
236
- * Otherwise, if you want to know all the errors, {@link validateEquals} is the way to go.
238
+ * If what you want is not asserting but just knowing whether the parametric
239
+ * value is following the type `T` or not, you can choose the {@link equals}
240
+ * function instead. Otherwise, if you want to know all the errors,
241
+ * {@link validateEquals} is the way to go.
237
242
  *
238
- * On the other hand, if you want to allow superfluous property that is not enrolled
239
- * to the type `T`, you can use {@link assert} function instead.
243
+ * On the other hand, if you want to allow superfluous property that is not
244
+ * enrolled to the type `T`, you can use {@link assert} function instead.
240
245
  *
246
+ * @author Jeongho Nam - https://github.com/samchon
241
247
  * @template T Type of the input value
242
248
  * @param input A value to be asserted
243
249
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
244
250
  * @returns Parametric input value
245
251
  * @throws A {@link TypeGuardError} instance with a detailed reason
246
- *
247
- * @author Jeongho Nam - https://github.com/samchon
248
252
  */
249
253
  export declare function assertEquals<T>(input: T, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): T;
250
254
  /**
251
255
  * Asserts equality between a value and its type.
252
256
  *
253
- * Asserts a parametric value type and throws a {@link TypeGuardError} with detailed
254
- * reason, if the parametric value is not following the type `T` or some superfluous
255
- * property that is not listed on the type `T` has been found. Otherwise, the value is
256
- * following the type `T` without any superfluous property, just input parameter would
257
- * be returned.
257
+ * Asserts a parametric value type and throws a {@link TypeGuardError} with
258
+ * detailed reason, if the parametric value is not following the type `T` or
259
+ * some superfluous property that is not listed on the type `T` has been found.
260
+ * Otherwise, the value is following the type `T` without any superfluous
261
+ * property, just input parameter would be returned.
258
262
  *
259
- * If what you want is not asserting but just knowing whether the parametric value is
260
- * following the type `T` or not, you can choose the {@link equals} function instead.
261
- * Otherwise, if you want to know all the errors, {@link validateEquals} is the way to go.
263
+ * If what you want is not asserting but just knowing whether the parametric
264
+ * value is following the type `T` or not, you can choose the {@link equals}
265
+ * function instead. Otherwise, if you want to know all the errors,
266
+ * {@link validateEquals} is the way to go.
262
267
  *
263
- * On the other hand, if you want to allow superfluous property that is not enrolled
264
- * to the type `T`, you can use {@link assert} function instead.
268
+ * On the other hand, if you want to allow superfluous property that is not
269
+ * enrolled to the type `T`, you can use {@link assert} function instead.
265
270
  *
271
+ * @author Jeongho Nam - https://github.com/samchon
266
272
  * @template T Type of the input value
267
273
  * @param input A value to be asserted
268
274
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
269
275
  * @returns Parametric input value casted as `T`
270
276
  * @throws A {@link TypeGuardError} instance with a detailed reason
271
- *
272
- * @author Jeongho Nam - https://github.com/samchon
273
277
  */
274
278
  export declare function assertEquals<T>(input: unknown, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): T;
275
279
  /**
276
280
  * Assertion guard of a type with equality.
277
281
  *
278
- * Asserts a parametric value type and throws a {@link TypeGuardError} with detailed
279
- * reason, if the parametric value is not following the type `T` or some superfluous
280
- * property that is not listed on the type `T` has been found.
282
+ * Asserts a parametric value type and throws a {@link TypeGuardError} with
283
+ * detailed reason, if the parametric value is not following the type `T` or
284
+ * some superfluous property that is not listed on the type `T` has been found.
281
285
  *
282
- * Otherwise, the value is following the type `T` without any superfluous property,
283
- * nothing will be returned, but the input value would be automatically casted to
284
- * the type `T`. This is the concept of "Assertion Guard" of a value type.
286
+ * Otherwise, the value is following the type `T` without any superfluous
287
+ * property, nothing will be returned, but the input value would be
288
+ * automatically casted to the type `T`. This is the concept of "Assertion
289
+ * Guard" of a value type.
285
290
  *
286
- * If what you want is not asserting but just knowing whether the parametric value is
287
- * following the type `T` or not, you can choose the {@link equals} function instead.
288
- * Otherwise, if you want to know all the errors, {@link validateEquals} is the way to go.
289
- * Also, if you want to returns the parametric value when no problem, you can use
290
- * {@link assert} function instead.
291
+ * If what you want is not asserting but just knowing whether the parametric
292
+ * value is following the type `T` or not, you can choose the {@link equals}
293
+ * function instead. Otherwise, if you want to know all the errors,
294
+ * {@link validateEquals} is the way to go. Also, if you want to returns the
295
+ * parametric value when no problem, you can use {@link assert} function
296
+ * instead.
291
297
  *
292
- * On the other hand, if you want to allow superfluous property that is not enrolled
293
- * to the type `T`, you can use {@link assertEquals} function instead.
298
+ * On the other hand, if you want to allow superfluous property that is not
299
+ * enrolled to the type `T`, you can use {@link assertEquals} function instead.
294
300
  *
301
+ * @author Jeongho Nam - https://github.com/samchon
295
302
  * @template T Type of the input value
296
303
  * @param input A value to be asserted
297
304
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
298
305
  * @returns Parametric input value casted as `T`
299
306
  * @throws A {@link TypeGuardError} instance with a detailed reason
300
- *
301
- * @author Jeongho Nam - https://github.com/samchon
302
307
  */
303
308
  export declare function assertGuardEquals<T>(input: T, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): asserts input is T;
304
309
  /**
305
310
  * Assertion guard of a type with equality.
306
311
  *
307
- * Asserts a parametric value type and throws a {@link TypeGuardError} with detailed
308
- * reason, if the parametric value is not following the type `T` or some superfluous
309
- * property that is not listed on the type `T` has been found.
312
+ * Asserts a parametric value type and throws a {@link TypeGuardError} with
313
+ * detailed reason, if the parametric value is not following the type `T` or
314
+ * some superfluous property that is not listed on the type `T` has been found.
310
315
  *
311
- * Otherwise, the value is following the type `T` without any superfluous property,
312
- * nothing will be returned, but the input value would be automatically casted to
313
- * the type `T`. This is the concept of "Assertion Guard" of a value type.
316
+ * Otherwise, the value is following the type `T` without any superfluous
317
+ * property, nothing will be returned, but the input value would be
318
+ * automatically casted to the type `T`. This is the concept of "Assertion
319
+ * Guard" of a value type.
314
320
  *
315
- * If what you want is not asserting but just knowing whether the parametric value is
316
- * following the type `T` or not, you can choose the {@link equals} function instead.
317
- * Otherwise, if you want to know all the errors, {@link validateEquals} is the way to go.
318
- * Also, if you want to returns the parametric value when no problem, you can use
319
- * {@link assertEquals} function instead.
321
+ * If what you want is not asserting but just knowing whether the parametric
322
+ * value is following the type `T` or not, you can choose the {@link equals}
323
+ * function instead. Otherwise, if you want to know all the errors,
324
+ * {@link validateEquals} is the way to go. Also, if you want to returns the
325
+ * parametric value when no problem, you can use {@link assertEquals} function
326
+ * instead.
320
327
  *
321
- * On the other hand, if you want to allow superfluous property that is not enrolled
322
- * to the type `T`, you can use {@link assertGuard} function instead.
328
+ * On the other hand, if you want to allow superfluous property that is not
329
+ * enrolled to the type `T`, you can use {@link assertGuard} function instead.
323
330
  *
331
+ * @author Jeongho Nam - https://github.com/samchon
324
332
  * @template T Type of the input value
325
333
  * @param input A value to be asserted
326
334
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
327
335
  * @returns Parametric input value casted as `T`
328
336
  * @throws A {@link TypeGuardError} instance with a detailed reason
329
- *
330
- * @author Jeongho Nam - https://github.com/samchon
331
337
  */
332
338
  export declare function assertGuardEquals<T>(input: unknown, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): asserts input is T;
333
339
  /**
334
340
  * Tests equality between a value and its type.
335
341
  *
336
- * Tests a parametric value type and returns whether it's equivalent to the type `T`
337
- * or not. If the parametric value is matched with the type `T` and there's not any
338
- * superfluous property that is not listed on the type `T`, `true` value will be
339
- * returned. Otherwise, if the parametric value is not following the type `T` or some
340
- * superfluous property exists, `false` value will be returned.
342
+ * Tests a parametric value type and returns whether it's equivalent to the type
343
+ * `T` or not. If the parametric value is matched with the type `T` and there's
344
+ * not any superfluous property that is not listed on the type `T`, `true` value
345
+ * will be returned. Otherwise, if the parametric value is not following the
346
+ * type `T` or some superfluous property exists, `false` value will be
347
+ * returned.
341
348
  *
342
- * If what you want is not just knowing whether the parametric value is following the
343
- * type `T` or not, but throwing an exception with a detailed reason, you can choose
344
- * {@link assertEquals} function instead. Also, if you want to know all the errors with
345
- * detailed reasons, {@link validateEquals} function will be useful.
349
+ * If what you want is not just knowing whether the parametric value is
350
+ * following the type `T` or not, but throwing an exception with a detailed
351
+ * reason, you can choose {@link assertEquals} function instead. Also, if you
352
+ * want to know all the errors with detailed reasons, {@link validateEquals}
353
+ * function will be useful.
346
354
  *
347
- * On the other hand, if you want to allow superfluous property that is not enrolled
348
- * to the type `T`, you can use {@link is} function instead.
355
+ * On the other hand, if you want to allow superfluous property that is not
356
+ * enrolled to the type `T`, you can use {@link is} function instead.
349
357
  *
358
+ * @author Jeongho Nam - https://github.com/samchon
350
359
  * @template T Type of the input value
351
360
  * @param input A value to be tested
352
361
  * @returns Whether the parametric value is equivalent to the type `T` or not
353
- *
354
- * @author Jeongho Nam - https://github.com/samchon
355
362
  */
356
363
  export declare function equals<T>(input: T): input is T;
357
364
  /**
358
365
  * Tests equality between a value and its type.
359
366
  *
360
- * Tests a parametric value type and returns whether it's equivalent to the type `T`
361
- * or not. If the parametric value is matched with the type `T` and there's not any
362
- * superfluous property that is not listed on the type `T`, `true` value will be
363
- * returned. Otherwise, if the parametric value is not following the type `T` or some
364
- * superfluous property exists, `false` value will be returned.
367
+ * Tests a parametric value type and returns whether it's equivalent to the type
368
+ * `T` or not. If the parametric value is matched with the type `T` and there's
369
+ * not any superfluous property that is not listed on the type `T`, `true` value
370
+ * will be returned. Otherwise, if the parametric value is not following the
371
+ * type `T` or some superfluous property exists, `false` value will be
372
+ * returned.
365
373
  *
366
- * If what you want is not just knowing whether the parametric value is following the
367
- * type `T` or not, but throwing an exception with a detailed reason, you can choose
368
- * {@link assertEquals} function instead. Also, if you want to know all the errors with
369
- * detailed reasons, {@link validateEquals} function will be useful.
374
+ * If what you want is not just knowing whether the parametric value is
375
+ * following the type `T` or not, but throwing an exception with a detailed
376
+ * reason, you can choose {@link assertEquals} function instead. Also, if you
377
+ * want to know all the errors with detailed reasons, {@link validateEquals}
378
+ * function will be useful.
370
379
  *
371
- * On the other hand, if you want to allow superfluous property that is not enrolled
372
- * to the type `T`, you can use {@link is} function instead.
380
+ * On the other hand, if you want to allow superfluous property that is not
381
+ * enrolled to the type `T`, you can use {@link is} function instead.
373
382
  *
383
+ * @author Jeongho Nam - https://github.com/samchon
374
384
  * @template T Type of the input value
375
385
  * @param input A value to be tested
376
386
  * @returns Whether the parametric value is equivalent to the type `T` or not
377
- *
378
- * @author Jeongho Nam - https://github.com/samchon
379
387
  */
380
388
  export declare function equals<T>(input: unknown): input is T;
381
389
  /**
@@ -383,24 +391,24 @@ export declare function equals<T>(input: unknown): input is T;
383
391
  *
384
392
  * Validates a parametric value type and archives all the type errors into an
385
393
  * {@link IValidation.errors} array, if the parametric value is not following the
386
- * type `T` or some superfluous property that is not listed on the type `T` has been
387
- * found. Of course, if the parametric value is following the type `T` and no
388
- * superfluous property exists, the {@link IValidation.errors} array would be empty
389
- * and {@link IValidation.success} would have the `true` value.
394
+ * type `T` or some superfluous property that is not listed on the type `T` has
395
+ * been found. Of course, if the parametric value is following the type `T` and
396
+ * no superfluous property exists, the {@link IValidation.errors} array would be
397
+ * empty and {@link IValidation.success} would have the `true` value.
390
398
  *
391
- * If what you want is not finding all the error, but asserting the parametric value
392
- * type with exception throwing, you can choose {@link assert} function instead.
393
- * Otherwise, you just want to know whether the parametric value is matched with the
394
- * type `T`, {@link is} function is the way to go.
399
+ * If what you want is not finding all the error, but asserting the parametric
400
+ * value type with exception throwing, you can choose {@link assert} function
401
+ * instead. Otherwise, you just want to know whether the parametric value is
402
+ * matched with the type `T`, {@link is} function is the way to go.
395
403
  *
396
- * On the other hand, if you don't want to allow any superfluous property that is not
397
- * enrolled to the type `T`, you can use {@link validateEquals} function instead.
404
+ * On the other hand, if you don't want to allow any superfluous property that
405
+ * is not enrolled to the type `T`, you can use {@link validateEquals} function
406
+ * instead.
398
407
  *
399
- * @template Type of the input value
408
+ * @author Jeongho Nam - https://github.com/samchon
409
+ * @template Type Of the input value
400
410
  * @param input A value to be validated
401
411
  * @returns Validation result
402
- *
403
- * @author Jeongho Nam - https://github.com/samchon
404
412
  */
405
413
  export declare function validateEquals<T>(input: T): IValidation<T>;
406
414
  /**
@@ -408,24 +416,24 @@ export declare function validateEquals<T>(input: T): IValidation<T>;
408
416
  *
409
417
  * Validates a parametric value type and archives all the type errors into an
410
418
  * {@link IValidation.errors} array, if the parametric value is not following the
411
- * type `T` or some superfluous property that is not listed on the type `T` has been
412
- * found. Of course, if the parametric value is following the type `T` and no
413
- * superfluous property exists, the {@link IValidation.errors} array would be empty
414
- * and {@link IValidation.success} would have the `true` value.
419
+ * type `T` or some superfluous property that is not listed on the type `T` has
420
+ * been found. Of course, if the parametric value is following the type `T` and
421
+ * no superfluous property exists, the {@link IValidation.errors} array would be
422
+ * empty and {@link IValidation.success} would have the `true` value.
415
423
  *
416
- * If what you want is not finding all the error, but asserting the parametric value
417
- * type with exception throwing, you can choose {@link assert} function instead.
418
- * Otherwise, you just want to know whether the parametric value is matched with the
419
- * type `T`, {@link is} function is the way to go.
424
+ * If what you want is not finding all the error, but asserting the parametric
425
+ * value type with exception throwing, you can choose {@link assert} function
426
+ * instead. Otherwise, you just want to know whether the parametric value is
427
+ * matched with the type `T`, {@link is} function is the way to go.
420
428
  *
421
- * On the other hand, if you don't want to allow any superfluous property that is not
422
- * enrolled to the type `T`, you can use {@link validateEquals} function instead.
429
+ * On the other hand, if you don't want to allow any superfluous property that
430
+ * is not enrolled to the type `T`, you can use {@link validateEquals} function
431
+ * instead.
423
432
  *
424
- * @template Type of the input value
433
+ * @author Jeongho Nam - https://github.com/samchon
434
+ * @template Type Of the input value
425
435
  * @param input A value to be validated
426
436
  * @returns Validation result
427
- *
428
- * @author Jeongho Nam - https://github.com/samchon
429
437
  */
430
438
  export declare function validateEquals<T>(input: unknown): IValidation<T>;
431
439
  /**
@@ -440,11 +448,10 @@ export declare function validateEquals<T>(input: unknown): IValidation<T>;
440
448
  * be ignored. Also, when the type `T` has a `toJSON()` method, its return type
441
449
  * will be generated instead.
442
450
  *
451
+ * @author Jeongho Nam - https://github.com/samchon
443
452
  * @template T Type of data to generate
444
453
  * @param generator Random data generator
445
- * @return Randomly generated data
446
- *
447
- * @author Jeongho Nam - https://github.com/samchon
454
+ * @returns Randomly generated data
448
455
  */
449
456
  export declare function random(generator?: Partial<IRandomGenerator>): never;
450
457
  /**
@@ -457,40 +464,37 @@ export declare function random(generator?: Partial<IRandomGenerator>): never;
457
464
  * be ignored. Also, when the type `T` has a `toJSON()` method, its return type
458
465
  * will be generated instead.
459
466
  *
467
+ * @author Jeongho Nam - https://github.com/samchon
460
468
  * @template T Type of data to generate
461
469
  * @param generator Random data generator
462
- * @return Randomly generated data
463
- *
464
- * @author Jeongho Nam - https://github.com/samchon
470
+ * @returns Randomly generated data
465
471
  */
466
472
  export declare function random<T>(generator?: Partial<IRandomGenerator>): Resolved<T>;
467
473
  /**
468
474
  * Creates a reusable {@link assert} function.
469
475
  *
470
- * @danger You must configure the generic argument `T`
476
+ * @author Jeongho Nam - https://github.com/samchon
471
477
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
472
478
  * @returns Nothing until you configure the generic argument `T`
473
- * @throws compile error
474
- *
475
- * @author Jeongho Nam - https://github.com/samchon
479
+ * @throws Compile error
480
+ * @danger You must configure the generic argument `T`
476
481
  */
477
482
  export declare function createAssert(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): never;
478
483
  /**
479
484
  * Creates a reusable {@link assert} function.
480
485
  *
486
+ * @author Jeongho Nam - https://github.com/samchon
481
487
  * @template T Type of the input value
482
488
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
483
489
  * @returns A reusable `assert` function
484
- *
485
- * @author Jeongho Nam - https://github.com/samchon
486
490
  */
487
491
  export declare function createAssert<T>(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): (input: unknown) => T;
488
492
  /**
489
493
  * Creates a reusable {@link assertGuard} function.
490
494
  *
491
495
  * Note that, you've to declare the variable type of the factory function caller
492
- * like below. If you don't declare the variable type, compilation error be thrown.
493
- * This is the special rule of the TypeScript compiler.
496
+ * like below. If you don't declare the variable type, compilation error be
497
+ * thrown. This is the special rule of the TypeScript compiler.
494
498
  *
495
499
  * ```typescript
496
500
  * // MUST DECLARE THE VARIABLE TYPE
@@ -500,23 +504,22 @@ export declare function createAssert<T>(errorFactory?: undefined | ((props: Type
500
504
  * const func = typia.createAssertGuard<number>();
501
505
  * ```
502
506
  *
503
- * > *Assertions require every name in the call target to be declared with an*
504
- * > *explicit type annotation.*
507
+ * > _Assertions require every name in the call target to be declared with an_
508
+ * > _explicit type annotation._
505
509
  *
506
- * @danger You must configure the generic argument `T`
510
+ * @author Jeongho Nam - https://github.com/samchon
507
511
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
508
512
  * @returns Nothing until you configure the generic argument `T`
509
- * @throws compile error
510
- *
511
- * @author Jeongho Nam - https://github.com/samchon
513
+ * @throws Compile error
514
+ * @danger You must configure the generic argument `T`
512
515
  */
513
516
  export declare function createAssertGuard(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): never;
514
517
  /**
515
518
  * Creates a reusable {@link assertGuard} function.
516
519
  *
517
520
  * Note that, you've to declare the variable type of the factory function caller
518
- * like below. If you don't declare the variable type, compilation error be thrown.
519
- * This is the special rule of the TypeScript compiler.
521
+ * like below. If you don't declare the variable type, compilation error be
522
+ * thrown. This is the special rule of the TypeScript compiler.
520
523
  *
521
524
  * ```typescript
522
525
  * // MUST DECLARE THE VARIABLE TYPE
@@ -526,81 +529,74 @@ export declare function createAssertGuard(errorFactory?: undefined | ((props: Ty
526
529
  * const func = typia.createAssertGuard<number>();
527
530
  * ```
528
531
  *
529
- * > *Assertions require every name in the call target to be declared with an*
530
- * > *explicit type annotation.*
531
- *
532
- * @returns Nothing until you configure the generic argument `T`
533
- * @param errorFactory Custom error factory. Default is `TypeGuardError`
534
- * @throws compile error
532
+ * > _Assertions require every name in the call target to be declared with an_
533
+ * > _explicit type annotation._
535
534
  *
536
535
  * @author Jeongho Nam - https://github.com/samchon
536
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
537
+ * @returns Nothing until you configure the generic argument `T`
538
+ * @throws Compile error
537
539
  */
538
540
  export declare function createAssertGuard<T>(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): (input: unknown) => AssertionGuard<T>;
539
541
  /**
540
542
  * Creates a reusable {@link is} function.
541
543
  *
542
- * @danger You must configure the generic argument `T`
543
- * @returns Nothing until you configure the generic argument `T`
544
- * @throws compile error
545
- *
546
544
  * @author Jeongho Nam - https://github.com/samchon
545
+ * @returns Nothing until you configure the generic argument `T`
546
+ * @throws Compile error
547
+ * @danger You must configure the generic argument `T`
547
548
  */
548
549
  export declare function createIs(): never;
549
550
  /**
550
551
  * Creates a reusable {@link is} function.
551
552
  *
553
+ * @author Jeongho Nam - https://github.com/samchon
552
554
  * @template T Type of the input value
553
555
  * @returns A reusable `is` function
554
- *
555
- * @author Jeongho Nam - https://github.com/samchon
556
556
  */
557
557
  export declare function createIs<T>(): (input: unknown) => input is T;
558
558
  /**
559
559
  * Creates a reusable {@link validate} function.
560
560
  *
561
- * @danger You must configure the generic argument `T`
562
- * @returns Nothing until you configure the generic argument `T`
563
- * @throws compile error
564
- *
565
561
  * @author Jeongho Nam - https://github.com/samchon
562
+ * @returns Nothing until you configure the generic argument `T`
563
+ * @throws Compile error
564
+ * @danger You must configure the generic argument `T`
566
565
  */
567
566
  export declare function createValidate(): never;
568
567
  /**
569
568
  * Creates a reusable {@link validate} function.
570
569
  *
570
+ * @author Jeongho Nam - https://github.com/samchon
571
571
  * @template T Type of the input value
572
572
  * @returns A reusable `validate` function
573
- *
574
- * @author Jeongho Nam - https://github.com/samchon
575
573
  */
576
574
  export declare function createValidate<T>(): ((input: unknown) => IValidation<T>) & StandardSchemaV1<unknown, T>;
577
575
  /**
578
576
  * Creates a reusable {@link assertEquals} function.
579
577
  *
580
- * @danger You must configure the generic argument `T`
578
+ * @author Jeongho Nam - https://github.com/samchon
581
579
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
582
580
  * @returns Nothing until you configure the generic argument `T`
583
- * @throws compile error
584
- *
585
- * @author Jeongho Nam - https://github.com/samchon
581
+ * @throws Compile error
582
+ * @danger You must configure the generic argument `T`
586
583
  */
587
584
  export declare function createAssertEquals(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): never;
588
585
  /**
589
586
  * Creates a reusable {@link assertEquals} function.
590
587
  *
588
+ * @author Jeongho Nam - https://github.com/samchon
591
589
  * @template T Type of the input value
592
590
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
593
591
  * @returns A reusable `assertEquals` function
594
- *
595
- * @author Jeongho Nam - https://github.com/samchon
596
592
  */
597
593
  export declare function createAssertEquals<T>(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): (input: unknown) => T;
598
594
  /**
599
595
  * Creates a reusable {@link assertGuardEquals} function.
600
596
  *
601
597
  * Note that, you've to declare the variable type of the factory function caller
602
- * like below. If you don't declare the variable type, compilation error be thrown.
603
- * This is the special rule of the TypeScript compiler.
598
+ * like below. If you don't declare the variable type, compilation error be
599
+ * thrown. This is the special rule of the TypeScript compiler.
604
600
  *
605
601
  * ```typescript
606
602
  * // MUST DECLARE THE VARIABLE TYPE
@@ -610,23 +606,22 @@ export declare function createAssertEquals<T>(errorFactory?: undefined | ((props
610
606
  * const func = typia.createAssertGuardEquals<number>();
611
607
  * ```
612
608
  *
613
- * > *Assertions require every name in the call target to be declared with an*
614
- * > *explicit type annotation.*
609
+ * > _Assertions require every name in the call target to be declared with an_
610
+ * > _explicit type annotation._
615
611
  *
616
- * @danger You must configure the generic argument `T`
612
+ * @author Jeongho Nam - https://github.com/samchon
617
613
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
618
614
  * @returns Nothing until you configure the generic argument `T`
619
- * @throws compile error
620
- *
621
- * @author Jeongho Nam - https://github.com/samchon
615
+ * @throws Compile error
616
+ * @danger You must configure the generic argument `T`
622
617
  */
623
618
  export declare function createAssertGuardEquals(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): never;
624
619
  /**
625
620
  * Creates a reusable {@link assertGuardEquals} function.
626
621
  *
627
622
  * Note that, you've to declare the variable type of the factory function caller
628
- * like below. If you don't declare the variable type, compilation error be thrown.
629
- * This is the special rule of the TypeScript compiler.
623
+ * like below. If you don't declare the variable type, compilation error be
624
+ * thrown. This is the special rule of the TypeScript compiler.
630
625
  *
631
626
  * ```typescript
632
627
  * // MUST DECLARE THE VARIABLE TYPE
@@ -636,72 +631,65 @@ export declare function createAssertGuardEquals(errorFactory?: undefined | ((pro
636
631
  * const func = typia.createAssertGuardEquals<number>();
637
632
  * ```
638
633
  *
639
- * > *Assertions require every name in the call target to be declared with an*
640
- * > *explicit type annotation.*
634
+ * > _Assertions require every name in the call target to be declared with an_
635
+ * > _explicit type annotation._
641
636
  *
637
+ * @author Jeongho Nam - https://github.com/samchon
642
638
  * @param errorFactory Custom error factory. Default is `TypeGuardError`
643
639
  * @returns Nothing until you configure the generic argument `T`
644
- * @throws compile error
645
- *
646
- * @author Jeongho Nam - https://github.com/samchon
640
+ * @throws Compile error
647
641
  */
648
642
  export declare function createAssertGuardEquals<T>(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): (input: unknown) => AssertionGuard<T>;
649
643
  /**
650
644
  * Creates a reusable {@link equals} function.
651
645
  *
652
- * @danger You must configure the generic argument `T`
653
- * @returns Nothing until you configure the generic argument `T`
654
- * @throws compile error
655
- *
656
646
  * @author Jeongho Nam - https://github.com/samchon
647
+ * @returns Nothing until you configure the generic argument `T`
648
+ * @throws Compile error
649
+ * @danger You must configure the generic argument `T`
657
650
  */
658
651
  export declare function createEquals(): never;
659
652
  /**
660
653
  * Creates a reusable {@link equals} function.
661
654
  *
655
+ * @author Jeongho Nam - https://github.com/samchon
662
656
  * @template T Type of the input value
663
657
  * @returns A reusable `equals` function
664
- *
665
- * @author Jeongho Nam - https://github.com/samchon
666
658
  */
667
659
  export declare function createEquals<T>(): (input: unknown) => input is T;
668
660
  /**
669
661
  * Creates a reusable {@link validateEquals} function.
670
662
  *
671
- * @danger You must configure the generic argument `T`
672
- * @returns Nothing until you configure the generic argument `T`
673
- * @throws compile error
674
- *
675
663
  * @author Jeongho Nam - https://github.com/samchon
664
+ * @returns Nothing until you configure the generic argument `T`
665
+ * @throws Compile error
666
+ * @danger You must configure the generic argument `T`
676
667
  */
677
668
  export declare function createValidateEquals(): never;
678
669
  /**
679
670
  * Creates a reusable {@link validateEquals} function.
680
671
  *
672
+ * @author Jeongho Nam - https://github.com/samchon
681
673
  * @template T Type of the input value
682
674
  * @returns A reusable `validateEquals` function
683
- *
684
- * @author Jeongho Nam - https://github.com/samchon
685
675
  */
686
676
  export declare function createValidateEquals<T>(): ((input: unknown) => IValidation<T>) & StandardSchemaV1<unknown, T>;
687
677
  /**
688
678
  * Creates a reusable {@link random} function.
689
679
  *
690
- * @danger You must configure the generic argument `T`
680
+ * @author Jeongho Nam - https://github.com/samchon
691
681
  * @param generator Random data generator
692
682
  * @returns Nothing until you configure the generic argument `T`
693
- * @throws compile error
694
- *
695
- * @author Jeongho Nam - https://github.com/samchon
683
+ * @throws Compile error
684
+ * @danger You must configure the generic argument `T`
696
685
  */
697
686
  export declare function createRandom(generator?: Partial<IRandomGenerator>): never;
698
687
  /**
699
688
  * Creates a reusable {@link random} function.
700
689
  *
690
+ * @author Jeongho Nam - https://github.com/samchon
701
691
  * @template T Type of the input value
702
692
  * @param generator Random data generator
703
693
  * @returns A reusable `random` function
704
- *
705
- * @author Jeongho Nam - https://github.com/samchon
706
694
  */
707
695
  export declare function createRandom<T>(generator?: Partial<IRandomGenerator>): () => Resolved<T>;