@alloy-js/core 0.3.0 → 0.5.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.
Files changed (147) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/src/binder.d.ts +43 -18
  3. package/dist/src/binder.d.ts.map +1 -1
  4. package/dist/src/binder.js +120 -16
  5. package/dist/src/binder.js.map +1 -1
  6. package/dist/src/components/Declaration.d.ts +2 -2
  7. package/dist/src/components/Declaration.d.ts.map +1 -1
  8. package/dist/src/components/Declaration.js.map +1 -1
  9. package/dist/src/components/Indent.d.ts +2 -2
  10. package/dist/src/components/Indent.d.ts.map +1 -1
  11. package/dist/src/components/Indent.js.map +1 -1
  12. package/dist/src/components/MemberDeclaration.d.ts +2 -2
  13. package/dist/src/components/MemberDeclaration.d.ts.map +1 -1
  14. package/dist/src/components/MemberDeclaration.js.map +1 -1
  15. package/dist/src/components/MemberName.d.ts +1 -1
  16. package/dist/src/components/MemberName.d.ts.map +1 -1
  17. package/dist/src/components/MemberScope.d.ts +2 -2
  18. package/dist/src/components/MemberScope.d.ts.map +1 -1
  19. package/dist/src/components/Name.d.ts +1 -1
  20. package/dist/src/components/Name.d.ts.map +1 -1
  21. package/dist/src/components/Output.d.ts +2 -2
  22. package/dist/src/components/Output.d.ts.map +1 -1
  23. package/dist/src/components/Output.js +6 -2
  24. package/dist/src/components/Output.js.map +1 -1
  25. package/dist/src/components/Scope.d.ts +2 -2
  26. package/dist/src/components/Scope.d.ts.map +1 -1
  27. package/dist/src/components/Scope.js.map +1 -1
  28. package/dist/src/components/SourceDirectory.d.ts +3 -3
  29. package/dist/src/components/SourceDirectory.d.ts.map +1 -1
  30. package/dist/src/components/SourceDirectory.js +1 -1
  31. package/dist/src/components/SourceDirectory.js.map +1 -1
  32. package/dist/src/components/SourceFile.d.ts +3 -3
  33. package/dist/src/components/SourceFile.d.ts.map +1 -1
  34. package/dist/src/components/SourceFile.js +1 -1
  35. package/dist/src/components/SourceFile.js.map +1 -1
  36. package/dist/src/components/stc/index.d.ts +18 -18
  37. package/dist/src/context/assignment.d.ts.map +1 -1
  38. package/dist/src/context/assignment.js +2 -2
  39. package/dist/src/context/assignment.js.map +1 -1
  40. package/dist/src/context/binder.d.ts.map +1 -1
  41. package/dist/src/context/binder.js +2 -2
  42. package/dist/src/context/binder.js.map +1 -1
  43. package/dist/src/context/declaration.d.ts.map +1 -1
  44. package/dist/src/context/declaration.js +2 -2
  45. package/dist/src/context/declaration.js.map +1 -1
  46. package/dist/src/context/indent.d.ts.map +1 -1
  47. package/dist/src/context/indent.js +2 -2
  48. package/dist/src/context/indent.js.map +1 -1
  49. package/dist/src/context/member-declaration.d.ts +1 -0
  50. package/dist/src/context/member-declaration.d.ts.map +1 -1
  51. package/dist/src/context/member-declaration.js +5 -2
  52. package/dist/src/context/member-declaration.js.map +1 -1
  53. package/dist/src/context/member-scope.d.ts.map +1 -1
  54. package/dist/src/context/member-scope.js +2 -2
  55. package/dist/src/context/member-scope.js.map +1 -1
  56. package/dist/src/context/name-policy.d.ts.map +1 -1
  57. package/dist/src/context/name-policy.js +2 -2
  58. package/dist/src/context/name-policy.js.map +1 -1
  59. package/dist/src/context/scope.d.ts.map +1 -1
  60. package/dist/src/context/scope.js +2 -2
  61. package/dist/src/context/scope.js.map +1 -1
  62. package/dist/src/context/source-directory.d.ts.map +1 -1
  63. package/dist/src/context/source-directory.js +2 -2
  64. package/dist/src/context/source-directory.js.map +1 -1
  65. package/dist/src/context/source-file.d.ts.map +1 -1
  66. package/dist/src/context/source-file.js +2 -2
  67. package/dist/src/context/source-file.js.map +1 -1
  68. package/dist/src/context.d.ts +5 -2
  69. package/dist/src/context.d.ts.map +1 -1
  70. package/dist/src/context.js +11 -4
  71. package/dist/src/context.js.map +1 -1
  72. package/dist/src/debug.d.ts +14 -0
  73. package/dist/src/debug.d.ts.map +1 -0
  74. package/dist/src/debug.js +163 -0
  75. package/dist/src/debug.js.map +1 -0
  76. package/dist/src/index.d.ts +3 -1
  77. package/dist/src/index.d.ts.map +1 -1
  78. package/dist/src/index.js +3 -1
  79. package/dist/src/index.js.map +1 -1
  80. package/dist/src/jsx-runtime.d.ts +27 -4
  81. package/dist/src/jsx-runtime.d.ts.map +1 -1
  82. package/dist/src/jsx-runtime.js +20 -7
  83. package/dist/src/jsx-runtime.js.map +1 -1
  84. package/dist/src/render.d.ts +1 -1
  85. package/dist/src/render.d.ts.map +1 -1
  86. package/dist/src/render.js +15 -13
  87. package/dist/src/render.js.map +1 -1
  88. package/dist/src/slot.d.ts +15 -0
  89. package/dist/src/slot.d.ts.map +1 -0
  90. package/dist/src/slot.js +51 -0
  91. package/dist/src/slot.js.map +1 -0
  92. package/dist/src/tap.d.ts +19 -0
  93. package/dist/src/tap.d.ts.map +1 -0
  94. package/dist/src/tap.js +39 -0
  95. package/dist/src/tap.js.map +1 -0
  96. package/dist/src/utils.d.ts +1 -6
  97. package/dist/src/utils.d.ts.map +1 -1
  98. package/dist/src/utils.js +1 -34
  99. package/dist/src/utils.js.map +1 -1
  100. package/dist/src/write-output.browser.d.ts +2 -0
  101. package/dist/src/write-output.browser.d.ts.map +1 -0
  102. package/dist/src/write-output.browser.js +4 -0
  103. package/dist/src/write-output.browser.js.map +1 -0
  104. package/dist/src/write-output.d.ts +7 -0
  105. package/dist/src/write-output.d.ts.map +1 -0
  106. package/dist/src/write-output.js +34 -0
  107. package/dist/src/write-output.js.map +1 -0
  108. package/dist/test/components/slot.test.d.ts +2 -0
  109. package/dist/test/components/slot.test.d.ts.map +1 -0
  110. package/dist/testing/render.d.ts +1 -1
  111. package/dist/testing/render.d.ts.map +1 -1
  112. package/dist/tsconfig.tsbuildinfo +1 -1
  113. package/package.json +10 -6
  114. package/src/binder.ts +214 -50
  115. package/src/components/Declaration.tsx +1 -1
  116. package/src/components/Indent.tsx +1 -1
  117. package/src/components/MemberDeclaration.tsx +1 -1
  118. package/src/components/MemberScope.tsx +1 -1
  119. package/src/components/Output.tsx +4 -2
  120. package/src/components/Scope.tsx +1 -1
  121. package/src/components/SourceDirectory.tsx +2 -2
  122. package/src/components/SourceFile.tsx +2 -6
  123. package/src/context/assignment.ts +6 -2
  124. package/src/context/binder.ts +7 -2
  125. package/src/context/declaration.ts +2 -2
  126. package/src/context/indent.ts +13 -6
  127. package/src/context/member-declaration.ts +10 -2
  128. package/src/context/member-scope.ts +6 -2
  129. package/src/context/name-policy.ts +6 -2
  130. package/src/context/scope.ts +7 -2
  131. package/src/context/source-directory.ts +2 -2
  132. package/src/context/source-file.ts +2 -2
  133. package/src/context.ts +15 -4
  134. package/src/debug.ts +209 -0
  135. package/src/index.ts +3 -1
  136. package/src/jsx-runtime.ts +46 -11
  137. package/src/render.ts +21 -19
  138. package/src/slot.ts +90 -0
  139. package/src/tap.ts +69 -0
  140. package/src/utils.ts +2 -34
  141. package/src/write-output.browser.ts +3 -0
  142. package/src/write-output.ts +33 -0
  143. package/temp/api.json +1848 -203
  144. package/test/components/slot.test.tsx +172 -0
  145. package/test/rendering/basic.test.tsx +1 -1
  146. package/test/symbols.test.ts +161 -3
  147. package/testing/render.ts +1 -1
package/temp/api.json CHANGED
@@ -407,54 +407,86 @@
407
407
  "kind": "Content",
408
408
  "text": ">(args: "
409
409
  },
410
- {
411
- "kind": "Content",
412
- "text": "{\n kind: T[\"kind\"];\n name: string;\n parent?: "
413
- },
414
410
  {
415
411
  "kind": "Reference",
416
- "text": "OutputScope",
417
- "canonicalReference": "@alloy-js/core!OutputScope:interface"
412
+ "text": "CreateScopeOptions",
413
+ "canonicalReference": "@alloy-js/core!CreateScopeOptions:type"
418
414
  },
419
415
  {
420
416
  "kind": "Content",
421
- "text": " | undefined;\n flags?: "
417
+ "text": "<T>"
422
418
  },
423
419
  {
424
- "kind": "Reference",
425
- "text": "OutputScopeFlags",
426
- "canonicalReference": "@alloy-js/core!OutputScopeFlags:enum"
420
+ "kind": "Content",
421
+ "text": "): "
427
422
  },
428
423
  {
429
424
  "kind": "Content",
430
- "text": ";\n owner?: "
425
+ "text": "T"
431
426
  },
432
427
  {
433
- "kind": "Reference",
434
- "text": "OutputSymbol",
435
- "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
436
- },
428
+ "kind": "Content",
429
+ "text": ";"
430
+ }
431
+ ],
432
+ "isOptional": false,
433
+ "returnTypeTokenRange": {
434
+ "startIndex": 6,
435
+ "endIndex": 7
436
+ },
437
+ "releaseTag": "Public",
438
+ "overloadIndex": 1,
439
+ "parameters": [
440
+ {
441
+ "parameterName": "args",
442
+ "parameterTypeTokenRange": {
443
+ "startIndex": 3,
444
+ "endIndex": 5
445
+ },
446
+ "isOptional": false
447
+ }
448
+ ],
449
+ "typeParameters": [
450
+ {
451
+ "typeParameterName": "T",
452
+ "constraintTokenRange": {
453
+ "startIndex": 1,
454
+ "endIndex": 2
455
+ },
456
+ "defaultTypeTokenRange": {
457
+ "startIndex": 0,
458
+ "endIndex": 0
459
+ }
460
+ }
461
+ ],
462
+ "name": "createScope"
463
+ },
464
+ {
465
+ "kind": "MethodSignature",
466
+ "canonicalReference": "@alloy-js/core!Binder#createSymbol:member(1)",
467
+ "docComment": "/**\n * Create a new symbol. The symbol will be added to the parent scope's symbols. The returned symbol object is reactive.\n */\n",
468
+ "excerptTokens": [
437
469
  {
438
470
  "kind": "Content",
439
- "text": ";\n } & "
471
+ "text": "createSymbol<T extends "
440
472
  },
441
473
  {
442
474
  "kind": "Reference",
443
- "text": "Omit",
444
- "canonicalReference": "!Omit:type"
475
+ "text": "OutputSymbol",
476
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
445
477
  },
446
478
  {
447
479
  "kind": "Content",
448
- "text": "<T, keyof "
480
+ "text": ">(args: "
449
481
  },
450
482
  {
451
483
  "kind": "Reference",
452
- "text": "OutputScope",
453
- "canonicalReference": "@alloy-js/core!OutputScope:interface"
484
+ "text": "CreateSymbolOptions",
485
+ "canonicalReference": "@alloy-js/core!CreateSymbolOptions:type"
454
486
  },
455
487
  {
456
488
  "kind": "Content",
457
- "text": ">"
489
+ "text": "<T>"
458
490
  },
459
491
  {
460
492
  "kind": "Content",
@@ -471,8 +503,8 @@
471
503
  ],
472
504
  "isOptional": false,
473
505
  "returnTypeTokenRange": {
474
- "startIndex": 15,
475
- "endIndex": 16
506
+ "startIndex": 6,
507
+ "endIndex": 7
476
508
  },
477
509
  "releaseTag": "Public",
478
510
  "overloadIndex": 1,
@@ -481,7 +513,7 @@
481
513
  "parameterName": "args",
482
514
  "parameterTypeTokenRange": {
483
515
  "startIndex": 3,
484
- "endIndex": 14
516
+ "endIndex": 5
485
517
  },
486
518
  "isOptional": false
487
519
  }
@@ -499,29 +531,113 @@
499
531
  }
