@@ -46,10 +46,10 @@ export const KNOWN_IMPORTS: KnownImports = {
46
46
} ,
47
47
} ,
48
48
'io-ts' : {
49
- string : ( ) => E . right ( { type : 'string' } ) ,
50
- number : ( ) => E . right ( { type : 'number' } ) ,
49
+ string : ( ) => E . right ( { type : 'string' , primitive : true } ) ,
50
+ number : ( ) => E . right ( { type : 'number' , primitive : true } ) ,
51
51
bigint : ( ) => E . right ( { type : 'number' } ) ,
52
- boolean : ( ) => E . right ( { type : 'boolean' } ) ,
52
+ boolean : ( ) => E . right ( { type : 'boolean' , primitive : true } ) ,
53
53
null : ( ) => E . right ( { type : 'null' } ) ,
54
54
nullType : ( ) => E . right ( { type : 'null' } ) ,
55
55
undefined : ( ) => E . right ( { type : 'undefined' } ) ,
@@ -143,11 +143,13 @@ export const KNOWN_IMPORTS: KnownImports = {
143
143
type : 'string' ,
144
144
format : 'number' ,
145
145
pattern : '^\\d+$' ,
146
+ decodedType : 'number' ,
146
147
} ) ,
147
148
NaturalFromString : ( ) =>
148
149
E . right ( {
149
150
type : 'string' ,
150
151
format : 'number' ,
152
+ decodedType : 'number' ,
151
153
} ) ,
152
154
Negative : ( ) =>
153
155
E . right ( {
@@ -161,6 +163,7 @@ export const KNOWN_IMPORTS: KnownImports = {
161
163
format : 'number' ,
162
164
maximum : 0 ,
163
165
exclusiveMaximum : true ,
166
+ decodedType : 'number' ,
164
167
} ) ,
165
168
NegativeInt : ( ) =>
166
169
E . right ( {
@@ -174,6 +177,7 @@ export const KNOWN_IMPORTS: KnownImports = {
174
177
format : 'number' ,
175
178
maximum : 0 ,
176
179
exclusiveMaximum : true ,
180
+ decodedType : 'number' ,
177
181
} ) ,
178
182
NonNegative : ( ) =>
179
183
E . right ( {
@@ -185,6 +189,7 @@ export const KNOWN_IMPORTS: KnownImports = {
185
189
type : 'string' ,
186
190
format : 'number' ,
187
191
minimum : 0 ,
192
+ decodedType : 'number' ,
188
193
} ) ,
189
194
NonNegativeInt : ( ) =>
190
195
E . right ( {
@@ -195,6 +200,7 @@ export const KNOWN_IMPORTS: KnownImports = {
195
200
E . right ( {
196
201
type : 'string' ,
197
202
format : 'number' ,
203
+ decodedType : 'number' ,
198
204
} ) ,
199
205
NonPositive : ( ) =>
200
206
E . right ( {
@@ -206,6 +212,7 @@ export const KNOWN_IMPORTS: KnownImports = {
206
212
type : 'string' ,
207
213
format : 'number' ,
208
214
maximum : 0 ,
215
+ decodedType : 'number' ,
209
216
} ) ,
210
217
NonPositiveInt : ( ) =>
211
218
E . right ( {
@@ -217,6 +224,7 @@ export const KNOWN_IMPORTS: KnownImports = {
217
224
type : 'string' ,
218
225
format : 'number' ,
219
226
maximum : 0 ,
227
+ decodedType : 'number' ,
220
228
} ) ,
221
229
NonZero : ( ) =>
222
230
E . right ( {
@@ -226,6 +234,7 @@ export const KNOWN_IMPORTS: KnownImports = {
226
234
E . right ( {
227
235
type : 'string' ,
228
236
format : 'number' ,
237
+ decodedType : 'number' ,
229
238
} ) ,
230
239
NonZeroInt : ( ) =>
231
240
E . right ( {
@@ -235,6 +244,7 @@ export const KNOWN_IMPORTS: KnownImports = {
235
244
E . right ( {
236
245
type : 'string' ,
237
246
format : 'number' ,
247
+ decodedType : 'number' ,
238
248
} ) ,
239
249
Positive : ( ) =>
240
250
E . right ( {
@@ -248,6 +258,7 @@ export const KNOWN_IMPORTS: KnownImports = {
248
258
format : 'number' ,
249
259
minimum : 0 ,
250
260
exclusiveMinimum : true ,
261
+ decodedType : 'number' ,
251
262
} ) ,
252
263
Zero : ( ) =>
253
264
E . right ( {
@@ -257,13 +268,15 @@ export const KNOWN_IMPORTS: KnownImports = {
257
268
E . right ( {
258
269
type : 'string' ,
259
270
format : 'number' ,
271
+ decodedType : 'number' ,
260
272
} ) ,
261
273
} ,
262
274
'io-ts-bigint' : {
263
275
BigIntFromString : ( ) =>
264
276
E . right ( {
265
277
type : 'string' ,
266
278
format : 'number' ,
279
+ decodedType : 'bigint' ,
267
280
} ) ,
268
281
NegativeBigInt : ( ) =>
269
282
E . right ( {
@@ -275,6 +288,7 @@ export const KNOWN_IMPORTS: KnownImports = {
275
288
type : 'string' ,
276
289
format : 'number' ,
277
290
maximum : - 1 ,
291
+ decodedType : 'bigint' ,
278
292
} ) ,
279
293
NonEmptyString : ( ) => E . right ( { type : 'string' , minLength : 1 } ) ,
280
294
NonNegativeBigInt : ( ) => E . right ( { type : 'number' , minimum : 0 } ) ,
@@ -283,6 +297,7 @@ export const KNOWN_IMPORTS: KnownImports = {
283
297
type : 'string' ,
284
298
format : 'number' ,
285
299
maximum : 0 ,
300
+ decodedType : 'bigint' ,
286
301
} ) ,
287
302
NonPositiveBigInt : ( ) =>
288
303
E . right ( {
@@ -294,28 +309,36 @@ export const KNOWN_IMPORTS: KnownImports = {
294
309
type : 'string' ,
295
310
format : 'number' ,
296
311
maximum : 0 ,
312
+ decodedType : 'bigint' ,
297
313
} ) ,
298
314
NonZeroBigInt : ( ) => E . right ( { type : 'number' } ) ,
299
315
NonZeroBigIntFromString : ( ) =>
300
316
E . right ( {
301
317
type : 'string' ,
302
318
format : 'number' ,
319
+ decodedType : 'bigint' ,
303
320
} ) ,
304
321
PositiveBigInt : ( ) => E . right ( { type : 'number' , minimum : 1 } ) ,
305
322
PositiveBigIntFromString : ( ) =>
306
323
E . right ( {
307
324
type : 'string' ,
308
325
format : 'number' ,
309
326
minimum : 1 ,
327
+ decodedType : 'bigint' ,
310
328
} ) ,
311
329
ZeroBigInt : ( ) => E . right ( { type : 'number' } ) ,
312
- ZeroBigIntFromString : ( ) => E . right ( { type : 'string' , format : 'number' } ) ,
330
+ ZeroBigIntFromString : ( ) =>
331
+ E . right ( { type : 'string' , format : 'number' , decodedType : 'bigint' } ) ,
313
332
} ,
314
333
'io-ts-types' : {
315
- NumberFromString : ( ) => E . right ( { type : 'string' , format : 'number' } ) ,
316
- BigIntFromString : ( ) => E . right ( { type : 'string' , format : 'number' } ) ,
317
- BooleanFromNumber : ( ) => E . right ( { type : 'number' , enum : [ 0 , 1 ] } ) ,
318
- BooleanFromString : ( ) => E . right ( { type : 'string' , enum : [ 'true' , 'false' ] } ) ,
334
+ NumberFromString : ( ) =>
335
+ E . right ( { type : 'string' , format : 'number' , decodedType : 'number' } ) ,
336
+ BigIntFromString : ( ) =>
337
+ E . right ( { type : 'string' , format : 'number' , decodedType : 'bigint' } ) ,
338
+ BooleanFromNumber : ( ) =>
339
+ E . right ( { type : 'number' , enum : [ 0 , 1 ] , decodedType : 'boolean' } ) ,
340
+ BooleanFromString : ( ) =>
341
+ E . right ( { type : 'string' , enum : [ 'true' , 'false' ] , decodedType : 'boolean' } ) ,
319
342
DateFromISOString : ( ) =>
320
343
E . right ( { type : 'string' , format : 'date-time' , title : 'ISO Date String' } ) ,
321
344
DateFromNumber : ( ) =>
@@ -332,7 +355,8 @@ export const KNOWN_IMPORTS: KnownImports = {
332
355
format : 'number' ,
333
356
description : 'Number of seconds since the Unix epoch' ,
334
357
} ) ,
335
- IntFromString : ( ) => E . right ( { type : 'string' , format : 'integer' } ) ,
358
+ IntFromString : ( ) =>
359
+ E . right ( { type : 'string' , format : 'integer' , decodedType : 'number' } ) ,
336
360
JsonFromString : ( ) => E . right ( { type : 'string' , title : 'JSON String' } ) ,
337
361
nonEmptyArray : ( _ , innerSchema ) =>
338
362
E . right ( { type : 'array' , items : innerSchema , minItems : 1 } ) ,
0 commit comments