@tscircuit/props 0.0.182 → 0.0.184

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
@@ -24,6 +24,7 @@ resistorProps.parse({ resistance: "10k" } as ResistorPropsInput)
24
24
  | `<capacitor />` | [`CapacitorProps`](#capacitorprops-capacitor) |
25
25
  | `<chip />` | [`ChipProps`](#chipprops-chip) |
26
26
  | `<constrainedlayout />` | [`ConstrainedLayoutProps`](#constrainedlayoutprops-constrainedlayout) |
27
+ | `<cutout />` | [`CutoutProps`](#cutoutprops-cutout) |
27
28
  | `<crystal />` | [`CrystalProps`](#crystalprops-crystal) |
28
29
  | `<diode />` | [`DiodeProps`](#diodeprops-diode) |
29
30
  | `<footprint />` | [`FootprintProps`](#footprintprops-footprint) |
@@ -202,6 +203,61 @@ export interface ConstrainedLayoutProps {
202
203
  [Source](https://github.com/tscircuit/props/blob/main/lib/components/constrainedlayout.ts)
203
204
 
204
205
 
206
+ ### CutoutProps `<cutout />`
207
+
208
+ Defines a cutout on the PCB, removing board material. It can be a rectangle, circle, or polygon.
209
+
210
+ **Rectangular Cutout**
211
+ ```ts
212
+ export interface RectCutoutProps
213
+ extends Omit<
214
+ PcbLayoutProps,
215
+ "layer" | "pcbRotation"
216
+ > {
217
+ name?: string;
218
+ shape: "rect";
219
+ width: Distance;
220
+ height: Distance;
221
+ }
222
+ ```
223
+
224
+ **Circular Cutout**
225
+ ```ts
226
+ export interface CircleCutoutProps
227
+ extends Omit<
228
+ PcbLayoutProps,
229
+ "layer" | "pcbRotation"
230
+ > {
231
+ name?: string;
232
+ shape: "circle";
233
+ radius: Distance;
234
+ }
235
+ ```
236
+
237
+ **Polygon Cutout**
238
+ ```ts
239
+ export interface PolygonCutoutProps
240
+ extends Omit<
241
+ PcbLayoutProps,
242
+ "layer" | "pcbRotation"
243
+ > {
244
+ name?: string;
245
+ shape: "polygon";
246
+ points: Point[];
247
+ }
248
+ ```
249
+
250
+ **Union Type**
251
+ ```ts
252
+ export type CutoutProps =
253
+ | RectCutoutProps
254
+ | CircleCutoutProps
255
+ | PolygonCutoutProps;
256
+ ```
257
+
258
+ [Source](https://github.com/tscircuit/props/blob/main/lib/components/cutout.ts)
259
+
260
+
205
261
  ### CrystalProps `<crystal />`
206
262
 
207
263
  ```ts
package/dist/index.d.ts CHANGED
@@ -8244,7 +8244,7 @@ interface CircularHoleWithRectPlatedProps extends Omit<PcbLayoutProps, "pcbRotat
8244
8244
  rectPadHeight: number | string;
8245
8245
  holeShape?: "circle";
8246
8246
  padShape?: "rect";
8247
- shape?: "circularHoleWithRectPad";
8247
+ shape?: "circular_hole_with_rect_pad";
8248
8248
  portHints?: PortHints;
8249
8249
  }
8250
8250
  type PlatedHoleProps = CirclePlatedHoleProps | OvalPlatedHoleProps | PillPlatedHoleProps | CircularHoleWithRectPlatedProps;
@@ -8397,7 +8397,7 @@ declare const platedHoleProps: z.ZodEffects<z.ZodUnion<[z.ZodObject<z.objectUtil
8397
8397
  rectPadHeight: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8398
8398
  holeShape: z.ZodOptional<z.ZodLiteral<"circle">>;
8399
8399
  padShape: z.ZodOptional<z.ZodLiteral<"rect">>;
8400
- shape: z.ZodOptional<z.ZodLiteral<"circularHoleWithRectPad">>;
8400
+ shape: z.ZodOptional<z.ZodLiteral<"circular_hole_with_rect_pad">>;
8401
8401
  portHints: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">>;
8402
8402
  }>, "strip", z.ZodTypeAny, {
8403
8403
  holeDiameter: number;
@@ -8406,7 +8406,7 @@ declare const platedHoleProps: z.ZodEffects<z.ZodUnion<[z.ZodObject<z.objectUtil
8406
8406
  pcbX?: number | undefined;
8407
8407
  pcbY?: number | undefined;
8408
8408
  name?: string | undefined;
8409
- shape?: "circularHoleWithRectPad" | undefined;
8409
+ shape?: "circular_hole_with_rect_pad" | undefined;
8410
8410
  portHints?: (string | number)[] | undefined;
8411
8411
  holeShape?: "circle" | undefined;
8412
8412
  padShape?: "rect" | undefined;
@@ -8417,7 +8417,7 @@ declare const platedHoleProps: z.ZodEffects<z.ZodUnion<[z.ZodObject<z.objectUtil
8417
8417
  pcbX?: string | number | undefined;
8418
8418
  pcbY?: string | number | undefined;
8419
8419
  name?: string | undefined;
8420
- shape?: "circularHoleWithRectPad" | undefined;
8420
+ shape?: "circular_hole_with_rect_pad" | undefined;
8421
8421
  portHints?: (string | number)[] | undefined;
8422
8422
  holeShape?: "circle" | undefined;
8423
8423
  padShape?: "rect" | undefined;
@@ -8428,7 +8428,7 @@ declare const platedHoleProps: z.ZodEffects<z.ZodUnion<[z.ZodObject<z.objectUtil
8428
8428
  pcbX?: number | undefined;
8429
8429
  pcbY?: number | undefined;
8430
8430
  name?: string | undefined;
8431
- shape?: "circularHoleWithRectPad" | undefined;
8431
+ shape?: "circular_hole_with_rect_pad" | undefined;
8432
8432
  portHints?: (string | number)[] | undefined;
8433
8433
  holeShape?: "circle" | undefined;
8434
8434
  padShape?: "rect" | undefined;
@@ -8439,7 +8439,7 @@ declare const platedHoleProps: z.ZodEffects<z.ZodUnion<[z.ZodObject<z.objectUtil
8439
8439
  pcbX?: string | number | undefined;
8440
8440
  pcbY?: string | number | undefined;
8441
8441
  name?: string | undefined;
8442
- shape?: "circularHoleWithRectPad" | undefined;
8442
+ shape?: "circular_hole_with_rect_pad" | undefined;
8443
8443
  portHints?: (string | number)[] | undefined;
8444
8444
  holeShape?: "circle" | undefined;
8445
8445
  padShape?: "rect" | undefined;
@@ -8482,7 +8482,7 @@ declare const platedHoleProps: z.ZodEffects<z.ZodUnion<[z.ZodObject<z.objectUtil
8482
8482
  pcbX?: number | undefined;
8483
8483
  pcbY?: number | undefined;
8484
8484
  name?: string | undefined;
8485
- shape?: "circularHoleWithRectPad" | undefined;
8485
+ shape?: "circular_hole_with_rect_pad" | undefined;
8486
8486
  portHints?: (string | number)[] | undefined;
8487
8487
  holeShape?: "circle" | undefined;
8488
8488
  padShape?: "rect" | undefined;
@@ -8525,7 +8525,7 @@ declare const platedHoleProps: z.ZodEffects<z.ZodUnion<[z.ZodObject<z.objectUtil
8525
8525
  pcbX?: string | number | undefined;
8526
8526
  pcbY?: string | number | undefined;
8527
8527
  name?: string | undefined;
8528
- shape?: "circularHoleWithRectPad" | undefined;
8528
+ shape?: "circular_hole_with_rect_pad" | undefined;
8529
8529
  portHints?: (string | number)[] | undefined;
8530
8530
  holeShape?: "circle" | undefined;
8531
8531
  padShape?: "rect" | undefined;
@@ -11509,6 +11509,239 @@ declare const constraintProps: z.ZodUnion<[z.ZodObject<{
11509
11509
  sameX?: true | undefined;
11510
11510
  }>]>;
11511
11511
 
11512
+ interface RectCutoutProps extends Omit<PcbLayoutProps, "layer" | "pcbRotation"> {
11513
+ name?: string;
11514
+ shape: "rect";
11515
+ width: Distance;
11516
+ height: Distance;
11517
+ }
11518
+ declare const rectCutoutProps: z.ZodObject<z.objectUtil.extendShape<Omit<{
11519
+ pcbX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11520
+ pcbY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11521
+ pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11522
+ layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
11523
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
11524
+ }, "strip", z.ZodTypeAny, {
11525
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11526
+ }, {
11527
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11528
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
11529
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11530
+ }>>;
11531
+ }, "pcbRotation" | "layer">, {
11532
+ name: z.ZodOptional<z.ZodString>;
11533
+ shape: z.ZodLiteral<"rect">;
11534
+ width: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
11535
+ height: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
11536
+ }>, "strip", z.ZodTypeAny, {
11537
+ shape: "rect";
11538
+ width: number;
11539
+ height: number;
11540
+ pcbX?: number | undefined;
11541
+ pcbY?: number | undefined;
11542
+ name?: string | undefined;
11543
+ }, {
11544
+ shape: "rect";
11545
+ width: string | number;
11546
+ height: string | number;
11547
+ pcbX?: string | number | undefined;
11548
+ pcbY?: string | number | undefined;
11549
+ name?: string | undefined;
11550
+ }>;
11551
+ interface CircleCutoutProps extends Omit<PcbLayoutProps, "layer" | "pcbRotation"> {
11552
+ name?: string;
11553
+ shape: "circle";
11554
+ radius: Distance;
11555
+ }
11556
+ declare const circleCutoutProps: z.ZodObject<z.objectUtil.extendShape<Omit<{
11557
+ pcbX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11558
+ pcbY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11559
+ pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11560
+ layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
11561
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
11562
+ }, "strip", z.ZodTypeAny, {
11563
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11564
+ }, {
11565
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11566
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
11567
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11568
+ }>>;
11569
+ }, "pcbRotation" | "layer">, {
11570
+ name: z.ZodOptional<z.ZodString>;
11571
+ shape: z.ZodLiteral<"circle">;
11572
+ radius: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
11573
+ }>, "strip", z.ZodTypeAny, {
11574
+ shape: "circle";
11575
+ radius: number;
11576
+ pcbX?: number | undefined;
11577
+ pcbY?: number | undefined;
11578
+ name?: string | undefined;
11579
+ }, {
11580
+ shape: "circle";
11581
+ radius: string | number;
11582
+ pcbX?: string | number | undefined;
11583
+ pcbY?: string | number | undefined;
11584
+ name?: string | undefined;
11585
+ }>;
11586
+ interface PolygonCutoutProps extends Omit<PcbLayoutProps, "layer" | "pcbRotation"> {
11587
+ name?: string;
11588
+ shape: "polygon";
11589
+ points: Point[];
11590
+ }
11591
+ declare const polygonCutoutProps: z.ZodObject<z.objectUtil.extendShape<Omit<{
11592
+ pcbX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11593
+ pcbY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11594
+ pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11595
+ layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
11596
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
11597
+ }, "strip", z.ZodTypeAny, {
11598
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11599
+ }, {
11600
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11601
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
11602
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11603
+ }>>;
11604
+ }, "pcbRotation" | "layer">, {
11605
+ name: z.ZodOptional<z.ZodString>;
11606
+ shape: z.ZodLiteral<"polygon">;
11607
+ points: z.ZodArray<z.ZodObject<{
11608
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
11609
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
11610
+ }, "strip", z.ZodTypeAny, {
11611
+ x: number;
11612
+ y: number;
11613
+ }, {
11614
+ x: string | number;
11615
+ y: string | number;
11616
+ }>, "many">;
11617
+ }>, "strip", z.ZodTypeAny, {
11618
+ shape: "polygon";
11619
+ points: {
11620
+ x: number;
11621
+ y: number;
11622
+ }[];
11623
+ pcbX?: number | undefined;
11624
+ pcbY?: number | undefined;
11625
+ name?: string | undefined;
11626
+ }, {
11627
+ shape: "polygon";
11628
+ points: {
11629
+ x: string | number;
11630
+ y: string | number;
11631
+ }[];
11632
+ pcbX?: string | number | undefined;
11633
+ pcbY?: string | number | undefined;
11634
+ name?: string | undefined;
11635
+ }>;
11636
+ type CutoutProps = RectCutoutProps | CircleCutoutProps | PolygonCutoutProps;
11637
+ declare const cutoutProps: z.ZodDiscriminatedUnion<"shape", [z.ZodObject<z.objectUtil.extendShape<Omit<{
11638
+ pcbX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11639
+ pcbY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11640
+ pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11641
+ layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
11642
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
11643
+ }, "strip", z.ZodTypeAny, {
11644
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11645
+ }, {
11646
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11647
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
11648
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11649
+ }>>;
11650
+ }, "pcbRotation" | "layer">, {
11651
+ name: z.ZodOptional<z.ZodString>;
11652
+ shape: z.ZodLiteral<"rect">;
11653
+ width: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
11654
+ height: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
11655
+ }>, "strip", z.ZodTypeAny, {
11656
+ shape: "rect";
11657
+ width: number;
11658
+ height: number;
11659
+ pcbX?: number | undefined;
11660
+ pcbY?: number | undefined;
11661
+ name?: string | undefined;
11662
+ }, {
11663
+ shape: "rect";
11664
+ width: string | number;
11665
+ height: string | number;
11666
+ pcbX?: string | number | undefined;
11667
+ pcbY?: string | number | undefined;
11668
+ name?: string | undefined;
11669
+ }>, z.ZodObject<z.objectUtil.extendShape<Omit<{
11670
+ pcbX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11671
+ pcbY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11672
+ pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11673
+ layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
11674
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
11675
+ }, "strip", z.ZodTypeAny, {
11676
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11677
+ }, {
11678
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11679
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
11680
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11681
+ }>>;
11682
+ }, "pcbRotation" | "layer">, {
11683
+ name: z.ZodOptional<z.ZodString>;
11684
+ shape: z.ZodLiteral<"circle">;
11685
+ radius: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
11686
+ }>, "strip", z.ZodTypeAny, {
11687
+ shape: "circle";
11688
+ radius: number;
11689
+ pcbX?: number | undefined;
11690
+ pcbY?: number | undefined;
11691
+ name?: string | undefined;
11692
+ }, {
11693
+ shape: "circle";
11694
+ radius: string | number;
11695
+ pcbX?: string | number | undefined;
11696
+ pcbY?: string | number | undefined;
11697
+ name?: string | undefined;
11698
+ }>, z.ZodObject<z.objectUtil.extendShape<Omit<{
11699
+ pcbX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11700
+ pcbY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11701
+ pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
11702
+ layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
11703
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
11704
+ }, "strip", z.ZodTypeAny, {
11705
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11706
+ }, {
11707
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11708
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
11709
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
11710
+ }>>;
11711
+ }, "pcbRotation" | "layer">, {
11712
+ name: z.ZodOptional<z.ZodString>;
11713
+ shape: z.ZodLiteral<"polygon">;
11714
+ points: z.ZodArray<z.ZodObject<{
11715
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
11716
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
11717
+ }, "strip", z.ZodTypeAny, {
11718
+ x: number;
11719
+ y: number;
11720
+ }, {
11721
+ x: string | number;
11722
+ y: string | number;
11723
+ }>, "many">;
11724
+ }>, "strip", z.ZodTypeAny, {
11725
+ shape: "polygon";
11726
+ points: {
11727
+ x: number;
11728
+ y: number;
11729
+ }[];
11730
+ pcbX?: number | undefined;
11731
+ pcbY?: number | undefined;
11732
+ name?: string | undefined;
11733
+ }, {
11734
+ shape: "polygon";
11735
+ points: {
11736
+ x: string | number;
11737
+ y: string | number;
11738
+ }[];
11739
+ pcbX?: string | number | undefined;
11740
+ pcbY?: string | number | undefined;
11741
+ name?: string | undefined;
11742
+ }>]>;
11743
+ type CutoutPropsInput = z.input<typeof cutoutProps>;
11744
+
11512
11745
  interface RectSmtPadProps extends Omit<PcbLayoutProps, "pcbRotation"> {
11513
11746
  shape: "rect";
11514
11747
  width: Distance;
@@ -18741,4 +18974,4 @@ declare const platformConfig: z.ZodObject<{
18741
18974
  cloudAutorouterUrl?: string | undefined;
18742
18975
  }>;
18743
18976
 
18744
- export { type AutorouterConfig, type AutorouterProp, type BaseGroupProps, type BaseManualEditEvent, type BaseManualEditEventInput, type BatteryProps, type BoardProps, type CadModelBase, type CadModelJscad, type CadModelObj, type CadModelProp, type CadModelStl, type CapacitorPinLabels, type CapacitorProps, type ChipConnections, type ChipPinLabels, type ChipProps, type ChipPropsSU, type CirclePlatedHoleProps, type CircleSmtPadProps, type CircleSolderPasteProps, type CircularHoleWithRectPlatedProps, type CommonComponentProps, type CommonLayoutProps, type ComponentProps, type ConnectionTarget, type Connections, type ConstrainedLayoutProps, type ConstraintProps, type CrystalProps, type DiodeProps, type Direction, type DirectionAlongEdge, type EditPcbComponentLocationEvent, type EditPcbComponentLocationEventInput, type EditPcbGroupLocationEvent, type EditPcbGroupLocationEventInput, type EditSchematicComponentLocationEvent, type EditSchematicComponentLocationEventInput, type EditSchematicGroupLocationEvent, type EditSchematicGroupLocationEventInput, type EditTraceHintEvent, type EditTraceHintEventInput, type FabricationNotePathProps, type FabricationNoteTextProps, type Footprint, type FootprintProps, type FootprintPropsInput, type FootprintSoupElements, type GroupProps, type HoleProps, type InductorProps, type InferredChipProps, type InferredConstrainedLayoutProps, type InferredDiodeProps, type InferredHoleProps, type InferredSmtPadProps, type InferredSolderPasteProps, type InferredSwitchProps, type JumperProps, type LayoutConfig, type LedProps, type ManualEditEvent, type ManualEditEventInput, type ManualEditsFile, type ManualEditsFileInput, type ManualPcbPlacement, type ManualPcbPlacementInput, type ManualSchematicPlacement, type ManualSchematicPlacementInput, type ManualTraceHint, type ManualTraceHintInput, type MosfetProps, type NetAliasProps, type NetProps, type NonSubcircuitGroupProps, type OvalPlatedHoleProps, type PartsEngine, type PcbKeepoutProps, type PcbLayoutProps, type PcbRouteCache, type PcbSameXConstraint, type PcbSameYConstraint, type PcbTraceProps, type PcbXDistConstraint, type PcbYDistConstraint, type PillPlatedHoleProps, type PillSmtPadProps, type PinCompatibleVariant, type PinHeaderProps, type PinLabelFromPinLabelMap, type PinLabelsProp, type PinSideDefinition, type PinVariant, type PlatedHoleProps, type PlatformConfig, type PortHints, type PortProps, type PotentiometerPinVariant, type PotentiometerProps, type PowerSourceProps, type PushButtonProps, type RectSmtPadProps, type RectSolderPasteProps, type ResistorPinLabels, type ResistorProps, type ResonatorPinVariant, type ResonatorProps, type RotatedRectSmtPadProps, type SchematicBoxProps, type SchematicLineProps, type SchematicPathProps, type SchematicPinArrangement, type SchematicPinArrangementWithPinCounts, type SchematicPinArrangementWithSides, type SchematicPinArrangementWithSizes, type SchematicPinStyle, type SchematicPortArrangement, type SchematicPortArrangementWithPinCounts, type SchematicPortArrangementWithSides, type SchematicPortArrangementWithSizes, type SchematicTextProps, type Selectors, type SilkscreenCircleProps, type SilkscreenLineProps, type SilkscreenPathProps, type SilkscreenRectProps, type SilkscreenTextProps, type SmtPadProps, type SolderPasteProps, type StampboardProps, type SubcircuitGroupProps, type SubcircuitGroupPropsWithBool, type SubcircuitProps, type SupplierName, type SupplierPartNumbers, type SupplierProps, type SwitchProps, type TraceHintProps, type TraceProps, type TransistorProps, type ViaProps, autorouterConfig, autorouterProp, baseGroupProps, base_manual_edit_event, batteryPins, batteryProps, boardProps, bugProps, cadModelBase, cadModelJscad, cadModelObj, cadModelProp, cadModelStl, capacitorPinLabels, capacitorPins, capacitorProps, chipProps, circleSmtPadProps, circleSolderPasteProps, commonComponentProps, commonLayoutProps, componentProps, constrainedLayoutProps, constraintProps, crystalPins, crystalProps, diodePins, diodeProps, direction, directionAlongEdge, distanceOrMultiplier, edit_component_location_event, edit_pcb_component_location_event, edit_pcb_group_location_event, edit_schematic_component_location_event, edit_schematic_group_location_event, edit_trace_hint_event, explicitPinSideDefinition, fabricationNotePathProps, fabricationNoteTextProps, footprintProp, footprintProps, groupProps, holeProps, inductorPins, inductorProps, jumperProps, layoutConfig, ledPins, ledProps, lrPins, lrPolarPins, manual_edit_event, manual_edits_file, manual_pcb_placement, manual_schematic_placement, manual_trace_hint, mosfetPins, mosfetProps, netAliasProps, netProps, partsEngine, pcbKeepoutProps, pcbLayoutProps, pcbSameXConstraintProps, pcbSameYConstraintProps, pcbTraceProps, pcbXDistConstraintProps, pcbYDistConstraintProps, pillSmtPadProps, pinCompatibleVariant, pinHeaderProps, pinLabelsProp, platedHoleProps, platformConfig, point3, portHints, portProps, portRef, potentiometerProps, powerSourceProps, pushButtonProps, rectSmtPadProps, rectSolderPasteProps, resistorPinLabels, resistorPins, resistorProps, resonatorProps, rotatedRectSmtPadProps, rotationPoint3, routeHintPointProps, schematicBoxProps, schematicLineProps, schematicPathProps, schematicPinArrangement, schematicPinStyle, schematicPortArrangement, schematicTextProps, silkscreenCircleProps, silkscreenLineProps, silkscreenPathProps, silkscreenRectProps, silkscreenTextProps, smtPadProps, solderPasteProps, stampboardProps, subcircuitGroupProps, subcircuitGroupPropsWithBool, subcircuitProps, supplierProps, switchProps, traceHintProps, traceProps, transistorPins, transistorProps, viaProps };
18977
+ export { type AutorouterConfig, type AutorouterProp, type BaseGroupProps, type BaseManualEditEvent, type BaseManualEditEventInput, type BatteryProps, type BoardProps, type CadModelBase, type CadModelJscad, type CadModelObj, type CadModelProp, type CadModelStl, type CapacitorPinLabels, type CapacitorProps, type ChipConnections, type ChipPinLabels, type ChipProps, type ChipPropsSU, type CircleCutoutProps, type CirclePlatedHoleProps, type CircleSmtPadProps, type CircleSolderPasteProps, type CircularHoleWithRectPlatedProps, type CommonComponentProps, type CommonLayoutProps, type ComponentProps, type ConnectionTarget, type Connections, type ConstrainedLayoutProps, type ConstraintProps, type CrystalProps, type CutoutProps, type CutoutPropsInput, type DiodeProps, type Direction, type DirectionAlongEdge, type EditPcbComponentLocationEvent, type EditPcbComponentLocationEventInput, type EditPcbGroupLocationEvent, type EditPcbGroupLocationEventInput, type EditSchematicComponentLocationEvent, type EditSchematicComponentLocationEventInput, type EditSchematicGroupLocationEvent, type EditSchematicGroupLocationEventInput, type EditTraceHintEvent, type EditTraceHintEventInput, type FabricationNotePathProps, type FabricationNoteTextProps, type Footprint, type FootprintProps, type FootprintPropsInput, type FootprintSoupElements, type GroupProps, type HoleProps, type InductorProps, type InferredChipProps, type InferredConstrainedLayoutProps, type InferredDiodeProps, type InferredHoleProps, type InferredSmtPadProps, type InferredSolderPasteProps, type InferredSwitchProps, type JumperProps, type LayoutConfig, type LedProps, type ManualEditEvent, type ManualEditEventInput, type ManualEditsFile, type ManualEditsFileInput, type ManualPcbPlacement, type ManualPcbPlacementInput, type ManualSchematicPlacement, type ManualSchematicPlacementInput, type ManualTraceHint, type ManualTraceHintInput, type MosfetProps, type NetAliasProps, type NetProps, type NonSubcircuitGroupProps, type OvalPlatedHoleProps, type PartsEngine, type PcbKeepoutProps, type PcbLayoutProps, type PcbRouteCache, type PcbSameXConstraint, type PcbSameYConstraint, type PcbTraceProps, type PcbXDistConstraint, type PcbYDistConstraint, type PillPlatedHoleProps, type PillSmtPadProps, type PinCompatibleVariant, type PinHeaderProps, type PinLabelFromPinLabelMap, type PinLabelsProp, type PinSideDefinition, type PinVariant, type PlatedHoleProps, type PlatformConfig, type PolygonCutoutProps, type PortHints, type PortProps, type PotentiometerPinVariant, type PotentiometerProps, type PowerSourceProps, type PushButtonProps, type RectCutoutProps, type RectSmtPadProps, type RectSolderPasteProps, type ResistorPinLabels, type ResistorProps, type ResonatorPinVariant, type ResonatorProps, type RotatedRectSmtPadProps, type SchematicBoxProps, type SchematicLineProps, type SchematicPathProps, type SchematicPinArrangement, type SchematicPinArrangementWithPinCounts, type SchematicPinArrangementWithSides, type SchematicPinArrangementWithSizes, type SchematicPinStyle, type SchematicPortArrangement, type SchematicPortArrangementWithPinCounts, type SchematicPortArrangementWithSides, type SchematicPortArrangementWithSizes, type SchematicTextProps, type Selectors, type SilkscreenCircleProps, type SilkscreenLineProps, type SilkscreenPathProps, type SilkscreenRectProps, type SilkscreenTextProps, type SmtPadProps, type SolderPasteProps, type StampboardProps, type SubcircuitGroupProps, type SubcircuitGroupPropsWithBool, type SubcircuitProps, type SupplierName, type SupplierPartNumbers, type SupplierProps, type SwitchProps, type TraceHintProps, type TraceProps, type TransistorProps, type ViaProps, autorouterConfig, autorouterProp, baseGroupProps, base_manual_edit_event, batteryPins, batteryProps, boardProps, bugProps, cadModelBase, cadModelJscad, cadModelObj, cadModelProp, cadModelStl, capacitorPinLabels, capacitorPins, capacitorProps, chipProps, circleCutoutProps, circleSmtPadProps, circleSolderPasteProps, commonComponentProps, commonLayoutProps, componentProps, constrainedLayoutProps, constraintProps, crystalPins, crystalProps, cutoutProps, diodePins, diodeProps, direction, directionAlongEdge, distanceOrMultiplier, edit_component_location_event, edit_pcb_component_location_event, edit_pcb_group_location_event, edit_schematic_component_location_event, edit_schematic_group_location_event, edit_trace_hint_event, explicitPinSideDefinition, fabricationNotePathProps, fabricationNoteTextProps, footprintProp, footprintProps, groupProps, holeProps, inductorPins, inductorProps, jumperProps, layoutConfig, ledPins, ledProps, lrPins, lrPolarPins, manual_edit_event, manual_edits_file, manual_pcb_placement, manual_schematic_placement, manual_trace_hint, mosfetPins, mosfetProps, netAliasProps, netProps, partsEngine, pcbKeepoutProps, pcbLayoutProps, pcbSameXConstraintProps, pcbSameYConstraintProps, pcbTraceProps, pcbXDistConstraintProps, pcbYDistConstraintProps, pillSmtPadProps, pinCompatibleVariant, pinHeaderProps, pinLabelsProp, platedHoleProps, platformConfig, point3, polygonCutoutProps, portHints, portProps, portRef, potentiometerProps, powerSourceProps, pushButtonProps, rectCutoutProps, rectSmtPadProps, rectSolderPasteProps, resistorPinLabels, resistorPins, resistorProps, resonatorProps, rotatedRectSmtPadProps, rotationPoint3, routeHintPointProps, schematicBoxProps, schematicLineProps, schematicPathProps, schematicPinArrangement, schematicPinStyle, schematicPortArrangement, schematicTextProps, silkscreenCircleProps, silkscreenLineProps, silkscreenPathProps, silkscreenRectProps, silkscreenTextProps, smtPadProps, solderPasteProps, stampboardProps, subcircuitGroupProps, subcircuitGroupPropsWithBool, subcircuitProps, supplierProps, switchProps, traceHintProps, traceProps, transistorPins, transistorProps, viaProps };