500
532
  }
501
533
  ],
502
- "name": "createScope"
534
+ "name": "createSymbol"
503
535
  },
504
536
  {
505
537
  "kind": "MethodSignature",
506
- "canonicalReference": "@alloy-js/core!Binder#createSymbol:member(1)",
507
- "docComment": "/**\n * Create a new symbol. The symbol will be added to the parent scope's symbols. The returned symbol object is reactive.\n */\n",
538
+ "canonicalReference": "@alloy-js/core!Binder#findScopeName:member(1)",
539
+ "docComment": "",
508
540
  "excerptTokens": [
509
541
  {
510
542
  "kind": "Content",
511
- "text": "createSymbol<T extends "
543
+ "text": "findScopeName<TScope extends "
512
544
  },
513
545
  {
514
546
  "kind": "Reference",
515
- "text": "OutputSymbol",
516
- "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
547
+ "text": "OutputScope",
548
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
517
549
  },
518
550
  {
519
551
  "kind": "Content",
520
- "text": ">(args: "
552
+ "text": " = "
553
+ },
554
+ {
555
+ "kind": "Reference",
556
+ "text": "OutputScope",
557
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
558
+ },
559
+ {
560
+ "kind": "Content",
561
+ "text": ">(currentScope: "
562
+ },
563
+ {
564
+ "kind": "Content",
565
+ "text": "TScope | undefined"
566
+ },
567
+ {
568
+ "kind": "Content",
569
+ "text": ", name: "
570
+ },
571
+ {
572
+ "kind": "Content",
573
+ "text": "string"
574
+ },
575
+ {
576
+ "kind": "Content",
577
+ "text": "): "
578
+ },
579
+ {
580
+ "kind": "Reference",
581
+ "text": "Ref",
582
+ "canonicalReference": "@vue/reactivity!Ref:interface"
583
+ },
584
+ {
585
+ "kind": "Content",
586
+ "text": "<TScope | undefined>"
587
+ },
588
+ {
589
+ "kind": "Content",
590
+ "text": ";"
591
+ }
592
+ ],
593
+ "isOptional": false,
594
+ "returnTypeTokenRange": {
595
+ "startIndex": 9,
596
+ "endIndex": 11
597
+ },
598
+ "releaseTag": "Public",
599
+ "overloadIndex": 1,
600
+ "parameters": [
601
+ {
602
+ "parameterName": "currentScope",
603
+ "parameterTypeTokenRange": {
604
+ "startIndex": 5,
605
+ "endIndex": 6
606
+ },
607
+ "isOptional": false
521
608
  },
609
+ {
610
+ "parameterName": "name",
611
+ "parameterTypeTokenRange": {
612
+ "startIndex": 7,
613
+ "endIndex": 8
614
+ },
615
+ "isOptional": false
616
+ }
617
+ ],
618
+ "typeParameters": [
619
+ {
620
+ "typeParameterName": "TScope",
621
+ "constraintTokenRange": {
622
+ "startIndex": 1,
623
+ "endIndex": 2
624
+ },
625
+ "defaultTypeTokenRange": {
626
+ "startIndex": 3,
627
+ "endIndex": 4
628
+ }
629
+ }
630
+ ],
631
+ "name": "findScopeName"
632
+ },
633
+ {
634
+ "kind": "MethodSignature",
635
+ "canonicalReference": "@alloy-js/core!Binder#findSymbolName:member(1)",
636
+ "docComment": "/**\n * Find a symbol with a given name in the given scope. Returns a ref for the symbol, such that when the symbol is available, the ref value will update.\n */\n",
637
+ "excerptTokens": [
522
638
  {
523
639
  "kind": "Content",
524
- "text": "{\n name: string;\n scope?: "
640
+ "text": "findSymbolName<TScope extends "
525
641
  },
526
642
  {
527
643
  "kind": "Reference",
@@ -530,25 +646,25 @@
530
646
  },
531
647
  {
532
648
  "kind": "Content",
533
- "text": ";\n refkey?: unknown;\n flags?: "
649
+ "text": " = "
534
650
  },
535
651
  {
536
652
  "kind": "Reference",
537
- "text": "OutputSymbolFlags",
538
- "canonicalReference": "@alloy-js/core!OutputSymbolFlags:enum"
653
+ "text": "OutputScope",
654
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
539
655
  },
540
656
  {
541
657
  "kind": "Content",
542
- "text": ";\n } & "
658
+ "text": ", TSymbol extends "
543
659
  },
544
660
  {
545
661
  "kind": "Reference",
546
- "text": "Omit",
547
- "canonicalReference": "!Omit:type"
662
+ "text": "OutputSymbol",
663
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
548
664
  },
549
665
  {
550
666
  "kind": "Content",
551
- "text": "<T, keyof "
667
+ "text": " = "
552
668
  },
553
669
  {
554
670
  "kind": "Reference",
@@ -557,15 +673,32 @@
557
673
  },
558
674
  {
559
675
  "kind": "Content",
560
- "text": ">"
676
+ "text": ">(currentScope: "
677
+ },
678
+ {
679
+ "kind": "Content",
680
+ "text": "TScope | undefined"
681
+ },
682
+ {
683
+ "kind": "Content",
684
+ "text": ", name: "
685
+ },
686
+ {
687
+ "kind": "Content",
688
+ "text": "string"
561
689
  },
562
690
  {
563
691
  "kind": "Content",
564
692
  "text": "): "
565
693
  },
694
+ {
695
+ "kind": "Reference",
696
+ "text": "Ref",
697
+ "canonicalReference": "@vue/reactivity!Ref:interface"
698
+ },
566
699
  {
567
700
  "kind": "Content",
568
- "text": "T"
701
+ "text": "<TSymbol | undefined>"
569
702
  },
570
703
  {
571
704
  "kind": "Content",
@@ -575,15 +708,23 @@
575
708
  "isOptional": false,
576
709
  "returnTypeTokenRange": {
577
710
  "startIndex": 13,
578
- "endIndex": 14
711
+ "endIndex": 15
579
712
  },
580
713
  "releaseTag": "Public",
581
714
  "overloadIndex": 1,
582
715
  "parameters": [
583
716
  {
584
- "parameterName": "args",
717
+ "parameterName": "currentScope",
585
718
  "parameterTypeTokenRange": {
586
- "startIndex": 3,
719
+ "startIndex": 9,
720
+ "endIndex": 10
721
+ },
722
+ "isOptional": false
723
+ },
724
+ {
725
+ "parameterName": "name",
726
+ "parameterTypeTokenRange": {
727
+ "startIndex": 11,
587
728
  "endIndex": 12
588
729
  },
589
730
  "isOptional": false
@@ -591,23 +732,34 @@
591
732
  ],
592
733
  "typeParameters": [
593
734
  {
594
- "typeParameterName": "T",
735
+ "typeParameterName": "TScope",
595
736
  "constraintTokenRange": {
596
737
  "startIndex": 1,
597
738
  "endIndex": 2
598
739
  },
599
740
  "defaultTypeTokenRange": {
600
- "startIndex": 0,
601
- "endIndex": 0
741
+ "startIndex": 3,
742
+ "endIndex": 4
743
+ }
744
+ },
745
+ {
746
+ "typeParameterName": "TSymbol",
747
+ "constraintTokenRange": {
748
+ "startIndex": 5,
749
+ "endIndex": 6
750
+ },
751
+ "defaultTypeTokenRange": {
752
+ "startIndex": 7,
753
+ "endIndex": 8
602
754
  }
603
755
  }
604
756
  ],
605
- "name": "createSymbol"
757
+ "name": "findSymbolName"
606
758
  },
607
759
  {
608
760
  "kind": "PropertySignature",
609
761
  "canonicalReference": "@alloy-js/core!Binder#globalScope:member",
610
- "docComment": "",
762
+ "docComment": "/**\n * The global scope. This is the root scope for all symbols.\n */\n",
611
763
  "excerptTokens": [
612
764
  {
613
765
  "kind": "Content",
@@ -846,48 +998,158 @@
846
998
  }
847
999
  ],
848
1000
  "name": "resolveDeclarationByKey"
849
- }
850
- ],
851
- "extendsTokenRanges": []
852
- },
853
- {
854
- "kind": "Variable",
855
- "canonicalReference": "@alloy-js/core!BinderContext:var",
856
- "docComment": "/**\n * The binder context provides the binder instance to all components. This context is provided by the {@link Output | output component}.\n */\n",
857
- "excerptTokens": [
858
- {
859
- "kind": "Content",
860
- "text": "BinderContext: "
861
- },
862
- {
863
- "kind": "Reference",
864
- "text": "ComponentContext",
865
- "canonicalReference": "@alloy-js/core!ComponentContext:interface"
866
- },
867
- {
868
- "kind": "Content",
869
- "text": "<"
870
- },
871
- {
872
- "kind": "Reference",
873
- "text": "Binder",
874
- "canonicalReference": "@alloy-js/core!Binder:interface"
875
1001
  },
876
1002
  {
877
- "kind": "Content",
878
- "text": ">"
879
- }
880
- ],
881
- "fileUrlPath": "src/context/binder.ts",
882
- "isReadonly": true,
883
- "releaseTag": "Public",
884
- "name": "BinderContext",
885
- "variableTypeTokenRange": {
886
- "startIndex": 1,
887
- "endIndex": 5
888
- }
889
- },
890
- {
1003
+ "kind": "MethodSignature",
1004
+ "canonicalReference": "@alloy-js/core!Binder#resolveFQN:member(1)",
1005
+ "docComment": "/**\n * Resolve a fully qualified name to a symbol. Access a nested scope by name with `::`, a nested static member with `.` and a nested instance member with `#`.\n *\n * Per-language packages may provide their own resolveFQN function that uses syntax more natural to that language.\n */\n",
1006
+ "excerptTokens": [
1007
+ {
1008
+ "kind": "Content",
1009
+ "text": "resolveFQN<TScope extends "
1010
+ },
1011
+ {
1012
+ "kind": "Reference",
1013
+ "text": "OutputScope",
1014
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
1015
+ },
1016
+ {
1017
+ "kind": "Content",
1018
+ "text": " = "
1019
+ },
1020
+ {
1021
+ "kind": "Reference",
1022
+ "text": "OutputScope",
1023
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
1024
+ },
1025
+ {
1026
+ "kind": "Content",
1027
+ "text": ", TSymbol extends "
1028
+ },
1029
+ {
1030
+ "kind": "Reference",
1031
+ "text": "OutputSymbol",
1032
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
1033
+ },
1034
+ {
1035
+ "kind": "Content",
1036
+ "text": " = "
1037
+ },
1038
+ {
1039
+ "kind": "Reference",
1040
+ "text": "OutputSymbol",
1041
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
1042
+ },
1043
+ {
1044
+ "kind": "Content",
1045
+ "text": ">(fqn: "
1046
+ },
1047
+ {
1048
+ "kind": "Content",
1049
+ "text": "string"
1050
+ },
1051
+ {
1052
+ "kind": "Content",
1053
+ "text": "): "
1054
+ },
1055
+ {
1056
+ "kind": "Reference",
1057
+ "text": "Ref",
1058
+ "canonicalReference": "@vue/reactivity!Ref:interface"
1059
+ },
1060
+ {
1061
+ "kind": "Content",
1062
+ "text": "<TSymbol | TScope | undefined>"
1063
+ },
1064
+ {
1065
+ "kind": "Content",
1066
+ "text": ";"
1067
+ }
1068
+ ],
1069
+ "isOptional": false,
1070
+ "returnTypeTokenRange": {
1071
+ "startIndex": 11,
1072
+ "endIndex": 13
1073
+ },
1074
+ "releaseTag": "Public",
1075
+ "overloadIndex": 1,
1076
+ "parameters": [
1077
+ {
1078
+ "parameterName": "fqn",
1079
+ "parameterTypeTokenRange": {
1080
+ "startIndex": 9,
1081
+ "endIndex": 10
1082
+ },
1083
+ "isOptional": false
1084
+ }
1085
+ ],
1086
+ "typeParameters": [
1087
+ {
1088
+ "typeParameterName": "TScope",
1089
+ "constraintTokenRange": {
1090
+ "startIndex": 1,
1091
+ "endIndex": 2
1092
+ },
1093
+ "defaultTypeTokenRange": {
1094
+ "startIndex": 3,
1095
+ "endIndex": 4
1096
+ }
1097
+ },
1098
+ {
1099
+ "typeParameterName": "TSymbol",
1100
+ "constraintTokenRange": {
1101
+ "startIndex": 5,
1102
+ "endIndex": 6
1103
+ },
1104
+ "defaultTypeTokenRange": {
1105
+ "startIndex": 7,
1106
+ "endIndex": 8
1107
+ }
1108
+ }
1109
+ ],
1110
+ "name": "resolveFQN"
1111
+ }
1112
+ ],
1113
+ "extendsTokenRanges": []
1114
+ },
1115
+ {
1116
+ "kind": "Variable",
1117
+ "canonicalReference": "@alloy-js/core!BinderContext:var",
1118
+ "docComment": "/**\n * The binder context provides the binder instance to all components. This context is provided by the {@link Output | output component}.\n */\n",
1119
+ "excerptTokens": [
1120
+ {
1121
+ "kind": "Content",
1122
+ "text": "BinderContext: "
1123
+ },
1124
+ {
1125
+ "kind": "Reference",
1126
+ "text": "ComponentContext",
1127
+ "canonicalReference": "@alloy-js/core!ComponentContext:interface"
1128
+ },
1129
+ {
1130
+ "kind": "Content",
1131
+ "text": "<"
1132
+ },
1133
+ {
1134
+ "kind": "Reference",
1135
+ "text": "Binder",
1136
+ "canonicalReference": "@alloy-js/core!Binder:interface"
1137
+ },
1138
+ {
1139
+ "kind": "Content",
1140
+ "text": ">"
1141
+ }
1142
+ ],
1143
+ "fileUrlPath": "src/context/binder.ts",
1144
+ "isReadonly": true,
1145
+ "releaseTag": "Public",
1146
+ "name": "BinderContext",
1147
+ "variableTypeTokenRange": {
1148
+ "startIndex": 1,
1149
+ "endIndex": 5
1150
+ }
1151
+ },
1152
+ {
891
1153
  "kind": "Interface",
892
1154
  "canonicalReference": "@alloy-js/core!BinderOptions:interface",
893
1155
  "docComment": "",
@@ -944,16 +1206,7 @@
944
1206
  },
