@cdktn/hcl2cdk 0.24.0-pre.6 → 0.24.0-pre.60

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 (84) hide show
  1. package/.spec.swcrc +22 -0
  2. package/LICENSE +355 -0
  3. package/README.md +1 -1
  4. package/build/__tests__/jsii-rosetta-workarounds.test.js +2 -2
  5. package/build/expressions.js +3 -4
  6. package/build/function-bindings/functions.generated.d.ts +50 -1
  7. package/build/function-bindings/functions.generated.js +76 -4
  8. package/build/generation.js +2 -2
  9. package/build/index.d.ts +20 -20
  10. package/build/index.js +4 -4
  11. package/build/references.js +2 -3
  12. package/build/schema.d.ts +60 -60
  13. package/build/utils.d.ts +1 -1
  14. package/build/utils.js +3 -3
  15. package/jest.config.js +18 -11
  16. package/package.json +36 -25
  17. package/package.sh +1 -1
  18. package/src/__tests__/coerceType.test.ts +207 -0
  19. package/src/__tests__/expressionToTs.test.ts +1167 -0
  20. package/src/__tests__/expressions.test.ts +541 -0
  21. package/src/__tests__/findExpressionType.test.ts +112 -0
  22. package/src/__tests__/functions.test.ts +768 -0
  23. package/src/__tests__/generation.test.ts +72 -0
  24. package/src/__tests__/jsii-rosetta-workarounds.test.ts +145 -0
  25. package/src/__tests__/partialCode.test.ts +432 -0
  26. package/src/__tests__/terraformSchema.test.ts +107 -0
  27. package/src/__tests__/testHelpers.ts +11 -0
  28. package/src/coerceType.ts +261 -0
  29. package/src/dynamic-blocks.ts +61 -0
  30. package/src/expressions.ts +968 -0
  31. package/src/function-bindings/functions.generated.ts +1211 -0
  32. package/src/function-bindings/functions.ts +104 -0
  33. package/src/generation.ts +1189 -0
  34. package/src/index.ts +584 -0
  35. package/src/iteration.ts +156 -0
  36. package/src/jsii-rosetta-workarounds.ts +145 -0
  37. package/src/partialCode.ts +132 -0
  38. package/src/provider.ts +60 -0
  39. package/src/references.ts +193 -0
  40. package/src/schema.ts +74 -0
  41. package/src/terraformSchema.ts +182 -0
  42. package/src/types.ts +58 -0
  43. package/src/utils.ts +19 -0
  44. package/src/variables.ts +214 -0
  45. package/test/__snapshots__/backends.test.ts.snap +70 -0
  46. package/test/__snapshots__/externals.test.ts.snap +37 -0
  47. package/test/__snapshots__/granular-imports.test.ts.snap +180 -0
  48. package/test/__snapshots__/imports.test.ts.snap +159 -0
  49. package/test/__snapshots__/iteration.test.ts.snap +532 -0
  50. package/test/__snapshots__/jsiiLanguage.test.ts.snap +347 -0
  51. package/test/__snapshots__/locals.test.ts.snap +55 -0
  52. package/test/__snapshots__/modules.test.ts.snap +127 -0
  53. package/test/__snapshots__/outputs.test.ts.snap +77 -0
  54. package/test/__snapshots__/partialCode.test.ts.snap +120 -0
  55. package/test/__snapshots__/provider.test.ts.snap +128 -0
  56. package/test/__snapshots__/references.test.ts.snap +376 -0
  57. package/test/__snapshots__/resource-meta-properties.test.ts.snap +342 -0
  58. package/test/__snapshots__/resources.test.ts.snap +613 -0
  59. package/test/__snapshots__/tfExpressions.test.ts.snap +537 -0
  60. package/test/__snapshots__/typeCoercion.test.ts.snap +253 -0
  61. package/test/__snapshots__/variables.test.ts.snap +150 -0
  62. package/test/backends.test.ts +75 -0
  63. package/test/convertProject.test.ts +257 -0
  64. package/test/externals.test.ts +35 -0
  65. package/test/globalSetup.ts +224 -0
  66. package/test/globalTeardown.ts +11 -0
  67. package/test/granular-imports.test.ts +161 -0
  68. package/test/hcl2cdk.test.ts +88 -0
  69. package/test/helpers/convert.ts +543 -0
  70. package/test/helpers/tmp.ts +25 -0
  71. package/test/imports.test.ts +141 -0
  72. package/test/iteration.test.ts +342 -0
  73. package/test/jsiiLanguage.test.ts +73 -0
  74. package/test/locals.test.ts +47 -0
  75. package/test/modules.test.ts +143 -0
  76. package/test/outputs.test.ts +69 -0
  77. package/test/partialCode.test.ts +25 -0
  78. package/test/provider.test.ts +106 -0
  79. package/test/references.test.ts +287 -0
  80. package/test/resource-meta-properties.test.ts +288 -0
  81. package/test/resources.test.ts +551 -0
  82. package/test/tfExpressions.test.ts +300 -0
  83. package/test/typeCoercion.test.ts +154 -0
  84. package/test/variables.test.ts +96 -0
