@dipscope/type-manager 7.0.0-beta.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 (387) hide show
  1. package/CHANGELOG.md +262 -262
  2. package/CONTRIBUTING.md +58 -58
  3. package/LICENSE.md +201 -201
  4. package/README.md +1901 -1901
  5. package/dist/es2015/alias.js +1 -1
  6. package/dist/es2015/any.js +2 -2
  7. package/dist/es2015/custom-context.js +57 -57
  8. package/dist/es2015/custom-key.js +7 -7
  9. package/dist/es2015/custom-option.js +1 -1
  10. package/dist/es2015/custom-value-resolver.js +1 -1
  11. package/dist/es2015/custom-value.js +1 -1
  12. package/dist/es2015/default-value-resolver.js +1 -1
  13. package/dist/es2015/default-value.js +1 -1
  14. package/dist/es2015/discriminant.js +1 -1
  15. package/dist/es2015/discriminator.js +1 -1
  16. package/dist/es2015/factories/index.js +1 -1
  17. package/dist/es2015/factories/type-factory.js +33 -33
  18. package/dist/es2015/factory.js +1 -1
  19. package/dist/es2015/functions/get-own-reflect-metadata.js +7 -7
  20. package/dist/es2015/functions/get-reflect-metadata.js +7 -7
  21. package/dist/es2015/functions/get-words.js +4 -4
  22. package/dist/es2015/functions/index.js +18 -18
  23. package/dist/es2015/functions/is-arrow-function.js +4 -4
  24. package/dist/es2015/functions/is-ctor-function.js +4 -4
  25. package/dist/es2015/functions/is-data-view.js +3 -3
  26. package/dist/es2015/functions/is-float-32-array.js +3 -3
  27. package/dist/es2015/functions/is-float-64-array.js +3 -3
  28. package/dist/es2015/functions/is-int-16-array.js +3 -3
  29. package/dist/es2015/functions/is-int-32-array.js +3 -3
  30. package/dist/es2015/functions/is-int-8-array.js +3 -3
  31. package/dist/es2015/functions/is-uint-16-array.js +3 -3
  32. package/dist/es2015/functions/is-uint-32-array.js +3 -3
  33. package/dist/es2015/functions/is-uint-8-array.js +3 -3
  34. package/dist/es2015/functions/is-uint-8-clamped-array.js +3 -3
  35. package/dist/es2015/functions/json-parse.js +3 -3
  36. package/dist/es2015/functions/json-stringify.js +66 -66
  37. package/dist/es2015/functions/name-of.js +7 -7
  38. package/dist/es2015/generic-argument.js +1 -1
  39. package/dist/es2015/generic-metadata-resolver.js +1 -1
  40. package/dist/es2015/generic-metadata.js +1 -1
  41. package/dist/es2015/generic-structure.js +1 -1
  42. package/dist/es2015/index.js +70 -70
  43. package/dist/es2015/inject-index.js +1 -1
  44. package/dist/es2015/inject-internals.js +1 -1
  45. package/dist/es2015/inject-metadata.js +62 -62
  46. package/dist/es2015/inject-options.js +1 -1
  47. package/dist/es2015/inject-sorter.js +1 -1
  48. package/dist/es2015/inject-sorters/asc-inject-sorter.js +13 -13
  49. package/dist/es2015/inject-sorters/desc-inject-sorter.js +13 -13
  50. package/dist/es2015/inject-sorters/index.js +2 -2
  51. package/dist/es2015/inject.js +23 -23
  52. package/dist/es2015/injector.js +1 -1
  53. package/dist/es2015/injectors/index.js +1 -1
  54. package/dist/es2015/injectors/singleton-injector.js +30 -30
  55. package/dist/es2015/log-level.js +7 -7
  56. package/dist/es2015/log.js +49 -49
  57. package/dist/es2015/metadata.js +80 -80
  58. package/dist/es2015/naming-convention.js +1 -1
  59. package/dist/es2015/naming-conventions/camel-case-naming-convention.js +16 -16
  60. package/dist/es2015/naming-conventions/flat-case-naming-convention.js +12 -12
  61. package/dist/es2015/naming-conventions/flat-upper-case-naming-convention.js +12 -12
  62. package/dist/es2015/naming-conventions/index.js +8 -8
  63. package/dist/es2015/naming-conventions/kebab-case-naming-convention.js +16 -16
  64. package/dist/es2015/naming-conventions/kebab-upper-case-naming-convention.js +16 -16
  65. package/dist/es2015/naming-conventions/pascal-case-naming-convention.js +17 -17
  66. package/dist/es2015/naming-conventions/snake-case-naming-convention.js +16 -16
  67. package/dist/es2015/naming-conventions/snake-upper-case-naming-convention.js +16 -16
  68. package/dist/es2015/property-internals.js +1 -1
  69. package/dist/es2015/property-metadata.js +268 -268
  70. package/dist/es2015/property-name.js +1 -1
  71. package/dist/es2015/property-options.js +1 -1
  72. package/dist/es2015/property-sorter.js +1 -1
  73. package/dist/es2015/property-sorters/asc-property-sorter.js +13 -13
  74. package/dist/es2015/property-sorters/desc-property-sorter.js +13 -13
  75. package/dist/es2015/property-sorters/index.js +2 -2
  76. package/dist/es2015/property.js +38 -38
  77. package/dist/es2015/reference-callback.js +1 -1
  78. package/dist/es2015/reference-handler.js +1 -1
  79. package/dist/es2015/reference-handlers/circular-reference-handler.js +35 -35
  80. package/dist/es2015/reference-handlers/index.js +3 -3
  81. package/dist/es2015/reference-handlers/json-path-reference-handler.js +68 -68
  82. package/dist/es2015/reference-handlers/plain-reference-handler.js +31 -31
  83. package/dist/es2015/reference-key.js +1 -1
  84. package/dist/es2015/reference-value-getter.js +1 -1
  85. package/dist/es2015/reference-value-setter.js +1 -1
  86. package/dist/es2015/reference-value.js +1 -1
  87. package/dist/es2015/serializer-context-options.js +1 -1
  88. package/dist/es2015/serializer-context.js +281 -281
  89. package/dist/es2015/serializer.js +1 -1
  90. package/dist/es2015/serializers/any-serializer.js +21 -21
  91. package/dist/es2015/serializers/array-buffer-serializer.js +40 -40
  92. package/dist/es2015/serializers/array-serializer.js +59 -59
  93. package/dist/es2015/serializers/boolean-serializer.js +54 -54
  94. package/dist/es2015/serializers/data-view-serializer.js +41 -41
  95. package/dist/es2015/serializers/date-serializer.js +33 -33
  96. package/dist/es2015/serializers/float-32-array-serializer.js +34 -34
  97. package/dist/es2015/serializers/float-64-array-serializer.js +34 -34
  98. package/dist/es2015/serializers/index.js +21 -21
  99. package/dist/es2015/serializers/int-16-array-serializer.js +34 -34
  100. package/dist/es2015/serializers/int-32-array-serializer.js +34 -34
  101. package/dist/es2015/serializers/int-8-array-serializer.js +34 -34
  102. package/dist/es2015/serializers/map-serializer.js +95 -95
  103. package/dist/es2015/serializers/number-serializer.js +48 -48
  104. package/dist/es2015/serializers/set-serializer.js +61 -61
  105. package/dist/es2015/serializers/string-serializer.js +54 -54
  106. package/dist/es2015/serializers/type-serializer.js +120 -120
  107. package/dist/es2015/serializers/uint-16-array-serializer.js +34 -34
  108. package/dist/es2015/serializers/uint-32-array-serializer.js +34 -34
  109. package/dist/es2015/serializers/uint-8-array-serializer.js +34 -34
  110. package/dist/es2015/serializers/uint-8-clamped-array-serializer.js +34 -34
  111. package/dist/es2015/serializers/unknown-serializer.js +21 -21
  112. package/dist/es2015/type-abstraction.js +1 -1
  113. package/dist/es2015/type-argument.js +1 -1
  114. package/dist/es2015/type-configuration.js +1 -1
  115. package/dist/es2015/type-context-entry.js +8 -8
  116. package/dist/es2015/type-context.js +30 -30
  117. package/dist/es2015/type-ctor.js +1 -1
  118. package/dist/es2015/type-fn.js +1 -1
  119. package/dist/es2015/type-internals.js +1 -1
  120. package/dist/es2015/type-like.js +1 -1
  121. package/dist/es2015/type-manager-options.js +1 -1
  122. package/dist/es2015/type-manager.js +319 -319
  123. package/dist/es2015/type-metadata-resolver.js +1 -1
  124. package/dist/es2015/type-metadata-symbol.js +1 -1
  125. package/dist/es2015/type-metadata.js +413 -413
  126. package/dist/es2015/type-name.js +1 -1
  127. package/dist/es2015/type-options-base.js +1 -1
  128. package/dist/es2015/type-options.js +1 -1
  129. package/dist/es2015/type-resolver.js +1 -1
  130. package/dist/es2015/type.js +7 -7
  131. package/dist/es2015/unknown.js +2 -2
  132. package/dist/es5/alias.js +1 -1
  133. package/dist/es5/any.js +6 -6
  134. package/dist/es5/custom-context.js +93 -93
  135. package/dist/es5/custom-key.js +9 -9
  136. package/dist/es5/custom-option.js +1 -1
  137. package/dist/es5/custom-value-resolver.js +1 -1
  138. package/dist/es5/custom-value.js +1 -1
  139. package/dist/es5/default-value-resolver.js +1 -1
  140. package/dist/es5/default-value.js +1 -1
  141. package/dist/es5/discriminant.js +1 -1
  142. package/dist/es5/discriminator.js +1 -1
  143. package/dist/es5/factories/index.js +1 -1
  144. package/dist/es5/factories/type-factory.js +59 -59
  145. package/dist/es5/factory.js +1 -1
  146. package/dist/es5/functions/get-own-reflect-metadata.js +7 -7
  147. package/dist/es5/functions/get-reflect-metadata.js +7 -7
  148. package/dist/es5/functions/get-words.js +4 -4
  149. package/dist/es5/functions/index.js +18 -18
  150. package/dist/es5/functions/is-arrow-function.js +4 -4
  151. package/dist/es5/functions/is-ctor-function.js +4 -4
  152. package/dist/es5/functions/is-data-view.js +3 -3
  153. package/dist/es5/functions/is-float-32-array.js +3 -3
  154. package/dist/es5/functions/is-float-64-array.js +3 -3
  155. package/dist/es5/functions/is-int-16-array.js +3 -3
  156. package/dist/es5/functions/is-int-32-array.js +3 -3
  157. package/dist/es5/functions/is-int-8-array.js +3 -3
  158. package/dist/es5/functions/is-uint-16-array.js +3 -3
  159. package/dist/es5/functions/is-uint-32-array.js +3 -3
  160. package/dist/es5/functions/is-uint-8-array.js +3 -3
  161. package/dist/es5/functions/is-uint-8-clamped-array.js +3 -3
  162. package/dist/es5/functions/json-parse.js +3 -3
  163. package/dist/es5/functions/json-stringify.js +66 -66
  164. package/dist/es5/functions/name-of.js +7 -7
  165. package/dist/es5/generic-argument.js +1 -1
  166. package/dist/es5/generic-metadata-resolver.js +1 -1
  167. package/dist/es5/generic-metadata.js +1 -1
  168. package/dist/es5/generic-structure.js +1 -1
  169. package/dist/es5/index.js +70 -70
  170. package/dist/es5/inject-index.js +1 -1
  171. package/dist/es5/inject-internals.js +1 -1
  172. package/dist/es5/inject-metadata.js +83 -83
  173. package/dist/es5/inject-options.js +1 -1
  174. package/dist/es5/inject-sorter.js +1 -1
  175. package/dist/es5/inject-sorters/asc-inject-sorter.js +17 -17
  176. package/dist/es5/inject-sorters/desc-inject-sorter.js +17 -17
  177. package/dist/es5/inject-sorters/index.js +2 -2
  178. package/dist/es5/inject.js +23 -23
  179. package/dist/es5/injector.js +1 -1
  180. package/dist/es5/injectors/index.js +1 -1
  181. package/dist/es5/injectors/singleton-injector.js +44 -44
  182. package/dist/es5/log-level.js +7 -7
  183. package/dist/es5/log.js +64 -64
  184. package/dist/es5/metadata.js +105 -105
  185. package/dist/es5/naming-convention.js +1 -1
  186. package/dist/es5/naming-conventions/camel-case-naming-convention.js +20 -20
  187. package/dist/es5/naming-conventions/flat-case-naming-convention.js +16 -16
  188. package/dist/es5/naming-conventions/flat-upper-case-naming-convention.js +16 -16
  189. package/dist/es5/naming-conventions/index.js +8 -8
  190. package/dist/es5/naming-conventions/kebab-case-naming-convention.js +20 -20
  191. package/dist/es5/naming-conventions/kebab-upper-case-naming-convention.js +20 -20
  192. package/dist/es5/naming-conventions/pascal-case-naming-convention.js +21 -21
  193. package/dist/es5/naming-conventions/snake-case-naming-convention.js +20 -20
  194. package/dist/es5/naming-conventions/snake-upper-case-naming-convention.js +20 -20
  195. package/dist/es5/property-internals.js +1 -1
  196. package/dist/es5/property-metadata.js +377 -377
  197. package/dist/es5/property-name.js +1 -1
  198. package/dist/es5/property-options.js +1 -1
  199. package/dist/es5/property-sorter.js +1 -1
  200. package/dist/es5/property-sorters/asc-property-sorter.js +17 -17
  201. package/dist/es5/property-sorters/desc-property-sorter.js +17 -17
  202. package/dist/es5/property-sorters/index.js +2 -2
  203. package/dist/es5/property.js +38 -38
  204. package/dist/es5/reference-callback.js +1 -1
  205. package/dist/es5/reference-handler.js +1 -1
  206. package/dist/es5/reference-handlers/circular-reference-handler.js +39 -39
  207. package/dist/es5/reference-handlers/index.js +3 -3
  208. package/dist/es5/reference-handlers/json-path-reference-handler.js +92 -92
  209. package/dist/es5/reference-handlers/plain-reference-handler.js +35 -35
  210. package/dist/es5/reference-key.js +1 -1
  211. package/dist/es5/reference-value-getter.js +1 -1
  212. package/dist/es5/reference-value-setter.js +1 -1
  213. package/dist/es5/reference-value.js +1 -1
  214. package/dist/es5/serializer-context-options.js +1 -1
  215. package/dist/es5/serializer-context.js +416 -416
  216. package/dist/es5/serializer.js +1 -1
  217. package/dist/es5/serializers/any-serializer.js +25 -25
  218. package/dist/es5/serializers/array-buffer-serializer.js +44 -44
  219. package/dist/es5/serializers/array-serializer.js +69 -69
  220. package/dist/es5/serializers/boolean-serializer.js +58 -58
  221. package/dist/es5/serializers/data-view-serializer.js +45 -45
  222. package/dist/es5/serializers/date-serializer.js +37 -37
  223. package/dist/es5/serializers/float-32-array-serializer.js +38 -38
  224. package/dist/es5/serializers/float-64-array-serializer.js +38 -38
  225. package/dist/es5/serializers/index.js +21 -21
  226. package/dist/es5/serializers/int-16-array-serializer.js +38 -38
  227. package/dist/es5/serializers/int-32-array-serializer.js +38 -38
  228. package/dist/es5/serializers/int-8-array-serializer.js +38 -38
  229. package/dist/es5/serializers/map-serializer.js +114 -114
  230. package/dist/es5/serializers/number-serializer.js +52 -52
  231. package/dist/es5/serializers/set-serializer.js +77 -77
  232. package/dist/es5/serializers/string-serializer.js +58 -58
  233. package/dist/es5/serializers/type-serializer.js +153 -153
  234. package/dist/es5/serializers/uint-16-array-serializer.js +38 -38
  235. package/dist/es5/serializers/uint-32-array-serializer.js +38 -38
  236. package/dist/es5/serializers/uint-8-array-serializer.js +38 -38
  237. package/dist/es5/serializers/uint-8-clamped-array-serializer.js +38 -38
  238. package/dist/es5/serializers/unknown-serializer.js +25 -25
  239. package/dist/es5/type-abstraction.js +1 -1
  240. package/dist/es5/type-argument.js +1 -1
  241. package/dist/es5/type-configuration.js +1 -1
  242. package/dist/es5/type-context-entry.js +10 -10
  243. package/dist/es5/type-context.js +32 -32
  244. package/dist/es5/type-ctor.js +1 -1
  245. package/dist/es5/type-fn.js +1 -1
  246. package/dist/es5/type-internals.js +1 -1
  247. package/dist/es5/type-like.js +1 -1
  248. package/dist/es5/type-manager-options.js +1 -1
  249. package/dist/es5/type-manager.js +412 -412
  250. package/dist/es5/type-metadata-resolver.js +1 -1
  251. package/dist/es5/type-metadata-symbol.js +1 -1
  252. package/dist/es5/type-metadata.js +563 -563
  253. package/dist/es5/type-name.js +1 -1
  254. package/dist/es5/type-options-base.js +1 -1
  255. package/dist/es5/type-options.js +1 -1
  256. package/dist/es5/type-resolver.js +1 -1
  257. package/dist/es5/type.js +7 -7
  258. package/dist/es5/unknown.js +6 -6
  259. package/dist/types/alias.d.ts +6 -6
  260. package/dist/types/any.d.ts +9 -9
  261. package/dist/types/custom-context.d.ts +88 -88
  262. package/dist/types/custom-key.d.ts +28 -28
  263. package/dist/types/custom-option.d.ts +10 -10
  264. package/dist/types/custom-value-resolver.d.ts +6 -6
  265. package/dist/types/custom-value.d.ts +6 -6
  266. package/dist/types/default-value-resolver.d.ts +7 -7
  267. package/dist/types/default-value.d.ts +7 -7
  268. package/dist/types/discriminant.d.ts +8 -8
  269. package/dist/types/discriminator.d.ts +6 -6
  270. package/dist/types/factories/index.d.ts +1 -1
  271. package/dist/types/factories/type-factory.d.ts +19 -19
  272. package/dist/types/factory.d.ts +18 -18
  273. package/dist/types/functions/get-own-reflect-metadata.d.ts +9 -9
  274. package/dist/types/functions/get-reflect-metadata.d.ts +10 -10
  275. package/dist/types/functions/get-words.d.ts +8 -8
  276. package/dist/types/functions/index.d.ts +18 -18
  277. package/dist/types/functions/is-arrow-function.d.ts +8 -8
  278. package/dist/types/functions/is-ctor-function.d.ts +8 -8
  279. package/dist/types/functions/is-data-view.d.ts +8 -8
  280. package/dist/types/functions/is-float-32-array.d.ts +8 -8
  281. package/dist/types/functions/is-float-64-array.d.ts +8 -8
  282. package/dist/types/functions/is-int-16-array.d.ts +8 -8
  283. package/dist/types/functions/is-int-32-array.d.ts +8 -8
  284. package/dist/types/functions/is-int-8-array.d.ts +8 -8
  285. package/dist/types/functions/is-uint-16-array.d.ts +8 -8
  286. package/dist/types/functions/is-uint-32-array.d.ts +8 -8
  287. package/dist/types/functions/is-uint-8-array.d.ts +8 -8
  288. package/dist/types/functions/is-uint-8-clamped-array.d.ts +8 -8
  289. package/dist/types/functions/json-parse.d.ts +9 -9
  290. package/dist/types/functions/json-stringify.d.ts +10 -10
  291. package/dist/types/functions/name-of.d.ts +8 -8
  292. package/dist/types/generic-argument.d.ts +7 -7
  293. package/dist/types/generic-metadata-resolver.d.ts +7 -7
  294. package/dist/types/generic-metadata.d.ts +7 -7
  295. package/dist/types/generic-structure.d.ts +7 -7
  296. package/dist/types/index.d.ts +70 -70
  297. package/dist/types/inject-index.d.ts +6 -6
  298. package/dist/types/inject-internals.d.ts +14 -14
  299. package/dist/types/inject-metadata.d.ts +117 -117
  300. package/dist/types/inject-options.d.ts +22 -22
  301. package/dist/types/inject-sorter.d.ts +19 -19
  302. package/dist/types/inject-sorters/asc-inject-sorter.d.ts +20 -20
  303. package/dist/types/inject-sorters/desc-inject-sorter.d.ts +20 -20
  304. package/dist/types/inject-sorters/index.d.ts +2 -2
  305. package/dist/types/inject.d.ts +10 -10
  306. package/dist/types/injector.d.ts +16 -16
  307. package/dist/types/injectors/index.d.ts +1 -1
  308. package/dist/types/injectors/singleton-injector.d.ts +31 -31
  309. package/dist/types/log-level.d.ts +11 -11
  310. package/dist/types/log.d.ts +95 -95
  311. package/dist/types/metadata.d.ts +99 -99
  312. package/dist/types/naming-convention.d.ts +15 -15
  313. package/dist/types/naming-conventions/camel-case-naming-convention.d.ts +26 -26
  314. package/dist/types/naming-conventions/flat-case-naming-convention.d.ts +25 -25
  315. package/dist/types/naming-conventions/flat-upper-case-naming-convention.d.ts +25 -25
  316. package/dist/types/naming-conventions/index.d.ts +8 -8
  317. package/dist/types/naming-conventions/kebab-case-naming-convention.d.ts +26 -26
  318. package/dist/types/naming-conventions/kebab-upper-case-naming-convention.d.ts +26 -26
  319. package/dist/types/naming-conventions/pascal-case-naming-convention.d.ts +26 -26
  320. package/dist/types/naming-conventions/snake-case-naming-convention.d.ts +26 -26
  321. package/dist/types/naming-conventions/snake-upper-case-naming-convention.d.ts +26 -26
  322. package/dist/types/property-internals.d.ts +35 -35
  323. package/dist/types/property-metadata.d.ts +359 -359
  324. package/dist/types/property-name.d.ts +6 -6
  325. package/dist/types/property-options.d.ts +116 -116
  326. package/dist/types/property-sorter.d.ts +19 -19
  327. package/dist/types/property-sorters/asc-property-sorter.d.ts +20 -20
  328. package/dist/types/property-sorters/desc-property-sorter.d.ts +20 -20
  329. package/dist/types/property-sorters/index.d.ts +2 -2
  330. package/dist/types/property.d.ts +13 -13
  331. package/dist/types/reference-callback.d.ts +7 -7
  332. package/dist/types/reference-handler.d.ts +31 -31
  333. package/dist/types/reference-handlers/circular-reference-handler.d.ts +32 -32
  334. package/dist/types/reference-handlers/index.d.ts +3 -3
  335. package/dist/types/reference-handlers/json-path-reference-handler.d.ts +55 -55
  336. package/dist/types/reference-handlers/plain-reference-handler.d.ts +33 -33
  337. package/dist/types/reference-key.d.ts +6 -6
  338. package/dist/types/reference-value-getter.d.ts +7 -7
  339. package/dist/types/reference-value-setter.d.ts +7 -7
  340. package/dist/types/reference-value.d.ts +6 -6
  341. package/dist/types/serializer-context-options.d.ts +50 -50
  342. package/dist/types/serializer-context.d.ts +418 -418
  343. package/dist/types/serializer.d.ts +27 -27
  344. package/dist/types/serializers/any-serializer.d.ts +28 -28
  345. package/dist/types/serializers/array-buffer-serializer.d.ts +28 -28
  346. package/dist/types/serializers/array-serializer.d.ts +28 -28
  347. package/dist/types/serializers/boolean-serializer.d.ts +37 -37
  348. package/dist/types/serializers/data-view-serializer.d.ts +28 -28
  349. package/dist/types/serializers/date-serializer.d.ts +28 -28
  350. package/dist/types/serializers/float-32-array-serializer.d.ts +28 -28
  351. package/dist/types/serializers/float-64-array-serializer.d.ts +28 -28
  352. package/dist/types/serializers/index.d.ts +21 -21
  353. package/dist/types/serializers/int-16-array-serializer.d.ts +28 -28
  354. package/dist/types/serializers/int-32-array-serializer.d.ts +28 -28
  355. package/dist/types/serializers/int-8-array-serializer.d.ts +28 -28
  356. package/dist/types/serializers/map-serializer.d.ts +28 -28
  357. package/dist/types/serializers/number-serializer.d.ts +37 -37
  358. package/dist/types/serializers/set-serializer.d.ts +28 -28
  359. package/dist/types/serializers/string-serializer.d.ts +37 -37
  360. package/dist/types/serializers/type-serializer.d.ts +28 -28
  361. package/dist/types/serializers/uint-16-array-serializer.d.ts +28 -28
  362. package/dist/types/serializers/uint-32-array-serializer.d.ts +28 -28
  363. package/dist/types/serializers/uint-8-array-serializer.d.ts +28 -28
  364. package/dist/types/serializers/uint-8-clamped-array-serializer.d.ts +28 -28
  365. package/dist/types/serializers/unknown-serializer.d.ts +28 -28
  366. package/dist/types/type-abstraction.d.ts +6 -6
  367. package/dist/types/type-argument.d.ts +9 -9
  368. package/dist/types/type-configuration.d.ts +16 -16
  369. package/dist/types/type-context-entry.d.ts +36 -36
  370. package/dist/types/type-context.d.ts +70 -70
  371. package/dist/types/type-ctor.d.ts +6 -6
  372. package/dist/types/type-fn.d.ts +8 -8
  373. package/dist/types/type-internals.d.ts +14 -14
  374. package/dist/types/type-like.d.ts +7 -7
  375. package/dist/types/type-manager-options.d.ts +33 -33
  376. package/dist/types/type-manager.d.ts +413 -413
  377. package/dist/types/type-metadata-resolver.d.ts +8 -8
  378. package/dist/types/type-metadata-symbol.d.ts +6 -6
  379. package/dist/types/type-metadata.d.ts +513 -513
  380. package/dist/types/type-name.d.ts +6 -6
  381. package/dist/types/type-options-base.d.ts +106 -106
  382. package/dist/types/type-options.d.ts +72 -72
  383. package/dist/types/type-resolver.d.ts +7 -7
  384. package/dist/types/type.d.ts +9 -9
  385. package/dist/types/unknown.d.ts +9 -9
  386. package/dist/umd/index.js.map +1 -1
  387. package/package.json +63 -63
