typia 5.0.0-dev.2023084 → 5.0.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 (584) hide show
  1. package/README.md +1 -2
  2. package/lib/IRandomGenerator.d.ts +4 -3
  3. package/lib/Resolved.d.ts +1 -1
  4. package/lib/executable/TypiaGenerateWizard.js +1 -1
  5. package/lib/executable/TypiaGenerateWizard.js.map +1 -1
  6. package/lib/executable/TypiaSetupWizard.js +1 -1
  7. package/lib/executable/TypiaSetupWizard.js.map +1 -1
  8. package/lib/executable/setup/PackageManager.js +1 -1
  9. package/lib/executable/setup/PackageManager.js.map +1 -1
  10. package/lib/executable/setup/PluginConfigurator.js +2 -2
  11. package/lib/executable/setup/PluginConfigurator.js.map +1 -1
  12. package/lib/factories/ExpressionFactory.d.ts +3 -1
  13. package/lib/factories/ExpressionFactory.js +25 -1
  14. package/lib/factories/ExpressionFactory.js.map +1 -1
  15. package/lib/factories/IdentifierFactory.d.ts +2 -1
  16. package/lib/factories/IdentifierFactory.js +11 -0
  17. package/lib/factories/IdentifierFactory.js.map +1 -1
  18. package/lib/factories/JsonMetadataFactory.d.ts +7 -0
  19. package/lib/factories/JsonMetadataFactory.js +38 -0
  20. package/lib/factories/JsonMetadataFactory.js.map +1 -0
  21. package/lib/factories/LiteralFactory.js +6 -2
  22. package/lib/factories/LiteralFactory.js.map +1 -1
  23. package/lib/factories/MetadataCollection.d.ts +7 -7
  24. package/lib/factories/MetadataCollection.js +4 -6
  25. package/lib/factories/MetadataCollection.js.map +1 -1
  26. package/lib/factories/MetadataCommentTagFactory.js +543 -0
  27. package/lib/factories/MetadataCommentTagFactory.js.map +1 -0
  28. package/lib/factories/MetadataFactory.d.ts +22 -2
  29. package/lib/factories/MetadataFactory.js +248 -17
  30. package/lib/factories/MetadataFactory.js.map +1 -1
  31. package/lib/factories/MetadataTypeTagFactory.d.ts +7 -0
  32. package/lib/factories/MetadataTypeTagFactory.js +280 -0
  33. package/lib/factories/MetadataTypeTagFactory.js.map +1 -0
  34. package/lib/factories/NumericRangeFactory.d.ts +6 -0
  35. package/lib/factories/NumericRangeFactory.js +34 -0
  36. package/lib/factories/NumericRangeFactory.js.map +1 -0
  37. package/lib/factories/ProtobufFactory.js +137 -91
  38. package/lib/factories/ProtobufFactory.js.map +1 -1
  39. package/lib/factories/TypeFactory.d.ts +0 -1
  40. package/lib/factories/TypeFactory.js +0 -5
  41. package/lib/factories/TypeFactory.js.map +1 -1
  42. package/lib/factories/internal/metadata/emend_metadata_atomics.js +7 -1
  43. package/lib/factories/internal/metadata/emend_metadata_atomics.js.map +1 -1
  44. package/lib/factories/internal/metadata/emplace_metadata_alias.d.ts +1 -1
  45. package/lib/factories/internal/metadata/emplace_metadata_alias.js +20 -19
  46. package/lib/factories/internal/metadata/emplace_metadata_alias.js.map +1 -1
  47. package/lib/factories/internal/metadata/emplace_metadata_array_type.d.ts +5 -0
  48. package/lib/factories/internal/metadata/emplace_metadata_array_type.js +51 -0
  49. package/lib/factories/internal/metadata/emplace_metadata_array_type.js.map +1 -0
  50. package/lib/factories/internal/metadata/emplace_metadata_object.d.ts +1 -1
  51. package/lib/factories/internal/metadata/emplace_metadata_object.js +100 -85
  52. package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
  53. package/lib/factories/internal/metadata/emplace_metadata_tuple.d.ts +2 -2
  54. package/lib/factories/internal/metadata/emplace_metadata_tuple.js +34 -21
  55. package/lib/factories/internal/metadata/emplace_metadata_tuple.js.map +1 -1
  56. package/lib/factories/internal/metadata/explore_metadata.d.ts +1 -1
  57. package/lib/factories/internal/metadata/explore_metadata.js +12 -12
  58. package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
  59. package/lib/factories/internal/metadata/iterate_metadata.d.ts +1 -1
  60. package/lib/factories/internal/metadata/iterate_metadata.js +39 -19
  61. package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
  62. package/lib/factories/internal/metadata/iterate_metadata_alias.d.ts +1 -1
  63. package/lib/factories/internal/metadata/iterate_metadata_alias.js +12 -10
  64. package/lib/factories/internal/metadata/iterate_metadata_alias.js.map +1 -1
  65. package/lib/factories/internal/metadata/iterate_metadata_array.d.ts +1 -1
  66. package/lib/factories/internal/metadata/iterate_metadata_array.js +13 -7
  67. package/lib/factories/internal/metadata/iterate_metadata_array.js.map +1 -1
  68. package/lib/factories/internal/metadata/iterate_metadata_atomic.js +2 -1
  69. package/lib/factories/internal/metadata/iterate_metadata_atomic.js.map +1 -1
  70. package/lib/factories/internal/metadata/iterate_metadata_collection.d.ts +2 -1
  71. package/lib/factories/internal/metadata/iterate_metadata_collection.js +66 -56
  72. package/lib/factories/internal/metadata/iterate_metadata_collection.js.map +1 -1
  73. package/lib/factories/internal/metadata/iterate_metadata_comment_tags.d.ts +3 -0
  74. package/lib/factories/internal/metadata/iterate_metadata_comment_tags.js +45 -0
  75. package/lib/factories/internal/metadata/iterate_metadata_comment_tags.js.map +1 -0
  76. package/lib/factories/internal/metadata/iterate_metadata_intersection.d.ts +1 -1
  77. package/lib/factories/internal/metadata/iterate_metadata_intersection.js +175 -41
  78. package/lib/factories/internal/metadata/iterate_metadata_intersection.js.map +1 -1
  79. package/lib/factories/internal/metadata/iterate_metadata_map.d.ts +1 -1
  80. package/lib/factories/internal/metadata/iterate_metadata_map.js +28 -15
  81. package/lib/factories/internal/metadata/iterate_metadata_map.js.map +1 -1
  82. package/lib/factories/internal/metadata/iterate_metadata_object.d.ts +1 -1
  83. package/lib/factories/internal/metadata/iterate_metadata_object.js +16 -21
  84. package/lib/factories/internal/metadata/iterate_metadata_object.js.map +1 -1
  85. package/lib/factories/internal/metadata/iterate_metadata_resolve.d.ts +1 -1
  86. package/lib/factories/internal/metadata/iterate_metadata_resolve.js +28 -15
  87. package/lib/factories/internal/metadata/iterate_metadata_resolve.js.map +1 -1
  88. package/lib/factories/internal/metadata/iterate_metadata_set.d.ts +1 -1
  89. package/lib/factories/internal/metadata/iterate_metadata_set.js +24 -11
  90. package/lib/factories/internal/metadata/iterate_metadata_set.js.map +1 -1
  91. package/lib/factories/internal/metadata/iterate_metadata_sort.js +2 -2
  92. package/lib/factories/internal/metadata/iterate_metadata_sort.js.map +1 -1
  93. package/lib/factories/internal/metadata/iterate_metadata_template.d.ts +1 -1
  94. package/lib/factories/internal/metadata/iterate_metadata_template.js +28 -15
  95. package/lib/factories/internal/metadata/iterate_metadata_template.js.map +1 -1
  96. package/lib/factories/internal/metadata/iterate_metadata_tuple.d.ts +1 -1
  97. package/lib/factories/internal/metadata/iterate_metadata_tuple.js +12 -6
  98. package/lib/factories/internal/metadata/iterate_metadata_tuple.js.map +1 -1
  99. package/lib/factories/internal/metadata/iterate_metadata_union.d.ts +1 -1
  100. package/lib/factories/internal/metadata/iterate_metadata_union.js +20 -7
  101. package/lib/factories/internal/metadata/iterate_metadata_union.js.map +1 -1
  102. package/lib/functional/$any.js +2 -1
  103. package/lib/functional/$any.js.map +1 -1
  104. package/lib/functional/$clone.d.ts +2 -0
  105. package/lib/functional/$clone.js +8 -0
  106. package/lib/functional/$clone.js.map +1 -0
  107. package/lib/functional/Namespace.js +0 -16
  108. package/lib/functional/Namespace.js.map +1 -1
  109. package/lib/module.d.ts +2 -39
  110. package/lib/module.js +3 -17
  111. package/lib/module.js.map +1 -1
  112. package/lib/programmers/AssertProgrammer.js +28 -10
  113. package/lib/programmers/AssertProgrammer.js.map +1 -1
  114. package/lib/programmers/CheckerProgrammer.js +97 -70
  115. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  116. package/lib/programmers/FeatureProgrammer.d.ts +3 -5
  117. package/lib/programmers/FeatureProgrammer.js +7 -7
  118. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  119. package/lib/programmers/IsProgrammer.d.ts +1 -1
  120. package/lib/programmers/IsProgrammer.js +33 -22
  121. package/lib/programmers/IsProgrammer.js.map +1 -1
  122. package/lib/programmers/RandomProgrammer.js +196 -160
  123. package/lib/programmers/RandomProgrammer.js.map +1 -1
  124. package/lib/programmers/TypiaProgrammer.js +87 -28
  125. package/lib/programmers/TypiaProgrammer.js.map +1 -1
  126. package/lib/programmers/ValidateProgrammer.js +28 -10
  127. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  128. package/lib/programmers/helpers/CloneJoiner.js +10 -2
  129. package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
  130. package/lib/programmers/helpers/ICheckEntry.d.ts +4 -3
  131. package/lib/programmers/helpers/ProtobufUtil.d.ts +6 -2
  132. package/lib/programmers/helpers/ProtobufUtil.js +175 -17
  133. package/lib/programmers/helpers/ProtobufUtil.js.map +1 -1
  134. package/lib/programmers/helpers/RandomJoiner.d.ts +3 -5
  135. package/lib/programmers/helpers/RandomJoiner.js +7 -10
  136. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  137. package/lib/programmers/helpers/RandomRanger.d.ts +5 -6
  138. package/lib/programmers/helpers/RandomRanger.js +13 -33
  139. package/lib/programmers/helpers/RandomRanger.js.map +1 -1
  140. package/lib/programmers/helpers/UnionExplorer.d.ts +7 -8
  141. package/lib/programmers/helpers/UnionExplorer.js +46 -35
  142. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  143. package/lib/programmers/internal/application_alias.js +0 -1
  144. package/lib/programmers/internal/application_alias.js.map +1 -1
  145. package/lib/programmers/internal/application_array.js +60 -20
  146. package/lib/programmers/internal/application_array.js.map +1 -1
  147. package/lib/programmers/internal/application_escaped.d.ts +4 -0
  148. package/lib/programmers/internal/{application_resolved.js → application_escaped.js} +6 -6
  149. package/lib/programmers/internal/application_escaped.js.map +1 -0
  150. package/lib/programmers/internal/application_number.js +95 -69
  151. package/lib/programmers/internal/application_number.js.map +1 -1
  152. package/lib/programmers/internal/application_object.js +0 -3
  153. package/lib/programmers/internal/application_object.js.map +1 -1
  154. package/lib/programmers/internal/application_schema.js +41 -24
  155. package/lib/programmers/internal/application_schema.js.map +1 -1
  156. package/lib/programmers/internal/application_string.js +56 -22
  157. package/lib/programmers/internal/application_string.js.map +1 -1
  158. package/lib/programmers/internal/application_tuple.js +10 -9
  159. package/lib/programmers/internal/application_tuple.js.map +1 -1
  160. package/lib/programmers/internal/check_array_length.js +25 -25
  161. package/lib/programmers/internal/check_array_length.js.map +1 -1
  162. package/lib/programmers/internal/check_bigint.js +20 -109
  163. package/lib/programmers/internal/check_bigint.js.map +1 -1
  164. package/lib/programmers/internal/check_dynamic_properties.js +1 -1
  165. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  166. package/lib/programmers/internal/check_number.js +57 -147
  167. package/lib/programmers/internal/check_number.js.map +1 -1
  168. package/lib/programmers/internal/check_string.js +21 -33
  169. package/lib/programmers/internal/check_string.js.map +1 -1
  170. package/lib/programmers/internal/check_template.js +31 -49
  171. package/lib/programmers/internal/check_template.js.map +1 -1
  172. package/lib/programmers/internal/check_union_array_like.js +7 -6
  173. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  174. package/lib/programmers/internal/feature_object_entries.js +1 -1
  175. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  176. package/lib/programmers/internal/random_custom.js +8 -2
  177. package/lib/programmers/internal/random_custom.js.map +1 -1
  178. package/lib/programmers/internal/wrap_metadata_rest_tuple.js +9 -5
  179. package/lib/programmers/internal/wrap_metadata_rest_tuple.js.map +1 -1
  180. package/lib/programmers/json/JsonApplicationProgrammer.js +5 -1
  181. package/lib/programmers/json/JsonApplicationProgrammer.js.map +1 -1
  182. package/lib/programmers/json/JsonAssertParseProgrammer.js +2 -0
  183. package/lib/programmers/json/JsonAssertParseProgrammer.js.map +1 -1
  184. package/lib/programmers/json/JsonIsParseProgrammer.js +2 -0
  185. package/lib/programmers/json/JsonIsParseProgrammer.js.map +1 -1
  186. package/lib/programmers/json/JsonStringifyProgrammer.js +48 -85
  187. package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
  188. package/lib/programmers/json/JsonValidateParseProgrammer.js +2 -0
  189. package/lib/programmers/json/JsonValidateParseProgrammer.js.map +1 -1
  190. package/lib/programmers/misc/MiscCloneProgrammer.js +34 -25
  191. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  192. package/lib/programmers/{IsPruneProgrammer.d.ts → misc/MiscIsPruneProgrammer.d.ts} +2 -2
  193. package/lib/programmers/{IsPruneProgrammer.js → misc/MiscIsPruneProgrammer.js} +11 -11
  194. package/lib/programmers/misc/MiscIsPruneProgrammer.js.map +1 -0
  195. package/lib/programmers/misc/MiscLiteralsProgrammer.js +10 -5
  196. package/lib/programmers/misc/MiscLiteralsProgrammer.js.map +1 -1
  197. package/lib/programmers/misc/MiscPruneProgrammer.js +34 -25
  198. package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
  199. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js +48 -48
  200. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js.map +1 -1
  201. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +152 -69
  202. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  203. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +80 -85
  204. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js.map +1 -1
  205. package/lib/protobuf.d.ts +34 -34
  206. package/lib/schemas/json/IJsonSchema.d.ts +10 -38
  207. package/lib/schemas/metadata/IMetadata.d.ts +9 -2
  208. package/lib/schemas/metadata/IMetadataAlias.d.ts +0 -2
  209. package/lib/schemas/metadata/IMetadataArray.d.ts +4 -6
  210. package/lib/schemas/metadata/IMetadataArrayType.d.ts +8 -0
  211. package/lib/{CustomValidatorMap.js → schemas/metadata/IMetadataArrayType.js} +1 -1
  212. package/lib/schemas/metadata/IMetadataArrayType.js.map +1 -0
  213. package/lib/schemas/metadata/IMetadataAtomic.d.ts +3 -10
  214. package/lib/schemas/metadata/IMetadataCollection.d.ts +4 -4
  215. package/lib/schemas/metadata/IMetadataProperty.d.ts +0 -2
  216. package/lib/schemas/metadata/IMetadataTuple.d.ts +4 -6
  217. package/lib/schemas/metadata/IMetadataTupleType.d.ts +8 -0
  218. package/lib/schemas/metadata/IMetadataTupleType.js +3 -0
  219. package/lib/schemas/metadata/IMetadataTupleType.js.map +1 -0
  220. package/lib/schemas/metadata/IMetadataTypeTag.d.ts +8 -0
  221. package/lib/schemas/metadata/IMetadataTypeTag.js +3 -0
  222. package/lib/schemas/metadata/IMetadataTypeTag.js.map +1 -0
  223. package/lib/schemas/metadata/Metadata.d.ts +2 -2
  224. package/lib/schemas/metadata/Metadata.js +177 -122
  225. package/lib/schemas/metadata/Metadata.js.map +1 -1
  226. package/lib/schemas/metadata/MetadataAlias.d.ts +0 -2
  227. package/lib/schemas/metadata/MetadataAlias.js +0 -3
  228. package/lib/schemas/metadata/MetadataAlias.js.map +1 -1
  229. package/lib/schemas/metadata/MetadataArray.d.ts +8 -6
  230. package/lib/schemas/metadata/MetadataArray.js +48 -19
  231. package/lib/schemas/metadata/MetadataArray.js.map +1 -1
  232. package/lib/schemas/metadata/MetadataArrayType.d.ts +14 -0
  233. package/lib/schemas/metadata/MetadataArrayType.js +36 -0
  234. package/lib/schemas/metadata/MetadataArrayType.js.map +1 -0
  235. package/lib/schemas/metadata/MetadataAtomic.d.ts +9 -0
  236. package/lib/schemas/metadata/MetadataAtomic.js +59 -0
  237. package/lib/schemas/metadata/MetadataAtomic.js.map +1 -0
  238. package/lib/schemas/metadata/MetadataProperty.d.ts +0 -2
  239. package/lib/schemas/metadata/MetadataProperty.js +0 -3
  240. package/lib/schemas/metadata/MetadataProperty.js.map +1 -1
  241. package/lib/schemas/metadata/MetadataTuple.d.ts +8 -8
  242. package/lib/schemas/metadata/MetadataTuple.js +4 -19
  243. package/lib/schemas/metadata/MetadataTuple.js.map +1 -1
  244. package/lib/schemas/metadata/MetadataTupleType.d.ts +13 -0
  245. package/lib/schemas/metadata/MetadataTupleType.js +40 -0
  246. package/lib/schemas/metadata/MetadataTupleType.js.map +1 -0
  247. package/lib/tags/ExclusiveMaximum.d.ts +10 -8
  248. package/lib/tags/ExclusiveMinimum.d.ts +10 -8
  249. package/lib/tags/Format.d.ts +8 -8
  250. package/lib/tags/MaxItems.d.ts +8 -8
  251. package/lib/tags/MaxLength.d.ts +8 -8
  252. package/lib/tags/Maximum.d.ts +10 -8
  253. package/lib/tags/MinItems.d.ts +8 -8
  254. package/lib/tags/MinLength.d.ts +8 -8
  255. package/lib/tags/Minimum.d.ts +10 -8
  256. package/lib/tags/MultipleOf.d.ts +10 -8
  257. package/lib/tags/Pattern.d.ts +7 -8
  258. package/lib/tags/TagBase.d.ts +52 -6
  259. package/lib/tags/Type.d.ts +14 -13
  260. package/lib/tags/index.d.ts +1 -0
  261. package/lib/tags/index.js +1 -0
  262. package/lib/tags/index.js.map +1 -1
  263. package/lib/transform.d.ts +2 -1
  264. package/lib/transform.js +11 -3
  265. package/lib/transform.js.map +1 -1
  266. package/lib/transformers/CallExpressionTransformer.d.ts +1 -1
  267. package/lib/transformers/CallExpressionTransformer.js +2 -1
  268. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  269. package/lib/transformers/FileTransformer.d.ts +1 -1
  270. package/lib/transformers/FileTransformer.js +30 -7
  271. package/lib/transformers/FileTransformer.js.map +1 -1
  272. package/lib/transformers/IProject.d.ts +4 -0
  273. package/lib/transformers/NodeTransformer.d.ts +1 -1
  274. package/lib/transformers/TransformerError.d.ts +12 -0
  275. package/lib/transformers/TransformerError.js +66 -0
  276. package/lib/transformers/TransformerError.js.map +1 -0
  277. package/lib/transformers/features/AssertTransformer.d.ts +1 -0
  278. package/lib/transformers/features/CreateAssertTransformer.d.ts +1 -0
  279. package/lib/transformers/features/CreateIsTransformer.d.ts +1 -0
  280. package/lib/transformers/features/CreateRandomTransformer.js +9 -4
  281. package/lib/transformers/features/CreateRandomTransformer.js.map +1 -1
  282. package/lib/transformers/features/CreateValidateTransformer.d.ts +1 -0
  283. package/lib/transformers/features/IsTransformer.d.ts +1 -0
  284. package/lib/transformers/features/RandomTransformer.js +9 -4
  285. package/lib/transformers/features/RandomTransformer.js.map +1 -1
  286. package/lib/transformers/features/ValidateTransformer.d.ts +1 -0
  287. package/lib/transformers/features/json/JsonApplicationTransformer.js +79 -17
  288. package/lib/transformers/features/json/JsonApplicationTransformer.js.map +1 -1
  289. package/lib/transformers/features/json/JsonAssertParseTransformer.d.ts +1 -0
  290. package/lib/transformers/features/json/JsonAssertStringifyTransformer.d.ts +1 -0
  291. package/lib/transformers/features/json/JsonCreateAssertParseTransformer.d.ts +1 -0
  292. package/lib/transformers/features/json/JsonCreateAssertStringifyTransformer.d.ts +1 -0
  293. package/lib/transformers/features/json/JsonCreateIsParseTransformer.d.ts +1 -0
  294. package/lib/transformers/features/json/JsonCreateIsStringifyTransformer.d.ts +1 -0
  295. package/lib/transformers/features/json/JsonCreateStringifyTransformer.d.ts +1 -0
  296. package/lib/transformers/features/json/JsonCreateValidateParseTransformer.d.ts +1 -0
  297. package/lib/transformers/features/json/JsonCreateValidateStringifyProgrammer.d.ts +1 -0
  298. package/lib/transformers/features/json/JsonIsParseTransformer.d.ts +1 -0
  299. package/lib/transformers/features/json/JsonIsStringifyTransformer.d.ts +1 -0
  300. package/lib/transformers/features/json/JsonStringifyTransformer.d.ts +1 -0
  301. package/lib/transformers/features/json/JsonValidateParseTransformer.d.ts +1 -0
  302. package/lib/transformers/features/json/JsonValidateStringifyTransformer.d.ts +1 -0
  303. package/lib/transformers/features/misc/MetadataTransformer.js +13 -5
  304. package/lib/transformers/features/misc/MetadataTransformer.js.map +1 -1
  305. package/lib/transformers/features/misc/MiscAssertCloneTransformer.d.ts +1 -0
  306. package/lib/transformers/features/misc/MiscAssertPruneTransformer.d.ts +1 -0
  307. package/lib/transformers/features/misc/MiscCloneTransformer.d.ts +1 -0
  308. package/lib/transformers/features/misc/MiscCreateAssertCloneTransformer.d.ts +1 -0
  309. package/lib/transformers/features/misc/MiscCreateAssertPruneTransformer.d.ts +1 -0
  310. package/lib/transformers/features/misc/MiscCreateCloneTransformer.d.ts +1 -0
  311. package/lib/transformers/features/misc/MiscCreateIsCloneTransformer.d.ts +1 -0
  312. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.d.ts +1 -0
  313. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js +2 -2
  314. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js.map +1 -1
  315. package/lib/transformers/features/misc/MiscCreatePruneTransformer.d.ts +1 -0
  316. package/lib/transformers/features/misc/MiscCreateValidateCloneTransformer.d.ts +1 -0
  317. package/lib/transformers/features/misc/MiscCreateValidatePruneTransformer.d.ts +1 -0
  318. package/lib/transformers/features/misc/MiscIsCloneTransformer.d.ts +1 -0
  319. package/lib/transformers/features/misc/MiscIsPruneTransformer.d.ts +1 -0
  320. package/lib/transformers/features/misc/MiscIsPruneTransformer.js +2 -2
  321. package/lib/transformers/features/misc/MiscIsPruneTransformer.js.map +1 -1
  322. package/lib/transformers/features/misc/MiscLiteralsTransformer.js +9 -4
  323. package/lib/transformers/features/misc/MiscLiteralsTransformer.js.map +1 -1
  324. package/lib/transformers/features/misc/MiscPruneTransformer.d.ts +1 -0
  325. package/lib/transformers/features/misc/MiscValidateCloneTransformer.d.ts +1 -0
  326. package/lib/transformers/features/misc/MiscValidatePruneTransformer.d.ts +1 -0
  327. package/lib/transformers/features/protobuf/CreateProtobufAssertDecodeTransformer.d.ts +1 -0
  328. package/lib/transformers/features/protobuf/CreateProtobufAssertEncodeTransformer.d.ts +1 -0
  329. package/lib/transformers/features/protobuf/CreateProtobufDecodeTransformer.d.ts +1 -0
  330. package/lib/transformers/features/protobuf/CreateProtobufEncodeTransformer.d.ts +1 -0
  331. package/lib/transformers/features/protobuf/CreateProtobufIsDecodeTransformer.d.ts +1 -0
  332. package/lib/transformers/features/protobuf/CreateProtobufIsEncodeTransformer.d.ts +1 -0
  333. package/lib/transformers/features/protobuf/CreateProtobufValidateDecodeTransformer.d.ts +1 -0
  334. package/lib/transformers/features/protobuf/CreateProtobufValidateEncodeTransformer.d.ts +1 -0
  335. package/lib/transformers/features/protobuf/ProtobufAssertDecodeTransformer.d.ts +1 -0
  336. package/lib/transformers/features/protobuf/ProtobufAssertEncodeTransformer.d.ts +1 -0
  337. package/lib/transformers/features/protobuf/ProtobufDecodeTransformer.d.ts +1 -0
  338. package/lib/transformers/features/protobuf/ProtobufEncodeTransformer.d.ts +1 -0
  339. package/lib/transformers/features/protobuf/ProtobufIsDecodeTransformer.d.ts +1 -0
  340. package/lib/transformers/features/protobuf/ProtobufIsEncodeTransformer.d.ts +1 -0
  341. package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js +9 -2
  342. package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js.map +1 -1
  343. package/lib/transformers/features/protobuf/ProtobufValidateDecodeTransformer.d.ts +1 -0
  344. package/lib/transformers/features/protobuf/ProtobufValidateEncodeTransformer.d.ts +1 -0
  345. package/lib/transformers/internal/GenericTransformer.js +17 -4
  346. package/lib/transformers/internal/GenericTransformer.js.map +1 -1
  347. package/lib/typings/ProtobufAtomic.d.ts +5 -0
  348. package/lib/{schemas/metadata/ICommentTag.js → typings/ProtobufAtomic.js} +1 -1
  349. package/lib/typings/ProtobufAtomic.js.map +1 -0
  350. package/lib/typings/ValidationPipe.d.ts +7 -0
  351. package/lib/{schemas/metadata/IMetadataTag.js → typings/ValidationPipe.js} +1 -1
  352. package/lib/typings/ValidationPipe.js.map +1 -0
  353. package/package.json +6 -2
  354. package/src/IRandomGenerator.ts +4 -3
  355. package/src/Primitive.ts +135 -135
  356. package/src/Resolved.ts +116 -116
  357. package/src/executable/TypiaGenerateWizard.ts +1 -1
  358. package/src/executable/TypiaSetupWizard.ts +1 -1
  359. package/src/executable/setup/PackageManager.ts +1 -1
  360. package/src/executable/setup/PluginConfigurator.ts +2 -2
  361. package/src/factories/ExpressionFactory.ts +46 -2
  362. package/src/factories/IdentifierFactory.ts +15 -0
  363. package/src/factories/JsonMetadataFactory.ts +43 -0
  364. package/src/factories/LiteralFactory.ts +11 -3
  365. package/src/factories/MetadataCollection.ts +18 -18
  366. package/src/factories/MetadataCommentTagFactory.ts +629 -0
  367. package/src/factories/MetadataFactory.ts +214 -46
  368. package/src/factories/MetadataTypeTagFactory.ts +313 -0
  369. package/src/factories/NumericRangeFactory.ts +33 -0
  370. package/src/factories/ProtobufFactory.ts +272 -268
  371. package/src/factories/TypeFactory.ts +0 -5
  372. package/src/factories/internal/metadata/emend_metadata_atomics.ts +40 -35
  373. package/src/factories/internal/metadata/emplace_metadata_alias.ts +12 -11
  374. package/src/factories/internal/metadata/{emplace_metadata_array.ts → emplace_metadata_array_type.ts} +14 -7
  375. package/src/factories/internal/metadata/emplace_metadata_object.ts +20 -6
  376. package/src/factories/internal/metadata/emplace_metadata_tuple.ts +13 -3
  377. package/src/factories/internal/metadata/explore_metadata.ts +32 -38
  378. package/src/factories/internal/metadata/iterate_metadata.ts +44 -24
  379. package/src/factories/internal/metadata/iterate_metadata_alias.ts +7 -2
  380. package/src/factories/internal/metadata/iterate_metadata_array.ts +19 -6
  381. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +62 -63
  382. package/src/factories/internal/metadata/iterate_metadata_collection.ts +141 -133
  383. package/src/factories/internal/metadata/iterate_metadata_comment_tags.ts +26 -0
  384. package/src/factories/internal/metadata/iterate_metadata_intersection.ts +141 -28
  385. package/src/factories/internal/metadata/iterate_metadata_map.ts +20 -4
  386. package/src/factories/internal/metadata/iterate_metadata_native.ts +210 -210
  387. package/src/factories/internal/metadata/iterate_metadata_object.ts +12 -11
  388. package/src/factories/internal/metadata/iterate_metadata_resolve.ts +52 -49
  389. package/src/factories/internal/metadata/iterate_metadata_set.ts +11 -2
  390. package/src/factories/internal/metadata/iterate_metadata_sort.ts +69 -69
  391. package/src/factories/internal/metadata/iterate_metadata_template.ts +12 -3
  392. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +18 -5
  393. package/src/factories/internal/metadata/iterate_metadata_union.ts +10 -7
  394. package/src/functional/$ProtobufWriter.ts +151 -151
  395. package/src/functional/$any.ts +3 -1
  396. package/src/functional/$clone.ts +4 -0
  397. package/src/functional/Namespace.ts +0 -16
  398. package/src/json.ts +648 -648
  399. package/src/misc.ts +651 -651
  400. package/src/module.ts +656 -709
  401. package/src/programmers/AssertProgrammer.ts +317 -281
  402. package/src/programmers/CheckerProgrammer.ts +1137 -1174
  403. package/src/programmers/FeatureProgrammer.ts +13 -32
  404. package/src/programmers/IsProgrammer.ts +252 -241
  405. package/src/programmers/RandomProgrammer.ts +878 -874
  406. package/src/programmers/TypiaProgrammer.ts +36 -2
  407. package/src/programmers/ValidateProgrammer.ts +346 -307
  408. package/src/programmers/helpers/AtomicPredicator.ts +31 -31
  409. package/src/programmers/helpers/CloneJoiner.ts +57 -20
  410. package/src/programmers/helpers/FunctionImporeter.ts +91 -91
  411. package/src/programmers/helpers/ICheckEntry.ts +4 -3
  412. package/src/programmers/helpers/ProtobufUtil.ts +125 -29
  413. package/src/programmers/helpers/RandomJoiner.ts +11 -33
  414. package/src/programmers/helpers/RandomRanger.ts +16 -51
  415. package/src/programmers/helpers/StringifyPredicator.ts +12 -12
  416. package/src/programmers/helpers/UnionExplorer.ts +46 -51
  417. package/src/programmers/helpers/disable_function_importer_declare.ts +32 -32
  418. package/src/programmers/internal/application_alias.ts +0 -1
  419. package/src/programmers/internal/application_array.ts +33 -10
  420. package/src/programmers/internal/application_default_string.ts +37 -37
  421. package/src/programmers/internal/{application_resolved.ts → application_escaped.ts} +55 -55
  422. package/src/programmers/internal/application_number.ts +76 -70
  423. package/src/programmers/internal/application_object.ts +0 -3
  424. package/src/programmers/internal/application_schema.ts +175 -157
  425. package/src/programmers/internal/application_string.ts +33 -27
  426. package/src/programmers/internal/application_tuple.ts +12 -11
  427. package/src/programmers/internal/check_array_length.ts +34 -28
  428. package/src/programmers/internal/check_bigint.ts +26 -91
  429. package/src/programmers/internal/check_dynamic_properties.ts +1 -2
  430. package/src/programmers/internal/check_number.ts +83 -236
  431. package/src/programmers/internal/check_string.ts +37 -17
  432. package/src/programmers/internal/check_template.ts +17 -12
  433. package/src/programmers/internal/check_union_array_like.ts +4 -18
  434. package/src/programmers/internal/feature_object_entries.ts +12 -18
  435. package/src/programmers/internal/metadata_to_pattern.ts +34 -34
  436. package/src/programmers/internal/random_custom.ts +11 -3
  437. package/src/programmers/internal/stringify_dynamic_properties.ts +171 -171
  438. package/src/programmers/internal/wrap_metadata_rest_tuple.ts +9 -5
  439. package/src/programmers/json/JsonApplicationProgrammer.ts +6 -3
  440. package/src/programmers/json/JsonAssertParseProgrammer.ts +7 -2
  441. package/src/programmers/json/JsonIsParseProgrammer.ts +7 -2
  442. package/src/programmers/json/JsonStringifyProgrammer.ts +964 -995
  443. package/src/programmers/json/JsonValidateParseProgrammer.ts +7 -2
  444. package/src/programmers/json/JsonValidateStringifyProgrammer.ts +1 -1
  445. package/src/programmers/misc/MiscAssertCloneProgrammer.ts +71 -71
  446. package/src/programmers/misc/MiscCloneProgrammer.ts +774 -775
  447. package/src/programmers/misc/MiscIsCloneProgrammer.ts +78 -78
  448. package/src/programmers/{IsPruneProgrammer.ts → misc/MiscIsPruneProgrammer.ts} +7 -7
  449. package/src/programmers/misc/MiscLiteralsProgrammer.ts +69 -64
  450. package/src/programmers/misc/MiscPruneProgrammer.ts +550 -544
  451. package/src/programmers/misc/MiscValidateCloneProgrammer.ts +85 -85
  452. package/src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts +75 -75
  453. package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +655 -673
  454. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +883 -814
  455. package/src/programmers/protobuf/ProtobufIsDecodeProgrammer.ts +85 -85
  456. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +23 -36
  457. package/src/programmers/protobuf/ProtobufValidateDecodeProgrammer.ts +75 -75
  458. package/src/protobuf.ts +881 -881
  459. package/src/schemas/json/IJsonSchema.ts +11 -38
  460. package/src/schemas/metadata/IMetadata.ts +34 -27
  461. package/src/schemas/metadata/IMetadataAlias.ts +0 -2
  462. package/src/schemas/metadata/IMetadataArray.ts +4 -7
  463. package/src/schemas/metadata/IMetadataArrayType.ts +10 -0
  464. package/src/schemas/metadata/IMetadataAtomic.ts +3 -10
  465. package/src/schemas/metadata/IMetadataCollection.ts +4 -4
  466. package/src/schemas/metadata/IMetadataDictionary.ts +4 -4
  467. package/src/schemas/metadata/IMetadataEscaped.ts +6 -6
  468. package/src/schemas/metadata/IMetadataProperty.ts +0 -2
  469. package/src/schemas/metadata/IMetadataTuple.ts +4 -7
  470. package/src/schemas/metadata/IMetadataTupleType.ts +10 -0
  471. package/src/schemas/metadata/IMetadataTypeTag.ts +8 -0
  472. package/src/schemas/metadata/Metadata.ts +685 -643
  473. package/src/schemas/metadata/MetadataAlias.ts +0 -5
  474. package/src/schemas/metadata/MetadataArray.ts +28 -34
  475. package/src/schemas/metadata/MetadataArrayType.ts +57 -0
  476. package/src/schemas/metadata/MetadataAtomic.ts +42 -0
  477. package/src/schemas/metadata/MetadataEscaped.ts +51 -51
  478. package/src/schemas/metadata/MetadataProperty.ts +0 -5
  479. package/src/schemas/metadata/MetadataTuple.ts +9 -35
  480. package/src/schemas/metadata/MetadataTupleType.ts +67 -0
  481. package/src/tags/ExclusiveMaximum.ts +13 -8
  482. package/src/tags/ExclusiveMinimum.ts +13 -8
  483. package/src/tags/Format.ts +21 -20
  484. package/src/tags/MaxItems.ts +9 -8
  485. package/src/tags/MaxLength.ts +9 -8
  486. package/src/tags/Maximum.ts +13 -8
  487. package/src/tags/MinItems.ts +9 -8
  488. package/src/tags/MinLength.ts +9 -8
  489. package/src/tags/Minimum.ts +13 -8
  490. package/src/tags/MultipleOf.ts +15 -10
  491. package/src/tags/Pattern.ts +8 -8
  492. package/src/tags/TagBase.ts +64 -13
  493. package/src/tags/Type.ts +26 -29
  494. package/src/tags/index.ts +1 -0
  495. package/src/transform.ts +13 -5
  496. package/src/transformers/CallExpressionTransformer.ts +6 -3
  497. package/src/transformers/FileTransformer.ts +23 -13
  498. package/src/transformers/IProject.ts +4 -0
  499. package/src/transformers/NodeTransformer.ts +1 -1
  500. package/src/transformers/TransformerError.ts +55 -0
  501. package/src/transformers/features/CreateRandomTransformer.ts +11 -7
  502. package/src/transformers/features/RandomTransformer.ts +11 -7
  503. package/src/transformers/features/json/JsonApplicationTransformer.ts +116 -111
  504. package/src/transformers/features/misc/MetadataTransformer.ts +61 -53
  505. package/src/transformers/features/misc/MiscCreateIsPruneTransformer.ts +2 -2
  506. package/src/transformers/features/misc/MiscIsPruneTransformer.ts +2 -2
  507. package/src/transformers/features/misc/MiscLiteralsTransformer.ts +11 -7
  508. package/src/transformers/features/protobuf/ProtobufMessageTransformer.ts +9 -7
  509. package/src/transformers/internal/GenericTransformer.ts +17 -10
  510. package/src/typings/Atomic.ts +1 -0
  511. package/src/typings/ProtobufAtomic.ts +19 -0
  512. package/src/typings/ValidationPipe.ts +9 -0
  513. package/src/utils/RandomGenerator.ts +83 -83
  514. package/lib/CustomValidatorMap.d.ts +0 -110
  515. package/lib/CustomValidatorMap.js.map +0 -1
  516. package/lib/factories/MetadataTagFactory.d.ts +0 -6
  517. package/lib/factories/MetadataTagFactory.js +0 -312
  518. package/lib/factories/MetadataTagFactory.js.map +0 -1
  519. package/lib/factories/internal/metadata/emplace_metadata_array.d.ts +0 -5
  520. package/lib/factories/internal/metadata/emplace_metadata_array.js +0 -38
  521. package/lib/factories/internal/metadata/emplace_metadata_array.js.map +0 -1
  522. package/lib/factories/internal/metadata/iterate_metadata_tag.d.ts +0 -2
  523. package/lib/factories/internal/metadata/iterate_metadata_tag.js +0 -50
  524. package/lib/factories/internal/metadata/iterate_metadata_tag.js.map +0 -1
  525. package/lib/functional/$is_custom.d.ts +0 -2
  526. package/lib/functional/$is_custom.js +0 -13
  527. package/lib/functional/$is_custom.js.map +0 -1
  528. package/lib/functional/$is_date.d.ts +0 -1
  529. package/lib/functional/$is_date.js +0 -7
  530. package/lib/functional/$is_date.js.map +0 -1
  531. package/lib/functional/$is_datetime.d.ts +0 -1
  532. package/lib/functional/$is_datetime.js +0 -8
  533. package/lib/functional/$is_datetime.js.map +0 -1
  534. package/lib/functional/$is_email.d.ts +0 -1
  535. package/lib/functional/$is_email.js +0 -7
  536. package/lib/functional/$is_email.js.map +0 -1
  537. package/lib/functional/$is_ipv4.d.ts +0 -1
  538. package/lib/functional/$is_ipv4.js +0 -7
  539. package/lib/functional/$is_ipv4.js.map +0 -1
  540. package/lib/functional/$is_ipv6.d.ts +0 -1
  541. package/lib/functional/$is_ipv6.js +0 -7
  542. package/lib/functional/$is_ipv6.js.map +0 -1
  543. package/lib/functional/$is_url.d.ts +0 -1
  544. package/lib/functional/$is_url.js +0 -7
  545. package/lib/functional/$is_url.js.map +0 -1
  546. package/lib/functional/$is_uuid.d.ts +0 -1
  547. package/lib/functional/$is_uuid.js +0 -7
  548. package/lib/functional/$is_uuid.js.map +0 -1
  549. package/lib/programmers/IsPruneProgrammer.js.map +0 -1
  550. package/lib/programmers/internal/application_resolved.d.ts +0 -4
  551. package/lib/programmers/internal/application_resolved.js.map +0 -1
  552. package/lib/programmers/internal/check_array.js +0 -44
  553. package/lib/programmers/internal/check_array.js.map +0 -1
  554. package/lib/programmers/internal/check_custom.d.ts +0 -1
  555. package/lib/programmers/internal/check_custom.js +0 -30
  556. package/lib/programmers/internal/check_custom.js.map +0 -1
  557. package/lib/programmers/internal/check_string_tags.d.ts +0 -1
  558. package/lib/programmers/internal/check_string_tags.js +0 -89
  559. package/lib/programmers/internal/check_string_tags.js.map +0 -1
  560. package/lib/programmers/internal/get_comment_tags.d.ts +0 -1
  561. package/lib/programmers/internal/get_comment_tags.js +0 -25
  562. package/lib/programmers/internal/get_comment_tags.js.map +0 -1
  563. package/lib/schemas/metadata/ICommentTag.d.ts +0 -4
  564. package/lib/schemas/metadata/ICommentTag.js.map +0 -1
  565. package/lib/schemas/metadata/IMetadataTag.d.ts +0 -63
  566. package/lib/schemas/metadata/IMetadataTag.js.map +0 -1
  567. package/src/CustomValidatorMap.ts +0 -126
  568. package/src/factories/MetadataTagFactory.ts +0 -366
  569. package/src/factories/internal/metadata/iterate_metadata_tag.ts +0 -31
  570. package/src/functional/$is_custom.ts +0 -14
  571. package/src/functional/$is_date.ts +0 -3
  572. package/src/functional/$is_datetime.ts +0 -2
  573. package/src/functional/$is_email.ts +0 -4
  574. package/src/functional/$is_ipv4.ts +0 -4
  575. package/src/functional/$is_ipv6.ts +0 -4
  576. package/src/functional/$is_url.ts +0 -4
  577. package/src/functional/$is_uuid.ts +0 -4
  578. package/src/programmers/internal/check_array.ts +0 -30
  579. package/src/programmers/internal/check_custom.ts +0 -31
  580. package/src/programmers/internal/check_string_tags.ts +0 -67
  581. package/src/programmers/internal/get_comment_tags.ts +0 -23
  582. package/src/schemas/metadata/ICommentTag.ts +0 -4
  583. package/src/schemas/metadata/IMetadataTag.ts +0 -112
  584. /package/lib/{programmers/internal/check_array.d.ts → factories/MetadataCommentTagFactory.d.ts} +0 -0
