circuit-json 0.0.306 → 0.0.308

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
@@ -1540,6 +1540,7 @@ interface PcbPanel {
1540
1540
  pcb_panel_id: string
1541
1541
  width: Length
1542
1542
  height: Length
1543
+ center: Point
1543
1544
  covered_with_solder_mask: boolean
1544
1545
  }
1545
1546
  ```
@@ -1654,6 +1655,28 @@ interface PcbHoleCircularWithRectPad {
1654
1655
  pcb_port_id?: string
1655
1656
  pcb_plated_hole_id: string
1656
1657
  }
1658
+
1659
+ /** Defines a plated hole with a polygonal pad on the PCB */
1660
+ interface PcbHoleWithPolygonPad {
1661
+ type: "pcb_plated_hole"
1662
+ shape: "hole_with_polygon_pad"
1663
+ pcb_group_id?: string
1664
+ subcircuit_id?: string
1665
+ hole_shape: "circle" | "oval" | "pill" | "rotated_pill"
1666
+ hole_diameter?: number
1667
+ hole_width?: number
1668
+ hole_height?: number
1669
+ pad_outline: { x: Distance; y: Distance }[]
1670
+ hole_offset_x: Distance
1671
+ hole_offset_y: Distance
1672
+ x: Distance
1673
+ y: Distance
1674
+ layers: LayerRef[]
1675
+ port_hints?: string[]
1676
+ pcb_component_id?: string
1677
+ pcb_port_id?: string
1678
+ pcb_plated_hole_id: string
1679
+ }
1657
1680
  ```
1658
1681
 
1659
1682
  ### PcbPort
package/dist/index.d.mts CHANGED
@@ -1225,6 +1225,32 @@ interface PcbHoleCircularWithRectPad {
1225
1225
  pcb_port_id?: string;
1226
1226
  pcb_plated_hole_id: string;
1227
1227
  }
