typia 5.0.0-dev.20230821 → 5.0.0-dev.20230823

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 (237) hide show
  1. package/README.md +1 -1
  2. package/lib/factories/MetadataFactory.js +9 -0
  3. package/lib/factories/MetadataFactory.js.map +1 -1
  4. package/lib/factories/ProtobufFactory.js +8 -0
  5. package/lib/factories/ProtobufFactory.js.map +1 -1
  6. package/lib/functional/$ProtobufReader.d.ts +2 -0
  7. package/lib/functional/$ProtobufReader.js +14 -3
  8. package/lib/functional/$ProtobufReader.js.map +1 -1
  9. package/lib/functional/$ProtobufSizer.js +1 -1
  10. package/lib/functional/$ProtobufSizer.js.map +1 -1
  11. package/lib/functional/$ProtobufWriter.js +0 -1
  12. package/lib/functional/$ProtobufWriter.js.map +1 -1
  13. package/lib/programmers/helpers/ProtobufUtil.d.ts +3 -1
  14. package/lib/programmers/helpers/ProtobufUtil.js +5 -1
  15. package/lib/programmers/helpers/ProtobufUtil.js.map +1 -1
  16. package/lib/programmers/json/JsonValidateParseProgrammer.js +2 -3
  17. package/lib/programmers/json/JsonValidateParseProgrammer.js.map +1 -1
  18. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js +2 -3
  19. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js.map +1 -1
  20. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js +362 -6
  21. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js.map +1 -1
  22. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +21 -64
  23. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  24. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js +1 -1
  25. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js.map +1 -1
  26. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +1 -1
  27. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js.map +1 -1
  28. package/lib/programmers/protobuf/ProtobufValidateDecodeProgrammer.js +3 -4
  29. package/lib/programmers/protobuf/ProtobufValidateDecodeProgrammer.js.map +1 -1
  30. package/lib/protobuf.d.ts +8 -9
  31. package/lib/protobuf.js +7 -0
  32. package/lib/protobuf.js.map +1 -1
  33. package/package.json +1 -1
  34. package/src/factories/ExpressionFactory.ts +115 -115
  35. package/src/factories/MetadataCollection.ts +269 -269
  36. package/src/factories/MetadataFactory.ts +46 -34
  37. package/src/factories/MetadataTagFactory.ts +364 -364
  38. package/src/factories/ProtobufFactory.ts +266 -251
  39. package/src/factories/StatementFactory.ts +72 -72
  40. package/src/factories/internal/metadata/MetadataHelper.ts +12 -12
  41. package/src/factories/internal/metadata/emend_metadata_atomics.ts +33 -33
  42. package/src/factories/internal/metadata/emplace_metadata_alias.ts +40 -40
  43. package/src/factories/internal/metadata/emplace_metadata_array.ts +34 -34
  44. package/src/factories/internal/metadata/emplace_metadata_object.ts +136 -136
  45. package/src/factories/internal/metadata/emplace_metadata_tuple.ts +50 -50
  46. package/src/factories/internal/metadata/explore_metadata.ts +38 -38
  47. package/src/factories/internal/metadata/iterate_metadata.ts +81 -81
  48. package/src/factories/internal/metadata/iterate_metadata_alias.ts +30 -30
  49. package/src/factories/internal/metadata/iterate_metadata_array.ts +24 -24
  50. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +59 -59
  51. package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +33 -33
  52. package/src/factories/internal/metadata/iterate_metadata_collection.ts +133 -133
  53. package/src/factories/internal/metadata/iterate_metadata_constant.ts +58 -58
  54. package/src/factories/internal/metadata/iterate_metadata_intersection.ts +84 -84
  55. package/src/factories/internal/metadata/iterate_metadata_map.ts +41 -41
  56. package/src/factories/internal/metadata/iterate_metadata_native.ts +219 -219
  57. package/src/factories/internal/metadata/iterate_metadata_object.ts +43 -43
  58. package/src/factories/internal/metadata/iterate_metadata_resolve.ts +49 -49
  59. package/src/factories/internal/metadata/iterate_metadata_set.ts +33 -33
  60. package/src/factories/internal/metadata/iterate_metadata_sort.ts +69 -69
  61. package/src/factories/internal/metadata/iterate_metadata_tag.ts +31 -31
  62. package/src/factories/internal/metadata/iterate_metadata_template.ts +38 -38
  63. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +24 -24
  64. package/src/factories/internal/metadata/iterate_metadata_union.ts +24 -24
  65. package/src/functional/$ProtobufReader.ts +201 -188
  66. package/src/functional/$ProtobufSizer.ts +147 -144
  67. package/src/functional/$ProtobufWriter.ts +151 -152
  68. package/src/functional/$number.ts +13 -13
  69. package/src/functional/$strlen.ts +7 -7
  70. package/src/functional/$varint.ts +130 -130
  71. package/src/functional/$zigzag.ts +39 -39
  72. package/src/functional/IProtobufWriter.ts +18 -18
  73. package/src/functional/Namespace.ts +149 -149
  74. package/src/json.ts +648 -648
  75. package/src/misc.ts +651 -651
  76. package/src/module.ts +708 -708
  77. package/src/programmers/CheckerProgrammer.ts +1173 -1173
  78. package/src/programmers/FeatureProgrammer.ts +497 -497
  79. package/src/programmers/IsProgrammer.ts +239 -239
  80. package/src/programmers/IsPruneProgrammer.ts +73 -73
  81. package/src/programmers/RandomProgrammer.ts +578 -578
  82. package/src/programmers/helpers/AtomicPredicator.ts +31 -31
  83. package/src/programmers/helpers/CloneJoiner.ts +107 -107
  84. package/src/programmers/helpers/FunctionImporeter.ts +89 -89
  85. package/src/programmers/helpers/IExpressionEntry.ts +12 -12
  86. package/src/programmers/helpers/ProtobufUtil.ts +29 -24
  87. package/src/programmers/helpers/ProtobufWire.ts +34 -34
  88. package/src/programmers/helpers/PruneJoiner.ts +143 -143
  89. package/src/programmers/helpers/RandomJoiner.ts +173 -173
  90. package/src/programmers/helpers/RandomRanger.ts +208 -208
  91. package/src/programmers/helpers/StringifyPredicator.ts +13 -13
  92. package/src/programmers/helpers/UnionExplorer.ts +310 -310
  93. package/src/programmers/helpers/UnionPredicator.ts +81 -81
  94. package/src/programmers/helpers/disable_function_importer_declare.ts +27 -27
  95. package/src/programmers/internal/application_alias.ts +66 -66
  96. package/src/programmers/internal/application_array.ts +30 -30
  97. package/src/programmers/internal/application_constant.ts +26 -26
  98. package/src/programmers/internal/application_default.ts +17 -17
  99. package/src/programmers/internal/application_default_string.ts +33 -33
  100. package/src/programmers/internal/application_native.ts +39 -39
  101. package/src/programmers/internal/application_number.ts +81 -81
  102. package/src/programmers/internal/application_object.ts +165 -165
  103. package/src/programmers/internal/application_resolved.ts +55 -55
  104. package/src/programmers/internal/application_schema.ts +157 -157
  105. package/src/programmers/internal/application_string.ts +44 -44
  106. package/src/programmers/internal/application_templates.ts +25 -25
  107. package/src/programmers/internal/application_tuple.ts +57 -57
  108. package/src/programmers/internal/check_array.ts +30 -30
  109. package/src/programmers/internal/check_array_length.ts +35 -35
  110. package/src/programmers/internal/check_bigint.ts +110 -110
  111. package/src/programmers/internal/check_custom.ts +31 -31
  112. package/src/programmers/internal/check_number.ts +258 -258
  113. package/src/programmers/internal/check_string.ts +25 -25
  114. package/src/programmers/internal/check_string_tags.ts +67 -67
  115. package/src/programmers/internal/check_template.ts +56 -56
  116. package/src/programmers/internal/check_union_array_like.ts +329 -329
  117. package/src/programmers/internal/decode_union_object.ts +84 -84
  118. package/src/programmers/internal/feature_object_entries.ts +63 -63
  119. package/src/programmers/internal/get_comment_tags.ts +23 -23
  120. package/src/programmers/internal/metadata_to_pattern.ts +34 -34
  121. package/src/programmers/internal/prune_object_properties.ts +60 -60
  122. package/src/programmers/internal/random_custom.ts +29 -29
  123. package/src/programmers/internal/stringify_regular_properties.ts +83 -83
  124. package/src/programmers/internal/template_to_pattern.ts +15 -15
  125. package/src/programmers/internal/wrap_metadata_rest_tuple.ts +16 -16
  126. package/src/programmers/json/JsonApplicationProgrammer.ts +47 -47
  127. package/src/programmers/json/JsonAssertParseProgrammer.ts +66 -66
  128. package/src/programmers/json/JsonAssertStringifyProgrammer.ts +66 -66
  129. package/src/programmers/json/JsonIsParseProgrammer.ts +72 -72
  130. package/src/programmers/json/JsonIsStringifyProgrammer.ts +76 -76
  131. package/src/programmers/json/JsonStringifyProgrammer.ts +987 -987
  132. package/src/programmers/json/JsonValidateParseProgrammer.ts +63 -70
  133. package/src/programmers/json/JsonValidateStringifyProgrammer.ts +84 -84
  134. package/src/programmers/misc/MiscAssertCloneProgrammer.ts +71 -71
  135. package/src/programmers/misc/MiscAssertPruneProgrammer.ts +68 -68
  136. package/src/programmers/misc/MiscCloneProgrammer.ts +587 -587
  137. package/src/programmers/misc/MiscIsCloneProgrammer.ts +78 -78
  138. package/src/programmers/misc/MiscLiteralsProgrammer.ts +64 -64
  139. package/src/programmers/misc/MiscPruneProgrammer.ts +542 -542
  140. package/src/programmers/misc/MiscValidateCloneProgrammer.ts +85 -85
  141. package/src/programmers/misc/MiscValidatePruneProgrammer.ts +78 -78
  142. package/src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts +66 -69
  143. package/src/programmers/protobuf/ProtobufAssertEncodeProgrammer.ts +66 -66
  144. package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +669 -38
  145. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +814 -920
  146. package/src/programmers/protobuf/ProtobufIsDecodeProgrammer.ts +75 -75
  147. package/src/programmers/protobuf/ProtobufIsEncodeProgrammer.ts +76 -76
  148. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +178 -178
  149. package/src/programmers/protobuf/ProtobufValidateDecodeProgrammer.ts +75 -83
  150. package/src/programmers/protobuf/ProtobufValidateEncodeProgrammer.ts +86 -86
  151. package/src/protobuf.ts +249 -239
  152. package/src/schemas/json/IJsonApplication.ts +8 -8
  153. package/src/schemas/json/IJsonComponents.ts +33 -33
  154. package/src/schemas/json/IJsonSchema.ts +133 -133
  155. package/src/schemas/metadata/ICommentTag.ts +4 -4
  156. package/src/schemas/metadata/IJsDocTagInfo.ts +10 -10
  157. package/src/schemas/metadata/IMetadata.ts +28 -28
  158. package/src/schemas/metadata/IMetadataAlias.ts +14 -14
  159. package/src/schemas/metadata/IMetadataApplication.ts +7 -7
  160. package/src/schemas/metadata/IMetadataArray.ts +10 -10
  161. package/src/schemas/metadata/IMetadataCollection.ts +11 -11
  162. package/src/schemas/metadata/IMetadataConstant.ts +16 -16
  163. package/src/schemas/metadata/IMetadataDictionary.ts +14 -14
  164. package/src/schemas/metadata/IMetadataEntry.ts +6 -6
  165. package/src/schemas/metadata/IMetadataObject.ts +18 -18
  166. package/src/schemas/metadata/IMetadataProperty.ts +11 -11
  167. package/src/schemas/metadata/IMetadataResolved.ts +6 -6
  168. package/src/schemas/metadata/IMetadataTag.ts +112 -112
  169. package/src/schemas/metadata/IMetadataTuple.ts +10 -10
  170. package/src/schemas/metadata/Metadata.ts +637 -637
  171. package/src/schemas/metadata/MetadataAlias.ts +66 -66
  172. package/src/schemas/metadata/MetadataArray.ts +55 -55
  173. package/src/schemas/metadata/MetadataConstant.ts +3 -3
  174. package/src/schemas/metadata/MetadataObject.ts +139 -139
  175. package/src/schemas/metadata/MetadataProperty.ts +64 -64
  176. package/src/schemas/metadata/MetadataResolved.ts +51 -51
  177. package/src/schemas/metadata/MetadataTuple.ts +58 -58
  178. package/src/transformers/CallExpressionTransformer.ts +240 -240
  179. package/src/transformers/features/AssertTransformer.ts +11 -11
  180. package/src/transformers/features/CreateAssertTransformer.ts +13 -13
  181. package/src/transformers/features/CreateIsTransformer.ts +11 -11
  182. package/src/transformers/features/CreateRandomTransformer.ts +39 -39
  183. package/src/transformers/features/CreateValidateTransformer.ts +13 -13
  184. package/src/transformers/features/IsTransformer.ts +11 -11
  185. package/src/transformers/features/RandomTransformer.ts +42 -42
  186. package/src/transformers/features/ValidateTransformer.ts +11 -11
  187. package/src/transformers/features/json/JsonApplicationTransformer.ts +111 -111
  188. package/src/transformers/features/json/JsonAssertParseTransformer.ts +10 -10
  189. package/src/transformers/features/json/JsonAssertStringifyTransformer.ts +10 -10
  190. package/src/transformers/features/json/JsonCreateAssertParseTransformer.ts +10 -10
  191. package/src/transformers/features/json/JsonCreateAssertStringifyTransformer.ts +12 -12
  192. package/src/transformers/features/json/JsonCreateIsParseTransformer.ts +9 -9
  193. package/src/transformers/features/json/JsonCreateIsStringifyTransformer.ts +10 -10
  194. package/src/transformers/features/json/JsonCreateStringifyTransformer.ts +9 -9
  195. package/src/transformers/features/json/JsonCreateValidateParseTransformer.ts +10 -10
  196. package/src/transformers/features/json/JsonCreateValidateStringifyProgrammer.ts +12 -12
  197. package/src/transformers/features/json/JsonIsParseTransformer.ts +9 -9
  198. package/src/transformers/features/json/JsonIsStringifyTransformer.ts +10 -10
  199. package/src/transformers/features/json/JsonStringifyTransformer.ts +9 -9
  200. package/src/transformers/features/json/JsonValidateParseTransformer.ts +10 -10
  201. package/src/transformers/features/json/JsonValidateStringifyTransformer.ts +10 -10
  202. package/src/transformers/features/misc/MetadataTransformer.ts +53 -53
  203. package/src/transformers/features/misc/MiscAssertCloneTransformer.ts +10 -10
  204. package/src/transformers/features/misc/MiscAssertPruneTransformer.ts +10 -10
  205. package/src/transformers/features/misc/MiscCloneTransformer.ts +9 -9
  206. package/src/transformers/features/misc/MiscCreateAssertCloneTransformer.ts +10 -10
  207. package/src/transformers/features/misc/MiscCreateAssertPruneTransformer.ts +10 -10
  208. package/src/transformers/features/misc/MiscCreateCloneTransformer.ts +9 -9
  209. package/src/transformers/features/misc/MiscCreateIsCloneTransformer.ts +9 -9
  210. package/src/transformers/features/misc/MiscCreateIsPruneTransformer.ts +9 -9
  211. package/src/transformers/features/misc/MiscCreatePruneTransformer.ts +9 -9
  212. package/src/transformers/features/misc/MiscCreateValidateCloneTransformer.ts +10 -10
  213. package/src/transformers/features/misc/MiscCreateValidatePruneTransformer.ts +10 -10
  214. package/src/transformers/features/misc/MiscIsCloneTransformer.ts +9 -9
  215. package/src/transformers/features/misc/MiscIsPruneTransformer.ts +9 -9
  216. package/src/transformers/features/misc/MiscLiteralsTransformer.ts +28 -28
  217. package/src/transformers/features/misc/MiscPruneTransformer.ts +9 -9
  218. package/src/transformers/features/misc/MiscValidateCloneTransformer.ts +10 -10
  219. package/src/transformers/features/misc/MiscValidatePruneTransformer.ts +10 -10
  220. package/src/transformers/features/protobuf/CreateProtobufAssertDecodeTransformer.ts +12 -12
  221. package/src/transformers/features/protobuf/CreateProtobufAssertEncodeTransformer.ts +12 -12
  222. package/src/transformers/features/protobuf/CreateProtobufDecodeTransformer.ts +9 -9
  223. package/src/transformers/features/protobuf/CreateProtobufEncodeTransformer.ts +9 -9
  224. package/src/transformers/features/protobuf/CreateProtobufIsDecodeTransformer.ts +12 -12
  225. package/src/transformers/features/protobuf/CreateProtobufIsEncodeTransformer.ts +12 -12
  226. package/src/transformers/features/protobuf/CreateProtobufValidateDecodeTransformer.ts +12 -12
  227. package/src/transformers/features/protobuf/CreateProtobufValidateEncodeTransformer.ts +12 -12
  228. package/src/transformers/features/protobuf/ProtobufAssertDecodeTransformer.ts +10 -10
  229. package/src/transformers/features/protobuf/ProtobufAssertEncodeTransformer.ts +10 -10
  230. package/src/transformers/features/protobuf/ProtobufDecodeTransformer.ts +10 -10
  231. package/src/transformers/features/protobuf/ProtobufEncodeTransformer.ts +10 -10
  232. package/src/transformers/features/protobuf/ProtobufIsDecodeTransformer.ts +10 -10
  233. package/src/transformers/features/protobuf/ProtobufIsEncodeTransformer.ts +10 -10
  234. package/src/transformers/features/protobuf/ProtobufMessageTransformer.ts +31 -31
  235. package/src/transformers/features/protobuf/ProtobufValidateDecodeTransformer.ts +12 -12
  236. package/src/transformers/features/protobuf/ProtobufValidateEncodeTransformer.ts +12 -12
  237. package/src/utils/NameEncoder.ts +32 -32