@@ -39,13 +39,35 @@ Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.ProtobufUtil = void 0;
40
40
  var ProtobufUtil;
41
41
  (function (ProtobufUtil) {
42
+ ProtobufUtil.isStaticObject = function (obj) {
43
+ return obj.properties.length >= 1 &&
44
+ obj.properties.every(function (p) { return p.key.isSoleLiteral(); });
45
+ };
46
+ ProtobufUtil.size = function (meta) {
47
+ return ProtobufUtil.getAtomics(meta).length +
48
+ meta.arrays.length +
49
+ meta.tuples.length +
50
+ meta.natives.length +
51
+ meta.objects.length +
52
+ meta.maps.length;
53
+ };
54
+ ProtobufUtil.isUnion = function (meta) { return ProtobufUtil.size(meta) > 1; };
42
55
  ProtobufUtil.getAtomics = function (meta) {
43
56
  var e_1, _a, e_2, _b;
44
57
  var set = new Set();
58
+ if (meta.templates.length)
59
+ set.add("string");
45
60
  try {
46
- for (var _c = __values(meta.atomics), _d = _c.next(); !_d.done; _d = _c.next()) {
47
- var a = _d.value;
48
- set.add(a.type);
61
+ for (var _c = __values(meta.constants), _d = _c.next(); !_d.done; _d = _c.next()) {
62
+ var c = _d.value;
63
+ if (c.type === "boolean")
64
+ set.add("bool");
65
+ else if (c.type === "bigint")
66
+ set.add("uint64");
67
+ else if (c.type === "number")
68
+ set.add(deduce_numeric_type(c.values));
69
+ else if (c.type === "string")
70
+ set.add("string");
49
71
  }
50
72
  }
51
73
  catch (e_1_1) { e_1 = { error: e_1_1 }; }
@@ -56,9 +78,16 @@ var ProtobufUtil;
56
78
  finally { if (e_1) throw e_1.error; }
57
79
  }
58
80
  try {
59
- for (var _e = __values(meta.constants), _f = _e.next(); !_f.done; _f = _e.next()) {
60
- var constant = _f.value;
61
- set.add(constant.type);
81
+ for (var _e = __values(meta.atomics), _f = _e.next(); !_f.done; _f = _e.next()) {
82
+ var atomic = _f.value;
83
+ if (atomic.type === "boolean")
84
+ set.add("bool");
85
+ else if (atomic.type === "bigint")
86
+ decode_bigint(atomic.tags).forEach(function (t) { return set.add(t); });
87
+ else if (atomic.type === "number")
88
+ decode_number(atomic.tags).forEach(function (t) { return set.add(t); });
89
+ else if (atomic.type === "string")
90
+ set.add("string");
62
91
  }
63
92
  }
64
93
  catch (e_2_1) { e_2 = { error: e_2_1 }; }
@@ -68,19 +97,148 @@ var ProtobufUtil;
68
97
  }
69
98
  finally { if (e_2) throw e_2.error; }
70
99
  }
71
- if (meta.templates.length)
72
- set.add("string");
73
- return __spreadArray([], __read(set), false).sort(function (x, y) { return ATOMIC_ORDER.get(x) - ATOMIC_ORDER.get(y); });
100
+ return __spreadArray([], __read(set), false).sort(compare);
74
101
  };
75
- ProtobufUtil.isStaticObject = function (obj) {
76
- return obj.properties.length >= 1 &&
77
- obj.properties.every(function (p) { return p.key.isSoleLiteral(); });
102
+ ProtobufUtil.getNumbers = function (meta) {
103
+ var e_3, _a, e_4, _b;
104
+ var set = new Set();
105
+ try {
106
+ for (var _c = __values(meta.constants), _d = _c.next(); !_d.done; _d = _c.next()) {
107
+ var c = _d.value;
108
+ if (c.type === "number")
109
+ set.add(deduce_numeric_type(c.values));
110
+ }
111
+ }
112
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
113
+ finally {
114
+ try {
115
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
116
+ }
117
+ finally { if (e_3) throw e_3.error; }
118
+ }
119
+ try {
120
+ for (var _e = __values(meta.atomics), _f = _e.next(); !_f.done; _f = _e.next()) {
121
+ var atomic = _f.value;
122
+ if (atomic.type === "number")
123
+ decode_number(atomic.tags).forEach(function (t) { return set.add(t); });
124
+ }
125
+ }
126
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
127
+ finally {
128
+ try {
129
+ if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
130
+ }
131
+ finally { if (e_4) throw e_4.error; }
132
+ }
133
+ return __spreadArray([], __read(set), false).sort(compare);
134
+ };
135
+ ProtobufUtil.getBigints = function (meta) {
136
+ var e_5, _a, e_6, _b;
137
+ var set = new Set();
138
+ try {
139
+ for (var _c = __values(meta.constants), _d = _c.next(); !_d.done; _d = _c.next()) {
140
+ var c = _d.value;
141
+ if (c.type === "bigint")
142
+ set.add("uint64");
143
+ }
144
+ }
145
+ catch (e_5_1) { e_5 = { error: e_5_1 }; }
146
+ finally {
147
+ try {
148
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
149
+ }
150
+ finally { if (e_5) throw e_5.error; }
151
+ }
152
+ try {
153
+ for (var _e = __values(meta.atomics), _f = _e.next(); !_f.done; _f = _e.next()) {
154
+ var atomic = _f.value;
155
+ if (atomic.type === "bigint")
156
+ decode_bigint(atomic.tags).forEach(function (t) { return set.add(t); });
157
+ }
158
+ }
159
+ catch (e_6_1) { e_6 = { error: e_6_1 }; }
160
+ finally {
161
+ try {
162
+ if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
163
+ }
164
+ finally { if (e_6) throw e_6.error; }
165
+ }
166
+ return __spreadArray([], __read(set), false).sort(compare);
167
+ };
168
+ var compare = function (x, y) {
169
+ return ATOMIC_ORDER.get(x) - ATOMIC_ORDER.get(y);
78
170
  };
79
171
  })(ProtobufUtil || (exports.ProtobufUtil = ProtobufUtil = {}));