@@ -1,118 +1,118 @@
1
- import { InjectIndex } from './inject-index';
2
- import { InjectInternals } from './inject-internals';
3
- import { InjectOptions } from './inject-options';
4
- import { Metadata } from './metadata';
5
- import { TypeFn } from './type-fn';
6
- import { TypeMetadata } from './type-metadata';
7
- import { TypeMetadataResolver } from './type-metadata-resolver';
8
- /**
9
- * Main class used to describe an injection.
10
- *
11
- * @type {InjectMetadata<TDeclaringType, TType>}
12
- */
13
- export declare class InjectMetadata<TDeclaringType, TType> extends Metadata {
14
- /**
15
- * Type metadata to which inject metadata belongs to.
16
- *
17
- * @type {TypeMetadata<TDeclaringType>}
18
- */
19
- readonly declaringTypeMetadata: TypeMetadata<TDeclaringType>;
20
- /**
21
- * Index of injection within a type constructor function.
22
- *
23
- * @type {InjectIndex}
24
- */
25
- readonly injectIndex: InjectIndex;
26
- /**
27
- * Inject options.
28
- *
29
- * @type {InjectOptions<TType>}
30
- */
31
- readonly injectOptions: InjectOptions<TType>;
32
- /**
33
- * Inject internals.
34
- *
35
- * @type {InjectInternals}
36
- */
37
- readonly injectInternals: InjectInternals;
38
- /**
39
- * Type function defined using reflect metadata.
40
- *
41
- * Used as a fallback when type function is not defined.
42
- *
43
- * @type {TypeFn<TType>}
44
- */
45
- readonly reflectTypeFn?: TypeFn<TType>;
46
- /**
47
- * Constructor.
48
- *
49
- * @param {TypeMetadata<TDeclaringType>} declaringTypeMetadata Type metadata to which inject metadata belongs to.
50
- * @param {InjectIndex} injectIndex Index of injection within a type constructor function.
51
- * @param {InjectOptions<TType>} injectOptions Inject options.
52
- */
53
- constructor(declaringTypeMetadata: TypeMetadata<TDeclaringType>, injectIndex: InjectIndex, injectOptions: InjectOptions<TType>);
54
- /**
55
- * Gets key.
56
- *
57
- * @returns {string|undefined} Key or undefined.
58
- */
59
- get key(): string | undefined;
60
- /**
61
- * Gets type function.
62
- *
63
- * @returns {TypeFn<TType>|undefined} Type constructor or undefined.
64
- */
65
- get typeFn(): TypeFn<TType> | undefined;
66
- /**
67
- * Gets type metadata resolver.
68
- *
69
- * @returns {TypeMetadataResolver<TType>} Type metadata resolver.
70
- */
71
- get typeMetadataResolver(): TypeMetadataResolver<TType>;
72
- /**
73
- * Gets inject type metadata.
74
- *
75
- * @returns {TypeMetadata<TType>} Type metadata.
76
- */
77
- get typeMetadata(): TypeMetadata<TType>;
78
- /**
79
- * Constructs initial inject options by extending passed options
80
- * with default values if they are not overriden. All references are kept.
81
- *
82
- * @param {InjectOptions<TType>} injectOptions Inject options.
83
- *
84
- * @returns {InjectOptions<TType>} Constructed inject options.
85
- */
86
- private constructInjectOptions;
87
- /**
88
- * Constructs inject internals.
89
- *
90
- * @returns {InjectInternals} Constructed inject internals.
91
- */
92
- private constructInjectInternals;
93
- /**
94
- * Configures key.
95
- *
96
- * @param {string|undefined} key Key.
97
- *
98
- * @returns {InjectMetadata<TDeclaringType, TType>} Current instance of inject metadata.
99
- */
100
- hasKey(key: string | undefined): InjectMetadata<TDeclaringType, TType>;
101
- /**
102
- * Configures type function.
103
- *
104
- * @param {TypeFn<TType>|undefined} typeFn Type function.
105
- *
106
- * @returns {InjectMetadata<TDeclaringType, TType>} Current instance of inject metadata.
107
- */
108
- hasTypeFn(typeFn: TypeFn<TType> | undefined): InjectMetadata<TDeclaringType, TType>;
109
- /**
110
- * Configures inject metadata based on provided options.
111
- *
112
- * @param {InjectOptions<TType>} injectOptions Inject options.
113
- *
114
- * @returns {InjectMetadata<TDeclaringType, TType>} Current instance of inject metadata.
115
- */
116
- configure(injectOptions: InjectOptions<TType>): InjectMetadata<TDeclaringType, TType>;
117
- }
1
+ import { InjectIndex } from './inject-index';
2
+ import { InjectInternals } from './inject-internals';
3
+ import { InjectOptions } from './inject-options';
4
+ import { Metadata } from './metadata';
5
+ import { TypeFn } from './type-fn';
6
+ import { TypeMetadata } from './type-metadata';
7
+ import { TypeMetadataResolver } from './type-metadata-resolver';
8
+ /**
9
+ * Main class used to describe an injection.
10
+ *
11
+ * @type {InjectMetadata<TDeclaringType, TType>}
12
+ */
13
+ export declare class InjectMetadata<TDeclaringType, TType> extends Metadata {
14
+ /**
15
+ * Type metadata to which inject metadata belongs to.
16
+ *
17
+ * @type {TypeMetadata<TDeclaringType>}
18
+ */
19
+ readonly declaringTypeMetadata: TypeMetadata<TDeclaringType>;
20
+ /**
21
+ * Index of injection within a type constructor function.
22
+ *
23
+ * @type {InjectIndex}
24
+ */
25
+ readonly injectIndex: InjectIndex;
26
+ /**
27
+ * Inject options.
28
+ *
29
+ * @type {InjectOptions<TType>}
30
+ */
31
+ readonly injectOptions: InjectOptions<TType>;
32
+ /**
33
+ * Inject internals.
34
+ *
35
+ * @type {InjectInternals}
36
+ */
37
+ readonly injectInternals: InjectInternals;
38
+ /**
39
+ * Type function defined using reflect metadata.
40
+ *
41
+ * Used as a fallback when type function is not defined.
42
+ *
43
+ * @type {TypeFn<TType>}
44
+ */
45
+ readonly reflectTypeFn?: TypeFn<TType>;
46
+ /**
47
+ * Constructor.
48
+ *
49
+ * @param {TypeMetadata<TDeclaringType>} declaringTypeMetadata Type metadata to which inject metadata belongs to.
50
+ * @param {InjectIndex} injectIndex Index of injection within a type constructor function.
51
+ * @param {InjectOptions<TType>} injectOptions Inject options.
52
+ */
53
+ constructor(declaringTypeMetadata: TypeMetadata<TDeclaringType>, injectIndex: InjectIndex, injectOptions: InjectOptions<TType>);
54
+ /**
55
+ * Gets key.
56
+ *
57
+ * @returns {string|undefined} Key or undefined.
58
+ */
59
+ get key(): string | undefined;
60
+ /**
61
+ * Gets type function.
62
+ *
63
+ * @returns {TypeFn<TType>|undefined} Type constructor or undefined.
64
+ */
65
+ get typeFn(): TypeFn<TType> | undefined;
66
+ /**
67
+ * Gets type metadata resolver.
68
+ *
69
+ * @returns {TypeMetadataResolver<TType>} Type metadata resolver.
70
+ */
71
+ get typeMetadataResolver(): TypeMetadataResolver<TType>;
72
+ /**
73
+ * Gets inject type metadata.
74
+ *
75
+ * @returns {TypeMetadata<TType>} Type metadata.
76
+ */
77
+ get typeMetadata(): TypeMetadata<TType>;
78
+ /**
79
+ * Constructs initial inject options by extending passed options
80
+ * with default values if they are not overriden. All references are kept.
81
+ *
82
+ * @param {InjectOptions<TType>} injectOptions Inject options.
83
+ *
84
+ * @returns {InjectOptions<TType>} Constructed inject options.
85
+ */
86
+ private constructInjectOptions;
87
+ /**
88
+ * Constructs inject internals.
89
+ *
90
+ * @returns {InjectInternals} Constructed inject internals.
91
+ */
92
+ private constructInjectInternals;
93
+ /**
94
+ * Configures key.
95
+ *
96
+ * @param {string|undefined} key Key.
97
+ *
98
+ * @returns {InjectMetadata<TDeclaringType, TType>} Current instance of inject metadata.
99
+ */
100
+ hasKey(key: string | undefined): InjectMetadata<TDeclaringType, TType>;
101
+ /**
102
+ * Configures type function.
103
+ *
104
+ * @param {TypeFn<TType>|undefined} typeFn Type function.
105
+ *
106
+ * @returns {InjectMetadata<TDeclaringType, TType>} Current instance of inject metadata.
107
+ */
108
+ hasTypeFn(typeFn: TypeFn<TType> | undefined): InjectMetadata<TDeclaringType, TType>;
109
+ /**
110
+ * Configures inject metadata based on provided options.
111
+ *
112
+ * @param {InjectOptions<TType>} injectOptions Inject options.
113
+ *
114
+ * @returns {InjectMetadata<TDeclaringType, TType>} Current instance of inject metadata.
115
+ */
116
+ configure(injectOptions: InjectOptions<TType>): InjectMetadata<TDeclaringType, TType>;
117
+ }
118
118
  //# sourceMappingURL=inject-metadata.d.ts.map