1228
+ /**
1229
+ * Defines a plated hole with a polygonal pad on the PCB
1230
+ */
1231
+ interface PcbHoleWithPolygonPad {
1232
+ type: "pcb_plated_hole";
1233
+ shape: "hole_with_polygon_pad";
1234
+ pcb_group_id?: string;
1235
+ subcircuit_id?: string;
1236
+ hole_shape: "circle" | "oval" | "pill" | "rotated_pill";
1237
+ hole_diameter?: number;
1238
+ hole_width?: number;
1239
+ hole_height?: number;
1240
+ pad_outline: {
1241
+ x: Distance;
1242
+ y: Distance;
1243
+ }[];
1244
+ hole_offset_x: Distance;
1245
+ hole_offset_y: Distance;
1246
+ x: Distance;
1247
+ y: Distance;
1248
+ layers: LayerRef[];
1249
+ port_hints?: string[];
1250
+ pcb_component_id?: string;
1251
+ pcb_port_id?: string;
1252
+ pcb_plated_hole_id: string;
1253
+ }
1228
1254
  declare const pcb_plated_hole: z.ZodUnion<[z.ZodObject<{
1229
1255
  type: z.ZodLiteral<"pcb_plated_hole">;
1230
1256
  shape: z.ZodLiteral<"circle">;
@@ -1560,8 +1586,90 @@ declare const pcb_plated_hole: z.ZodUnion<[z.ZodObject<{
1560
1586
  rect_border_radius?: number | undefined;
1561
1587
  hole_offset_x?: string | number | undefined;
1562
1588
  hole_offset_y?: string | number | undefined;
1589
+ }>, z.ZodObject<{
1590
+ type: z.ZodLiteral<"pcb_plated_hole">;
1591
+ shape: z.ZodLiteral<"hole_with_polygon_pad">;
1592
+ pcb_group_id: z.ZodOptional<z.ZodString>;
1593
+ subcircuit_id: z.ZodOptional<z.ZodString>;
1594
+ hole_shape: z.ZodEnum<["circle", "oval", "pill", "rotated_pill"]>;
1595
+ hole_diameter: z.ZodOptional<z.ZodNumber>;
1596
+ hole_width: z.ZodOptional<z.ZodNumber>;
1597
+ hole_height: z.ZodOptional<z.ZodNumber>;
1598
+ pad_outline: z.ZodArray<z.ZodObject<{
1599
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
1600
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
1601
+ }, "strip", z.ZodTypeAny, {
1602
+ x: number;
1603
+ y: number;
1604
+ }, {
1605
+ x: string | number;
1606
+ y: string | number;
1607
+ }>, "many">;
1608
+ hole_offset_x: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
1609
+ hole_offset_y: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
1610
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
1611
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
1612
+ layers: z.ZodArray<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
1613
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
1614
+ }, "strip", z.ZodTypeAny, {
1615
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1616
+ }, {
1617
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1618
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1619
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1620
+ }>, "many">;
1621
+ port_hints: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1622
+ pcb_component_id: z.ZodOptional<z.ZodString>;
1623
+ pcb_port_id: z.ZodOptional<z.ZodString>;
1624
+ pcb_plated_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
1625
+ }, "strip", z.ZodTypeAny, {
1626
+ x: number;
1627
+ y: number;
1628
+ type: "pcb_plated_hole";
1629
+ hole_shape: "circle" | "oval" | "pill" | "rotated_pill";
1630
+ shape: "hole_with_polygon_pad";
1631
+ layers: ("top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6")[];
1632
+ pcb_plated_hole_id: string;
1633
+ hole_offset_x: number;
1634
+ hole_offset_y: number;
1635
+ pad_outline: {
1636
+ x: number;
1637
+ y: number;
1638
+ }[];
1639
+ pcb_component_id?: string | undefined;
1640
+ subcircuit_id?: string | undefined;
1641
+ pcb_group_id?: string | undefined;
1642
+ hole_diameter?: number | undefined;
1643
+ hole_width?: number | undefined;
1644
+ hole_height?: number | undefined;
1645
+ port_hints?: string[] | undefined;
1646
+ pcb_port_id?: string | undefined;
1647
+ }, {
1648
+ x: string | number;
1649
+ y: string | number;
1650
+ type: "pcb_plated_hole";
1651
+ hole_shape: "circle" | "oval" | "pill" | "rotated_pill";
1652
+ shape: "hole_with_polygon_pad";
1653
+ layers: ("top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1654
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1655
+ })[];
1656
+ pad_outline: {
1657
+ x: string | number;
1658
+ y: string | number;
1659
+ }[];
1660
+ pcb_component_id?: string | undefined;
1661
+ subcircuit_id?: string | undefined;
1662
+ pcb_group_id?: string | undefined;
1663
+ hole_diameter?: number | undefined;
1664
+ hole_width?: number | undefined;
1665
+ hole_height?: number | undefined;
1666
+ port_hints?: string[] | undefined;
1667
+ pcb_port_id?: string | undefined;
1668
+ pcb_plated_hole_id?: string | undefined;
1669
+ hole_offset_x?: string | number | undefined;
1670
+ hole_offset_y?: string | number | undefined;
1563
1671
  }>]>;
1564
- type PcbPlatedHole = PcbPlatedHoleCircle | PcbPlatedHoleOval | PcbHoleCircularWithRectPad | PcbHolePillWithRectPad | PcbHoleRotatedPillWithRectPad;
1672
+ type PcbPlatedHole = PcbPlatedHoleCircle | PcbPlatedHoleOval | PcbHoleCircularWithRectPad | PcbHolePillWithRectPad | PcbHoleRotatedPillWithRectPad | PcbHoleWithPolygonPad;
1565
1673
  /**
1566
1674
  * @deprecated use PcbPlatedHole
1567
1675
  */
