@dipscope/type-manager 6.0.0 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (446) hide show
  1. package/CHANGELOG.md +262 -247
  2. package/CONTRIBUTING.md +58 -58
  3. package/LICENSE.md +201 -201
  4. package/README.md +1901 -1887
  5. package/dist/es2015/alias.js +1 -1
  6. package/dist/es2015/any.js +2 -2
  7. package/dist/es2015/custom-context.js +58 -0
  8. package/dist/es2015/custom-context.js.map +1 -0
  9. package/dist/es2015/custom-key.js +8 -0
  10. package/dist/es2015/custom-key.js.map +1 -0
  11. package/dist/es2015/custom-option.js +2 -0
  12. package/dist/es2015/custom-option.js.map +1 -0
  13. package/dist/es2015/custom-value-resolver.js +2 -0
  14. package/dist/es2015/custom-value-resolver.js.map +1 -0
  15. package/dist/es2015/custom-value.js +2 -0
  16. package/dist/es2015/custom-value.js.map +1 -0
  17. package/dist/es2015/default-value-resolver.js +1 -1
  18. package/dist/es2015/default-value.js +1 -1
  19. package/dist/es2015/discriminant.js +1 -1
  20. package/dist/es2015/discriminator.js +1 -1
  21. package/dist/es2015/factories/index.js +1 -1
  22. package/dist/es2015/factories/type-factory.js +33 -33
  23. package/dist/es2015/factory.js +1 -1
  24. package/dist/es2015/functions/get-own-reflect-metadata.js +7 -7
  25. package/dist/es2015/functions/get-reflect-metadata.js +7 -7
  26. package/dist/es2015/functions/get-words.js +4 -4
  27. package/dist/es2015/functions/index.js +18 -18
  28. package/dist/es2015/functions/is-arrow-function.js +4 -4
  29. package/dist/es2015/functions/is-ctor-function.js +4 -4
  30. package/dist/es2015/functions/is-data-view.js +3 -3
  31. package/dist/es2015/functions/is-float-32-array.js +3 -3
  32. package/dist/es2015/functions/is-float-64-array.js +3 -3
  33. package/dist/es2015/functions/is-int-16-array.js +3 -3
  34. package/dist/es2015/functions/is-int-32-array.js +3 -3
  35. package/dist/es2015/functions/is-int-8-array.js +3 -3
  36. package/dist/es2015/functions/is-uint-16-array.js +3 -3
  37. package/dist/es2015/functions/is-uint-32-array.js +3 -3
  38. package/dist/es2015/functions/is-uint-8-array.js +3 -3
  39. package/dist/es2015/functions/is-uint-8-clamped-array.js +3 -3
  40. package/dist/es2015/functions/json-parse.js +3 -3
  41. package/dist/es2015/functions/json-stringify.js +66 -66
  42. package/dist/es2015/functions/name-of.js +7 -7
  43. package/dist/es2015/generic-argument.js +1 -1
  44. package/dist/es2015/generic-metadata-resolver.js +1 -1
  45. package/dist/es2015/generic-metadata.js +1 -1
  46. package/dist/es2015/generic-structure.js +1 -1
  47. package/dist/es2015/index.js +70 -66
  48. package/dist/es2015/index.js.map +1 -1
  49. package/dist/es2015/inject-index.js +1 -1
  50. package/dist/es2015/inject-internals.js +1 -1
  51. package/dist/es2015/inject-metadata.js +62 -62
  52. package/dist/es2015/inject-metadata.js.map +1 -1
  53. package/dist/es2015/inject-options.js +1 -1
  54. package/dist/es2015/inject-sorter.js +1 -1
  55. package/dist/es2015/inject-sorters/asc-inject-sorter.js +13 -13
  56. package/dist/es2015/inject-sorters/desc-inject-sorter.js +13 -13
  57. package/dist/es2015/inject-sorters/index.js +2 -2
  58. package/dist/es2015/inject.js +23 -23
  59. package/dist/es2015/injector.js +1 -1
  60. package/dist/es2015/injectors/index.js +1 -1
  61. package/dist/es2015/injectors/singleton-injector.js +30 -30
  62. package/dist/es2015/log-level.js +7 -7
  63. package/dist/es2015/log.js +49 -49
  64. package/dist/es2015/metadata.js +80 -80
  65. package/dist/es2015/metadata.js.map +1 -1
  66. package/dist/es2015/naming-convention.js +1 -1
  67. package/dist/es2015/naming-conventions/camel-case-naming-convention.js +16 -16
  68. package/dist/es2015/naming-conventions/flat-case-naming-convention.js +12 -12
  69. package/dist/es2015/naming-conventions/flat-upper-case-naming-convention.js +12 -12
  70. package/dist/es2015/naming-conventions/index.js +8 -8
  71. package/dist/es2015/naming-conventions/kebab-case-naming-convention.js +16 -16
  72. package/dist/es2015/naming-conventions/kebab-upper-case-naming-convention.js +16 -16
  73. package/dist/es2015/naming-conventions/pascal-case-naming-convention.js +17 -17
  74. package/dist/es2015/naming-conventions/snake-case-naming-convention.js +16 -16
  75. package/dist/es2015/naming-conventions/snake-upper-case-naming-convention.js +16 -16
  76. package/dist/es2015/property-internals.js +1 -1
  77. package/dist/es2015/property-metadata.js +268 -258
  78. package/dist/es2015/property-metadata.js.map +1 -1
  79. package/dist/es2015/property-name.js +1 -1
  80. package/dist/es2015/property-options.js +1 -1
  81. package/dist/es2015/property-sorter.js +1 -1
  82. package/dist/es2015/property-sorters/asc-property-sorter.js +13 -13
  83. package/dist/es2015/property-sorters/desc-property-sorter.js +13 -13
  84. package/dist/es2015/property-sorters/index.js +2 -2
  85. package/dist/es2015/property.js +38 -38
  86. package/dist/es2015/reference-callback.js +1 -1
  87. package/dist/es2015/reference-handler.js +1 -1
  88. package/dist/es2015/reference-handlers/circular-reference-handler.js +35 -35
  89. package/dist/es2015/reference-handlers/index.js +3 -3
  90. package/dist/es2015/reference-handlers/json-path-reference-handler.js +68 -68
  91. package/dist/es2015/reference-handlers/plain-reference-handler.js +31 -31
  92. package/dist/es2015/reference-key.js +1 -1
  93. package/dist/es2015/reference-value-getter.js +1 -1
  94. package/dist/es2015/reference-value-setter.js +1 -1
  95. package/dist/es2015/reference-value.js +1 -1
  96. package/dist/es2015/serializer-context-options.js +1 -1
  97. package/dist/es2015/serializer-context.js +281 -294
  98. package/dist/es2015/serializer-context.js.map +1 -1
  99. package/dist/es2015/serializer.js +1 -1
  100. package/dist/es2015/serializers/any-serializer.js +21 -21
  101. package/dist/es2015/serializers/array-buffer-serializer.js +40 -40
  102. package/dist/es2015/serializers/array-serializer.js +59 -59
  103. package/dist/es2015/serializers/boolean-serializer.js +54 -54
  104. package/dist/es2015/serializers/data-view-serializer.js +41 -41
  105. package/dist/es2015/serializers/date-serializer.js +33 -33
  106. package/dist/es2015/serializers/float-32-array-serializer.js +34 -34
  107. package/dist/es2015/serializers/float-64-array-serializer.js +34 -34
  108. package/dist/es2015/serializers/index.js +21 -21
  109. package/dist/es2015/serializers/int-16-array-serializer.js +34 -34
  110. package/dist/es2015/serializers/int-32-array-serializer.js +34 -34
  111. package/dist/es2015/serializers/int-8-array-serializer.js +34 -34
  112. package/dist/es2015/serializers/map-serializer.js +95 -95
  113. package/dist/es2015/serializers/number-serializer.js +48 -48
  114. package/dist/es2015/serializers/set-serializer.js +61 -61
  115. package/dist/es2015/serializers/string-serializer.js +54 -54
  116. package/dist/es2015/serializers/type-serializer.js +120 -120
  117. package/dist/es2015/serializers/uint-16-array-serializer.js +34 -34
  118. package/dist/es2015/serializers/uint-32-array-serializer.js +34 -34
  119. package/dist/es2015/serializers/uint-8-array-serializer.js +34 -34
  120. package/dist/es2015/serializers/uint-8-clamped-array-serializer.js +34 -34
  121. package/dist/es2015/serializers/unknown-serializer.js +21 -21
  122. package/dist/es2015/type-abstraction.js +1 -1
  123. package/dist/es2015/type-argument.js +1 -1
  124. package/dist/es2015/type-configuration.js +1 -1
  125. package/dist/es2015/type-context-entry.js +8 -8
  126. package/dist/es2015/type-context.js +30 -24
  127. package/dist/es2015/type-context.js.map +1 -1
  128. package/dist/es2015/type-ctor.js +1 -1
  129. package/dist/es2015/type-fn.js +1 -1
  130. package/dist/es2015/type-internals.js +2 -0
  131. package/dist/es2015/type-internals.js.map +1 -0
  132. package/dist/es2015/type-like.js +1 -1
  133. package/dist/es2015/type-manager-options.js +1 -1
  134. package/dist/es2015/type-manager.js +319 -313
  135. package/dist/es2015/type-manager.js.map +1 -1
  136. package/dist/es2015/type-metadata-resolver.js +1 -1
  137. package/dist/es2015/type-metadata-symbol.js +1 -1
  138. package/dist/es2015/type-metadata.js +413 -398
  139. package/dist/es2015/type-metadata.js.map +1 -1
  140. package/dist/es2015/type-name.js +1 -1
  141. package/dist/es2015/type-options-base.js +1 -1
  142. package/dist/es2015/type-options.js +1 -1
  143. package/dist/es2015/type-resolver.js +1 -1
  144. package/dist/es2015/type.js +7 -7
  145. package/dist/es2015/unknown.js +2 -2
  146. package/dist/es5/alias.js +1 -1
  147. package/dist/es5/any.js +6 -6
  148. package/dist/es5/custom-context.js +94 -0
  149. package/dist/es5/custom-context.js.map +1 -0
  150. package/dist/es5/custom-key.js +10 -0
  151. package/dist/es5/custom-key.js.map +1 -0
  152. package/dist/es5/custom-option.js +2 -0
  153. package/dist/es5/custom-option.js.map +1 -0
  154. package/dist/es5/custom-value-resolver.js +2 -0
  155. package/dist/es5/custom-value-resolver.js.map +1 -0
  156. package/dist/es5/custom-value.js +2 -0
  157. package/dist/es5/custom-value.js.map +1 -0
  158. package/dist/es5/default-value-resolver.js +1 -1
  159. package/dist/es5/default-value.js +1 -1
  160. package/dist/es5/discriminant.js +1 -1
  161. package/dist/es5/discriminator.js +1 -1
  162. package/dist/es5/factories/index.js +1 -1
  163. package/dist/es5/factories/type-factory.js +59 -59
  164. package/dist/es5/factory.js +1 -1
  165. package/dist/es5/functions/get-own-reflect-metadata.js +7 -7
  166. package/dist/es5/functions/get-reflect-metadata.js +7 -7
  167. package/dist/es5/functions/get-words.js +4 -4
  168. package/dist/es5/functions/index.js +18 -18
  169. package/dist/es5/functions/is-arrow-function.js +4 -4
  170. package/dist/es5/functions/is-ctor-function.js +4 -4
  171. package/dist/es5/functions/is-data-view.js +3 -3
  172. package/dist/es5/functions/is-float-32-array.js +3 -3
  173. package/dist/es5/functions/is-float-64-array.js +3 -3
  174. package/dist/es5/functions/is-int-16-array.js +3 -3
  175. package/dist/es5/functions/is-int-32-array.js +3 -3
  176. package/dist/es5/functions/is-int-8-array.js +3 -3
  177. package/dist/es5/functions/is-uint-16-array.js +3 -3
  178. package/dist/es5/functions/is-uint-32-array.js +3 -3
  179. package/dist/es5/functions/is-uint-8-array.js +3 -3
  180. package/dist/es5/functions/is-uint-8-clamped-array.js +3 -3
  181. package/dist/es5/functions/json-parse.js +3 -3
  182. package/dist/es5/functions/json-stringify.js +66 -66
  183. package/dist/es5/functions/name-of.js +7 -7
  184. package/dist/es5/generic-argument.js +1 -1
  185. package/dist/es5/generic-metadata-resolver.js +1 -1
  186. package/dist/es5/generic-metadata.js +1 -1
  187. package/dist/es5/generic-structure.js +1 -1
  188. package/dist/es5/index.js +70 -66
  189. package/dist/es5/index.js.map +1 -1
  190. package/dist/es5/inject-index.js +1 -1
  191. package/dist/es5/inject-internals.js +1 -1
  192. package/dist/es5/inject-metadata.js +83 -83
  193. package/dist/es5/inject-metadata.js.map +1 -1
  194. package/dist/es5/inject-options.js +1 -1
  195. package/dist/es5/inject-sorter.js +1 -1
  196. package/dist/es5/inject-sorters/asc-inject-sorter.js +17 -17
  197. package/dist/es5/inject-sorters/desc-inject-sorter.js +17 -17
  198. package/dist/es5/inject-sorters/index.js +2 -2
  199. package/dist/es5/inject.js +23 -23
  200. package/dist/es5/injector.js +1 -1
  201. package/dist/es5/injectors/index.js +1 -1
  202. package/dist/es5/injectors/singleton-injector.js +44 -44
  203. package/dist/es5/log-level.js +7 -7
  204. package/dist/es5/log.js +64 -64
  205. package/dist/es5/metadata.js +105 -105
  206. package/dist/es5/metadata.js.map +1 -1
  207. package/dist/es5/naming-convention.js +1 -1
  208. package/dist/es5/naming-conventions/camel-case-naming-convention.js +20 -20
  209. package/dist/es5/naming-conventions/flat-case-naming-convention.js +16 -16
  210. package/dist/es5/naming-conventions/flat-upper-case-naming-convention.js +16 -16
  211. package/dist/es5/naming-conventions/index.js +8 -8
  212. package/dist/es5/naming-conventions/kebab-case-naming-convention.js +20 -20
  213. package/dist/es5/naming-conventions/kebab-upper-case-naming-convention.js +20 -20
  214. package/dist/es5/naming-conventions/pascal-case-naming-convention.js +21 -21
  215. package/dist/es5/naming-conventions/snake-case-naming-convention.js +20 -20
  216. package/dist/es5/naming-conventions/snake-upper-case-naming-convention.js +20 -20
  217. package/dist/es5/property-internals.js +1 -1
  218. package/dist/es5/property-metadata.js +377 -363
  219. package/dist/es5/property-metadata.js.map +1 -1
  220. package/dist/es5/property-name.js +1 -1
  221. package/dist/es5/property-options.js +1 -1
  222. package/dist/es5/property-sorter.js +1 -1
  223. package/dist/es5/property-sorters/asc-property-sorter.js +17 -17
  224. package/dist/es5/property-sorters/desc-property-sorter.js +17 -17
  225. package/dist/es5/property-sorters/index.js +2 -2
  226. package/dist/es5/property.js +38 -38
  227. package/dist/es5/reference-callback.js +1 -1
  228. package/dist/es5/reference-handler.js +1 -1
  229. package/dist/es5/reference-handlers/circular-reference-handler.js +39 -39
  230. package/dist/es5/reference-handlers/index.js +3 -3
  231. package/dist/es5/reference-handlers/json-path-reference-handler.js +92 -92
  232. package/dist/es5/reference-handlers/plain-reference-handler.js +35 -35
  233. package/dist/es5/reference-key.js +1 -1
  234. package/dist/es5/reference-value-getter.js +1 -1
  235. package/dist/es5/reference-value-setter.js +1 -1
  236. package/dist/es5/reference-value.js +1 -1
  237. package/dist/es5/serializer-context-options.js +1 -1
  238. package/dist/es5/serializer-context.js +416 -433
  239. package/dist/es5/serializer-context.js.map +1 -1
  240. package/dist/es5/serializer.js +1 -1
  241. package/dist/es5/serializers/any-serializer.js +25 -25
  242. package/dist/es5/serializers/array-buffer-serializer.js +44 -44
  243. package/dist/es5/serializers/array-serializer.js +69 -69
  244. package/dist/es5/serializers/boolean-serializer.js +58 -58
  245. package/dist/es5/serializers/data-view-serializer.js +45 -45
  246. package/dist/es5/serializers/date-serializer.js +37 -37
  247. package/dist/es5/serializers/float-32-array-serializer.js +38 -38
  248. package/dist/es5/serializers/float-64-array-serializer.js +38 -38
  249. package/dist/es5/serializers/index.js +21 -21
  250. package/dist/es5/serializers/int-16-array-serializer.js +38 -38
  251. package/dist/es5/serializers/int-32-array-serializer.js +38 -38
  252. package/dist/es5/serializers/int-8-array-serializer.js +38 -38
  253. package/dist/es5/serializers/map-serializer.js +114 -114
  254. package/dist/es5/serializers/number-serializer.js +52 -52
  255. package/dist/es5/serializers/set-serializer.js +77 -77
  256. package/dist/es5/serializers/string-serializer.js +58 -58
  257. package/dist/es5/serializers/type-serializer.js +153 -153
  258. package/dist/es5/serializers/uint-16-array-serializer.js +38 -38
  259. package/dist/es5/serializers/uint-32-array-serializer.js +38 -38
  260. package/dist/es5/serializers/uint-8-array-serializer.js +38 -38
  261. package/dist/es5/serializers/uint-8-clamped-array-serializer.js +38 -38
  262. package/dist/es5/serializers/unknown-serializer.js +25 -25
  263. package/dist/es5/type-abstraction.js +1 -1
  264. package/dist/es5/type-argument.js +1 -1
  265. package/dist/es5/type-configuration.js +1 -1
  266. package/dist/es5/type-context-entry.js +10 -10
  267. package/dist/es5/type-context.js +32 -26
  268. package/dist/es5/type-context.js.map +1 -1
  269. package/dist/es5/type-ctor.js +1 -1
  270. package/dist/es5/type-fn.js +1 -1
  271. package/dist/es5/type-internals.js +2 -0
  272. package/dist/es5/type-internals.js.map +1 -0
  273. package/dist/es5/type-like.js +1 -1
  274. package/dist/es5/type-manager-options.js +1 -1
  275. package/dist/es5/type-manager.js +412 -406
  276. package/dist/es5/type-manager.js.map +1 -1
  277. package/dist/es5/type-metadata-resolver.js +1 -1
  278. package/dist/es5/type-metadata-symbol.js +1 -1
  279. package/dist/es5/type-metadata.js +563 -544
  280. package/dist/es5/type-metadata.js.map +1 -1
  281. package/dist/es5/type-name.js +1 -1
  282. package/dist/es5/type-options-base.js +1 -1
  283. package/dist/es5/type-options.js +1 -1
  284. package/dist/es5/type-resolver.js +1 -1
  285. package/dist/es5/type.js +7 -7
  286. package/dist/es5/unknown.js +6 -6
  287. package/dist/types/alias.d.ts +6 -6
  288. package/dist/types/any.d.ts +9 -9
  289. package/dist/types/custom-context.d.ts +89 -0
  290. package/dist/types/custom-context.d.ts.map +1 -0
  291. package/dist/types/custom-key.d.ts +29 -0
  292. package/dist/types/custom-key.d.ts.map +1 -0
  293. package/dist/types/custom-option.d.ts +11 -0
  294. package/dist/types/custom-option.d.ts.map +1 -0
  295. package/dist/types/custom-value-resolver.d.ts +7 -0
  296. package/dist/types/custom-value-resolver.d.ts.map +1 -0
  297. package/dist/types/custom-value.d.ts +7 -0
  298. package/dist/types/custom-value.d.ts.map +1 -0
  299. package/dist/types/default-value-resolver.d.ts +7 -7
  300. package/dist/types/default-value.d.ts +7 -7
  301. package/dist/types/discriminant.d.ts +8 -8
  302. package/dist/types/discriminator.d.ts +6 -6
  303. package/dist/types/factories/index.d.ts +1 -1
  304. package/dist/types/factories/type-factory.d.ts +19 -19
  305. package/dist/types/factory.d.ts +18 -18
  306. package/dist/types/functions/get-own-reflect-metadata.d.ts +9 -9
  307. package/dist/types/functions/get-reflect-metadata.d.ts +10 -10
  308. package/dist/types/functions/get-words.d.ts +8 -8
  309. package/dist/types/functions/index.d.ts +18 -18
  310. package/dist/types/functions/is-arrow-function.d.ts +8 -8
  311. package/dist/types/functions/is-ctor-function.d.ts +8 -8
  312. package/dist/types/functions/is-data-view.d.ts +8 -8
  313. package/dist/types/functions/is-float-32-array.d.ts +8 -8
  314. package/dist/types/functions/is-float-64-array.d.ts +8 -8
  315. package/dist/types/functions/is-int-16-array.d.ts +8 -8
  316. package/dist/types/functions/is-int-32-array.d.ts +8 -8
  317. package/dist/types/functions/is-int-8-array.d.ts +8 -8
  318. package/dist/types/functions/is-uint-16-array.d.ts +8 -8
  319. package/dist/types/functions/is-uint-32-array.d.ts +8 -8
  320. package/dist/types/functions/is-uint-8-array.d.ts +8 -8
  321. package/dist/types/functions/is-uint-8-clamped-array.d.ts +8 -8
  322. package/dist/types/functions/json-parse.d.ts +9 -9
  323. package/dist/types/functions/json-stringify.d.ts +10 -10
  324. package/dist/types/functions/name-of.d.ts +8 -8
  325. package/dist/types/generic-argument.d.ts +7 -7
  326. package/dist/types/generic-metadata-resolver.d.ts +7 -7
  327. package/dist/types/generic-metadata.d.ts +7 -7
  328. package/dist/types/generic-structure.d.ts +7 -7
  329. package/dist/types/index.d.ts +70 -66
  330. package/dist/types/index.d.ts.map +1 -1
  331. package/dist/types/inject-index.d.ts +6 -6
  332. package/dist/types/inject-internals.d.ts +14 -14
  333. package/dist/types/inject-internals.d.ts.map +1 -1
  334. package/dist/types/inject-metadata.d.ts +117 -117
  335. package/dist/types/inject-metadata.d.ts.map +1 -1
  336. package/dist/types/inject-options.d.ts +22 -22
  337. package/dist/types/inject-sorter.d.ts +19 -19
  338. package/dist/types/inject-sorters/asc-inject-sorter.d.ts +20 -20
  339. package/dist/types/inject-sorters/desc-inject-sorter.d.ts +20 -20
  340. package/dist/types/inject-sorters/index.d.ts +2 -2
  341. package/dist/types/inject.d.ts +10 -10
  342. package/dist/types/injector.d.ts +16 -16
  343. package/dist/types/injectors/index.d.ts +1 -1
  344. package/dist/types/injectors/singleton-injector.d.ts +31 -31
  345. package/dist/types/log-level.d.ts +11 -11
  346. package/dist/types/log.d.ts +95 -95
  347. package/dist/types/metadata.d.ts +99 -100
  348. package/dist/types/metadata.d.ts.map +1 -1
  349. package/dist/types/naming-convention.d.ts +15 -15
  350. package/dist/types/naming-conventions/camel-case-naming-convention.d.ts +26 -26
  351. package/dist/types/naming-conventions/flat-case-naming-convention.d.ts +25 -25
  352. package/dist/types/naming-conventions/flat-upper-case-naming-convention.d.ts +25 -25
  353. package/dist/types/naming-conventions/index.d.ts +8 -8
  354. package/dist/types/naming-conventions/kebab-case-naming-convention.d.ts +26 -26
  355. package/dist/types/naming-conventions/kebab-upper-case-naming-convention.d.ts +26 -26
  356. package/dist/types/naming-conventions/pascal-case-naming-convention.d.ts +26 -26
  357. package/dist/types/naming-conventions/snake-case-naming-convention.d.ts +26 -26
  358. package/dist/types/naming-conventions/snake-upper-case-naming-convention.d.ts +26 -26
  359. package/dist/types/property-internals.d.ts +35 -28
  360. package/dist/types/property-internals.d.ts.map +1 -1
  361. package/dist/types/property-metadata.d.ts +359 -352
  362. package/dist/types/property-metadata.d.ts.map +1 -1
  363. package/dist/types/property-name.d.ts +6 -6
  364. package/dist/types/property-options.d.ts +116 -116
  365. package/dist/types/property-options.d.ts.map +1 -1
  366. package/dist/types/property-sorter.d.ts +19 -19
  367. package/dist/types/property-sorters/asc-property-sorter.d.ts +20 -20
  368. package/dist/types/property-sorters/desc-property-sorter.d.ts +20 -20
  369. package/dist/types/property-sorters/index.d.ts +2 -2
  370. package/dist/types/property.d.ts +13 -13
  371. package/dist/types/reference-callback.d.ts +7 -7
  372. package/dist/types/reference-handler.d.ts +31 -31
  373. package/dist/types/reference-handlers/circular-reference-handler.d.ts +32 -32
  374. package/dist/types/reference-handlers/index.d.ts +3 -3
  375. package/dist/types/reference-handlers/json-path-reference-handler.d.ts +55 -55
  376. package/dist/types/reference-handlers/plain-reference-handler.d.ts +33 -33
  377. package/dist/types/reference-key.d.ts +6 -6
  378. package/dist/types/reference-value-getter.d.ts +7 -7
  379. package/dist/types/reference-value-setter.d.ts +7 -7
  380. package/dist/types/reference-value.d.ts +6 -6
  381. package/dist/types/serializer-context-options.d.ts +50 -50
  382. package/dist/types/serializer-context.d.ts +418 -425
  383. package/dist/types/serializer-context.d.ts.map +1 -1
  384. package/dist/types/serializer.d.ts +27 -27
  385. package/dist/types/serializers/any-serializer.d.ts +28 -28
  386. package/dist/types/serializers/array-buffer-serializer.d.ts +28 -28
  387. package/dist/types/serializers/array-serializer.d.ts +28 -28
  388. package/dist/types/serializers/boolean-serializer.d.ts +37 -37
  389. package/dist/types/serializers/data-view-serializer.d.ts +28 -28
  390. package/dist/types/serializers/date-serializer.d.ts +28 -28
  391. package/dist/types/serializers/float-32-array-serializer.d.ts +28 -28
  392. package/dist/types/serializers/float-64-array-serializer.d.ts +28 -28
  393. package/dist/types/serializers/index.d.ts +21 -21
  394. package/dist/types/serializers/int-16-array-serializer.d.ts +28 -28
  395. package/dist/types/serializers/int-32-array-serializer.d.ts +28 -28
  396. package/dist/types/serializers/int-8-array-serializer.d.ts +28 -28
  397. package/dist/types/serializers/map-serializer.d.ts +28 -28
  398. package/dist/types/serializers/number-serializer.d.ts +37 -37
  399. package/dist/types/serializers/set-serializer.d.ts +28 -28
  400. package/dist/types/serializers/string-serializer.d.ts +37 -37
  401. package/dist/types/serializers/type-serializer.d.ts +28 -28
  402. package/dist/types/serializers/uint-16-array-serializer.d.ts +28 -28
  403. package/dist/types/serializers/uint-32-array-serializer.d.ts +28 -28
  404. package/dist/types/serializers/uint-8-array-serializer.d.ts +28 -28
  405. package/dist/types/serializers/uint-8-clamped-array-serializer.d.ts +28 -28
  406. package/dist/types/serializers/unknown-serializer.d.ts +28 -28
  407. package/dist/types/type-abstraction.d.ts +6 -6
  408. package/dist/types/type-argument.d.ts +9 -9
  409. package/dist/types/type-configuration.d.ts +16 -16
  410. package/dist/types/type-context-entry.d.ts +36 -36
  411. package/dist/types/type-context.d.ts +70 -58
  412. package/dist/types/type-context.d.ts.map +1 -1
  413. package/dist/types/type-ctor.d.ts +6 -6
  414. package/dist/types/type-fn.d.ts +8 -8
  415. package/dist/types/type-internals.d.ts +15 -0
  416. package/dist/types/type-internals.d.ts.map +1 -0
  417. package/dist/types/type-like.d.ts +7 -7
  418. package/dist/types/type-manager-options.d.ts +33 -33
  419. package/dist/types/type-manager.d.ts +413 -397
  420. package/dist/types/type-manager.d.ts.map +1 -1
  421. package/dist/types/type-metadata-resolver.d.ts +8 -8
  422. package/dist/types/type-metadata-symbol.d.ts +6 -6
  423. package/dist/types/type-metadata.d.ts +513 -495
  424. package/dist/types/type-metadata.d.ts.map +1 -1
  425. package/dist/types/type-name.d.ts +6 -6
  426. package/dist/types/type-options-base.d.ts +106 -106
  427. package/dist/types/type-options-base.d.ts.map +1 -1
  428. package/dist/types/type-options.d.ts +72 -72
  429. package/dist/types/type-resolver.d.ts +7 -7
  430. package/dist/types/type.d.ts +9 -9
  431. package/dist/types/unknown.d.ts +9 -9
  432. package/dist/umd/index.js +1 -1
  433. package/dist/umd/index.js.map +1 -1
  434. package/package.json +63 -63
  435. package/dist/es2015/custom-data.js +0 -2
  436. package/dist/es2015/custom-data.js.map +0 -1
  437. package/dist/es2015/type-metadata-extractor.js +0 -2
  438. package/dist/es2015/type-metadata-extractor.js.map +0 -1
  439. package/dist/es5/custom-data.js +0 -2
  440. package/dist/es5/custom-data.js.map +0 -1
  441. package/dist/es5/type-metadata-extractor.js +0 -2
  442. package/dist/es5/type-metadata-extractor.js.map +0 -1
  443. package/dist/types/custom-data.d.ts +0 -7
  444. package/dist/types/custom-data.d.ts.map +0 -1
  445. package/dist/types/type-metadata-extractor.d.ts +0 -9
  446. package/dist/types/type-metadata-extractor.d.ts.map +0 -1
