typia 5.0.0-dev.20230820 → 5.0.0-dev.20230821

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 (221) hide show
  1. package/README.md +1 -1
  2. package/lib/factories/MetadataTagFactory.js +1 -2
  3. package/lib/factories/MetadataTagFactory.js.map +1 -1
  4. package/lib/programmers/RandomProgrammer.js +18 -9
  5. package/lib/programmers/RandomProgrammer.js.map +1 -1
  6. package/lib/programmers/helpers/RandomRanger.js +2 -2
  7. package/lib/programmers/helpers/RandomRanger.js.map +1 -1
  8. package/lib/programmers/internal/application_number.js +6 -1
  9. package/lib/programmers/internal/application_number.js.map +1 -1
  10. package/lib/programmers/internal/check_bigint.js +8 -11
  11. package/lib/programmers/internal/check_bigint.js.map +1 -1
  12. package/lib/programmers/internal/check_number.js +12 -2
  13. package/lib/programmers/internal/check_number.js.map +1 -1
  14. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +1 -1
  15. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  16. package/lib/schemas/metadata/IMetadataTag.d.ts +1 -1
  17. package/package.json +1 -1
  18. package/src/factories/ExpressionFactory.ts +115 -115
  19. package/src/factories/MetadataCollection.ts +269 -269
  20. package/src/factories/MetadataFactory.ts +34 -34
  21. package/src/factories/MetadataTagFactory.ts +364 -365
  22. package/src/factories/ProtobufFactory.ts +251 -251
  23. package/src/factories/StatementFactory.ts +72 -72
  24. package/src/factories/internal/metadata/MetadataHelper.ts +12 -12
  25. package/src/factories/internal/metadata/emend_metadata_atomics.ts +33 -33
  26. package/src/factories/internal/metadata/emplace_metadata_alias.ts +40 -40
  27. package/src/factories/internal/metadata/emplace_metadata_array.ts +34 -34
  28. package/src/factories/internal/metadata/emplace_metadata_object.ts +136 -136
  29. package/src/factories/internal/metadata/emplace_metadata_tuple.ts +50 -50
  30. package/src/factories/internal/metadata/explore_metadata.ts +38 -38
  31. package/src/factories/internal/metadata/iterate_metadata.ts +81 -81
  32. package/src/factories/internal/metadata/iterate_metadata_alias.ts +30 -30
  33. package/src/factories/internal/metadata/iterate_metadata_array.ts +24 -24
  34. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +59 -59
  35. package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +33 -33
  36. package/src/factories/internal/metadata/iterate_metadata_collection.ts +133 -133
  37. package/src/factories/internal/metadata/iterate_metadata_constant.ts +58 -58
  38. package/src/factories/internal/metadata/iterate_metadata_intersection.ts +84 -84
  39. package/src/factories/internal/metadata/iterate_metadata_map.ts +41 -41
  40. package/src/factories/internal/metadata/iterate_metadata_native.ts +219 -219
  41. package/src/factories/internal/metadata/iterate_metadata_object.ts +43 -43
  42. package/src/factories/internal/metadata/iterate_metadata_resolve.ts +49 -49
  43. package/src/factories/internal/metadata/iterate_metadata_set.ts +33 -33
  44. package/src/factories/internal/metadata/iterate_metadata_sort.ts +69 -69
  45. package/src/factories/internal/metadata/iterate_metadata_tag.ts +31 -31
  46. package/src/factories/internal/metadata/iterate_metadata_template.ts +38 -38
  47. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +24 -24
  48. package/src/factories/internal/metadata/iterate_metadata_union.ts +24 -24
  49. package/src/functional/$ProtobufReader.ts +188 -188
  50. package/src/functional/$ProtobufSizer.ts +144 -144
  51. package/src/functional/$ProtobufWriter.ts +152 -152
  52. package/src/functional/$number.ts +13 -13
  53. package/src/functional/$strlen.ts +7 -7
  54. package/src/functional/$varint.ts +130 -130
  55. package/src/functional/$zigzag.ts +39 -39
  56. package/src/functional/IProtobufWriter.ts +18 -18
  57. package/src/functional/Namespace.ts +149 -149
  58. package/src/json.ts +648 -648
  59. package/src/misc.ts +651 -651
  60. package/src/module.ts +708 -708
  61. package/src/programmers/CheckerProgrammer.ts +1173 -1173
  62. package/src/programmers/FeatureProgrammer.ts +497 -497
  63. package/src/programmers/IsProgrammer.ts +239 -239
  64. package/src/programmers/IsPruneProgrammer.ts +73 -73
  65. package/src/programmers/RandomProgrammer.ts +578 -579
  66. package/src/programmers/helpers/AtomicPredicator.ts +31 -31
  67. package/src/programmers/helpers/CloneJoiner.ts +107 -107
  68. package/src/programmers/helpers/FunctionImporeter.ts +89 -89
  69. package/src/programmers/helpers/IExpressionEntry.ts +12 -12
  70. package/src/programmers/helpers/ProtobufUtil.ts +24 -24
  71. package/src/programmers/helpers/ProtobufWire.ts +34 -34
  72. package/src/programmers/helpers/PruneJoiner.ts +143 -143
  73. package/src/programmers/helpers/RandomJoiner.ts +173 -173
  74. package/src/programmers/helpers/RandomRanger.ts +208 -216
  75. package/src/programmers/helpers/StringifyPredicator.ts +13 -13
  76. package/src/programmers/helpers/UnionExplorer.ts +310 -310
  77. package/src/programmers/helpers/UnionPredicator.ts +81 -81
  78. package/src/programmers/helpers/disable_function_importer_declare.ts +27 -27
  79. package/src/programmers/internal/application_alias.ts +66 -66
  80. package/src/programmers/internal/application_array.ts +30 -30
  81. package/src/programmers/internal/application_constant.ts +26 -26
  82. package/src/programmers/internal/application_default.ts +17 -17
  83. package/src/programmers/internal/application_default_string.ts +33 -33
  84. package/src/programmers/internal/application_native.ts +39 -39
  85. package/src/programmers/internal/application_number.ts +81 -77
  86. package/src/programmers/internal/application_object.ts +165 -165
  87. package/src/programmers/internal/application_resolved.ts +55 -55
  88. package/src/programmers/internal/application_schema.ts +157 -157
  89. package/src/programmers/internal/application_string.ts +44 -44
  90. package/src/programmers/internal/application_templates.ts +25 -25
  91. package/src/programmers/internal/application_tuple.ts +57 -57
  92. package/src/programmers/internal/check_array.ts +30 -30
  93. package/src/programmers/internal/check_array_length.ts +35 -35
  94. package/src/programmers/internal/check_bigint.ts +110 -92
  95. package/src/programmers/internal/check_custom.ts +31 -31
  96. package/src/programmers/internal/check_number.ts +258 -230
  97. package/src/programmers/internal/check_string.ts +25 -25
  98. package/src/programmers/internal/check_string_tags.ts +67 -67
  99. package/src/programmers/internal/check_template.ts +56 -56
  100. package/src/programmers/internal/check_union_array_like.ts +329 -329
  101. package/src/programmers/internal/decode_union_object.ts +84 -84
  102. package/src/programmers/internal/feature_object_entries.ts +63 -63
  103. package/src/programmers/internal/get_comment_tags.ts +23 -23
  104. package/src/programmers/internal/metadata_to_pattern.ts +34 -34
  105. package/src/programmers/internal/prune_object_properties.ts +60 -60
  106. package/src/programmers/internal/random_custom.ts +29 -29
  107. package/src/programmers/internal/stringify_regular_properties.ts +83 -83
  108. package/src/programmers/internal/template_to_pattern.ts +15 -15
  109. package/src/programmers/internal/wrap_metadata_rest_tuple.ts +16 -16
  110. package/src/programmers/json/JsonApplicationProgrammer.ts +47 -47
  111. package/src/programmers/json/JsonAssertParseProgrammer.ts +66 -66
  112. package/src/programmers/json/JsonAssertStringifyProgrammer.ts +66 -66
  113. package/src/programmers/json/JsonIsParseProgrammer.ts +72 -72
  114. package/src/programmers/json/JsonIsStringifyProgrammer.ts +76 -76
  115. package/src/programmers/json/JsonStringifyProgrammer.ts +987 -987
  116. package/src/programmers/json/JsonValidateParseProgrammer.ts +70 -70
  117. package/src/programmers/json/JsonValidateStringifyProgrammer.ts +84 -84
  118. package/src/programmers/misc/MiscAssertCloneProgrammer.ts +71 -71
  119. package/src/programmers/misc/MiscAssertPruneProgrammer.ts +68 -68
  120. package/src/programmers/misc/MiscCloneProgrammer.ts +587 -587
  121. package/src/programmers/misc/MiscIsCloneProgrammer.ts +78 -78
  122. package/src/programmers/misc/MiscLiteralsProgrammer.ts +64 -64
  123. package/src/programmers/misc/MiscPruneProgrammer.ts +542 -542
  124. package/src/programmers/misc/MiscValidateCloneProgrammer.ts +85 -85
  125. package/src/programmers/misc/MiscValidatePruneProgrammer.ts +78 -78
  126. package/src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts +69 -69
  127. package/src/programmers/protobuf/ProtobufAssertEncodeProgrammer.ts +66 -66
  128. package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +38 -38
  129. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +920 -921
  130. package/src/programmers/protobuf/ProtobufIsDecodeProgrammer.ts +75 -75
  131. package/src/programmers/protobuf/ProtobufIsEncodeProgrammer.ts +76 -76
  132. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +178 -178
  133. package/src/programmers/protobuf/ProtobufValidateDecodeProgrammer.ts +83 -83
  134. package/src/programmers/protobuf/ProtobufValidateEncodeProgrammer.ts +86 -86
  135. package/src/protobuf.ts +239 -239
  136. package/src/schemas/json/IJsonApplication.ts +8 -8
  137. package/src/schemas/json/IJsonComponents.ts +33 -33
  138. package/src/schemas/json/IJsonSchema.ts +133 -133
  139. package/src/schemas/metadata/ICommentTag.ts +4 -4
  140. package/src/schemas/metadata/IJsDocTagInfo.ts +10 -10
  141. package/src/schemas/metadata/IMetadata.ts +28 -28
  142. package/src/schemas/metadata/IMetadataAlias.ts +14 -14
  143. package/src/schemas/metadata/IMetadataApplication.ts +7 -7
  144. package/src/schemas/metadata/IMetadataArray.ts +10 -10
  145. package/src/schemas/metadata/IMetadataCollection.ts +11 -11
  146. package/src/schemas/metadata/IMetadataConstant.ts +16 -16
  147. package/src/schemas/metadata/IMetadataDictionary.ts +14 -14
  148. package/src/schemas/metadata/IMetadataEntry.ts +6 -6
  149. package/src/schemas/metadata/IMetadataObject.ts +18 -18
  150. package/src/schemas/metadata/IMetadataProperty.ts +11 -11
  151. package/src/schemas/metadata/IMetadataResolved.ts +6 -6
  152. package/src/schemas/metadata/IMetadataTag.ts +112 -113
  153. package/src/schemas/metadata/IMetadataTuple.ts +10 -10
  154. package/src/schemas/metadata/Metadata.ts +637 -637
  155. package/src/schemas/metadata/MetadataAlias.ts +66 -66
  156. package/src/schemas/metadata/MetadataArray.ts +55 -55
  157. package/src/schemas/metadata/MetadataConstant.ts +3 -3
  158. package/src/schemas/metadata/MetadataObject.ts +139 -139
  159. package/src/schemas/metadata/MetadataProperty.ts +64 -64
  160. package/src/schemas/metadata/MetadataResolved.ts +51 -51
  161. package/src/schemas/metadata/MetadataTuple.ts +58 -58
  162. package/src/transformers/CallExpressionTransformer.ts +240 -240
  163. package/src/transformers/features/AssertTransformer.ts +11 -11
  164. package/src/transformers/features/CreateAssertTransformer.ts +13 -13
  165. package/src/transformers/features/CreateIsTransformer.ts +11 -11
  166. package/src/transformers/features/CreateRandomTransformer.ts +39 -39
  167. package/src/transformers/features/CreateValidateTransformer.ts +13 -13
  168. package/src/transformers/features/IsTransformer.ts +11 -11
  169. package/src/transformers/features/RandomTransformer.ts +42 -42
  170. package/src/transformers/features/ValidateTransformer.ts +11 -11
  171. package/src/transformers/features/json/JsonApplicationTransformer.ts +111 -111
  172. package/src/transformers/features/json/JsonAssertParseTransformer.ts +10 -10
  173. package/src/transformers/features/json/JsonAssertStringifyTransformer.ts +10 -10
  174. package/src/transformers/features/json/JsonCreateAssertParseTransformer.ts +10 -10
  175. package/src/transformers/features/json/JsonCreateAssertStringifyTransformer.ts +12 -12
  176. package/src/transformers/features/json/JsonCreateIsParseTransformer.ts +9 -9
  177. package/src/transformers/features/json/JsonCreateIsStringifyTransformer.ts +10 -10
  178. package/src/transformers/features/json/JsonCreateStringifyTransformer.ts +9 -9
  179. package/src/transformers/features/json/JsonCreateValidateParseTransformer.ts +10 -10
  180. package/src/transformers/features/json/JsonCreateValidateStringifyProgrammer.ts +12 -12
  181. package/src/transformers/features/json/JsonIsParseTransformer.ts +9 -9
  182. package/src/transformers/features/json/JsonIsStringifyTransformer.ts +10 -10
  183. package/src/transformers/features/json/JsonStringifyTransformer.ts +9 -9
  184. package/src/transformers/features/json/JsonValidateParseTransformer.ts +10 -10
  185. package/src/transformers/features/json/JsonValidateStringifyTransformer.ts +10 -10
  186. package/src/transformers/features/misc/MetadataTransformer.ts +53 -53
  187. package/src/transformers/features/misc/MiscAssertCloneTransformer.ts +10 -10
  188. package/src/transformers/features/misc/MiscAssertPruneTransformer.ts +10 -10
  189. package/src/transformers/features/misc/MiscCloneTransformer.ts +9 -9
  190. package/src/transformers/features/misc/MiscCreateAssertCloneTransformer.ts +10 -10
  191. package/src/transformers/features/misc/MiscCreateAssertPruneTransformer.ts +10 -10
  192. package/src/transformers/features/misc/MiscCreateCloneTransformer.ts +9 -9
  193. package/src/transformers/features/misc/MiscCreateIsCloneTransformer.ts +9 -9
  194. package/src/transformers/features/misc/MiscCreateIsPruneTransformer.ts +9 -9
  195. package/src/transformers/features/misc/MiscCreatePruneTransformer.ts +9 -9
  196. package/src/transformers/features/misc/MiscCreateValidateCloneTransformer.ts +10 -10
  197. package/src/transformers/features/misc/MiscCreateValidatePruneTransformer.ts +10 -10
  198. package/src/transformers/features/misc/MiscIsCloneTransformer.ts +9 -9
  199. package/src/transformers/features/misc/MiscIsPruneTransformer.ts +9 -9
  200. package/src/transformers/features/misc/MiscLiteralsTransformer.ts +28 -28
  201. package/src/transformers/features/misc/MiscPruneTransformer.ts +9 -9
  202. package/src/transformers/features/misc/MiscValidateCloneTransformer.ts +10 -10
  203. package/src/transformers/features/misc/MiscValidatePruneTransformer.ts +10 -10
  204. package/src/transformers/features/protobuf/CreateProtobufAssertDecodeTransformer.ts +12 -12
  205. package/src/transformers/features/protobuf/CreateProtobufAssertEncodeTransformer.ts +12 -12
  206. package/src/transformers/features/protobuf/CreateProtobufDecodeTransformer.ts +9 -9
  207. package/src/transformers/features/protobuf/CreateProtobufEncodeTransformer.ts +9 -9
  208. package/src/transformers/features/protobuf/CreateProtobufIsDecodeTransformer.ts +12 -12
  209. package/src/transformers/features/protobuf/CreateProtobufIsEncodeTransformer.ts +12 -12
  210. package/src/transformers/features/protobuf/CreateProtobufValidateDecodeTransformer.ts +12 -12
  211. package/src/transformers/features/protobuf/CreateProtobufValidateEncodeTransformer.ts +12 -12
  212. package/src/transformers/features/protobuf/ProtobufAssertDecodeTransformer.ts +10 -10
  213. package/src/transformers/features/protobuf/ProtobufAssertEncodeTransformer.ts +10 -10
  214. package/src/transformers/features/protobuf/ProtobufDecodeTransformer.ts +10 -10
  215. package/src/transformers/features/protobuf/ProtobufEncodeTransformer.ts +10 -10
  216. package/src/transformers/features/protobuf/ProtobufIsDecodeTransformer.ts +10 -10
  217. package/src/transformers/features/protobuf/ProtobufIsEncodeTransformer.ts +10 -10
  218. package/src/transformers/features/protobuf/ProtobufMessageTransformer.ts +31 -31
  219. package/src/transformers/features/protobuf/ProtobufValidateDecodeTransformer.ts +12 -12
  220. package/src/transformers/features/protobuf/ProtobufValidateEncodeTransformer.ts +12 -12
  221. package/src/utils/NameEncoder.ts +32 -32
package/src/protobuf.ts CHANGED
@@ -1,239 +1,239 @@
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
+ 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,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
+ }