@@ -3360,17 +3468,35 @@ declare const pcb_panel: z.ZodObject<{
3360
3468
  pcb_panel_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
3361
3469
  width: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
3362
3470
  height: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
3471
+ center: z.ZodObject<{
3472
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
3473
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
3474
+ }, "strip", z.ZodTypeAny, {
3475
+ x: number;
3476
+ y: number;
3477
+ }, {
3478
+ x: string | number;
3479
+ y: string | number;
3480
+ }>;
3363
3481
  covered_with_solder_mask: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
3364
3482
  }, "strip", z.ZodTypeAny, {
3365
3483
  type: "pcb_panel";
3366
3484
  width: number;
3367
3485
  height: number;
3486
+ center: {
3487
+ x: number;
3488
+ y: number;
3489
+ };
3368
3490
  pcb_panel_id: string;
3369
3491
  covered_with_solder_mask: boolean;
3370
3492
  }, {
3371
3493
  type: "pcb_panel";
3372
3494
  width: string | number;
3373
3495
  height: string | number;
3496
+ center: {
3497
+ x: string | number;
3498
+ y: string | number;
3499
+ };
3374
3500
  pcb_panel_id?: string | undefined;
3375
3501
  covered_with_solder_mask?: boolean | undefined;
3376
3502
  }>;
@@ -3382,6 +3508,7 @@ interface PcbPanel {
3382
3508
  pcb_panel_id: string;
3383
3509
  width: Length;
3384
3510
  height: Length;
3511
+ center: Point;
3385
3512
  covered_with_solder_mask: boolean;
3386
3513
  }
3387
3514
  type PcbPanelInput = z.input<typeof pcb_panel>;