@@ -1,56 +1,56 @@
1
- import { ReferenceHandler } from '../reference-handler';
2
- import { ReferenceKey } from '../reference-key';
3
- import { ReferenceValue } from '../reference-value';
4
- import { ReferenceValueGetter } from '../reference-value-getter';
5
- import { SerializerContext } from '../serializer-context';
6
- /**
7
- * Json path reference handler preserves references using JSONPath.
8
- *
9
- * @type {JsonPathReferenceHandler}
10
- */
11
- export declare class JsonPathReferenceHandler implements ReferenceHandler {
12
- /**
13
- * Regular expression used to get array key from a certain place of the JSONPath.
14
- *
15
- * @type {RegExp}
16
- */
17
- private readonly arrayKeyRegExp;
18
- /**
19
- * Defines reference. Called during serialization.
20
- *
21
- * @param {SerializerContext<any>} serializerContext Serializer context.
22
- * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a serializing object.
23
- * @param {ReferenceValueGetter} referenceValueGetter Function to get a reference value when one is not yet present for a key.
24
- *
25
- * @returns {ReferenceValue} Resolved reference value.
26
- */
27
- define(serializerContext: SerializerContext<any>, referenceKey: ReferenceKey, referenceValueGetter: ReferenceValueGetter): ReferenceValue;
28
- /**
29
- * Restores reference. Called during deserialization.
30
- *
31
- * @param {SerializerContext<any>} serializerContext Serializer context.
32
- * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a deserializing object.
33
- * @param {ReferenceValueGetter} referenceValueGetter Function to get a reference value when one is not yet present for a key.
34
- *
35
- * @returns {ReferenceValue} Resolved reference value.
36
- */
37
- restore(serializerContext: SerializerContext<any>, referenceKey: ReferenceKey, referenceValueGetter: ReferenceValueGetter): ReferenceValue;
38
- /**
39
- * Defines reference target based on reference key.
40
- *
41
- * @param {SerializerContext<any>} serializerContext Serializer context.
42
- * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a deserializing object.
43
- *
44
- * @returns {ReferenceKey} Reference which acts as a target key in context of JSONPath.
45
- */
46
- private defineReferenceTarget;
47
- /**
48
- * Converts reference path to array.
49
- *
50
- * @param {string} referencePath Reference path.
51
- *
52
- * @returns {Array<string>} Array reference path.
53
- */
54
- private convertReferencePathToArray;
55
- }
1
+ import { ReferenceHandler } from '../reference-handler';
2
+ import { ReferenceKey } from '../reference-key';
3
+ import { ReferenceValue } from '../reference-value';
4
+ import { ReferenceValueGetter } from '../reference-value-getter';
5
+ import { SerializerContext } from '../serializer-context';
6
+ /**
7
+ * Json path reference handler preserves references using JSONPath.
8
+ *
9
+ * @type {JsonPathReferenceHandler}
10
+ */
11
+ export declare class JsonPathReferenceHandler implements ReferenceHandler {
12
+ /**
13
+ * Regular expression used to get array key from a certain place of the JSONPath.
14
+ *
15
+ * @type {RegExp}
16
+ */
17
+ private readonly arrayKeyRegExp;
18
+ /**
19
+ * Defines reference. Called during serialization.
20
+ *
21
+ * @param {SerializerContext<any>} serializerContext Serializer context.
22
+ * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a serializing object.
23
+ * @param {ReferenceValueGetter} referenceValueGetter Function to get a reference value when one is not yet present for a key.
24
+ *
25
+ * @returns {ReferenceValue} Resolved reference value.
26
+ */
27
+ define(serializerContext: SerializerContext<any>, referenceKey: ReferenceKey, referenceValueGetter: ReferenceValueGetter): ReferenceValue;
28
+ /**
29
+ * Restores reference. Called during deserialization.
30
+ *
31
+ * @param {SerializerContext<any>} serializerContext Serializer context.
32
+ * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a deserializing object.
33
+ * @param {ReferenceValueGetter} referenceValueGetter Function to get a reference value when one is not yet present for a key.
34
+ *
35
+ * @returns {ReferenceValue} Resolved reference value.
36
+ */
37
+ restore(serializerContext: SerializerContext<any>, referenceKey: ReferenceKey, referenceValueGetter: ReferenceValueGetter): ReferenceValue;
38
+ /**
39
+ * Defines reference target based on reference key.
40
+ *
41
+ * @param {SerializerContext<any>} serializerContext Serializer context.
42
+ * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a deserializing object.
43
+ *
44
+ * @returns {ReferenceKey} Reference which acts as a target key in context of JSONPath.
45
+ */
46
+ private defineReferenceTarget;
47
+ /**
48
+ * Converts reference path to array.
49
+ *
50
+ * @param {string} referencePath Reference path.
51
+ *
52
+ * @returns {Array<string>} Array reference path.
53
+ */
54
+ private convertReferencePathToArray;
55
+ }
56
56
  //# sourceMappingURL=json-path-reference-handler.d.ts.map