@@ -1,23 +1,23 @@
1
- import { TypeFn } from './type-fn';
2
- /**
3
- * Inject options.
4
- *
5
- * @type {InjectOptions<TType>}
6
- */
7
- export declare type InjectOptions<TType> = {
8
- /**
9
- * Parameter key to inject within a type context. If specified then
10
- * type function will be ignored.
11
- *
12
- * @type {string}
13
- */
14
- key?: string;
15
- /**
16
- * Type of injection. Used if key is not specified. Will be resolved using
17
- * type injector.
18
- *
19
- * @type {TypeFn<TType>}
20
- */
21
- typeFn?: TypeFn<TType>;
22
- };
1
+ import { TypeFn } from './type-fn';
2
+ /**
3
+ * Inject options.
4
+ *
5
+ * @type {InjectOptions<TType>}
6
+ */
7
+ export declare type InjectOptions<TType> = {
8
+ /**
9
+ * Parameter key to inject within a type context. If specified then
10
+ * type function will be ignored.
11
+ *
12
+ * @type {string}
13
+ */
14
+ key?: string;
15
+ /**
16
+ * Type of injection. Used if key is not specified. Will be resolved using
17
+ * type injector.
18
+ *
19
+ * @type {TypeFn<TType>}
20
+ */
21
+ typeFn?: TypeFn<TType>;
22
+ };
23
23
  //# sourceMappingURL=inject-options.d.ts.map