80
172
  var ATOMIC_ORDER = new Map([
81
- ["boolean", 0],
82
- ["bigint", 1],
83
- ["number", 2],
84
- ["string", 3],
85
- ]);
173
+ "bool",
174
+ "int32",
175
+ "uint32",
176
+ "int64",
177
+ "uint64",
178
+ "float",
179
+ "double",
180
+ "string",
181
+ ].map(function (str, i) { return [str, i]; }));
182
+ var deduce_numeric_type = function (values) {
183
+ return values.every(function (v) { return Math.floor(v) === v; })
184
+ ? values.every(function (v) { return -2147483648 <= v && v <= 2147483647; })
185
+ ? "int32"
186
+ : "int64"
187
+ : "double";
188
+ };
189
+ var decode_bigint = function (typeTags) {
190
+ var e_7, _a;
191
+ var _b;
192
+ if (typeTags.length === 0)
193
+ return ["int64"];
194
+ var types = new Set();
195
+ try {
196
+ for (var typeTags_1 = __values(typeTags), typeTags_1_1 = typeTags_1.next(); !typeTags_1_1.done; typeTags_1_1 = typeTags_1.next()) {
197
+ var row = typeTags_1_1.value;
198
+ var value = (_b = row.find(function (tag) {
199
+ return tag.kind === "type" &&
200
+ (tag.value === "int64" || tag.value === "uint64");
201
+ })) === null || _b === void 0 ? void 0 : _b.value;
202
+ types.add(value !== null && value !== void 0 ? value : "int64");
203
+ }
204
+ }
205
+ catch (e_7_1) { e_7 = { error: e_7_1 }; }
206
+ finally {
207
+ try {
208
+ if (typeTags_1_1 && !typeTags_1_1.done && (_a = typeTags_1.return)) _a.call(typeTags_1);
209
+ }
210
+ finally { if (e_7) throw e_7.error; }
211
+ }
212
+ return __spreadArray([], __read(types), false);
213
+ };
214
+ var decode_number = function (typeTags) {
215
+ var e_8, _a;
216
+ var _b;
217
+ if (typeTags.length === 0)
218
+ return ["double"];
219
+ var types = new Set();
220
+ try {
221
+ for (var typeTags_2 = __values(typeTags), typeTags_2_1 = typeTags_2.next(); !typeTags_2_1.done; typeTags_2_1 = typeTags_2.next()) {
222
+ var row = typeTags_2_1.value;
223
+ var value = (_b = row.find(function (tag) {
224
+ return tag.kind === "type" &&
225
+ (tag.value === "int32" ||
226
+ tag.value === "uint32" ||
227
+ tag.value === "int64" ||
228
+ tag.value === "uint64" ||
229
+ tag.value === "float" ||
230
+ tag.value === "double");
231
+ })) === null || _b === void 0 ? void 0 : _b.value;
232
+ types.add(value !== null && value !== void 0 ? value : "double");
233
+ }
234
+ }
235
+ catch (e_8_1) { e_8 = { error: e_8_1 }; }
236
+ finally {
237
+ try {
238
+ if (typeTags_2_1 && !typeTags_2_1.done && (_a = typeTags_2.return)) _a.call(typeTags_2);
239
+ }
240
+ finally { if (e_8) throw e_8.error; }
241
+ }
242
+ return __spreadArray([], __read(types), false);
243
+ };
86
244
  //# sourceMappingURL=ProtobufUtil.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProtobufUtil.js","sourceRoot":"","sources":["../../../src/programmers/helpers/ProtobufUtil.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAiB,YAAY,CAgB5B;AAhBD,WAAiB,YAAY;IACZ,uBAAU,GAAG,UAAC,IAAc;;QACrC,IAAM,GAAG,GAAwB,IAAI,GAAG,EAAE,CAAC;;YAE3C,KAAgB,IAAA,KAAA,SAAA,IAAI,CAAC,OAAO,CAAA,gBAAA;gBAAvB,IAAM,CAAC,WAAA;gBAAkB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAAA;;;;;;;;;;YAC9C,KAAuB,IAAA,KAAA,SAAA,IAAI,CAAC,SAAS,CAAA,gBAAA;gBAAhC,IAAM,QAAQ,WAAA;gBAAoB,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAAA;;;;;;;;;QAC9D,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM;YAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE7C,OAAO,yBAAI,GAAG,UAAE,IAAI,CAChB,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,YAAY,CAAC,GAAG,CAAC,CAAC,CAAE,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAE,EAA3C,CAA2C,CACxD,CAAC;IACN,CAAC,CAAC;IAEW,2BAAc,GAAG,UAAC,GAAmB;QAC9C,OAAA,GAAG,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC;YAC1B,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,EAArB,CAAqB,CAAC;IADlD,CACkD,CAAC;AAC3D,CAAC,EAhBgB,YAAY,4BAAZ,YAAY,QAgB5B;AAED,IAAM,YAAY,GAAG,IAAI,GAAG,CAAyB;IACjD,CAAC,SAAS,EAAE,CAAC,CAAC;IACd,CAAC,QAAQ,EAAE,CAAC,CAAC;IACb,CAAC,QAAQ,EAAE,CAAC,CAAC;IACb,CAAC,QAAQ,EAAE,CAAC,CAAC;CAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"ProtobufUtil.js","sourceRoot":"","sources":["../../../src/programmers/helpers/ProtobufUtil.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,10 @@
