@latticexyz/schema-type 1.40.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.
@@ -0,0 +1,643 @@
1
+ // WARNING: SchemaType enum MUST mirror the solidity version!
2
+ // WARNING: SchemaType methods use hardcoded enum indexes, review them after any changes to the enum
3
+ export enum SchemaType {
4
+ UINT8,
5
+ UINT16,
6
+ UINT24,
7
+ UINT32,
8
+ UINT40,
9
+ UINT48,
10
+ UINT56,
11
+ UINT64,
12
+ UINT72,
13
+ UINT80,
14
+ UINT88,
15
+ UINT96,
16
+ UINT104,
17
+ UINT112,
18
+ UINT120,
19
+ UINT128,
20
+ UINT136,
21
+ UINT144,
22
+ UINT152,
23
+ UINT160,
24
+ UINT168,
25
+ UINT176,
26
+ UINT184,
27
+ UINT192,
28
+ UINT200,
29
+ UINT208,
30
+ UINT216,
31
+ UINT224,
32
+ UINT232,
33
+ UINT240,
34
+ UINT248,
35
+ UINT256,
36
+ INT8,
37
+ INT16,
38
+ INT24,
39
+ INT32,
40
+ INT40,
41
+ INT48,
42
+ INT56,
43
+ INT64,
44
+ INT72,
45
+ INT80,
46
+ INT88,
47
+ INT96,
48
+ INT104,
49
+ INT112,
50
+ INT120,
51
+ INT128,
52
+ INT136,
53
+ INT144,
54
+ INT152,
55
+ INT160,
56
+ INT168,
57
+ INT176,
58
+ INT184,
59
+ INT192,
60
+ INT200,
61
+ INT208,
62
+ INT216,
63
+ INT224,
64
+ INT232,
65
+ INT240,
66
+ INT248,
67
+ INT256,
68
+ BYTES1,
69
+ BYTES2,
70
+ BYTES3,
71
+ BYTES4,
72
+ BYTES5,
73
+ BYTES6,
74
+ BYTES7,
75
+ BYTES8,
76
+ BYTES9,
77
+ BYTES10,
78
+ BYTES11,
79
+ BYTES12,
80
+ BYTES13,
81
+ BYTES14,
82
+ BYTES15,
83
+ BYTES16,
84
+ BYTES17,
85
+ BYTES18,
86
+ BYTES19,
87
+ BYTES20,
88
+ BYTES21,
89
+ BYTES22,
90
+ BYTES23,
91
+ BYTES24,
92
+ BYTES25,
93
+ BYTES26,
94
+ BYTES27,
95
+ BYTES28,
96
+ BYTES29,
97
+ BYTES30,
98
+ BYTES31,
99
+ BYTES32,
100
+ BOOL,
101
+ ADDRESS,
102
+ UINT8_ARRAY,
103
+ UINT16_ARRAY,
104
+ UINT24_ARRAY,
105
+ UINT32_ARRAY,
106
+ UINT40_ARRAY,
107
+ UINT48_ARRAY,
108
+ UINT56_ARRAY,
109
+ UINT64_ARRAY,
110
+ UINT72_ARRAY,
111
+ UINT80_ARRAY,
112
+ UINT88_ARRAY,
113
+ UINT96_ARRAY,
114
+ UINT104_ARRAY,
115
+ UINT112_ARRAY,
116
+ UINT120_ARRAY,
117
+ UINT128_ARRAY,
118
+ UINT136_ARRAY,
119
+ UINT144_ARRAY,
120
+ UINT152_ARRAY,
121
+ UINT160_ARRAY,
122
+ UINT168_ARRAY,
123
+ UINT176_ARRAY,
124
+ UINT184_ARRAY,
125
+ UINT192_ARRAY,
126
+ UINT200_ARRAY,
127
+ UINT208_ARRAY,
128
+ UINT216_ARRAY,
129
+ UINT224_ARRAY,
130
+ UINT232_ARRAY,
131
+ UINT240_ARRAY,
132
+ UINT248_ARRAY,
133
+ UINT256_ARRAY,
134
+ INT8_ARRAY,
135
+ INT16_ARRAY,
136
+ INT24_ARRAY,
137
+ INT32_ARRAY,
138
+ INT40_ARRAY,
139
+ INT48_ARRAY,
140
+ INT56_ARRAY,
141
+ INT64_ARRAY,
142
+ INT72_ARRAY,
143
+ INT80_ARRAY,
144
+ INT88_ARRAY,
145
+ INT96_ARRAY,
146
+ INT104_ARRAY,
147
+ INT112_ARRAY,
148
+ INT120_ARRAY,
149
+ INT128_ARRAY,
150
+ INT136_ARRAY,
151
+ INT144_ARRAY,
152
+ INT152_ARRAY,
153
+ INT160_ARRAY,
154
+ INT168_ARRAY,
155
+ INT176_ARRAY,
156
+ INT184_ARRAY,
157
+ INT192_ARRAY,
158
+ INT200_ARRAY,
159
+ INT208_ARRAY,
160
+ INT216_ARRAY,
161
+ INT224_ARRAY,
162
+ INT232_ARRAY,
163
+ INT240_ARRAY,
164
+ INT248_ARRAY,
165
+ INT256_ARRAY,
166
+ BYTES1_ARRAY,
167
+ BYTES2_ARRAY,
168
+ BYTES3_ARRAY,
169
+ BYTES4_ARRAY,
170
+ BYTES5_ARRAY,
171
+ BYTES6_ARRAY,
172
+ BYTES7_ARRAY,
173
+ BYTES8_ARRAY,
174
+ BYTES9_ARRAY,
175
+ BYTES10_ARRAY,
176
+ BYTES11_ARRAY,
177
+ BYTES12_ARRAY,
178
+ BYTES13_ARRAY,
179
+ BYTES14_ARRAY,
180
+ BYTES15_ARRAY,
181
+ BYTES16_ARRAY,
182
+ BYTES17_ARRAY,
183
+ BYTES18_ARRAY,
184
+ BYTES19_ARRAY,
185
+ BYTES20_ARRAY,
186
+ BYTES21_ARRAY,
187
+ BYTES22_ARRAY,
188
+ BYTES23_ARRAY,
189
+ BYTES24_ARRAY,
190
+ BYTES25_ARRAY,
191
+ BYTES26_ARRAY,
192
+ BYTES27_ARRAY,
193
+ BYTES28_ARRAY,
194
+ BYTES29_ARRAY,
195
+ BYTES30_ARRAY,
196
+ BYTES31_ARRAY,
197
+ BYTES32_ARRAY,
198
+ BOOL_ARRAY,
199
+ ADDRESS_ARRAY,
200
+ BYTES,
201
+ STRING,
202
+ }
203
+
204
+ export function getStaticByteLength(schemaType: SchemaType) {
205
+ const val = schemaType.valueOf();
206
+ if (val < 32) {
207
+ // uint8-256
208
+ return val + 1;
209
+ } else if (val < 64) {
210
+ // int8-256, offset by 32
211
+ return val + 1 - 32;
212
+ } else if (val < 96) {
213
+ // bytes1-32, offset by 64
214
+ return val + 1 - 64;
215
+ }
216
+
217
+ // Other static types
218
+ if (schemaType == SchemaType.BOOL) {
219
+ return 1;
220
+ } else if (schemaType == SchemaType.ADDRESS) {
221
+ return 20;
222
+ }
223
+
224
+ // Return 0 for all dynamic types
225
+ return 0;
226
+ }
227
+
228
+ export const SchemaTypeId: Record<SchemaType, string> = {
229
+ [SchemaType.UINT8]: "uint8",
230
+ [SchemaType.UINT16]: "uint16",
231
+ [SchemaType.UINT24]: "uint24",
232
+ [SchemaType.UINT32]: "uint32",
233
+ [SchemaType.UINT40]: "uint40",
234
+ [SchemaType.UINT48]: "uint48",
235
+ [SchemaType.UINT56]: "uint56",
236
+ [SchemaType.UINT64]: "uint64",
237
+ [SchemaType.UINT72]: "uint72",
238
+ [SchemaType.UINT80]: "uint80",
239
+ [SchemaType.UINT88]: "uint88",
240
+ [SchemaType.UINT96]: "uint96",
241
+ [SchemaType.UINT104]: "uint104",
242
+ [SchemaType.UINT112]: "uint112",
243
+ [SchemaType.UINT120]: "uint120",
244
+ [SchemaType.UINT128]: "uint128",
245
+ [SchemaType.UINT136]: "uint136",
246
+ [SchemaType.UINT144]: "uint144",
247
+ [SchemaType.UINT152]: "uint152",
248
+ [SchemaType.UINT160]: "uint160",
249
+ [SchemaType.UINT168]: "uint168",
250
+ [SchemaType.UINT176]: "uint176",
251
+ [SchemaType.UINT184]: "uint184",
252
+ [SchemaType.UINT192]: "uint192",
253
+ [SchemaType.UINT200]: "uint200",
254
+ [SchemaType.UINT208]: "uint208",
255
+ [SchemaType.UINT216]: "uint216",
256
+ [SchemaType.UINT224]: "uint224",
257
+ [SchemaType.UINT232]: "uint232",
258
+ [SchemaType.UINT240]: "uint240",
259
+ [SchemaType.UINT248]: "uint248",
260
+ [SchemaType.UINT256]: "uint256",
261
+
262
+ [SchemaType.INT8]: "int8",
263
+ [SchemaType.INT16]: "int16",
264
+ [SchemaType.INT24]: "int24",
265
+ [SchemaType.INT32]: "int32",
266
+ [SchemaType.INT40]: "int40",
267
+ [SchemaType.INT48]: "int48",
268
+ [SchemaType.INT56]: "int56",
269
+ [SchemaType.INT64]: "int64",
270
+ [SchemaType.INT72]: "int72",
271
+ [SchemaType.INT80]: "int80",
272
+ [SchemaType.INT88]: "int88",
273
+ [SchemaType.INT96]: "int96",
274
+ [SchemaType.INT104]: "int104",
275
+ [SchemaType.INT112]: "int112",
276
+ [SchemaType.INT120]: "int120",
277
+ [SchemaType.INT128]: "int128",
278
+ [SchemaType.INT136]: "int136",
279
+ [SchemaType.INT144]: "int144",
280
+ [SchemaType.INT152]: "int152",
281
+ [SchemaType.INT160]: "int160",
282
+ [SchemaType.INT168]: "int168",
283
+ [SchemaType.INT176]: "int176",
284
+ [SchemaType.INT184]: "int184",
285
+ [SchemaType.INT192]: "int192",
286
+ [SchemaType.INT200]: "int200",
287
+ [SchemaType.INT208]: "int208",
288
+ [SchemaType.INT216]: "int216",
289
+ [SchemaType.INT224]: "int224",
290
+ [SchemaType.INT232]: "int232",
291
+ [SchemaType.INT240]: "int240",
292
+ [SchemaType.INT248]: "int248",
293
+ [SchemaType.INT256]: "int256",
294
+
295
+ [SchemaType.BYTES1]: "bytes1",
296
+ [SchemaType.BYTES2]: "bytes2",
297
+ [SchemaType.BYTES3]: "bytes3",
298
+ [SchemaType.BYTES4]: "bytes4",
299
+ [SchemaType.BYTES5]: "bytes5",
300
+ [SchemaType.BYTES6]: "bytes6",
301
+ [SchemaType.BYTES7]: "bytes7",
302
+ [SchemaType.BYTES8]: "bytes8",
303
+ [SchemaType.BYTES9]: "bytes9",
304
+ [SchemaType.BYTES10]: "bytes10",
305
+ [SchemaType.BYTES11]: "bytes11",
306
+ [SchemaType.BYTES12]: "bytes12",
307
+ [SchemaType.BYTES13]: "bytes13",
308
+ [SchemaType.BYTES14]: "bytes14",
309
+ [SchemaType.BYTES15]: "bytes15",
310
+ [SchemaType.BYTES16]: "bytes16",
311
+ [SchemaType.BYTES17]: "bytes17",
312
+ [SchemaType.BYTES18]: "bytes18",
313
+ [SchemaType.BYTES19]: "bytes19",
314
+ [SchemaType.BYTES20]: "bytes20",
315
+ [SchemaType.BYTES21]: "bytes21",
316
+ [SchemaType.BYTES22]: "bytes22",
317
+ [SchemaType.BYTES23]: "bytes23",
318
+ [SchemaType.BYTES24]: "bytes24",
319
+ [SchemaType.BYTES25]: "bytes25",
320
+ [SchemaType.BYTES26]: "bytes26",
321
+ [SchemaType.BYTES27]: "bytes27",
322
+ [SchemaType.BYTES28]: "bytes28",
323
+ [SchemaType.BYTES29]: "bytes29",
324
+ [SchemaType.BYTES30]: "bytes30",
325
+ [SchemaType.BYTES31]: "bytes31",
326
+ [SchemaType.BYTES32]: "bytes32",
327
+
328
+ [SchemaType.BOOL]: "bool",
329
+ [SchemaType.ADDRESS]: "address",
330
+
331
+ [SchemaType.UINT8_ARRAY]: "uint8[]",
332
+ [SchemaType.UINT16_ARRAY]: "uint16[]",
333
+ [SchemaType.UINT24_ARRAY]: "uint24[]",
334
+ [SchemaType.UINT32_ARRAY]: "uint32[]",
335
+ [SchemaType.UINT40_ARRAY]: "uint40[]",
336
+ [SchemaType.UINT48_ARRAY]: "uint48[]",
337
+ [SchemaType.UINT56_ARRAY]: "uint56[]",
338
+ [SchemaType.UINT64_ARRAY]: "uint64[]",
339
+ [SchemaType.UINT72_ARRAY]: "uint72[]",
340
+ [SchemaType.UINT80_ARRAY]: "uint80[]",
341
+ [SchemaType.UINT88_ARRAY]: "uint88[]",
342
+ [SchemaType.UINT96_ARRAY]: "uint96[]",
343
+ [SchemaType.UINT104_ARRAY]: "uint104[]",
344
+ [SchemaType.UINT112_ARRAY]: "uint112[]",
345
+ [SchemaType.UINT120_ARRAY]: "uint120[]",
346
+ [SchemaType.UINT128_ARRAY]: "uint128[]",
347
+ [SchemaType.UINT136_ARRAY]: "uint136[]",
348
+ [SchemaType.UINT144_ARRAY]: "uint144[]",
349
+ [SchemaType.UINT152_ARRAY]: "uint152[]",
350
+ [SchemaType.UINT160_ARRAY]: "uint160[]",
351
+ [SchemaType.UINT168_ARRAY]: "uint168[]",
352
+ [SchemaType.UINT176_ARRAY]: "uint176[]",
353
+ [SchemaType.UINT184_ARRAY]: "uint184[]",
354
+ [SchemaType.UINT192_ARRAY]: "uint192[]",
355
+ [SchemaType.UINT200_ARRAY]: "uint200[]",
356
+ [SchemaType.UINT208_ARRAY]: "uint208[]",
357
+ [SchemaType.UINT216_ARRAY]: "uint216[]",
358
+ [SchemaType.UINT224_ARRAY]: "uint224[]",
359
+ [SchemaType.UINT232_ARRAY]: "uint232[]",
360
+ [SchemaType.UINT240_ARRAY]: "uint240[]",
361
+ [SchemaType.UINT248_ARRAY]: "uint248[]",
362
+ [SchemaType.UINT256_ARRAY]: "uint256[]",
363
+
364
+ [SchemaType.INT8_ARRAY]: "int8[]",
365
+ [SchemaType.INT16_ARRAY]: "int16[]",
366
+ [SchemaType.INT24_ARRAY]: "int24[]",
367
+ [SchemaType.INT32_ARRAY]: "int32[]",
368
+ [SchemaType.INT40_ARRAY]: "int40[]",
369
+ [SchemaType.INT48_ARRAY]: "int48[]",
370
+ [SchemaType.INT56_ARRAY]: "int56[]",
371
+ [SchemaType.INT64_ARRAY]: "int64[]",
372
+ [SchemaType.INT72_ARRAY]: "int72[]",
373
+ [SchemaType.INT80_ARRAY]: "int80[]",
374
+ [SchemaType.INT88_ARRAY]: "int88[]",
375
+ [SchemaType.INT96_ARRAY]: "int96[]",
376
+ [SchemaType.INT104_ARRAY]: "int104[]",
377
+ [SchemaType.INT112_ARRAY]: "int112[]",
378
+ [SchemaType.INT120_ARRAY]: "int120[]",
379
+ [SchemaType.INT128_ARRAY]: "int128[]",
380
+ [SchemaType.INT136_ARRAY]: "int136[]",
381
+ [SchemaType.INT144_ARRAY]: "int144[]",
382
+ [SchemaType.INT152_ARRAY]: "int152[]",
383
+ [SchemaType.INT160_ARRAY]: "int160[]",
384
+ [SchemaType.INT168_ARRAY]: "int168[]",
385
+ [SchemaType.INT176_ARRAY]: "int176[]",
386
+ [SchemaType.INT184_ARRAY]: "int184[]",
387
+ [SchemaType.INT192_ARRAY]: "int192[]",
388
+ [SchemaType.INT200_ARRAY]: "int200[]",
389
+ [SchemaType.INT208_ARRAY]: "int208[]",
390
+ [SchemaType.INT216_ARRAY]: "int216[]",
391
+ [SchemaType.INT224_ARRAY]: "int224[]",
392
+ [SchemaType.INT232_ARRAY]: "int232[]",
393
+ [SchemaType.INT240_ARRAY]: "int240[]",
394
+ [SchemaType.INT248_ARRAY]: "int248[]",
395
+ [SchemaType.INT256_ARRAY]: "int256[]",
396
+
397
+ [SchemaType.BYTES1_ARRAY]: "bytes1[]",
398
+ [SchemaType.BYTES2_ARRAY]: "bytes2[]",
399
+ [SchemaType.BYTES3_ARRAY]: "bytes3[]",
400
+ [SchemaType.BYTES4_ARRAY]: "bytes4[]",
401
+ [SchemaType.BYTES5_ARRAY]: "bytes5[]",
402
+ [SchemaType.BYTES6_ARRAY]: "bytes6[]",
403
+ [SchemaType.BYTES7_ARRAY]: "bytes7[]",
404
+ [SchemaType.BYTES8_ARRAY]: "bytes8[]",
405
+ [SchemaType.BYTES9_ARRAY]: "bytes9[]",
406
+ [SchemaType.BYTES10_ARRAY]: "bytes10[]",
407
+ [SchemaType.BYTES11_ARRAY]: "bytes11[]",
408
+ [SchemaType.BYTES12_ARRAY]: "bytes12[]",
409
+ [SchemaType.BYTES13_ARRAY]: "bytes13[]",
410
+ [SchemaType.BYTES14_ARRAY]: "bytes14[]",
411
+ [SchemaType.BYTES15_ARRAY]: "bytes15[]",
412
+ [SchemaType.BYTES16_ARRAY]: "bytes16[]",
413
+ [SchemaType.BYTES17_ARRAY]: "bytes17[]",
414
+ [SchemaType.BYTES18_ARRAY]: "bytes18[]",
415
+ [SchemaType.BYTES19_ARRAY]: "bytes19[]",
416
+ [SchemaType.BYTES20_ARRAY]: "bytes20[]",
417
+ [SchemaType.BYTES21_ARRAY]: "bytes21[]",
418
+ [SchemaType.BYTES22_ARRAY]: "bytes22[]",
419
+ [SchemaType.BYTES23_ARRAY]: "bytes23[]",
420
+ [SchemaType.BYTES24_ARRAY]: "bytes24[]",
421
+ [SchemaType.BYTES25_ARRAY]: "bytes25[]",
422
+ [SchemaType.BYTES26_ARRAY]: "bytes26[]",
423
+ [SchemaType.BYTES27_ARRAY]: "bytes27[]",
424
+ [SchemaType.BYTES28_ARRAY]: "bytes28[]",
425
+ [SchemaType.BYTES29_ARRAY]: "bytes29[]",
426
+ [SchemaType.BYTES30_ARRAY]: "bytes30[]",
427
+ [SchemaType.BYTES31_ARRAY]: "bytes31[]",
428
+ [SchemaType.BYTES32_ARRAY]: "bytes32[]",
429
+
430
+ [SchemaType.BOOL_ARRAY]: "bool[]",
431
+ [SchemaType.ADDRESS_ARRAY]: "address[]",
432
+
433
+ [SchemaType.BYTES]: "bytes",
434
+ [SchemaType.STRING]: "string",
435
+ };
436
+
437
+ export type ArraySchemaType =
438
+ | SchemaType.UINT8_ARRAY
439
+ | SchemaType.UINT16_ARRAY
440
+ | SchemaType.UINT24_ARRAY
441
+ | SchemaType.UINT32_ARRAY
442
+ | SchemaType.UINT40_ARRAY
443
+ | SchemaType.UINT48_ARRAY
444
+ | SchemaType.UINT56_ARRAY
445
+ | SchemaType.UINT64_ARRAY
446
+ | SchemaType.UINT72_ARRAY
447
+ | SchemaType.UINT80_ARRAY
448
+ | SchemaType.UINT88_ARRAY
449
+ | SchemaType.UINT96_ARRAY
450
+ | SchemaType.UINT104_ARRAY
451
+ | SchemaType.UINT112_ARRAY
452
+ | SchemaType.UINT120_ARRAY
453
+ | SchemaType.UINT128_ARRAY
454
+ | SchemaType.UINT136_ARRAY
455
+ | SchemaType.UINT144_ARRAY
456
+ | SchemaType.UINT152_ARRAY
457
+ | SchemaType.UINT160_ARRAY
458
+ | SchemaType.UINT168_ARRAY
459
+ | SchemaType.UINT176_ARRAY
460
+ | SchemaType.UINT184_ARRAY
461
+ | SchemaType.UINT192_ARRAY
462
+ | SchemaType.UINT200_ARRAY
463
+ | SchemaType.UINT208_ARRAY
464
+ | SchemaType.UINT216_ARRAY
465
+ | SchemaType.UINT224_ARRAY
466
+ | SchemaType.UINT232_ARRAY
467
+ | SchemaType.UINT240_ARRAY
468
+ | SchemaType.UINT248_ARRAY
469
+ | SchemaType.UINT256_ARRAY
470
+ | SchemaType.INT8_ARRAY
471
+ | SchemaType.INT16_ARRAY
472
+ | SchemaType.INT24_ARRAY
473
+ | SchemaType.INT32_ARRAY
474
+ | SchemaType.INT40_ARRAY
475
+ | SchemaType.INT48_ARRAY
476
+ | SchemaType.INT56_ARRAY
477
+ | SchemaType.INT64_ARRAY
478
+ | SchemaType.INT72_ARRAY
479
+ | SchemaType.INT80_ARRAY
480
+ | SchemaType.INT88_ARRAY
481
+ | SchemaType.INT96_ARRAY
482
+ | SchemaType.INT104_ARRAY
483
+ | SchemaType.INT112_ARRAY
484
+ | SchemaType.INT120_ARRAY
485
+ | SchemaType.INT128_ARRAY
486
+ | SchemaType.INT136_ARRAY
487
+ | SchemaType.INT144_ARRAY
488
+ | SchemaType.INT152_ARRAY
489
+ | SchemaType.INT160_ARRAY
490
+ | SchemaType.INT168_ARRAY
491
+ | SchemaType.INT176_ARRAY
492
+ | SchemaType.INT184_ARRAY
493
+ | SchemaType.INT192_ARRAY
494
+ | SchemaType.INT200_ARRAY
495
+ | SchemaType.INT208_ARRAY
496
+ | SchemaType.INT216_ARRAY
497
+ | SchemaType.INT224_ARRAY
498
+ | SchemaType.INT232_ARRAY
499
+ | SchemaType.INT240_ARRAY
500
+ | SchemaType.INT248_ARRAY
501
+ | SchemaType.INT256_ARRAY
502
+ | SchemaType.BYTES1_ARRAY
503
+ | SchemaType.BYTES2_ARRAY
504
+ | SchemaType.BYTES3_ARRAY
505
+ | SchemaType.BYTES4_ARRAY
506
+ | SchemaType.BYTES5_ARRAY
507
+ | SchemaType.BYTES6_ARRAY
508
+ | SchemaType.BYTES7_ARRAY
509
+ | SchemaType.BYTES8_ARRAY
510
+ | SchemaType.BYTES9_ARRAY
511
+ | SchemaType.BYTES10_ARRAY
512
+ | SchemaType.BYTES11_ARRAY
513
+ | SchemaType.BYTES12_ARRAY
514
+ | SchemaType.BYTES13_ARRAY
515
+ | SchemaType.BYTES14_ARRAY
516
+ | SchemaType.BYTES15_ARRAY
517
+ | SchemaType.BYTES16_ARRAY
518
+ | SchemaType.BYTES17_ARRAY
519
+ | SchemaType.BYTES18_ARRAY
520
+ | SchemaType.BYTES19_ARRAY
521
+ | SchemaType.BYTES20_ARRAY
522
+ | SchemaType.BYTES21_ARRAY
523
+ | SchemaType.BYTES22_ARRAY
524
+ | SchemaType.BYTES23_ARRAY
525
+ | SchemaType.BYTES24_ARRAY
526
+ | SchemaType.BYTES25_ARRAY
527
+ | SchemaType.BYTES26_ARRAY
528
+ | SchemaType.BYTES27_ARRAY
529
+ | SchemaType.BYTES28_ARRAY
530
+ | SchemaType.BYTES29_ARRAY
531
+ | SchemaType.BYTES30_ARRAY
532
+ | SchemaType.BYTES31_ARRAY
533
+ | SchemaType.BYTES32_ARRAY
534
+ | SchemaType.BOOL_ARRAY
535
+ | SchemaType.ADDRESS_ARRAY;
536
+
537
+ export const SchemaTypeArrayToElement = {
538
+ [SchemaType.UINT8_ARRAY]: SchemaType.UINT8,
539
+ [SchemaType.UINT16_ARRAY]: SchemaType.UINT16,
540
+ [SchemaType.UINT24_ARRAY]: SchemaType.UINT24,
541
+ [SchemaType.UINT32_ARRAY]: SchemaType.UINT32,
542
+ [SchemaType.UINT40_ARRAY]: SchemaType.UINT40,
543
+ [SchemaType.UINT48_ARRAY]: SchemaType.UINT48,
544
+ [SchemaType.UINT56_ARRAY]: SchemaType.UINT56,
545
+ [SchemaType.UINT64_ARRAY]: SchemaType.UINT64,
546
+ [SchemaType.UINT72_ARRAY]: SchemaType.UINT72,
547
+ [SchemaType.UINT80_ARRAY]: SchemaType.UINT80,
548
+ [SchemaType.UINT88_ARRAY]: SchemaType.UINT88,
549
+ [SchemaType.UINT96_ARRAY]: SchemaType.UINT96,
550
+ [SchemaType.UINT104_ARRAY]: SchemaType.UINT104,
551
+ [SchemaType.UINT112_ARRAY]: SchemaType.UINT112,
552
+ [SchemaType.UINT120_ARRAY]: SchemaType.UINT120,
553
+ [SchemaType.UINT128_ARRAY]: SchemaType.UINT128,
554
+ [SchemaType.UINT136_ARRAY]: SchemaType.UINT136,
555
+ [SchemaType.UINT144_ARRAY]: SchemaType.UINT144,
556
+ [SchemaType.UINT152_ARRAY]: SchemaType.UINT152,
557
+ [SchemaType.UINT160_ARRAY]: SchemaType.UINT160,
558
+ [SchemaType.UINT168_ARRAY]: SchemaType.UINT168,
559
+ [SchemaType.UINT176_ARRAY]: SchemaType.UINT176,
560
+ [SchemaType.UINT184_ARRAY]: SchemaType.UINT184,
561
+ [SchemaType.UINT192_ARRAY]: SchemaType.UINT192,
562
+ [SchemaType.UINT200_ARRAY]: SchemaType.UINT200,
563
+ [SchemaType.UINT208_ARRAY]: SchemaType.UINT208,
564
+ [SchemaType.UINT216_ARRAY]: SchemaType.UINT216,
565
+ [SchemaType.UINT224_ARRAY]: SchemaType.UINT224,
566
+ [SchemaType.UINT232_ARRAY]: SchemaType.UINT232,
567
+ [SchemaType.UINT240_ARRAY]: SchemaType.UINT240,
568
+ [SchemaType.UINT248_ARRAY]: SchemaType.UINT248,
569
+ [SchemaType.UINT256_ARRAY]: SchemaType.UINT256,
570
+
571
+ [SchemaType.INT8_ARRAY]: SchemaType.INT8,
572
+ [SchemaType.INT16_ARRAY]: SchemaType.INT16,
573
+ [SchemaType.INT24_ARRAY]: SchemaType.INT24,
574
+ [SchemaType.INT32_ARRAY]: SchemaType.INT32,
575
+ [SchemaType.INT40_ARRAY]: SchemaType.INT40,
576
+ [SchemaType.INT48_ARRAY]: SchemaType.INT48,
577
+ [SchemaType.INT56_ARRAY]: SchemaType.INT56,
578
+ [SchemaType.INT64_ARRAY]: SchemaType.INT64,
579
+ [SchemaType.INT72_ARRAY]: SchemaType.INT72,
580
+ [SchemaType.INT80_ARRAY]: SchemaType.INT80,
581
+ [SchemaType.INT88_ARRAY]: SchemaType.INT88,
582
+ [SchemaType.INT96_ARRAY]: SchemaType.INT96,
583
+ [SchemaType.INT104_ARRAY]: SchemaType.INT104,
584
+ [SchemaType.INT112_ARRAY]: SchemaType.INT112,
585
+ [SchemaType.INT120_ARRAY]: SchemaType.INT120,
586
+ [SchemaType.INT128_ARRAY]: SchemaType.INT128,
587
+ [SchemaType.INT136_ARRAY]: SchemaType.INT136,
588
+ [SchemaType.INT144_ARRAY]: SchemaType.INT144,
589
+ [SchemaType.INT152_ARRAY]: SchemaType.INT152,
590
+ [SchemaType.INT160_ARRAY]: SchemaType.INT160,
591
+ [SchemaType.INT168_ARRAY]: SchemaType.INT168,
592
+ [SchemaType.INT176_ARRAY]: SchemaType.INT176,
593
+ [SchemaType.INT184_ARRAY]: SchemaType.INT184,
594
+ [SchemaType.INT192_ARRAY]: SchemaType.INT192,
595
+ [SchemaType.INT200_ARRAY]: SchemaType.INT200,
596
+ [SchemaType.INT208_ARRAY]: SchemaType.INT208,
597
+ [SchemaType.INT216_ARRAY]: SchemaType.INT216,
598
+ [SchemaType.INT224_ARRAY]: SchemaType.INT224,
599
+ [SchemaType.INT232_ARRAY]: SchemaType.INT232,
600
+ [SchemaType.INT240_ARRAY]: SchemaType.INT240,
601
+ [SchemaType.INT248_ARRAY]: SchemaType.INT248,
602
+ [SchemaType.INT256_ARRAY]: SchemaType.INT256,
603
+
604
+ [SchemaType.BYTES1_ARRAY]: SchemaType.BYTES1,
605
+ [SchemaType.BYTES2_ARRAY]: SchemaType.BYTES2,
606
+ [SchemaType.BYTES3_ARRAY]: SchemaType.BYTES3,
607
+ [SchemaType.BYTES4_ARRAY]: SchemaType.BYTES4,
608
+ [SchemaType.BYTES5_ARRAY]: SchemaType.BYTES5,
609
+ [SchemaType.BYTES6_ARRAY]: SchemaType.BYTES6,
610
+ [SchemaType.BYTES7_ARRAY]: SchemaType.BYTES7,
611
+ [SchemaType.BYTES8_ARRAY]: SchemaType.BYTES8,
612
+ [SchemaType.BYTES9_ARRAY]: SchemaType.BYTES9,
613
+ [SchemaType.BYTES10_ARRAY]: SchemaType.BYTES10,
614
+ [SchemaType.BYTES11_ARRAY]: SchemaType.BYTES11,
615
+ [SchemaType.BYTES12_ARRAY]: SchemaType.BYTES12,
616
+ [SchemaType.BYTES13_ARRAY]: SchemaType.BYTES13,
617
+ [SchemaType.BYTES14_ARRAY]: SchemaType.BYTES14,
618
+ [SchemaType.BYTES15_ARRAY]: SchemaType.BYTES15,
619
+ [SchemaType.BYTES16_ARRAY]: SchemaType.BYTES16,
620
+ [SchemaType.BYTES17_ARRAY]: SchemaType.BYTES17,
621
+ [SchemaType.BYTES18_ARRAY]: SchemaType.BYTES18,
622
+ [SchemaType.BYTES19_ARRAY]: SchemaType.BYTES19,
623
+ [SchemaType.BYTES20_ARRAY]: SchemaType.BYTES20,
624
+ [SchemaType.BYTES21_ARRAY]: SchemaType.BYTES21,
625
+ [SchemaType.BYTES22_ARRAY]: SchemaType.BYTES22,
626
+ [SchemaType.BYTES23_ARRAY]: SchemaType.BYTES23,
627
+ [SchemaType.BYTES24_ARRAY]: SchemaType.BYTES24,
628
+ [SchemaType.BYTES25_ARRAY]: SchemaType.BYTES25,
629
+ [SchemaType.BYTES26_ARRAY]: SchemaType.BYTES26,
630
+ [SchemaType.BYTES27_ARRAY]: SchemaType.BYTES27,
631
+ [SchemaType.BYTES28_ARRAY]: SchemaType.BYTES28,
632
+ [SchemaType.BYTES29_ARRAY]: SchemaType.BYTES29,
633
+ [SchemaType.BYTES30_ARRAY]: SchemaType.BYTES30,
634
+ [SchemaType.BYTES31_ARRAY]: SchemaType.BYTES31,
635
+ [SchemaType.BYTES32_ARRAY]: SchemaType.BYTES32,
636
+
637
+ [SchemaType.BOOL_ARRAY]: SchemaType.BOOL,
638
+ [SchemaType.ADDRESS_ARRAY]: SchemaType.ADDRESS,
639
+ } as {
640
+ [K in SchemaType]: K extends ArraySchemaType ? SchemaType : undefined;
641
+ };
642
+
643
+ export type DynamicSchemaType = ArraySchemaType | SchemaType.BYTES | SchemaType.STRING;