@@ -1,34 +1,34 @@
1
- import { ReferenceHandler } from '../reference-handler';
2
- import { ReferenceKey } from '../reference-key';
3
- import { ReferenceValue } from '../reference-value';
4
- import { ReferenceValueGetter } from '../reference-value-getter';
5
- import { SerializerContext } from '../serializer-context';
6
- /**
7
- * Plain reference handler preserves references except circular. If circular reference is detected the it will
8
- * be setted to undefined so only first occurance is handled.
9
- *
10
- * @type {PlainReferenceHandler}
11
- */
12
- export declare class PlainReferenceHandler implements ReferenceHandler {
13
- /**
14
- * Defines reference. Called during serialization.
15
- *
16
- * @param {SerializerContext<any>} serializerContext Serializer context.
17
- * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a serializing object.
18
- * @param {ReferenceValueGetter} referenceValueGetter Function to get a reference value when one is not yet present for a key.
19
- *
20
- * @returns {ReferenceValue} Resolved reference value.
21
- */
22
- define(serializerContext: SerializerContext<any>, referenceKey: ReferenceKey, referenceValueGetter: ReferenceValueGetter): ReferenceValue;
23
- /**
24
- * Restores reference. Called during deserialization.
25
- *
26
- * @param {SerializerContext<any>} serializerContext Serializer context.
27
- * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a deserializing object.
28
- * @param {ReferenceValueGetter} referenceValueGetter Function to get a reference value when one is not yet present for a key.
29
- *
30
- * @returns {ReferenceValue} Resolved reference value.
31
- */
32
- restore(serializerContext: SerializerContext<any>, referenceKey: ReferenceKey, referenceValueGetter: ReferenceValueGetter): ReferenceValue;
33
- }
1
+ import { ReferenceHandler } from '../reference-handler';
2
+ import { ReferenceKey } from '../reference-key';
3
+ import { ReferenceValue } from '../reference-value';
4
+ import { ReferenceValueGetter } from '../reference-value-getter';
5
+ import { SerializerContext } from '../serializer-context';
6
+ /**
7
+ * Plain reference handler preserves references except circular. If circular reference is detected the it will
8
+ * be setted to undefined so only first occurance is handled.
9
+ *
10
+ * @type {PlainReferenceHandler}
11
+ */
12
+ export declare class PlainReferenceHandler implements ReferenceHandler {
13
+ /**
14
+ * Defines reference. Called during serialization.
15
+ *
16
+ * @param {SerializerContext<any>} serializerContext Serializer context.
17
+ * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a serializing object.
18
+ * @param {ReferenceValueGetter} referenceValueGetter Function to get a reference value when one is not yet present for a key.
19
+ *
20
+ * @returns {ReferenceValue} Resolved reference value.
21
+ */
22
+ define(serializerContext: SerializerContext<any>, referenceKey: ReferenceKey, referenceValueGetter: ReferenceValueGetter): ReferenceValue;
23
+ /**
24
+ * Restores reference. Called during deserialization.
25
+ *
26
+ * @param {SerializerContext<any>} serializerContext Serializer context.
27
+ * @param {ReferenceKey} referenceKey Reference which acts as a key. This is basically a deserializing object.
28
+ * @param {ReferenceValueGetter} referenceValueGetter Function to get a reference value when one is not yet present for a key.
29
+ *
30
+ * @returns {ReferenceValue} Resolved reference value.
31
+ */
32
+ restore(serializerContext: SerializerContext<any>, referenceKey: ReferenceKey, referenceValueGetter: ReferenceValueGetter): ReferenceValue;
33
+ }
34
34
  //# sourceMappingURL=plain-reference-handler.d.ts.map