package/src/protobuf.ts CHANGED
@@ -1,239 +1,249 @@
1
- import { Namespace } from "./functional/Namespace";
2
-
3
- import { IValidation } from "./IValidation";
4
- import { Primitive } from "./Primitive";
5
-
6
- /* ===========================================================
7
- PROTOCOL BUFFER
8
- - MESSAGE
9
- - DECODE
10
- - ENCODE
11
- - FACTORY FUNCTIONS
12
- ==============================================================
13
- SCHEMA
14
- ----------------------------------------------------------- */
15
- export function message(): never;
16
-
17
- export function message<T>(): string;
18
-
19
- /**
20
- * @internal
21
- */
22
- export function message(): never {
23
- halt("message");
24
- }
25
-
26
- /* -----------------------------------------------------------
27
- DECODE
28
- ----------------------------------------------------------- */
29
- export function decode(input: Uint8Array): never;
30
-
31
- export function decode<T>(input: Uint8Array): Primitive<T>;
32
-
33
- /**
34
- * @internal
35
- */
36
- export function decode(): never {
37
- halt("decode");
38
- }
39
- Object.assign(decode, Namespace.protobuf.decode("decode"));
40
-
41
- export function isDecode(input: Uint8Array): never;
42
-
43
- export function isDecode<T>(input: Uint8Array): Primitive<T> | null;
44
-
45
- /**
46
- * @internal
47
- */
48
- export function isDecode(): never {
49
- halt("isDecode");
50
- }
51
- Object.assign(isDecode, Namespace.is());
52
- Object.assign(isDecode, Namespace.protobuf.decode("isDecode"));
53
-
54
- export function assertDecode(input: Uint8Array): never;
55
-
56
- export function assertDecode<T>(input: Uint8Array): Primitive<T>;
57
-
58
- /**
59
- * @internal
60
- */
61
- export function assertDecode(): never {
62
- halt("assertDecode");
63
- }
64
- Object.assign(assertDecode, Namespace.assert("assertDecode"));
65
- Object.assign(assertDecode, Namespace.protobuf.decode("assertDecode"));
66
-
67
- export function validateDecode(input: Uint8Array): never;
68
-
69
- export function validateDecode<T>(input: Uint8Array): IValidation<Primitive<T>>;
70
-
71
- /**
72
- * @internal
73
- */
74
- export function validateDecode(): never {
75
- halt("validateDecode");
76
- }
77
- Object.assign(validateDecode, Namespace.validate());
78
- Object.assign(validateDecode, Namespace.protobuf.decode("validateDecode"));
79
-
80
- /* -----------------------------------------------------------
81
- ENCODE
82
- ----------------------------------------------------------- */
83
- export function encode<T>(input: T): Uint8Array;
84
-
85
- /**
86
- * @internal
87
- */
88
- export function encode(): never {
89
- halt("encode");
90
- }
91
- Object.assign(encode, Namespace.protobuf.encode("encode"));
92
-
93
- export function isEncode<T>(input: T): Uint8Array | null;
94
-
95
- /**
96
- * @internal
97
- */
98
- export function isEncode(): never {
99
- halt("isEncode");
100
- }
101
- Object.assign(isEncode, Namespace.is());
102
- Object.assign(isEncode, Namespace.protobuf.encode("isEncode"));
103
-
104
- export function assertEncode<T>(input: T): Uint8Array;
105
-
106
- /**
107
- * @internal
108
- */
109
- export function assertEncode(): never {
110
- halt("assertEncode");
111
- }
112
- Object.assign(assertEncode, Namespace.assert("assertEncode"));
113
- Object.assign(assertEncode, Namespace.protobuf.encode("assertEncode"));
114
-
115
- export function validateEncode<T>(input: T): IValidation<Uint8Array>;
116
-
117
- /**
118
- * @internal
119
- */
120
- export function validateEncode(): never {
121
- halt("validateEncode");
122
- }
123
- Object.assign(validateEncode, Namespace.validate());
124
- Object.assign(validateEncode, Namespace.protobuf.encode("validateEncode"));
125
-
126
- /* -----------------------------------------------------------
127
- FACTORY FUNCTIONS
128
- ----------------------------------------------------------- */
129
- export function createDecode(): never;
130
- export function createDecode<T>(): (input: Uint8Array) => Primitive<T>;
131
-
132
- /**
133
- * @internal
134
- */
135
- export function createDecode<T>(): (input: Uint8Array) => Primitive<T> {
136
- halt("createDecode");
137
- }
138
-
139
- export function createIsDecode(): never;
140
- export function createIsDecode<T>(): (input: Uint8Array) => Primitive<T> | null;
141
-
142
- /**
143
- * @internal
144
- */
145
- export function createIsDecode<T>(): (
146
- input: Uint8Array,
147
- ) => Primitive<T> | null {
148
- halt("createIsDecode");
149
- }
150
-
151
- export function createAssertDecode(): never;
152
- export function createAssertDecode<T>(): (input: Uint8Array) => Primitive<T>;
153
-
154
- /**
155
- * @internal
156
- */
157
- export function createAssertDecode<T>(): (input: Uint8Array) => Primitive<T> {
158
- halt("createAssertDecode");
159
- }
160
-
161
- export function createValidateDecode(): never;
162
- export function createValidateDecode<T>(): (
163
- input: Uint8Array,
164
- ) => IValidation<Primitive<T>>;
165
-
166
- /**
167
- * @internal
168
- */
169
- export function createValidateDecode<T>(): (
170
- input: Uint8Array,
171
- ) => IValidation<Primitive<T>> {
172
- halt("createValidateDecode");
173
- }
174
-
175
- export function createEncode(): never;
176
- export function createEncode<T>(): (input: T) => Uint8Array;
177
-
178
- /**
179
- * @internal
180
- */
181
- export function createEncode<T>(): (input: T) => Uint8Array {
182
- halt("createEncode");
183
- }
184
- Object.assign(createEncode, Namespace.protobuf.encode("createEncode"));
185
-
186
- export function createIsEncode(): never;
187
- export function createIsEncode<T>(): (input: T) => Uint8Array | null;
188
-
189
- /**
190
- * @internal
191
- */
192
- export function createIsEncode<T>(): (input: T) => Uint8Array | null {
193
- halt("createIsEncode");
194
- }
195
- Object.assign(createIsEncode, Namespace.is());
196
- Object.assign(createIsEncode, Namespace.protobuf.encode("createIsEncode"));
197
-
198
- export function createAssertEncode(): never;
199
- export function createAssertEncode<T>(): (input: T) => Uint8Array;
200
-
201
- /**
202
- * @internal
203
- */
204
- export function createAssertEncode<T>(): (input: T) => Uint8Array {
205
- halt("createAssertEncode");
206
- }
207
- Object.assign(createAssertEncode, Namespace.assert("createAssertEncode"));
208
- Object.assign(
209
- createAssertEncode,
210
- Namespace.protobuf.encode("createAssertEncode"),
211
- );
212
-
213
- export function createValidateEncode(): never;
214
- export function createValidateEncode<T>(): (
215
- input: T,
216
- ) => IValidation<Uint8Array>;
217
-
218
- /**
219
- * @internal
220
- */
221
- export function createValidateEncode<T>(): (
222
- input: T,
223
- ) => IValidation<Uint8Array> {
224
- halt("createValidateEncode");
225
- }
226
- Object.assign(createValidateEncode, Namespace.validate());
227
- Object.assign(
228
- createValidateEncode,
229
- Namespace.protobuf.encode("createValidateEncode"),
230
- );
231
-
232
- /**
233
- * @internal
234
- */
235
- function halt(name: string): never {
236
- throw new Error(
237
- `Error on typia.protobuf.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`,
238
- );
239
- }
1
+ import { Namespace } from "./functional/Namespace";
2
+
3
+ import { IValidation } from "./IValidation";
4
+
5
+ /* ===========================================================
6
+ PROTOCOL BUFFER
7
+ - MESSAGE
8
+ - DECODE
9
+ - ENCODE
10
+ - FACTORY FUNCTIONS
11
+ ==============================================================
12
+ SCHEMA
13
+ ----------------------------------------------------------- */
14
+ export function message(): never;
15
+
16
+ export function message<T>(): string;
17
+
18
+ /**
19
+ * @internal
20
+ */
21
+ export function message(): never {
22
+ halt("message");
23
+ }
24
+
25
+ /* -----------------------------------------------------------
26
+ DECODE
27
+ ----------------------------------------------------------- */
28
+ export function decode(input: Uint8Array): never;
29
+
30
+ export function decode<T>(input: Uint8Array): T;
31
+
32
+ /**
33
+ * @internal
34
+ */
35
+ export function decode(): never {
36
+ halt("decode");
37
+ }
38
+ Object.assign(decode, Namespace.protobuf.decode("decode"));
39
+
40
+ export function isDecode(input: Uint8Array): never;
41
+
42
+ export function isDecode<T>(input: Uint8Array): T | null;
43
+
44
+ /**
45
+ * @internal
46
+ */
47
+ export function isDecode(): never {
48
+ halt("isDecode");
49
+ }
50
+ Object.assign(isDecode, Namespace.is());
51
+ Object.assign(isDecode, Namespace.protobuf.decode("isDecode"));
52
+
53
+ export function assertDecode(input: Uint8Array): never;
54
+
55
+ export function assertDecode<T>(input: Uint8Array): T;
56
+
57
+ /**
58
+ * @internal
59
+ */
60
+ export function assertDecode(): never {
61
+ halt("assertDecode");
62
+ }
63
+ Object.assign(assertDecode, Namespace.assert("assertDecode"));
64
+ Object.assign(assertDecode, Namespace.protobuf.decode("assertDecode"));
65
+
66
+ export function validateDecode(input: Uint8Array): never;
67
+
68
+ export function validateDecode<T>(input: Uint8Array): IValidation<T>;
69
+
70
+ /**
71
+ * @internal
72
+ */
73
+ export function validateDecode(): never {
74
+ halt("validateDecode");
75
+ }
76
+ Object.assign(validateDecode, Namespace.validate());
77
+ Object.assign(validateDecode, Namespace.protobuf.decode("validateDecode"));
78
+
79
+ /* -----------------------------------------------------------
80
+ ENCODE
81
+ ----------------------------------------------------------- */
82
+ export function encode<T>(input: T): Uint8Array;
83
+
84
+ /**
85
+ * @internal
86
+ */
87
+ export function encode(): never {
88
+ halt("encode");
89
+ }
90
+ Object.assign(encode, Namespace.protobuf.encode("encode"));
91
+
92
+ export function isEncode<T>(input: T): Uint8Array | null;
93
+
94
+ /**
95
+ * @internal
96
+ */
97
+ export function isEncode(): never {
98
+ halt("isEncode");
99
+ }
100
+ Object.assign(isEncode, Namespace.is());
101
+ Object.assign(isEncode, Namespace.protobuf.encode("isEncode"));
102
+
103
+ export function assertEncode<T>(input: T): Uint8Array;
104
+
105
+ /**
106
+ * @internal
107
+ */
108
+ export function assertEncode(): never {
109
+ halt("assertEncode");
110
+ }
111
+ Object.assign(assertEncode, Namespace.assert("assertEncode"));
112
+ Object.assign(assertEncode, Namespace.protobuf.encode("assertEncode"));
113
+
114
+ export function validateEncode<T>(input: T): IValidation<Uint8Array>;
115
+
116
+ /**
117
+ * @internal
118
+ */
119
+ export function validateEncode(): never {
120
+ halt("validateEncode");
121
+ }
122
+ Object.assign(validateEncode, Namespace.validate());
123
+ Object.assign(validateEncode, Namespace.protobuf.encode("validateEncode"));
124
+
125
+ /* -----------------------------------------------------------
126
+ FACTORY FUNCTIONS
127
+ ----------------------------------------------------------- */
128
+ export function createDecode(): never;
129
+ export function createDecode<T>(): (input: Uint8Array) => T;
130
+
131
+ /**
132
+ * @internal
133
+ */
134
+ export function createDecode<T>(): (input: Uint8Array) => T {
135
+ halt("createDecode");
136
+ }
137
+ Object.assign(createDecode, Namespace.protobuf.decode("createDecode"));
138
+
139
+ export function createIsDecode(): never;
140
+ export function createIsDecode<T>(): (input: Uint8Array) => T | null;
141
+
142
+ /**
143
+ * @internal
144
+ */
145
+ export function createIsDecode<T>(): (input: Uint8Array) => T | null {
146
+ halt("createIsDecode");
147
+ }
148
+ Object.assign(createIsDecode, Namespace.is());
149
+ Object.assign(createIsDecode, Namespace.protobuf.decode("createIsDecode"));
150
+
151
+ export function createAssertDecode(): never;
152
+ export function createAssertDecode<T>(): (input: Uint8Array) => T;
153
+
154
+ /**
155
+ * @internal
156
+ */
157
+ export function createAssertDecode<T>(): (input: Uint8Array) => T {
158
+ halt("createAssertDecode");
159
+ }
160
+ Object.assign(createAssertDecode, Namespace.assert("createAssertDecode"));
161
+ Object.assign(
162
+ createAssertDecode,
163
+ Namespace.protobuf.decode("createAssertDecode"),
164
+ );
165
+
166
+ export function createValidateDecode(): never;
167
+ export function createValidateDecode<T>(): (
168
+ input: Uint8Array,
169
+ ) => IValidation<T>;
170
+
171
+ /**
172
+ * @internal
173
+ */
174
+ export function createValidateDecode<T>(): (
175
+ input: Uint8Array,
176
+ ) => IValidation<T> {
177
+ halt("createValidateDecode");
178
+ }
179
+ Object.assign(createValidateDecode, Namespace.validate());
180
+ Object.assign(
181
+ createValidateDecode,
182
+ Namespace.protobuf.decode("createValidateDecode"),
183
+ );
184
+
185
+ export function createEncode(): never;
186
+ export function createEncode<T>(): (input: T) => Uint8Array;
187
+
188
+ /**
189
+ * @internal
190
+ */
191
+ export function createEncode<T>(): (input: T) => Uint8Array {
192
+ halt("createEncode");
193
+ }
194
+ Object.assign(createEncode, Namespace.protobuf.encode("createEncode"));
195
+
196
+ export function createIsEncode(): never;
197
+ export function createIsEncode<T>(): (input: T) => Uint8Array | null;
198
+
199
+ /**
200
+ * @internal
201
+ */
202
+ export function createIsEncode<T>(): (input: T) => Uint8Array | null {
203
+ halt("createIsEncode");
204
+ }
205
+ Object.assign(createIsEncode, Namespace.is());
206
+ Object.assign(createIsEncode, Namespace.protobuf.encode("createIsEncode"));
207
+
208
+ export function createAssertEncode(): never;
209
+ export function createAssertEncode<T>(): (input: T) => Uint8Array;
210
+
211
+ /**
212
+ * @internal
213
+ */
214
+ export function createAssertEncode<T>(): (input: T) => Uint8Array {
215
+ halt("createAssertEncode");
216
+ }
217
+ Object.assign(createAssertEncode, Namespace.assert("createAssertEncode"));
218
+ Object.assign(
219
+ createAssertEncode,
220
+ Namespace.protobuf.encode("createAssertEncode"),
221
+ );
222
+
223
+ export function createValidateEncode(): never;
224
+ export function createValidateEncode<T>(): (
225
+ input: T,
226
+ ) => IValidation<Uint8Array>;
227
+
228
+ /**
229
+ * @internal
230
+ */
231
+ export function createValidateEncode<T>(): (
232
+ input: T,
233
+ ) => IValidation<Uint8Array> {
234
+ halt("createValidateEncode");
235
+ }
236
+ Object.assign(createValidateEncode, Namespace.validate());
237
+ Object.assign(
238
+ createValidateEncode,
239
+ Namespace.protobuf.encode("createValidateEncode"),
240
+ );
241
+
242
+ /**
243
+ * @internal
244
+ */
245
+ function halt(name: string): never {
246
+ throw new Error(
247
+ `Error on typia.protobuf.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`,
248
+ );
249
+ }
@@ -1,8 +1,8 @@
1
- import { IJsonComponents } from "./IJsonComponents";
2
- import { IJsonSchema } from "./IJsonSchema";
3
-
4
- export interface IJsonApplication {
5
- schemas: IJsonSchema[];
6
- components: IJsonComponents;
7
- purpose: "swagger" | "ajv";
8
- }
1
+ import { IJsonComponents } from "./IJsonComponents";
2
+ import { IJsonSchema } from "./IJsonSchema";
3
+
4
+ export interface IJsonApplication {
5
+ schemas: IJsonSchema[];
6
+ components: IJsonComponents;
7
+ purpose: "swagger" | "ajv";
8
+ }
@@ -1,33 +1,33 @@
1
- import { IJsDocTagInfo } from "../metadata/IJsDocTagInfo";
2
-
3
- import { IJsonSchema } from "./IJsonSchema";
4
-
5
- export interface IJsonComponents {
6
- schemas?: Record<string, IJsonComponents.IObject | IJsonComponents.IAlias>;
7
- }
8
- export namespace IJsonComponents {
9
- export interface IObject {
10
- $id?: string;
11
- type: "object";
12
-
13
- /**
14
- * Only when swagger mode.
15
- */
16
- nullable?: boolean;
17
-
18
- properties: Record<string, IJsonSchema>;
19
- patternProperties?: Record<string, IJsonSchema>;
20
- additionalProperties?: IJsonSchema;
21
-
22
- required?: string[];
23
- description?: string;
24
- "x-typia-jsDocTags"?: IJsDocTagInfo[];
25
- "x-typia-patternProperties"?: Record<string, IJsonSchema>;
26
- "x-typia-additionalProperties"?: IJsonSchema;
27
- }
28
-
29
- export type IAlias = IJsonSchema & {
30
- $id?: string;
31
- $recursiveAnchor?: boolean;
32
- };
33
- }
1
+ import { IJsDocTagInfo } from "../metadata/IJsDocTagInfo";
2
+
3
+ import { IJsonSchema } from "./IJsonSchema";
4
+
5
+ export interface IJsonComponents {
6
+ schemas?: Record<string, IJsonComponents.IObject | IJsonComponents.IAlias>;
7
+ }
8
+ export namespace IJsonComponents {
9
+ export interface IObject {
10
+ $id?: string;
11
+ type: "object";
12
+
13
+ /**
14
+ * Only when swagger mode.
15
+ */
16
+ nullable?: boolean;
17
+
18
+ properties: Record<string, IJsonSchema>;
19
+ patternProperties?: Record<string, IJsonSchema>;
20
+ additionalProperties?: IJsonSchema;
21
+
22
+ required?: string[];
23
+ description?: string;
24
+ "x-typia-jsDocTags"?: IJsDocTagInfo[];
25
+ "x-typia-patternProperties"?: Record<string, IJsonSchema>;
26
+ "x-typia-additionalProperties"?: IJsonSchema;
27
+ }
28
+
29
+ export type IAlias = IJsonSchema & {
30
+ $id?: string;
31
+ $recursiveAnchor?: boolean;
32
+ };
33
+ }