@@ -0,0 +1,1211 @@
1
+ // Copyright (c) HashiCorp, Inc
2
+ // SPDX-License-Identifier: MPL-2.0
3
+
4
+ // This file is generated by tools/generate-function-bindings.
5
+ // To update this file execute 'pnpm generate-function-bindings' in the root of the repository
6
+ export const functionsMapGenerated = {
7
+ abs: {
8
+ name: "abs",
9
+ returnType: "number",
10
+ parameters: [
11
+ {
12
+ type: "number",
13
+ },
14
+ ],
15
+ },
16
+ abspath: {
17
+ name: "abspath",
18
+ returnType: "string",
19
+ parameters: [
20
+ {
21
+ type: "string",
22
+ },
23
+ ],
24
+ },
25
+ alltrue: {
26
+ name: "alltrue",
27
+ returnType: "bool",
28
+ parameters: [
29
+ {
30
+ type: ["list", "bool"],
31
+ },
32
+ ],
33
+ },
34
+ anytrue: {
35
+ name: "anytrue",
36
+ returnType: "bool",
37
+ parameters: [
38
+ {
39
+ type: ["list", "bool"],
40
+ },
41
+ ],
42
+ },
43
+ base64decode: {
44
+ name: "base64decode",
45
+ returnType: "string",
46
+ parameters: [
47
+ {
48
+ type: "string",
49
+ },
50
+ ],
51
+ },
52
+ base64encode: {
53
+ name: "base64encode",
54
+ returnType: "string",
55
+ parameters: [
56
+ {
57
+ type: "string",
58
+ },
59
+ ],
60
+ },
61
+ base64gunzip: {
62
+ name: "base64gunzip",
63
+ returnType: "string",
64
+ parameters: [
65
+ {
66
+ type: "string",
67
+ },
68
+ ],
69
+ },
70
+ base64gzip: {
71
+ name: "base64gzip",
72
+ returnType: "string",
73
+ parameters: [
74
+ {
75
+ type: "string",
76
+ },
77
+ ],
78
+ },
79
+ base64sha256: {
80
+ name: "base64sha256",
81
+ returnType: "string",
82
+ parameters: [
83
+ {
84
+ type: "string",
85
+ },
86
+ ],
87
+ },
88
+ base64sha512: {
89
+ name: "base64sha512",
90
+ returnType: "string",
91
+ parameters: [
92
+ {
93
+ type: "string",
94
+ },
95
+ ],
96
+ },
97
+ basename: {
98
+ name: "basename",
99
+ returnType: "string",
100
+ parameters: [
101
+ {
102
+ type: "string",
103
+ },
104
+ ],
105
+ },
106
+ can: {
107
+ name: "can",
108
+ returnType: "bool",
109
+ parameters: [
110
+ {
111
+ type: "dynamic",
112
+ },
113
+ ],
114
+ },
115
+ ceil: {
116
+ name: "ceil",
117
+ returnType: "number",
118
+ parameters: [
119
+ {
120
+ type: "number",
121
+ },
122
+ ],
123
+ },
124
+ chomp: {
125
+ name: "chomp",
126
+ returnType: "string",
127
+ parameters: [
128
+ {
129
+ type: "string",
130
+ },
131
+ ],
132
+ },
133
+ chunklist: {
134
+ name: "chunklist",
135
+ returnType: ["list", ["list", "dynamic"]],
136
+ parameters: [
137
+ {
138
+ type: ["list", "dynamic"],
139
+ },
140
+ {
141
+ type: "number",
142
+ },
143
+ ],
144
+ },
145
+ cidrcontains: {
146
+ name: "cidrcontains",
147
+ returnType: "bool",
148
+ parameters: [
149
+ {
150
+ type: "string",
151
+ },
152
+ {
153
+ type: "string",
154
+ },
155
+ ],
156
+ },
157
+ cidrhost: {
158
+ name: "cidrhost",
159
+ returnType: "string",
160
+ parameters: [
161
+ {
162
+ type: "string",
163
+ },
164
+ {
165
+ type: "number",
166
+ },
167
+ ],
168
+ },
169
+ cidrnetmask: {
170
+ name: "cidrnetmask",
171
+ returnType: "string",
172
+ parameters: [
173
+ {
174
+ type: "string",
175
+ },
176
+ ],
177
+ },
178
+ cidrsubnet: {
179
+ name: "cidrsubnet",
180
+ returnType: "string",
181
+ parameters: [
182
+ {
183
+ type: "string",
184
+ },
185
+ {
186
+ type: "number",
187
+ },
188
+ {
189
+ type: "number",
190
+ },
191
+ ],
192
+ },
193
+ cidrsubnets: {
194
+ name: "cidrsubnets",
195
+ returnType: ["list", "string"],
196
+ parameters: [
197
+ {
198
+ type: "string",
199
+ },
200
+ {
201
+ type: "number",
202
+ variadic: true,
203
+ },
204
+ ],
205
+ },
206
+ coalesce: {
207
+ name: "coalesce",
208
+ returnType: "dynamic",
209
+ parameters: [
210
+ {
211
+ type: "dynamic",
212
+ variadic: true,
213
+ },
214
+ ],
215
+ },
216
+ coalescelist: {
217
+ name: "coalescelist",
218
+ returnType: "dynamic",
219
+ parameters: [
220
+ {
221
+ type: "dynamic",
222
+ variadic: true,
223
+ },
224
+ ],
225
+ },
226
+ compact: {
227
+ name: "compact",
228
+ returnType: ["list", "string"],
229
+ parameters: [
230
+ {
231
+ type: ["list", "string"],
232
+ },
233
+ ],
234
+ },
235
+ concat: {
236
+ name: "concat",
237
+ returnType: "dynamic",
238
+ parameters: [
239
+ {
240
+ type: "dynamic",
241
+ variadic: true,
242
+ },
243
+ ],
244
+ },
245
+ contains: {
246
+ name: "contains",
247
+ returnType: "dynamic",
248
+ parameters: [
249
+ {
250
+ type: "dynamic",
251
+ },
252
+ {
253
+ type: "dynamic",
254
+ },
255
+ ],
256
+ },
257
+ convert: {
258
+ name: "convert",
259
+ returnType: "dynamic",
260
+ parameters: [
261
+ {
262
+ type: "dynamic",
263
+ },
264
+ {
265
+ type: "dynamic",
266
+ },
267
+ ],
268
+ },
269
+ csvdecode: {
270
+ name: "csvdecode",
271
+ returnType: "dynamic",
272
+ parameters: [
273
+ {
274
+ type: "string",
275
+ },
276
+ ],
277
+ },
278
+ dirname: {
279
+ name: "dirname",
280
+ returnType: "string",
281
+ parameters: [
282
+ {
283
+ type: "string",
284
+ },
285
+ ],
286
+ },
287
+ distinct: {
288
+ name: "distinct",
289
+ returnType: ["list", "dynamic"],
290
+ parameters: [
291
+ {
292
+ type: ["list", "dynamic"],
293
+ },
294
+ ],
295
+ },
296
+ element: {
297
+ name: "element",
298
+ returnType: "dynamic",
299
+ parameters: [
300
+ {
301
+ type: "dynamic",
302
+ },
303
+ {
304
+ type: "number",
305
+ },
306
+ ],
307
+ },
308
+ endswith: {
309
+ name: "endswith",
310
+ returnType: "bool",
311
+ parameters: [
312
+ {
313
+ type: "string",
314
+ },
315
+ {
316
+ type: "string",
317
+ },
318
+ ],
319
+ },
320
+ ephemeralasnull: {
321
+ name: "ephemeralasnull",
322
+ returnType: "dynamic",
323
+ parameters: [
324
+ {
325
+ type: "dynamic",
326
+ },
327
+ ],
328
+ },
329
+ file: {
330
+ name: "file",
331
+ returnType: "string",
332
+ parameters: [
333
+ {
334
+ type: "string",
335
+ },
336
+ ],
337
+ },
338
+ filebase64: {
339
+ name: "filebase64",
340
+ returnType: "string",
341
+ parameters: [
342
+ {
343
+ type: "string",
344
+ },
345
+ ],
346
+ },
347
+ filebase64sha256: {
348
+ name: "filebase64sha256",
349
+ returnType: "string",
350
+ parameters: [
351
+ {
352
+ type: "string",
353
+ },
354
+ ],
355
+ },
356
+ filebase64sha512: {
357
+ name: "filebase64sha512",
358
+ returnType: "string",
359
+ parameters: [
360
+ {
361
+ type: "string",
362
+ },
363
+ ],
364
+ },
365
+ fileexists: {
366
+ name: "fileexists",
367
+ returnType: "bool",
368
+ parameters: [
369
+ {
370
+ type: "string",
371
+ },
372
+ ],
373
+ },
374
+ filemd5: {
375
+ name: "filemd5",
376
+ returnType: "string",
377
+ parameters: [
378
+ {
379
+ type: "string",
380
+ },
381
+ ],
382
+ },
383
+ fileset: {
384
+ name: "fileset",
385
+ returnType: ["set", "string"],
386
+ parameters: [
387
+ {
388
+ type: "string",
389
+ },
390
+ {
391
+ type: "string",
392
+ },
393
+ ],
394
+ },
395
+ filesha1: {
396
+ name: "filesha1",
397
+ returnType: "string",
398
+ parameters: [
399
+ {
400
+ type: "string",
401
+ },
402
+ ],
403
+ },
404
+ filesha256: {
405
+ name: "filesha256",
406
+ returnType: "string",
407
+ parameters: [
408
+ {
409
+ type: "string",
410
+ },
411
+ ],
412
+ },
413
+ filesha512: {
414
+ name: "filesha512",
415
+ returnType: "string",
416
+ parameters: [
417
+ {
418
+ type: "string",
419
+ },
420
+ ],
421
+ },
422
+ flatten: {
423
+ name: "flatten",
424
+ returnType: "dynamic",
425
+ parameters: [
426
+ {
427
+ type: "dynamic",
428
+ },
429
+ ],
430
+ },
431
+ floor: {
432
+ name: "floor",
433
+ returnType: "number",
434
+ parameters: [
435
+ {
436
+ type: "number",
437
+ },
438
+ ],
439
+ },
440
+ format: {
441
+ name: "format",
442
+ returnType: "string",
443
+ parameters: [
444
+ {
445
+ type: "string",
446
+ },
447
+ {
448
+ type: "dynamic",
449
+ variadic: true,
450
+ },
451
+ ],
452
+ },
453
+ formatdate: {
454
+ name: "formatdate",
455
+ returnType: "string",
456
+ parameters: [
457
+ {
458
+ type: "string",
459
+ },
460
+ {
461
+ type: "string",
462
+ },
463
+ ],
464
+ },
465
+ formatlist: {
466
+ name: "formatlist",
467
+ returnType: ["list", "string"],
468
+ parameters: [
469
+ {
470
+ type: "string",
471
+ },
472
+ {
473
+ type: "dynamic",
474
+ variadic: true,
475
+ },
476
+ ],
477
+ },
478
+ indent: {
479
+ name: "indent",
480
+ returnType: "string",
481
+ parameters: [
482
+ {
483
+ type: "number",
484
+ },
485
+ {
486
+ type: "string",
487
+ },
488
+ ],
489
+ },
490
+ index: {
491
+ name: "index",
492
+ returnType: "dynamic",
493
+ parameters: [
494
+ {
495
+ type: "dynamic",
496
+ },
497
+ {
498
+ type: "dynamic",
499
+ },
500
+ ],
501
+ },
502
+ issensitive: {
503
+ name: "issensitive",
504
+ returnType: "bool",
505
+ parameters: [
506
+ {
507
+ type: "dynamic",
508
+ },
509
+ ],
510
+ },
511
+ jsondecode: {
512
+ name: "jsondecode",
513
+ returnType: "dynamic",
514
+ parameters: [
515
+ {
516
+ type: "string",
517
+ },
518
+ ],
519
+ },
520
+ jsonencode: {
521
+ name: "jsonencode",
522
+ returnType: "string",
523
+ parameters: [
524
+ {
525
+ type: "dynamic",
526
+ },
527
+ ],
528
+ },
529
+ keys: {
530
+ name: "keys",
531
+ returnType: "dynamic",
532
+ parameters: [
533
+ {
534
+ type: "dynamic",
535
+ },
536
+ ],
537
+ },
538
+ length: {
539
+ name: "lengthOf",
540
+ returnType: "number",
541
+ parameters: [
542
+ {
543
+ type: "dynamic",
544
+ },
545
+ ],
546
+ },
547
+ log: {
548
+ name: "log",
549
+ returnType: "number",
550
+ parameters: [
551
+ {
552
+ type: "number",
553
+ },
554
+ {
555
+ type: "number",
556
+ },
557
+ ],
558
+ },
559
+ lower: {
560
+ name: "lower",
561
+ returnType: "string",
562
+ parameters: [
563
+ {
564
+ type: "string",
565
+ },
566
+ ],
567
+ },
568
+ matchkeys: {
569
+ name: "matchkeys",
570
+ returnType: ["list", "dynamic"],
571
+ parameters: [
572
+ {
573
+ type: ["list", "dynamic"],
574
+ },
575
+ {
576
+ type: ["list", "dynamic"],
577
+ },
578
+ {
579
+ type: ["list", "dynamic"],
580
+ },
581
+ ],
582
+ },
583
+ max: {
584
+ name: "max",
585
+ returnType: "number",
586
+ parameters: [
587
+ {
588
+ type: "number",
589
+ variadic: true,
590
+ },
591
+ ],
592
+ },
593
+ md5: {
594
+ name: "md5",
595
+ returnType: "string",
596
+ parameters: [
597
+ {
598
+ type: "string",
599
+ },
600
+ ],
601
+ },
602
+ merge: {
603
+ name: "merge",
604
+ returnType: "dynamic",
605
+ parameters: [
606
+ {
607
+ type: "dynamic",
608
+ variadic: true,
609
+ },
610
+ ],
611
+ },
612
+ min: {
613
+ name: "min",
614
+ returnType: "number",
615
+ parameters: [
616
+ {
617
+ type: "number",
618
+ variadic: true,
619
+ },
620
+ ],
621
+ },
622
+ nonsensitive: {
623
+ name: "nonsensitive",
624
+ returnType: "dynamic",
625
+ parameters: [
626
+ {
627
+ type: "dynamic",
628
+ },
629
+ ],
630
+ },
631
+ one: {
632
+ name: "one",
633
+ returnType: "dynamic",
634
+ parameters: [
635
+ {
636
+ type: "dynamic",
637
+ },
638
+ ],
639
+ },
640
+ parseint: {
641
+ name: "parseint",
642
+ returnType: "dynamic",
643
+ parameters: [
644
+ {
645
+ type: "dynamic",
646
+ },
647
+ {
648
+ type: "number",
649
+ },
650
+ ],
651
+ },
652
+ pathexpand: {
653
+ name: "pathexpand",
654
+ returnType: "string",
655
+ parameters: [
656
+ {
657
+ type: "string",
658
+ },
659
+ ],
660
+ },
661
+ plantimestamp: {
662
+ name: "plantimestamp",
663
+ returnType: "string",
664
+ parameters: [],
665
+ },
666
+ pow: {
667
+ name: "pow",
668
+ returnType: "number",
669
+ parameters: [
670
+ {
671
+ type: "number",
672
+ },
673
+ {
674
+ type: "number",
675
+ },
676
+ ],
677
+ },
678
+ regex: {
679
+ name: "regex",
680
+ returnType: "dynamic",
681
+ parameters: [
682
+ {
683
+ type: "string",
684
+ },
685
+ {
686
+ type: "string",
687
+ },
688
+ ],
689
+ },
690
+ regexall: {
691
+ name: "regexall",
692
+ returnType: ["list", "dynamic"],
693
+ parameters: [
694
+ {
695
+ type: "string",
696
+ },
697
+ {
698
+ type: "string",
699
+ },
700
+ ],
701
+ },
702
+ replace: {
703
+ name: "replace",
704
+ returnType: "string",
705
+ parameters: [
706
+ {
707
+ type: "string",
708
+ },
709
+ {
710
+ type: "string",
711
+ },
712
+ {
713
+ type: "string",
714
+ },
715
+ ],
716
+ },
717
+ reverse: {
718
+ name: "reverse",
719
+ returnType: "dynamic",
720
+ parameters: [
721
+ {
722
+ type: "dynamic",
723
+ },
724
+ ],
725
+ },
726
+ rsadecrypt: {
727
+ name: "rsadecrypt",
728
+ returnType: "string",
729
+ parameters: [
730
+ {
731
+ type: "string",
732
+ },
733
+ {
734
+ type: "string",
735
+ },
736
+ ],
737
+ },
738
+ sensitive: {
739
+ name: "sensitive",
740
+ returnType: "dynamic",
741
+ parameters: [
742
+ {
743
+ type: "dynamic",
744
+ },
745
+ ],
746
+ },
747
+ setintersection: {
748
+ name: "setintersection",
749
+ returnType: ["set", "dynamic"],
750
+ parameters: [
751
+ {
752
+ type: ["set", "dynamic"],
753
+ },
754
+ {
755
+ type: ["set", "dynamic"],
756
+ variadic: true,
757
+ },
758
+ ],
759
+ },
760
+ setproduct: {
761
+ name: "setproduct",
762
+ returnType: "dynamic",
763
+ parameters: [
764
+ {
765
+ type: "dynamic",
766
+ variadic: true,
767
+ },
768
+ ],
769
+ },
770
+ setsubtract: {
771
+ name: "setsubtract",
772
+ returnType: ["set", "dynamic"],
773
+ parameters: [
774
+ {
775
+ type: ["set", "dynamic"],
776
+ },
777
+ {
778
+ type: ["set", "dynamic"],
779
+ },
780
+ ],
781
+ },
782
+ setunion: {
783
+ name: "setunion",
784
+ returnType: ["set", "dynamic"],
785
+ parameters: [
786
+ {
787
+ type: ["set", "dynamic"],
788
+ },
789
+ {
790
+ type: ["set", "dynamic"],
791
+ variadic: true,
792
+ },
793
+ ],
794
+ },
795
+ sha1: {
796
+ name: "sha1",
797
+ returnType: "string",
798
+ parameters: [
799
+ {
800
+ type: "string",
801
+ },
802
+ ],
803
+ },
804
+ sha256: {
805
+ name: "sha256",
806
+ returnType: "string",
807
+ parameters: [
808
+ {
809
+ type: "string",
810
+ },
811
+ ],
812
+ },
813
+ sha512: {
814
+ name: "sha512",
815
+ returnType: "string",
816
+ parameters: [
817
+ {
818
+ type: "string",
819
+ },
820
+ ],
821
+ },
822
+ signum: {
823
+ name: "signum",
824
+ returnType: "number",
825
+ parameters: [
826
+ {
827
+ type: "number",
828
+ },
829
+ ],
830
+ },
831
+ slice: {
832
+ name: "slice",
833
+ returnType: "dynamic",
834
+ parameters: [
835
+ {
836
+ type: "dynamic",
837
+ },
838
+ {
839
+ type: "number",
840
+ },
841
+ {
842
+ type: "number",
843
+ },
844
+ ],
845
+ },
846
+ sort: {
847
+ name: "sort",
848
+ returnType: ["list", "string"],
849
+ parameters: [
850
+ {
851
+ type: ["list", "string"],
852
+ },
853
+ ],
854
+ },
855
+ split: {
856
+ name: "split",
857
+ returnType: ["list", "string"],
858
+ parameters: [
859
+ {
860
+ type: "string",
861
+ },
862
+ {
863
+ type: "string",
864
+ },
865
+ ],
866
+ },
867
+ startswith: {
868
+ name: "startswith",
869
+ returnType: "bool",
870
+ parameters: [
871
+ {
872
+ type: "string",
873
+ },
874
+ {
875
+ type: "string",
876
+ },
877
+ ],
878
+ },
879
+ strcontains: {
880
+ name: "strcontains",
881
+ returnType: "bool",
882
+ parameters: [
883
+ {
884
+ type: "string",
885
+ },
886
+ {
887
+ type: "string",
888
+ },
889
+ ],
890
+ },
891
+ strrev: {
892
+ name: "strrev",
893
+ returnType: "string",
894
+ parameters: [
895
+ {
896
+ type: "string",
897
+ },
898
+ ],
899
+ },
900
+ substr: {
901
+ name: "substr",
902
+ returnType: "string",
903
+ parameters: [
904
+ {
905
+ type: "string",
906
+ },
907
+ {
908
+ type: "number",
909
+ },
910
+ {
911
+ type: "number",
912
+ },
913
+ ],
914
+ },
915
+ sum: {
916
+ name: "sum",
917
+ returnType: "dynamic",
918
+ parameters: [
919
+ {
920
+ type: "dynamic",
921
+ },
922
+ ],
923
+ },
924
+ templatefile: {
925
+ name: "templatefile",
926
+ returnType: "dynamic",
927
+ parameters: [
928
+ {
929
+ type: "string",
930
+ },
931
+ {
932
+ type: "dynamic",
933
+ },
934
+ ],
935
+ },
936
+ templatestring: {
937
+ name: "templatestring",
938
+ returnType: "string",
939
+ parameters: [
940
+ {
941
+ type: "string",
942
+ },
943
+ {
944
+ type: "dynamic",
945
+ },
946
+ ],
947
+ },
948
+ textdecodebase64: {
949
+ name: "textdecodebase64",
950
+ returnType: "string",
951
+ parameters: [
952
+ {
953
+ type: "string",
954
+ },
955
+ {
956
+ type: "string",
957
+ },
958
+ ],
959
+ },
960
+ textencodebase64: {
961
+ name: "textencodebase64",
962
+ returnType: "string",
963
+ parameters: [
964
+ {
965
+ type: "string",
966
+ },
967
+ {
968
+ type: "string",
969
+ },
970
+ ],
971
+ },
972
+ timeadd: {
973
+ name: "timeadd",
974
+ returnType: "string",
975
+ parameters: [
976
+ {
977
+ type: "string",
978
+ },
979
+ {
980
+ type: "string",
981
+ },
982
+ ],
983
+ },
984
+ timecmp: {
985
+ name: "timecmp",
986
+ returnType: "number",
987
+ parameters: [
988
+ {
989
+ type: "string",
990
+ },
991
+ {
992
+ type: "string",
993
+ },
994
+ ],
995
+ },
996
+ timestamp: {
997
+ name: "timestamp",
998
+ returnType: "string",
999
+ parameters: [],
1000
+ },
1001
+ title: {
1002
+ name: "title",
1003
+ returnType: "string",
1004
+ parameters: [
1005
+ {
1006
+ type: "string",
1007
+ },
1008
+ ],
1009
+ },
1010
+ tobool: {
1011
+ name: "tobool",
1012
+ returnType: "bool",
1013
+ parameters: [
1014
+ {
1015
+ type: "dynamic",
1016
+ },
1017
+ ],
1018
+ },
1019
+ tolist: {
1020
+ name: "tolist",
1021
+ returnType: ["list", "dynamic"],
1022
+ parameters: [
1023
+ {
1024
+ type: "dynamic",
1025
+ },
1026
+ ],
1027
+ },
1028
+ tomap: {
1029
+ name: "tomap",
1030
+ returnType: ["map", "dynamic"],
1031
+ parameters: [
1032
+ {
1033
+ type: "dynamic",
1034
+ },
1035
+ ],
1036
+ },
1037
+ tonumber: {
1038
+ name: "tonumber",
1039
+ returnType: "number",
1040
+ parameters: [
1041
+ {
1042
+ type: "dynamic",
1043
+ },
1044
+ ],
1045
+ },
1046
+ toset: {
1047
+ name: "toset",
1048
+ returnType: ["set", "dynamic"],
1049
+ parameters: [
1050
+ {
1051
+ type: "dynamic",
1052
+ },
1053
+ ],
1054
+ },
1055
+ tostring: {
1056
+ name: "tostring",
1057
+ returnType: "string",
1058
+ parameters: [
1059
+ {
1060
+ type: "dynamic",
1061
+ },
1062
+ ],
1063
+ },
1064
+ transpose: {
1065
+ name: "transpose",
1066
+ returnType: ["map", ["list", "string"]],
1067
+ parameters: [
1068
+ {
1069
+ type: ["map", ["list", "string"]],
1070
+ },
1071
+ ],
1072
+ },
1073
+ trim: {
1074
+ name: "trim",
1075
+ returnType: "string",
1076
+ parameters: [
1077
+ {
1078
+ type: "string",
1079
+ },
1080
+ {
1081
+ type: "string",
1082
+ },
1083
+ ],
1084
+ },
1085
+ trimprefix: {
1086
+ name: "trimprefix",
1087
+ returnType: "string",
1088
+ parameters: [
1089
+ {
1090
+ type: "string",
1091
+ },
1092
+ {
1093
+ type: "string",
1094
+ },
1095
+ ],
1096
+ },
1097
+ trimspace: {
1098
+ name: "trimspace",
1099
+ returnType: "string",
1100
+ parameters: [
1101
+ {
1102
+ type: "string",
1103
+ },
1104
+ ],
1105
+ },
1106
+ trimsuffix: {
1107
+ name: "trimsuffix",
1108
+ returnType: "string",
1109
+ parameters: [
1110
+ {
1111
+ type: "string",
1112
+ },
1113
+ {
1114
+ type: "string",
1115
+ },
1116
+ ],
1117
+ },
1118
+ try: {
1119
+ name: "try",
1120
+ returnType: "dynamic",
1121
+ parameters: [
1122
+ {
1123
+ type: "dynamic",
1124
+ variadic: true,
1125
+ },
1126
+ ],
1127
+ },
1128
+ upper: {
1129
+ name: "upper",
1130
+ returnType: "string",
1131
+ parameters: [
1132
+ {
1133
+ type: "string",
1134
+ },
1135
+ ],
1136
+ },
1137
+ urldecode: {
1138
+ name: "urldecode",
1139
+ returnType: "string",
1140
+ parameters: [
1141
+ {
1142
+ type: "string",
1143
+ },
1144
+ ],
1145
+ },
1146
+ urlencode: {
1147
+ name: "urlencode",
1148
+ returnType: "string",
1149
+ parameters: [
1150
+ {
1151
+ type: "string",
1152
+ },
1153
+ ],
1154
+ },
1155
+ uuid: {
1156
+ name: "uuid",
1157
+ returnType: "string",
1158
+ parameters: [],
1159
+ },
1160
+ uuidv5: {
1161
+ name: "uuidv5",
1162
+ returnType: "string",
1163
+ parameters: [
1164
+ {
1165
+ type: "string",
1166
+ },
1167
+ {
1168
+ type: "string",
1169
+ },
1170
+ ],
1171
+ },
1172
+ values: {
1173
+ name: "values",
1174
+ returnType: "dynamic",
1175
+ parameters: [
1176
+ {
1177
+ type: "dynamic",
1178
+ },
1179
+ ],
1180
+ },
1181
+ yamldecode: {
1182
+ name: "yamldecode",
1183
+ returnType: "dynamic",
1184
+ parameters: [
1185
+ {
1186
+ type: "string",
1187
+ },
1188
+ ],
1189
+ },
1190
+ yamlencode: {
1191
+ name: "yamlencode",
1192
+ returnType: "string",
1193
+ parameters: [
1194
+ {
1195
+ type: "dynamic",
1196
+ },
1197
+ ],
1198
+ },
1199
+ zipmap: {
1200
+ name: "zipmap",
1201
+ returnType: "dynamic",
1202
+ parameters: [
1203
+ {
1204
+ type: ["list", "string"],
1205
+ },
1206
+ {
1207
+ type: "dynamic",
1208
+ },
1209
+ ],
1210
+ },
1211
+ };