@@ -1,20 +1,20 @@
1
- import { InjectMetadata } from './inject-metadata';
2
- /**
3
- * Represents inject sorter. Used to sort injects during serialization
4
- * and deserialization.
5
- *
6
- * @type {InjectSorter}
7
- */
8
- export interface InjectSorter {
9
- /**
10
- * Sort type injects. It is expected to return a negative value if the value of first property
11
- * is less than the value of second property, zero if they are equal, and a positive value otherwise.
12
- *
13
- * @param {InjectMetadata<TType, any>} x First inject.
14
- * @param {InjectMetadata<TType, any>} y Second inject.
15
- *
16
- * @returns {number} Sort result.
17
- */
18
- sort<TType>(x: InjectMetadata<TType, any>, y: InjectMetadata<TType, any>): number;
19
- }
1
+ import { InjectMetadata } from './inject-metadata';
2
+ /**
3
+ * Represents inject sorter. Used to sort injects during serialization
4
+ * and deserialization.
5
+ *
6
+ * @type {InjectSorter}
7
+ */
8
+ export interface InjectSorter {
9
+ /**
10
+ * Sort type injects. It is expected to return a negative value if the value of first property
11
+ * is less than the value of second property, zero if they are equal, and a positive value otherwise.
12
+ *
13
+ * @param {InjectMetadata<TType, any>} x First inject.
14
+ * @param {InjectMetadata<TType, any>} y Second inject.
15
+ *
16
+ * @returns {number} Sort result.
17
+ */
18
+ sort<TType>(x: InjectMetadata<TType, any>, y: InjectMetadata<TType, any>): number;
19
+ }
20
20
  //# sourceMappingURL=inject-sorter.d.ts.map