945
1207
  {
946
1208
  "kind": "Content",
947
- "text": "string | boolean | number | undefined | null | (() => "
948
- },
949
- {
950
- "kind": "Reference",
951
- "text": "Child",
952
- "canonicalReference": "@alloy-js/core!Child:type"
953
- },
954
- {
955
- "kind": "Content",
956
- "text": " | "
1209
+ "text": "string | boolean | number | undefined | null | void | (() => "
957
1210
  },
958
1211
  {
959
1212
  "kind": "Reference",
@@ -997,7 +1250,7 @@
997
1250
  "name": "Child",
998
1251
  "typeTokenRange": {
999
1252
  "startIndex": 1,
1000
- "endIndex": 11
1253
+ "endIndex": 9
1001
1254
  }
1002
1255
  },
1003
1256
  {
@@ -1150,6 +1403,52 @@
1150
1403
  ],
1151
1404
  "name": "childrenArray"
1152
1405
  },
1406
+ {
1407
+ "kind": "Function",
1408
+ "canonicalReference": "@alloy-js/core!cleanup:function(1)",
1409
+ "docComment": "",
1410
+ "excerptTokens": [
1411
+ {
1412
+ "kind": "Content",
1413
+ "text": "export declare function cleanup(fn: "
1414
+ },
1415
+ {
1416
+ "kind": "Reference",
1417
+ "text": "Disposable",
1418
+ "canonicalReference": "@alloy-js/core!Disposable_2:interface"
1419
+ },
1420
+ {
1421
+ "kind": "Content",
1422
+ "text": "): "
1423
+ },
1424
+ {
1425
+ "kind": "Content",
1426
+ "text": "void"
1427
+ },
1428
+ {
1429
+ "kind": "Content",
1430
+ "text": ";"
1431
+ }
1432
+ ],
1433
+ "fileUrlPath": "src/jsx-runtime.ts",
1434
+ "returnTypeTokenRange": {
1435
+ "startIndex": 3,
1436
+ "endIndex": 4
1437
+ },
1438
+ "releaseTag": "Public",
1439
+ "overloadIndex": 1,
1440
+ "parameters": [
1441
+ {
1442
+ "parameterName": "fn",
1443
+ "parameterTypeTokenRange": {
1444
+ "startIndex": 1,
1445
+ "endIndex": 2
1446
+ },
1447
+ "isOptional": false
1448
+ }
1449
+ ],
1450
+ "name": "cleanup"
1451
+ },
1153
1452
  {
1154
1453
  "kind": "Function",
1155
1454
  "canonicalReference": "@alloy-js/core!code:function(1)",
@@ -1424,6 +1723,33 @@
1424
1723
  "endIndex": 2
1425
1724
  }
1426
1725
  },