@@ -14788,6 +14915,88 @@ declare const any_circuit_element: z.ZodUnion<[z.ZodObject<{
14788
14915
  rect_border_radius?: number | undefined;
14789
14916
  hole_offset_x?: string | number | undefined;
14790
14917
  hole_offset_y?: string | number | undefined;
14918
+ }>, z.ZodObject<{
14919
+ type: z.ZodLiteral<"pcb_plated_hole">;
14920
+ shape: z.ZodLiteral<"hole_with_polygon_pad">;
14921
+ pcb_group_id: z.ZodOptional<z.ZodString>;
14922
+ subcircuit_id: z.ZodOptional<z.ZodString>;
14923
+ hole_shape: z.ZodEnum<["circle", "oval", "pill", "rotated_pill"]>;
14924
+ hole_diameter: z.ZodOptional<z.ZodNumber>;
14925
+ hole_width: z.ZodOptional<z.ZodNumber>;
14926
+ hole_height: z.ZodOptional<z.ZodNumber>;
14927
+ pad_outline: z.ZodArray<z.ZodObject<{
14928
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
14929
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
14930
+ }, "strip", z.ZodTypeAny, {
14931
+ x: number;
14932
+ y: number;
14933
+ }, {
14934
+ x: string | number;
14935
+ y: string | number;
14936
+ }>, "many">;
14937
+ hole_offset_x: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
14938
+ hole_offset_y: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
14939
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
14940
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
14941
+ layers: z.ZodArray<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
14942
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
14943
+ }, "strip", z.ZodTypeAny, {
14944
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
14945
+ }, {
14946
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
14947
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
14948
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
14949
+ }>, "many">;
14950
+ port_hints: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
14951
+ pcb_component_id: z.ZodOptional<z.ZodString>;
14952
+ pcb_port_id: z.ZodOptional<z.ZodString>;
14953
+ pcb_plated_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
14954
+ }, "strip", z.ZodTypeAny, {
14955
+ x: number;
14956
+ y: number;
14957
+ type: "pcb_plated_hole";
14958
+ hole_shape: "circle" | "oval" | "pill" | "rotated_pill";
14959
+ shape: "hole_with_polygon_pad";
14960
+ layers: ("top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6")[];
14961
+ pcb_plated_hole_id: string;
14962
+ hole_offset_x: number;
14963
+ hole_offset_y: number;
14964
+ pad_outline: {
14965
+ x: number;
14966
+ y: number;
14967
+ }[];
14968
+ pcb_component_id?: string | undefined;
14969
+ subcircuit_id?: string | undefined;
14970
+ pcb_group_id?: string | undefined;
14971
+ hole_diameter?: number | undefined;
14972
+ hole_width?: number | undefined;
14973
+ hole_height?: number | undefined;
14974
+ port_hints?: string[] | undefined;
14975
+ pcb_port_id?: string | undefined;
14976
+ }, {
14977
+ x: string | number;
14978
+ y: string | number;
14979
+ type: "pcb_plated_hole";
14980
+ hole_shape: "circle" | "oval" | "pill" | "rotated_pill";
14981
+ shape: "hole_with_polygon_pad";
14982
+ layers: ("top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
14983
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
14984
+ })[];
14985
+ pad_outline: {
14986
+ x: string | number;
14987
+ y: string | number;
14988
+ }[];
14989
+ pcb_component_id?: string | undefined;
14990
+ subcircuit_id?: string | undefined;
14991
+ pcb_group_id?: string | undefined;
14992
+ hole_diameter?: number | undefined;
14993
+ hole_width?: number | undefined;
14994
+ hole_height?: number | undefined;
14995
+ port_hints?: string[] | undefined;
14996
+ pcb_port_id?: string | undefined;
14997
+ pcb_plated_hole_id?: string | undefined;
14998
+ hole_offset_x?: string | number | undefined;
14999
+ hole_offset_y?: string | number | undefined;
14791
15000
  }>]>, z.ZodUnion<[z.ZodObject<{
14792
15001
  type: z.ZodLiteral<"pcb_keepout">;
14793
15002
  shape: z.ZodLiteral<"rect">;
@@ -15891,17 +16100,35 @@ declare const any_circuit_element: z.ZodUnion<[z.ZodObject<{
15891
16100
  pcb_panel_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
15892
16101
  width: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
15893
16102
  height: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
16103
+ center: z.ZodObject<{
16104
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
16105
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
16106
+ }, "strip", z.ZodTypeAny, {
16107
+ x: number;
16108
+ y: number;
16109
+ }, {
16110
+ x: string | number;
16111
+ y: string | number;
16112
+ }>;
15894
16113
  covered_with_solder_mask: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
15895
16114
  }, "strip", z.ZodTypeAny, {
15896
16115
  type: "pcb_panel";
15897
16116
  width: number;
15898
16117
  height: number;
16118
+ center: {
16119
+ x: number;
16120
+ y: number;
16121
+ };
15899
16122
  pcb_panel_id: string;
15900
16123
  covered_with_solder_mask: boolean;
15901
16124
  }, {
15902
16125
  type: "pcb_panel";
15903
16126
  width: string | number;
15904
16127
  height: string | number;
16128
+ center: {
16129
+ x: string | number;
16130
+ y: string | number;
16131
+ };
15905
16132
  pcb_panel_id?: string | undefined;
15906
16133
  covered_with_solder_mask?: boolean | undefined;
15907
16134
  }>, z.ZodObject<{
@@ -22376,6 +22603,88 @@ declare const any_soup_element: z.ZodUnion<[z.ZodObject<{
22376
22603
  rect_border_radius?: number | undefined;
22377
22604
  hole_offset_x?: string | number | undefined;
22378
22605
  hole_offset_y?: string | number | undefined;
22606
+ }>, z.ZodObject<{
22607
+ type: z.ZodLiteral<"pcb_plated_hole">;
22608
+ shape: z.ZodLiteral<"hole_with_polygon_pad">;
22609
+ pcb_group_id: z.ZodOptional<z.ZodString>;
22610
+ subcircuit_id: z.ZodOptional<z.ZodString>;
22611
+ hole_shape: z.ZodEnum<["circle", "oval", "pill", "rotated_pill"]>;
22612
+ hole_diameter: z.ZodOptional<z.ZodNumber>;
22613
+ hole_width: z.ZodOptional<z.ZodNumber>;
22614
+ hole_height: z.ZodOptional<z.ZodNumber>;
22615
+ pad_outline: z.ZodArray<z.ZodObject<{
22616
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
22617
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
22618
+ }, "strip", z.ZodTypeAny, {
22619
+ x: number;
22620
+ y: number;
22621
+ }, {
22622
+ x: string | number;
22623
+ y: string | number;
22624
+ }>, "many">;
22625
+ hole_offset_x: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
22626
+ hole_offset_y: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
22627
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
22628
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
22629
+ layers: z.ZodArray<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
22630
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
22631
+ }, "strip", z.ZodTypeAny, {
22632
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
22633
+ }, {
22634
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
22635
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
22636
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
22637
+ }>, "many">;
22638
+ port_hints: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
22639
+ pcb_component_id: z.ZodOptional<z.ZodString>;
22640
+ pcb_port_id: z.ZodOptional<z.ZodString>;
22641
+ pcb_plated_hole_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
22642
+ }, "strip", z.ZodTypeAny, {
22643
+ x: number;
22644
+ y: number;
22645
+ type: "pcb_plated_hole";
22646
+ hole_shape: "circle" | "oval" | "pill" | "rotated_pill";
22647
+ shape: "hole_with_polygon_pad";
22648
+ layers: ("top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6")[];
22649
+ pcb_plated_hole_id: string;
22650
+ hole_offset_x: number;
22651
+ hole_offset_y: number;
22652
+ pad_outline: {
22653
+ x: number;
22654
+ y: number;
22655
+ }[];
22656
+ pcb_component_id?: string | undefined;
22657
+ subcircuit_id?: string | undefined;
22658
+ pcb_group_id?: string | undefined;
22659
+ hole_diameter?: number | undefined;
22660
+ hole_width?: number | undefined;
22661
+ hole_height?: number | undefined;
22662
+ port_hints?: string[] | undefined;
22663
+ pcb_port_id?: string | undefined;
22664
+ }, {
22665
+ x: string | number;
22666
+ y: string | number;
22667
+ type: "pcb_plated_hole";
22668
+ hole_shape: "circle" | "oval" | "pill" | "rotated_pill";
22669
+ shape: "hole_with_polygon_pad";
22670
+ layers: ("top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
22671
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
22672
+ })[];
22673
+ pad_outline: {
22674
+ x: string | number;
22675
+ y: string | number;
22676
+ }[];
22677
+ pcb_component_id?: string | undefined;
22678
+ subcircuit_id?: string | undefined;
22679
+ pcb_group_id?: string | undefined;
22680
+ hole_diameter?: number | undefined;
22681
+ hole_width?: number | undefined;
22682
+ hole_height?: number | undefined;
22683
+ port_hints?: string[] | undefined;
22684
+ pcb_port_id?: string | undefined;
22685
+ pcb_plated_hole_id?: string | undefined;
22686
+ hole_offset_x?: string | number | undefined;
22687
+ hole_offset_y?: string | number | undefined;
22379
22688
  }>]>, z.ZodUnion<[z.ZodObject<{
22380
22689
  type: z.ZodLiteral<"pcb_keepout">;
22381
22690
  shape: z.ZodLiteral<"rect">;
@@ -23479,17 +23788,35 @@ declare const any_soup_element: z.ZodUnion<[z.ZodObject<{
23479
23788
  pcb_panel_id: z.ZodDefault<z.ZodOptional<z.ZodString>>;
23480
23789
  width: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
23481
23790
  height: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
23791
+ center: z.ZodObject<{
23792
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
23793
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
23794
+ }, "strip", z.ZodTypeAny, {
23795
+ x: number;
23796
+ y: number;
23797
+ }, {
23798
+ x: string | number;
23799
+ y: string | number;
23800
+ }>;
23482
23801
  covered_with_solder_mask: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
23483
23802
  }, "strip", z.ZodTypeAny, {
23484
23803
  type: "pcb_panel";
23485
23804
  width: number;
23486
23805
  height: number;
23806
+ center: {
23807
+ x: number;
23808
+ y: number;
23809
+ };
23487
23810
  pcb_panel_id: string;
23488
23811
  covered_with_solder_mask: boolean;
23489
23812
  }, {
23490
23813
  type: "pcb_panel";
23491
23814
  width: string | number;
23492
23815
  height: string | number;
23816
+ center: {
23817
+ x: string | number;
23818
+ y: string | number;
23819
+ };
23493
23820
  pcb_panel_id?: string | undefined;
23494
23821
  covered_with_solder_mask?: boolean | undefined;
23495
23822
  }>, z.ZodObject<{
@@ -27285,4 +27612,4 @@ type AnySoupElementInput = AnyCircuitElementInput;
27285
27612
  */
27286
27613
  type CircuitJson = AnyCircuitElement[];
27287
27614
 
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 };
27615
+ 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 PcbHoleWithPolygonPad, 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
@@ -1474,12 +1474,38 @@ var pcb_rotated_pill_hole_with_rect_pad = z71.object({
1474
1474
  pcb_port_id: z71.string().optional(),
1475
1475
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
1476
1476
  });
1477
+ var pcb_hole_with_polygon_pad = z71.object({
1478
+ type: z71.literal("pcb_plated_hole"),
1479
+ shape: z71.literal("hole_with_polygon_pad"),
1480
+ pcb_group_id: z71.string().optional(),
1481
+ subcircuit_id: z71.string().optional(),
1482
+ hole_shape: z71.enum(["circle", "oval", "pill", "rotated_pill"]),
1483
+ hole_diameter: z71.number().optional(),
1484
+ hole_width: z71.number().optional(),
1485
+ hole_height: z71.number().optional(),
1486
+ pad_outline: z71.array(
1487
+ z71.object({
1488
+ x: distance,
1489
+ y: distance
1490
+ })
1491
+ ).min(3),
1492
+ hole_offset_x: distance.default(0),
1493
+ hole_offset_y: distance.default(0),
1494
+ x: distance,
1495
+ y: distance,
1496
+ layers: z71.array(layer_ref),
1497
+ port_hints: z71.array(z71.string()).optional(),
1498
+ pcb_component_id: z71.string().optional(),
1499
+ pcb_port_id: z71.string().optional(),
1500
+ pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
1501
+ });
1477
1502
  var pcb_plated_hole = z71.union([
1478
1503
  pcb_plated_hole_circle,
1479
1504
  pcb_plated_hole_oval,
1480
1505
  pcb_circular_hole_with_rect_pad,
1481
1506
  pcb_pill_hole_with_rect_pad,
1482
- pcb_rotated_pill_hole_with_rect_pad
1507
+ pcb_rotated_pill_hole_with_rect_pad,
1508
+ pcb_hole_with_polygon_pad
1483
1509
  ]);
1484
1510
  expectTypesMatch(
1485
1511
  true
@@ -1488,6 +1514,7 @@ expectTypesMatch(true);
1488
1514
  expectTypesMatch(true);
1489
1515
  expectTypesMatch(true);
1490
1516
  expectTypesMatch(true);
1517
+ expectTypesMatch(true);
1491
1518
 
1492
1519
  // src/pcb/pcb_port.ts
1493
1520
  import { z as z72 } from "zod";
@@ -1892,6 +1919,7 @@ var pcb_panel = z84.object({
1892
1919
  pcb_panel_id: getZodPrefixedIdWithDefault("pcb_panel"),
1893
1920
  width: length,
1894
1921
  height: length,
1922
+ center: point,
1895
1923
  covered_with_solder_mask: z84.boolean().optional().default(true)
1896
1924
  }).describe("Defines a PCB panel that can contain multiple boards");
1897
1925
  expectTypesMatch(true);