@@ -1,21 +1,21 @@
1
- import { InjectMetadata } from '../inject-metadata';
2
- import { InjectSorter } from '../inject-sorter';
3
- /**
4
- * Represents asc inject sorter which sorts type injects in
5
- * ascending order by index.
6
- *
7
- * @type {AscInjectSorter}
8
- */
9
- export declare class AscInjectSorter implements InjectSorter {
10
- /**
11
- * Sort type injects. It is expected to return a negative value if the value of first property
12
- * is less than the value of second property, zero if they are equal, and a positive value otherwise.
13
- *
14
- * @param {InjectMetadata<TType, any>} x First inject.
15
- * @param {InjectMetadata<TType, any>} y Second inject.
16
- *
17
- * @returns {number} Sort result.
18
- */
19
- sort<TType>(x: InjectMetadata<TType, any>, y: InjectMetadata<TType, any>): number;
20
- }
1
+ import { InjectMetadata } from '../inject-metadata';
2
+ import { InjectSorter } from '../inject-sorter';
3
+ /**
4
+ * Represents asc inject sorter which sorts type injects in
5
+ * ascending order by index.
6
+ *
7
+ * @type {AscInjectSorter}
8
+ */
9
+ export declare class AscInjectSorter implements InjectSorter {
10
+ /**
11
+ * Sort type injects. It is expected to return a negative value if the value of first property
12
+ * is less than the value of second property, zero if they are equal, and a positive value otherwise.
13
+ *
14
+ * @param {InjectMetadata<TType, any>} x First inject.
15
+ * @param {InjectMetadata<TType, any>} y Second inject.
16
+ *
17
+ * @returns {number} Sort result.
18
+ */
19
+ sort<TType>(x: InjectMetadata<TType, any>, y: InjectMetadata<TType, any>): number;
20
+ }
21
21
  //# sourceMappingURL=asc-inject-sorter.d.ts.map
