typia 15.0.0 → 15.1.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 (1330) hide show
  1. package/lib/TypeGuardError.d.ts +20 -4
  2. package/lib/TypeGuardError.mjs.map +1 -1
  3. package/lib/basic.d.ts +787 -0
  4. package/lib/basic.js +104 -0
  5. package/lib/basic.js.map +1 -0
  6. package/lib/basic.mjs +86 -0
  7. package/lib/basic.mjs.map +1 -0
  8. package/lib/compare.d.ts +21 -0
  9. package/lib/compare.js.map +1 -1
  10. package/lib/compare.mjs.map +1 -1
  11. package/lib/functional.d.ts +42 -0
  12. package/lib/functional.js.map +1 -1
  13. package/lib/functional.mjs.map +1 -1
  14. package/lib/http.d.ts +124 -24
  15. package/lib/http.js.map +1 -1
  16. package/lib/http.mjs.map +1 -1
  17. package/lib/index.mjs +2 -1
  18. package/lib/index.mjs.map +1 -1
  19. package/lib/internal/_IProtobufWriter.d.ts +115 -0
  20. package/lib/internal/_ProtobufReader.d.ts +159 -1
  21. package/lib/internal/_ProtobufReader.js +159 -1
  22. package/lib/internal/_ProtobufReader.js.map +1 -1
  23. package/lib/internal/_ProtobufReader.mjs +159 -1
  24. package/lib/internal/_ProtobufReader.mjs.map +1 -1
  25. package/lib/internal/_ProtobufSizer.d.ts +135 -4
  26. package/lib/internal/_ProtobufSizer.js +134 -2
  27. package/lib/internal/_ProtobufSizer.js.map +1 -1
  28. package/lib/internal/_ProtobufSizer.mjs +133 -2
  29. package/lib/internal/_ProtobufSizer.mjs.map +1 -1
  30. package/lib/internal/_ProtobufWriter.d.ts +151 -0
  31. package/lib/internal/_ProtobufWriter.js +154 -1
  32. package/lib/internal/_ProtobufWriter.js.map +1 -1
  33. package/lib/internal/_ProtobufWriter.mjs +153 -2
  34. package/lib/internal/_ProtobufWriter.mjs.map +1 -1
  35. package/lib/internal/_accessExpressionAsString.d.ts +11 -0
  36. package/lib/internal/_accessExpressionAsString.js +11 -0
  37. package/lib/internal/_accessExpressionAsString.js.map +1 -1
  38. package/lib/internal/_accessExpressionAsString.mjs +11 -0
  39. package/lib/internal/_accessExpressionAsString.mjs.map +1 -1
  40. package/lib/internal/_assertGuard.d.ts +12 -0
  41. package/lib/internal/_assertGuard.js +12 -0
  42. package/lib/internal/_assertGuard.js.map +1 -1
  43. package/lib/internal/_assertGuard.mjs +12 -0
  44. package/lib/internal/_assertGuard.mjs.map +1 -1
  45. package/lib/internal/_coerceLlmArguments.d.ts +10 -0
  46. package/lib/internal/_coerceLlmArguments.js +10 -0
  47. package/lib/internal/_coerceLlmArguments.js.map +1 -1
  48. package/lib/internal/_coerceLlmArguments.mjs +10 -0
  49. package/lib/internal/_coerceLlmArguments.mjs.map +1 -1
  50. package/lib/internal/_createLlmEvaluation.js +9 -46
  51. package/lib/internal/_createLlmEvaluation.js.map +1 -1
  52. package/lib/internal/_createLlmEvaluation.mjs +7 -35
  53. package/lib/internal/_createLlmEvaluation.mjs.map +1 -1
  54. package/lib/internal/_createStandardSchema.d.ts +13 -0
  55. package/lib/internal/_createStandardSchema.js +13 -0
  56. package/lib/internal/_createStandardSchema.js.map +1 -1
  57. package/lib/internal/_createStandardSchema.mjs +13 -0
  58. package/lib/internal/_createStandardSchema.mjs.map +1 -1
  59. package/lib/internal/_decimal.d.ts +75 -0
  60. package/lib/internal/_decimal.js +55 -0
  61. package/lib/internal/_decimal.js.map +1 -1
  62. package/lib/internal/_decimal.mjs +55 -0
  63. package/lib/internal/_decimal.mjs.map +1 -1
  64. package/lib/internal/_functionalTypeGuardErrorFactory.d.ts +8 -0
  65. package/lib/internal/_functionalTypeGuardErrorFactory.js +8 -0
  66. package/lib/internal/_functionalTypeGuardErrorFactory.js.map +1 -1
  67. package/lib/internal/_functionalTypeGuardErrorFactory.mjs +8 -0
  68. package/lib/internal/_functionalTypeGuardErrorFactory.mjs.map +1 -1
  69. package/lib/internal/_httpFormDataReadArray.d.ts +9 -0
  70. package/lib/internal/_httpFormDataReadArray.js +9 -0
  71. package/lib/internal/_httpFormDataReadArray.js.map +1 -1
  72. package/lib/internal/_httpFormDataReadArray.mjs +9 -0
  73. package/lib/internal/_httpFormDataReadArray.mjs.map +1 -1
  74. package/lib/internal/_httpFormDataReadBigint.d.ts +12 -0
  75. package/lib/internal/_httpFormDataReadBigint.js +19 -5
  76. package/lib/internal/_httpFormDataReadBigint.js.map +1 -1
  77. package/lib/internal/_httpFormDataReadBigint.mjs +13 -1
  78. package/lib/internal/_httpFormDataReadBigint.mjs.map +1 -1
  79. package/lib/internal/_httpFormDataReadBlob.d.ts +11 -0
  80. package/lib/internal/_httpFormDataReadBlob.js +11 -0
  81. package/lib/internal/_httpFormDataReadBlob.js.map +1 -1
  82. package/lib/internal/_httpFormDataReadBlob.mjs +11 -0
  83. package/lib/internal/_httpFormDataReadBlob.mjs.map +1 -1
  84. package/lib/internal/_httpFormDataReadBoolean.d.ts +11 -0
  85. package/lib/internal/_httpFormDataReadBoolean.js +23 -10
  86. package/lib/internal/_httpFormDataReadBoolean.js.map +1 -1
  87. package/lib/internal/_httpFormDataReadBoolean.mjs +12 -1
  88. package/lib/internal/_httpFormDataReadBoolean.mjs.map +1 -1
  89. package/lib/internal/_httpFormDataReadFile.d.ts +11 -0
  90. package/lib/internal/_httpFormDataReadFile.js +11 -0
  91. package/lib/internal/_httpFormDataReadFile.js.map +1 -1
  92. package/lib/internal/_httpFormDataReadFile.mjs +11 -0
  93. package/lib/internal/_httpFormDataReadFile.mjs.map +1 -1
  94. package/lib/internal/_httpFormDataReadNumber.d.ts +11 -0
  95. package/lib/internal/_httpFormDataReadNumber.js +18 -5
  96. package/lib/internal/_httpFormDataReadNumber.js.map +1 -1
  97. package/lib/internal/_httpFormDataReadNumber.mjs +12 -1
  98. package/lib/internal/_httpFormDataReadNumber.mjs.map +1 -1
  99. package/lib/internal/_httpFormDataReadString.d.ts +14 -1
  100. package/lib/internal/_httpFormDataReadString.js +15 -2
  101. package/lib/internal/_httpFormDataReadString.js.map +1 -1
  102. package/lib/internal/_httpFormDataReadString.mjs +14 -1
  103. package/lib/internal/_httpFormDataReadString.mjs.map +1 -1
  104. package/lib/internal/_httpHeaderReadBigint.d.ts +11 -0
  105. package/lib/internal/_httpHeaderReadBigint.js +16 -1
  106. package/lib/internal/_httpHeaderReadBigint.js.map +1 -1
  107. package/lib/internal/_httpHeaderReadBigint.mjs +13 -1
  108. package/lib/internal/_httpHeaderReadBigint.mjs.map +1 -1
  109. package/lib/internal/_httpHeaderReadBoolean.d.ts +12 -0
  110. package/lib/internal/_httpHeaderReadBoolean.js +12 -0
  111. package/lib/internal/_httpHeaderReadBoolean.js.map +1 -1
  112. package/lib/internal/_httpHeaderReadBoolean.mjs +12 -0
  113. package/lib/internal/_httpHeaderReadBoolean.mjs.map +1 -1
  114. package/lib/internal/_httpHeaderReadNumber.d.ts +11 -0
  115. package/lib/internal/_httpHeaderReadNumber.js +16 -1
  116. package/lib/internal/_httpHeaderReadNumber.js.map +1 -1
  117. package/lib/internal/_httpHeaderReadNumber.mjs +13 -1
  118. package/lib/internal/_httpHeaderReadNumber.mjs.map +1 -1
  119. package/lib/internal/_httpParameterReadBigint.d.ts +11 -0
  120. package/lib/internal/_httpParameterReadBigint.js +15 -0
  121. package/lib/internal/_httpParameterReadBigint.js.map +1 -1
  122. package/lib/internal/_httpParameterReadBigint.mjs +12 -0
  123. package/lib/internal/_httpParameterReadBigint.mjs.map +1 -1
  124. package/lib/internal/_httpParameterReadBoolean.d.ts +11 -0
  125. package/lib/internal/_httpParameterReadBoolean.js +11 -0
  126. package/lib/internal/_httpParameterReadBoolean.js.map +1 -1
  127. package/lib/internal/_httpParameterReadBoolean.mjs +11 -0
  128. package/lib/internal/_httpParameterReadBoolean.mjs.map +1 -1
  129. package/lib/internal/_httpParameterReadNumber.d.ts +11 -0
  130. package/lib/internal/_httpParameterReadNumber.js +15 -0
  131. package/lib/internal/_httpParameterReadNumber.js.map +1 -1
  132. package/lib/internal/_httpParameterReadNumber.mjs +12 -0
  133. package/lib/internal/_httpParameterReadNumber.mjs.map +1 -1
  134. package/lib/internal/_httpParameterReadString.d.ts +14 -1
  135. package/lib/internal/_httpParameterReadString.js +14 -1
  136. package/lib/internal/_httpParameterReadString.js.map +1 -1
  137. package/lib/internal/_httpParameterReadString.mjs +14 -1
  138. package/lib/internal/_httpParameterReadString.mjs.map +1 -1
  139. package/lib/internal/_httpQueryParseURLSearchParams.d.ts +14 -0
  140. package/lib/internal/_httpQueryParseURLSearchParams.js +14 -0
  141. package/lib/internal/_httpQueryParseURLSearchParams.js.map +1 -1
  142. package/lib/internal/_httpQueryParseURLSearchParams.mjs +14 -0
  143. package/lib/internal/_httpQueryParseURLSearchParams.mjs.map +1 -1
  144. package/lib/internal/_httpQueryReadArray.d.ts +9 -0
  145. package/lib/internal/_httpQueryReadArray.js +9 -0
  146. package/lib/internal/_httpQueryReadArray.js.map +1 -1
  147. package/lib/internal/_httpQueryReadArray.mjs +9 -0
  148. package/lib/internal/_httpQueryReadArray.mjs.map +1 -1
  149. package/lib/internal/_httpQueryReadBigint.d.ts +11 -0
  150. package/lib/internal/_httpQueryReadBigint.js +19 -1
  151. package/lib/internal/_httpQueryReadBigint.js.map +1 -1
  152. package/lib/internal/_httpQueryReadBigint.mjs +12 -1
  153. package/lib/internal/_httpQueryReadBigint.mjs.map +1 -1
  154. package/lib/internal/_httpQueryReadBoolean.d.ts +12 -0
  155. package/lib/internal/_httpQueryReadBoolean.js +16 -1
  156. package/lib/internal/_httpQueryReadBoolean.js.map +1 -1
  157. package/lib/internal/_httpQueryReadBoolean.mjs +13 -1
  158. package/lib/internal/_httpQueryReadBoolean.mjs.map +1 -1
  159. package/lib/internal/_httpQueryReadNumber.d.ts +11 -0
  160. package/lib/internal/_httpQueryReadNumber.js +19 -1
  161. package/lib/internal/_httpQueryReadNumber.js.map +1 -1
  162. package/lib/internal/_httpQueryReadNumber.mjs +12 -1
  163. package/lib/internal/_httpQueryReadNumber.mjs.map +1 -1
  164. package/lib/internal/_httpQueryReadString.d.ts +14 -1
  165. package/lib/internal/_httpQueryReadString.js +14 -1
  166. package/lib/internal/_httpQueryReadString.js.map +1 -1
  167. package/lib/internal/_httpQueryReadString.mjs +14 -1
  168. package/lib/internal/_httpQueryReadString.mjs.map +1 -1
  169. package/lib/internal/_isBetween.d.ts +8 -0
  170. package/lib/internal/_isBetween.js +8 -0
  171. package/lib/internal/_isBetween.js.map +1 -1
  172. package/lib/internal/_isBetween.mjs +8 -0
  173. package/lib/internal/_isBetween.mjs.map +1 -1
  174. package/lib/internal/_isBigintString.d.ts +11 -0
  175. package/lib/internal/_isBigintString.js +11 -0
  176. package/lib/internal/_isBigintString.js.map +1 -1
  177. package/lib/internal/_isBigintString.mjs +11 -0
  178. package/lib/internal/_isBigintString.mjs.map +1 -1
  179. package/lib/internal/_isFormatByte.d.ts +12 -0
  180. package/lib/internal/_isFormatByte.js +12 -0
  181. package/lib/internal/_isFormatByte.js.map +1 -1
  182. package/lib/internal/_isFormatByte.mjs +12 -0
  183. package/lib/internal/_isFormatByte.mjs.map +1 -1
  184. package/lib/internal/_isFormatDate.d.ts +11 -0
  185. package/lib/internal/_isFormatDate.js +11 -0
  186. package/lib/internal/_isFormatDate.js.map +1 -1
  187. package/lib/internal/_isFormatDate.mjs +11 -0
  188. package/lib/internal/_isFormatDate.mjs.map +1 -1
  189. package/lib/internal/_isFormatDateTime.d.ts +13 -0
  190. package/lib/internal/_isFormatDateTime.js +13 -0
  191. package/lib/internal/_isFormatDateTime.js.map +1 -1
  192. package/lib/internal/_isFormatDateTime.mjs +13 -0
  193. package/lib/internal/_isFormatDateTime.mjs.map +1 -1
  194. package/lib/internal/_isFormatDuration.d.ts +13 -0
  195. package/lib/internal/_isFormatDuration.js +13 -0
  196. package/lib/internal/_isFormatDuration.js.map +1 -1
  197. package/lib/internal/_isFormatDuration.mjs +13 -0
  198. package/lib/internal/_isFormatDuration.mjs.map +1 -1
  199. package/lib/internal/_isFormatEmail.d.ts +13 -0
  200. package/lib/internal/_isFormatEmail.js +13 -0
  201. package/lib/internal/_isFormatEmail.js.map +1 -1
  202. package/lib/internal/_isFormatEmail.mjs +13 -0
  203. package/lib/internal/_isFormatEmail.mjs.map +1 -1
  204. package/lib/internal/_isFormatHostname.d.ts +12 -0
  205. package/lib/internal/_isFormatHostname.js +12 -0
  206. package/lib/internal/_isFormatHostname.js.map +1 -1
  207. package/lib/internal/_isFormatHostname.mjs +12 -0
  208. package/lib/internal/_isFormatHostname.mjs.map +1 -1
  209. package/lib/internal/_isFormatIdnEmail.d.ts +14 -0
  210. package/lib/internal/_isFormatIdnEmail.js +14 -0
  211. package/lib/internal/_isFormatIdnEmail.js.map +1 -1
  212. package/lib/internal/_isFormatIdnEmail.mjs +14 -0
  213. package/lib/internal/_isFormatIdnEmail.mjs.map +1 -1
  214. package/lib/internal/_isFormatIdnHostname.d.ts +14 -0
  215. package/lib/internal/_isFormatIdnHostname.js +14 -0
  216. package/lib/internal/_isFormatIdnHostname.js.map +1 -1
  217. package/lib/internal/_isFormatIdnHostname.mjs +14 -0
  218. package/lib/internal/_isFormatIdnHostname.mjs.map +1 -1
  219. package/lib/internal/_isFormatIpv4.d.ts +11 -0
  220. package/lib/internal/_isFormatIpv4.js +11 -0
  221. package/lib/internal/_isFormatIpv4.js.map +1 -1
  222. package/lib/internal/_isFormatIpv4.mjs +11 -0
  223. package/lib/internal/_isFormatIpv4.mjs.map +1 -1
  224. package/lib/internal/_isFormatIpv6.d.ts +12 -0
  225. package/lib/internal/_isFormatIpv6.js +12 -0
  226. package/lib/internal/_isFormatIpv6.js.map +1 -1
  227. package/lib/internal/_isFormatIpv6.mjs +12 -0
  228. package/lib/internal/_isFormatIpv6.mjs.map +1 -1
  229. package/lib/internal/_isFormatIri.d.ts +11 -0
  230. package/lib/internal/_isFormatIri.js +11 -0
  231. package/lib/internal/_isFormatIri.js.map +1 -1
  232. package/lib/internal/_isFormatIri.mjs +11 -0
  233. package/lib/internal/_isFormatIri.mjs.map +1 -1
  234. package/lib/internal/_isFormatIriReference.d.ts +13 -0
  235. package/lib/internal/_isFormatIriReference.js +13 -0
  236. package/lib/internal/_isFormatIriReference.js.map +1 -1
  237. package/lib/internal/_isFormatIriReference.mjs +13 -0
  238. package/lib/internal/_isFormatIriReference.mjs.map +1 -1
  239. package/lib/internal/_isFormatJsonPointer.d.ts +11 -0
  240. package/lib/internal/_isFormatJsonPointer.js +11 -0
  241. package/lib/internal/_isFormatJsonPointer.js.map +1 -1
  242. package/lib/internal/_isFormatJsonPointer.mjs +11 -0
  243. package/lib/internal/_isFormatJsonPointer.mjs.map +1 -1
  244. package/lib/internal/_isFormatPassword.d.ts +11 -0
  245. package/lib/internal/_isFormatPassword.js +11 -0
  246. package/lib/internal/_isFormatPassword.js.map +1 -1
  247. package/lib/internal/_isFormatPassword.mjs +11 -0
  248. package/lib/internal/_isFormatPassword.mjs.map +1 -1
  249. package/lib/internal/_isFormatRegex.d.ts +11 -0
  250. package/lib/internal/_isFormatRegex.js +11 -0
  251. package/lib/internal/_isFormatRegex.js.map +1 -1
  252. package/lib/internal/_isFormatRegex.mjs +11 -0
  253. package/lib/internal/_isFormatRegex.mjs.map +1 -1
  254. package/lib/internal/_isFormatRelativeJsonPointer.d.ts +11 -0
  255. package/lib/internal/_isFormatRelativeJsonPointer.js +11 -0
  256. package/lib/internal/_isFormatRelativeJsonPointer.js.map +1 -1
  257. package/lib/internal/_isFormatRelativeJsonPointer.mjs +11 -0
  258. package/lib/internal/_isFormatRelativeJsonPointer.mjs.map +1 -1
  259. package/lib/internal/_isFormatTime.d.ts +12 -0
  260. package/lib/internal/_isFormatTime.js +12 -0
  261. package/lib/internal/_isFormatTime.js.map +1 -1
  262. package/lib/internal/_isFormatTime.mjs +12 -0
  263. package/lib/internal/_isFormatTime.mjs.map +1 -1
  264. package/lib/internal/_isFormatUri.d.ts +15 -0
  265. package/lib/internal/_isFormatUri.js +15 -0
  266. package/lib/internal/_isFormatUri.js.map +1 -1
  267. package/lib/internal/_isFormatUri.mjs +15 -0
  268. package/lib/internal/_isFormatUri.mjs.map +1 -1
  269. package/lib/internal/_isFormatUriReference.d.ts +11 -0
  270. package/lib/internal/_isFormatUriReference.js +11 -0
  271. package/lib/internal/_isFormatUriReference.js.map +1 -1
  272. package/lib/internal/_isFormatUriReference.mjs +11 -0
  273. package/lib/internal/_isFormatUriReference.mjs.map +1 -1
  274. package/lib/internal/_isFormatUriTemplate.d.ts +13 -0
  275. package/lib/internal/_isFormatUriTemplate.js +14 -1
  276. package/lib/internal/_isFormatUriTemplate.js.map +1 -1
  277. package/lib/internal/_isFormatUriTemplate.mjs +14 -1
  278. package/lib/internal/_isFormatUriTemplate.mjs.map +1 -1
  279. package/lib/internal/_isFormatUrl.d.ts +15 -0
  280. package/lib/internal/_isFormatUrl.js +15 -0
  281. package/lib/internal/_isFormatUrl.js.map +1 -1
  282. package/lib/internal/_isFormatUrl.mjs +15 -0
  283. package/lib/internal/_isFormatUrl.mjs.map +1 -1
  284. package/lib/internal/_isFormatUuid.d.ts +11 -0
  285. package/lib/internal/_isFormatUuid.js +11 -0
  286. package/lib/internal/_isFormatUuid.js.map +1 -1
  287. package/lib/internal/_isFormatUuid.mjs +11 -0
  288. package/lib/internal/_isFormatUuid.mjs.map +1 -1
  289. package/lib/internal/_isMultipleOf.d.ts +11 -0
  290. package/lib/internal/_isMultipleOf.js +11 -0
  291. package/lib/internal/_isMultipleOf.js.map +1 -1
  292. package/lib/internal/_isMultipleOf.mjs +11 -0
  293. package/lib/internal/_isMultipleOf.mjs.map +1 -1
  294. package/lib/internal/_isTypeFloat.d.ts +9 -0
  295. package/lib/internal/_isTypeFloat.js +9 -0
  296. package/lib/internal/_isTypeFloat.js.map +1 -1
  297. package/lib/internal/_isTypeFloat.mjs +9 -0
  298. package/lib/internal/_isTypeFloat.mjs.map +1 -1
  299. package/lib/internal/_isTypeInt16.d.ts +8 -0
  300. package/lib/internal/_isTypeInt16.js +8 -0
  301. package/lib/internal/_isTypeInt16.js.map +1 -1
  302. package/lib/internal/_isTypeInt16.mjs +8 -0
  303. package/lib/internal/_isTypeInt16.mjs.map +1 -1
  304. package/lib/internal/_isTypeInt32.d.ts +8 -0
  305. package/lib/internal/_isTypeInt32.js +8 -0
  306. package/lib/internal/_isTypeInt32.js.map +1 -1
  307. package/lib/internal/_isTypeInt32.mjs +8 -0
  308. package/lib/internal/_isTypeInt32.mjs.map +1 -1
  309. package/lib/internal/_isTypeInt64.d.ts +11 -0
  310. package/lib/internal/_isTypeInt64.js +11 -0
  311. package/lib/internal/_isTypeInt64.js.map +1 -1
  312. package/lib/internal/_isTypeInt64.mjs +11 -0
  313. package/lib/internal/_isTypeInt64.mjs.map +1 -1
  314. package/lib/internal/_isTypeInt64Bigint.d.ts +8 -0
  315. package/lib/internal/_isTypeInt64Bigint.js +8 -0
  316. package/lib/internal/_isTypeInt64Bigint.js.map +1 -1
  317. package/lib/internal/_isTypeInt64Bigint.mjs +8 -0
  318. package/lib/internal/_isTypeInt64Bigint.mjs.map +1 -1
  319. package/lib/internal/_isTypeInt8.d.ts +8 -0
  320. package/lib/internal/_isTypeInt8.js +8 -0
  321. package/lib/internal/_isTypeInt8.js.map +1 -1
  322. package/lib/internal/_isTypeInt8.mjs +8 -0
  323. package/lib/internal/_isTypeInt8.mjs.map +1 -1
  324. package/lib/internal/_isTypeUint16.d.ts +8 -0
  325. package/lib/internal/_isTypeUint16.js +8 -0
  326. package/lib/internal/_isTypeUint16.js.map +1 -1
  327. package/lib/internal/_isTypeUint16.mjs +8 -0
  328. package/lib/internal/_isTypeUint16.mjs.map +1 -1
  329. package/lib/internal/_isTypeUint32.d.ts +8 -0
  330. package/lib/internal/_isTypeUint32.js +8 -0
  331. package/lib/internal/_isTypeUint32.js.map +1 -1
  332. package/lib/internal/_isTypeUint32.mjs +8 -0
  333. package/lib/internal/_isTypeUint32.mjs.map +1 -1
  334. package/lib/internal/_isTypeUint64.d.ts +11 -0
  335. package/lib/internal/_isTypeUint64.js +11 -0
  336. package/lib/internal/_isTypeUint64.js.map +1 -1
  337. package/lib/internal/_isTypeUint64.mjs +11 -0
  338. package/lib/internal/_isTypeUint64.mjs.map +1 -1
  339. package/lib/internal/_isTypeUint64Bigint.d.ts +8 -0
  340. package/lib/internal/_isTypeUint64Bigint.js +8 -0
  341. package/lib/internal/_isTypeUint64Bigint.js.map +1 -1
  342. package/lib/internal/_isTypeUint64Bigint.mjs +8 -0
  343. package/lib/internal/_isTypeUint64Bigint.mjs.map +1 -1
  344. package/lib/internal/_isTypeUint8.d.ts +8 -0
  345. package/lib/internal/_isTypeUint8.js +8 -0
  346. package/lib/internal/_isTypeUint8.js.map +1 -1
  347. package/lib/internal/_isTypeUint8.mjs +8 -0
  348. package/lib/internal/_isTypeUint8.mjs.map +1 -1
  349. package/lib/internal/_isUniqueItems.d.ts +17 -0
  350. package/lib/internal/_isUniqueItems.js +58 -0
  351. package/lib/internal/_isUniqueItems.js.map +1 -1
  352. package/lib/internal/_isUniqueItems.mjs +41 -0
  353. package/lib/internal/_isUniqueItems.mjs.map +1 -1
  354. package/lib/internal/_jsonStringifyArray.js +2 -0
  355. package/lib/internal/_jsonStringifyArray.js.map +1 -1
  356. package/lib/internal/_jsonStringifyArray.mjs +2 -0
  357. package/lib/internal/_jsonStringifyArray.mjs.map +1 -1
  358. package/lib/internal/_jsonStringifyElement.js +2 -0
  359. package/lib/internal/_jsonStringifyElement.js.map +1 -1
  360. package/lib/internal/_jsonStringifyElement.mjs +2 -0
  361. package/lib/internal/_jsonStringifyElement.mjs.map +1 -1
  362. package/lib/internal/_jsonStringifyNumber.d.ts +9 -0
  363. package/lib/internal/_jsonStringifyNumber.js +9 -0
  364. package/lib/internal/_jsonStringifyNumber.js.map +1 -1
  365. package/lib/internal/_jsonStringifyNumber.mjs +9 -0
  366. package/lib/internal/_jsonStringifyNumber.mjs.map +1 -1
  367. package/lib/internal/_jsonStringifyProperty.js +3 -1
  368. package/lib/internal/_jsonStringifyProperty.js.map +1 -1
  369. package/lib/internal/_jsonStringifyProperty.mjs +3 -1
  370. package/lib/internal/_jsonStringifyProperty.mjs.map +1 -1
  371. package/lib/internal/_jsonStringifyRest.d.ts +11 -0
  372. package/lib/internal/_jsonStringifyRest.js +11 -0
  373. package/lib/internal/_jsonStringifyRest.js.map +1 -1
  374. package/lib/internal/_jsonStringifyRest.mjs +11 -0
  375. package/lib/internal/_jsonStringifyRest.mjs.map +1 -1
  376. package/lib/internal/_jsonStringifyString.d.ts +13 -0
  377. package/lib/internal/_jsonStringifyString.js +13 -0
  378. package/lib/internal/_jsonStringifyString.js.map +1 -1
  379. package/lib/internal/_jsonStringifyString.mjs +13 -0
  380. package/lib/internal/_jsonStringifyString.mjs.map +1 -1
  381. package/lib/internal/_jsonStringifyTail.d.ts +8 -0
  382. package/lib/internal/_jsonStringifyTail.js +8 -0
  383. package/lib/internal/_jsonStringifyTail.js.map +1 -1
  384. package/lib/internal/_jsonStringifyTail.mjs +8 -0
  385. package/lib/internal/_jsonStringifyTail.mjs.map +1 -1
  386. package/lib/internal/_llmApplicationFinalize.d.ts +13 -0
  387. package/lib/internal/_llmApplicationFinalize.js +13 -0
  388. package/lib/internal/_llmApplicationFinalize.js.map +1 -1
  389. package/lib/internal/_llmApplicationFinalize.mjs +13 -0
  390. package/lib/internal/_llmApplicationFinalize.mjs.map +1 -1
  391. package/lib/internal/_notationAny.d.ts +14 -0
  392. package/lib/internal/_notationAny.js +14 -0
  393. package/lib/internal/_notationAny.js.map +1 -1
  394. package/lib/internal/_notationAny.mjs +14 -0
  395. package/lib/internal/_notationAny.mjs.map +1 -1
  396. package/lib/internal/_notationAssign.d.ts +12 -0
  397. package/lib/internal/_notationAssign.js +12 -0
  398. package/lib/internal/_notationAssign.js.map +1 -1
  399. package/lib/internal/_notationAssign.mjs +12 -0
  400. package/lib/internal/_notationAssign.mjs.map +1 -1
  401. package/lib/internal/_notationKebab.d.ts +9 -0
  402. package/lib/internal/_notationKebab.js +9 -0
  403. package/lib/internal/_notationKebab.js.map +1 -1
  404. package/lib/internal/_notationKebab.mjs +9 -0
  405. package/lib/internal/_notationKebab.mjs.map +1 -1
  406. package/lib/internal/_notationKeyCollision.d.ts +8 -0
  407. package/lib/internal/_notationKeyCollision.js +8 -0
  408. package/lib/internal/_notationKeyCollision.js.map +1 -1
  409. package/lib/internal/_notationKeyCollision.mjs +8 -0
  410. package/lib/internal/_notationKeyCollision.mjs.map +1 -1
  411. package/lib/internal/_notationSnake.d.ts +12 -0
  412. package/lib/internal/_notationSnake.js +12 -0
  413. package/lib/internal/_notationSnake.js.map +1 -1
  414. package/lib/internal/_notationSnake.mjs +12 -0
  415. package/lib/internal/_notationSnake.mjs.map +1 -1
  416. package/lib/internal/_parseLlmArguments.d.ts +12 -0
  417. package/lib/internal/_parseLlmArguments.js +12 -0
  418. package/lib/internal/_parseLlmArguments.js.map +1 -1
  419. package/lib/internal/_parseLlmArguments.mjs +12 -0
  420. package/lib/internal/_parseLlmArguments.mjs.map +1 -1
  421. package/lib/internal/_plainCloneAny.d.ts +15 -0
  422. package/lib/internal/_plainCloneAny.js +15 -0
  423. package/lib/internal/_plainCloneAny.js.map +1 -1
  424. package/lib/internal/_plainCloneAny.mjs +15 -0
  425. package/lib/internal/_plainCloneAny.mjs.map +1 -1
  426. package/lib/internal/_randomArray.d.ts +19 -1
  427. package/lib/internal/_randomArray.js +32 -14
  428. package/lib/internal/_randomArray.js.map +1 -1
  429. package/lib/internal/_randomArray.mjs +24 -6
  430. package/lib/internal/_randomArray.mjs.map +1 -1
  431. package/lib/internal/_randomBigint.d.ts +17 -1
  432. package/lib/internal/_randomBigint.js +95 -2
  433. package/lib/internal/_randomBigint.js.map +1 -1
  434. package/lib/internal/_randomBigint.mjs +75 -2
  435. package/lib/internal/_randomBigint.mjs.map +1 -1
  436. package/lib/internal/_randomBoolean.d.ts +8 -0
  437. package/lib/internal/_randomBoolean.js +8 -0
  438. package/lib/internal/_randomBoolean.js.map +1 -1
  439. package/lib/internal/_randomBoolean.mjs +8 -0
  440. package/lib/internal/_randomBoolean.mjs.map +1 -1
  441. package/lib/internal/_randomFormatByte.d.ts +8 -0
  442. package/lib/internal/_randomFormatByte.js +8 -0
  443. package/lib/internal/_randomFormatByte.js.map +1 -1
  444. package/lib/internal/_randomFormatByte.mjs +8 -0
  445. package/lib/internal/_randomFormatByte.mjs.map +1 -1
  446. package/lib/internal/_randomFormatDate.d.ts +10 -0
  447. package/lib/internal/_randomFormatDate.js +10 -0
  448. package/lib/internal/_randomFormatDate.js.map +1 -1
  449. package/lib/internal/_randomFormatDate.mjs +10 -0
  450. package/lib/internal/_randomFormatDate.mjs.map +1 -1
  451. package/lib/internal/_randomFormatDatetime.d.ts +10 -0
  452. package/lib/internal/_randomFormatDatetime.js +10 -0
  453. package/lib/internal/_randomFormatDatetime.js.map +1 -1
  454. package/lib/internal/_randomFormatDatetime.mjs +10 -0
  455. package/lib/internal/_randomFormatDatetime.mjs.map +1 -1
  456. package/lib/internal/_randomFormatDuration.d.ts +8 -0
  457. package/lib/internal/_randomFormatDuration.js +8 -0
  458. package/lib/internal/_randomFormatDuration.js.map +1 -1
  459. package/lib/internal/_randomFormatDuration.mjs +8 -0
  460. package/lib/internal/_randomFormatDuration.mjs.map +1 -1
  461. package/lib/internal/_randomFormatEmail.d.ts +8 -0
  462. package/lib/internal/_randomFormatEmail.js +8 -0
  463. package/lib/internal/_randomFormatEmail.js.map +1 -1
  464. package/lib/internal/_randomFormatEmail.mjs +8 -0
  465. package/lib/internal/_randomFormatEmail.mjs.map +1 -1
  466. package/lib/internal/_randomFormatHostname.d.ts +15 -1
  467. package/lib/internal/_randomFormatHostname.js +15 -1
  468. package/lib/internal/_randomFormatHostname.js.map +1 -1
  469. package/lib/internal/_randomFormatHostname.mjs +15 -1
  470. package/lib/internal/_randomFormatHostname.mjs.map +1 -1
  471. package/lib/internal/_randomFormatIdnEmail.d.ts +13 -0
  472. package/lib/internal/_randomFormatIdnEmail.js +13 -0
  473. package/lib/internal/_randomFormatIdnEmail.js.map +1 -1
  474. package/lib/internal/_randomFormatIdnEmail.mjs +13 -0
  475. package/lib/internal/_randomFormatIdnEmail.mjs.map +1 -1
  476. package/lib/internal/_randomFormatIdnHostname.d.ts +12 -0
  477. package/lib/internal/_randomFormatIdnHostname.js +12 -0
  478. package/lib/internal/_randomFormatIdnHostname.js.map +1 -1
  479. package/lib/internal/_randomFormatIdnHostname.mjs +12 -0
  480. package/lib/internal/_randomFormatIdnHostname.mjs.map +1 -1
  481. package/lib/internal/_randomFormatIpv4.d.ts +8 -0
  482. package/lib/internal/_randomFormatIpv4.js +8 -0
  483. package/lib/internal/_randomFormatIpv4.js.map +1 -1
  484. package/lib/internal/_randomFormatIpv4.mjs +8 -0
  485. package/lib/internal/_randomFormatIpv4.mjs.map +1 -1
  486. package/lib/internal/_randomFormatIpv6.d.ts +8 -0
  487. package/lib/internal/_randomFormatIpv6.js +8 -0
  488. package/lib/internal/_randomFormatIpv6.js.map +1 -1
  489. package/lib/internal/_randomFormatIpv6.mjs +8 -0
  490. package/lib/internal/_randomFormatIpv6.mjs.map +1 -1
  491. package/lib/internal/_randomFormatIri.d.ts +11 -0
  492. package/lib/internal/_randomFormatIri.js +11 -0
  493. package/lib/internal/_randomFormatIri.js.map +1 -1
  494. package/lib/internal/_randomFormatIri.mjs +11 -0
  495. package/lib/internal/_randomFormatIri.mjs.map +1 -1
  496. package/lib/internal/_randomFormatIriReference.d.ts +12 -0
  497. package/lib/internal/_randomFormatIriReference.js +12 -0
  498. package/lib/internal/_randomFormatIriReference.js.map +1 -1
  499. package/lib/internal/_randomFormatIriReference.mjs +12 -0
  500. package/lib/internal/_randomFormatIriReference.mjs.map +1 -1
  501. package/lib/internal/_randomFormatJsonPointer.d.ts +12 -0
  502. package/lib/internal/_randomFormatJsonPointer.js +12 -0
  503. package/lib/internal/_randomFormatJsonPointer.js.map +1 -1
  504. package/lib/internal/_randomFormatJsonPointer.mjs +12 -0
  505. package/lib/internal/_randomFormatJsonPointer.mjs.map +1 -1
  506. package/lib/internal/_randomFormatPassword.d.ts +13 -0
  507. package/lib/internal/_randomFormatPassword.js +13 -0
  508. package/lib/internal/_randomFormatPassword.js.map +1 -1
  509. package/lib/internal/_randomFormatPassword.mjs +13 -0
  510. package/lib/internal/_randomFormatPassword.mjs.map +1 -1
  511. package/lib/internal/_randomFormatRegex.d.ts +8 -0
  512. package/lib/internal/_randomFormatRegex.js +8 -0
  513. package/lib/internal/_randomFormatRegex.js.map +1 -1
  514. package/lib/internal/_randomFormatRegex.mjs +8 -0
  515. package/lib/internal/_randomFormatRegex.mjs.map +1 -1
  516. package/lib/internal/_randomFormatRelativeJsonPointer.d.ts +8 -0
  517. package/lib/internal/_randomFormatRelativeJsonPointer.js +8 -0
  518. package/lib/internal/_randomFormatRelativeJsonPointer.js.map +1 -1
  519. package/lib/internal/_randomFormatRelativeJsonPointer.mjs +8 -0
  520. package/lib/internal/_randomFormatRelativeJsonPointer.mjs.map +1 -1
  521. package/lib/internal/_randomFormatTime.d.ts +13 -0
  522. package/lib/internal/_randomFormatTime.js +13 -0
  523. package/lib/internal/_randomFormatTime.js.map +1 -1
  524. package/lib/internal/_randomFormatTime.mjs +13 -0
  525. package/lib/internal/_randomFormatTime.mjs.map +1 -1
  526. package/lib/internal/_randomFormatUri.d.ts +12 -0
  527. package/lib/internal/_randomFormatUri.js +12 -0
  528. package/lib/internal/_randomFormatUri.js.map +1 -1
  529. package/lib/internal/_randomFormatUri.mjs +12 -0
  530. package/lib/internal/_randomFormatUri.mjs.map +1 -1
  531. package/lib/internal/_randomFormatUriReference.d.ts +12 -0
  532. package/lib/internal/_randomFormatUriReference.js +12 -0
  533. package/lib/internal/_randomFormatUriReference.js.map +1 -1
  534. package/lib/internal/_randomFormatUriReference.mjs +12 -0
  535. package/lib/internal/_randomFormatUriReference.mjs.map +1 -1
  536. package/lib/internal/_randomFormatUriTemplate.d.ts +12 -0
  537. package/lib/internal/_randomFormatUriTemplate.js +12 -0
  538. package/lib/internal/_randomFormatUriTemplate.js.map +1 -1
  539. package/lib/internal/_randomFormatUriTemplate.mjs +12 -0
  540. package/lib/internal/_randomFormatUriTemplate.mjs.map +1 -1
  541. package/lib/internal/_randomFormatUrl.d.ts +12 -0
  542. package/lib/internal/_randomFormatUrl.js +12 -0
  543. package/lib/internal/_randomFormatUrl.js.map +1 -1
  544. package/lib/internal/_randomFormatUrl.mjs +12 -0
  545. package/lib/internal/_randomFormatUrl.mjs.map +1 -1
  546. package/lib/internal/_randomFormatUuid.d.ts +13 -0
  547. package/lib/internal/_randomFormatUuid.js +13 -0
  548. package/lib/internal/_randomFormatUuid.js.map +1 -1
  549. package/lib/internal/_randomFormatUuid.mjs +13 -0
  550. package/lib/internal/_randomFormatUuid.mjs.map +1 -1
  551. package/lib/internal/_randomInteger.d.ts +17 -1
  552. package/lib/internal/_randomInteger.js +74 -23
  553. package/lib/internal/_randomInteger.js.map +1 -1
  554. package/lib/internal/_randomInteger.mjs +62 -23
  555. package/lib/internal/_randomInteger.mjs.map +1 -1
  556. package/lib/internal/_randomMultiple.d.ts +18 -1
  557. package/lib/internal/_randomMultiple.js +30 -13
  558. package/lib/internal/_randomMultiple.js.map +1 -1
  559. package/lib/internal/_randomMultiple.mjs +30 -13
  560. package/lib/internal/_randomMultiple.mjs.map +1 -1
  561. package/lib/internal/_randomNumber.d.ts +17 -1
  562. package/lib/internal/_randomNumber.js +67 -18
  563. package/lib/internal/_randomNumber.js.map +1 -1
  564. package/lib/internal/_randomNumber.mjs +59 -22
  565. package/lib/internal/_randomNumber.mjs.map +1 -1
  566. package/lib/internal/_randomPattern.d.ts +12 -0
  567. package/lib/internal/_randomPattern.js +12 -0
  568. package/lib/internal/_randomPattern.js.map +1 -1
  569. package/lib/internal/_randomPattern.mjs +12 -0
  570. package/lib/internal/_randomPattern.mjs.map +1 -1
  571. package/lib/internal/_randomPick.d.ts +13 -1
  572. package/lib/internal/_randomPick.js +15 -3
  573. package/lib/internal/_randomPick.js.map +1 -1
  574. package/lib/internal/_randomPick.mjs +15 -3
  575. package/lib/internal/_randomPick.mjs.map +1 -1
  576. package/lib/internal/_randomString.d.ts +15 -1
  577. package/lib/internal/_randomString.js +19 -5
  578. package/lib/internal/_randomString.js.map +1 -1
  579. package/lib/internal/_randomString.mjs +19 -5
  580. package/lib/internal/_randomString.mjs.map +1 -1
  581. package/lib/internal/_randomStringLength.d.ts +30 -1
  582. package/lib/internal/_randomStringLength.js +23 -1
  583. package/lib/internal/_randomStringLength.js.map +1 -1
  584. package/lib/internal/_randomStringLength.mjs +23 -1
  585. package/lib/internal/_randomStringLength.mjs.map +1 -1
  586. package/lib/internal/_stringLength.d.ts +11 -0
  587. package/lib/internal/_stringLength.js +11 -0
  588. package/lib/internal/_stringLength.js.map +1 -1
  589. package/lib/internal/_stringLength.mjs +11 -0
  590. package/lib/internal/_stringLength.mjs.map +1 -1
  591. package/lib/internal/_stringLengthGte.d.ts +11 -0
  592. package/lib/internal/_stringLengthGte.js +11 -0
  593. package/lib/internal/_stringLengthGte.js.map +1 -1
  594. package/lib/internal/_stringLengthGte.mjs +11 -0
  595. package/lib/internal/_stringLengthGte.mjs.map +1 -1
  596. package/lib/internal/_stringLengthLte.d.ts +11 -0
  597. package/lib/internal/_stringLengthLte.js +11 -0
  598. package/lib/internal/_stringLengthLte.js.map +1 -1
  599. package/lib/internal/_stringLengthLte.mjs +11 -0
  600. package/lib/internal/_stringLengthLte.mjs.map +1 -1
  601. package/lib/internal/_throwTypeGuardError.d.ts +9 -0
  602. package/lib/internal/_throwTypeGuardError.js +9 -0
  603. package/lib/internal/_throwTypeGuardError.js.map +1 -1
  604. package/lib/internal/_throwTypeGuardError.mjs +9 -0
  605. package/lib/internal/_throwTypeGuardError.mjs.map +1 -1
  606. package/lib/internal/_validateReport.d.ts +15 -0
  607. package/lib/internal/_validateReport.js +15 -0
  608. package/lib/internal/_validateReport.js.map +1 -1
  609. package/lib/internal/_validateReport.mjs +15 -0
  610. package/lib/internal/_validateReport.mjs.map +1 -1
  611. package/lib/internal/private/__notationRename.d.ts +5 -0
  612. package/lib/internal/private/__notationRename.js +5 -0
  613. package/lib/internal/private/__notationRename.js.map +1 -1
  614. package/lib/internal/private/__notationRename.mjs +5 -0
  615. package/lib/internal/private/__notationRename.mjs.map +1 -1
  616. package/lib/internal/private/__randomComposition.d.ts +27 -3
  617. package/lib/internal/private/__randomComposition.js +27 -3
  618. package/lib/internal/private/__randomComposition.js.map +1 -1
  619. package/lib/internal/private/__randomComposition.mjs +27 -3
  620. package/lib/internal/private/__randomComposition.mjs.map +1 -1
  621. package/lib/internal/private/__randomEpoch.d.ts +15 -0
  622. package/lib/internal/private/__randomEpoch.js +5 -0
  623. package/lib/internal/private/__randomEpoch.js.map +1 -1
  624. package/lib/internal/private/__randomEpoch.mjs +5 -0
  625. package/lib/internal/private/__randomEpoch.mjs.map +1 -1
  626. package/lib/json.d.ts +49 -14
  627. package/lib/json.js.map +1 -1
  628. package/lib/json.mjs.map +1 -1
  629. package/lib/llm.d.ts +41 -25
  630. package/lib/llm.js.map +1 -1
  631. package/lib/llm.mjs.map +1 -1
  632. package/lib/module.d.ts +1 -702
  633. package/lib/module.js +1 -101
  634. package/lib/module.js.map +1 -1
  635. package/lib/module.mjs +1 -81
  636. package/lib/module.mjs.map +1 -1
  637. package/lib/notations.d.ts +60 -0
  638. package/lib/notations.js.map +1 -1
  639. package/lib/notations.mjs.map +1 -1
  640. package/lib/plain.d.ts +38 -0
  641. package/lib/plain.js.map +1 -1
  642. package/lib/plain.mjs.map +1 -1
  643. package/lib/protobuf.d.ts +38 -4
  644. package/lib/protobuf.js.map +1 -1
  645. package/lib/protobuf.mjs.map +1 -1
  646. package/lib/reflect.d.ts +16 -12
  647. package/lib/reflect.js.map +1 -1
  648. package/lib/reflect.mjs.map +1 -1
  649. package/lib/transform.d.ts +17 -0
  650. package/lib/transform.js +17 -0
  651. package/lib/transform.js.map +1 -1
  652. package/lib/transform.mjs +17 -0
  653. package/lib/transform.mjs.map +1 -1
  654. package/native/adapter/adapter.go +28 -3
  655. package/native/adapter/adapter_options_branch_matrix_test.go +39 -34
  656. package/native/adapter/plugin_options.go +5 -0
  657. package/native/adapter/plugin_options_payload_matrix_test.go +5 -0
  658. package/native/cmd/ttsc-typia/any_array_type_tags_transform_test.go +38 -131
  659. package/native/cmd/ttsc-typia/assert_guard_factory_contract_test.go +31 -58
  660. package/native/cmd/ttsc-typia/atomic_intersection_schema_transform_test.go +28 -79
  661. package/native/cmd/ttsc-typia/bigint_literal_precision_transform_test.go +16 -82
  662. package/native/cmd/ttsc-typia/build_diagnostics_preserve_details_test.go +41 -0
  663. package/native/cmd/ttsc-typia/build_no_emit_preserves_analysis_options_test.go +9 -10
  664. package/native/cmd/ttsc-typia/build_no_emit_transform_diagnostics_test.go +9 -7
  665. package/native/cmd/ttsc-typia/build_plugin_options_come_from_payload_test.go +9 -11
  666. package/native/cmd/ttsc-typia/build_transactional_emit_success_test.go +9 -7
  667. package/native/cmd/ttsc-typia/build_transform_failure_atomicity_test.go +9 -7
  668. package/native/cmd/ttsc-typia/callable_interface_function_semantics_transform_test.go +9 -164
  669. package/native/cmd/ttsc-typia/callable_type_literal_boundaries_transform_test.go +20 -580
  670. package/native/cmd/ttsc-typia/compare_equal_cover_transform_test.go +10 -127
  671. package/native/cmd/ttsc-typia/compare_functional_union_membership_transform_test.go +93 -289
  672. package/native/cmd/ttsc-typia/compare_less_nan_transform_test.go +15 -66
  673. package/native/cmd/ttsc-typia/compare_nondiscriminable_union_transform_test.go +9 -221
  674. package/native/cmd/ttsc-typia/create_assert_error_factory_arity_test.go +11 -82
  675. package/native/cmd/ttsc-typia/default_library_spoof_native_identity_transform_test.go +10 -100
  676. package/native/cmd/ttsc-typia/demo_rejects_bad_flag_test.go +15 -14
  677. package/native/cmd/ttsc-typia/dependency_collector_virtual_scheme_test.go +8 -17
  678. package/native/cmd/ttsc-typia/dynamic_key_path_helper_alias_transform_test.go +10 -70
  679. package/native/cmd/ttsc-typia/dynamic_key_tags_transform_test.go +9 -120
  680. package/native/cmd/ttsc-typia/exact_optional_family_emission_contract_test.go +252 -0
  681. package/native/cmd/ttsc-typia/exclude_type_tag_transform_test.go +10 -102
  682. package/native/cmd/ttsc-typia/fixture_directories_test.go +154 -0
  683. package/native/cmd/ttsc-typia/functional_promised_type_transform_test.go +11 -104
  684. package/native/cmd/ttsc-typia/functional_receiver_transform_test.go +16 -124
  685. package/native/cmd/ttsc-typia/inline_type_display_name_transform_test.go +10 -183
  686. package/native/cmd/ttsc-typia/instance_union_create_is_transform_test.go +11 -88
  687. package/native/cmd/ttsc-typia/intersection_nonsensible_backstop_transform_test.go +17 -30
  688. package/native/cmd/ttsc-typia/intersection_union_validation_transform_test.go +10 -404
  689. package/native/cmd/ttsc-typia/json_application_alias_function_validation_transform_test.go +10 -22
  690. package/native/cmd/ttsc-typia/json_is_stringify_scoped_checker_transform_test.go +10 -111
  691. package/native/cmd/ttsc-typia/json_schema_dynamic_key_determinism_transform_test.go +25 -110
  692. package/native/cmd/ttsc-typia/json_schema_nonsensible_intersection_diagnostic_test.go +10 -22
  693. package/native/cmd/ttsc-typia/json_stringify_constant_atomic_union_transform_test.go +10 -101
  694. package/native/cmd/ttsc-typia/lib_replacement_native_identity_transform_test.go +11 -98
  695. package/native/cmd/ttsc-typia/llm_evaluation_accepts_property_probability_test.go +5 -0
  696. package/native/cmd/ttsc-typia/llm_evaluation_accepts_unselected_source_probability_test.go +5 -0
  697. package/native/cmd/ttsc-typia/llm_evaluation_complete_object_shape_test.go +5 -0
  698. package/native/cmd/ttsc-typia/llm_evaluation_emits_configured_decimals_test.go +53 -0
  699. package/native/cmd/ttsc-typia/llm_evaluation_ignores_declaration_probability_without_call_test.go +5 -0
  700. package/native/cmd/ttsc-typia/llm_evaluation_plan_emission_transform_test.go +5 -0
  701. package/native/cmd/ttsc-typia/llm_evaluation_program_scan_dependencies_test.go +5 -0
  702. package/native/cmd/ttsc-typia/llm_evaluation_rejects_alias_comment_test.go +5 -0
  703. package/native/cmd/ttsc-typia/llm_evaluation_rejects_alias_refinement_test.go +5 -0
  704. package/native/cmd/ttsc-typia/llm_evaluation_rejects_computed_method_probability_test.go +5 -0
  705. package/native/cmd/ttsc-typia/llm_evaluation_rejects_conflicting_boolean_tags_test.go +52 -0
  706. package/native/cmd/ttsc-typia/llm_evaluation_rejects_finer_than_probability_decimals_test.go +100 -0
  707. package/native/cmd/ttsc-typia/llm_evaluation_rejects_imported_declaration_probability_test.go +6 -1
  708. package/native/cmd/ttsc-typia/llm_evaluation_rejects_invalid_config_test.go +51 -0
  709. package/native/cmd/ttsc-typia/llm_evaluation_rejects_invalid_probability_test.go +14 -0
  710. package/native/cmd/ttsc-typia/llm_evaluation_rejects_oversized_questions_test.go +79 -0
  711. package/native/cmd/ttsc-typia/llm_evaluation_rejects_refinements_test.go +5 -0
  712. package/native/cmd/ttsc-typia/llm_evaluation_rejects_shared_values_test.go +128 -0
  713. package/native/cmd/ttsc-typia/llm_evaluation_rejects_undecidable_types_test.go +6 -12
  714. package/native/cmd/ttsc-typia/local_function_named_like_typia_operation_transform_test.go +9 -17
  715. package/native/cmd/ttsc-typia/metadata_type_tag_sole_malformed_diagnostic_test.go +10 -28
  716. package/native/cmd/ttsc-typia/native_collection_identity_is_transform_test.go +9 -129
  717. package/native/cmd/ttsc-typia/native_generic_name_guard_is_transform_test.go +10 -95
  718. package/native/cmd/ttsc-typia/native_name_collision_is_transform_test.go +9 -122
  719. package/native/cmd/ttsc-typia/native_named_intersection_union_transform_test.go +10 -135
  720. package/native/cmd/ttsc-typia/node_buffer_native_exports_is_transform_test.go +18 -234
  721. package/native/cmd/ttsc-typia/non_trailing_rest_tuple_transform_test.go +19 -71
  722. package/native/cmd/ttsc-typia/notation_kebab_case_transform_test.go +10 -109
  723. package/native/cmd/ttsc-typia/notation_pascal_case_transform_test.go +10 -142
  724. package/native/cmd/ttsc-typia/notation_unicode_key_transform_test.go +9 -201
  725. package/native/cmd/ttsc-typia/nullable_primitive_property_is_transform_test.go +10 -102
  726. package/native/cmd/ttsc-typia/object_custom_tag_validation_transform_test.go +10 -112
  727. package/native/cmd/ttsc-typia/object_union_explicit_pointer_schema_transform_test.go +68 -114
  728. package/native/cmd/ttsc-typia/package_declaration_native_identity_is_transform_test.go +10 -114
  729. package/native/cmd/ttsc-typia/pattern_line_terminator_escape_transform_test.go +45 -123
  730. package/native/cmd/ttsc-typia/plain_classify_class_ref_transform_test.go +12 -97
  731. package/native/cmd/ttsc-typia/plain_classify_container_seed_transform_test.go +12 -74
  732. package/native/cmd/ttsc-typia/plain_classify_cross_module_extra_transform_test.go +15 -91
  733. package/native/cmd/ttsc-typia/plain_classify_cross_module_transform_test.go +40 -0
  734. package/native/cmd/ttsc-typia/plain_classify_deep_nested_transform_test.go +12 -103
  735. package/native/cmd/ttsc-typia/plain_classify_field_copy_transform_test.go +10 -120
  736. package/native/cmd/ttsc-typia/plain_classify_from_new_transform_test.go +12 -255
  737. package/native/cmd/ttsc-typia/plain_classify_generic_private_rejected_test.go +30 -0
  738. package/native/cmd/ttsc-typia/plain_classify_inherited_private_rejected_test.go +33 -0
  739. package/native/cmd/ttsc-typia/plain_classify_named_interface_field_copy_test.go +33 -0
  740. package/native/cmd/ttsc-typia/plain_classify_private_field_rejected_test.go +36 -0
  741. package/native/cmd/ttsc-typia/plain_classify_recursive_anonymous_object_test.go +30 -0
  742. package/native/cmd/ttsc-typia/plain_classify_self_ref_private_rejected_test.go +33 -0
  743. package/native/cmd/ttsc-typia/plain_classify_static_private_allowed_test.go +35 -0
  744. package/native/cmd/ttsc-typia/plain_classify_strategy_edges_transform_test.go +16 -291
  745. package/native/cmd/ttsc-typia/plain_classify_unbound_anonymous_class_test.go +35 -0
  746. package/native/cmd/ttsc-typia/plain_classify_union_transform_test.go +12 -73
  747. package/native/cmd/ttsc-typia/plain_classify_validated_union_transform_test.go +11 -146
  748. package/native/cmd/ttsc-typia/plain_clone_bigint_wrapper_transform_test.go +10 -80
  749. package/native/cmd/ttsc-typia/private_field_filter_is_transform_test.go +10 -137
  750. package/native/cmd/ttsc-typia/project_catalog_transform_coverage_test.go +4 -0
  751. package/native/cmd/ttsc-typia/project_dependencies_barrel_reexport_transform_test.go +6 -10
  752. package/native/cmd/ttsc-typia/project_dependencies_callee_argument_transform_test.go +6 -10
  753. package/native/cmd/ttsc-typia/project_dependencies_callee_barrel_transform_test.go +6 -10
  754. package/native/cmd/ttsc-typia/project_dependencies_callee_inference_transform_test.go +6 -10
  755. package/native/cmd/ttsc-typia/project_dependencies_callee_shape_transform_test.go +6 -10
  756. package/native/cmd/ttsc-typia/project_dependencies_callee_untransformed_barrel_transform_test.go +6 -10
  757. package/native/cmd/ttsc-typia/project_dependencies_collapsed_alias_transform_test.go +6 -10
  758. package/native/cmd/ttsc-typia/project_dependencies_complete_diagnostic_transform_test.go +7 -11
  759. package/native/cmd/ttsc-typia/project_dependencies_complete_envelope_transform_test.go +6 -10
  760. package/native/cmd/ttsc-typia/project_dependencies_complete_inferred_type_transform_test.go +6 -10
  761. package/native/cmd/ttsc-typia/project_dependencies_complete_replaced_library_transform_test.go +6 -10
  762. package/native/cmd/ttsc-typia/project_dependencies_complete_untouched_reprint_transform_test.go +6 -10
  763. package/native/cmd/ttsc-typia/project_dependencies_computed_key_transform_test.go +6 -10
  764. package/native/cmd/ttsc-typia/project_dependencies_custom_lib_name_transform_test.go +6 -10
  765. package/native/cmd/ttsc-typia/project_dependencies_default_barrel_transform_test.go +6 -10
  766. package/native/cmd/ttsc-typia/project_dependencies_empty_heritage_transform_test.go +6 -10
  767. package/native/cmd/ttsc-typia/project_dependencies_enum_member_value_transform_test.go +6 -10
  768. package/native/cmd/ttsc-typia/project_dependencies_envelope_transform_test.go +6 -10
  769. package/native/cmd/ttsc-typia/project_dependencies_index_signature_alias_transform_test.go +9 -12
  770. package/native/cmd/ttsc-typia/project_dependencies_inferred_declaration_transform_test.go +6 -10
  771. package/native/cmd/ttsc-typia/project_dependencies_jsdoc_typedef_transform_test.go +6 -10
  772. package/native/cmd/ttsc-typia/project_dependencies_local_reexport_transform_test.go +6 -10
  773. package/native/cmd/ttsc-typia/project_dependencies_named_tuple_member_transform_test.go +6 -10
  774. package/native/cmd/ttsc-typia/project_dependencies_qualified_barrel_transform_test.go +6 -10
  775. package/native/cmd/ttsc-typia/project_dependencies_signature_alias_transform_test.go +6 -10
  776. package/native/cmd/ttsc-typia/project_dependencies_star_barrel_transform_test.go +6 -10
  777. package/native/cmd/ttsc-typia/project_dependencies_type_parameter_default_transform_test.go +6 -10
  778. package/native/cmd/ttsc-typia/project_reference_graph_envelope_transform_test.go +10 -32
  779. package/native/cmd/ttsc-typia/protobuf_diagnostic_code_transform_test.go +9 -31
  780. package/native/cmd/ttsc-typia/protobuf_is_encode_finite_number_transform_test.go +10 -23
  781. package/native/cmd/ttsc-typia/protobuf_object_generic_union_encode_transform_test.go +12 -114
  782. package/native/cmd/ttsc-typia/protobuf_sequence_field_numbers_transform_test.go +9 -26
  783. package/native/cmd/ttsc-typia/random_recursive_min_items_diagnostic_test.go +26 -22
  784. package/native/cmd/ttsc-typia/random_unsatisfiable_recursive_diagnostic_test.go +10 -26
  785. package/native/cmd/ttsc-typia/recursive_conditional_alias_name_transform_test.go +10 -185
  786. package/native/cmd/ttsc-typia/recursive_visit_tracking_transform_test.go +10 -291
  787. package/native/cmd/ttsc-typia/reflect_literals_non_literal_rejection_transform_test.go +9 -28
  788. package/native/cmd/ttsc-typia/schema_dts_role_transform_test.go +11 -206
  789. package/native/cmd/ttsc-typia/schema_literal_helpers_test.go +110 -0
  790. package/native/cmd/ttsc-typia/shadowed_typia_module_declaration_diagnostic_test.go +9 -17
  791. package/native/cmd/ttsc-typia/shallow_depth_argument_error_transform_test.go +10 -24
  792. package/native/cmd/ttsc-typia/shallow_depth_limit_transform_test.go +10 -105
  793. package/native/cmd/ttsc-typia/shallow_nested_depth_transform_test.go +10 -24
  794. package/native/cmd/ttsc-typia/symbol_key_member_filter_transform_test.go +10 -147
  795. package/native/cmd/ttsc-typia/template_interpolation_type_tags_transform_test.go +10 -272
  796. package/native/cmd/ttsc-typia/template_literal_type_tags_transform_test.go +10 -92
  797. package/native/cmd/ttsc-typia/transform_diagnostics_preserve_details_test.go +9 -86
  798. package/native/cmd/ttsc-typia/transform_fixtures_emit_coverage_test.go +48 -29
  799. package/native/cmd/ttsc-typia/transform_helpers_test.go +41 -360
  800. package/native/cmd/ttsc-typia/transform_plugin_options_come_from_payload_test.go +9 -12
  801. package/native/cmd/ttsc-typia/transform_project_diagnostics_preserve_details_test.go +54 -0
  802. package/native/cmd/ttsc-typia/transform_single_file_failure_atomicity_test.go +9 -11
  803. package/native/cmd/ttsc-typia/transform_single_file_failure_writes_no_stdout_test.go +9 -8
  804. package/native/cmd/ttsc-typia/transform_single_file_js_distinguishes_same_basename_sources_test.go +9 -14
  805. package/native/cmd/ttsc-typia/transform_single_file_js_locates_output_across_layouts_test.go +9 -16
  806. package/native/cmd/ttsc-typia/transform_single_file_success_publishes_artifact_test.go +9 -9
  807. package/native/cmd/ttsc-typia/transform_wasm_host_argv_reports_diagnostics_test.go +9 -10
  808. package/native/cmd/ttsc-typia/tuple_optional_compare_clone_transform_test.go +33 -181
  809. package/native/cmd/ttsc-typia/typia_diagnostic_formatting_test.go +46 -0
  810. package/native/cmd/ttsc-typia/uri_template_comment_dotted_variable_transform_test.go +57 -0
  811. package/native/cmd/ttsc-typia/user_global_native_identity_transform_test.go +16 -202
  812. package/native/cmd/ttsc-typia/wrong_type_tag_target_diagnostic_test.go +12 -12
  813. package/native/core/context/EmitFactory.go +10 -0
  814. package/native/core/context/IProgrammerProps.go +21 -4
  815. package/native/core/context/ITransformOptions.go +22 -4
  816. package/native/core/context/ITypiaContext.go +61 -11
  817. package/native/core/context/ImportProgrammer.go +144 -6
  818. package/native/core/context/TransformerError.go +74 -7
  819. package/native/core/context/import_programmer_default_type_only_needs_every_request_test.go +58 -0
  820. package/native/core/context/import_programmer_module_identifier_test.go +5 -0
  821. package/native/core/context/import_programmer_statement_coverage_test.go +106 -50
  822. package/native/core/context/transformer_error_formatting_test.go +82 -77
  823. package/native/core/factories/CommentFactory.go +8 -0
  824. package/native/core/factories/ExpressionFactory.go +121 -5
  825. package/native/core/factories/FormatCheatSheet.go +1 -1
  826. package/native/core/factories/JsonMetadataFactory.go +29 -4
  827. package/native/core/factories/LiteralFactory.go +24 -1
  828. package/native/core/factories/MetadataCommentTagFactory.go +177 -29
  829. package/native/core/factories/MetadataFactory.go +59 -5
  830. package/native/core/factories/ProtobufFactory.go +17 -4
  831. package/native/core/factories/StatementFactory.go +38 -5
  832. package/native/core/factories/TemplateFactory.go +10 -0
  833. package/native/core/factories/TypeFactory.go +33 -5
  834. package/native/core/factories/expression_factory_number_spells_non_finite_values_test.go +74 -0
  835. package/native/core/factories/factory_utility_coverage_test.go +8 -3
  836. package/native/core/factories/format_alias_resolves_to_cheat_sheet_test.go +5 -0
  837. package/native/core/factories/format_alias_table_targets_the_cheat_sheet_test.go +20 -30
  838. package/native/core/factories/identifier_factory_postfix_escapes_every_key_test.go +5 -0
  839. package/native/core/factories/identifier_factory_postfix_survives_every_code_point_test.go +5 -0
  840. package/native/core/factories/internal/metadata/IMetadataIteratorProps.go +115 -22
  841. package/native/core/factories/internal/metadata/MetadataHelper.go +64 -1
  842. package/native/core/factories/internal/metadata/comment_tags_coverage_test.go +167 -148
  843. package/native/core/factories/internal/metadata/emend_metadata_atomics.go +28 -1
  844. package/native/core/factories/internal/metadata/emplace_metadata_alias.go +10 -3
  845. package/native/core/factories/internal/metadata/emplace_metadata_array_type.go +17 -0
  846. package/native/core/factories/internal/metadata/emplace_metadata_object.go +12 -1
  847. package/native/core/factories/internal/metadata/emplace_metadata_tuple.go +10 -0
  848. package/native/core/factories/internal/metadata/explore_metadata.go +48 -9
  849. package/native/core/factories/internal/metadata/iterate_metadata.go +12 -0
  850. package/native/core/factories/internal/metadata/iterate_metadata_alias.go +8 -0
  851. package/native/core/factories/internal/metadata/iterate_metadata_array.go +7 -0
  852. package/native/core/factories/internal/metadata/iterate_metadata_atomic.go +7 -0
  853. package/native/core/factories/internal/metadata/iterate_metadata_coalesce.go +8 -0
  854. package/native/core/factories/internal/metadata/iterate_metadata_collection.go +8 -0
  855. package/native/core/factories/internal/metadata/iterate_metadata_collection_branch_matrix_test.go +148 -143
  856. package/native/core/factories/internal/metadata/iterate_metadata_comment_tags.go +7 -0
  857. package/native/core/factories/internal/metadata/iterate_metadata_constant.go +68 -0
  858. package/native/core/factories/internal/metadata/iterate_metadata_escape.go +7 -0
  859. package/native/core/factories/internal/metadata/iterate_metadata_function.go +33 -10
  860. package/native/core/factories/internal/metadata/iterate_metadata_intersection.go +22 -11
  861. package/native/core/factories/internal/metadata/iterate_metadata_intersection_brand_coverage_test.go +5 -0
  862. package/native/core/factories/internal/metadata/iterate_metadata_intersection_coverage_test.go +88 -83
  863. package/native/core/factories/internal/metadata/iterate_metadata_intersection_shareable_name_test.go +4 -0
  864. package/native/core/factories/internal/metadata/iterate_metadata_map.go +7 -0
  865. package/native/core/factories/internal/metadata/iterate_metadata_native.go +11 -1
  866. package/native/core/factories/internal/metadata/iterate_metadata_object.go +8 -0
  867. package/native/core/factories/internal/metadata/iterate_metadata_set.go +7 -0
  868. package/native/core/factories/internal/metadata/iterate_metadata_sort.go +11 -0
  869. package/native/core/factories/internal/metadata/iterate_metadata_template.go +7 -0
  870. package/native/core/factories/internal/metadata/iterate_metadata_tuple.go +7 -0
  871. package/native/core/factories/internal/metadata/iterate_metadata_union.go +10 -0
  872. package/native/core/factories/internal/metadata/js_doc_link_text_test.go +5 -0
  873. package/native/core/factories/internal/metadata/js_doc_parameter_name_reads_qualified_name_test.go +31 -26
  874. package/native/core/factories/internal/metadata/js_doc_type_tag_blank_separation_test.go +88 -0
  875. package/native/core/factories/internal/metadata/sort_constants_coverage_test.go +50 -39
  876. package/native/core/factories/internal/metadata/type_arguments_precondition_test.go +5 -0
  877. package/native/core/factories/json_metadata_factory_dedupes_bigint_diagnostics_test.go +5 -0
  878. package/native/core/factories/json_metadata_factory_rejects_bigint_native_test.go +5 -0
  879. package/native/core/factories/literal_factory_null_survives_objects_test.go +5 -0
  880. package/native/core/factories/literal_factory_ordered_object_marshals_json_test.go +5 -0
  881. package/native/core/factories/metadata_comment_tag_factory_coverage_test.go +5 -0
  882. package/native/core/factories/metadata_comment_tag_factory_exclusivity_matches_interface_test.go +10 -5
  883. package/native/core/factories/metadata_comment_tag_factory_holds_bigint_tags_exact_test.go +173 -0
  884. package/native/core/factories/metadata_comment_tag_factory_reads_javascript_numbers_test.go +163 -0
  885. package/native/core/factories/metadata_comment_tag_factory_rejects_out_of_range_integer_test.go +7 -2
  886. package/native/core/factories/metadata_comment_tag_factory_string_length_helpers_test.go +5 -0
  887. package/native/core/factories/metadata_type_tag_factory_accepts_legal_tag_combinations_test.go +6 -1
  888. package/native/core/factories/metadata_type_tag_factory_keeps_bool_form_exclusivity_test.go +5 -0
  889. package/native/core/factories/metadata_type_tag_factory_rejects_cross_kind_exclusive_tags_test.go +5 -0
  890. package/native/core/factories/metadata_type_tag_factory_rejects_duplicated_array_form_tags_test.go +5 -0
  891. package/native/core/factories/metadata_type_tag_factory_reports_all_invalid_candidates_test.go +5 -0
  892. package/native/core/factories/numeric_range_factory_enforces_64bit_bounds_test.go +58 -2
  893. package/native/core/factories/protobuf_factory_bigint_keeps_each_width_test.go +47 -0
  894. package/native/core/factories/protobuf_factory_rejects_invalid_field_names_test.go +5 -0
  895. package/native/core/factories/protobuf_recovery_ownership_test.go +5 -0
  896. package/native/core/programmers/AssertProgrammer.go +27 -0
  897. package/native/core/programmers/IsProgrammer.go +67 -1
  898. package/native/core/programmers/RandomProgrammer.go +39 -22
  899. package/native/core/programmers/ValidateProgrammer.go +28 -1
  900. package/native/core/programmers/compare/CompareEqualProgrammer.go +26 -3
  901. package/native/core/programmers/compare/CompareLessProgrammer.go +17 -3
  902. package/native/core/programmers/functional/FunctionalAssertFunctionProgrammer.go +47 -6
  903. package/native/core/programmers/functional/FunctionalAssertParametersProgrammer.go +70 -13
  904. package/native/core/programmers/functional/FunctionalAssertReturnProgrammer.go +76 -12
  905. package/native/core/programmers/functional/FunctionalIsFunctionProgrammer.go +31 -5
  906. package/native/core/programmers/functional/FunctionalIsParametersProgrammer.go +169 -18
  907. package/native/core/programmers/functional/FunctionalIsReturnProgrammer.go +67 -11
  908. package/native/core/programmers/functional/FunctionalValidateFunctionProgrammer.go +31 -5
  909. package/native/core/programmers/functional/FunctionalValidateParametersProgrammer.go +63 -12
  910. package/native/core/programmers/functional/FunctionalValidateReturnProgrammer.go +68 -11
  911. package/native/core/programmers/functional/internal/FunctionalGeneralProgrammer.go +22 -2
  912. package/native/core/programmers/helpers/ClassifyJoiner.go +14 -6
  913. package/native/core/programmers/helpers/CloneJoiner.go +29 -0
  914. package/native/core/programmers/helpers/FunctionProgrammer.go +98 -0
  915. package/native/core/programmers/helpers/ICheckEntry.go +16 -0
  916. package/native/core/programmers/helpers/IExpressionEntry.go +8 -0
  917. package/native/core/programmers/helpers/ModuloText.go +5 -0
  918. package/native/core/programmers/helpers/NotationJoiner.go +23 -0
  919. package/native/core/programmers/helpers/ProtobufWire.go +8 -0
  920. package/native/core/programmers/helpers/PruneJoiner.go +21 -0
  921. package/native/core/programmers/helpers/RandomJoiner.go +52 -5
  922. package/native/core/programmers/helpers/StringifyJoinder.go +31 -12
  923. package/native/core/programmers/helpers/UnionExplorer.go +202 -70
  924. package/native/core/programmers/helpers/UnionPredicator.go +9 -0
  925. package/native/core/programmers/helpers/clone_joiner_optional_condition_test.go +14 -1
  926. package/native/core/programmers/helpers/function_programmer_unique_names_test.go +5 -0
  927. package/native/core/programmers/helpers/joiner_branch_coverage_test.go +5 -0
  928. package/native/core/programmers/helpers/option_predicator_contract_matrix_test.go +84 -0
  929. package/native/core/programmers/helpers/random_joiner_recursive_array_guard_test.go +5 -0
  930. package/native/core/programmers/helpers/union_explorer_coverage_test.go +120 -112
  931. package/native/core/programmers/helpers/union_predicator_checks_neighbor_flag_test.go +5 -0
  932. package/native/core/programmers/helpers/union_predicator_skips_atomic_like_native_fields_test.go +5 -0
  933. package/native/core/programmers/helpers/union_predicator_skips_collection_bucket_fields_test.go +5 -0
  934. package/native/core/programmers/helpers/union_predicator_skips_shared_native_names_test.go +5 -0
  935. package/native/core/programmers/helpers/union_predicator_skips_shared_object_fields_test.go +5 -0
  936. package/native/core/programmers/helpers/union_predicator_skips_shared_template_fields_test.go +5 -0
  937. package/native/core/programmers/http/HttpAssertFormDataProgrammer.go +9 -0
  938. package/native/core/programmers/http/HttpAssertHeadersProgrammer.go +9 -0
  939. package/native/core/programmers/http/HttpAssertQueryProgrammer.go +20 -0
  940. package/native/core/programmers/http/HttpFormDataProgrammer.go +48 -2
  941. package/native/core/programmers/http/HttpHeadersProgrammer.go +63 -4
  942. package/native/core/programmers/http/HttpIsFormDataProgrammer.go +8 -0
  943. package/native/core/programmers/http/HttpIsHeadersProgrammer.go +8 -0
  944. package/native/core/programmers/http/HttpIsQueryProgrammer.go +19 -1
  945. package/native/core/programmers/http/HttpParameterProgrammer.go +1 -3
  946. package/native/core/programmers/http/HttpQueryProgrammer.go +44 -44
  947. package/native/core/programmers/http/HttpValidateFormDataProgrammer.go +8 -0
  948. package/native/core/programmers/http/HttpValidateHeadersProgrammer.go +8 -0
  949. package/native/core/programmers/http/HttpValidateQueryProgrammer.go +18 -1
  950. package/native/core/programmers/http/http_programmer_helper_coverage_test.go +98 -93
  951. package/native/core/programmers/internal/CheckerProgrammer.go +162 -18
  952. package/native/core/programmers/internal/FeatureProgrammer.go +254 -38
  953. package/native/core/programmers/internal/feature_programmer_visit_guard_test.go +82 -55
  954. package/native/core/programmers/internal/internal_utility_coverage_test.go +338 -345
  955. package/native/core/programmers/iterate/check_array_length.go +15 -0
  956. package/native/core/programmers/iterate/check_bigint.go +14 -0
  957. package/native/core/programmers/iterate/check_dynamic_key.go +33 -19
  958. package/native/core/programmers/iterate/check_dynamic_key_tag_rows_test.go +59 -32
  959. package/native/core/programmers/iterate/check_dynamic_properties.go +70 -16
  960. package/native/core/programmers/iterate/check_everything.go +7 -0
  961. package/native/core/programmers/iterate/check_native.go +14 -0
  962. package/native/core/programmers/iterate/check_number.go +16 -0
  963. package/native/core/programmers/iterate/check_number_option_contract_matrix_test.go +84 -0
  964. package/native/core/programmers/iterate/check_object.go +28 -0
  965. package/native/core/programmers/iterate/check_object_strict_optional_undefined_test.go +6 -1
  966. package/native/core/programmers/iterate/check_object_type_tags.go +15 -0
  967. package/native/core/programmers/iterate/check_string.go +14 -0
  968. package/native/core/programmers/iterate/check_template.go +15 -0
  969. package/native/core/programmers/iterate/decode_union_object.go +35 -2
  970. package/native/core/programmers/iterate/exact_optional_checker_entry_contract_test.go +142 -0
  971. package/native/core/programmers/iterate/exact_optional_graph_clone_random_contract_test.go +213 -0
  972. package/native/core/programmers/iterate/feature_object_entries.go +40 -0
  973. package/native/core/programmers/iterate/iterate_utility_coverage_test.go +30 -5
  974. package/native/core/programmers/iterate/json_schema_array.go +16 -0
  975. package/native/core/programmers/iterate/json_schema_bigint.go +7 -0
  976. package/native/core/programmers/iterate/json_schema_boolean.go +7 -0
  977. package/native/core/programmers/iterate/json_schema_discriminator_declaration_syntax_test.go +10 -5
  978. package/native/core/programmers/iterate/json_schema_jsDocTags.go +10 -3
  979. package/native/core/programmers/iterate/json_schema_jsdoc_tags_cast_reads_javascript_numbers_test.go +69 -0
  980. package/native/core/programmers/iterate/json_schema_native.go +27 -0
  981. package/native/core/programmers/iterate/json_schema_number.go +7 -0
  982. package/native/core/programmers/iterate/json_schema_pattern_property_order_test.go +5 -0
  983. package/native/core/programmers/iterate/json_schema_plugin.go +7 -0
  984. package/native/core/programmers/iterate/json_schema_station.go +16 -0
  985. package/native/core/programmers/iterate/json_schema_string.go +7 -0
  986. package/native/core/programmers/iterate/openapi_v3_downgrader.go +29 -10
  987. package/native/core/programmers/iterate/openapi_v3_downgrader_boolean_default_test.go +9 -4
  988. package/native/core/programmers/iterate/openapi_v3_downgrader_test.go +9 -4
  989. package/native/core/programmers/iterate/postfix_of_tuple.go +8 -0
  990. package/native/core/programmers/iterate/template_interpolation_tags_test.go +46 -4
  991. package/native/core/programmers/iterate/template_runtime_pattern.go +10 -4
  992. package/native/core/programmers/iterate/wrap_metadata_rest_tuple.go +8 -0
  993. package/native/core/programmers/json/JsonApplicationProgrammer.go +9 -0
  994. package/native/core/programmers/json/JsonAssertParseProgrammer.go +9 -0
  995. package/native/core/programmers/json/JsonAssertStringifyProgrammer.go +9 -0
  996. package/native/core/programmers/json/JsonIsParseProgrammer.go +7 -0
  997. package/native/core/programmers/json/JsonIsStringifyProgrammer.go +8 -0
  998. package/native/core/programmers/json/JsonSchemaProgrammer.go +15 -0
  999. package/native/core/programmers/json/JsonSchemasProgrammer.go +16 -0
  1000. package/native/core/programmers/json/JsonStringifyProgrammer.go +20 -32
  1001. package/native/core/programmers/json/JsonValidateParseProgrammer.go +8 -0
  1002. package/native/core/programmers/json/JsonValidateStringifyProgrammer.go +8 -0
  1003. package/native/core/programmers/json/json_schema_programmer_coverage_test.go +176 -171
  1004. package/native/core/programmers/json/json_schemas_programmer_dedupes_bigint_diagnostics_test.go +5 -0
  1005. package/native/core/programmers/json/json_schemas_programmer_rejects_bigint_native_test.go +5 -0
  1006. package/native/core/programmers/json/json_stringify_programmer_coverage_test.go +400 -398
  1007. package/native/core/programmers/llm/LlmApplicationProgrammer.go +10 -9
  1008. package/native/core/programmers/llm/LlmCoerceProgrammer.go +16 -9
  1009. package/native/core/programmers/llm/LlmControllerProgrammer.go +10 -0
  1010. package/native/core/programmers/llm/LlmEvaluationProgrammer.go +107 -11
  1011. package/native/core/programmers/llm/LlmParametersProgrammer.go +8 -9
  1012. package/native/core/programmers/llm/LlmParseProgrammer.go +24 -9
  1013. package/native/core/programmers/llm/LlmSchemaProgrammer.go +50 -13
  1014. package/native/core/programmers/llm/LlmStructuredOutputProgrammer.go +8 -9
  1015. package/native/core/programmers/llm/llm_application_programmer_coverage_test.go +146 -141
  1016. package/native/core/programmers/llm/llm_reference_codec_test.go +5 -0
  1017. package/native/core/programmers/llm/llm_reference_description_test.go +13 -3
  1018. package/native/core/programmers/llm/llm_schema_programmer_coverage_test.go +255 -250
  1019. package/native/core/programmers/llm/llm_schema_programmer_dedupes_bigint_diagnostics_test.go +5 -0
  1020. package/native/core/programmers/llm/llm_schema_programmer_rejects_bigint_native_test.go +5 -0
  1021. package/native/core/programmers/llm/llm_schema_programmer_rejects_exclude_tag_in_strict_test.go +7 -3
  1022. package/native/core/programmers/notations/NotationAssertGeneralProgrammer.go +32 -4
  1023. package/native/core/programmers/notations/NotationGeneralProgrammer.go +70 -42
  1024. package/native/core/programmers/notations/NotationIsGeneralProgrammer.go +29 -3
  1025. package/native/core/programmers/notations/NotationValidateGeneralProgrammer.go +32 -4
  1026. package/native/core/programmers/notations/notation_general_helpers_test.go +363 -367
  1027. package/native/core/programmers/notations/notation_general_programmer_pascal_multiword_test.go +5 -0
  1028. package/native/core/programmers/notations/notation_general_programmer_snake_prefix_test.go +5 -0
  1029. package/native/core/programmers/notations/notation_general_programmer_underscore_boundary_test.go +5 -0
  1030. package/native/core/programmers/plain/PlainAssertClassifyProgrammer.go +23 -3
  1031. package/native/core/programmers/plain/PlainAssertCloneProgrammer.go +22 -3
  1032. package/native/core/programmers/plain/PlainAssertPruneProgrammer.go +22 -3
  1033. package/native/core/programmers/plain/PlainClassifyProgrammer.go +61 -85
  1034. package/native/core/programmers/plain/PlainCloneProgrammer.go +34 -38
  1035. package/native/core/programmers/plain/PlainIsCloneProgrammer.go +18 -2
  1036. package/native/core/programmers/plain/PlainIsPruneProgrammer.go +18 -2
  1037. package/native/core/programmers/plain/PlainPruneProgrammer.go +29 -10
  1038. package/native/core/programmers/plain/PlainValidateClassifyProgrammer.go +22 -3
  1039. package/native/core/programmers/plain/PlainValidateCloneProgrammer.go +22 -3
  1040. package/native/core/programmers/plain/PlainValidatePruneProgrammer.go +22 -3
  1041. package/native/core/programmers/plain/plain_programmer_helper_coverage_test.go +6 -3
  1042. package/native/core/programmers/plain/plain_prune_programmer_branch_matrix_test.go +5 -0
  1043. package/native/core/programmers/plain/plain_tuple_seed_recovery_ownership_test.go +5 -0
  1044. package/native/core/programmers/protobuf/ProtobufAssertDecodeProgrammer.go +19 -0
  1045. package/native/core/programmers/protobuf/ProtobufAssertEncodeProgrammer.go +19 -0
  1046. package/native/core/programmers/protobuf/ProtobufDecodeProgrammer.go +19 -1
  1047. package/native/core/programmers/protobuf/ProtobufEncodeProgrammer.go +30 -30
  1048. package/native/core/programmers/protobuf/ProtobufIsDecodeProgrammer.go +19 -1
  1049. package/native/core/programmers/protobuf/ProtobufIsEncodeProgrammer.go +19 -1
  1050. package/native/core/programmers/protobuf/ProtobufMessageProgrammer.go +11 -5
  1051. package/native/core/programmers/protobuf/ProtobufValidateDecodeProgrammer.go +19 -1
  1052. package/native/core/programmers/protobuf/ProtobufValidateEncodeProgrammer.go +19 -1
  1053. package/native/core/programmers/protobuf/protobuf_programmer_helper_coverage_test.go +493 -453
  1054. package/native/core/programmers/random_programmer_helper_coverage_test.go +350 -342
  1055. package/native/core/programmers/random_programmer_length_argument_test.go +32 -1
  1056. package/native/core/programmers/random_programmer_min_items_tag_test.go +5 -0
  1057. package/native/core/programmers/random_programmer_pick_hook_test.go +88 -0
  1058. package/native/core/programmers/reflect/ReflectLiteralsProgrammer.go +15 -0
  1059. package/native/core/schemas/metadata/IMetadataTypeTagSequence.go +12 -1
  1060. package/native/core/schemas/metadata/MetadataAlias.go +41 -1
  1061. package/native/core/schemas/metadata/MetadataAliasType.go +57 -21
  1062. package/native/core/schemas/metadata/MetadataArray.go +37 -1
  1063. package/native/core/schemas/metadata/MetadataArrayType.go +52 -18
  1064. package/native/core/schemas/metadata/MetadataAtomic.go +44 -10
  1065. package/native/core/schemas/metadata/MetadataBigint.go +20 -4
  1066. package/native/core/schemas/metadata/MetadataCollection.go +264 -53
  1067. package/native/core/schemas/metadata/MetadataComponents.go +13 -116
  1068. package/native/core/schemas/metadata/MetadataConstant.go +35 -13
  1069. package/native/core/schemas/metadata/MetadataConstantValue.go +87 -20
  1070. package/native/core/schemas/metadata/MetadataDefaultLibrary.go +20 -0
  1071. package/native/core/schemas/metadata/MetadataDependency.go +52 -2
  1072. package/native/core/schemas/metadata/MetadataEscaped.go +48 -8
  1073. package/native/core/schemas/metadata/MetadataFunction.go +42 -16
  1074. package/native/core/schemas/metadata/MetadataMap.go +53 -4
  1075. package/native/core/schemas/metadata/MetadataNative.go +65 -9
  1076. package/native/core/schemas/metadata/MetadataObject.go +37 -1
  1077. package/native/core/schemas/metadata/MetadataObjectType.go +117 -74
  1078. package/native/core/schemas/metadata/MetadataParameter.go +51 -16
  1079. package/native/core/schemas/metadata/MetadataProperty.go +49 -19
  1080. package/native/core/schemas/metadata/MetadataSchema.go +324 -198
  1081. package/native/core/schemas/metadata/MetadataSet.go +49 -2
  1082. package/native/core/schemas/metadata/MetadataTemplate.go +61 -15
  1083. package/native/core/schemas/metadata/MetadataTuple.go +21 -0
  1084. package/native/core/schemas/metadata/MetadataTupleType.go +61 -19
  1085. package/native/core/schemas/metadata/metadata_atomic_tags_are_owned_test.go +75 -0
  1086. package/native/core/schemas/metadata/metadata_bigint_is_comparable_test.go +5 -0
  1087. package/native/core/schemas/metadata/metadata_collection_generic_argument_dot_test.go +13 -8
  1088. package/native/core/schemas/metadata/metadata_collection_name_allocation_test.go +9 -2
  1089. package/native/core/schemas/metadata/metadata_collection_openapi_name_cascade_test.go +5 -0
  1090. package/native/core/schemas/metadata/metadata_collection_openapi_name_test.go +7 -1
  1091. package/native/core/schemas/metadata/metadata_object_coverage_compares_property_values_test.go +61 -0
  1092. package/native/core/schemas/metadata/metadata_object_type_required_literal_property_test.go +7 -1
  1093. package/native/core/schemas/metadata/metadata_schema_covers_tag_matrix_test.go +8 -3
  1094. package/native/core/schemas/metadata/metadata_schema_merge_keeps_inputs_test.go +117 -0
  1095. package/native/core/schemas/metadata/metadata_schema_optional_root_isolation_test.go +59 -0
  1096. package/native/core/schemas/metadata/metadata_schema_shallow_clone_names_test.go +36 -0
  1097. package/native/core/schemas/metadata/metadata_schema_sole_literal_caches_pointer_test.go +5 -0
  1098. package/native/core/schemas/metadata/schema_sequence_and_json_coverage_test.go +289 -387
  1099. package/native/core/schemas/protobuf/IProtobufProperty.go +11 -0
  1100. package/native/core/schemas/protobuf/IProtobufPropertyType.go +94 -0
  1101. package/native/core/schemas/protobuf/IProtobufSchema.go +89 -5
  1102. package/native/core/utils/NumberUtil.go +201 -0
  1103. package/native/core/utils/PromiseTypeFactory.go +12 -1
  1104. package/native/core/utils/number_util_rational_keeps_written_value_test.go +67 -0
  1105. package/native/core/utils/number_util_reads_javascript_number_grammar_test.go +152 -0
  1106. package/native/core/utils/promise_type_factory_semantics_test.go +5 -0
  1107. package/native/transform/CallExpressionTransformer.go +42 -10
  1108. package/native/transform/FileTransformer.go +72 -53
  1109. package/native/transform/ITransformProps.go +7 -0
  1110. package/native/transform/NodeTransformer.go +10 -1
  1111. package/native/transform/TransformerError.go +31 -0
  1112. package/native/transform/call_expression_transformer_registry_coverage_test.go +40 -31
  1113. package/native/transform/call_expression_transformer_target_test.go +33 -4
  1114. package/native/transform/features/CreateIsTransformer.go +0 -1
  1115. package/native/transform/features/CreateShallowTransformer.go +0 -1
  1116. package/native/transform/features/CreateValidateTransformer.go +0 -1
  1117. package/native/transform/features/IsTransformer.go +0 -1
  1118. package/native/transform/features/ShallowTransformer.go +0 -1
  1119. package/native/transform/features/ValidateTransformer.go +0 -1
  1120. package/native/transform/features/functional/FunctionalGenericTransformer.go +46 -7
  1121. package/native/transform/features/http/CreateHttpIsQueryTransformer.go +0 -1
  1122. package/native/transform/features/http/CreateHttpQueryTransformer.go +0 -1
  1123. package/native/transform/features/http/CreateHttpValidateQueryTransformer.go +0 -1
  1124. package/native/transform/features/http/HttpIsQueryTransformer.go +0 -1
  1125. package/native/transform/features/http/HttpQueryTransformer.go +0 -1
  1126. package/native/transform/features/http/HttpValidateQueryTransformer.go +0 -1
  1127. package/native/transform/features/llm/LlmEvaluationProbabilityDeclarations_test.go +6 -1
  1128. package/native/transform/features/llm/LlmEvaluationTransformer.go +55 -1
  1129. package/native/transform/features/notations/notation_transformer_capitalize_test.go +29 -0
  1130. package/native/transform/features/protobuf/ProtobufCreateDecodeTransformer.go +1 -1
  1131. package/native/transform/features/protobuf/ProtobufCreateEncodeTransformer.go +1 -1
  1132. package/native/transform/features/protobuf/ProtobufCreateIsDecodeTransformer.go +1 -1
  1133. package/native/transform/features/protobuf/ProtobufCreateIsEncodeTransformer.go +1 -1
  1134. package/native/transform/features/protobuf/ProtobufCreateValidateDecodeTransformer.go +1 -1
  1135. package/native/transform/features/protobuf/ProtobufCreateValidateEncodeTransformer.go +1 -1
  1136. package/native/transform/features/protobuf/ProtobufDecodeTransformer.go +1 -1
  1137. package/native/transform/features/protobuf/ProtobufEncodeTransformer.go +1 -1
  1138. package/native/transform/features/protobuf/ProtobufIsDecodeTransformer.go +1 -1
  1139. package/native/transform/features/protobuf/ProtobufIsEncodeTransformer.go +1 -1
  1140. package/native/transform/features/protobuf/ProtobufValidateDecodeTransformer.go +1 -1
  1141. package/native/transform/features/protobuf/ProtobufValidateEncodeTransformer.go +1 -1
  1142. package/native/transform/features/reflect/reflect_metadata_transformer_edge_branches_test.go +42 -30
  1143. package/native/transform/file_transformer_coverage_test.go +17 -3
  1144. package/native/transform/internal/GenericTransformer.go +67 -113
  1145. package/native/transform/transform.go +16 -2
  1146. package/package.json +7 -6
  1147. package/src/TypeGuardError.ts +20 -4
  1148. package/src/basic.ts +1020 -0
  1149. package/src/compare.ts +21 -0
  1150. package/src/functional.ts +42 -0
  1151. package/src/http.ts +136 -34
  1152. package/src/internal/_IProtobufWriter.ts +115 -0
  1153. package/src/internal/_ProtobufReader.ts +159 -1
  1154. package/src/internal/_ProtobufSizer.ts +137 -5
  1155. package/src/internal/_ProtobufWriter.ts +154 -1
  1156. package/src/internal/_accessExpressionAsString.ts +11 -0
  1157. package/src/internal/_assertGuard.ts +12 -0
  1158. package/src/internal/_coerceLlmArguments.ts +10 -0
  1159. package/src/internal/_createLlmEvaluation.ts +10 -53
  1160. package/src/internal/_createStandardSchema.ts +13 -0
  1161. package/src/internal/_decimal.ts +77 -0
  1162. package/src/internal/_functionalTypeGuardErrorFactory.ts +8 -0
  1163. package/src/internal/_httpFormDataReadArray.ts +9 -0
  1164. package/src/internal/_httpFormDataReadBigint.ts +15 -1
  1165. package/src/internal/_httpFormDataReadBlob.ts +11 -0
  1166. package/src/internal/_httpFormDataReadBoolean.ts +14 -1
  1167. package/src/internal/_httpFormDataReadFile.ts +11 -0
  1168. package/src/internal/_httpFormDataReadNumber.ts +14 -1
  1169. package/src/internal/_httpFormDataReadString.ts +15 -1
  1170. package/src/internal/_httpHeaderReadBigint.ts +17 -1
  1171. package/src/internal/_httpHeaderReadBoolean.ts +12 -0
  1172. package/src/internal/_httpHeaderReadNumber.ts +17 -1
  1173. package/src/internal/_httpParameterReadBigint.ts +14 -0
  1174. package/src/internal/_httpParameterReadBoolean.ts +11 -0
  1175. package/src/internal/_httpParameterReadNumber.ts +14 -0
  1176. package/src/internal/_httpParameterReadString.ts +17 -2
  1177. package/src/internal/_httpQueryParseURLSearchParams.ts +14 -0
  1178. package/src/internal/_httpQueryReadArray.ts +9 -0
  1179. package/src/internal/_httpQueryReadBigint.ts +18 -1
  1180. package/src/internal/_httpQueryReadBoolean.ts +15 -1
  1181. package/src/internal/_httpQueryReadNumber.ts +18 -1
  1182. package/src/internal/_httpQueryReadString.ts +15 -1
  1183. package/src/internal/_isBetween.ts +8 -0
  1184. package/src/internal/_isBigintString.ts +11 -0
  1185. package/src/internal/_isFormatByte.ts +12 -0
  1186. package/src/internal/_isFormatDate.ts +11 -0
  1187. package/src/internal/_isFormatDateTime.ts +13 -0
  1188. package/src/internal/_isFormatDuration.ts +13 -0
  1189. package/src/internal/_isFormatEmail.ts +13 -0
  1190. package/src/internal/_isFormatHostname.ts +12 -0
  1191. package/src/internal/_isFormatIdnEmail.ts +14 -0
  1192. package/src/internal/_isFormatIdnHostname.ts +14 -0
  1193. package/src/internal/_isFormatIpv4.ts +11 -0
  1194. package/src/internal/_isFormatIpv6.ts +12 -0
  1195. package/src/internal/_isFormatIri.ts +11 -0
  1196. package/src/internal/_isFormatIriReference.ts +13 -0
  1197. package/src/internal/_isFormatJsonPointer.ts +11 -0
  1198. package/src/internal/_isFormatPassword.ts +11 -0
  1199. package/src/internal/_isFormatRegex.ts +11 -0
  1200. package/src/internal/_isFormatRelativeJsonPointer.ts +11 -0
  1201. package/src/internal/_isFormatTime.ts +12 -0
  1202. package/src/internal/_isFormatUri.ts +15 -0
  1203. package/src/internal/_isFormatUriReference.ts +11 -0
  1204. package/src/internal/_isFormatUriTemplate.ts +14 -1
  1205. package/src/internal/_isFormatUrl.ts +15 -0
  1206. package/src/internal/_isFormatUuid.ts +11 -0
  1207. package/src/internal/_isMultipleOf.ts +11 -0
  1208. package/src/internal/_isTypeFloat.ts +9 -0
  1209. package/src/internal/_isTypeInt16.ts +8 -0
  1210. package/src/internal/_isTypeInt32.ts +8 -0
  1211. package/src/internal/_isTypeInt64.ts +11 -0
  1212. package/src/internal/_isTypeInt64Bigint.ts +8 -0
  1213. package/src/internal/_isTypeInt8.ts +8 -0
  1214. package/src/internal/_isTypeUint16.ts +8 -0
  1215. package/src/internal/_isTypeUint32.ts +8 -0
  1216. package/src/internal/_isTypeUint64.ts +11 -0
  1217. package/src/internal/_isTypeUint64Bigint.ts +8 -0
  1218. package/src/internal/_isTypeUint8.ts +8 -0
  1219. package/src/internal/_isUniqueItems.ts +46 -0
  1220. package/src/internal/_jsonStringifyArray.ts +2 -0
  1221. package/src/internal/_jsonStringifyElement.ts +2 -0
  1222. package/src/internal/_jsonStringifyNumber.ts +9 -0
  1223. package/src/internal/_jsonStringifyProperty.ts +3 -1
  1224. package/src/internal/_jsonStringifyRest.ts +11 -0
  1225. package/src/internal/_jsonStringifyString.ts +13 -0
  1226. package/src/internal/_jsonStringifyTail.ts +8 -0
  1227. package/src/internal/_llmApplicationFinalize.ts +13 -0
  1228. package/src/internal/_notationAny.ts +14 -0
  1229. package/src/internal/_notationAssign.ts +12 -0
  1230. package/src/internal/_notationKebab.ts +9 -0
  1231. package/src/internal/_notationKeyCollision.ts +8 -0
  1232. package/src/internal/_notationSnake.ts +12 -0
  1233. package/src/internal/_parseLlmArguments.ts +12 -0
  1234. package/src/internal/_plainCloneAny.ts +15 -0
  1235. package/src/internal/_randomArray.ts +42 -20
  1236. package/src/internal/_randomBigint.ts +116 -3
  1237. package/src/internal/_randomBoolean.ts +8 -0
  1238. package/src/internal/_randomFormatByte.ts +8 -0
  1239. package/src/internal/_randomFormatDate.ts +10 -0
  1240. package/src/internal/_randomFormatDatetime.ts +10 -0
  1241. package/src/internal/_randomFormatDuration.ts +8 -0
  1242. package/src/internal/_randomFormatEmail.ts +8 -0
  1243. package/src/internal/_randomFormatHostname.ts +15 -1
  1244. package/src/internal/_randomFormatIdnEmail.ts +13 -0
  1245. package/src/internal/_randomFormatIdnHostname.ts +12 -0
  1246. package/src/internal/_randomFormatIpv4.ts +8 -0
  1247. package/src/internal/_randomFormatIpv6.ts +8 -0
  1248. package/src/internal/_randomFormatIri.ts +11 -0
  1249. package/src/internal/_randomFormatIriReference.ts +12 -0
  1250. package/src/internal/_randomFormatJsonPointer.ts +12 -0
  1251. package/src/internal/_randomFormatPassword.ts +13 -0
  1252. package/src/internal/_randomFormatRegex.ts +8 -0
  1253. package/src/internal/_randomFormatRelativeJsonPointer.ts +8 -0
  1254. package/src/internal/_randomFormatTime.ts +13 -0
  1255. package/src/internal/_randomFormatUri.ts +12 -0
  1256. package/src/internal/_randomFormatUriReference.ts +12 -0
  1257. package/src/internal/_randomFormatUriTemplate.ts +12 -0
  1258. package/src/internal/_randomFormatUrl.ts +12 -0
  1259. package/src/internal/_randomFormatUuid.ts +13 -0
  1260. package/src/internal/_randomInteger.ts +99 -33
  1261. package/src/internal/_randomMultiple.ts +47 -15
  1262. package/src/internal/_randomNumber.ts +107 -38
  1263. package/src/internal/_randomPattern.ts +12 -0
  1264. package/src/internal/_randomPick.ts +25 -7
  1265. package/src/internal/_randomString.ts +36 -13
  1266. package/src/internal/_randomStringLength.ts +31 -1
  1267. package/src/internal/_stringLength.ts +11 -0
  1268. package/src/internal/_stringLengthGte.ts +11 -0
  1269. package/src/internal/_stringLengthLte.ts +11 -0
  1270. package/src/internal/_throwTypeGuardError.ts +9 -0
  1271. package/src/internal/_validateReport.ts +15 -0
  1272. package/src/internal/private/__notationRename.ts +5 -0
  1273. package/src/internal/private/__randomComposition.ts +27 -3
  1274. package/src/internal/private/__randomEpoch.ts +15 -0
  1275. package/src/json.ts +49 -14
  1276. package/src/llm.ts +45 -26
  1277. package/src/module.ts +1 -935
  1278. package/src/notations.ts +60 -0
  1279. package/src/plain.ts +38 -0
  1280. package/src/protobuf.ts +41 -7
  1281. package/src/reflect.ts +16 -12
  1282. package/src/transform.ts +17 -0
  1283. package/native/cmd/ttsc-typia/boolean_literal_discriminant_schema_transform_test.go +0 -374
  1284. package/native/cmd/ttsc-typia/build_reports_semantic_diagnostics_test.go +0 -34
  1285. package/native/cmd/ttsc-typia/build_reports_syntactic_diagnostics_test.go +0 -34
  1286. package/native/cmd/ttsc-typia/command_routes_and_diagnostics_coverage_test.go +0 -316
  1287. package/native/cmd/ttsc-typia/compare_less_transform_test.go +0 -180
  1288. package/native/cmd/ttsc-typia/compare_method_delegation_transform_test.go +0 -173
  1289. package/native/cmd/ttsc-typia/compare_native_object_overmatch_transform_test.go +0 -161
  1290. package/native/cmd/ttsc-typia/compare_template_literal_union_transform_test.go +0 -241
  1291. package/native/cmd/ttsc-typia/compare_union_discrimination_transform_test.go +0 -289
  1292. package/native/cmd/ttsc-typia/escaped_property_key_path_transform_test.go +0 -193
  1293. package/native/cmd/ttsc-typia/finite_option_number_leaf_transform_test.go +0 -240
  1294. package/native/cmd/ttsc-typia/intersection_all_never_union_transform_test.go +0 -168
  1295. package/native/cmd/ttsc-typia/intersection_brand_transform_test.go +0 -267
  1296. package/native/cmd/ttsc-typia/is_object_function_member_transform_test.go +0 -205
  1297. package/native/cmd/ttsc-typia/json_is_stringify_finite_number_transform_test.go +0 -198
  1298. package/native/cmd/ttsc-typia/json_stringify_contextual_undefined_transform_test.go +0 -556
  1299. package/native/cmd/ttsc-typia/json_stringify_special_key_transform_test.go +0 -238
  1300. package/native/cmd/ttsc-typia/notation_dynamic_keys_transform_test.go +0 -286
  1301. package/native/cmd/ttsc-typia/notation_literal_collision_transform_test.go +0 -164
  1302. package/native/cmd/ttsc-typia/plain_prune_union_object_overmatch_transform_test.go +0 -219
  1303. package/native/cmd/ttsc-typia/recursive_container_helper_index_transform_test.go +0 -206
  1304. package/native/cmd/ttsc-typia/reflect_literals_bigint_transform_test.go +0 -148
  1305. package/native/cmd/ttsc-typia/reflect_schema_bigint_transform_test.go +0 -173
  1306. package/native/cmd/ttsc-typia/run_default_build_route_test.go +0 -31
  1307. package/native/cmd/ttsc-typia/shallow_depth_runtime_test.go +0 -173
  1308. package/native/cmd/ttsc-typia/shallow_factory_depth_runtime_test.go +0 -171
  1309. package/native/cmd/ttsc-typia/symbol_index_domain_transform_test.go +0 -316
  1310. package/native/cmd/ttsc-typia/transform_declaration_source_produces_no_javascript_test.go +0 -67
  1311. package/native/cmd/ttsc-typia/transform_single_file_js_empty_emit_reports_no_output_test.go +0 -100
  1312. package/native/core/factories/internal/metadata/optional_coalesce_coverage_test.go +0 -38
  1313. package/native/core/programmers/functional/functional_assert_helper_coverage_test.go +0 -26
  1314. package/native/core/programmers/iterate/iterate_check_coverage_test.go +0 -96
  1315. package/native/core/programmers/programmer_direct_helper_coverage_test.go +0 -70
  1316. package/native/core/schemas/metadata/IMetadataDictionary.go +0 -8
  1317. package/native/core/schemas/protobuf/protobuf_marker_coverage_test.go +0 -58
  1318. package/native/core/typings/Writable.go +0 -5
  1319. package/native/transform/ImportTransformer.go +0 -285
  1320. package/native/transform/TypiaGenerator.go +0 -171
  1321. package/native/transform/features/feature_transformer_entry_coverage_test.go +0 -59
  1322. package/native/transform/features/http/http_transformer_entry_coverage_test.go +0 -65
  1323. package/native/transform/features/json/json_transformer_entry_coverage_test.go +0 -56
  1324. package/native/transform/features/llm/llm_transformer_entry_coverage_test.go +0 -50
  1325. package/native/transform/features/notations/notation_transformer_entry_coverage_test.go +0 -58
  1326. package/native/transform/features/plain/plain_transformer_entry_coverage_test.go +0 -61
  1327. package/native/transform/features/protobuf/protobuf_transformer_entry_coverage_test.go +0 -56
  1328. package/native/transform/features/reflect/reflect_transformer_entry_coverage_test.go +0 -47
  1329. package/native/transform/import_transformer_coverage_test.go +0 -153
  1330. package/native/transform/typia_generator_helpers_coverage_test.go +0 -166