@@ -1,7 +1,7 @@
1
- /**
2
- * Reference key is an object which identifies unique reference value.
3
- *
4
- * @type {ReferenceKey}
5
- */
6
- export declare type ReferenceKey = any;
1
+ /**
2
+ * Reference key is an object which identifies unique reference value.
3
+ *
4
+ * @type {ReferenceKey}
5
+ */
6
+ export declare type ReferenceKey = any;
7
7
  //# sourceMappingURL=reference-key.d.ts.map
@@ -1,8 +1,8 @@
1
- import { ReferenceValue } from './reference-value';
2
- /**
3
- * Callback to get a reference value when one is not yet present for a reference key.
4
- *
5
- * @type {ReferenceValueGetter}
6
- */
7
- export declare type ReferenceValueGetter = () => ReferenceValue;
1
+ import { ReferenceValue } from './reference-value';
2
+ /**
3
+ * Callback to get a reference value when one is not yet present for a reference key.
4
+ *
5
+ * @type {ReferenceValueGetter}
6
+ */
7
+ export declare type ReferenceValueGetter = () => ReferenceValue;
8
8
  //# sourceMappingURL=reference-value-getter.d.ts.map
@@ -1,8 +1,8 @@
1
- import { ReferenceValue } from './reference-value';
2
- /**
3
- * Callback to set a reference value when one may be resolved for a reference key.
4
- *
5
- * @type {ReferenceValueSetter}
6
- */
7
- export declare type ReferenceValueSetter = (referenceValue: ReferenceValue) => void;
1
+ import { ReferenceValue } from './reference-value';
2
+ /**
3
+ * Callback to set a reference value when one may be resolved for a reference key.
4
+ *
5
+ * @type {ReferenceValueSetter}
6
+ */
7
+ export declare type ReferenceValueSetter = (referenceValue: ReferenceValue) => void;
8
8
  //# sourceMappingURL=reference-value-setter.d.ts.map