@@ -1,21 +1,21 @@
1
- import { InjectMetadata } from '../inject-metadata';
2
- import { InjectSorter } from '../inject-sorter';
3
- /**
4
- * Represents desc inject sorter which sorts type injects in
5
- * descending order by index.
6
- *
7
- * @type {DescInjectSorter}
8
- */
9
- export declare class DescInjectSorter implements InjectSorter {
10
- /**
11
- * Sort type injects. It is expected to return a negative value if the value of first property
12
- * is less than the value of second property, zero if they are equal, and a positive value otherwise.
13
- *
14
- * @param {InjectMetadata<TType, any>} x First inject.
15
- * @param {InjectMetadata<TType, any>} y Second inject.
16
- *
17
- * @returns {number} Sort result.
18
- */
19
- sort<TType>(x: InjectMetadata<TType, any>, y: InjectMetadata<TType, any>): number;
20
- }
1
+ import { InjectMetadata } from '../inject-metadata';
2
+ import { InjectSorter } from '../inject-sorter';
3
+ /**
4
+ * Represents desc inject sorter which sorts type injects in
5
+ * descending order by index.
6
+ *
7
+ * @type {DescInjectSorter}
8
+ */
9
+ export declare class DescInjectSorter implements InjectSorter {
10
+ /**
11
+ * Sort type injects. It is expected to return a negative value if the value of first property
12
+ * is less than the value of second property, zero if they are equal, and a positive value otherwise.
13
+ *
14
+ * @param {InjectMetadata<TType, any>} x First inject.
15
+ * @param {InjectMetadata<TType, any>} y Second inject.
16
+ *
17
+ * @returns {number} Sort result.
18
+ */
19
+ sort<TType>(x: InjectMetadata<TType, any>, y: InjectMetadata<TType, any>): number;
20
+ }
21
21
  //# sourceMappingURL=desc-inject-sorter.d.ts.map
