@tscircuit/core 0.0.97 → 0.0.99

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.d.ts +139 -140
  2. package/dist/index.js +860 -843
  3. package/package.json +4 -4
package/dist/index.d.ts CHANGED
@@ -1,53 +1,13 @@
1
+ import { ReactElement } from 'react';
1
2
  import * as zod from 'zod';
2
3
  import { ZodType, z } from 'zod';
3
- import { LayerRef, AnyCircuitElement, PcbTraceError, PcbPlacementError, AnySourceComponent, RouteHintPoint } from 'circuit-json';
4
+ import { SchSymbol, BaseSymbolName } from 'schematic-symbols';
5
+ import { PcbTraceError, PcbPlacementError, LayerRef, AnyCircuitElement, AnySourceComponent, RouteHintPoint } from 'circuit-json';
4
6
  import { SoupUtilObjects } from '@tscircuit/soup-util';
5
- import { ReactElement } from 'react';
6
7
  import { Matrix } from 'transformation-matrix';
7
- import { SchSymbol, BaseSymbolName } from 'schematic-symbols';
8
8
  import * as Props from '@tscircuit/props';
9
9
  import { traceProps, groupProps, boardProps, footprintProps, smtPadProps, resistorProps, ledProps, diodeProps, capacitorProps, traceHintProps, chipProps, jumperProps, silkscreenPathProps, platedHoleProps, constraintProps, holeProps, silkscreenTextProps, pcbKeepoutProps, fabricationNoteTextProps, fabricationNotePathProps } from '@tscircuit/props';
10
10
 
11
- declare class Circuit {
12
- firstChild: PrimitiveComponent | null;
13
- children: PrimitiveComponent[];
14
- db: SoupUtilObjects;
15
- root: Circuit | null;
16
- isRoot: boolean;
17
- _hasRenderedAtleastOnce: boolean;
18
- constructor();
19
- add(componentOrElm: PrimitiveComponent | ReactElement): void;
20
- /**
21
- * Get the main board for this Circuit.
22
- */
23
- _getBoard(): PrimitiveComponent & {
24
- boardThickness: number;
25
- allLayers: LayerRef[];
26
- };
27
- _guessRootComponent(): void;
28
- render(): void;
29
- getSoup(): AnyCircuitElement[];
30
- getCircuitJson(): AnyCircuitElement[];
31
- getSvg(options: {
32
- view: "pcb";
33
- layer?: string;
34
- }): Promise<string>;
35
- preview(previewNameOrOpts: string | {
36
- previewName: string;
37
- tscircuitApiKey?: string;
38
- }): Promise<void>;
39
- computeSchematicGlobalTransform(): Matrix;
40
- _computePcbGlobalTransformBeforeLayout(): Matrix;
41
- selectAll(selector: string): PrimitiveComponent[];
42
- selectOne(selector: string, opts?: {
43
- type?: "component" | "port";
44
- }): PrimitiveComponent | null;
45
- }
46
- /**
47
- * @deprecated
48
- */
49
- declare const Project: typeof Circuit;
50
-
51
11
  declare const orderedRenderPhases: readonly ["ReactSubtreesRender", "InitializePortsFromChildren", "CreateNetsFromProps", "CreateTracesFromProps", "CreateTraceHintsFromProps", "SourceRender", "SourceParentAttachment", "PortDiscovery", "PortMatching", "SourceTraceRender", "SchematicComponentRender", "SchematicLayout", "SchematicPortRender", "SchematicTraceRender", "PcbComponentRender", "PcbPrimitiveRender", "PcbFootprintLayout", "PcbPortRender", "PcbPortAttachment", "PcbLayout", "PcbTraceRender", "PcbTraceHintRender", "PcbRouteNetIslands", "PcbComponentSizeCalculation", "CadModelRender"];
52
12
  type RenderPhase = (typeof orderedRenderPhases)[number];
53
13
  type RenderPhaseFn<K extends RenderPhase = RenderPhase> = `doInitial${K}` | `update${K}` | `remove${K}`;
@@ -88,6 +48,51 @@ declare abstract class Renderable implements IRenderable {
88
48
  renderError(message: string | Omit<PcbTraceError, "pcb_error_id"> | Omit<PcbPlacementError, "pcb_error_id">): void;
89
49
  }
