circuit-json 0.0.303 → 0.0.305

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.
package/README.md CHANGED
@@ -1320,16 +1320,16 @@ interface PcbGroup {
1320
1320
 
1321
1321
  [Source](https://github.com/tscircuit/circuit-json/blob/main/src/pcb/pcb_hole.ts)
1322
1322
 
1323
- Defines a circular or square hole on the PCB
1323
+ Defines a circular hole on the PCB
1324
1324
 
1325
1325
  ```typescript
1326
- /** Defines a circular or square hole on the PCB */
1327
- interface PcbHoleCircleOrSquare {
1326
+ /** Defines a circular hole on the PCB */
1327
+ interface PcbHoleCircle {
1328
1328
  type: "pcb_hole"
1329
1329
  pcb_hole_id: string
1330
1330
  pcb_group_id?: string
1331
1331
  subcircuit_id?: string
1332
- hole_shape: "circle" | "square"
1332
+ hole_shape: "circle"
1333
1333
  hole_diameter: number
1334
1334
  x: Distance
1335
1335
  y: Distance
@@ -2055,6 +2055,7 @@ interface PcbVia {
2055
2055
  pcb_via_id: string
2056
2056
  pcb_group_id?: string
2057
2057
  subcircuit_id?: string
2058
+ subcircuit_connectivity_key?: string
2058
2059
  x: Distance
2059
2060
  y: Distance
2060
2061
  outer_diameter: Distance
package/dist/index.d.mts CHANGED
@@ -473,6 +473,153 @@ interface PcbComponent {
473
473
  */
474
474
  type PCBComponent = PcbComponent;
475
475
 
476
+ declare const pcb_hole_circle: z.ZodObject<{
477
+ type: z.ZodLiteral<"pcb_hole">;
478
+ pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
479
+ pcb_group_id: z.ZodOptional<z.ZodString>;
480
+ subcircuit_id: z.ZodOptional<z.ZodString>;
481
+ hole_shape: z.ZodLiteral<"circle">;
482
+ hole_diameter: z.ZodNumber;
483
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
484
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
485
+ }, "strip", z.ZodTypeAny, {
486
+ x: number;
487
+ y: number;
488
+ type: "pcb_hole";
489
+ pcb_hole_id: string;
490
+ hole_shape: "circle";
491
+ hole_diameter: number;
492
+ subcircuit_id?: string | undefined;
493
+ pcb_group_id?: string | undefined;
494
+ }, {
495
+ x: string | number;
496
+ y: string | number;
497
+ type: "pcb_hole";
498
+ hole_shape: "circle";
499
+ hole_diameter: number;
500
+ subcircuit_id?: string | undefined;
501
+ pcb_group_id?: string | undefined;
502
+ pcb_hole_id?: string | undefined;
503
+ }>;
504
+ declare const pcb_hole_circle_shape: z.ZodObject<{
505
+ type: z.ZodLiteral<"pcb_hole">;
506
+ pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
507
+ pcb_group_id: z.ZodOptional<z.ZodString>;
508
+ subcircuit_id: z.ZodOptional<z.ZodString>;
509
+ hole_shape: z.ZodLiteral<"circle">;
510
+ hole_diameter: z.ZodNumber;
511
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
512
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
513
+ }, "strip", z.ZodTypeAny, {
514
+ x: number;
515
+ y: number;
516
+ type: "pcb_hole";
517
+ pcb_hole_id: string;
518
+ hole_shape: "circle";
519
+ hole_diameter: number;
520
+ subcircuit_id?: string | undefined;
521
+ pcb_group_id?: string | undefined;
522
+ }, {
523
+ x: string | number;
524
+ y: string | number;
525
+ type: "pcb_hole";
526
+ hole_shape: "circle";
527
+ hole_diameter: number;
528
+ subcircuit_id?: string | undefined;
529
+ pcb_group_id?: string | undefined;
530
+ pcb_hole_id?: string | undefined;
531
+ }>;
532
+ type PcbHoleCircleInput = z.input<typeof pcb_hole_circle>;
533
+ /**
534
+ * Defines a circular hole on the PCB
535
+ */
536
+ interface PcbHoleCircle {
537
+ type: "pcb_hole";
538
+ pcb_hole_id: string;
539
+ pcb_group_id?: string;
540
+ subcircuit_id?: string;
541
+ hole_shape: "circle";
542
+ hole_diameter: number;
543
+ x: Distance;
544
+ y: Distance;
545
+ }
546
+ declare const pcb_hole_rect: z.ZodObject<{
547
+ type: z.ZodLiteral<"pcb_hole">;
548
+ pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
549
+ pcb_group_id: z.ZodOptional<z.ZodString>;
550
+ subcircuit_id: z.ZodOptional<z.ZodString>;
551
+ hole_shape: z.ZodLiteral<"rect">;
552
+ hole_width: z.ZodNumber;
553
+ hole_height: z.ZodNumber;
554
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
555
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
556
+ }, "strip", z.ZodTypeAny, {
557
+ x: number;
558
+ y: number;
559
+ type: "pcb_hole";
560
+ pcb_hole_id: string;
561
+ hole_shape: "rect";
562
+ hole_width: number;
563
+ hole_height: number;
564
+ subcircuit_id?: string | undefined;
565
+ pcb_group_id?: string | undefined;
566
+ }, {
567
+ x: string | number;
568
+ y: string | number;
569
+ type: "pcb_hole";
570
+ hole_shape: "rect";
571
+ hole_width: number;
572
+ hole_height: number;
573
+ subcircuit_id?: string | undefined;
574
+ pcb_group_id?: string | undefined;
575
+ pcb_hole_id?: string | undefined;
576
+ }>;
577
+ declare const pcb_hole_rect_shape: z.ZodObject<{
578
+ type: z.ZodLiteral<"pcb_hole">;
579
+ pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
580
+ pcb_group_id: z.ZodOptional<z.ZodString>;
581
+ subcircuit_id: z.ZodOptional<z.ZodString>;
582
+ hole_shape: z.ZodLiteral<"rect">;
583
+ hole_width: z.ZodNumber;
584
+ hole_height: z.ZodNumber;
585
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
586
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
587
+ }, "strip", z.ZodTypeAny, {
588
+ x: number;
589
+ y: number;
590
+ type: "pcb_hole";
591
+ pcb_hole_id: string;
592
+ hole_shape: "rect";
593
+ hole_width: number;
594
+ hole_height: number;
595
+ subcircuit_id?: string | undefined;
596
+ pcb_group_id?: string | undefined;
597
+ }, {
598
+ x: string | number;
599
+ y: string | number;
600
+ type: "pcb_hole";
601
+ hole_shape: "rect";
602
+ hole_width: number;
603
+ hole_height: number;
604
+ subcircuit_id?: string | undefined;
605
+ pcb_group_id?: string | undefined;
606
+ pcb_hole_id?: string | undefined;
607
+ }>;
608
+ type PcbHoleRectInput = z.input<typeof pcb_hole_rect>;
609
+ /**
610
+ * Defines a rectangular (or square) hole on the PCB
611
+ */
612
+ interface PcbHoleRect {
613
+ type: "pcb_hole";
614
+ pcb_hole_id: string;
615
+ pcb_group_id?: string;
616
+ subcircuit_id?: string;
617
+ hole_shape: "rect";
618
+ hole_width: number;
619
+ hole_height: number;
620
+ x: Distance;
621
+ y: Distance;
622
+ }
476
623
  declare const pcb_hole_circle_or_square: z.ZodObject<{
477
624
  type: z.ZodLiteral<"pcb_hole">;
478
625
  pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
@@ -533,6 +680,9 @@ type PcbHoleCircleOrSquareInput = z.input<typeof pcb_hole_circle_or_square>;
533
680
  /**
534
681
  * Defines a circular or square hole on the PCB
535
682
  */
683
+ /**
684
+ * @deprecated Use `PcbHoleCircle` for circular holes or `PcbHoleRect` for square holes.
685
+ */
536
686
  interface PcbHoleCircleOrSquare {
537
687
  type: "pcb_hole";
538
688
  pcb_hole_id: string;
@@ -781,7 +931,7 @@ interface PcbHoleRotatedPill {
781
931
  y: Distance;
782
932
  ccw_rotation: Rotation;
783
933
  }
784
- declare const pcb_hole: z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
934
+ declare const pcb_hole: z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
785
935
  type: z.ZodLiteral<"pcb_hole">;
786
936
  pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
787
937
  pcb_group_id: z.ZodOptional<z.ZodString>;
@@ -901,16 +1051,73 @@ declare const pcb_hole: z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
901
1051
  subcircuit_id?: string | undefined;
902
1052
  pcb_group_id?: string | undefined;
903
1053
  pcb_hole_id?: string | undefined;
1054
+ }>]>, z.ZodObject<{
1055
+ type: z.ZodLiteral<"pcb_hole">;
1056
+ pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
1057
+ pcb_group_id: z.ZodOptional<z.ZodString>;
1058
+ subcircuit_id: z.ZodOptional<z.ZodString>;
1059
+ hole_shape: z.ZodLiteral<"circle">;
1060
+ hole_diameter: z.ZodNumber;
1061
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
1062
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
1063
+ }, "strip", z.ZodTypeAny, {
1064
+ x: number;
1065
+ y: number;
1066
+ type: "pcb_hole";
1067
+ pcb_hole_id: string;
1068
+ hole_shape: "circle";
1069
+ hole_diameter: number;
1070
+ subcircuit_id?: string | undefined;
1071
+ pcb_group_id?: string | undefined;
1072
+ }, {
1073
+ x: string | number;
1074
+ y: string | number;
1075
+ type: "pcb_hole";
1076
+ hole_shape: "circle";
1077
+ hole_diameter: number;
1078
+ subcircuit_id?: string | undefined;
1079
+ pcb_group_id?: string | undefined;
1080
+ pcb_hole_id?: string | undefined;
1081
+ }>]>, z.ZodObject<{
1082
+ type: z.ZodLiteral<"pcb_hole">;
1083
+ pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
1084
+ pcb_group_id: z.ZodOptional<z.ZodString>;
1085
+ subcircuit_id: z.ZodOptional<z.ZodString>;
1086
+ hole_shape: z.ZodLiteral<"rect">;
1087
+ hole_width: z.ZodNumber;
1088
+ hole_height: z.ZodNumber;
1089
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
1090
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
1091
+ }, "strip", z.ZodTypeAny, {
1092
+ x: number;
1093
+ y: number;
1094
+ type: "pcb_hole";
1095
+ pcb_hole_id: string;
1096
+ hole_shape: "rect";
1097
+ hole_width: number;
1098
+ hole_height: number;
1099
+ subcircuit_id?: string | undefined;
1100
+ pcb_group_id?: string | undefined;
1101
+ }, {
1102
+ x: string | number;
1103
+ y: string | number;
1104
+ type: "pcb_hole";
1105
+ hole_shape: "rect";
1106
+ hole_width: number;
1107
+ hole_height: number;
1108
+ subcircuit_id?: string | undefined;
1109
+ pcb_group_id?: string | undefined;
1110
+ pcb_hole_id?: string | undefined;
904
1111
  }>]>;
905
1112
  /**
906
- * @deprecated Use PcbHoleCircleOrSquare, PcbHoleOval, PcbHolePill, or PcbHoleRotatedPill
1113
+ * @deprecated Use PcbHoleCircleOrSquare, PcbHoleCircle, PcbHoleRect, PcbHoleOval, PcbHolePill, or PcbHoleRotatedPill
907
1114
  */
908
1115
  type PCBHoleInput = z.input<typeof pcb_hole>;
909
1116
  /**
910
- * @deprecated Use PcbHoleCircleOrSquare, PcbHoleOval, PcbHolePill, or PcbHoleRotatedPill
1117
+ * @deprecated Use PcbHoleCircleOrSquare, PcbHoleCircle, PcbHoleRect, PcbHoleOval, PcbHolePill, or PcbHoleRotatedPill
911
1118
  */
912
1119
  type PCBHole = z.infer<typeof pcb_hole>;
913
- type PcbHole = PcbHoleCircleOrSquare | PcbHoleOval | PcbHolePill | PcbHoleRotatedPill;
1120
+ type PcbHole = PcbHoleCircleOrSquare | PcbHoleOval | PcbHolePill | PcbHoleRotatedPill | PcbHoleCircle | PcbHoleRect;
914
1121
 
915
1122
  /**
916
1123
  * Defines a circular plated hole on the PCB
@@ -2947,6 +3154,7 @@ declare const pcb_via: z.ZodObject<{
2947
3154
  pcb_via_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
2948
3155
  pcb_group_id: z.ZodOptional<z.ZodString>;
2949
3156
  subcircuit_id: z.ZodOptional<z.ZodString>;
3157
+ subcircuit_connectivity_key: z.ZodOptional<z.ZodString>;
2950
3158
  x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
2951
3159
  y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
2952
3160
  outer_diameter: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
@@ -2996,6 +3204,7 @@ declare const pcb_via: z.ZodObject<{
2996
3204
  pcb_group_id?: string | undefined;
2997
3205
  from_layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
2998
3206
  pcb_trace_id?: string | undefined;
3207
+ subcircuit_connectivity_key?: string | undefined;
2999
3208
  net_is_assignable?: boolean | undefined;
3000
3209
  net_assigned?: boolean | undefined;
3001
3210
  }, {
@@ -3017,6 +3226,7 @@ declare const pcb_via: z.ZodObject<{
3017
3226
  } | undefined;
3018
3227
  pcb_trace_id?: string | undefined;
3019
3228
  pcb_via_id?: string | undefined;
3229
+ subcircuit_connectivity_key?: string | undefined;
3020
3230
  net_is_assignable?: boolean | undefined;
3021
3231
  net_assigned?: boolean | undefined;
3022
3232
  }>;
@@ -3029,6 +3239,7 @@ interface PcbVia {
3029
3239
  pcb_via_id: string;
3030
3240
  pcb_group_id?: string;
3031
3241
  subcircuit_id?: string;
3242
+ subcircuit_connectivity_key?: string;
3032
3243
  x: Distance;
3033
3244
  y: Distance;
3034
3245
  outer_diameter: Distance;
@@ -13954,7 +14165,7 @@ declare const any_circuit_element: z.ZodUnion<[z.ZodObject<{
13954
14165
  position_mode?: "packed" | "relative_to_group_anchor" | "none" | undefined;
13955
14166
  positioned_relative_to_pcb_group_id?: string | undefined;
13956
14167
  obstructs_within_bounds?: boolean | undefined;
13957
- }>, z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
14168
+ }>, z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
13958
14169
  type: z.ZodLiteral<"pcb_hole">;
13959
14170
  pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
13960
14171
  pcb_group_id: z.ZodOptional<z.ZodString>;
@@ -14074,6 +14285,63 @@ declare const any_circuit_element: z.ZodUnion<[z.ZodObject<{
14074
14285
  subcircuit_id?: string | undefined;
14075
14286
  pcb_group_id?: string | undefined;
14076
14287
  pcb_hole_id?: string | undefined;
14288
+ }>]>, z.ZodObject<{
14289
+ type: z.ZodLiteral<"pcb_hole">;
14290
+ pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
14291
+ pcb_group_id: z.ZodOptional<z.ZodString>;
14292
+ subcircuit_id: z.ZodOptional<z.ZodString>;
14293
+ hole_shape: z.ZodLiteral<"circle">;
14294
+ hole_diameter: z.ZodNumber;
14295
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
14296
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
14297
+ }, "strip", z.ZodTypeAny, {
14298
+ x: number;
14299
+ y: number;
14300
+ type: "pcb_hole";
14301
+ pcb_hole_id: string;
14302
+ hole_shape: "circle";
14303
+ hole_diameter: number;
14304
+ subcircuit_id?: string | undefined;
14305
+ pcb_group_id?: string | undefined;
14306
+ }, {
14307
+ x: string | number;
14308
+ y: string | number;
14309
+ type: "pcb_hole";
14310
+ hole_shape: "circle";
14311
+ hole_diameter: number;
14312
+ subcircuit_id?: string | undefined;
14313
+ pcb_group_id?: string | undefined;
14314
+ pcb_hole_id?: string | undefined;
14315
+ }>]>, z.ZodObject<{
14316
+ type: z.ZodLiteral<"pcb_hole">;
14317
+ pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
14318
+ pcb_group_id: z.ZodOptional<z.ZodString>;
14319
+ subcircuit_id: z.ZodOptional<z.ZodString>;
14320
+ hole_shape: z.ZodLiteral<"rect">;
14321
+ hole_width: z.ZodNumber;
14322
+ hole_height: z.ZodNumber;
14323
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
14324
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
14325
+ }, "strip", z.ZodTypeAny, {
14326
+ x: number;
14327
+ y: number;
14328
+ type: "pcb_hole";
14329
+ pcb_hole_id: string;
14330
+ hole_shape: "rect";
14331
+ hole_width: number;
14332
+ hole_height: number;
14333
+ subcircuit_id?: string | undefined;
14334
+ pcb_group_id?: string | undefined;
14335
+ }, {
14336
+ x: string | number;
14337
+ y: string | number;
14338
+ type: "pcb_hole";
14339
+ hole_shape: "rect";
14340
+ hole_width: number;
14341
+ hole_height: number;
14342
+ subcircuit_id?: string | undefined;
14343
+ pcb_group_id?: string | undefined;
14344
+ pcb_hole_id?: string | undefined;
14077
14345
  }>]>, z.ZodObject<{
14078
14346
  type: z.ZodLiteral<"pcb_missing_footprint_error">;
14079
14347
  pcb_missing_footprint_error_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
@@ -14868,6 +15136,7 @@ declare const any_circuit_element: z.ZodUnion<[z.ZodObject<{
14868
15136
  pcb_via_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
14869
15137
  pcb_group_id: z.ZodOptional<z.ZodString>;
14870
15138
  subcircuit_id: z.ZodOptional<z.ZodString>;
15139
+ subcircuit_connectivity_key: z.ZodOptional<z.ZodString>;
14871
15140
  x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
14872
15141
  y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
14873
15142
  outer_diameter: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
@@ -14915,6 +15184,7 @@ declare const any_circuit_element: z.ZodUnion<[z.ZodObject<{
14915
15184
  pcb_group_id?: string | undefined;
14916
15185
  from_layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
14917
15186
  pcb_trace_id?: string | undefined;
15187
+ subcircuit_connectivity_key?: string | undefined;
14918
15188
  net_is_assignable?: boolean | undefined;
14919
15189
  net_assigned?: boolean | undefined;
14920
15190
  }, {
@@ -14936,6 +15206,7 @@ declare const any_circuit_element: z.ZodUnion<[z.ZodObject<{
14936
15206
  } | undefined;
14937
15207
  pcb_trace_id?: string | undefined;
14938
15208
  pcb_via_id?: string | undefined;
15209
+ subcircuit_connectivity_key?: string | undefined;
14939
15210
  net_is_assignable?: boolean | undefined;
14940
15211
  net_assigned?: boolean | undefined;
14941
15212
  }>, z.ZodDiscriminatedUnion<"shape", [z.ZodObject<{
@@ -21482,7 +21753,7 @@ declare const any_soup_element: z.ZodUnion<[z.ZodObject<{
21482
21753
  position_mode?: "packed" | "relative_to_group_anchor" | "none" | undefined;
21483
21754
  positioned_relative_to_pcb_group_id?: string | undefined;
21484
21755
  obstructs_within_bounds?: boolean | undefined;
21485
- }>, z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
21756
+ }>, z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
21486
21757
  type: z.ZodLiteral<"pcb_hole">;
21487
21758
  pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
21488
21759
  pcb_group_id: z.ZodOptional<z.ZodString>;
@@ -21602,6 +21873,63 @@ declare const any_soup_element: z.ZodUnion<[z.ZodObject<{
21602
21873
  subcircuit_id?: string | undefined;
21603
21874
  pcb_group_id?: string | undefined;
21604
21875
  pcb_hole_id?: string | undefined;
21876
+ }>]>, z.ZodObject<{
21877
+ type: z.ZodLiteral<"pcb_hole">;
21878
+ pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
21879
+ pcb_group_id: z.ZodOptional<z.ZodString>;
21880
+ subcircuit_id: z.ZodOptional<z.ZodString>;
21881
+ hole_shape: z.ZodLiteral<"circle">;
21882
+ hole_diameter: z.ZodNumber;
21883
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
21884
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
21885
+ }, "strip", z.ZodTypeAny, {
21886
+ x: number;
21887
+ y: number;
21888
+ type: "pcb_hole";
21889
+ pcb_hole_id: string;
21890
+ hole_shape: "circle";
21891
+ hole_diameter: number;
21892
+ subcircuit_id?: string | undefined;
21893
+ pcb_group_id?: string | undefined;
21894
+ }, {
21895
+ x: string | number;
21896
+ y: string | number;
21897
+ type: "pcb_hole";
21898
+ hole_shape: "circle";
21899
+ hole_diameter: number;
21900
+ subcircuit_id?: string | undefined;
21901
+ pcb_group_id?: string | undefined;
21902
+ pcb_hole_id?: string | undefined;
21903
+ }>]>, z.ZodObject<{
21904
+ type: z.ZodLiteral<"pcb_hole">;
21905
+ pcb_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
21906
+ pcb_group_id: z.ZodOptional<z.ZodString>;
21907
+ subcircuit_id: z.ZodOptional<z.ZodString>;
21908
+ hole_shape: z.ZodLiteral<"rect">;
21909
+ hole_width: z.ZodNumber;
21910
+ hole_height: z.ZodNumber;
21911
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
21912
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
21913
+ }, "strip", z.ZodTypeAny, {
21914
+ x: number;
21915
+ y: number;
21916
+ type: "pcb_hole";
21917
+ pcb_hole_id: string;
21918
+ hole_shape: "rect";
21919
+ hole_width: number;
21920
+ hole_height: number;
21921
+ subcircuit_id?: string | undefined;
21922
+ pcb_group_id?: string | undefined;
21923
+ }, {
21924
+ x: string | number;
21925
+ y: string | number;
21926
+ type: "pcb_hole";
21927
+ hole_shape: "rect";
21928
+ hole_width: number;
21929
+ hole_height: number;
21930
+ subcircuit_id?: string | undefined;
21931
+ pcb_group_id?: string | undefined;
21932
+ pcb_hole_id?: string | undefined;
21605
21933
  }>]>, z.ZodObject<{
21606
21934
  type: z.ZodLiteral<"pcb_missing_footprint_error">;
21607
21935
  pcb_missing_footprint_error_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
@@ -22396,6 +22724,7 @@ declare const any_soup_element: z.ZodUnion<[z.ZodObject<{
22396
22724
  pcb_via_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
22397
22725
  pcb_group_id: z.ZodOptional<z.ZodString>;
22398
22726
  subcircuit_id: z.ZodOptional<z.ZodString>;
22727
+ subcircuit_connectivity_key: z.ZodOptional<z.ZodString>;
22399
22728
  x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
22400
22729
  y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
22401
22730
  outer_diameter: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
@@ -22443,6 +22772,7 @@ declare const any_soup_element: z.ZodUnion<[z.ZodObject<{
22443
22772
  pcb_group_id?: string | undefined;
22444
22773
  from_layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
22445
22774
  pcb_trace_id?: string | undefined;
22775
+ subcircuit_connectivity_key?: string | undefined;
22446
22776
  net_is_assignable?: boolean | undefined;
22447
22777
  net_assigned?: boolean | undefined;
22448
22778
  }, {
@@ -22464,6 +22794,7 @@ declare const any_soup_element: z.ZodUnion<[z.ZodObject<{
22464
22794
  } | undefined;
22465
22795
  pcb_trace_id?: string | undefined;
22466
22796
  pcb_via_id?: string | undefined;
22797
+ subcircuit_connectivity_key?: string | undefined;
22467
22798
  net_is_assignable?: boolean | undefined;
22468
22799
  net_assigned?: boolean | undefined;
22469
22800
  }>, z.ZodDiscriminatedUnion<"shape", [z.ZodObject<{
@@ -26954,4 +27285,4 @@ type AnySoupElementInput = AnyCircuitElementInput;
26954
27285
  */
26955
27286
  type CircuitJson = AnyCircuitElement[];
26956
27287
 
26957
- export { type AnyCircuitElement, type AnyCircuitElementInput, type AnySoupElement, type AnySoupElementInput, type AnySourceComponent, type AnySourceElement, type BRepShape, type CadComponent, type CadComponentInput, type CircuitJson, type CircuitJsonError, type CircuitJsonFootprintLoadError, type CircuitJsonFootprintLoadErrorInput, type Distance, type ExperimentType, type ExternalFootprintLoadError, type ExternalFootprintLoadErrorInput, type InferredProjectMetadata, type InferredSchematicNetLabel, type InputPoint, type InputPosition, type InputRotation, type LayerRef, type LayerRefInput, type Length, type NinePointAnchor, type PCBBoard, type PCBComponent, type PCBCopperText, type PCBCourtyardOutline, type PCBCourtyardPolygon, type PCBCourtyardRect, type PCBFabricationNoteDimension, type PCBFabricationNotePath, type PCBFabricationNoteRect, type PCBFabricationNoteText, type PCBHole, type PCBHoleInput, type PCBKeepout, type PCBKeepoutCircle, type PCBKeepoutInput, type PCBKeepoutRect, type PCBMissingFootprintError, type PCBPanel, type PCBPlacementError, type PCBPlatedHole, type PCBPlatedHoleInput, type PCBPort, type PCBPortInput, type PCBPortNotMatchedError, type PCBSMTPad, type PCBSMTPadInput, type PCBSilkscreenLine, type PCBSilkscreenText, type PCBSolderPasteInput, type PCBText, type PCBTrace, type PCBTraceError, type PCBTraceHint, type PCBTraceInput, type PCBTraceMissingError, type PCBVia, type PcbAutoroutingError, type PcbAutoroutingErrorInput, type PcbAutoroutingErrorInterface, type PcbBoard, type PcbBoardInput, type PcbBreakoutPoint, type PcbBreakoutPointInput, type PcbCircuitElement, type PcbComponent, type PcbComponentInput, type PcbComponentInvalidLayerError, type PcbComponentInvalidLayerErrorInput, type PcbComponentOutsideBoardError, type PcbComponentOutsideBoardErrorInput, type PcbCopperPour, type PcbCopperPourBRep, type PcbCopperPourBRepInput, type PcbCopperPourInput, type PcbCopperPourPolygon, type PcbCopperPourPolygonInput, type PcbCopperPourRect, type PcbCopperPourRectInput, type PcbCopperText, type PcbCopperTextInput, type PcbCourtyardOutline, type PcbCourtyardOutlineInput, type PcbCourtyardPolygon, type PcbCourtyardPolygonInput, type PcbCourtyardRect, type PcbCourtyardRectInput, type PcbCutout, type PcbCutoutCircle, type PcbCutoutCircleInput, type PcbCutoutInput, type PcbCutoutPolygon, type PcbCutoutPolygonInput, type PcbCutoutRect, type PcbCutoutRectInput, type PcbFabricationNoteDimension, type PcbFabricationNoteDimensionInput, type PcbFabricationNotePath, type PcbFabricationNotePathInput, type PcbFabricationNoteRect, type PcbFabricationNoteRectInput, type PcbFabricationNoteText, type PcbFabricationNoteTextInput, type PcbFootprintOverlapError, type PcbFootprintOverlapErrorInput, type PcbGroundPlane, type PcbGroundPlaneInput, type PcbGroundPlaneRegion, type PcbGroundPlaneRegionInput, type PcbGroup, type PcbGroupInput, type PcbHole, type PcbHoleCircleOrSquare, type PcbHoleCircleOrSquareInput, type PcbHoleCircularWithRectPad, type PcbHoleOval, type PcbHoleOvalInput, type PcbHolePill, type PcbHolePillInput, type PcbHolePillWithRectPad, type PcbHoleRotatedPill, type PcbHoleRotatedPillInput, type PcbHoleRotatedPillWithRectPad, type PcbManualEditConflictWarning, type PcbManualEditConflictWarningInput, type PcbMissingFootprintError, type PcbMissingFootprintErrorInput, type PcbNet, type PcbNetInput, type PcbNoteDimension, type PcbNoteDimensionInput, type PcbNoteLine, type PcbNoteLineInput, type PcbNotePath, type PcbNotePathInput, type PcbNoteRect, type PcbNoteRectInput, type PcbNoteText, type PcbNoteTextInput, type PcbPanel, type PcbPanelInput, type PcbPlacementError, type PcbPlacementErrorInput, type PcbPlatedHole, type PcbPlatedHoleCircle, type PcbPlatedHoleInput, type PcbPlatedHoleOval, type PcbPort, type PcbPortInput, type PcbPortNotConnectedError, type PcbPortNotConnectedErrorInput, type PcbPortNotMatchedError, type PcbPortNotMatchedErrorInput, type PcbRouteHint, type PcbRouteHintInput, type PcbRouteHints, type PcbRouteHintsInput, type PcbSilkscreenCircle, type PcbSilkscreenCircleInput, type PcbSilkscreenLine, type PcbSilkscreenLineInput, type PcbSilkscreenOval, type PcbSilkscreenOvalDeprecated, type PcbSilkscreenOvalInput, type PcbSilkscreenPath, type PcbSilkscreenPathDeprecated, type PcbSilkscreenPathInput, type PcbSilkscreenRect, type PcbSilkscreenRectInput, type PcbSilkscreenRectOld, type PcbSilkscreenText, type PcbSilkscreenTextInput, type PcbSmtPad, type PcbSmtPadCircle, type PcbSmtPadPill, type PcbSmtPadPolygon, type PcbSmtPadRect, type PcbSmtPadRotatedPill, type PcbSmtPadRotatedRect, type PcbSolderPaste, type PcbSolderPasteCircle, type PcbSolderPasteOval, type PcbSolderPastePill, type PcbSolderPasteRect, type PcbSolderPasteRotatedRect, type PcbText, type PcbTextInput, type PcbThermalSpoke, type PcbThermalSpokeInput, type PcbTrace, type PcbTraceError, type PcbTraceErrorInput, type PcbTraceHint, type PcbTraceHintInput, type PcbTraceInput, type PcbTraceMissingError, type PcbTraceMissingErrorInput, type PcbTraceRoutePoint, type PcbTraceRoutePointVia, type PcbTraceRoutePointWire, type PcbVia, type PcbViaClearanceError, type PcbViaClearanceErrorInput, type PcbViaInput, type Point, type Point3, type PointWithBulge, type Position, type Ring, type Rotation, type RouteHintPoint, type RouteHintPointInput, type SchematicArc, type SchematicArcInput, type SchematicBox, type SchematicBoxInput, type SchematicCircle, type SchematicCircleInput, type SchematicComponent, type SchematicComponentInput, type SchematicDebugLine, type SchematicDebugObject, type SchematicDebugObjectInput, type SchematicDebugPoint, type SchematicDebugRect, type SchematicError, type SchematicErrorInput, type SchematicGroup, type SchematicGroupInput, type SchematicLayoutError, type SchematicLayoutErrorInput, type SchematicLine, type SchematicLineInput, type SchematicManualEditConflictWarning, type SchematicManualEditConflictWarningInput, type SchematicNetLabel, type SchematicNetLabelInput, type SchematicPath, type SchematicPathInput, type SchematicPort, type SchematicPortArrangement, type SchematicPortArrangementBySides, type SchematicPortArrangementBySize, type SchematicPortInput, type SchematicRect, type SchematicRectInput, type SchematicSheet, type SchematicSheetInput, type SchematicTable, type SchematicTableCell, type SchematicTableCellInput, type SchematicTableInput, type SchematicText, type SchematicTextInput, type SchematicTrace, type SchematicTraceEdge, type SchematicTraceInput, type SchematicVoltageProbe, type SchematicVoltageProbeInput, type SimulationAcVoltageSource, type SimulationAcVoltageSourceInput, type SimulationDcVoltageSource, type SimulationExperiment, type SimulationExperimentInput, type SimulationSwitch, type SimulationSwitchInput, type SimulationTransientVoltageGraph, type SimulationTransientVoltageGraphInput, type SimulationUnknownExperimentError, type SimulationUnknownExperimentErrorInput, type SimulationVoltageProbe, type SimulationVoltageProbeInput, type SimulationVoltageSource, type SimulationVoltageSourceInput, type Size, type SizeInput, type SourceBoard, type SourceBoardInput, type SourceComponentBase, type SourceFailedToCreateComponentError, type SourceFailedToCreateComponentErrorInput, type SourceGroup, type SourceGroupInput, type SourceManuallyPlacedVia, type SourceManuallyPlacedViaInput, type SourceMissingPropertyError, type SourceMissingPropertyErrorInput, type SourceNet, type SourceNetInput, type SourcePcbGroundPlane, type SourcePcbGroundPlaneInput, type SourcePinMissingTraceWarning, type SourcePinMissingTraceWarningInput, type SourcePort, type SourcePortInput, type SourceProjectMetadata, type SourcePropertyIgnoredWarning, type SourcePropertyIgnoredWarningInput, type SourceSimpleBattery, type SourceSimpleBatteryInput, type SourceSimpleCapacitor, type SourceSimpleCapacitorInput, type SourceSimpleChip, type SourceSimpleChipInput, type SourceSimpleCrystal, type SourceSimpleCrystalInput, type SourceSimpleDiode, type SourceSimpleDiodeInput, type SourceSimpleGround, type SourceSimpleGroundInput, type SourceSimpleInductor, type SourceSimpleInductorInput, type SourceSimpleLed, type SourceSimpleLedInput, type SourceSimpleMosfet, type SourceSimpleMosfetInput, type SourceSimplePinHeader, type SourceSimplePinHeaderInput, type SourceSimplePinout, type SourceSimplePinoutInput, type SourceSimplePotentiometer, type SourceSimplePotentiometerInput, type SourceSimplePowerSource, type SourceSimplePowerSourceInput, type SourceSimplePushButton, type SourceSimplePushButtonInput, type SourceSimpleResistor, type SourceSimpleResistorInput, type SourceSimpleResonator, type SourceSimpleResonatorInput, type SourceSimpleSwitch, type SourceSimpleSwitchInput, type SourceSimpleTestPoint, type SourceSimpleTestPointInput, type SourceSimpleTransistor, type SourceSimpleTransistorInput, type SourceTrace, type SourceTraceNotConnectedError, type SourceTraceNotConnectedErrorInput, type SupplierName, type UnknownErrorFindingPart, type UnknownErrorFindingPartInput, type VisibleLayer, type VisibleLayerRef, type WaveShape, all_layers, any_circuit_element, any_soup_element, any_source_component, battery_capacity, brep_shape, cad_component, capacitance, circuit_json_footprint_load_error, current, distance, duration_ms, experiment_type, external_footprint_load_error, frequency, getZodPrefixedIdWithDefault, inductance, layer_ref, layer_string, length, ms, ninePointAnchor, pcb_autorouting_error, pcb_board, pcb_breakout_point, pcb_component, pcb_component_invalid_layer_error, pcb_component_outside_board_error, pcb_copper_pour, pcb_copper_pour_brep, pcb_copper_pour_polygon, pcb_copper_pour_rect, pcb_copper_text, pcb_courtyard_outline, pcb_courtyard_polygon, pcb_courtyard_rect, pcb_cutout, pcb_cutout_circle, pcb_cutout_polygon, pcb_cutout_rect, pcb_fabrication_note_dimension, pcb_fabrication_note_path, pcb_fabrication_note_rect, pcb_fabrication_note_text, pcb_footprint_overlap_error, pcb_ground_plane, pcb_ground_plane_region, pcb_group, pcb_hole, pcb_hole_circle_or_square_shape, pcb_hole_oval_shape, pcb_hole_pill_shape, pcb_hole_rotated_pill_shape, pcb_keepout, pcb_manual_edit_conflict_warning, pcb_missing_footprint_error, pcb_net, pcb_note_dimension, pcb_note_line, pcb_note_path, pcb_note_rect, pcb_note_text, pcb_panel, pcb_placement_error, pcb_plated_hole, pcb_port, pcb_port_not_connected_error, pcb_port_not_matched_error, pcb_route_hint, pcb_route_hints, pcb_silkscreen_circle, pcb_silkscreen_line, pcb_silkscreen_oval, pcb_silkscreen_path, pcb_silkscreen_rect, pcb_silkscreen_text, pcb_smtpad, pcb_smtpad_pill, pcb_solder_paste, pcb_text, pcb_thermal_spoke, pcb_trace, pcb_trace_error, pcb_trace_hint, pcb_trace_missing_error, pcb_trace_route_point, pcb_trace_route_point_via, pcb_trace_route_point_wire, pcb_via, pcb_via_clearance_error, point, point3, point_with_bulge, port_arrangement, position, position3, resistance, ring, rotation, route_hint_point, schematic_arc, schematic_box, schematic_circle, schematic_component, schematic_component_port_arrangement_by_sides, schematic_component_port_arrangement_by_size, schematic_debug_line, schematic_debug_object, schematic_debug_object_base, schematic_debug_point, schematic_debug_rect, schematic_error, schematic_group, schematic_layout_error, schematic_line, schematic_manual_edit_conflict_warning, schematic_net_label, schematic_path, schematic_pin_styles, schematic_port, schematic_rect, schematic_sheet, schematic_table, schematic_table_cell, schematic_text, schematic_trace, schematic_voltage_probe, simulation_ac_voltage_source, simulation_dc_voltage_source, simulation_experiment, simulation_switch, simulation_transient_voltage_graph, simulation_unknown_experiment_error, simulation_voltage_probe, simulation_voltage_source, size, source_board, source_component_base, source_failed_to_create_component_error, source_group, source_manually_placed_via, source_missing_property_error, source_net, source_pcb_ground_plane, source_pin_missing_trace_warning, source_port, source_project_metadata, source_property_ignored_warning, source_simple_battery, source_simple_capacitor, source_simple_chip, source_simple_crystal, source_simple_diode, source_simple_ground, source_simple_inductor, source_simple_led, source_simple_mosfet, source_simple_pin_header, source_simple_pinout, source_simple_potentiometer, source_simple_power_source, source_simple_push_button, source_simple_resistor, source_simple_resonator, source_simple_switch, source_simple_test_point, source_simple_transistor, source_trace, source_trace_not_connected_error, supplier_name, time, timestamp, unknown_error_finding_part, visible_layer, voltage, wave_shape };
27288
+ export { type AnyCircuitElement, type AnyCircuitElementInput, type AnySoupElement, type AnySoupElementInput, type AnySourceComponent, type AnySourceElement, type BRepShape, type CadComponent, type CadComponentInput, type CircuitJson, type CircuitJsonError, type CircuitJsonFootprintLoadError, type CircuitJsonFootprintLoadErrorInput, type Distance, type ExperimentType, type ExternalFootprintLoadError, type ExternalFootprintLoadErrorInput, type InferredProjectMetadata, type InferredSchematicNetLabel, type InputPoint, type InputPosition, type InputRotation, type LayerRef, type LayerRefInput, type Length, type NinePointAnchor, type PCBBoard, type PCBComponent, type PCBCopperText, type PCBCourtyardOutline, type PCBCourtyardPolygon, type PCBCourtyardRect, type PCBFabricationNoteDimension, type PCBFabricationNotePath, type PCBFabricationNoteRect, type PCBFabricationNoteText, type PCBHole, type PCBHoleInput, type PCBKeepout, type PCBKeepoutCircle, type PCBKeepoutInput, type PCBKeepoutRect, type PCBMissingFootprintError, type PCBPanel, type PCBPlacementError, type PCBPlatedHole, type PCBPlatedHoleInput, type PCBPort, type PCBPortInput, type PCBPortNotMatchedError, type PCBSMTPad, type PCBSMTPadInput, type PCBSilkscreenLine, type PCBSilkscreenText, type PCBSolderPasteInput, type PCBText, type PCBTrace, type PCBTraceError, type PCBTraceHint, type PCBTraceInput, type PCBTraceMissingError, type PCBVia, type PcbAutoroutingError, type PcbAutoroutingErrorInput, type PcbAutoroutingErrorInterface, type PcbBoard, type PcbBoardInput, type PcbBreakoutPoint, type PcbBreakoutPointInput, type PcbCircuitElement, type PcbComponent, type PcbComponentInput, type PcbComponentInvalidLayerError, type PcbComponentInvalidLayerErrorInput, type PcbComponentOutsideBoardError, type PcbComponentOutsideBoardErrorInput, type PcbCopperPour, type PcbCopperPourBRep, type PcbCopperPourBRepInput, type PcbCopperPourInput, type PcbCopperPourPolygon, type PcbCopperPourPolygonInput, type PcbCopperPourRect, type PcbCopperPourRectInput, type PcbCopperText, type PcbCopperTextInput, type PcbCourtyardOutline, type PcbCourtyardOutlineInput, type PcbCourtyardPolygon, type PcbCourtyardPolygonInput, type PcbCourtyardRect, type PcbCourtyardRectInput, type PcbCutout, type PcbCutoutCircle, type PcbCutoutCircleInput, type PcbCutoutInput, type PcbCutoutPolygon, type PcbCutoutPolygonInput, type PcbCutoutRect, type PcbCutoutRectInput, type PcbFabricationNoteDimension, type PcbFabricationNoteDimensionInput, type PcbFabricationNotePath, type PcbFabricationNotePathInput, type PcbFabricationNoteRect, type PcbFabricationNoteRectInput, type PcbFabricationNoteText, type PcbFabricationNoteTextInput, type PcbFootprintOverlapError, type PcbFootprintOverlapErrorInput, type PcbGroundPlane, type PcbGroundPlaneInput, type PcbGroundPlaneRegion, type PcbGroundPlaneRegionInput, type PcbGroup, type PcbGroupInput, type PcbHole, type PcbHoleCircle, type PcbHoleCircleInput, type PcbHoleCircleOrSquare, type PcbHoleCircleOrSquareInput, type PcbHoleCircularWithRectPad, type PcbHoleOval, type PcbHoleOvalInput, type PcbHolePill, type PcbHolePillInput, type PcbHolePillWithRectPad, type PcbHoleRect, type PcbHoleRectInput, type PcbHoleRotatedPill, type PcbHoleRotatedPillInput, type PcbHoleRotatedPillWithRectPad, type PcbManualEditConflictWarning, type PcbManualEditConflictWarningInput, type PcbMissingFootprintError, type PcbMissingFootprintErrorInput, type PcbNet, type PcbNetInput, type PcbNoteDimension, type PcbNoteDimensionInput, type PcbNoteLine, type PcbNoteLineInput, type PcbNotePath, type PcbNotePathInput, type PcbNoteRect, type PcbNoteRectInput, type PcbNoteText, type PcbNoteTextInput, type PcbPanel, type PcbPanelInput, type PcbPlacementError, type PcbPlacementErrorInput, type PcbPlatedHole, type PcbPlatedHoleCircle, type PcbPlatedHoleInput, type PcbPlatedHoleOval, type PcbPort, type PcbPortInput, type PcbPortNotConnectedError, type PcbPortNotConnectedErrorInput, type PcbPortNotMatchedError, type PcbPortNotMatchedErrorInput, type PcbRouteHint, type PcbRouteHintInput, type PcbRouteHints, type PcbRouteHintsInput, type PcbSilkscreenCircle, type PcbSilkscreenCircleInput, type PcbSilkscreenLine, type PcbSilkscreenLineInput, type PcbSilkscreenOval, type PcbSilkscreenOvalDeprecated, type PcbSilkscreenOvalInput, type PcbSilkscreenPath, type PcbSilkscreenPathDeprecated, type PcbSilkscreenPathInput, type PcbSilkscreenRect, type PcbSilkscreenRectInput, type PcbSilkscreenRectOld, type PcbSilkscreenText, type PcbSilkscreenTextInput, type PcbSmtPad, type PcbSmtPadCircle, type PcbSmtPadPill, type PcbSmtPadPolygon, type PcbSmtPadRect, type PcbSmtPadRotatedPill, type PcbSmtPadRotatedRect, type PcbSolderPaste, type PcbSolderPasteCircle, type PcbSolderPasteOval, type PcbSolderPastePill, type PcbSolderPasteRect, type PcbSolderPasteRotatedRect, type PcbText, type PcbTextInput, type PcbThermalSpoke, type PcbThermalSpokeInput, type PcbTrace, type PcbTraceError, type PcbTraceErrorInput, type PcbTraceHint, type PcbTraceHintInput, type PcbTraceInput, type PcbTraceMissingError, type PcbTraceMissingErrorInput, type PcbTraceRoutePoint, type PcbTraceRoutePointVia, type PcbTraceRoutePointWire, type PcbVia, type PcbViaClearanceError, type PcbViaClearanceErrorInput, type PcbViaInput, type Point, type Point3, type PointWithBulge, type Position, type Ring, type Rotation, type RouteHintPoint, type RouteHintPointInput, type SchematicArc, type SchematicArcInput, type SchematicBox, type SchematicBoxInput, type SchematicCircle, type SchematicCircleInput, type SchematicComponent, type SchematicComponentInput, type SchematicDebugLine, type SchematicDebugObject, type SchematicDebugObjectInput, type SchematicDebugPoint, type SchematicDebugRect, type SchematicError, type SchematicErrorInput, type SchematicGroup, type SchematicGroupInput, type SchematicLayoutError, type SchematicLayoutErrorInput, type SchematicLine, type SchematicLineInput, type SchematicManualEditConflictWarning, type SchematicManualEditConflictWarningInput, type SchematicNetLabel, type SchematicNetLabelInput, type SchematicPath, type SchematicPathInput, type SchematicPort, type SchematicPortArrangement, type SchematicPortArrangementBySides, type SchematicPortArrangementBySize, type SchematicPortInput, type SchematicRect, type SchematicRectInput, type SchematicSheet, type SchematicSheetInput, type SchematicTable, type SchematicTableCell, type SchematicTableCellInput, type SchematicTableInput, type SchematicText, type SchematicTextInput, type SchematicTrace, type SchematicTraceEdge, type SchematicTraceInput, type SchematicVoltageProbe, type SchematicVoltageProbeInput, type SimulationAcVoltageSource, type SimulationAcVoltageSourceInput, type SimulationDcVoltageSource, type SimulationExperiment, type SimulationExperimentInput, type SimulationSwitch, type SimulationSwitchInput, type SimulationTransientVoltageGraph, type SimulationTransientVoltageGraphInput, type SimulationUnknownExperimentError, type SimulationUnknownExperimentErrorInput, type SimulationVoltageProbe, type SimulationVoltageProbeInput, type SimulationVoltageSource, type SimulationVoltageSourceInput, type Size, type SizeInput, type SourceBoard, type SourceBoardInput, type SourceComponentBase, type SourceFailedToCreateComponentError, type SourceFailedToCreateComponentErrorInput, type SourceGroup, type SourceGroupInput, type SourceManuallyPlacedVia, type SourceManuallyPlacedViaInput, type SourceMissingPropertyError, type SourceMissingPropertyErrorInput, type SourceNet, type SourceNetInput, type SourcePcbGroundPlane, type SourcePcbGroundPlaneInput, type SourcePinMissingTraceWarning, type SourcePinMissingTraceWarningInput, type SourcePort, type SourcePortInput, type SourceProjectMetadata, type SourcePropertyIgnoredWarning, type SourcePropertyIgnoredWarningInput, type SourceSimpleBattery, type SourceSimpleBatteryInput, type SourceSimpleCapacitor, type SourceSimpleCapacitorInput, type SourceSimpleChip, type SourceSimpleChipInput, type SourceSimpleCrystal, type SourceSimpleCrystalInput, type SourceSimpleDiode, type SourceSimpleDiodeInput, type SourceSimpleGround, type SourceSimpleGroundInput, type SourceSimpleInductor, type SourceSimpleInductorInput, type SourceSimpleLed, type SourceSimpleLedInput, type SourceSimpleMosfet, type SourceSimpleMosfetInput, type SourceSimplePinHeader, type SourceSimplePinHeaderInput, type SourceSimplePinout, type SourceSimplePinoutInput, type SourceSimplePotentiometer, type SourceSimplePotentiometerInput, type SourceSimplePowerSource, type SourceSimplePowerSourceInput, type SourceSimplePushButton, type SourceSimplePushButtonInput, type SourceSimpleResistor, type SourceSimpleResistorInput, type SourceSimpleResonator, type SourceSimpleResonatorInput, type SourceSimpleSwitch, type SourceSimpleSwitchInput, type SourceSimpleTestPoint, type SourceSimpleTestPointInput, type SourceSimpleTransistor, type SourceSimpleTransistorInput, type SourceTrace, type SourceTraceNotConnectedError, type SourceTraceNotConnectedErrorInput, type SupplierName, type UnknownErrorFindingPart, type UnknownErrorFindingPartInput, type VisibleLayer, type VisibleLayerRef, type WaveShape, all_layers, any_circuit_element, any_soup_element, any_source_component, battery_capacity, brep_shape, cad_component, capacitance, circuit_json_footprint_load_error, current, distance, duration_ms, experiment_type, external_footprint_load_error, frequency, getZodPrefixedIdWithDefault, inductance, layer_ref, layer_string, length, ms, ninePointAnchor, pcb_autorouting_error, pcb_board, pcb_breakout_point, pcb_component, pcb_component_invalid_layer_error, pcb_component_outside_board_error, pcb_copper_pour, pcb_copper_pour_brep, pcb_copper_pour_polygon, pcb_copper_pour_rect, pcb_copper_text, pcb_courtyard_outline, pcb_courtyard_polygon, pcb_courtyard_rect, pcb_cutout, pcb_cutout_circle, pcb_cutout_polygon, pcb_cutout_rect, pcb_fabrication_note_dimension, pcb_fabrication_note_path, pcb_fabrication_note_rect, pcb_fabrication_note_text, pcb_footprint_overlap_error, pcb_ground_plane, pcb_ground_plane_region, pcb_group, pcb_hole, pcb_hole_circle_or_square_shape, pcb_hole_circle_shape, pcb_hole_oval_shape, pcb_hole_pill_shape, pcb_hole_rect_shape, pcb_hole_rotated_pill_shape, pcb_keepout, pcb_manual_edit_conflict_warning, pcb_missing_footprint_error, pcb_net, pcb_note_dimension, pcb_note_line, pcb_note_path, pcb_note_rect, pcb_note_text, pcb_panel, pcb_placement_error, pcb_plated_hole, pcb_port, pcb_port_not_connected_error, pcb_port_not_matched_error, pcb_route_hint, pcb_route_hints, pcb_silkscreen_circle, pcb_silkscreen_line, pcb_silkscreen_oval, pcb_silkscreen_path, pcb_silkscreen_rect, pcb_silkscreen_text, pcb_smtpad, pcb_smtpad_pill, pcb_solder_paste, pcb_text, pcb_thermal_spoke, pcb_trace, pcb_trace_error, pcb_trace_hint, pcb_trace_missing_error, pcb_trace_route_point, pcb_trace_route_point_via, pcb_trace_route_point_wire, pcb_via, pcb_via_clearance_error, point, point3, point_with_bulge, port_arrangement, position, position3, resistance, ring, rotation, route_hint_point, schematic_arc, schematic_box, schematic_circle, schematic_component, schematic_component_port_arrangement_by_sides, schematic_component_port_arrangement_by_size, schematic_debug_line, schematic_debug_object, schematic_debug_object_base, schematic_debug_point, schematic_debug_rect, schematic_error, schematic_group, schematic_layout_error, schematic_line, schematic_manual_edit_conflict_warning, schematic_net_label, schematic_path, schematic_pin_styles, schematic_port, schematic_rect, schematic_sheet, schematic_table, schematic_table_cell, schematic_text, schematic_trace, schematic_voltage_probe, simulation_ac_voltage_source, simulation_dc_voltage_source, simulation_experiment, simulation_switch, simulation_transient_voltage_graph, simulation_unknown_experiment_error, simulation_voltage_probe, simulation_voltage_source, size, source_board, source_component_base, source_failed_to_create_component_error, source_group, source_manually_placed_via, source_missing_property_error, source_net, source_pcb_ground_plane, source_pin_missing_trace_warning, source_port, source_project_metadata, source_property_ignored_warning, source_simple_battery, source_simple_capacitor, source_simple_chip, source_simple_crystal, source_simple_diode, source_simple_ground, source_simple_inductor, source_simple_led, source_simple_mosfet, source_simple_pin_header, source_simple_pinout, source_simple_potentiometer, source_simple_power_source, source_simple_push_button, source_simple_resistor, source_simple_resonator, source_simple_switch, source_simple_test_point, source_simple_transistor, source_trace, source_trace_not_connected_error, supplier_name, time, timestamp, unknown_error_finding_part, visible_layer, voltage, wave_shape };
package/dist/index.mjs CHANGED
@@ -1281,6 +1281,35 @@ expectTypesMatch(true);
1281
1281
 
1282
1282
  // src/pcb/pcb_hole.ts
1283
1283
  import { z as z70 } from "zod";
1284
+ var pcb_hole_circle = z70.object({
1285
+ type: z70.literal("pcb_hole"),
1286
+ pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1287
+ pcb_group_id: z70.string().optional(),
1288
+ subcircuit_id: z70.string().optional(),
1289
+ hole_shape: z70.literal("circle"),
1290
+ hole_diameter: z70.number(),
1291
+ x: distance,
1292
+ y: distance
1293
+ });
1294
+ var pcb_hole_circle_shape = pcb_hole_circle.describe(
1295
+ "Defines a circular hole on the PCB"
1296
+ );
1297
+ expectTypesMatch(true);
1298
+ var pcb_hole_rect = z70.object({
1299
+ type: z70.literal("pcb_hole"),
1300
+ pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1301
+ pcb_group_id: z70.string().optional(),
1302
+ subcircuit_id: z70.string().optional(),
1303
+ hole_shape: z70.literal("rect"),
1304
+ hole_width: z70.number(),
1305
+ hole_height: z70.number(),
1306
+ x: distance,
1307
+ y: distance
1308
+ });
1309
+ var pcb_hole_rect_shape = pcb_hole_rect.describe(
1310
+ "Defines a rectangular (square-capable) hole on the PCB. Use equal width/height for square."
1311
+ );
1312
+ expectTypesMatch(true);
1284
1313
  var pcb_hole_circle_or_square = z70.object({
1285
1314
  type: z70.literal("pcb_hole"),
1286
1315
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
@@ -1341,7 +1370,7 @@ var pcb_hole_rotated_pill_shape = pcb_hole_rotated_pill.describe(
1341
1370
  "Defines a rotated pill-shaped hole on the PCB"
1342
1371
  );
1343
1372
  expectTypesMatch(true);
1344
- var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval).or(pcb_hole_pill).or(pcb_hole_rotated_pill);
1373
+ var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval).or(pcb_hole_pill).or(pcb_hole_rotated_pill).or(pcb_hole_circle).or(pcb_hole_rect);
1345
1374
 
1346
1375
  // src/pcb/pcb_plated_hole.ts
1347
1376
  import { z as z71 } from "zod";
@@ -1821,6 +1850,7 @@ var pcb_via = z82.object({
1821
1850
  pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
1822
1851
  pcb_group_id: z82.string().optional(),
1823
1852
  subcircuit_id: z82.string().optional(),
1853
+ subcircuit_connectivity_key: z82.string().optional(),
1824
1854
  x: distance,
1825
1855
  y: distance,
1826
1856
  outer_diameter: distance.default("0.6mm"),
@@ -2953,8 +2983,10 @@ export {
2953
2983
  pcb_group,
2954
2984
  pcb_hole,
2955
2985
  pcb_hole_circle_or_square_shape,
2986
+ pcb_hole_circle_shape,
2956
2987
  pcb_hole_oval_shape,
2957
2988
  pcb_hole_pill_shape,
2989
+ pcb_hole_rect_shape,
2958
2990
  pcb_hole_rotated_pill_shape,
2959
2991
  pcb_keepout,
2960
2992
  pcb_manual_edit_conflict_warning,