@@ -1,3 +1,3 @@
1
- export * from './asc-inject-sorter';
2
- export * from './desc-inject-sorter';
1
+ export * from './asc-inject-sorter';
2
+ export * from './desc-inject-sorter';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1,11 +1,11 @@
1
- import { InjectOptions } from './inject-options';
2
- import { TypeFn } from './type-fn';
3
- /**
4
- * Inject decorator.
5
- *
6
- * @param {TypeFn<TType>|InjectOptions<TType>|string} x Type function, inject options or parameter key from type context.
7
- *
8
- * @returns {ParameterDecorator} Parameter decorator.
9
- */
10
- export declare function Inject<TType>(x: TypeFn<TType> | InjectOptions<TType> | string): ParameterDecorator;
1
+ import { InjectOptions } from './inject-options';
2
+ import { TypeFn } from './type-fn';
3
+ /**
4
+ * Inject decorator.
5
+ *
6
+ * @param {TypeFn<TType>|InjectOptions<TType>|string} x Type function, inject options or parameter key from type context.
7
+ *
8
+ * @returns {ParameterDecorator} Parameter decorator.
9
+ */
10
+ export declare function Inject<TType>(x: TypeFn<TType> | InjectOptions<TType> | string): ParameterDecorator;
11
11
  //# sourceMappingURL=inject.d.ts.map