1
1
  import ts from "typescript";
2
- import { ICommentTag } from "../../schemas/metadata/ICommentTag";
3
- import { IMetadataTag } from "../../schemas/metadata/IMetadataTag";
4
2
  import { Metadata } from "../../schemas/metadata/Metadata";
5
3
  import { MetadataObject } from "../../schemas/metadata/MetadataObject";
6
4
  export declare namespace RandomJoiner {
7
- type Decoder = (meta: Metadata, tags: IMetadataTag[], comments: ICommentTag[]) => ts.Expression;
8
- const array: (coalesce: (method: string) => ts.Expression) => (decoder: Decoder) => (explore: IExplore) => (length: ts.Expression | undefined) => (item: Metadata, tags: IMetadataTag[], comments: ICommentTag[]) => ts.Expression;
9
- const tuple: (decoder: Decoder) => (items: Metadata[], tags: IMetadataTag[], comments: ICommentTag[]) => ts.ArrayLiteralExpression;
5
+ type Decoder = (meta: Metadata) => ts.Expression;
6
+ const array: (coalesce: (method: string) => ts.Expression) => (decoder: Decoder) => (explore: IExplore) => (length: ts.Expression | undefined) => (item: Metadata) => ts.Expression;
7
+ const tuple: (decoder: Decoder) => (elements: Metadata[]) => ts.ArrayLiteralExpression;
10
8
  const object: (coalesce: (method: string) => ts.Expression) => (decoder: Decoder) => (obj: MetadataObject) => ts.ConciseBody;
11
9
  }