1726
+ {
1727
+ "kind": "PropertySignature",
1728
+ "canonicalReference": "@alloy-js/core!ComponentContext#name:member",
1729
+ "docComment": "",
1730
+ "excerptTokens": [
1731
+ {
1732
+ "kind": "Content",
1733
+ "text": "name?: "
1734
+ },
1735
+ {
1736
+ "kind": "Content",
1737
+ "text": "string"
1738
+ },
1739
+ {
1740
+ "kind": "Content",
1741
+ "text": ";"
1742
+ }
1743
+ ],
1744
+ "isReadonly": false,
1745
+ "isOptional": true,
1746
+ "releaseTag": "Public",
1747
+ "name": "name",
1748
+ "propertyTypeTokenRange": {
1749
+ "startIndex": 1,
1750
+ "endIndex": 2
1751
+ }
1752
+ },
1427
1753
  {
1428
1754
  "kind": "PropertySignature",
1429
1755
  "canonicalReference": "@alloy-js/core!ComponentContext#Provider:member",
@@ -1739,6 +2065,38 @@
1739
2065
  "name": "Context",
1740
2066
  "preserveMemberOrder": false,
1741
2067
  "members": [
2068
+ {
2069
+ "kind": "PropertySignature",
2070
+ "canonicalReference": "@alloy-js/core!Context#componentOwner:member",
2071
+ "docComment": "/**\n * When this context was created by a component, this will be the component that created it.\n */\n",
2072
+ "excerptTokens": [
2073
+ {
2074
+ "kind": "Content",
2075
+ "text": "componentOwner?: "
2076
+ },
2077
+ {
2078
+ "kind": "Reference",
2079
+ "text": "ComponentCreator",
2080
+ "canonicalReference": "@alloy-js/core!ComponentCreator:interface"
2081
+ },
2082
+ {
2083
+ "kind": "Content",
2084
+ "text": "<unknown>"
2085
+ },
2086
+ {
2087
+ "kind": "Content",
2088
+ "text": ";"
2089
+ }
2090
+ ],
2091
+ "isReadonly": false,
2092
+ "isOptional": true,
2093
+ "releaseTag": "Public",
2094
+ "name": "componentOwner",
2095
+ "propertyTypeTokenRange": {
2096
+ "startIndex": 1,
2097
+ "endIndex": 3
2098
+ }
2099
+ },
1742
2100
  {
1743
2101
  "kind": "PropertySignature",
1744
2102
  "canonicalReference": "@alloy-js/core!Context#context:member",
@@ -1965,18 +2323,55 @@
1965
2323
  "extendsTokenRanges": []
1966
2324
  },
1967
2325
  {
1968
- "kind": "Function",
1969
- "canonicalReference": "@alloy-js/core!createAssignmentContext:function(1)",
1970
- "docComment": "/**\n * Creates a new {@link (AssignmentContext:interface)}.\n *\n * @param target - The symbol that is the target of the current assignment.\n *\n * @returns A new {@link (AssignmentContext:interface)}.\n */\n",
2326
+ "kind": "Variable",
2327
+ "canonicalReference": "@alloy-js/core!contextsByKey:var",
2328
+ "docComment": "",
1971
2329
  "excerptTokens": [
1972
2330
  {
1973
2331
  "kind": "Content",
1974
- "text": "export declare function createAssignmentContext(target: "
2332
+ "text": "contextsByKey: "
1975
2333
  },
1976
2334
  {
1977
2335
  "kind": "Reference",
1978
- "text": "OutputSymbol",
1979
- "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
2336
+ "text": "Map",
2337
+ "canonicalReference": "!Map:interface"
2338
+ },
2339
+ {
2340
+ "kind": "Content",
2341
+ "text": "<symbol, "
2342
+ },
2343
+ {
2344
+ "kind": "Reference",
2345
+ "text": "ComponentContext",
2346
+ "canonicalReference": "@alloy-js/core!ComponentContext:interface"
2347
+ },
2348
+ {
2349
+ "kind": "Content",
2350
+ "text": "<any>>"
2351
+ }
2352
+ ],
2353
+ "fileUrlPath": "src/context.ts",
2354
+ "isReadonly": true,
2355
+ "releaseTag": "Public",
2356
+ "name": "contextsByKey",
2357
+ "variableTypeTokenRange": {
2358
+ "startIndex": 1,
2359
+ "endIndex": 5
2360
+ }
2361
+ },
2362
+ {
2363
+ "kind": "Function",
2364
+ "canonicalReference": "@alloy-js/core!createAssignmentContext:function(1)",
2365
+ "docComment": "/**\n * Creates a new {@link (AssignmentContext:interface)}.\n *\n * @param target - The symbol that is the target of the current assignment.\n *\n * @returns A new {@link (AssignmentContext:interface)}.\n */\n",
2366
+ "excerptTokens": [
2367
+ {
2368
+ "kind": "Content",
2369
+ "text": "export declare function createAssignmentContext(target: "
2370
+ },
2371
+ {
2372
+ "kind": "Reference",
2373
+ "text": "OutputSymbol",
2374
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
1980
2375
  },
1981
2376
  {
1982
2377
  "kind": "Content",
@@ -2134,6 +2529,14 @@
2134
2529
  "kind": "Content",
2135
2530
  "text": "T"
2136
2531
  },
2532
+ {
2533
+ "kind": "Content",
2534
+ "text": ", name?: "
2535
+ },
2536
+ {
2537
+ "kind": "Content",
2538
+ "text": "string"
2539
+ },
2137
2540
  {
2138
2541
  "kind": "Content",
2139
2542
  "text": "): "
@@ -2154,8 +2557,8 @@
2154
2557
  ],
2155
2558
  "fileUrlPath": "src/context.ts",
2156
2559
  "returnTypeTokenRange": {
2157
- "startIndex": 5,
2158
- "endIndex": 7
2560
+ "startIndex": 7,
2561
+ "endIndex": 9
2159
2562
  },
2160
2563
  "releaseTag": "Public",
2161
2564
  "overloadIndex": 1,
@@ -2167,6 +2570,14 @@
2167
2570
  "endIndex": 4
2168
2571
  },
2169
2572
  "isOptional": true
2573
+ },
2574
+ {
2575
+ "parameterName": "name",
2576
+ "parameterTypeTokenRange": {
2577
+ "startIndex": 5,
2578
+ "endIndex": 6
2579
+ },
2580
+ "isOptional": true
2170
2581
  }
2171
2582
  ],
2172
2583
  "typeParameters": [
@@ -2186,24 +2597,39 @@
2186
2597
  },
2187
2598
  {
2188
2599
  "kind": "Function",
2189
- "canonicalReference": "@alloy-js/core!createNamePolicy:function(1)",
2600
+ "canonicalReference": "@alloy-js/core!createDeclarationTap:function(1)",
2190
2601
  "docComment": "",
2191
2602
  "excerptTokens": [
2192
2603
  {
2193
2604
  "kind": "Content",
2194
- "text": "export declare function createNamePolicy<T extends "
2605
+ "text": "export declare function createDeclarationTap<TSymbol extends "
2606
+ },
2607
+ {
2608
+ "kind": "Reference",
2609
+ "text": "OutputSymbol",
2610
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
2195
2611
  },
2196
2612
  {
2197
2613
  "kind": "Content",
2198
- "text": "string"
2614
+ "text": " = "
2615
+ },
2616
+ {
2617
+ "kind": "Reference",
2618
+ "text": "OutputSymbol",
2619
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
2199
2620
  },
2200
2621
  {
2201
2622
  "kind": "Content",
2202
- "text": ">(namer: "
2623
+ "text": ">(handler?: "
2624
+ },
2625
+ {
2626
+ "kind": "Reference",
2627
+ "text": "Handler",
2628
+ "canonicalReference": "@alloy-js/core!Handler:interface"
2203
2629
  },
2204
2630
  {
2205
2631
  "kind": "Content",
2206
- "text": "(name: string, elements: T) => string"
2632
+ "text": "<TSymbol>"
2207
2633
  },
2208
2634
  {
2209
2635
  "kind": "Content",
@@ -2211,63 +2637,156 @@
2211
2637
  },
2212
2638
  {
2213
2639
  "kind": "Reference",
2214
- "text": "NamePolicy",
2215
- "canonicalReference": "@alloy-js/core!NamePolicy:interface"
2640
+ "text": "Tap",
2641
+ "canonicalReference": "@alloy-js/core!Tap:interface"
2216
2642
  },
2217
2643
  {
2218
2644
  "kind": "Content",
2219
- "text": "<T>"
2645
+ "text": "<TSymbol>"
2220
2646
  },
2221
2647
  {
2222
2648
  "kind": "Content",
2223
2649
  "text": ";"
2224
2650
  }
2225
2651
  ],
2226
- "fileUrlPath": "src/name-policy.ts",
2652
+ "fileUrlPath": "src/tap.ts",
2227
2653
  "returnTypeTokenRange": {
2228
- "startIndex": 5,
2229
- "endIndex": 7
2654
+ "startIndex": 8,
2655
+ "endIndex": 10
2230
2656
  },
2231
2657
  "releaseTag": "Public",
2232
2658
  "overloadIndex": 1,
2233
2659
  "parameters": [
2234
2660
  {
2235
- "parameterName": "namer",
2661
+ "parameterName": "handler",
2236
2662
  "parameterTypeTokenRange": {
2663
+ "startIndex": 5,
2664
+ "endIndex": 7
2665
+ },
2666
+ "isOptional": true
2667
+ }
2668
+ ],
2669
+ "typeParameters": [
2670
+ {
2671
+ "typeParameterName": "TSymbol",
2672
+ "constraintTokenRange": {
2673
+ "startIndex": 1,
2674
+ "endIndex": 2
2675
+ },
2676
+ "defaultTypeTokenRange": {
2237
2677
  "startIndex": 3,
2238
2678
  "endIndex": 4
2679
+ }
2680
+ }
2681
+ ],
2682
+ "name": "createDeclarationTap"
2683
+ },
2684
+ {
2685
+ "kind": "Function",
2686
+ "canonicalReference": "@alloy-js/core!createMemberTap:function(1)",
2687
+ "docComment": "",
2688
+ "excerptTokens": [
2689
+ {
2690
+ "kind": "Content",
2691
+ "text": "export declare function createMemberTap<TSymbol extends "
2692
+ },
2693
+ {
2694
+ "kind": "Reference",
2695
+ "text": "OutputSymbol",
2696
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
2697
+ },
2698
+ {
2699
+ "kind": "Content",
2700
+ "text": " = "
2701
+ },
2702
+ {
2703
+ "kind": "Reference",
2704
+ "text": "OutputSymbol",
2705
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
2706
+ },
2707
+ {
2708
+ "kind": "Content",
2709
+ "text": ">(handler?: "
2710
+ },
2711
+ {
2712
+ "kind": "Reference",
2713
+ "text": "Handler",
2714
+ "canonicalReference": "@alloy-js/core!Handler:interface"
2715
+ },
2716
+ {
2717
+ "kind": "Content",
2718
+ "text": "<TSymbol>"
2719
+ },
2720
+ {
2721
+ "kind": "Content",
2722
+ "text": "): "
2723
+ },
2724
+ {
2725
+ "kind": "Reference",
2726
+ "text": "Tap",
2727
+ "canonicalReference": "@alloy-js/core!Tap:interface"
2728
+ },
2729
+ {
2730
+ "kind": "Content",
2731
+ "text": "<TSymbol>"
2732
+ },
2733
+ {
2734
+ "kind": "Content",
2735
+ "text": ";"
2736
+ }
2737
+ ],
2738
+ "fileUrlPath": "src/tap.ts",
2739
+ "returnTypeTokenRange": {
2740
+ "startIndex": 8,
2741
+ "endIndex": 10
2742
+ },
2743
+ "releaseTag": "Public",
2744
+ "overloadIndex": 1,
2745
+ "parameters": [
2746
+ {
2747
+ "parameterName": "handler",
2748
+ "parameterTypeTokenRange": {
2749
+ "startIndex": 5,
2750
+ "endIndex": 7
2239
2751
  },
2240
- "isOptional": false
2752
+ "isOptional": true
2241
2753
  }
2242
2754
  ],
2243
2755
  "typeParameters": [
2244
2756
  {
2245
- "typeParameterName": "T",
2757
+ "typeParameterName": "TSymbol",
2246
2758
  "constraintTokenRange": {
2247
2759
  "startIndex": 1,
2248
2760
  "endIndex": 2
2249
2761
  },
2250
2762
  "defaultTypeTokenRange": {
2251
- "startIndex": 0,
2252
- "endIndex": 0
2763
+ "startIndex": 3,
2764
+ "endIndex": 4
2253
2765
  }
2254
2766
  }
2255
2767
  ],
2256
- "name": "createNamePolicy"
2768
+ "name": "createMemberTap"
2257
2769
  },
2258
2770
  {
2259
2771
  "kind": "Function",
2260
- "canonicalReference": "@alloy-js/core!createOutputBinder:function(1)",
2772
+ "canonicalReference": "@alloy-js/core!createNamedContext:function(1)",
2261
2773
  "docComment": "",
2262
2774
  "excerptTokens": [
2263
2775
  {
2264
2776
  "kind": "Content",
2265
- "text": "export declare function createOutputBinder(options?: "
2777
+ "text": "export declare function createNamedContext<T>(name: "
2266
2778
  },
2267
2779
  {
2268
- "kind": "Reference",
2269
- "text": "BinderOptions",
2270
- "canonicalReference": "@alloy-js/core!BinderOptions:interface"
2780
+ "kind": "Content",
2781
+ "text": "string"
2782
+ },
2783
+ {
2784
+ "kind": "Content",
2785
+ "text": ", defaultValue?: "
2786
+ },
2787
+ {
2788
+ "kind": "Content",
2789
+ "text": "T"
2271
2790
  },
2272
2791
  {
2273
2792
  "kind": "Content",
@@ -2275,32 +2794,635 @@
2275
2794
  },
2276
2795
  {
2277
2796
  "kind": "Reference",
2278
- "text": "Binder",
2279
- "canonicalReference": "@alloy-js/core!Binder:interface"
2797
+ "text": "ComponentContext",
2798
+ "canonicalReference": "@alloy-js/core!ComponentContext:interface"
2799
+ },
2800
+ {
2801
+ "kind": "Content",
2802
+ "text": "<T>"
2280
2803
  },
2281
2804
  {
2282
2805
  "kind": "Content",
2283
2806
  "text": ";"
2284
2807
  }
2285
2808
  ],
2286
- "fileUrlPath": "src/binder.ts",
2809
+ "fileUrlPath": "src/context.ts",
2287
2810
  "returnTypeTokenRange": {
2288
- "startIndex": 3,
2289
- "endIndex": 4
2811
+ "startIndex": 5,
2812
+ "endIndex": 7
2290
2813
  },
2291
2814
  "releaseTag": "Public",
2292
2815
  "overloadIndex": 1,
2293
2816
  "parameters": [
2294
2817
  {
2295
- "parameterName": "options",
2818
+ "parameterName": "name",
2296
2819
  "parameterTypeTokenRange": {
2297
2820
  "startIndex": 1,
2298
2821
  "endIndex": 2
2299
- },
2300
- "isOptional": true
2822
+ },
2823
+ "isOptional": false
2824
+ },
2825
+ {
2826
+ "parameterName": "defaultValue",
2827
+ "parameterTypeTokenRange": {
2828
+ "startIndex": 3,
2829
+ "endIndex": 4
2830
+ },
2831
+ "isOptional": true
2832
+ }
2833
+ ],
2834
+ "typeParameters": [
2835
+ {
2836
+ "typeParameterName": "T",
2837
+ "constraintTokenRange": {
2838
+ "startIndex": 0,
2839
+ "endIndex": 0
2840
+ },
2841
+ "defaultTypeTokenRange": {
2842
+ "startIndex": 0,
2843
+ "endIndex": 0
2844
+ }
2845
+ }
2846
+ ],
2847
+ "name": "createNamedContext"
2848
+ },
2849
+ {
2850
+ "kind": "Function",
2851
+ "canonicalReference": "@alloy-js/core!createNamePolicy:function(1)",
2852
+ "docComment": "",
2853
+ "excerptTokens": [
2854
+ {
2855
+ "kind": "Content",
2856
+ "text": "export declare function createNamePolicy<T extends "
2857
+ },
2858
+ {
2859
+ "kind": "Content",
2860
+ "text": "string"
2861
+ },
2862
+ {
2863
+ "kind": "Content",
2864
+ "text": ">(namer: "
2865
+ },
2866
+ {
2867
+ "kind": "Content",
2868
+ "text": "(name: string, elements: T) => string"
2869
+ },
2870
+ {
2871
+ "kind": "Content",
2872
+ "text": "): "
2873
+ },
2874
+ {
2875
+ "kind": "Reference",
2876
+ "text": "NamePolicy",
2877
+ "canonicalReference": "@alloy-js/core!NamePolicy:interface"
2878
+ },
2879
+ {
2880
+ "kind": "Content",
2881
+ "text": "<T>"
2882
+ },
2883
+ {
2884
+ "kind": "Content",
2885
+ "text": ";"
2886
+ }
2887
+ ],
2888
+ "fileUrlPath": "src/name-policy.ts",
2889
+ "returnTypeTokenRange": {
2890
+ "startIndex": 5,
2891
+ "endIndex": 7
2892
+ },
2893
+ "releaseTag": "Public",
2894
+ "overloadIndex": 1,
2895
+ "parameters": [
2896
+ {
2897
+ "parameterName": "namer",
2898
+ "parameterTypeTokenRange": {
2899
+ "startIndex": 3,
2900
+ "endIndex": 4
2901
+ },
2902
+ "isOptional": false
2903
+ }
2904
+ ],
2905
+ "typeParameters": [
2906
+ {
2907
+ "typeParameterName": "T",
2908
+ "constraintTokenRange": {
2909
+ "startIndex": 1,
2910
+ "endIndex": 2
2911
+ },
2912
+ "defaultTypeTokenRange": {
2913
+ "startIndex": 0,
2914
+ "endIndex": 0
2915
+ }
2916
+ }
2917
+ ],
2918
+ "name": "createNamePolicy"
2919
+ },
2920
+ {
2921
+ "kind": "Function",
2922
+ "canonicalReference": "@alloy-js/core!createOutputBinder:function(1)",
2923
+ "docComment": "",
2924
+ "excerptTokens": [
2925
+ {
2926
+ "kind": "Content",
2927
+ "text": "export declare function createOutputBinder(options?: "
2928
+ },
2929
+ {
2930
+ "kind": "Reference",
2931
+ "text": "BinderOptions",
2932
+ "canonicalReference": "@alloy-js/core!BinderOptions:interface"
2933
+ },
2934
+ {
2935
+ "kind": "Content",
2936
+ "text": "): "
2937
+ },
2938
+ {
2939
+ "kind": "Reference",
2940
+ "text": "Binder",
2941
+ "canonicalReference": "@alloy-js/core!Binder:interface"
2942
+ },
2943
+ {
2944
+ "kind": "Content",
2945
+ "text": ";"
2946
+ }
2947
+ ],
2948
+ "fileUrlPath": "src/binder.ts",
2949
+ "returnTypeTokenRange": {
2950
+ "startIndex": 3,
2951
+ "endIndex": 4
2952
+ },
2953
+ "releaseTag": "Public",
2954
+ "overloadIndex": 1,
2955
+ "parameters": [
2956
+ {
2957
+ "parameterName": "options",
2958
+ "parameterTypeTokenRange": {
2959
+ "startIndex": 1,
2960
+ "endIndex": 2
2961
+ },
2962
+ "isOptional": true
2963
+ }
2964
+ ],
2965
+ "name": "createOutputBinder"
2966
+ },
2967
+ {
2968
+ "kind": "TypeAlias",
2969
+ "canonicalReference": "@alloy-js/core!CreateScopeOptions:type",
2970
+ "docComment": "",
2971
+ "excerptTokens": [
2972
+ {
2973
+ "kind": "Content",
2974
+ "text": "export type CreateScopeOptions<T extends "
2975
+ },
2976
+ {
2977
+ "kind": "Reference",
2978
+ "text": "OutputScope",
2979
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
2980
+ },
2981
+ {
2982
+ "kind": "Content",
2983
+ "text": " = "
2984
+ },
2985
+ {
2986
+ "kind": "Reference",
2987
+ "text": "OutputScope",
2988
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
2989
+ },
2990
+ {
2991
+ "kind": "Content",
2992
+ "text": "> = "
2993
+ },
2994
+ {
2995
+ "kind": "Content",
2996
+ "text": "{\n kind: T[\"kind\"];\n name: string;\n parent?: "
2997
+ },
2998
+ {
2999
+ "kind": "Reference",
3000
+ "text": "OutputScope",
3001
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
3002
+ },
3003
+ {
3004
+ "kind": "Content",
3005
+ "text": " | undefined;\n flags?: "
3006
+ },
3007
+ {
3008
+ "kind": "Reference",
3009
+ "text": "OutputScopeFlags",
3010
+ "canonicalReference": "@alloy-js/core!OutputScopeFlags:enum"
3011
+ },
3012
+ {
3013
+ "kind": "Content",
3014
+ "text": ";\n owner?: "
3015
+ },
3016
+ {
3017
+ "kind": "Reference",
3018
+ "text": "OutputSymbol",
3019
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
3020
+ },
3021
+ {
3022
+ "kind": "Content",
3023
+ "text": ";\n} & "
3024
+ },
3025
+ {
3026
+ "kind": "Reference",
3027
+ "text": "Omit",
3028
+ "canonicalReference": "!Omit:type"
3029
+ },
3030
+ {
3031
+ "kind": "Content",
3032
+ "text": "<T, keyof "
3033
+ },
3034
+ {
3035
+ "kind": "Reference",
3036
+ "text": "OutputScope",
3037
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
3038
+ },
3039
+ {
3040
+ "kind": "Content",
3041
+ "text": ">"
3042
+ },
3043
+ {
3044
+ "kind": "Content",
3045
+ "text": ";"
3046
+ }
3047
+ ],
3048
+ "fileUrlPath": "src/binder.ts",
3049
+ "releaseTag": "Public",
3050
+ "name": "CreateScopeOptions",
3051
+ "typeParameters": [
3052
+ {
3053
+ "typeParameterName": "T",
3054
+ "constraintTokenRange": {
3055
+ "startIndex": 1,
3056
+ "endIndex": 2
3057
+ },
3058
+ "defaultTypeTokenRange": {
3059
+ "startIndex": 3,
3060
+ "endIndex": 4
3061
+ }
3062
+ }
3063
+ ],
3064
+ "typeTokenRange": {
3065
+ "startIndex": 5,
3066
+ "endIndex": 16
3067
+ }
3068
+ },
3069
+ {
3070
+ "kind": "Function",
3071
+ "canonicalReference": "@alloy-js/core!createScopeTap:function(1)",
3072
+ "docComment": "",
3073
+ "excerptTokens": [
3074
+ {
3075
+ "kind": "Content",
3076
+ "text": "export declare function createScopeTap<TScope extends "
3077
+ },
3078
+ {
3079
+ "kind": "Reference",
3080
+ "text": "OutputScope",
3081
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
3082
+ },
3083
+ {
3084
+ "kind": "Content",
3085
+ "text": " = "
3086
+ },
3087
+ {
3088
+ "kind": "Reference",
3089
+ "text": "OutputScope",
3090
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
3091
+ },
3092
+ {
3093
+ "kind": "Content",
3094
+ "text": ">(handler?: "
3095
+ },
3096
+ {
3097
+ "kind": "Reference",
3098
+ "text": "Handler",
3099
+ "canonicalReference": "@alloy-js/core!Handler:interface"
3100
+ },
3101
+ {
3102
+ "kind": "Content",
3103
+ "text": "<TScope>"
3104
+ },
3105
+ {
3106
+ "kind": "Content",
3107
+ "text": "): "
3108
+ },
3109
+ {
3110
+ "kind": "Reference",
3111
+ "text": "Tap",
3112
+ "canonicalReference": "@alloy-js/core!Tap:interface"
3113
+ },
3114
+ {
3115
+ "kind": "Content",
3116
+ "text": "<TScope>"
3117
+ },
3118
+ {
3119
+ "kind": "Content",
3120
+ "text": ";"
3121
+ }
3122
+ ],
3123
+ "fileUrlPath": "src/tap.ts",
3124
+ "returnTypeTokenRange": {
3125
+ "startIndex": 8,
3126
+ "endIndex": 10
3127
+ },
3128
+ "releaseTag": "Public",
3129
+ "overloadIndex": 1,
3130
+ "parameters": [
3131
+ {
3132
+ "parameterName": "handler",
3133
+ "parameterTypeTokenRange": {
3134
+ "startIndex": 5,
3135
+ "endIndex": 7
3136
+ },
3137
+ "isOptional": true
3138
+ }
3139
+ ],
3140
+ "typeParameters": [
3141
+ {
3142
+ "typeParameterName": "TScope",
3143
+ "constraintTokenRange": {
3144
+ "startIndex": 1,
3145
+ "endIndex": 2
3146
+ },
3147
+ "defaultTypeTokenRange": {
3148
+ "startIndex": 3,
3149
+ "endIndex": 4
3150
+ }
3151
+ }
3152
+ ],
3153
+ "name": "createScopeTap"
3154
+ },
3155
+ {
3156
+ "kind": "Function",
3157
+ "canonicalReference": "@alloy-js/core!createSourceFileTap:function(1)",
3158
+ "docComment": "",
3159
+ "excerptTokens": [
3160
+ {
3161
+ "kind": "Content",
3162
+ "text": "export declare function createSourceFileTap(handler?: "
3163
+ },
3164
+ {
3165
+ "kind": "Reference",
3166
+ "text": "Handler",
3167
+ "canonicalReference": "@alloy-js/core!Handler:interface"
3168
+ },
3169
+ {
3170
+ "kind": "Content",
3171
+ "text": "<"
3172
+ },
3173
+ {
3174
+ "kind": "Reference",
3175
+ "text": "SourceFileContext",
3176
+ "canonicalReference": "@alloy-js/core!SourceFileContext:interface"
3177
+ },
3178
+ {
3179
+ "kind": "Content",
3180
+ "text": ">"
3181
+ },
3182
+ {
3183
+ "kind": "Content",
3184
+ "text": "): "
3185
+ },
3186
+ {
3187
+ "kind": "Reference",
3188
+ "text": "Tap",
3189
+ "canonicalReference": "@alloy-js/core!Tap:interface"
3190
+ },
3191
+ {
3192
+ "kind": "Content",
3193
+ "text": "<"
3194
+ },
3195
+ {
3196
+ "kind": "Reference",
3197
+ "text": "SourceFileContext",
3198
+ "canonicalReference": "@alloy-js/core!SourceFileContext:interface"
3199
+ },
3200
+ {
3201
+ "kind": "Content",
3202
+ "text": ">"
3203
+ },
3204
+ {
3205
+ "kind": "Content",
3206
+ "text": ";"
3207
+ }
3208
+ ],
3209
+ "fileUrlPath": "src/tap.ts",
3210
+ "returnTypeTokenRange": {
3211
+ "startIndex": 6,
3212
+ "endIndex": 10
3213
+ },
3214
+ "releaseTag": "Public",
3215
+ "overloadIndex": 1,
3216
+ "parameters": [
3217
+ {
3218
+ "parameterName": "handler",
3219
+ "parameterTypeTokenRange": {
3220
+ "startIndex": 1,
3221
+ "endIndex": 5
3222
+ },
3223
+ "isOptional": true
3224
+ }
3225
+ ],
3226
+ "name": "createSourceFileTap"
3227
+ },
3228
+ {
3229
+ "kind": "TypeAlias",
3230
+ "canonicalReference": "@alloy-js/core!CreateSymbolOptions:type",
3231
+ "docComment": "",
3232
+ "excerptTokens": [
3233
+ {
3234
+ "kind": "Content",
3235
+ "text": "export type CreateSymbolOptions<T extends "
3236
+ },
3237
+ {
3238
+ "kind": "Reference",
3239
+ "text": "OutputSymbol",
3240
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
3241
+ },
3242
+ {
3243
+ "kind": "Content",
3244
+ "text": " = "
3245
+ },
3246
+ {
3247
+ "kind": "Reference",
3248
+ "text": "OutputSymbol",
3249
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
3250
+ },
3251
+ {
3252
+ "kind": "Content",
3253
+ "text": "> = "
3254
+ },
3255
+ {
3256
+ "kind": "Content",
3257
+ "text": "{\n name: string;\n scope?: "
3258
+ },
3259
+ {
3260
+ "kind": "Reference",
3261
+ "text": "OutputScope",
3262
+ "canonicalReference": "@alloy-js/core!OutputScope:interface"
3263
+ },
3264
+ {
3265
+ "kind": "Content",
3266
+ "text": ";\n refkey?: "
3267
+ },
3268
+ {
3269
+ "kind": "Reference",
3270
+ "text": "Refkey",
3271
+ "canonicalReference": "@alloy-js/core!Refkey:type"
3272
+ },
3273
+ {
3274
+ "kind": "Content",
3275
+ "text": ";\n flags?: "
3276
+ },
3277
+ {
3278
+ "kind": "Reference",
3279
+ "text": "OutputSymbolFlags",
3280
+ "canonicalReference": "@alloy-js/core!OutputSymbolFlags:enum"
3281
+ },
3282
+ {
3283
+ "kind": "Content",
3284
+ "text": ";\n} & "
3285
+ },
3286
+ {
3287
+ "kind": "Reference",
3288
+ "text": "Omit",
3289
+ "canonicalReference": "!Omit:type"
3290
+ },
3291
+ {
3292
+ "kind": "Content",
3293
+ "text": "<T, keyof "
3294
+ },
3295
+ {
3296
+ "kind": "Reference",
3297
+ "text": "OutputSymbol",
3298
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
3299
+ },
3300
+ {
3301
+ "kind": "Content",
3302
+ "text": ">"
3303
+ },
3304
+ {
3305
+ "kind": "Content",
3306
+ "text": ";"
3307
+ }
3308
+ ],
3309
+ "fileUrlPath": "src/binder.ts",
3310
+ "releaseTag": "Public",
3311
+ "name": "CreateSymbolOptions",
3312
+ "typeParameters": [
3313
+ {
3314
+ "typeParameterName": "T",
3315
+ "constraintTokenRange": {
3316
+ "startIndex": 1,
3317
+ "endIndex": 2
3318
+ },
3319
+ "defaultTypeTokenRange": {
3320
+ "startIndex": 3,
3321
+ "endIndex": 4
3322
+ }
3323
+ }
3324
+ ],
3325
+ "typeTokenRange": {
3326
+ "startIndex": 5,
3327
+ "endIndex": 16
3328
+ }
3329
+ },
3330
+ {
3331
+ "kind": "Function",
3332
+ "canonicalReference": "@alloy-js/core!createTap:function(1)",
3333
+ "docComment": "",
3334
+ "excerptTokens": [
3335
+ {
3336
+ "kind": "Content",
3337
+ "text": "export declare function createTap<T = "
3338
+ },
3339
+ {
3340
+ "kind": "Content",
3341
+ "text": "unknown"
3342
+ },
3343
+ {
3344
+ "kind": "Content",
3345
+ "text": ">(tapper: "
3346
+ },
3347
+ {
3348
+ "kind": "Reference",
3349
+ "text": "Tapper",
3350
+ "canonicalReference": "@alloy-js/core!Tapper:interface"
3351
+ },
3352
+ {
3353
+ "kind": "Content",
3354
+ "text": "<T>"
3355
+ },
3356
+ {
3357
+ "kind": "Content",
3358
+ "text": ", handler?: "
3359
+ },
3360
+ {
3361
+ "kind": "Reference",
3362
+ "text": "Handler",
3363
+ "canonicalReference": "@alloy-js/core!Handler:interface"
3364
+ },
3365
+ {
3366
+ "kind": "Content",
3367
+ "text": "<T>"
3368
+ },
3369
+ {
3370
+ "kind": "Content",
3371
+ "text": "): "
3372
+ },
3373
+ {
3374
+ "kind": "Reference",
3375
+ "text": "Tap",
3376
+ "canonicalReference": "@alloy-js/core!Tap:interface"
3377
+ },
3378
+ {
3379
+ "kind": "Content",
3380
+ "text": "<T>"
3381
+ },
3382
+ {
3383
+ "kind": "Content",
3384
+ "text": ";"
3385
+ }
3386
+ ],
3387
+ "fileUrlPath": "src/tap.ts",
3388
+ "returnTypeTokenRange": {
3389
+ "startIndex": 9,
3390
+ "endIndex": 11
3391
+ },
3392
+ "releaseTag": "Public",
3393
+ "overloadIndex": 1,
3394
+ "parameters": [
3395
+ {
3396
+ "parameterName": "tapper",
3397
+ "parameterTypeTokenRange": {
3398
+ "startIndex": 3,
3399
+ "endIndex": 5
3400
+ },
3401
+ "isOptional": false
3402
+ },
3403
+ {
3404
+ "parameterName": "handler",
3405
+ "parameterTypeTokenRange": {
3406
+ "startIndex": 6,
3407
+ "endIndex": 8
3408
+ },
3409
+ "isOptional": true
3410
+ }
3411
+ ],
3412
+ "typeParameters": [
3413
+ {
3414
+ "typeParameterName": "T",
3415
+ "constraintTokenRange": {
3416
+ "startIndex": 0,
3417
+ "endIndex": 0
3418
+ },
3419
+ "defaultTypeTokenRange": {
3420
+ "startIndex": 1,
3421
+ "endIndex": 2
3422
+ }
2301
3423
  }
2302
3424
  ],
2303
- "name": "createOutputBinder"
3425
+ "name": "createTap"
2304
3426
  },