@@ -1 +1 @@
1
- {"version":3,"file":"protobuf.js","sourceRoot":"","sources":["../src/protobuf.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAGA,gGAA6F;AAiC7F,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,kBAAkB,CAAC,CAAC;AACpD,CAAC;AAkCD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,iBAAiB,CAAC,CAAC;AACnD,CAAC;AAwCD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,uBAAuB,CAAC,CAAC;AACzD,CAAC;AA8BD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,mBAAmB,CAAC,CAAC;AACrD,CAAC;AAgCD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,yBAAyB,CAAC,CAAC;AAC3D,CAAC;AA0BD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,iBAAiB,CAAC,CAAC;AACnD,CAAC;AAoCD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,uBAAuB,CAAC,CAAC;AACzD,CAAC;AA0BD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,mBAAmB,CAAC,CAAC;AACrD,CAAC;AA4BD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,yBAAyB,CAAC,CAAC;AAC3D,CAAC;AAoBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,uBAAuB,CAAC,CAAC;AACzD,CAAC;AAiBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,yBAAyB,CAAC,CAAC;AAC3D,CAAC;AA0BD,gBAAgB;AAChB;IAIE,IAAA,6DAA6B,EAAC,6BAA6B,CAAC,CAAC;AAC/D,CAAC;AAmBD,gBAAgB;AAChB;IAGE,IAAA,6DAA6B,EAAC,+BAA+B,CAAC,CAAC;AACjE,CAAC;AAiBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,uBAAuB,CAAC,CAAC;AACzD,CAAC;AAiBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,yBAAyB,CAAC,CAAC;AAC3D,CAAC;AA0BD,gBAAgB;AAChB;IAIE,IAAA,6DAA6B,EAAC,6BAA6B,CAAC,CAAC;AAC/D,CAAC;AAmBD,gBAAgB;AAChB;IAGE,IAAA,6DAA6B,EAAC,+BAA+B,CAAC,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"protobuf.js","sourceRoot":"","sources":["../src/protobuf.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAGA,gGAA6F;AAmC7F,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,kBAAkB,CAAC,CAAC;AACpD,CAAC;AAoCD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,iBAAiB,CAAC,CAAC;AACnD,CAAC;AA2CD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,uBAAuB,CAAC,CAAC;AACzD,CAAC;AAgCD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,mBAAmB,CAAC,CAAC;AACrD,CAAC;AAkCD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,yBAAyB,CAAC,CAAC;AAC3D,CAAC;AA6BD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,iBAAiB,CAAC,CAAC;AACnD,CAAC;AAwCD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,uBAAuB,CAAC,CAAC;AACzD,CAAC;AA6BD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,mBAAmB,CAAC,CAAC;AACrD,CAAC;AA+BD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,yBAAyB,CAAC,CAAC;AAC3D,CAAC;AAqBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,uBAAuB,CAAC,CAAC;AACzD,CAAC;AAkBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,yBAAyB,CAAC,CAAC;AAC3D,CAAC;AA4BD,gBAAgB;AAChB;IAIE,IAAA,6DAA6B,EAAC,6BAA6B,CAAC,CAAC;AAC/D,CAAC;AAoBD,gBAAgB;AAChB;IAGE,IAAA,6DAA6B,EAAC,+BAA+B,CAAC,CAAC;AACjE,CAAC;AAkBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,uBAAuB,CAAC,CAAC;AACzD,CAAC;AAkBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,yBAAyB,CAAC,CAAC;AAC3D,CAAC;AA4BD,gBAAgB;AAChB;IAIE,IAAA,6DAA6B,EAAC,6BAA6B,CAAC,CAAC;AAC/D,CAAC;AAoBD,gBAAgB;AAChB;IAGE,IAAA,6DAA6B,EAAC,+BAA+B,CAAC,CAAC;AACjE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"protobuf.mjs","names":[],"sources":["../src/protobuf.ts"],"sourcesContent":["import { IValidation, Resolved } from \"@typia/interface\";\n\nimport { TypeGuardError } from \"./TypeGuardError\";\nimport { NoTransformConfigurationError } from \"./transformers/NoTransformConfigurationError\";\n\n/* ===========================================================\n PROTOCOL BUFFER\n - MESSAGE\n - DECODE\n - ENCODE\n - FACTORY FUNCTIONS\n==============================================================\n SCHEMA\n----------------------------------------------------------- */\n/**\n * Generates Protocol Buffer message schema.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function message(): never;\n\n/**\n * Generates Protocol Buffer message schema for type `T`.\n *\n * Creates a `.proto` message definition string from a TypeScript type. Use for\n * sharing schemas with other languages/frameworks.\n *\n * Protocol Buffer has limited expressiveness compared to TypeScript.\n * Incompatible types cause compilation errors.\n *\n * @template T Target type\n * @returns Protocol Buffer message schema string\n * @see https://typia.io/docs/protobuf/message/#restrictions\n */\nexport function message<T>(): string;\n\n/** @internal */\nexport function message(): never {\n NoTransformConfigurationError(\"protobuf.message\");\n}\n\n/* -----------------------------------------------------------\n DECODE\n----------------------------------------------------------- */\n/**\n * Decodes Protocol Buffer binary.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function decode(input: Uint8Array): never;\n\n/**\n * Decodes Protocol Buffer binary to type `T`.\n *\n * Converts Protocol Buffer binary data to a TypeScript instance. Binary data\n * must have been encoded from a `T`-typed value—invalid data causes undefined\n * behavior or errors.\n *\n * For type safety, ensure data was encoded via:\n *\n * - {@link assertEncode} — Encodes with type assertion\n * - {@link isEncode} — Encodes with type checking\n * - {@link validateEncode} — Encodes with validation\n *\n * Note: Decoder validation ({@link assertDecode}, etc.) only checks custom tags\n * like `number & Minimum<7>`, not structural type safety.\n *\n * @template T Target type\n * @param input Protocol Buffer binary data\n * @returns Decoded value of type `T`\n */\nexport function decode<T>(input: Uint8Array): Resolved<T>;\n\n/** @internal */\nexport function decode(): never {\n NoTransformConfigurationError(\"protobuf.decode\");\n}\n\n/**\n * Decodes Protocol Buffer binary with assertion.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function assertDecode(\n input: Uint8Array,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Decodes Protocol Buffer binary with assertion (partial safety).\n *\n * Combines {@link decode} with {@link assert}. Throws {@link TypeGuardError} on\n * validation failure.\n *\n * Warning: Only validates custom tags (e.g., `number & Minimum<7>`, `string &\n * Format<\"uuid\">`), not structural type correctness. Ensure source data was\n * encoded with type-safe encoders.\n *\n * Related functions:\n *\n * - {@link decode} — No validation\n * - {@link isDecode} — Returns `null` instead of throwing\n * - {@link validateDecode} — Returns detailed validation errors\n *\n * @template T Target type\n * @param input Protocol Buffer binary data\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @returns Decoded value of type `T`\n * @throws {TypeGuardError} When custom tag validation fails\n */\nexport function assertDecode<T>(\n input: Uint8Array,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Resolved<T>;\n\n/** @internal */\nexport function assertDecode(): never {\n NoTransformConfigurationError(\"protobuf.assertDecode\");\n}\n\n/**\n * Decodes Protocol Buffer binary with type checking.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function isDecode(input: Uint8Array): never;\n\n/**\n * Decodes Protocol Buffer binary with type checking (partial safety).\n *\n * Combines {@link decode} with {@link is}. Returns `null` on validation failure.\n *\n * Warning: Only validates custom tags (e.g., `number & Minimum<7>`, `string &\n * Format<\"uuid\">`), not structural type correctness. Ensure source data was\n * encoded with type-safe encoders.\n *\n * Related functions:\n *\n * - {@link decode} — No validation\n * - {@link assertDecode} — Throws instead of returning `null`\n * - {@link validateDecode} — Returns detailed validation errors\n *\n * @template T Target type\n * @param input Protocol Buffer binary data\n * @returns Decoded value of type `T`, or `null` if invalid\n */\nexport function isDecode<T>(input: Uint8Array): Resolved<T> | null;\n\n/** @internal */\nexport function isDecode(): never {\n NoTransformConfigurationError(\"protobuf.isDecode\");\n}\n\n/**\n * Decodes Protocol Buffer binary with validation.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function validateDecode(input: Uint8Array): never;\n\n/**\n * Decodes Protocol Buffer binary with validation (partial safety).\n *\n * Combines {@link decode} with {@link validate}. Returns\n * {@link IValidation.IFailure} with errors on mismatch, or\n * {@link IValidation.ISuccess} with decoded value.\n *\n * Warning: Only validates custom tags (e.g., `number & Minimum<7>`, `string &\n * Format<\"uuid\">`), not structural type correctness. Ensure source data was\n * encoded with type-safe encoders.\n *\n * Related functions:\n *\n * - {@link decode} — No validation\n * - {@link assertDecode} — Throws on first error\n * - {@link isDecode} — Returns `null` instead of error details\n *\n * @template T Target type\n * @param input Protocol Buffer binary data\n * @returns Validation result containing decoded value or errors\n */\nexport function validateDecode<T>(input: Uint8Array): IValidation<Resolved<T>>;\n\n/** @internal */\nexport function validateDecode(): never {\n NoTransformConfigurationError(\"protobuf.validateDecode\");\n}\n\n/* -----------------------------------------------------------\n ENCODE\n----------------------------------------------------------- */\n/**\n * Encodes value to Protocol Buffer binary.\n *\n * Converts a TypeScript value to Protocol Buffer binary format.\n *\n * Does not validate the input. For validation, use:\n *\n * - {@link assertEncode} — Throws on type mismatch\n * - {@link isEncode} — Returns `null` on type mismatch\n * - {@link validateEncode} — Returns detailed validation errors\n *\n * Protocol Buffer has limited expressiveness compared to TypeScript.\n * Incompatible types cause compilation errors.\n *\n * @template T Type of input value\n * @param input Value to encode\n * @returns Protocol Buffer binary data\n * @see https://typia.io/docs/protobuf/message/#restrictions\n */\nexport function encode<T>(input: T): Uint8Array;\n\n/** @internal */\nexport function encode(): never {\n NoTransformConfigurationError(\"protobuf.encode\");\n}\n\n/**\n * Encodes value to Protocol Buffer binary with assertion.\n *\n * Combines {@link assert} with {@link encode}. Throws {@link TypeGuardError} on\n * type mismatch.\n *\n * Related functions:\n *\n * - {@link encode} — No validation\n * - {@link isEncode} — Returns `null` instead of throwing\n * - {@link validateEncode} — Returns detailed validation errors\n *\n * Protocol Buffer has limited expressiveness compared to TypeScript.\n * Incompatible types cause compilation errors.\n *\n * @template T Type of input value\n * @param input Value to encode\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @returns Protocol Buffer binary data\n * @throws {TypeGuardError} When input doesn't conform to type `T`\n * @see https://typia.io/docs/protobuf/message/#restrictions\n */\nexport function assertEncode<T>(\n input: T,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Uint8Array;\n\n/** @internal */\nexport function assertEncode<T>(\n input: unknown,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Uint8Array;\n\n/** @internal */\nexport function assertEncode(): never {\n NoTransformConfigurationError(\"protobuf.assertEncode\");\n}\n\n/**\n * Encodes value to Protocol Buffer binary with type checking.\n *\n * Combines {@link is} with {@link encode}. Returns `null` on type mismatch.\n *\n * Related functions:\n *\n * - {@link encode} — No validation\n * - {@link assertEncode} — Throws instead of returning `null`\n * - {@link validateEncode} — Returns detailed validation errors\n *\n * Protocol Buffer has limited expressiveness compared to TypeScript.\n * Incompatible types cause compilation errors.\n *\n * @template T Type of input value\n * @param input Value to encode\n * @returns Protocol Buffer binary data, or `null` if invalid\n * @see https://typia.io/docs/protobuf/message/#restrictions\n */\nexport function isEncode<T>(input: T): Uint8Array | null;\n\n/** @internal */\nexport function isEncode<T>(input: unknown): Uint8Array | null;\n\n/** @internal */\nexport function isEncode(): never {\n NoTransformConfigurationError(\"protobuf.isEncode\");\n}\n\n/**\n * Encodes value to Protocol Buffer binary with validation.\n *\n * Combines {@link validate} with {@link encode}. Returns\n * {@link IValidation.IFailure} with all errors on mismatch, or\n * {@link IValidation.ISuccess} with binary data.\n *\n * Related functions:\n *\n * - {@link encode} — No validation\n * - {@link assertEncode} — Throws on first error\n * - {@link isEncode} — Returns `null` instead of error details\n *\n * Protocol Buffer has limited expressiveness compared to TypeScript.\n * Incompatible types cause compilation errors.\n *\n * @template T Type of input value\n * @param input Value to encode\n * @returns Validation result containing binary data or errors\n * @see https://typia.io/docs/protobuf/message/#restrictions\n */\nexport function validateEncode<T>(input: T): IValidation<Uint8Array>;\n\n/** @internal */\nexport function validateEncode<T>(input: unknown): IValidation<Uint8Array>;\n\n/** @internal */\nexport function validateEncode(): never {\n NoTransformConfigurationError(\"protobuf.validateEncode\");\n}\n\n/* -----------------------------------------------------------\n FACTORY FUNCTIONS\n----------------------------------------------------------- */\n/**\n * Creates reusable {@link decode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createDecode(): never;\n\n/**\n * Creates reusable {@link decode} function.\n *\n * @template T Target type\n * @returns Reusable decoder function\n */\nexport function createDecode<T>(): (input: Uint8Array) => Resolved<T>;\n\n/** @internal */\nexport function createDecode<T>(): (input: Uint8Array) => Resolved<T> {\n NoTransformConfigurationError(\"protobuf.createDecode\");\n}\n\n/**\n * Creates reusable {@link isDecode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createIsDecode(): never;\n\n/**\n * Creates reusable {@link isDecode} function.\n *\n * @template T Target type\n * @returns Reusable decoder function\n */\nexport function createIsDecode<T>(): (input: Uint8Array) => Resolved<T> | null;\n\n/** @internal */\nexport function createIsDecode<T>(): (input: Uint8Array) => Resolved<T> | null {\n NoTransformConfigurationError(\"protobuf.createIsDecode\");\n}\n\n/**\n * Creates reusable {@link assertDecode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createAssertDecode(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Creates reusable {@link assertDecode} function.\n *\n * @template T Target type\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @returns Reusable decoder function\n */\nexport function createAssertDecode<T>(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): (\n input: Uint8Array,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Resolved<T>;\n\n/** @internal */\nexport function createAssertDecode<T>(): (\n input: Uint8Array,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Resolved<T> {\n NoTransformConfigurationError(\"protobuf.createAssertDecode\");\n}\n\n/**\n * Creates reusable {@link validateDecode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createValidateDecode(): never;\n\n/**\n * Creates reusable {@link validateDecode} function.\n *\n * @template T Target type\n * @returns Reusable decoder function\n */\nexport function createValidateDecode<T>(): (\n input: Uint8Array,\n) => IValidation<Resolved<T>>;\n\n/** @internal */\nexport function createValidateDecode<T>(): (\n input: Uint8Array,\n) => IValidation<Resolved<T>> {\n NoTransformConfigurationError(\"protobuf.createValidateDecode\");\n}\n\n/**\n * Creates reusable {@link encode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createEncode(): never;\n\n/**\n * Creates reusable {@link encode} function.\n *\n * @template T Type of input value\n * @returns Reusable encoder function\n */\nexport function createEncode<T>(): (input: T) => Uint8Array;\n\n/** @internal */\nexport function createEncode<T>(): (input: T) => Uint8Array {\n NoTransformConfigurationError(\"protobuf.createEncode\");\n}\n\n/**\n * Creates reusable {@link isEncode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createIsEncode(): never;\n\n/**\n * Creates reusable {@link isEncode} function.\n *\n * @template T Type of input value\n * @returns Reusable encoder function\n */\nexport function createIsEncode<T>(): (input: T) => Uint8Array | null;\n\n/** @internal */\nexport function createIsEncode<T>(): (input: T) => Uint8Array | null {\n NoTransformConfigurationError(\"protobuf.createIsEncode\");\n}\n\n/**\n * Creates reusable {@link assertEncode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createAssertEncode(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Creates reusable {@link assertEncode} function.\n *\n * @template T Type of input value\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @returns Reusable encoder function\n */\nexport function createAssertEncode<T>(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): (\n input: T,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Uint8Array;\n\n/** @internal */\nexport function createAssertEncode<T>(): (\n input: T,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Uint8Array {\n NoTransformConfigurationError(\"protobuf.createAssertEncode\");\n}\n\n/**\n * Creates reusable {@link validateEncode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createValidateEncode(): never;\n\n/**\n * Creates reusable {@link validateEncode} function.\n *\n * @template T Type of input value\n * @returns Reusable encoder function\n */\nexport function createValidateEncode<T>(): (\n input: T,\n) => IValidation<Uint8Array>;\n\n/** @internal */\nexport function createValidateEncode<T>(): (\n input: T,\n) => IValidation<Uint8Array> {\n NoTransformConfigurationError(\"protobuf.createValidateEncode\");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAqCA,SAAgB,UAAiB;CAC/B,8BAA8B,kBAAkB;AAClD;;AAmCA,SAAgB,SAAgB;CAC9B,8BAA8B,iBAAiB;AACjD;;AAyCA,SAAgB,eAAsB;CACpC,8BAA8B,uBAAuB;AACvD;;AA+BA,SAAgB,WAAkB;CAChC,8BAA8B,mBAAmB;AACnD;;AAiCA,SAAgB,iBAAwB;CACtC,8BAA8B,yBAAyB;AACzD;;AA2BA,SAAgB,SAAgB;CAC9B,8BAA8B,iBAAiB;AACjD;;AAqCA,SAAgB,eAAsB;CACpC,8BAA8B,uBAAuB;AACvD;;AA2BA,SAAgB,WAAkB;CAChC,8BAA8B,mBAAmB;AACnD;;AA6BA,SAAgB,iBAAwB;CACtC,8BAA8B,yBAAyB;AACzD;;AAqBA,SAAgB,eAAsD;CACpE,8BAA8B,uBAAuB;AACvD;;AAkBA,SAAgB,iBAA+D;CAC7E,8BAA8B,yBAAyB;AACzD;;AA2BA,SAAgB,qBAGC;CACf,8BAA8B,6BAA6B;AAC7D;;AAoBA,SAAgB,uBAEc;CAC5B,8BAA8B,+BAA+B;AAC/D;;AAkBA,SAAgB,eAA4C;CAC1D,8BAA8B,uBAAuB;AACvD;;AAkBA,SAAgB,iBAAqD;CACnE,8BAA8B,yBAAyB;AACzD;;AA2BA,SAAgB,qBAGA;CACd,8BAA8B,6BAA6B;AAC7D;;AAoBA,SAAgB,uBAEa;CAC3B,8BAA8B,+BAA+B;AAC/D"}
1
+ {"version":3,"file":"protobuf.mjs","names":[],"sources":["../src/protobuf.ts"],"sourcesContent":["import { IValidation, Resolved } from \"@typia/interface\";\n\nimport { TypeGuardError } from \"./TypeGuardError\";\nimport { NoTransformConfigurationError } from \"./transformers/NoTransformConfigurationError\";\n\n/* ===========================================================\n PROTOCOL BUFFER\n - MESSAGE\n - DECODE\n - ENCODE\n - FACTORY FUNCTIONS\n==============================================================\n SCHEMA\n----------------------------------------------------------- */\n/**\n * Generates Protocol Buffer message schema.\n *\n * @danger You must configure the generic argument `_T`\n */\nexport function message(): never;\n\n/**\n * Generates Protocol Buffer message schema for type `_T`.\n *\n * Creates a `.proto` message definition string from a TypeScript type. Use for\n * sharing schemas with other languages/frameworks.\n *\n * Protocol Buffer has limited expressiveness compared to TypeScript.\n * Incompatible types cause compilation errors.\n *\n * @template _T Target type\n *\n * @returns Protocol Buffer message schema string\n *\n * @see https://typia.io/docs/protobuf/message/#restrictions\n */\nexport function message<_T>(): string;\n\n/** @internal */\nexport function message(): never {\n NoTransformConfigurationError(\"protobuf.message\");\n}\n\n/* -----------------------------------------------------------\n DECODE\n----------------------------------------------------------- */\n/**\n * Decodes Protocol Buffer binary.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function decode(input: Uint8Array): never;\n\n/**\n * Decodes Protocol Buffer binary to type `T`.\n *\n * Converts Protocol Buffer binary data to a TypeScript instance. Binary data\n * must have been encoded from a `T`-typed value—invalid data causes undefined\n * behavior or errors.\n *\n * For type safety, ensure data was encoded via:\n *\n * - {@link assertEncode} — Encodes with type assertion\n * - {@link isEncode} — Encodes with type checking\n * - {@link validateEncode} — Encodes with validation\n *\n * Note: Decoder validation ({@link assertDecode}, etc.) only checks custom tags\n * like `number & Minimum<7>`, not structural type safety.\n *\n * @template T Target type\n *\n * @param input Protocol Buffer binary data\n *\n * @returns Decoded value of type `T`\n */\nexport function decode<T>(input: Uint8Array): Resolved<T>;\n\n/** @internal */\nexport function decode(): never {\n NoTransformConfigurationError(\"protobuf.decode\");\n}\n\n/**\n * Decodes Protocol Buffer binary with assertion.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function assertDecode(\n input: Uint8Array,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Decodes Protocol Buffer binary with assertion (partial safety).\n *\n * Combines {@link decode} with {@link assert}. Throws {@link TypeGuardError} on\n * validation failure.\n *\n * Warning: Only validates custom tags (e.g., `number & Minimum<7>`, `string &\n * Format<\"uuid\">`), not structural type correctness. Ensure source data was\n * encoded with type-safe encoders.\n *\n * Related functions:\n *\n * - {@link decode} — No validation\n * - {@link isDecode} — Returns `null` instead of throwing\n * - {@link validateDecode} — Returns detailed validation errors\n *\n * @template T Target type\n *\n * @param input Protocol Buffer binary data\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @returns Decoded value of type `T`\n *\n * @throws {TypeGuardError} When custom tag validation fails\n */\nexport function assertDecode<T>(\n input: Uint8Array,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Resolved<T>;\n\n/** @internal */\nexport function assertDecode(): never {\n NoTransformConfigurationError(\"protobuf.assertDecode\");\n}\n\n/**\n * Decodes Protocol Buffer binary with type checking.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function isDecode(input: Uint8Array): never;\n\n/**\n * Decodes Protocol Buffer binary with type checking (partial safety).\n *\n * Combines {@link decode} with {@link is}. Returns `null` on validation failure.\n *\n * Warning: Only validates custom tags (e.g., `number & Minimum<7>`, `string &\n * Format<\"uuid\">`), not structural type correctness. Ensure source data was\n * encoded with type-safe encoders.\n *\n * Related functions:\n *\n * - {@link decode} — No validation\n * - {@link assertDecode} — Throws instead of returning `null`\n * - {@link validateDecode} — Returns detailed validation errors\n *\n * @template T Target type\n *\n * @param input Protocol Buffer binary data\n *\n * @returns Decoded value of type `T`, or `null` if invalid\n */\nexport function isDecode<T>(input: Uint8Array): Resolved<T> | null;\n\n/** @internal */\nexport function isDecode(): never {\n NoTransformConfigurationError(\"protobuf.isDecode\");\n}\n\n/**\n * Decodes Protocol Buffer binary with validation.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function validateDecode(input: Uint8Array): never;\n\n/**\n * Decodes Protocol Buffer binary with validation (partial safety).\n *\n * Combines {@link decode} with {@link validate}. Returns\n * {@link IValidation.IFailure} with errors on mismatch, or\n * {@link IValidation.ISuccess} with decoded value.\n *\n * Warning: Only validates custom tags (e.g., `number & Minimum<7>`, `string &\n * Format<\"uuid\">`), not structural type correctness. Ensure source data was\n * encoded with type-safe encoders.\n *\n * Related functions:\n *\n * - {@link decode} — No validation\n * - {@link assertDecode} — Throws on first error\n * - {@link isDecode} — Returns `null` instead of error details\n *\n * @template T Target type\n *\n * @param input Protocol Buffer binary data\n *\n * @returns Validation result containing decoded value or errors\n */\nexport function validateDecode<T>(input: Uint8Array): IValidation<Resolved<T>>;\n\n/** @internal */\nexport function validateDecode(): never {\n NoTransformConfigurationError(\"protobuf.validateDecode\");\n}\n\n/* -----------------------------------------------------------\n ENCODE\n----------------------------------------------------------- */\n/**\n * Encodes value to Protocol Buffer binary.\n *\n * Converts a TypeScript value to Protocol Buffer binary format.\n *\n * Does not validate the input. For validation, use:\n *\n * - {@link assertEncode} — Throws on type mismatch\n * - {@link isEncode} — Returns `null` on type mismatch\n * - {@link validateEncode} — Returns detailed validation errors\n *\n * Protocol Buffer has limited expressiveness compared to TypeScript.\n * Incompatible types cause compilation errors.\n *\n * @template T Type of input value\n *\n * @param input Value to encode\n *\n * @returns Protocol Buffer binary data\n *\n * @see https://typia.io/docs/protobuf/message/#restrictions\n */\nexport function encode<T>(input: T): Uint8Array;\n\n/** @internal */\nexport function encode(): never {\n NoTransformConfigurationError(\"protobuf.encode\");\n}\n\n/**\n * Encodes value to Protocol Buffer binary with assertion.\n *\n * Combines {@link assert} with {@link encode}. Throws {@link TypeGuardError} on\n * type mismatch.\n *\n * Related functions:\n *\n * - {@link encode} — No validation\n * - {@link isEncode} — Returns `null` instead of throwing\n * - {@link validateEncode} — Returns detailed validation errors\n *\n * Protocol Buffer has limited expressiveness compared to TypeScript.\n * Incompatible types cause compilation errors.\n *\n * @template T Type of input value\n *\n * @param input Value to encode\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @returns Protocol Buffer binary data\n *\n * @throws {TypeGuardError} When input doesn't conform to type `T`\n *\n * @see https://typia.io/docs/protobuf/message/#restrictions\n */\nexport function assertEncode<T>(\n input: T,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Uint8Array;\n\n/** @internal */\nexport function assertEncode<_T>(\n input: unknown,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Uint8Array;\n\n/** @internal */\nexport function assertEncode(): never {\n NoTransformConfigurationError(\"protobuf.assertEncode\");\n}\n\n/**\n * Encodes value to Protocol Buffer binary with type checking.\n *\n * Combines {@link is} with {@link encode}. Returns `null` on type mismatch.\n *\n * Related functions:\n *\n * - {@link encode} — No validation\n * - {@link assertEncode} — Throws instead of returning `null`\n * - {@link validateEncode} — Returns detailed validation errors\n *\n * Protocol Buffer has limited expressiveness compared to TypeScript.\n * Incompatible types cause compilation errors.\n *\n * @template T Type of input value\n *\n * @param input Value to encode\n *\n * @returns Protocol Buffer binary data, or `null` if invalid\n *\n * @see https://typia.io/docs/protobuf/message/#restrictions\n */\nexport function isEncode<T>(input: T): Uint8Array | null;\n\n/** @internal */\nexport function isEncode<_T>(input: unknown): Uint8Array | null;\n\n/** @internal */\nexport function isEncode(): never {\n NoTransformConfigurationError(\"protobuf.isEncode\");\n}\n\n/**\n * Encodes value to Protocol Buffer binary with validation.\n *\n * Combines {@link validate} with {@link encode}. Returns\n * {@link IValidation.IFailure} with all errors on mismatch, or\n * {@link IValidation.ISuccess} with binary data.\n *\n * Related functions:\n *\n * - {@link encode} — No validation\n * - {@link assertEncode} — Throws on first error\n * - {@link isEncode} — Returns `null` instead of error details\n *\n * Protocol Buffer has limited expressiveness compared to TypeScript.\n * Incompatible types cause compilation errors.\n *\n * @template T Type of input value\n *\n * @param input Value to encode\n *\n * @returns Validation result containing binary data or errors\n *\n * @see https://typia.io/docs/protobuf/message/#restrictions\n */\nexport function validateEncode<T>(input: T): IValidation<Uint8Array>;\n\n/** @internal */\nexport function validateEncode<_T>(input: unknown): IValidation<Uint8Array>;\n\n/** @internal */\nexport function validateEncode(): never {\n NoTransformConfigurationError(\"protobuf.validateEncode\");\n}\n\n/* -----------------------------------------------------------\n FACTORY FUNCTIONS\n----------------------------------------------------------- */\n/**\n * Creates reusable {@link decode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createDecode(): never;\n\n/**\n * Creates reusable {@link decode} function.\n *\n * @template T Target type\n *\n * @returns Reusable decoder function\n */\nexport function createDecode<T>(): (input: Uint8Array) => Resolved<T>;\n\n/** @internal */\nexport function createDecode<T>(): (input: Uint8Array) => Resolved<T> {\n NoTransformConfigurationError(\"protobuf.createDecode\");\n}\n\n/**\n * Creates reusable {@link isDecode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createIsDecode(): never;\n\n/**\n * Creates reusable {@link isDecode} function.\n *\n * @template T Target type\n *\n * @returns Reusable decoder function\n */\nexport function createIsDecode<T>(): (input: Uint8Array) => Resolved<T> | null;\n\n/** @internal */\nexport function createIsDecode<T>(): (input: Uint8Array) => Resolved<T> | null {\n NoTransformConfigurationError(\"protobuf.createIsDecode\");\n}\n\n/**\n * Creates reusable {@link assertDecode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createAssertDecode(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Creates reusable {@link assertDecode} function.\n *\n * @template T Target type\n *\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @returns Reusable decoder function\n */\nexport function createAssertDecode<T>(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): (\n input: Uint8Array,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Resolved<T>;\n\n/** @internal */\nexport function createAssertDecode<T>(): (\n input: Uint8Array,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Resolved<T> {\n NoTransformConfigurationError(\"protobuf.createAssertDecode\");\n}\n\n/**\n * Creates reusable {@link validateDecode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createValidateDecode(): never;\n\n/**\n * Creates reusable {@link validateDecode} function.\n *\n * @template T Target type\n *\n * @returns Reusable decoder function\n */\nexport function createValidateDecode<T>(): (\n input: Uint8Array,\n) => IValidation<Resolved<T>>;\n\n/** @internal */\nexport function createValidateDecode<T>(): (\n input: Uint8Array,\n) => IValidation<Resolved<T>> {\n NoTransformConfigurationError(\"protobuf.createValidateDecode\");\n}\n\n/**\n * Creates reusable {@link encode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createEncode(): never;\n\n/**\n * Creates reusable {@link encode} function.\n *\n * @template T Type of input value\n *\n * @returns Reusable encoder function\n */\nexport function createEncode<T>(): (input: T) => Uint8Array;\n\n/** @internal */\nexport function createEncode<T>(): (input: T) => Uint8Array {\n NoTransformConfigurationError(\"protobuf.createEncode\");\n}\n\n/**\n * Creates reusable {@link isEncode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createIsEncode(): never;\n\n/**\n * Creates reusable {@link isEncode} function.\n *\n * @template T Type of input value\n *\n * @returns Reusable encoder function\n */\nexport function createIsEncode<T>(): (input: T) => Uint8Array | null;\n\n/** @internal */\nexport function createIsEncode<T>(): (input: T) => Uint8Array | null {\n NoTransformConfigurationError(\"protobuf.createIsEncode\");\n}\n\n/**\n * Creates reusable {@link assertEncode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createAssertEncode(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Creates reusable {@link assertEncode} function.\n *\n * @template T Type of input value\n *\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @returns Reusable encoder function\n */\nexport function createAssertEncode<T>(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): (\n input: T,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Uint8Array;\n\n/** @internal */\nexport function createAssertEncode<T>(): (\n input: T,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Uint8Array {\n NoTransformConfigurationError(\"protobuf.createAssertEncode\");\n}\n\n/**\n * Creates reusable {@link validateEncode} function.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createValidateEncode(): never;\n\n/**\n * Creates reusable {@link validateEncode} function.\n *\n * @template T Type of input value\n *\n * @returns Reusable encoder function\n */\nexport function createValidateEncode<T>(): (\n input: T,\n) => IValidation<Uint8Array>;\n\n/** @internal */\nexport function createValidateEncode<T>(): (\n input: T,\n) => IValidation<Uint8Array> {\n NoTransformConfigurationError(\"protobuf.createValidateEncode\");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAuCA,SAAgB,UAAiB;CAC/B,8BAA8B,kBAAkB;AAClD;;AAqCA,SAAgB,SAAgB;CAC9B,8BAA8B,iBAAiB;AACjD;;AA4CA,SAAgB,eAAsB;CACpC,8BAA8B,uBAAuB;AACvD;;AAiCA,SAAgB,WAAkB;CAChC,8BAA8B,mBAAmB;AACnD;;AAmCA,SAAgB,iBAAwB;CACtC,8BAA8B,yBAAyB;AACzD;;AA8BA,SAAgB,SAAgB;CAC9B,8BAA8B,iBAAiB;AACjD;;AAyCA,SAAgB,eAAsB;CACpC,8BAA8B,uBAAuB;AACvD;;AA8BA,SAAgB,WAAkB;CAChC,8BAA8B,mBAAmB;AACnD;;AAgCA,SAAgB,iBAAwB;CACtC,8BAA8B,yBAAyB;AACzD;;AAsBA,SAAgB,eAAsD;CACpE,8BAA8B,uBAAuB;AACvD;;AAmBA,SAAgB,iBAA+D;CAC7E,8BAA8B,yBAAyB;AACzD;;AA6BA,SAAgB,qBAGC;CACf,8BAA8B,6BAA6B;AAC7D;;AAqBA,SAAgB,uBAEc;CAC5B,8BAA8B,+BAA+B;AAC/D;;AAmBA,SAAgB,eAA4C;CAC1D,8BAA8B,uBAAuB;AACvD;;AAmBA,SAAgB,iBAAqD;CACnE,8BAA8B,yBAAyB;AACzD;;AA6BA,SAAgB,qBAGA;CACd,8BAA8B,6BAA6B;AAC7D;;AAqBA,SAAgB,uBAEa;CAC3B,8BAA8B,+BAA+B;AAC/D"}
package/lib/reflect.d.ts CHANGED
@@ -2,7 +2,7 @@ import { Atomic, IMetadataSchemaCollection, IMetadataSchemaUnit } from "@typia/i
2
2
  /**
3
3
  * Generates metadata schemas for multiple types.
4
4
  *
5
- * @danger You must configure the generic argument `Types`
5
+ * @danger You must configure the generic argument `_Types`
6
6
  */
7
7
  export declare function schemas(): never;
8
8
  /**
@@ -12,14 +12,15 @@ export declare function schemas(): never;
12
12
  * the tuple. Collection types (Array, Tuple, Object) are stored in
13
13
  * `components`. Alias types are stored in `aliases`.
14
14
  *
15
- * @template Types Tuple of target types
15
+ * @template _Types Tuple of target types
16
+ *
16
17
  * @returns Metadata schema collection
17
18
  */
18
- export declare function schemas<Types extends unknown[]>(): IMetadataSchemaCollection;
19
+ export declare function schemas<_Types extends unknown[]>(): IMetadataSchemaCollection;
19
20
  /**
20
21
  * Generates metadata schema for a single type.
21
22
  *
22
- * @danger You must configure the generic argument `Type`
23
+ * @danger You must configure the generic argument `_Type`
23
24
  */
24
25
  export declare function schema(): never;
25
26
  /**
@@ -27,26 +28,28 @@ export declare function schema(): never;
27
28
  *
28
29
  * Creates {@link IMetadataSchemaUnit} containing metadata for the type.
29
30
  *
30
- * @template Type Target type
31
+ * @template _Type Target type
32
+ *
31
33
  * @returns Metadata schema unit
32
34
  */
33
- export declare function schema<Type>(): IMetadataSchemaUnit;
35
+ export declare function schema<_Type>(): IMetadataSchemaUnit;
34
36
  /**
35
- * Gets the runtime type name of type `T`.
37
+ * Gets the runtime type name of type `_T`.
36
38
  *
37
- * @danger You must configure the generic argument `T`
39
+ * @danger You must configure the generic argument `_T`
38
40
  */
39
41
  export declare function name(): never;
40
42
  /**
41
- * Gets the runtime type name of type `T`.
43
+ * Gets the runtime type name of type `_T`.
42
44
  *
43
45
  * Returns a string representation of the type name.
44
46
  *
45
- * @template T Target type
46
- * @template Regular If `true`, returns regular (normalized) name
47
+ * @template _T Target type
48
+ * @template _Regular If `true`, returns regular (normalized) name
49
+ *
47
50
  * @returns Type name string
48
51
  */
49
- export declare function name<T, Regular extends boolean = false>(): string;
52
+ export declare function name<_T, _Regular extends boolean = false>(): string;
50
53
  /**
51
54
  * Converts union literal type to array.
52
55
  *
@@ -59,6 +62,7 @@ export declare function literals(): never;
59
62
  * Extracts all members of a union literal type `T` into an array at runtime.
60
63
  *
61
64
  * @template T Union literal type (e.g., `"A" | "B" | 1`)
65
+ *
62
66
  * @returns Array containing all union members
63
67
  */
64
68
  export declare function literals<T extends Atomic.Type | null>(): T[];
@@ -1 +1 @@
1
- {"version":3,"file":"reflect.js","sourceRoot":"","sources":["../src/reflect.ts"],"names":[],"mappings":";;;;;;AAMA,gGAA6F;AAqB7F,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,iBAAiB,CAAC,CAAC;AACnD,CAAC;AAmBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,gBAAgB,CAAC,CAAC;AAClD,CAAC;AAoBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,cAAc,CAAC,CAAC;AAChD,CAAC;AAmBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,kBAAkB,CAAC,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"reflect.js","sourceRoot":"","sources":["../src/reflect.ts"],"names":[],"mappings":";;;;;;AAMA,gGAA6F;AAsB7F,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,iBAAiB,CAAC,CAAC;AACnD,CAAC;AAoBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,gBAAgB,CAAC,CAAC;AAClD,CAAC;AAqBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,cAAc,CAAC,CAAC;AAChD,CAAC;AAoBD,gBAAgB;AAChB;IACE,IAAA,6DAA6B,EAAC,kBAAkB,CAAC,CAAC;AACpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"reflect.mjs","names":[],"sources":["../src/reflect.ts"],"sourcesContent":["import {\n Atomic,\n IMetadataSchemaCollection,\n IMetadataSchemaUnit,\n} from \"@typia/interface\";\n\nimport { NoTransformConfigurationError } from \"./transformers/NoTransformConfigurationError\";\n\n/**\n * Generates metadata schemas for multiple types.\n *\n * @danger You must configure the generic argument `Types`\n */\nexport function schemas(): never;\n\n/**\n * Generates metadata schemas for multiple types.\n *\n * Creates {@link IMetadataSchemaCollection} containing metadata for all types in\n * the tuple. Collection types (Array, Tuple, Object) are stored in\n * `components`. Alias types are stored in `aliases`.\n *\n * @template Types Tuple of target types\n * @returns Metadata schema collection\n */\nexport function schemas<Types extends unknown[]>(): IMetadataSchemaCollection;\n\n/** @internal */\nexport function schemas(): never {\n NoTransformConfigurationError(\"reflect.schemas\");\n}\n\n/**\n * Generates metadata schema for a single type.\n *\n * @danger You must configure the generic argument `Type`\n */\nexport function schema(): never;\n\n/**\n * Generates metadata schema for a single type.\n *\n * Creates {@link IMetadataSchemaUnit} containing metadata for the type.\n *\n * @template Type Target type\n * @returns Metadata schema unit\n */\nexport function schema<Type>(): IMetadataSchemaUnit;\n\n/** @internal */\nexport function schema(): never {\n NoTransformConfigurationError(\"reflect.schema\");\n}\n\n/**\n * Gets the runtime type name of type `T`.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function name(): never;\n\n/**\n * Gets the runtime type name of type `T`.\n *\n * Returns a string representation of the type name.\n *\n * @template T Target type\n * @template Regular If `true`, returns regular (normalized) name\n * @returns Type name string\n */\nexport function name<T, Regular extends boolean = false>(): string;\n\n/** @internal */\nexport function name(): never {\n NoTransformConfigurationError(\"reflect.name\");\n}\n\n/**\n * Converts union literal type to array.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function literals(): never;\n\n/**\n * Converts union literal type to array.\n *\n * Extracts all members of a union literal type `T` into an array at runtime.\n *\n * @template T Union literal type (e.g., `\"A\" | \"B\" | 1`)\n * @returns Array containing all union members\n */\nexport function literals<T extends Atomic.Type | null>(): T[];\n\n/** @internal */\nexport function literals(): never {\n NoTransformConfigurationError(\"reflect.literals\");\n}\n"],"mappings":";;;;;;;;;;AA4BA,SAAgB,UAAiB;CAC/B,8BAA8B,iBAAiB;AACjD;;AAoBA,SAAgB,SAAgB;CAC9B,8BAA8B,gBAAgB;AAChD;;AAqBA,SAAgB,OAAc;CAC5B,8BAA8B,cAAc;AAC9C;;AAoBA,SAAgB,WAAkB;CAChC,8BAA8B,kBAAkB;AAClD"}
1
+ {"version":3,"file":"reflect.mjs","names":[],"sources":["../src/reflect.ts"],"sourcesContent":["import {\n Atomic,\n IMetadataSchemaCollection,\n IMetadataSchemaUnit,\n} from \"@typia/interface\";\n\nimport { NoTransformConfigurationError } from \"./transformers/NoTransformConfigurationError\";\n\n/**\n * Generates metadata schemas for multiple types.\n *\n * @danger You must configure the generic argument `_Types`\n */\nexport function schemas(): never;\n\n/**\n * Generates metadata schemas for multiple types.\n *\n * Creates {@link IMetadataSchemaCollection} containing metadata for all types in\n * the tuple. Collection types (Array, Tuple, Object) are stored in\n * `components`. Alias types are stored in `aliases`.\n *\n * @template _Types Tuple of target types\n *\n * @returns Metadata schema collection\n */\nexport function schemas<_Types extends unknown[]>(): IMetadataSchemaCollection;\n\n/** @internal */\nexport function schemas(): never {\n NoTransformConfigurationError(\"reflect.schemas\");\n}\n\n/**\n * Generates metadata schema for a single type.\n *\n * @danger You must configure the generic argument `_Type`\n */\nexport function schema(): never;\n\n/**\n * Generates metadata schema for a single type.\n *\n * Creates {@link IMetadataSchemaUnit} containing metadata for the type.\n *\n * @template _Type Target type\n *\n * @returns Metadata schema unit\n */\nexport function schema<_Type>(): IMetadataSchemaUnit;\n\n/** @internal */\nexport function schema(): never {\n NoTransformConfigurationError(\"reflect.schema\");\n}\n\n/**\n * Gets the runtime type name of type `_T`.\n *\n * @danger You must configure the generic argument `_T`\n */\nexport function name(): never;\n\n/**\n * Gets the runtime type name of type `_T`.\n *\n * Returns a string representation of the type name.\n *\n * @template _T Target type\n * @template _Regular If `true`, returns regular (normalized) name\n *\n * @returns Type name string\n */\nexport function name<_T, _Regular extends boolean = false>(): string;\n\n/** @internal */\nexport function name(): never {\n NoTransformConfigurationError(\"reflect.name\");\n}\n\n/**\n * Converts union literal type to array.\n *\n * @danger You must configure the generic argument `T`\n */\nexport function literals(): never;\n\n/**\n * Converts union literal type to array.\n *\n * Extracts all members of a union literal type `T` into an array at runtime.\n *\n * @template T Union literal type (e.g., `\"A\" | \"B\" | 1`)\n *\n * @returns Array containing all union members\n */\nexport function literals<T extends Atomic.Type | null>(): T[];\n\n/** @internal */\nexport function literals(): never {\n NoTransformConfigurationError(\"reflect.literals\");\n}\n"],"mappings":";;;;;;;;;;AA6BA,SAAgB,UAAiB;CAC/B,8BAA8B,iBAAiB;AACjD;;AAqBA,SAAgB,SAAgB;CAC9B,8BAA8B,gBAAgB;AAChD;;AAsBA,SAAgB,OAAc;CAC5B,8BAA8B,cAAc;AAC9C;;AAqBA,SAAgB,WAAkB;CAChC,8BAA8B,kBAAkB;AAClD"}
@@ -1,3 +1,20 @@
1
1
  import type { ITtscPlugin, ITtscPluginFactoryContext } from "ttsc";
2
+ /**
3
+ * Describe typia's native transform to ttsc.
4
+ *
5
+ * Ttsc loads this file as an ES module, where `require` is unavailable, so a
6
+ * resolver is anchored on the consuming project to find typia's own package
7
+ * root. The returned descriptor names the plugin and the Go command under
8
+ * `native/cmd/ttsc-typia`; the transform itself is not written in TypeScript.
9
+ *
10
+ * @param context Plugin factory context of ttsc
11
+ *
12
+ * @returns Plugin descriptor
13
+ *
14
+ * @evidence contracts/common.md#principled-implementation The ttsc loader runs this file as an ES module where `require` is absent, so the function builds a CommonJS resolver anchored at the consuming project and resolves typia's own `package.json`, whose directory holds the native sources; the returned descriptor names the plugin and the Go command directory under `native/cmd/ttsc-typia`.
15
+ * @evidence contracts/common.md#clear-and-simple-design One function that returns a two-field descriptor and no transformer; the default export repeats the same function for loaders that read it.
16
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts The package root comes from the installed typia through the supported resolver and not from path substrings, so it works for npm consumers and workspaces alike; the transform itself stays in Go.
17
+ * @evidence contracts/common.md#meaningful-documentation A comment explains the purpose, the ESM resolution reason and the descriptor.
18
+ */
2
19
  export declare function createTtscPlugin(context: ITtscPluginFactoryContext): ITtscPlugin;
3
20
  export default createTtscPlugin;
package/lib/transform.js CHANGED
@@ -6,6 +6,23 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.createTtscPlugin = createTtscPlugin;
7
7
  const node_module_1 = require("node:module");
8
8
  const node_path_1 = __importDefault(require("node:path"));
9
+ /**
10
+ * Describe typia's native transform to ttsc.
11
+ *
12
+ * Ttsc loads this file as an ES module, where `require` is unavailable, so a
13
+ * resolver is anchored on the consuming project to find typia's own package
14
+ * root. The returned descriptor names the plugin and the Go command under
15
+ * `native/cmd/ttsc-typia`; the transform itself is not written in TypeScript.
16
+ *
17
+ * @param context Plugin factory context of ttsc
18
+ *
19
+ * @returns Plugin descriptor
20
+ *
21
+ * @evidence contracts/common.md#principled-implementation The ttsc loader runs this file as an ES module where `require` is absent, so the function builds a CommonJS resolver anchored at the consuming project and resolves typia's own `package.json`, whose directory holds the native sources; the returned descriptor names the plugin and the Go command directory under `native/cmd/ttsc-typia`.
22
+ * @evidence contracts/common.md#clear-and-simple-design One function that returns a two-field descriptor and no transformer; the default export repeats the same function for loaders that read it.
23
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts The package root comes from the installed typia through the supported resolver and not from path substrings, so it works for npm consumers and workspaces alike; the transform itself stays in Go.
24
+ * @evidence contracts/common.md#meaningful-documentation A comment explains the purpose, the ESM resolution reason and the descriptor.
25
+ */
9
26
  function createTtscPlugin(context) {
10
27
  // ttsc loads this descriptor as ESM, where the ambient `require` is
11
28
  // unavailable; anchor a CJS resolver on the consuming project to locate
@@ -1 +1 @@
1
- {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":";;;;;;AAAA,6CAA4C;AAC5C,0DAA6B;AAG7B,0BACE,OAAkC;IAElC,oEAAoE;IACpE,wEAAwE;IACxE,2EAA2E;IAC3E,MAAM,WAAW,GAAG,IAAA,2BAAa,EAC/B,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAC/C,CAAC;IACF,MAAM,IAAI,GAAW,mBAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAC7E,OAAO;QACL,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,mBAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,CAAC;KAC1D,CAAC;AACJ,CAAC;kBAEc,gBAAgB"}
1
+ {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":";;;;;;AAAA,6CAA4C;AAC5C,0DAA6B;AAG7B;;;;;;;;;;;;;;;;GAgBG;AACH,0BACE,OAAkC;IAElC,oEAAoE;IACpE,wEAAwE;IACxE,2EAA2E;IAC3E,MAAM,WAAW,GAAG,IAAA,2BAAa,EAC/B,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAC/C,CAAC;IACF,MAAM,IAAI,GAAW,mBAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAC7E,OAAO;QACL,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,mBAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,CAAC;KAC1D,CAAC;AACJ,CAAC;kBAEc,gBAAgB"}
package/lib/transform.mjs CHANGED
@@ -1,6 +1,23 @@
1
1
  import { createRequire } from "node:module";
2
2
  import path from "node:path";
3
3
  //#region src/transform.ts
4
+ /**
5
+ * Describe typia's native transform to ttsc.
6
+ *
7
+ * Ttsc loads this file as an ES module, where `require` is unavailable, so a
8
+ * resolver is anchored on the consuming project to find typia's own package
9
+ * root. The returned descriptor names the plugin and the Go command under
10
+ * `native/cmd/ttsc-typia`; the transform itself is not written in TypeScript.
11
+ *
12
+ * @param context Plugin factory context of ttsc
13
+ *
14
+ * @returns Plugin descriptor
15
+ *
16
+ * @evidence contracts/common.md#principled-implementation The ttsc loader runs this file as an ES module where `require` is absent, so the function builds a CommonJS resolver anchored at the consuming project and resolves typia's own `package.json`, whose directory holds the native sources; the returned descriptor names the plugin and the Go command directory under `native/cmd/ttsc-typia`.
17
+ * @evidence contracts/common.md#clear-and-simple-design One function that returns a two-field descriptor and no transformer; the default export repeats the same function for loaders that read it.
18
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts The package root comes from the installed typia through the supported resolver and not from path substrings, so it works for npm consumers and workspaces alike; the transform itself stays in Go.
19
+ * @evidence contracts/common.md#meaningful-documentation A comment explains the purpose, the ESM resolution reason and the descriptor.
20
+ */
4
21
  function createTtscPlugin(context) {
5
22
  const requireFrom = createRequire(path.join(context.projectRoot, "package.json"));
6
23
  const root = path.dirname(requireFrom.resolve("typia/package.json"));
@@ -1 +1 @@
1
- {"version":3,"file":"transform.mjs","names":[],"sources":["../src/transform.ts"],"sourcesContent":["import { createRequire } from \"node:module\";\nimport path from \"node:path\";\nimport type { ITtscPlugin, ITtscPluginFactoryContext } from \"ttsc\";\n\nexport function createTtscPlugin(\n context: ITtscPluginFactoryContext,\n): ITtscPlugin {\n // ttsc loads this descriptor as ESM, where the ambient `require` is\n // unavailable; anchor a CJS resolver on the consuming project to locate\n // typia's own package root (not the project root, which has no `native/`).\n const requireFrom = createRequire(\n path.join(context.projectRoot, \"package.json\"),\n );\n const root: string = path.dirname(requireFrom.resolve(\"typia/package.json\"));\n return {\n name: \"typia\",\n source: path.resolve(root, \"native\", \"cmd\", \"ttsc-typia\"),\n };\n}\n\nexport default createTtscPlugin;\n"],"mappings":";;;AAIA,SAAgB,iBACd,SACa;CAIb,MAAM,cAAc,cAClB,KAAK,KAAK,QAAQ,aAAa,cAAc,CAC/C;CACA,MAAM,OAAe,KAAK,QAAQ,YAAY,QAAQ,oBAAoB,CAAC;CAC3E,OAAO;EACL,MAAM;EACN,QAAQ,KAAK,QAAQ,MAAM,UAAU,OAAO,YAAY;CAC1D;AACF"}
1
+ {"version":3,"file":"transform.mjs","names":[],"sources":["../src/transform.ts"],"sourcesContent":["import { createRequire } from \"node:module\";\nimport path from \"node:path\";\nimport type { ITtscPlugin, ITtscPluginFactoryContext } from \"ttsc\";\n\n/**\n * Describe typia's native transform to ttsc.\n *\n * Ttsc loads this file as an ES module, where `require` is unavailable, so a\n * resolver is anchored on the consuming project to find typia's own package\n * root. The returned descriptor names the plugin and the Go command under\n * `native/cmd/ttsc-typia`; the transform itself is not written in TypeScript.\n *\n * @param context Plugin factory context of ttsc\n *\n * @returns Plugin descriptor\n *\n * @evidence contracts/common.md#principled-implementation The ttsc loader runs this file as an ES module where `require` is absent, so the function builds a CommonJS resolver anchored at the consuming project and resolves typia's own `package.json`, whose directory holds the native sources; the returned descriptor names the plugin and the Go command directory under `native/cmd/ttsc-typia`.\n * @evidence contracts/common.md#clear-and-simple-design One function that returns a two-field descriptor and no transformer; the default export repeats the same function for loaders that read it.\n * @evidence contracts/common.md#prohibited-implementation-shortcuts The package root comes from the installed typia through the supported resolver and not from path substrings, so it works for npm consumers and workspaces alike; the transform itself stays in Go.\n * @evidence contracts/common.md#meaningful-documentation A comment explains the purpose, the ESM resolution reason and the descriptor.\n */\nexport function createTtscPlugin(\n context: ITtscPluginFactoryContext,\n): ITtscPlugin {\n // ttsc loads this descriptor as ESM, where the ambient `require` is\n // unavailable; anchor a CJS resolver on the consuming project to locate\n // typia's own package root (not the project root, which has no `native/`).\n const requireFrom = createRequire(\n path.join(context.projectRoot, \"package.json\"),\n );\n const root: string = path.dirname(requireFrom.resolve(\"typia/package.json\"));\n return {\n name: \"typia\",\n source: path.resolve(root, \"native\", \"cmd\", \"ttsc-typia\"),\n };\n}\n\nexport default createTtscPlugin;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAqBA,SAAgB,iBACd,SACa;CAIb,MAAM,cAAc,cAClB,KAAK,KAAK,QAAQ,aAAa,cAAc,CAC/C;CACA,MAAM,OAAe,KAAK,QAAQ,YAAY,QAAQ,oBAAoB,CAAC;CAC3E,OAAO;EACL,MAAM;EACN,QAAQ,KAAK,QAAQ,MAAM,UAAU,OAAO,YAAY;CAC1D;AACF"}
@@ -4,13 +4,38 @@ import (
4
4
  nativecontext "github.com/samchon/typia/packages/typia/native/core/context"
5
5
  )
6
6
 
7
+ // PluginOptions holds the typia options resolved from the ttsc plugin entry.
8
+ //
9
+ // Functional, Numeric and Finite are plain switches that are on only when the
10
+ // entry sets them to true. Undefined is a pointer because `undefined: false` is
11
+ // a distinct setting from leaving it unset.
12
+ //
13
+ // @evidence contracts/common.md#principled-implementation Three switches are plain booleans because only `true` enables them, and `undefined` is a pointer because the exactOptionalPropertyTypes workflow needs to tell an explicit false from an omitted value; the zero value is typia's documented default.
14
+ // @evidence contracts/common.md#clear-and-simple-design A four-field record built by ReadPluginOptions and consumed by one conversion method.
15
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts It holds values read from the host's resolved entry and applies no environment or fixture override.
16
+ // @evidence contracts/common.md#meaningful-documentation The doc states what each field means and why Undefined is a pointer.
7
17
  type PluginOptions struct {
18
+ // Functional enables function-type validation; false leaves the option unset.
8
19
  Functional bool
9
- Numeric bool
10
- Finite bool
11
- Undefined *bool
20
+
21
+ // Numeric enables NaN rejection in validators; false leaves it unset.
22
+ Numeric bool
23
+
24
+ // Finite enables non-finite number rejection; false leaves it unset.
25
+ Finite bool
26
+
27
+ // Undefined distinguishes an omitted option from explicit false or true.
28
+ Undefined *bool
12
29
  }
13
30
 
31
+ // TransformOptions converts the options to the transform's option record: a
32
+ // switch that is off becomes nil, an unset Undefined stays nil and the runtime is
33
+ // always "typia".
34
+ //
35
+ // @evidence contracts/common.md#principled-implementation A false switch maps to nil and a true one to a pointer to true, so the transform sees "not set" for both false and omitted, which is how its three on/off options have always been read; Undefined is passed through unchanged to keep false distinct, and the runtime is fixed to `typia`.
36
+ // @evidence contracts/common.md#clear-and-simple-design One value-receiver method and a private pointer helper.
37
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The mapping is the option contract and no consumer is special-cased.
38
+ // @evidence contracts/common.md#meaningful-documentation The doc states the nil mapping and the fixed runtime.
14
39
  func (p PluginOptions) TransformOptions() nativecontext.ITransformOptions {
15
40
  return nativecontext.ITransformOptions{
16
41
  Finite: boolPointer(p.Finite),
@@ -15,40 +15,45 @@ import "testing"
15
15
  // 2. Convert true options and verify each boolean pointer is populated.
16
16
  // 3. Preserve an explicitly supplied undefined pointer.
17
17
  // 4. Exercise boolPointer directly for both branches.
18
+ //
19
+ // @evidence contracts/testing.md#behavioral-verification The adapter option conversion is called on zero-value options and on enabled options; false flags must stay nil and enabled values and the tri-state undefined option must be forwarded.
20
+ // @evidence contracts/testing.md#independent-expectations The adapter contract (false is indistinguishable from absent, true and the tri-state undefined are forwarded) supplies the authored expectations.
21
+ // @evidence contracts/testing.md#distinguishing-cases Zero options and enabled options are the two rows; individual flag combinations are owned by the public adapter options test.
22
+ // @evidence contracts/testing.md#execution-ownership The typia_native_internal Go command (go -C packages/typia/test test -tags typia_native_internal ../native/...) runs this same-package Test function in process. The tagged test calls the exported conversion in memory with no filesystem fixture, process or native command build.
18
23
  func TestAdapterOptionsBranchMatrix(t *testing.T) {
19
- zero := PluginOptions{}.TransformOptions()
20
- if zero.Runtime != "typia" ||
21
- zero.Finite != nil ||
22
- zero.Numeric != nil ||
23
- zero.Functional != nil ||
24
- zero.Undefined != nil {
25
- t.Fatalf("zero plugin options should keep false flags nil: %#v", zero)
26
- }
24
+ zero := PluginOptions{}.TransformOptions()
25
+ if zero.Runtime != "typia" ||
26
+ zero.Finite != nil ||
27
+ zero.Numeric != nil ||
28
+ zero.Functional != nil ||
29
+ zero.Undefined != nil {
30
+ t.Fatalf("zero plugin options should keep false flags nil: %#v", zero)
31
+ }
27
32
 
28
- undefined := false
29
- enabled := PluginOptions{
30
- Functional: true,
31
- Numeric: true,
32
- Finite: true,
33
- Undefined: &undefined,
34
- }.TransformOptions()
35
- if enabled.Runtime != "typia" ||
36
- enabled.Finite == nil ||
37
- enabled.Numeric == nil ||
38
- enabled.Functional == nil ||
39
- enabled.Undefined != &undefined {
40
- t.Fatalf("enabled plugin options were not forwarded: %#v", enabled)
41
- }
42
- if *enabled.Finite != true ||
43
- *enabled.Numeric != true ||
44
- *enabled.Functional != true ||
45
- *enabled.Undefined != false {
46
- t.Fatalf("enabled plugin option values changed: %#v", enabled)
47
- }
48
- if boolPointer(false) != nil {
49
- t.Fatal("false option should not allocate a pointer")
50
- }
51
- if value := boolPointer(true); value == nil || *value != true {
52
- t.Fatal("true option should allocate a true pointer")
53
- }
33
+ undefined := false
34
+ enabled := PluginOptions{
35
+ Functional: true,
36
+ Numeric: true,
37
+ Finite: true,
38
+ Undefined: &undefined,
39
+ }.TransformOptions()
40
+ if enabled.Runtime != "typia" ||
41
+ enabled.Finite == nil ||
42
+ enabled.Numeric == nil ||
43
+ enabled.Functional == nil ||
44
+ enabled.Undefined != &undefined {
45
+ t.Fatalf("enabled plugin options were not forwarded: %#v", enabled)
46
+ }
47
+ if *enabled.Finite != true ||
48
+ *enabled.Numeric != true ||
49
+ *enabled.Functional != true ||
50
+ *enabled.Undefined != false {
51
+ t.Fatalf("enabled plugin option values changed: %#v", enabled)
52
+ }
53
+ if boolPointer(false) != nil {
54
+ t.Fatal("false option should not allocate a pointer")
55
+ }
56
+ if value := boolPointer(true); value == nil || *value != true {
57
+ t.Fatal("true option should allocate a true pointer")
58
+ }
54
59
  }
@@ -40,6 +40,11 @@ const PluginName = "typia"
40
40
  // An absent or empty payload yields the zero options, which are typia's
41
41
  // documented defaults. That is not a guess: a host that hands typia no entry
42
42
  // has stated that typia was configured with nothing.
43
+ //
44
+ // @evidence contracts/common.md#principled-implementation The ordered plugin payload that the host resolved from tsconfig is decoded, the entry with typia's name is selected and its config is read, so inherited and commented-out settings are handled by the host's own JSONC and extends resolution instead of a second parse; an absent or empty payload means no configuration, and an undecodable one is an error rather than silent defaults.
45
+ // @evidence contracts/common.md#clear-and-simple-design A short function over three private helpers, one each for decoding, entry lookup and boolean reading.
46
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts There is no fallback that rereads tsconfig.json, which the doc records as the cause of an earlier defect; a non-boolean option is treated as omitted and never coerced.
47
+ // @evidence contracts/common.md#meaningful-documentation The doc explains why the payload is the only authority and what the empty case means.
43
48
  func ReadPluginOptions(pluginsJSON string) (PluginOptions, error) {
44
49
  entries, err := parsePluginEntries(pluginsJSON)
45
50
  if err != nil {
@@ -19,6 +19,11 @@ import (
19
19
  // 1. Feed the reader each payload shape the host can produce.
20
20
  // 2. Assert the three on/off options and the tri-state `undefined` option.
21
21
  // 3. Cover the sibling-entry, missing-entry, and empty-payload boundaries.
22
+ //
23
+ // @evidence contracts/testing.md#behavioral-verification ReadPluginOptions is called with authored host payloads: the plugin's own entry with on, off and undefined options, payloads carrying other plugins' entries, and an undecodable payload; options must equal the authored table and a bad payload must be an error.
24
+ // @evidence contracts/testing.md#independent-expectations The host contract (it hands each plugin its own entry) and the authored payload table decide every expected option; defaults are not read from the decoder.
25
+ // @evidence contracts/testing.md#distinguishing-cases Own-entry options in both directions, foreign entries that must be ignored and the error case form the matrix.
26
+ // @evidence contracts/testing.md#execution-ownership The canonical native Go command (pnpm test:go:native) runs this same-package Test function in process. It decodes in-memory JSON payloads with no filesystem fixture, process or native command build.
22
27
  func TestReadPluginOptionsPayloadMatrix(t *testing.T) {
23
28
  truth := true
24
29
  lie := false