@@ -1,7 +1,7 @@
1
- /**
2
- * Reference value is any value connected to the reference key.
3
- *
4
- * @type {ReferenceValue}
5
- */
6
- export declare type ReferenceValue = any;
1
+ /**
2
+ * Reference value is any value connected to the reference key.
3
+ *
4
+ * @type {ReferenceValue}
5
+ */
6
+ export declare type ReferenceValue = any;
7
7
  //# sourceMappingURL=reference-value.d.ts.map
@@ -1,51 +1,51 @@
1
- import { GenericMetadataResolver } from './generic-metadata-resolver';
2
- import { GenericStructure } from './generic-structure';
3
- import { PropertyMetadata } from './property-metadata';
4
- import { ReferenceValueSetter } from './reference-value-setter';
5
- import { TypeMetadata } from './type-metadata';
6
- /**
7
- * Serializer context options.
8
- *
9
- * @type {SerializerContextOptions<TType>}
10
- */
11
- export declare type SerializerContextOptions<TType> = {
12
- /**
13
- * Json path key of current serializer context. It equals to $ for
14
- * root serializer context. Read about JSONPath for more info.
15
- *
16
- * @type {string|number}
17
- */
18
- jsonPathKey: string | number;
19
- /**
20
- * Reference value setter if serialization may result in circular dependency
21
- * which must be resolved.
22
- *
23
- * @type {ReferenceValueSetter}
24
- */
25
- referenceValueSetter?: ReferenceValueSetter;
26
- /**
27
- * Generic structures.
28
- *
29
- * @type {Array<GenericStructure<any>>}
30
- */
31
- genericStructures?: Array<GenericStructure<any>>;
32
- /**
33
- * Generic metadata resolvers.
34
- *
35
- * @type {Array<GenericMetadataResolver<any>>}
36
- */
37
- genericMetadataResolvers?: Array<GenericMetadataResolver<any>>;
38
- /**
39
- * Property metadata.
40
- *
41
- * @type {PropertyMetadata<any, TType>}
42
- */
43
- propertyMetadata?: PropertyMetadata<any, TType>;
44
- /**
45
- * Type metadata.
46
- *
47
- * @type {TypeMetadata<TType>}
48
- */
49
- typeMetadata: TypeMetadata<TType>;
50
- };
1
+ import { GenericMetadataResolver } from './generic-metadata-resolver';
2
+ import { GenericStructure } from './generic-structure';
3
+ import { PropertyMetadata } from './property-metadata';
4
+ import { ReferenceValueSetter } from './reference-value-setter';
5
+ import { TypeMetadata } from './type-metadata';
6
+ /**
7
+ * Serializer context options.
8
+ *
9
+ * @type {SerializerContextOptions<TType>}
10
+ */
11
+ export declare type SerializerContextOptions<TType> = {
12
+ /**
13
+ * Json path key of current serializer context. It equals to $ for
14
+ * root serializer context. Read about JSONPath for more info.
15
+ *
16
+ * @type {string|number}
17
+ */
18
+ jsonPathKey: string | number;
19
+ /**
20
+ * Reference value setter if serialization may result in circular dependency
21
+ * which must be resolved.
22
+ *
23
+ * @type {ReferenceValueSetter}
24
+ */
25
+ referenceValueSetter?: ReferenceValueSetter;
26
+ /**
27
+ * Generic structures.
28
+ *
29
+ * @type {Array<GenericStructure<any>>}
30
+ */
31
+ genericStructures?: Array<GenericStructure<any>>;
32
+ /**
33
+ * Generic metadata resolvers.
34
+ *
35
+ * @type {Array<GenericMetadataResolver<any>>}
36
+ */
37
+ genericMetadataResolvers?: Array<GenericMetadataResolver<any>>;
38
+ /**
39
+ * Property metadata.
40
+ *
41
+ * @type {PropertyMetadata<any, TType>}
42
+ */
43
+ propertyMetadata?: PropertyMetadata<any, TType>;
44
+ /**
45
+ * Type metadata.
46
+ *
47
+ * @type {TypeMetadata<TType>}
48
+ */
49
+ typeMetadata: TypeMetadata<TType>;
50
+ };
51
51
  //# sourceMappingURL=serializer-context-options.d.ts.map