2305
3427
  {
2306
3428
  "kind": "Function",
@@ -2321,8 +3443,9 @@
2321
3443
  "text": "): "
2322
3444
  },
2323
3445
  {
2324
- "kind": "Content",
2325
- "text": "any"
3446
+ "kind": "Reference",
3447
+ "text": "Children",
3448
+ "canonicalReference": "@alloy-js/core!Children:type"
2326
3449
  },
2327
3450
  {
2328
3451
  "kind": "Content",
@@ -2977,6 +4100,80 @@
2977
4100
  "parameters": [],
2978
4101
  "name": "getSymbolCreatorSymbol"
2979
4102
  },
4103
+ {
4104
+ "kind": "Interface",
4105
+ "canonicalReference": "@alloy-js/core!Handler:interface",
4106
+ "docComment": "",
4107
+ "excerptTokens": [
4108
+ {
4109
+ "kind": "Content",
4110
+ "text": "export interface Handler<T> "
4111
+ }
4112
+ ],
4113
+ "fileUrlPath": "src/tap.ts",
4114
+ "releaseTag": "Public",
4115
+ "typeParameters": [
4116
+ {
4117
+ "typeParameterName": "T",
4118
+ "constraintTokenRange": {
4119
+ "startIndex": 0,
4120
+ "endIndex": 0
4121
+ },
4122
+ "defaultTypeTokenRange": {
4123
+ "startIndex": 0,
4124
+ "endIndex": 0
4125
+ }
4126
+ }
4127
+ ],
4128
+ "name": "Handler",
4129
+ "preserveMemberOrder": false,
4130
+ "members": [
4131
+ {
4132
+ "kind": "CallSignature",
4133
+ "canonicalReference": "@alloy-js/core!Handler:call(1)",
4134
+ "docComment": "",
4135
+ "excerptTokens": [
4136
+ {
4137
+ "kind": "Content",
4138
+ "text": "(value: "
4139
+ },
4140
+ {
4141
+ "kind": "Content",
4142
+ "text": "T"
4143
+ },
4144
+ {
4145
+ "kind": "Content",
4146
+ "text": "): "
4147
+ },
4148
+ {
4149
+ "kind": "Content",
4150
+ "text": "void"
4151
+ },
4152
+ {
4153
+ "kind": "Content",
4154
+ "text": ";"
4155
+ }
4156
+ ],
4157
+ "returnTypeTokenRange": {
4158
+ "startIndex": 3,
4159
+ "endIndex": 4
4160
+ },
4161
+ "releaseTag": "Public",
4162
+ "overloadIndex": 1,
4163
+ "parameters": [
4164
+ {
4165
+ "parameterName": "value",
4166
+ "parameterTypeTokenRange": {
4167
+ "startIndex": 1,
4168
+ "endIndex": 2
4169
+ },
4170
+ "isOptional": false
4171
+ }
4172
+ ]
4173
+ }
4174
+ ],
4175
+ "extendsTokenRanges": []
4176
+ },
2980
4177
  {
2981
4178
  "kind": "Function",
2982
4179
  "canonicalReference": "@alloy-js/core!Indent:function(1)",
@@ -2996,8 +4193,9 @@
2996
4193
  "text": "): "
2997
4194
  },