90
50
 
51
+ type ReactSubtree = {
52
+ element: ReactElement;
53
+ component: NormalComponent;
54
+ };
55
+
56
+ declare class Circuit {
57
+ firstChild: PrimitiveComponent | null;
58
+ children: PrimitiveComponent[];
59
+ db: SoupUtilObjects;
60
+ root: Circuit | null;
61
+ isRoot: boolean;
62
+ _hasRenderedAtleastOnce: boolean;
63
+ constructor();
64
+ add(componentOrElm: PrimitiveComponent | ReactElement): void;
65
+ /**
66
+ * Get the main board for this Circuit.
67
+ */
68
+ _getBoard(): PrimitiveComponent & {
69
+ boardThickness: number;
70
+ allLayers: LayerRef[];
71
+ };
72
+ _guessRootComponent(): void;
73
+ render(): void;
74
+ getSoup(): AnyCircuitElement[];
75
+ getCircuitJson(): AnyCircuitElement[];
76
+ getSvg(options: {
77
+ view: "pcb";
78
+ layer?: string;
79
+ }): Promise<string>;
80
+ preview(previewNameOrOpts: string | {
81
+ previewName: string;
82
+ tscircuitApiKey?: string;
83
+ }): Promise<void>;
84
+ computeSchematicGlobalTransform(): Matrix;
85
+ _computePcbGlobalTransformBeforeLayout(): Matrix;
86
+ selectAll(selector: string): PrimitiveComponent[];
87
+ selectOne(selector: string, opts?: {
88
+ type?: "component" | "port";
89
+ }): PrimitiveComponent | null;
90
+ }
91
+ /**
92
+ * @deprecated
93
+ */
94
+ declare const Project: typeof Circuit;
95
+
91
96
  interface BaseComponentConfig {
92
97
  componentName: string;
93
98
  schematicSymbolName?: BaseSymbolName | null;
@@ -614,11 +619,6 @@ declare class Port extends PrimitiveComponent<typeof portProps> {
614
619
  _hasMatchedPcbPrimitive(): boolean;
615
620
  }
616
621
 
617
- type ReactSubtree = {
618
- element: ReactElement;
619
- component: NormalComponent;
620
- };
621
-
622
622
  type PortMap<T extends string> = {
623
623
  [K in T]: Port;
624
624
  };
@@ -783,7 +783,23 @@ declare class Board extends Group<typeof boardProps> {
783
783
  declare class Footprint extends PrimitiveComponent<typeof footprintProps> {
784
784
  get config(): {
785
785
  componentName: string;
786
- zodProps: zod.ZodObject<{}, "strip", zod.ZodTypeAny, {}, {}>;
786
+ zodProps: zod.ZodObject<{
787
+ originalLayer: zod.ZodOptional<zod.ZodDefault<zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
788
+ name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
789
+ }, "strip", zod.ZodTypeAny, {
790
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
791
+ }, {
792
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
793
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
794
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
795
+ }>>>;
796
+ }, "strip", zod.ZodTypeAny, {
797
+ originalLayer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
798
+ }, {
799
+ originalLayer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
800
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
801
+ } | undefined;
802
+ }>;
787
803
  };
788
804
  /**
789
805
  * A footprint is a constrainedlayout, the db elements are adjusted according
@@ -1732,10 +1748,9 @@ declare class Led extends NormalComponent<typeof ledProps, PolarizedPassivePorts
1732
1748
  cathode: Port;
1733
1749
  }
1734
1750
 
1735
- declare class Diode extends NormalComponent<typeof diodeProps, TwoPinPorts> {
1736
- pin1: Port;
1737
- pin2: Port;
1751
+ declare class Diode extends NormalComponent<typeof diodeProps, PolarizedPassivePorts> {
1738
1752
  get config(): {
1753
+ schematicSymbolName: string;
1739
1754
  componentName: string;
1740
1755
  zodProps: zod.ZodObject<zod.objectUtil.extendShape<zod.objectUtil.extendShape<zod.objectUtil.extendShape<{
1741
1756
  pcbX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
@@ -2133,6 +2148,10 @@ declare class Diode extends NormalComponent<typeof diodeProps, TwoPinPorts> {
2133
2148
  sourceFtype: Ftype;
2134
2149
  };
2135
2150
  initPorts(): void;
2151
+ pos: Port;
2152
+ anode: Port;
2153
+ neg: Port;
2154
+ cathode: Port;
2136
2155
  }
2137
2156
 
2138
2157
  declare class Capacitor extends NormalComponent<typeof capacitorProps, PassivePorts> {
@@ -3018,37 +3037,15 @@ declare class Chip<PinLabels extends string = never> extends NormalComponent<typ
3018
3037
  }>, {
3019
3038
  manufacturerPartNumber: zod.ZodOptional<zod.ZodString>;
3020
3039
  pinLabels: zod.ZodOptional<zod.ZodRecord<zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>, zod.ZodString>>;
3021
- schPortArrangement: zod.ZodOptional<zod.ZodUnion<[zod.ZodUnion<[zod.ZodObject<{
3040
+ schPortArrangement: zod.ZodOptional<zod.ZodObject<{
3022
3041
  leftSize: zod.ZodOptional<zod.ZodNumber>;
3023
3042
  topSize: zod.ZodOptional<zod.ZodNumber>;
3024
3043
  rightSize: zod.ZodOptional<zod.ZodNumber>;
3025
3044
  bottomSize: zod.ZodOptional<zod.ZodNumber>;
3026
- }, "strip", zod.ZodTypeAny, {
3027
- leftSize?: number | undefined;
3028
- topSize?: number | undefined;
3029
- rightSize?: number | undefined;
3030
- bottomSize?: number | undefined;
3031
- }, {
3032
- leftSize?: number | undefined;
3033
- topSize?: number | undefined;
3034
- rightSize?: number | undefined;
3035
- bottomSize?: number | undefined;
3036
- }>, zod.ZodObject<{
3037
3045
  leftPinCount: zod.ZodOptional<zod.ZodNumber>;
3038
3046
  rightPinCount: zod.ZodOptional<zod.ZodNumber>;
3039
3047
  topPinCount: zod.ZodOptional<zod.ZodNumber>;
3040
3048
  bottomPinCount: zod.ZodOptional<zod.ZodNumber>;
3041
- }, "strip", zod.ZodTypeAny, {
3042
- leftPinCount?: number | undefined;
3043
- rightPinCount?: number | undefined;
3044
- topPinCount?: number | undefined;
3045
- bottomPinCount?: number | undefined;
3046
- }, {
3047
- leftPinCount?: number | undefined;
3048
- rightPinCount?: number | undefined;
3049
- topPinCount?: number | undefined;
3050
- bottomPinCount?: number | undefined;
3051
- }>]>, zod.ZodObject<{
3052
3049
  leftSide: zod.ZodOptional<zod.ZodObject<{
3053
3050
  pins: zod.ZodArray<zod.ZodNumber, "many">;
3054
3051
  direction: zod.ZodUnion<[zod.ZodLiteral<"top-to-bottom">, zod.ZodLiteral<"left-to-right">, zod.ZodLiteral<"bottom-to-top">, zod.ZodLiteral<"right-to-left">]>;
@@ -3090,15 +3087,19 @@ declare class Chip<PinLabels extends string = never> extends NormalComponent<typ
3090
3087
  pins: number[];
3091
3088
  }>>;
3092
3089
  }, "strip", zod.ZodTypeAny, {
3090
+ leftSize?: number | undefined;
3091
+ topSize?: number | undefined;
3092
+ rightSize?: number | undefined;
3093
+ bottomSize?: number | undefined;
3093
3094
  leftSide?: {
3094
3095
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3095
3096
  pins: number[];
3096
3097
  } | undefined;
3097
- rightSide?: {
3098
+ topSide?: {
3098
3099
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3099
3100
  pins: number[];
3100
3101
  } | undefined;
3101
- topSide?: {
3102
+ rightSide?: {
3102
3103
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3103
3104
  pins: number[];
3104
3105
  } | undefined;
@@ -3106,16 +3107,24 @@ declare class Chip<PinLabels extends string = never> extends NormalComponent<typ
3106
3107
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3107
3108
  pins: number[];
3108
3109
  } | undefined;
3110
+ leftPinCount?: number | undefined;
3111
+ rightPinCount?: number | undefined;
3112
+ topPinCount?: number | undefined;
3113
+ bottomPinCount?: number | undefined;
3109
3114
  }, {
3115
+ leftSize?: number | undefined;
3116
+ topSize?: number | undefined;
3117
+ rightSize?: number | undefined;
3118
+ bottomSize?: number | undefined;
3110
3119
  leftSide?: {
3111
3120
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3112
3121
  pins: number[];
3113
3122
  } | undefined;
3114
- rightSide?: {
3123
+ topSide?: {
3115
3124
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3116
3125
  pins: number[];
3117
3126
  } | undefined;
3118
- topSide?: {
3127
+ rightSide?: {
3119
3128
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3120
3129
  pins: number[];
3121
3130
  } | undefined;
@@ -3123,7 +3132,11 @@ declare class Chip<PinLabels extends string = never> extends NormalComponent<typ
3123
3132
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3124
3133
  pins: number[];
3125
3134
  } | undefined;
3126
- }>]>>;
3135
+ leftPinCount?: number | undefined;
3136
+ rightPinCount?: number | undefined;
3137
+ topPinCount?: number | undefined;
3138
+ bottomPinCount?: number | undefined;
3139
+ }>>;
3127
3140
  schPinStyle: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodObject<{
3128
3141
  leftMargin: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
3129
3142
  rightMargin: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
@@ -3217,21 +3230,15 @@ declare class Chip<PinLabels extends string = never> extends NormalComponent<typ
3217
3230
  topSize?: number | undefined;
3218
3231
  rightSize?: number | undefined;
3219
3232
  bottomSize?: number | undefined;
3220
- } | {
3221
- leftPinCount?: number | undefined;
3222
- rightPinCount?: number | undefined;
3223
- topPinCount?: number | undefined;
3224
- bottomPinCount?: number | undefined;
3225
- } | {
3226
3233
  leftSide?: {
3227
3234
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3228
3235
  pins: number[];
3229
3236
  } | undefined;
3230
- rightSide?: {
3237
+ topSide?: {
3231
3238
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3232
3239
  pins: number[];
3233
3240
  } | undefined;
3234
- topSide?: {
3241
+ rightSide?: {
3235
3242
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3236
3243
  pins: number[];
3237
3244
  } | undefined;
@@ -3239,6 +3246,10 @@ declare class Chip<PinLabels extends string = never> extends NormalComponent<typ
3239
3246
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3240
3247
  pins: number[];
3241
3248
  } | undefined;
3249
+ leftPinCount?: number | undefined;
3250
+ rightPinCount?: number | undefined;
3251
+ topPinCount?: number | undefined;
3252
+ bottomPinCount?: number | undefined;
3242
3253
  } | undefined;
3243
3254
  schPinStyle?: Record<string, {
3244
3255
  leftMargin?: number | undefined;
@@ -3325,21 +3336,15 @@ declare class Chip<PinLabels extends string = never> extends NormalComponent<typ
3325
3336
  topSize?: number | undefined;
3326
3337
  rightSize?: number | undefined;
3327
3338
  bottomSize?: number | undefined;
3328
- } | {
3329
- leftPinCount?: number | undefined;
3330
- rightPinCount?: number | undefined;
3331
- topPinCount?: number | undefined;
3332
- bottomPinCount?: number | undefined;
3333
- } | {
3334
3339
  leftSide?: {
3335
3340
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3336
3341
  pins: number[];
3337
3342
  } | undefined;
3338
- rightSide?: {
3343
+ topSide?: {
3339
3344
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3340
3345
  pins: number[];
3341
3346
  } | undefined;
3342
- topSide?: {
3347
+ rightSide?: {
3343
3348
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3344
3349
  pins: number[];
3345
3350
  } | undefined;
@@ -3347,6 +3352,10 @@ declare class Chip<PinLabels extends string = never> extends NormalComponent<typ
3347
3352
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3348
3353
  pins: number[];
3349
3354
  } | undefined;
3355
+ leftPinCount?: number | undefined;
3356
+ rightPinCount?: number | undefined;
3357
+ topPinCount?: number | undefined;
3358
+ bottomPinCount?: number | undefined;
3350
3359
  } | undefined;
3351
3360
  schPinStyle?: Record<string, {
3352
3361
  leftMargin?: string | number | undefined;
@@ -3647,37 +3656,15 @@ declare class Jumper<PinLabels extends string = never> extends NormalComponent<t
3647
3656
  schWidth: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
3648
3657
  schHeight: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
3649
3658
  schDirection: zod.ZodOptional<zod.ZodEnum<["left", "right"]>>;
3650
- schPortArrangement: zod.ZodOptional<zod.ZodUnion<[zod.ZodUnion<[zod.ZodObject<{
3659
+ schPortArrangement: zod.ZodOptional<zod.ZodObject<{
3651
3660
  leftSize: zod.ZodOptional<zod.ZodNumber>;
3652
3661
  topSize: zod.ZodOptional<zod.ZodNumber>;
3653
3662
  rightSize: zod.ZodOptional<zod.ZodNumber>;
3654
3663
  bottomSize: zod.ZodOptional<zod.ZodNumber>;
3655
- }, "strip", zod.ZodTypeAny, {
3656
- leftSize?: number | undefined;
3657
- topSize?: number | undefined;
3658
- rightSize?: number | undefined;
3659
- bottomSize?: number | undefined;
3660
- }, {
3661
- leftSize?: number | undefined;
3662
- topSize?: number | undefined;
3663
- rightSize?: number | undefined;
3664
- bottomSize?: number | undefined;
3665
- }>, zod.ZodObject<{
3666
3664
  leftPinCount: zod.ZodOptional<zod.ZodNumber>;
3667
3665
  rightPinCount: zod.ZodOptional<zod.ZodNumber>;
3668
3666
  topPinCount: zod.ZodOptional<zod.ZodNumber>;
3669
3667
  bottomPinCount: zod.ZodOptional<zod.ZodNumber>;
3670
- }, "strip", zod.ZodTypeAny, {
3671
- leftPinCount?: number | undefined;
3672
- rightPinCount?: number | undefined;
3673
- topPinCount?: number | undefined;
3674
- bottomPinCount?: number | undefined;
3675
- }, {
3676
- leftPinCount?: number | undefined;
3677
- rightPinCount?: number | undefined;
3678
- topPinCount?: number | undefined;
3679
- bottomPinCount?: number | undefined;
3680
- }>]>, zod.ZodObject<{
3681
3668
  leftSide: zod.ZodOptional<zod.ZodObject<{
3682
3669
  pins: zod.ZodArray<zod.ZodNumber, "many">;
3683
3670
  direction: zod.ZodUnion<[zod.ZodLiteral<"top-to-bottom">, zod.ZodLiteral<"left-to-right">, zod.ZodLiteral<"bottom-to-top">, zod.ZodLiteral<"right-to-left">]>;
@@ -3719,15 +3706,19 @@ declare class Jumper<PinLabels extends string = never> extends NormalComponent<t
3719
3706
  pins: number[];
3720
3707
  }>>;
3721
3708
  }, "strip", zod.ZodTypeAny, {
3709
+ leftSize?: number | undefined;
3710
+ topSize?: number | undefined;
3711
+ rightSize?: number | undefined;
3712
+ bottomSize?: number | undefined;
3722
3713
  leftSide?: {
3723
3714
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3724
3715
  pins: number[];
3725
3716
  } | undefined;
3726
- rightSide?: {
3717
+ topSide?: {
3727
3718
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3728
3719
  pins: number[];
3729
3720
  } | undefined;
3730
- topSide?: {
3721
+ rightSide?: {
3731
3722
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3732
3723
  pins: number[];
3733
3724
  } | undefined;
@@ -3735,16 +3726,24 @@ declare class Jumper<PinLabels extends string = never> extends NormalComponent<t
3735
3726
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3736
3727
  pins: number[];
3737
3728
  } | undefined;
3729
+ leftPinCount?: number | undefined;
3730
+ rightPinCount?: number | undefined;
3731
+ topPinCount?: number | undefined;
3732
+ bottomPinCount?: number | undefined;
3738
3733
  }, {
3734
+ leftSize?: number | undefined;
3735
+ topSize?: number | undefined;
3736
+ rightSize?: number | undefined;
3737
+ bottomSize?: number | undefined;
3739
3738
  leftSide?: {
3740
3739
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3741
3740
  pins: number[];
3742
3741
  } | undefined;
3743
- rightSide?: {
3742
+ topSide?: {
3744
3743
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3745
3744
  pins: number[];
3746
3745
  } | undefined;
3747
- topSide?: {
3746
+ rightSide?: {
3748
3747
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3749
3748
  pins: number[];
3750
3749
  } | undefined;
@@ -3752,7 +3751,11 @@ declare class Jumper<PinLabels extends string = never> extends NormalComponent<t
3752
3751
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3753
3752
  pins: number[];
3754
3753
  } | undefined;
3755
- }>]>>;
3754
+ leftPinCount?: number | undefined;
3755
+ rightPinCount?: number | undefined;
3756
+ topPinCount?: number | undefined;
3757
+ bottomPinCount?: number | undefined;
3758
+ }>>;
3756
3759
  }>, "strip", zod.ZodTypeAny, {
3757
3760
  name: string;
3758
3761
  pcbX?: number | undefined;
@@ -3827,21 +3830,15 @@ declare class Jumper<PinLabels extends string = never> extends NormalComponent<t
3827
3830
  topSize?: number | undefined;
3828
3831
  rightSize?: number | undefined;
3829
3832
  bottomSize?: number | undefined;
3830
- } | {
3831
- leftPinCount?: number | undefined;
3832
- rightPinCount?: number | undefined;
3833
- topPinCount?: number | undefined;
3834
- bottomPinCount?: number | undefined;
3835
- } | {
3836
3833
  leftSide?: {
3837
3834
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3838
3835
  pins: number[];
3839
3836
  } | undefined;
3840
- rightSide?: {
3837
+ topSide?: {
3841
3838
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3842
3839
  pins: number[];
3843
3840
  } | undefined;
3844
- topSide?: {
3841
+ rightSide?: {
3845
3842
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3846
3843
  pins: number[];
3847
3844
  } | undefined;
@@ -3849,6 +3846,10 @@ declare class Jumper<PinLabels extends string = never> extends NormalComponent<t
3849
3846
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3850
3847
  pins: number[];
3851
3848
  } | undefined;
3849
+ leftPinCount?: number | undefined;
3850
+ rightPinCount?: number | undefined;
3851
+ topPinCount?: number | undefined;
3852
+ bottomPinCount?: number | undefined;
3852
3853
  } | undefined;
3853
3854
  schPinStyle?: Record<string, {
3854
3855
  leftMargin?: number | undefined;
@@ -3936,21 +3937,15 @@ declare class Jumper<PinLabels extends string = never> extends NormalComponent<t
3936
3937
  topSize?: number | undefined;
3937
3938
  rightSize?: number | undefined;
3938
3939
  bottomSize?: number | undefined;
3939
- } | {
3940
- leftPinCount?: number | undefined;
3941
- rightPinCount?: number | undefined;
3942
- topPinCount?: number | undefined;
3943
- bottomPinCount?: number | undefined;
3944
- } | {
3945
3940
  leftSide?: {
3946
3941
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3947
3942
  pins: number[];
3948
3943
  } | undefined;
3949
- rightSide?: {
3944
+ topSide?: {
3950
3945
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3951
3946
  pins: number[];
3952
3947
  } | undefined;
3953
- topSide?: {
3948
+ rightSide?: {
3954
3949
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3955
3950
  pins: number[];
3956
3951
  } | undefined;
@@ -3958,6 +3953,10 @@ declare class Jumper<PinLabels extends string = never> extends NormalComponent<t
3958
3953
  direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
3959
3954
  pins: number[];
3960
3955
  } | undefined;
3956
+ leftPinCount?: number | undefined;
3957
+ rightPinCount?: number | undefined;
3958
+ topPinCount?: number | undefined;
3959
+ bottomPinCount?: number | undefined;
3961
3960
  } | undefined;
3962
3961
  schPinStyle?: Record<string, {
3963
3962
  leftMargin?: string | number | undefined;