12
10
  interface IExplore {
@@ -33,16 +33,15 @@ var typescript_1 = __importDefault(require("typescript"));
33
33
  var StatementFactory_1 = require("../../factories/StatementFactory");
34
34
  var TypeFactory_1 = require("../../factories/TypeFactory");
35
35
  var Escaper_1 = require("../../utils/Escaper");
36
- var get_comment_tags_1 = require("../internal/get_comment_tags");
37
36
  var RandomJoiner;
38
37
  (function (RandomJoiner) {
39
38
  RandomJoiner.array = function (coalesce) {
40
39
  return function (decoder) {
41
40
  return function (explore) {
42
41
  return function (length) {
43
- return function (item, tags, comments) {
42
+ return function (item) {
44
43
  var generator = typescript_1.default.factory.createCallExpression(coalesce("array"), undefined, __spreadArray([
45
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, decoder(item, tags, comments))
44
+ typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, decoder(item))
46
45
  ], __read((length ? [length] : [])), false));
47
46
  if (explore.recursive === false)
48
47
  return generator;
@@ -52,11 +51,9 @@ var RandomJoiner;
52
51
  };
53
52
  };
54
53
  };
55
- RandomJoiner.tuple = function (decoder) {
56
- return function (items, tags, comments) {
57
- return typescript_1.default.factory.createArrayLiteralExpression(items.map(function (i) { var _a; return decoder((_a = i.rest) !== null && _a !== void 0 ? _a : i, tags, comments); }), true);
58
- };
59
- };
54
+ RandomJoiner.tuple = function (decoder) { return function (elements) {
55
+ return typescript_1.default.factory.createArrayLiteralExpression(elements.map(function (elem) { var _a; return decoder((_a = elem.rest) !== null && _a !== void 0 ? _a : elem); }), true);
56
+ }; };
60
57
  RandomJoiner.object = function (coalesce) {
61
58
  return function (decoder) {
62
59
  return function (obj) {
@@ -68,7 +65,7 @@ var RandomJoiner;
68
65
  var str = p.key.getSoleLiteral();
69
66
  return typescript_1.default.factory.createPropertyAssignment(Escaper_1.Escaper.variable(str)
70
67
  ? str
71
- : typescript_1.default.factory.createStringLiteral(str), decoder(p.value, p.tags, (0, get_comment_tags_1.get_comment_tags)(false)(p.jsDocTags)));
68
+ : typescript_1.default.factory.createStringLiteral(str), decoder(p.value));
72
69
  }), true);
73
70
  if (dynamic.length === 0)
74
71
  return literal;
@@ -91,7 +88,7 @@ var RandomJoiner;
91
88
  return function (decoder) {
92
89
  return function (p) {
93
90
  return typescript_1.default.factory.createCallExpression(coalesce("array"), undefined, [
94
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createElementAccessExpression(typescript_1.default.factory.createIdentifier("output"), decoder(p.key, [], [])), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsToken), decoder(p.value, p.tags, (0, get_comment_tags_1.get_comment_tags)(false)(p.jsDocTags)))),
91
+ typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createElementAccessExpression(typescript_1.default.factory.createIdentifier("output"), decoder(p.key)), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsToken), decoder(p.value))),
95
92
  typescript_1.default.factory.createCallExpression(coalesce("integer"), undefined, [
96
93
  typescript_1.default.factory.createNumericLiteral(0),
97
94
  typescript_1.default.factory.createNumericLiteral(3),
@@ -1 +1 @@
1
- {"version":3,"file":"RandomJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomJoiner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RandomJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomJoiner.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,19 @@
1
1
  import ts from "typescript";
2
- import { IMetadataTag } from "../../schemas/metadata/IMetadataTag";
2
+ import { IMetadataTypeTag } from "../../schemas/metadata/IMetadataTypeTag";
3
3
  export declare namespace RandomRanger {
4
4
  interface IDefaults {
5
5
  minimum: number;
6
6
  maximum: number;
7
7
  gap: number;
8
8
  }
9
- const length: (coalesce: (method: string) => ts.Expression) => (defs: IDefaults) => (acc: length.IAccessors) => (tags: IMetadataTag[]) => ts.Expression | undefined;
9
+ const length: (coalesce: (method: string) => ts.Expression) => (defs: IDefaults) => (acc: length.IAccessors) => (tags: IMetadataTypeTag[]) => ts.Expression | undefined;
10
10
  namespace length {
11
11
  interface IAccessors {
12
- minimum: IMetadataTag["kind"];
13
- maximum: IMetadataTag["kind"];
14
- fixed: IMetadataTag["kind"];
12
+ minimum: string;
13
+ maximum: string;
15
14
  }
16
15
  }
17
- const number: (config: number.IConfig) => (defs: IDefaults) => (tags: IMetadataTag[]) => ts.Expression;
16
+ const number: (config: number.IConfig) => (defs: IDefaults) => (tags: IMetadataTypeTag[]) => ts.Expression;
18
17
  namespace number {
19
18
  interface IConfig {
20
19
  setter: (args: number[]) => ts.Expression;
@@ -13,13 +13,10 @@ var RandomRanger;
13
13
  return function (tags) {
14
14
  var _a, _b;
15
15
  var props = {
16
- fixed: getter(tags)(acc.fixed),
17
16
  minimum: getter(tags)(acc.minimum),
18
17
  maximum: getter(tags)(acc.maximum),
19
18
  };
20
- if (props.fixed !== undefined)
21
- return typescript_1.default.factory.createNumericLiteral(props.fixed);
22
- else if (props.minimum === undefined && props.maximum === undefined)
19
+ if (props.minimum === undefined && props.maximum === undefined)
23
20
  return undefined;
24
21
  (_a = props.minimum) !== null && _a !== void 0 ? _a : (props.minimum = defs.minimum);
25
22
  (_b = props.maximum) !== null && _b !== void 0 ? _b : (props.maximum = defs.maximum);
@@ -46,18 +43,12 @@ var RandomRanger;
46
43
  value: (_b = getter(tags)("maximum")) !== null && _b !== void 0 ? _b : getter(tags)("exclusiveMaximum"),
47
44
  exclusive: getter(tags)("exclusiveMaximum") !== undefined,
48
45
  },
49
- step: getter(tags)("step"),
46
+ stepper: undefined,
50
47
  multiply: getter(tags)("multipleOf"),
51
48
  };
52
- if (Object.values(range).every(function (v) { return v !== undefined; }))
53
- return config.setter([]);
54
- if (range.step !== undefined) {
55
- var _e = stepper(defs.gap)(range)(range.step), intercept = _e.intercept, minimum_1 = _e.minimum, maximum_1 = _e.maximum;
56
- return typescript_1.default.factory.createAdd(config.transform(intercept), typescript_1.default.factory.createMultiply(config.transform(range.step), config.setter([minimum_1, maximum_1])));
57
- }
58
- else if (range.multiply !== undefined) {
59
- var _f = multiplier(defs.gap)(range)(range.multiply), minimum_2 = _f.minimum, maximum_2 = _f.maximum;
60
- return typescript_1.default.factory.createMultiply(config.transform(range.multiply), config.setter([minimum_2, maximum_2]));
49
+ if (range.multiply !== undefined) {
50
+ var _e = multiplier(defs.gap)(range)(range.multiply), minimum_1 = _e.minimum, maximum_1 = _e.maximum;
51
+ return typescript_1.default.factory.createMultiply(config.transform(range.multiply), config.setter([minimum_1, maximum_1]));
61
52
  }
62
53
  var integer = function (value) { return value === Math.floor(value); };
63
54
  if (config.type === "int") {
@@ -98,26 +89,15 @@ var RandomRanger;
98
89
  };
99
90
  })(RandomRanger || (exports.RandomRanger = RandomRanger = {}));
100
91
  var getter = function (tags) {
101
- return function (kind) { var _a; return (_a = tags.find(function (t) { return t.kind === kind; })) === null || _a === void 0 ? void 0 : _a.value; };
102
- };
103
- var stepper = function (gap) { return function (range) { return function (s) {
104
- var intercept = range.minimum.value;
105
- var minimum = range.minimum.exclusive ? 1 : 0;
106
- if (range.maximum.value === undefined)
107
- return {
108
- intercept: intercept,
109
- minimum: minimum,
110
- maximum: gap,
111
- };
112
- var y = Math.floor(range.maximum.value - intercept) / s;
113
- return {
114
- intercept: intercept,
115
- minimum: minimum,
116
- maximum: range.maximum.exclusive && intercept + y * s === range.maximum.value
117
- ? y - 1
118
- : y,
92
+ return function (kind) {
93
+ var _a;
94
+ var value = (_a = tags.find(function (t) {
95
+ return t.kind === kind &&
96
+ (typeof t.value === "number" || typeof t.value === "bigint");
97
+ })) === null || _a === void 0 ? void 0 : _a.value;
98
+ return value !== undefined ? Number(value) : undefined;
119
99
  };
120
- }; }; };
100
+ };
121
101
  var multiplier = function (gap) { return function (range) { return function (m) {
122
102
  var minimum = range.minimum.value === undefined
123
103
  ? 0
@@ -1 +1 @@
1
- {"version":3,"file":"RandomRanger.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomRanger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RandomRanger.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomRanger.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import ts from "typescript";
2
- import { IMetadataTag } from "../../schemas/metadata/IMetadataTag";
3
2
  import { Metadata } from "../../schemas/metadata/Metadata";
4
3
  import { MetadataArray } from "../../schemas/metadata/MetadataArray";
5
4
  import { MetadataObject } from "../../schemas/metadata/MetadataObject";
@@ -8,27 +7,27 @@ import { FeatureProgrammer } from "../FeatureProgrammer";
8
7
  import { check_union_array_like } from "../internal/check_union_array_like";
9
8
  export declare namespace UnionExplorer {
10
9
  interface Decoder<T> {
11
- (input: ts.Expression, target: T, explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]): ts.Expression;
10
+ (input: ts.Expression, target: T, explore: FeatureProgrammer.IExplore): ts.Expression;
12
11
  }
13
12
  type ObjectCombiner = Decoder<MetadataObject[]>;
14
- const object: (config: FeatureProgrammer.IConfig, level?: number) => (input: ts.Expression, targets: MetadataObject[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.Expression;
15
- const tuple: (props: check_union_array_like.IProps<MetadataTuple, MetadataTuple>) => (parameters: ts.ParameterDeclaration[]) => (input: ts.Expression, origins: MetadataTuple[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.ArrowFunction;
13
+ const object: (config: FeatureProgrammer.IConfig, level?: number) => (input: ts.Expression, targets: MetadataObject[], explore: FeatureProgrammer.IExplore) => ts.Expression;
14
+ const tuple: (props: check_union_array_like.IProps<MetadataTuple, MetadataTuple>) => (parameters: ts.ParameterDeclaration[]) => (input: ts.Expression, origins: MetadataTuple[], explore: FeatureProgrammer.IExplore) => ts.ArrowFunction;
16
15
  namespace tuple {
17
16
  type IProps = check_union_array_like.IProps<MetadataTuple, MetadataTuple>;
18
17
  }
19
- const array: (props: array.IProps) => (parameters: ts.ParameterDeclaration[]) => (input: ts.Expression, origins: MetadataArray[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.ArrowFunction;
18
+ const array: (props: array.IProps) => (parameters: ts.ParameterDeclaration[]) => (input: ts.Expression, origins: MetadataArray[], explore: FeatureProgrammer.IExplore) => ts.ArrowFunction;
20
19
  namespace array {
21
20
  type IProps = check_union_array_like.IProps<MetadataArray, Metadata>;
22
21
  }
23
- const array_or_tuple: (props: array_or_tuple.IProps) => (parameters: ts.ParameterDeclaration[]) => (input: ts.Expression, origins: (MetadataArray | MetadataTuple)[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.ArrowFunction;
22
+ const array_or_tuple: (props: array_or_tuple.IProps) => (parameters: ts.ParameterDeclaration[]) => (input: ts.Expression, origins: (MetadataArray | MetadataTuple)[], explore: FeatureProgrammer.IExplore) => ts.ArrowFunction;
24
23
  namespace array_or_tuple {
25
24
  type IProps = check_union_array_like.IProps<MetadataArray | MetadataTuple, Metadata>;
26
25
  }
27
- const set: (props: set.IProps) => (parameters: ts.ParameterDeclaration[]) => (input: ts.Expression, origins: Metadata[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.ArrowFunction;
26
+ const set: (props: set.IProps) => (parameters: ts.ParameterDeclaration[]) => (input: ts.Expression, origins: Metadata[], explore: FeatureProgrammer.IExplore) => ts.ArrowFunction;
28
27
  namespace set {
29
28
  type IProps = check_union_array_like.IProps<MetadataArray, Metadata>;
30
29
  }
31
- const map: (props: map.IProps) => (parameters: ts.ParameterDeclaration[]) => (input: ts.Expression, origins: Metadata.Entry[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.ArrowFunction;
30
+ const map: (props: map.IProps) => (parameters: ts.ParameterDeclaration[]) => (input: ts.Expression, origins: Metadata.Entry[], explore: FeatureProgrammer.IExplore) => ts.ArrowFunction;
32
31
  namespace map {
33
32
  type IProps = check_union_array_like.IProps<MetadataArray, [
34
33
  Metadata,