2998
4195
  {
2999
- "kind": "Content",
3000
- "text": "any"
4196
+ "kind": "Reference",
4197
+ "text": "Children",
4198
+ "canonicalReference": "@alloy-js/core!Children:type"
3001
4199
  },
3002
4200
  {
3003
4201
  "kind": "Content",
@@ -3579,7 +4777,297 @@
3579
4777
  }
3580
4778
  }
3581
4779
  ],
3582
- "extendsTokenRanges": []
4780
+ "extendsTokenRanges": []
4781
+ },
4782
+ {
4783
+ "kind": "Function",
4784
+ "canonicalReference": "@alloy-js/core!jsx:function(1)",
4785
+ "docComment": "",
4786
+ "excerptTokens": [
4787
+ {
4788
+ "kind": "Content",
4789
+ "text": "export declare function jsx(type: "
4790
+ },
4791
+ {
4792
+ "kind": "Reference",
4793
+ "text": "Component",
4794
+ "canonicalReference": "@alloy-js/core!Component:interface"
4795
+ },
4796
+ {
4797
+ "kind": "Content",
4798
+ "text": "<any>"
4799
+ },
4800
+ {
4801
+ "kind": "Content",
4802
+ "text": ", props: "
4803
+ },
4804
+ {
4805
+ "kind": "Reference",
4806
+ "text": "Record",
4807
+ "canonicalReference": "!Record:type"
4808
+ },
4809
+ {
4810
+ "kind": "Content",
4811
+ "text": "<string, unknown>"
4812
+ },
4813
+ {
4814
+ "kind": "Content",
4815
+ "text": "): "
4816
+ },
4817
+ {
4818
+ "kind": "Reference",
4819
+ "text": "ComponentCreator",
4820
+ "canonicalReference": "@alloy-js/core!ComponentCreator:interface"
4821
+ },
4822
+ {
4823
+ "kind": "Content",
4824
+ "text": "<"
4825
+ },
4826
+ {
4827
+ "kind": "Reference",
4828
+ "text": "Record",
4829
+ "canonicalReference": "!Record:type"
4830
+ },
4831
+ {
4832
+ "kind": "Content",
4833
+ "text": "<string, unknown>>"
4834
+ },
4835
+ {
4836
+ "kind": "Content",
4837
+ "text": ";"
4838
+ }
4839
+ ],
4840
+ "fileUrlPath": "src/jsx-runtime.ts",
4841
+ "returnTypeTokenRange": {
4842
+ "startIndex": 7,
4843
+ "endIndex": 11
4844
+ },
4845
+ "releaseTag": "Public",
4846
+ "overloadIndex": 1,
4847
+ "parameters": [
4848
+ {
4849
+ "parameterName": "type",
4850
+ "parameterTypeTokenRange": {
4851
+ "startIndex": 1,
4852
+ "endIndex": 3
4853
+ },
4854
+ "isOptional": false
4855
+ },
4856
+ {
4857
+ "parameterName": "props",
4858
+ "parameterTypeTokenRange": {
4859
+ "startIndex": 4,
4860
+ "endIndex": 6
4861
+ },
4862
+ "isOptional": false
4863
+ }
4864
+ ],
4865
+ "name": "jsx"
4866
+ },
4867
+ {
4868
+ "kind": "Namespace",
4869
+ "canonicalReference": "@alloy-js/core!JSX:namespace",
4870
+ "docComment": "/**\n * This namespace is predominantly for interop with React tooling in VSCode and controls the type of JSX elements, components, and the like.\n */\n",
4871
+ "excerptTokens": [
4872
+ {
4873
+ "kind": "Content",
4874
+ "text": "export declare namespace JSX "
4875
+ }
4876
+ ],
4877
+ "fileUrlPath": "src/jsx-runtime.ts",
4878
+ "releaseTag": "Public",
4879
+ "name": "JSX",
4880
+ "preserveMemberOrder": false,
4881
+ "members": [
4882
+ {
4883
+ "kind": "TypeAlias",
4884
+ "canonicalReference": "@alloy-js/core!JSX.Element:type",
4885
+ "docComment": "",
4886
+ "excerptTokens": [
4887
+ {
4888
+ "kind": "Content",
4889
+ "text": "type Element = "
4890
+ },
4891
+ {
4892
+ "kind": "Reference",
4893
+ "text": "Children",
4894
+ "canonicalReference": "@alloy-js/core!Children:type"
4895
+ },
4896
+ {
4897
+ "kind": "Content",
4898
+ "text": ";"
4899
+ }
4900
+ ],
4901
+ "releaseTag": "Public",
4902
+ "name": "Element",
4903
+ "typeTokenRange": {
4904
+ "startIndex": 1,
4905
+ "endIndex": 2
4906
+ }
4907
+ },
4908
+ {
4909
+ "kind": "Interface",
4910
+ "canonicalReference": "@alloy-js/core!JSX.ElementAttributesProperty:interface",
4911
+ "docComment": "",
4912
+ "excerptTokens": [
4913
+ {
4914
+ "kind": "Content",
4915
+ "text": "interface ElementAttributesProperty "
4916
+ }
4917
+ ],
4918
+ "releaseTag": "Public",
4919
+ "name": "ElementAttributesProperty",
4920
+ "preserveMemberOrder": false,
4921
+ "members": [
4922
+ {
4923
+ "kind": "PropertySignature",
4924
+ "canonicalReference": "@alloy-js/core!JSX.ElementAttributesProperty#props:member",
4925
+ "docComment": "",
4926
+ "excerptTokens": [
4927
+ {
4928
+ "kind": "Content",
4929
+ "text": "props: "
4930
+ },
4931
+ {
4932
+ "kind": "Content",
4933
+ "text": "{}"
4934
+ },
4935
+ {
4936
+ "kind": "Content",
4937
+ "text": ";"
4938
+ }
4939
+ ],
4940
+ "isReadonly": false,
4941
+ "isOptional": false,
4942
+ "releaseTag": "Public",
4943
+ "name": "props",
4944
+ "propertyTypeTokenRange": {
4945
+ "startIndex": 1,
4946
+ "endIndex": 2
4947
+ }
4948
+ }
4949
+ ],
4950
+ "extendsTokenRanges": []
4951
+ },
4952
+ {
4953
+ "kind": "Interface",
4954
+ "canonicalReference": "@alloy-js/core!JSX.ElementChildrenAttribute:interface",
4955
+ "docComment": "",
4956
+ "excerptTokens": [
4957
+ {
4958
+ "kind": "Content",
4959
+ "text": "interface ElementChildrenAttribute "
4960
+ }
4961
+ ],
4962
+ "releaseTag": "Public",
4963
+ "name": "ElementChildrenAttribute",
4964
+ "preserveMemberOrder": false,
4965
+ "members": [
4966
+ {
4967
+ "kind": "PropertySignature",
4968
+ "canonicalReference": "@alloy-js/core!JSX.ElementChildrenAttribute#children:member",
4969
+ "docComment": "",
4970
+ "excerptTokens": [
4971
+ {
4972
+ "kind": "Content",
4973
+ "text": "children: "
4974
+ },
4975
+ {
4976
+ "kind": "Content",
4977
+ "text": "{}"
4978
+ },
4979
+ {
4980
+ "kind": "Content",
4981
+ "text": ";"
4982
+ }
4983
+ ],
4984
+ "isReadonly": false,
4985
+ "isOptional": false,
4986
+ "releaseTag": "Public",
4987
+ "name": "children",
4988
+ "propertyTypeTokenRange": {
4989
+ "startIndex": 1,
4990
+ "endIndex": 2
4991
+ }
4992
+ }
4993
+ ],
4994
+ "extendsTokenRanges": []
4995
+ },
4996
+ {
4997
+ "kind": "TypeAlias",
4998
+ "canonicalReference": "@alloy-js/core!JSX.ElementType:type",
4999
+ "docComment": "",
5000
+ "excerptTokens": [
5001
+ {
5002
+ "kind": "Content",
5003
+ "text": "type ElementType = "
5004
+ },
5005
+ {
5006
+ "kind": "Reference",
5007
+ "text": "ComponentDefinition",
5008
+ "canonicalReference": "@alloy-js/core!ComponentDefinition:interface"
5009
+ },
5010
+ {
5011
+ "kind": "Content",
5012
+ "text": "<any>"
5013
+ },
5014
+ {
5015
+ "kind": "Content",
5016
+ "text": ";"
5017
+ }
5018
+ ],
5019
+ "releaseTag": "Public",
5020
+ "name": "ElementType",
5021
+ "typeTokenRange": {
5022
+ "startIndex": 1,
5023
+ "endIndex": 3
5024
+ }
5025
+ },
5026
+ {
5027
+ "kind": "Interface",
5028
+ "canonicalReference": "@alloy-js/core!JSX.IntrinsicElements:interface",
5029
+ "docComment": "",
5030
+ "excerptTokens": [
5031
+ {
5032
+ "kind": "Content",
5033
+ "text": "interface IntrinsicElements "
5034
+ }
5035
+ ],
5036
+ "releaseTag": "Public",
5037
+ "name": "IntrinsicElements",
5038
+ "preserveMemberOrder": false,
5039
+ "members": [],
5040
+ "extendsTokenRanges": []
5041
+ }
5042
+ ]
5043
+ },
5044
+ {
5045
+ "kind": "Variable",
5046
+ "canonicalReference": "@alloy-js/core!jsxs:var",
5047
+ "docComment": "",
5048
+ "excerptTokens": [
5049
+ {
5050
+ "kind": "Content",
5051
+ "text": "jsxs: "
5052
+ },
5053
+ {
5054
+ "kind": "Content",
5055
+ "text": "typeof "
5056
+ },
5057
+ {
5058
+ "kind": "Reference",
5059
+ "text": "jsx",
5060
+ "canonicalReference": "@alloy-js/core!jsx:function"
5061
+ }
5062
+ ],
5063
+ "fileUrlPath": "src/jsx-runtime.ts",
5064
+ "isReadonly": true,
5065
+ "releaseTag": "Public",
5066
+ "name": "jsxs",
5067
+ "variableTypeTokenRange": {
5068
+ "startIndex": 1,
5069
+ "endIndex": 3
5070
+ }
3583
5071
  },