@@ -1,17 +1,17 @@
1
- import { TypeMetadata } from './type-metadata';
2
- /**
3
- * Injector used to resolve dependent types.
4
- *
5
- * @type {Injector}
6
- */
7
- export interface Injector {
8
- /**
9
- * Method to get instance described by type metadata.
10
- *
11
- * @param {TypeMetadata<TType>} typeMetadata Type metadata.
12
- *
13
- * @returns {TType|undefined} Instance of type described by type metadata or undefined.
14
- */
15
- get<TType>(typeMetadata: TypeMetadata<TType>): TType | undefined;
16
- }
1
+ import { TypeMetadata } from './type-metadata';
2
+ /**
3
+ * Injector used to resolve dependent types.
4
+ *
5
+ * @type {Injector}
6
+ */
7
+ export interface Injector {
8
+ /**
9
+ * Method to get instance described by type metadata.
10
+ *
11
+ * @param {TypeMetadata<TType>} typeMetadata Type metadata.
12
+ *
13
+ * @returns {TType|undefined} Instance of type described by type metadata or undefined.
14
+ */
15
+ get<TType>(typeMetadata: TypeMetadata<TType>): TType | undefined;
16
+ }
17
17
  //# sourceMappingURL=injector.d.ts.map
@@ -1,2 +1,2 @@
1
- export * from './singleton-injector';
1
+ export * from './singleton-injector';
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1,32 +1,32 @@
1
- import { Injector } from '../injector';
2
- import { TypeMetadata } from '../type-metadata';
3
- /**
4
- * Singleton injector.
5
- *
6
- * @type {SingletonInjector}
7
- */
8
- export declare class SingletonInjector implements Injector {
9
- /**
10
- * Map with resolved types.
11
- *
12
- * @type {WeakMap<TypeMetadata<any>, any>}
13
- */
14
- private readonly instanceMap;
15
- /**
16
- * Method to get instance described by type metadata.
17
- *
18
- * @param {TypeMetadata<TType>} typeMetadata Type metadata.
19
- *
20
- * @returns {TType} Instance of type described by type metadata or undefined.
21
- */
22
- get<TType>(typeMetadata: TypeMetadata<TType>): TType | undefined;
23
- /**
24
- * Creates instance described by type metadata.
25
- *
26
- * @param {TypeMetadata<TType>} typeMetadata Type metadata.
27
- *
28
- * @returns {TType} Type instance described by type metadata.
29
- */
30
- private init;
31
- }
1
+ import { Injector } from '../injector';
2
+ import { TypeMetadata } from '../type-metadata';
3
+ /**
4
+ * Singleton injector.
5
+ *
6
+ * @type {SingletonInjector}
7
+ */
8
+ export declare class SingletonInjector implements Injector {
9
+ /**
10
+ * Map with resolved types.
11
+ *
12
+ * @type {WeakMap<TypeMetadata<any>, any>}
13
+ */
14
+ private readonly instanceMap;
15
+ /**
16
+ * Method to get instance described by type metadata.
17
+ *
18
+ * @param {TypeMetadata<TType>} typeMetadata Type metadata.
19
+ *
20
+ * @returns {TType} Instance of type described by type metadata or undefined.
21
+ */
22
+ get<TType>(typeMetadata: TypeMetadata<TType>): TType | undefined;
23
+ /**
24
+ * Creates instance described by type metadata.
25
+ *
26
+ * @param {TypeMetadata<TType>} typeMetadata Type metadata.
27
+ *
28
+ * @returns {TType} Type instance described by type metadata.
29
+ */
30
+ private init;
31
+ }
32
32
  //# sourceMappingURL=singleton-injector.d.ts.map
@@ -1,12 +1,12 @@
1
- /**
2
- * Log level.
3
- *
4
- * @type {LogLevel}
5
- */
6
- export declare enum LogLevel {
7
- Info = 0,
8
- Warn = 1,
9
- Error = 2,
10
- None = 3
11
- }
1
+ /**
2
+ * Log level.
3
+ *
4
+ * @type {LogLevel}
5
+ */
6
+ export declare enum LogLevel {
7
+ Info = 0,
8
+ Warn = 1,
9
+ Error = 2,
10
+ None = 3
11
+ }
12
12
  //# sourceMappingURL=log-level.d.ts.map