3584
5072
  {
3585
5073
  "kind": "Function",
@@ -3829,8 +5317,9 @@
3829
5317
  "text": "): "
3830
5318
  },
3831
5319
  {
3832
- "kind": "Content",
3833
- "text": "any"
5320
+ "kind": "Reference",
5321
+ "text": "Children",
5322
+ "canonicalReference": "@alloy-js/core!Children:type"
3834
5323
  },
3835
5324
  {
3836
5325
  "kind": "Content",
@@ -4060,7 +5549,12 @@
4060
5549
  },
4061
5550
  {
4062
5551
  "kind": "Content",
4063
- "text": "any"
5552
+ "text": "import(\"@alloy-js/core/jsx-runtime\")."
5553
+ },
5554
+ {
5555
+ "kind": "Reference",
5556
+ "text": "Children",
5557
+ "canonicalReference": "@alloy-js/core!Children:type"
4064
5558
  },
4065
5559
  {
4066
5560
  "kind": "Content",
@@ -4070,7 +5564,7 @@
4070
5564
  "fileUrlPath": "src/components/MemberName.tsx",
4071
5565
  "returnTypeTokenRange": {
4072
5566
  "startIndex": 1,
4073
- "endIndex": 2
5567
+ "endIndex": 3
4074
5568
  },
4075
5569
  "releaseTag": "Public",
4076
5570
  "overloadIndex": 1,
@@ -4096,8 +5590,9 @@
4096
5590
  "text": "): "
4097
5591
  },
4098
5592
  {
4099
- "kind": "Content",
4100
- "text": "any"
5593
+ "kind": "Reference",
5594
+ "text": "Children",
5595
+ "canonicalReference": "@alloy-js/core!Children:type"
4101
5596
  },
4102
5597
  {
4103
5598
  "kind": "Content",
@@ -4782,7 +6277,12 @@
4782
6277
  },
4783
6278
  {
4784
6279
  "kind": "Content",
4785
- "text": "any"
6280
+ "text": "import(\"@alloy-js/core/jsx-runtime\")."
6281
+ },
6282
+ {
6283
+ "kind": "Reference",
6284
+ "text": "Children",
6285
+ "canonicalReference": "@alloy-js/core!Children:type"
4786
6286
  },
4787
6287
  {
4788
6288
  "kind": "Content",
@@ -4792,7 +6292,7 @@
4792
6292
  "fileUrlPath": "src/components/Name.tsx",
4793
6293
  "returnTypeTokenRange": {
4794
6294
  "startIndex": 1,
4795
- "endIndex": 2
6295
+ "endIndex": 3
4796
6296
  },
4797
6297
  "releaseTag": "Public",
4798
6298
  "overloadIndex": 1,
@@ -5037,8 +6537,9 @@
5037
6537
  "text": "): "
5038
6538
  },
5039
6539
  {
5040
- "kind": "Content",
5041
- "text": "any"
6540
+ "kind": "Reference",
6541
+ "text": "Children",
6542
+ "canonicalReference": "@alloy-js/core!Children:type"
5042
6543
  },
5043
6544
  {
5044
6545
  "kind": "Content",
@@ -6511,7 +8012,7 @@
6511
8012
  },
6512
8013
  {
6513
8014
  "kind": "Content",
6514
- "text": "<string, unknown>"
8015
+ "text": "<string, any>"
6515
8016
  },
6516
8017
  {
6517
8018
  "kind": "Content",
@@ -6832,7 +8333,7 @@
6832
8333
  {
6833
8334
  "kind": "Interface",
6834
8335
  "canonicalReference": "@alloy-js/core!ResolutionResult:interface",
6835
- "docComment": "/**\n * A successful resolution of a refkey.\n *\n * @example\n *\n * Let's say we have the following scopes and symbols:\n * ```\n * scope: global scope\n * ├── scope: namespace scope 1\n * │ └── symbol: foo\n * │ └── static member scope\n * │ └── symbol: bar\n * └── scope: namespace scope 2\n * └── (resolve bar from here)\n * ```\n *\n * When we resolve the refkey for `bar` from within `namespace scope 2`, we will get the following resolution result:\n *\n * * **targetDeclaration**: symbol bar, the symbol we resolved. * **commonScope**: global scope, because this is the most specific scope that contains both the declaration and the reference. * **pathUp**: [namespace scope 2], because this is the scope between the reference and the common scope. * **pathDown**: [namespace scope 1], because this is the scope between the common scope and the declaration * **memberPath**: [foo, bar], because we resolved a member symbol and these are the symbols that lead from the base declaration to the member symbol.\n */\n",
8336
+ "docComment": "/**\n * A successful resolution of a refkey.\n *\n * @example\n *\n * Let's say we have the following scopes and symbols:\n * ```\n * scope: global scope\n * ├── scope: namespace scope 1\n * │ └── symbol: foo\n * │ └── static member scope\n * │ └── symbol: bar\n * └── scope: namespace scope 2\n * └── (resolve bar from here)\n * ```\n *\n * When we resolve the refkey for `bar` from within `namespace scope 2`, we will get the following resolution result:\n *\n * **targetDeclaration**: symbol bar, the symbol we resolved.\n *\n * **commonScope**: global scope, because this is the most specific scope that contains both the declaration and the reference.\n *\n * **pathUp**: [namespace scope 2], because this is the scope between the reference and the common scope.\n *\n * **pathDown**: [namespace scope 1], because this is the scope between the common scope and the declaration\n *\n * **memberPath**: [foo, bar], because we resolved a member symbol and these are the symbols that lead from the base declaration to the member symbol.\n */\n",
6836
8337
  "excerptTokens": [
6837
8338
  {
6838
8339
  "kind": "Content",
@@ -7150,11 +8651,16 @@
7150
8651
  },
7151
8652
  {
7152
8653
  "kind": "Content",
7153
- "text": ", src?: "
8654
+ "text": ", componentOwner?: "
8655
+ },
8656
+ {
8657
+ "kind": "Reference",
8658
+ "text": "ComponentCreator",
8659
+ "canonicalReference": "@alloy-js/core!ComponentCreator:interface"
7154
8660
  },
7155
8661
  {
7156
8662
  "kind": "Content",
7157
- "text": "string"
8663
+ "text": "<any>"
7158
8664
  },
7159
8665
  {
7160
8666
  "kind": "Content",
@@ -7171,8 +8677,8 @@
7171
8677
  ],
7172
8678
  "fileUrlPath": "src/jsx-runtime.ts",
7173
8679
  "returnTypeTokenRange": {
7174
- "startIndex": 7,
7175
- "endIndex": 8
8680
+ "startIndex": 8,
8681
+ "endIndex": 9
7176
8682
  },
7177
8683
  "releaseTag": "Public",
7178
8684
  "overloadIndex": 1,
@@ -7186,10 +8692,10 @@
7186
8692
  "isOptional": false
7187
8693
  },
7188
8694
  {
7189
- "parameterName": "src",
8695
+ "parameterName": "componentOwner",
7190
8696
  "parameterTypeTokenRange": {
7191
8697
  "startIndex": 5,
7192
- "endIndex": 6
8698
+ "endIndex": 7
7193
8699
  },
7194
8700
  "isOptional": true
7195
8701
  }
@@ -7228,8 +8734,9 @@
7228
8734
  "text": "): "
7229
8735
  },
7230
8736
  {
7231
- "kind": "Content",
7232
- "text": "any"
8737
+ "kind": "Reference",
8738
+ "text": "Children",
8739
+ "canonicalReference": "@alloy-js/core!Children:type"
7233
8740
  },
7234
8741
  {
7235
8742
  "kind": "Content",
@@ -7420,29 +8927,6 @@
7420
8927
  ],
7421
8928
  "extendsTokenRanges": []
7422
8929
  },
7423
- {
7424
- "kind": "Variable",
7425
- "canonicalReference": "@alloy-js/core!shouldDebug:var",
7426
- "docComment": "",
7427
- "excerptTokens": [
7428
- {
7429
- "kind": "Content",
7430
- "text": "shouldDebug: "
7431
- },
7432
- {
7433
- "kind": "Content",
7434
- "text": "boolean"
7435
- }
7436
- ],
7437
- "fileUrlPath": "src/jsx-runtime.ts",
7438
- "isReadonly": true,
7439
- "releaseTag": "Public",
7440
- "name": "shouldDebug",
7441
- "variableTypeTokenRange": {
7442
- "startIndex": 1,
7443
- "endIndex": 2
7444
- }
7445
- },
7446
8930
  {
7447
8931
  "kind": "Function",
7448
8932
  "canonicalReference": "@alloy-js/core!SourceDirectory:function(1)",
@@ -7462,8 +8946,9 @@
7462
8946
  "text": "): "
7463
8947
  },
7464
8948
  {
7465
- "kind": "Content",
7466
- "text": "any"
8949
+ "kind": "Reference",
8950
+ "text": "Children",
8951
+ "canonicalReference": "@alloy-js/core!Children:type"
7467
8952
  },
7468
8953
  {
7469
8954
  "kind": "Content",
@@ -7700,10 +9185,6 @@
7700
9185
  "text": "Children",
7701
9186
  "canonicalReference": "@alloy-js/core!Children:type"
7702
9187
  },
7703
- {
7704
- "kind": "Content",
7705
- "text": "[]"
7706
- },
7707
9188
  {
7708
9189
  "kind": "Content",
7709
9190
  "text": ";"
@@ -7715,7 +9196,7 @@
7715
9196
  "name": "children",
7716
9197
  "propertyTypeTokenRange": {
7717
9198
  "startIndex": 1,
7718
- "endIndex": 3
9199
+ "endIndex": 2
7719
9200
  }
7720
9201
  },
7721
9202
  {
@@ -7767,8 +9248,9 @@
7767
9248
  "text": "): "
7768
9249
  },
7769
9250
  {
7770
- "kind": "Content",
7771
- "text": "any"
9251
+ "kind": "Reference",
9252
+ "text": "Children",
9253
+ "canonicalReference": "@alloy-js/core!Children:type"
7772
9254
  },
7773
9255
  {
7774
9256
  "kind": "Content",
@@ -7973,10 +9455,6 @@
7973
9455
  "text": "Children",
7974
9456
  "canonicalReference": "@alloy-js/core!Children:type"
7975
9457
  },
7976
- {
7977
- "kind": "Content",
7978
- "text": "[]"
7979
- },
7980
9458
  {
7981
9459
  "kind": "Content",
7982
9460
  "text": ";"
@@ -7988,7 +9466,7 @@
7988
9466
  "name": "children",
7989
9467
  "propertyTypeTokenRange": {
7990
9468
  "startIndex": 1,
7991
- "endIndex": 3
9469
+ "endIndex": 2
7992
9470
  }
7993
9471
  },
7994
9472
  {
@@ -8416,6 +9894,140 @@
8416
9894
  ],
8417
9895
  "name": "taggedComponent"
8418
9896
  },
9897
+ {
9898
+ "kind": "Interface",
9899
+ "canonicalReference": "@alloy-js/core!Tap:interface",
9900
+ "docComment": "",
9901
+ "excerptTokens": [
9902
+ {
9903
+ "kind": "Content",
9904
+ "text": "export interface Tap<T> extends "
9905
+ },
9906
+ {
9907
+ "kind": "Reference",
9908
+ "text": "ComponentDefinition",
9909
+ "canonicalReference": "@alloy-js/core!ComponentDefinition:interface"
9910
+ },
9911
+ {
9912
+ "kind": "Content",
9913
+ "text": " "
9914
+ }
9915
+ ],
9916
+ "fileUrlPath": "src/tap.ts",
9917
+ "releaseTag": "Public",
9918
+ "typeParameters": [
9919
+ {
9920
+ "typeParameterName": "T",
9921
+ "constraintTokenRange": {
9922
+ "startIndex": 0,
9923
+ "endIndex": 0
9924
+ },
9925
+ "defaultTypeTokenRange": {
9926
+ "startIndex": 0,
9927
+ "endIndex": 0
9928
+ }
9929
+ }
9930
+ ],
9931
+ "name": "Tap",
9932
+ "preserveMemberOrder": false,
9933
+ "members": [
9934
+ {
9935
+ "kind": "PropertySignature",
9936
+ "canonicalReference": "@alloy-js/core!Tap#ref:member",
9937
+ "docComment": "",
9938
+ "excerptTokens": [
9939
+ {
9940
+ "kind": "Content",
9941
+ "text": "ref: "
9942
+ },
9943
+ {
9944
+ "kind": "Reference",
9945
+ "text": "ShallowRef",
9946
+ "canonicalReference": "@vue/reactivity!ShallowRef:type"
9947
+ },
9948
+ {
9949
+ "kind": "Content",
9950
+ "text": "<T | undefined>"
9951
+ },
9952
+ {
9953
+ "kind": "Content",
9954
+ "text": ";"
9955
+ }
9956
+ ],
9957
+ "isReadonly": false,
9958
+ "isOptional": false,
9959
+ "releaseTag": "Public",
9960
+ "name": "ref",
9961
+ "propertyTypeTokenRange": {
9962
+ "startIndex": 1,
9963
+ "endIndex": 3
9964
+ }
9965
+ }
9966
+ ],
9967
+ "extendsTokenRanges": [
9968
+ {
9969
+ "startIndex": 1,
9970
+ "endIndex": 2
9971
+ }
9972
+ ]
9973
+ },
9974
+ {
9975
+ "kind": "Interface",
9976
+ "canonicalReference": "@alloy-js/core!Tapper:interface",
9977
+ "docComment": "",
9978
+ "excerptTokens": [
9979
+ {
9980
+ "kind": "Content",
9981
+ "text": "export interface Tapper<T> "
9982
+ }
9983
+ ],
9984
+ "fileUrlPath": "src/tap.ts",
9985
+ "releaseTag": "Public",
9986
+ "typeParameters": [
9987
+ {
9988
+ "typeParameterName": "T",
9989
+ "constraintTokenRange": {
9990
+ "startIndex": 0,
9991
+ "endIndex": 0
9992
+ },
9993
+ "defaultTypeTokenRange": {
9994
+ "startIndex": 0,
9995
+ "endIndex": 0
9996
+ }
9997
+ }
9998
+ ],
9999
+ "name": "Tapper",
10000
+ "preserveMemberOrder": false,
10001
+ "members": [
10002
+ {
10003
+ "kind": "CallSignature",
10004
+ "canonicalReference": "@alloy-js/core!Tapper:call(1)",
10005
+ "docComment": "",
10006
+ "excerptTokens": [
10007
+ {
10008
+ "kind": "Content",
10009
+ "text": "(): "
10010
+ },
10011
+ {
10012
+ "kind": "Content",
10013
+ "text": "T | undefined"
10014
+ },
10015
+ {
10016
+ "kind": "Content",
10017
+ "text": ";"
10018
+ }
10019
+ ],
10020
+ "returnTypeTokenRange": {
10021
+ "startIndex": 1,
10022
+ "endIndex": 2
10023
+ },
10024
+ "releaseTag": "Public",
10025
+ "overloadIndex": 1,
10026
+ "parameters": []
10027
+ }
10028
+ ],
10029
+ "extendsTokenRanges": []
10030
+ },
8419
10031
  {
8420
10032
  "kind": "Variable",
8421
10033
  "canonicalReference": "@alloy-js/core!TestContext:var",
@@ -8708,6 +10320,39 @@
8708
10320
  ],
8709
10321
  "name": "useDefaultScope"
8710
10322
  },
10323
+ {
10324
+ "kind": "Function",
10325
+ "canonicalReference": "@alloy-js/core!useMemberDeclaration:function(1)",
10326
+ "docComment": "",
10327
+ "excerptTokens": [
10328
+ {
10329
+ "kind": "Content",
10330
+ "text": "export declare function useMemberDeclaration(): "
10331
+ },
10332
+ {
10333
+ "kind": "Reference",
10334
+ "text": "OutputSymbol",
10335
+ "canonicalReference": "@alloy-js/core!OutputSymbol:interface"
10336
+ },
10337
+ {
10338
+ "kind": "Content",
10339
+ "text": " | undefined"
10340
+ },
10341
+ {
10342
+ "kind": "Content",
10343
+ "text": ";"
10344
+ }
10345
+ ],
10346
+ "fileUrlPath": "src/context/member-declaration.ts",
10347
+ "returnTypeTokenRange": {
10348
+ "startIndex": 1,
10349
+ "endIndex": 3
10350
+ },
10351
+ "releaseTag": "Public",
10352
+ "overloadIndex": 1,
10353
+ "parameters": [],
10354
+ "name": "useMemberDeclaration"
10355
+ },
8711
10356
  {
8712
10357
  "kind": "Function",
8713
10358
  "canonicalReference": "@alloy-js/core!useMemberScope:function(1)",
@@ -8834,7 +10479,7 @@
8834
10479
  "text": ";"
8835
10480
  }
8836
10481
  ],
8837
- "fileUrlPath": "src/utils.ts",
10482
+ "fileUrlPath": "src/write-output.ts",
8838
10483
  "returnTypeTokenRange": {
8839
10484
  "startIndex": 5,
8840
10485
  "endIndex": 6