@tscircuit/core 0.0.11 → 0.0.12

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.
@@ -0,0 +1,2544 @@
1
+ import * as zod from 'zod';
2
+ import { ZodType, z } from 'zod';
3
+ import { AnySoupElement, PCBTraceError, PCBPlacementError, AnySourceComponent, RouteHintPoint } from '@tscircuit/soup';
4
+ import { SoupUtilObjects } from '@tscircuit/soup-util';
5
+ import { ReactElement } from 'react';
6
+ import { Matrix } from 'transformation-matrix';
7
+ import { SchSymbol, BaseSymbolName } from 'schematic-symbols';
8
+ import * as Props from '@tscircuit/props';
9
+ import { boardProps, footprintProps, smtPadProps, resistorProps, ledProps, traceProps, traceHintProps, groupProps, chipProps } from '@tscircuit/props';
10
+ import * as _tscircuit_layout from '@tscircuit/layout';
11
+
12
+ declare class Project {
13
+ rootComponent: PrimitiveComponent | null;
14
+ children: PrimitiveComponent[];
15
+ db: SoupUtilObjects;
16
+ constructor();
17
+ add(componentOrElm: PrimitiveComponent | ReactElement): void;
18
+ _guessRootComponent(): void;
19
+ render(): void;
20
+ getSoup(): AnySoupElement[];
21
+ getCircuitJson(): AnySoupElement[];
22
+ computeGlobalSchematicTransform(): Matrix;
23
+ computeGlobalPcbTransform(): Matrix;
24
+ selectAll(selector: string): PrimitiveComponent[];
25
+ selectOne(selector: string): PrimitiveComponent | null;
26
+ }
27
+
28
+ declare const orderedRenderPhases: readonly ["ReactSubtreesRender", "SourceRender", "SourceParentAttachment", "PortDiscovery", "PortMatching", "SourceTraceRender", "SchematicComponentRender", "SchematicLayout", "SchematicPortRender", "SchematicTraceRender", "PcbComponentRender", "PcbPortRender", "PcbPrimitiveRender", "PcbParentAttachment", "PcbLayout", "PcbTraceRender", "CadModelRender", "PcbAnalysis"];
29
+ type RenderPhase = (typeof orderedRenderPhases)[number];
30
+ type RenderPhaseFn<K extends RenderPhase = RenderPhase> = `doInitial${K}` | `update${K}` | `remove${K}`;
31
+ type RenderPhaseStates = Record<RenderPhase, {
32
+ initialized: boolean;
33
+ }>;
34
+ type RenderPhaseFunctions = {
35
+ [T in RenderPhaseFn]?: () => void;
36
+ };
37
+ type IRenderable = RenderPhaseFunctions & {
38
+ renderPhaseStates: RenderPhaseStates;
39
+ runRenderPhase(phase: RenderPhase): void;
40
+ runRenderPhaseForChildren(phase: RenderPhase): void;
41
+ shouldBeRemoved: boolean;
42
+ children: IRenderable[];
43
+ runRenderCycle(): void;
44
+ };
45
+ declare abstract class Renderable implements IRenderable {
46
+ renderPhaseStates: RenderPhaseStates;
47
+ shouldBeRemoved: boolean;
48
+ children: IRenderable[];
49
+ /** PCB-only SMTPads, PlatedHoles, Holes, Silkscreen elements etc. */
50
+ isPcbPrimitive: boolean;
51
+ /** Schematic-only, lines, boxes, indicators etc. */
52
+ isSchematicPrimitive: boolean;
53
+ _renderId: string;
54
+ constructor(props: any);
55
+ runRenderCycle(): void;
56
+ /**
57
+ * This runs all the render methods for a given phase, calling one of:
58
+ * - doInitial*
59
+ * - update*
60
+ * -remove*
61
+ * ...depending on the current state of the component.
62
+ */
63
+ runRenderPhase(phase: RenderPhase): void;
64
+ runRenderPhaseForChildren(phase: RenderPhase): void;
65
+ renderError(message: string | PCBTraceError | PCBPlacementError): void;
66
+ }
67
+
68
+ interface BaseComponentConfig {
69
+ schematicSymbolName?: BaseSymbolName | null;
70
+ zodProps: ZodType;
71
+ sourceFtype?: AnySourceComponent["ftype"] | null;
72
+ }
73
+ /**
74
+ * A PrimitiveComponent (SmtPad, Port etc.) doesn't have the ability to contain
75
+ * React subtrees or explicit handling of the "footprint" prop. But otherwise
76
+ * has most of the features of a NormalComponent.
77
+ */
78
+ declare abstract class PrimitiveComponent<ZodProps extends ZodType = any> extends Renderable {
79
+ parent: PrimitiveComponent | null;
80
+ children: PrimitiveComponent[];
81
+ childrenPendingRemoval: PrimitiveComponent[];
82
+ get config(): BaseComponentConfig;
83
+ project: Project | null;
84
+ props: z.input<ZodProps>;
85
+ _parsedProps: z.infer<ZodProps>;
86
+ componentName: string;
87
+ lowercaseComponentName: string;
88
+ source_group_id: string | null;
89
+ source_component_id: string | null;
90
+ schematic_component_id: string | null;
91
+ pcb_component_id: string | null;
92
+ cad_component_id: string | null;
93
+ constructor(props: z.input<ZodProps>);
94
+ setProject(project: Project): void;
95
+ setProps(props: Partial<z.input<ZodProps>>): void;
96
+ /**
97
+ * Computes a transformation matrix from the props of this component for PCB
98
+ * components
99
+ */
100
+ computePcbPropsTransform(): Matrix;
101
+ /**
102
+ * Compute a transformation matrix combining all parent transforms for PCB
103
+ * components
104
+ */
105
+ computePcbGlobalTransform(): Matrix;
106
+ /**
107
+ * Computes a transformation matrix from the props of this component for
108
+ * schematic components
109
+ */
110
+ computeSchematicPropsTransform(): Matrix;
111
+ /**
112
+ * Compute a transformation matrix combining all parent transforms for this
113
+ * component
114
+ */
115
+ computeSchematicGlobalTransform(): Matrix;
116
+ getSchematicSymbol(variant?: "horz" | "vert" | null): SchSymbol | null;
117
+ getGlobalPcbPosition(): {
118
+ x: number;
119
+ y: number;
120
+ };
121
+ getGlobalSchematicPosition(): {
122
+ x: number;
123
+ y: number;
124
+ };
125
+ onAddToParent(parent: PrimitiveComponent): void;
126
+ /**
127
+ * Called whenever the props change
128
+ */
129
+ onPropsChange(params: {
130
+ oldProps: z.infer<ZodProps>;
131
+ newProps: z.infer<ZodProps>;
132
+ changedProps: string[];
133
+ }): void;
134
+ onChildChanged(child: PrimitiveComponent): void;
135
+ add(component: PrimitiveComponent): void;
136
+ addAll(components: PrimitiveComponent[]): void;
137
+ remove(component: PrimitiveComponent): void;
138
+ getNameAndAliases(): string[];
139
+ isMatchingNameOrAlias(name: string): boolean;
140
+ isMatchingAnyOf(aliases: Array<string | number>): boolean;
141
+ doesSelectorMatch(selector: string): boolean;
142
+ selectAll(selector: string): PrimitiveComponent[];
143
+ selectOne(selector: string, options?: {
144
+ type?: string;
145
+ port?: boolean;
146
+ pcbPrimitive?: boolean;
147
+ schematicPrimitive?: boolean;
148
+ }): PrimitiveComponent | null;
149
+ getAvailablePcbLayers(): string[];
150
+ getDescendants(): PrimitiveComponent[];
151
+ getString(): string;
152
+ get [Symbol.toStringTag](): string;
153
+ }
154
+
155
+ declare const portProps: z.ZodObject<{
156
+ name: z.ZodOptional<z.ZodString>;
157
+ pinNumber: z.ZodOptional<z.ZodNumber>;
158
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
159
+ }, "strip", z.ZodTypeAny, {
160
+ name?: string | undefined;
161
+ pinNumber?: number | undefined;
162
+ aliases?: string[] | undefined;
163
+ }, {
164
+ name?: string | undefined;
165
+ pinNumber?: number | undefined;
166
+ aliases?: string[] | undefined;
167
+ }>;
168
+ declare class Port extends PrimitiveComponent<typeof portProps> {
169
+ source_port_id: string | null;
170
+ pcb_port_id: string | null;
171
+ schematic_port_id: string | null;
172
+ schematicSymbolPortDef: SchSymbol["ports"][number] | null;
173
+ matchedComponents: PrimitiveComponent[];
174
+ facingDirection: "up" | "down" | "left" | "right" | null;
175
+ constructor(props: z.input<typeof portProps>);
176
+ getGlobalPcbPosition(): {
177
+ x: number;
178
+ y: number;
179
+ };
180
+ getGlobalSchematicPosition(): {
181
+ x: number;
182
+ y: number;
183
+ };
184
+ /**
185
+ * Smtpads and platedholes call this method to register themselves as a match
186
+ * for this port. All the matching is done by primitives other than the Port,
187
+ * but everyone registers themselves as a match with their Port.
188
+ */
189
+ registerMatch(component: PrimitiveComponent): void;
190
+ getNameAndAliases(): string[];
191
+ isMatchingPort(port: Port): boolean;
192
+ getPortSelector(): string;
193
+ getAvailablePcbLayers(): string[];
194
+ doInitialSourceRender(): void;
195
+ doInitialSourceParentAttachment(): void;
196
+ /**
197
+ * For PcbPorts, we use the parent attachment phase to determine where to place
198
+ * the pcb_port (prior to this phase, the smtpad/platedhole isn't guaranteed
199
+ * to exist)
200
+ */
201
+ doInitialPcbPortRender(): void;
202
+ doInitialSchematicPortRender(): void;
203
+ }
204
+
205
+ type ReactSubtree = {
206
+ element: ReactElement;
207
+ component: NormalComponent;
208
+ };
209
+
210
+ type PortMap<T extends string> = {
211
+ [K in T]: Port;
212
+ };
213
+ /**
214
+ * A NormalComponent is the base class for most components that a user will
215
+ * interact with. It has the ability to set a footprint and discover ports.
216
+ *
217
+ * When you're extending a NormalComponent, you almost always want to override
218
+ * initPorts() to create ports for the component.
219
+ *
220
+ * class Led extends NormalComponent<typeof resistorProps> {
221
+ * pin1: Port = this.portMap.pin1
222
+ * pin2: Port = this.portMap.pin2
223
+ *
224
+ * initPorts() {
225
+ * this.add(new Port({ pinNumber: 1, aliases: ["anode", "pos"] }))
226
+ * this.add(new Port({ pinNumber: 2, aliases: ["cathode", "neg"] }))
227
+ * }
228
+ * }
229
+ */
230
+ declare class NormalComponent<ZodProps extends ZodType = any, PortNames extends string = never> extends PrimitiveComponent<ZodProps> {
231
+ reactSubtrees: Array<ReactSubtree>;
232
+ constructor(props: z.input<ZodProps>);
233
+ /**
234
+ * Override this method for better control over the auto-discovery of ports.
235
+ *
236
+ * If you override this method just do something like:
237
+ * initPorts() {
238
+ * this.add(new Port({ pinNumber: 1, aliases: ["anode", "pos"] }))
239
+ * this.add(new Port({ pinNumber: 2, aliases: ["cathode", "neg"] }))
240
+ * }
241
+ *
242
+ * By default, we'll pull the ports from the first place we find them:
243
+ * 1. `config.schematicSymbolName`
244
+ * 2. `props.footprint`
245
+ *
246
+ */
247
+ initPorts(): void;
248
+ _addChildrenFromStringFootprint(): void;
249
+ get portMap(): PortMap<PortNames>;
250
+ getInstanceForReactElement(element: ReactElement): NormalComponent | null;
251
+ doInitialSourceRender(): void;
252
+ /**
253
+ * Render the schematic component for this NormalComponent using the
254
+ * config.schematicSymbolName if it exists.
255
+ *
256
+ * You can override this method to do more complicated things.
257
+ */
258
+ doInitialSchematicComponentRender(): void;
259
+ doInitialPcbComponentRender(): void;
260
+ doInitialPcbAnalysis(): void;
261
+ _renderReactSubtree(element: ReactElement): ReactSubtree;
262
+ doInitialReactSubtreesRender(): void;
263
+ add(componentOrElm: PrimitiveComponent | ReactElement): void;
264
+ getPortsFromFootprint(): Port[];
265
+ getPortsFromSchematicSymbol(): Port[];
266
+ /**
267
+ * Use data from our props to create ports for this component.
268
+ *
269
+ * Generally, this is done by looking at the schematic and the footprint,
270
+ * reading the pins, making sure there aren't duplicates.
271
+ *
272
+ * Can probably be removed in favor of initPorts()
273
+ *
274
+ */
275
+ doInitialPortDiscovery(): void;
276
+ }
277
+
278
+ declare class Board extends NormalComponent<typeof boardProps> {
279
+ pcb_board_id: string | null;
280
+ get config(): {
281
+ zodProps: z.ZodObject<{
282
+ width: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
283
+ height: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
284
+ outline: z.ZodOptional<z.ZodArray<z.ZodObject<{
285
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
286
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
287
+ }, "strip", z.ZodTypeAny, {
288
+ x: number;
289
+ y: number;
290
+ }, {
291
+ x: string | number;
292
+ y: string | number;
293
+ }>, "many">>;
294
+ pcbX: z.ZodDefault<z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>>;
295
+ pcbY: z.ZodDefault<z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>>;
296
+ layout: z.ZodOptional<z.ZodAny>;
297
+ routingDisabled: z.ZodOptional<z.ZodBoolean>;
298
+ children: z.ZodAny;
299
+ }, "strip", z.ZodTypeAny, {
300
+ pcbX: number;
301
+ pcbY: number;
302
+ children?: any;
303
+ width?: number | undefined;
304
+ height?: number | undefined;
305
+ layout?: any;
306
+ routingDisabled?: boolean | undefined;
307
+ outline?: {
308
+ x: number;
309
+ y: number;
310
+ }[] | undefined;
311
+ }, {
312
+ pcbX?: string | number | undefined;
313
+ pcbY?: string | number | undefined;
314
+ children?: any;
315
+ width?: string | number | undefined;
316
+ height?: string | number | undefined;
317
+ layout?: any;
318
+ routingDisabled?: boolean | undefined;
319
+ outline?: {
320
+ x: string | number;
321
+ y: string | number;
322
+ }[] | undefined;
323
+ }>;
324
+ };
325
+ doInitialPcbComponentRender(): void;
326
+ removePcbComponentRender(): void;
327
+ computePcbGlobalTransform(): Matrix;
328
+ }
329
+
330
+ declare class Footprint extends PrimitiveComponent<typeof footprintProps> {
331
+ }
332
+
333
+ declare class SmtPad extends PrimitiveComponent<typeof smtPadProps> {
334
+ pcb_smtpad_id: string | null;
335
+ matchedPort: Port | null;
336
+ isPcbPrimitive: boolean;
337
+ get config(): {
338
+ zodProps: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<Omit<{
339
+ pcbX: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
340
+ pcbY: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
341
+ pcbRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
342
+ layer: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
343
+ name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
344
+ }, "strip", zod.ZodTypeAny, {
345
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
346
+ }, {
347
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
348
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
349
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
350
+ }>>;
351
+ }, "pcbRotation">, {
352
+ shape: zod.ZodLiteral<"circle">;
353
+ radius: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
354
+ portHints: zod.ZodOptional<zod.ZodArray<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, "many">>;
355
+ }>, "strip", zod.ZodTypeAny, {
356
+ pcbX: number;
357
+ pcbY: number;
358
+ shape: "circle";
359
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
360
+ radius?: number | undefined;
361
+ portHints?: (string | number)[] | undefined;
362
+ }, {
363
+ pcbX: string | number;
364
+ pcbY: string | number;
365
+ shape: "circle";
366
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
367
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
368
+ } | undefined;
369
+ radius?: string | number | undefined;
370
+ portHints?: (string | number)[] | undefined;
371
+ }>, zod.ZodObject<zod.objectUtil.extendShape<Omit<{
372
+ pcbX: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
373
+ pcbY: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
374
+ pcbRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
375
+ layer: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
376
+ name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
377
+ }, "strip", zod.ZodTypeAny, {
378
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
379
+ }, {
380
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
381
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
382
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
383
+ }>>;
384
+ }, "pcbRotation">, {
385
+ shape: zod.ZodLiteral<"rect">;
386
+ width: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
387
+ height: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
388
+ portHints: zod.ZodOptional<zod.ZodArray<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, "many">>;
389
+ }>, "strip", zod.ZodTypeAny, {
390
+ pcbX: number;
391
+ pcbY: number;
392
+ shape: "rect";
393
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
394
+ portHints?: (string | number)[] | undefined;
395
+ width?: number | undefined;
396
+ height?: number | undefined;
397
+ }, {
398
+ pcbX: string | number;
399
+ pcbY: string | number;
400
+ shape: "rect";
401
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
402
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
403
+ } | undefined;
404
+ portHints?: (string | number)[] | undefined;
405
+ width?: string | number | undefined;
406
+ height?: string | number | undefined;
407
+ }>]>;
408
+ };
409
+ doInitialPortMatching(): void;
410
+ doInitialPcbPrimitiveRender(): void;
411
+ }
412
+
413
+ type Ftype = AnySourceComponent["ftype"];
414
+ type TwoPinPorts = "pin1" | "pin2";
415
+ type PassivePorts = TwoPinPorts;
416
+ type PolarizedPassivePorts = PassivePorts | "anode" | "cathode" | "pos" | "neg";
417
+
418
+ declare class Resistor extends NormalComponent<typeof resistorProps, PassivePorts> {
419
+ get config(): {
420
+ schematicSymbolName: BaseSymbolName;
421
+ zodProps: zod.ZodObject<zod.objectUtil.extendShape<zod.objectUtil.extendShape<zod.objectUtil.extendShape<{
422
+ pcbX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
423
+ pcbY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
424
+ pcbRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
425
+ schX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
426
+ schY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
427
+ schRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
428
+ layer: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
429
+ name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
430
+ }, "strip", zod.ZodTypeAny, {
431
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
432
+ }, {
433
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
434
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
435
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
436
+ }>>;
437
+ footprint: zod.ZodOptional<zod.ZodType<Props.Footprint, zod.ZodTypeDef, Props.Footprint>>;
438
+ }, {
439
+ supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
440
+ }>, {
441
+ name: zod.ZodString;
442
+ cadModel: zod.ZodOptional<zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
443
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
444
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
445
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
446
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
447
+ }, "strip", zod.ZodTypeAny, {
448
+ x: string | number;
449
+ y: string | number;
450
+ z: string | number;
451
+ }, {
452
+ x: string | number;
453
+ y: string | number;
454
+ z: string | number;
455
+ }>]>>;
456
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
457
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
458
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
459
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
460
+ }, "strip", zod.ZodTypeAny, {
461
+ x: number;
462
+ y: number;
463
+ z: number;
464
+ }, {
465
+ x: string | number;
466
+ y: string | number;
467
+ z: string | number;
468
+ }>>;
469
+ size: zod.ZodOptional<zod.ZodObject<{
470
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
471
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
472
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
473
+ }, "strip", zod.ZodTypeAny, {
474
+ x: number;
475
+ y: number;
476
+ z: number;
477
+ }, {
478
+ x: string | number;
479
+ y: string | number;
480
+ z: string | number;
481
+ }>>;
482
+ }, {
483
+ stlUrl: zod.ZodString;
484
+ }>, "strip", zod.ZodTypeAny, {
485
+ stlUrl: string;
486
+ rotationOffset?: number | {
487
+ x: string | number;
488
+ y: string | number;
489
+ z: string | number;
490
+ } | undefined;
491
+ positionOffset?: {
492
+ x: number;
493
+ y: number;
494
+ z: number;
495
+ } | undefined;
496
+ size?: {
497
+ x: number;
498
+ y: number;
499
+ z: number;
500
+ } | undefined;
501
+ }, {
502
+ stlUrl: string;
503
+ rotationOffset?: number | {
504
+ x: string | number;
505
+ y: string | number;
506
+ z: string | number;
507
+ } | undefined;
508
+ positionOffset?: {
509
+ x: string | number;
510
+ y: string | number;
511
+ z: string | number;
512
+ } | undefined;
513
+ size?: {
514
+ x: string | number;
515
+ y: string | number;
516
+ z: string | number;
517
+ } | undefined;
518
+ }>, zod.ZodObject<zod.objectUtil.extendShape<{
519
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
520
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
521
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
522
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
523
+ }, "strip", zod.ZodTypeAny, {
524
+ x: string | number;
525
+ y: string | number;
526
+ z: string | number;
527
+ }, {
528
+ x: string | number;
529
+ y: string | number;
530
+ z: string | number;
531
+ }>]>>;
532
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
533
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
534
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
535
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
536
+ }, "strip", zod.ZodTypeAny, {
537
+ x: number;
538
+ y: number;
539
+ z: number;
540
+ }, {
541
+ x: string | number;
542
+ y: string | number;
543
+ z: string | number;
544
+ }>>;
545
+ size: zod.ZodOptional<zod.ZodObject<{
546
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
547
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
548
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
549
+ }, "strip", zod.ZodTypeAny, {
550
+ x: number;
551
+ y: number;
552
+ z: number;
553
+ }, {
554
+ x: string | number;
555
+ y: string | number;
556
+ z: string | number;
557
+ }>>;
558
+ }, {
559
+ objUrl: zod.ZodString;
560
+ mtlUrl: zod.ZodOptional<zod.ZodString>;
561
+ }>, "strip", zod.ZodTypeAny, {
562
+ objUrl: string;
563
+ rotationOffset?: number | {
564
+ x: string | number;
565
+ y: string | number;
566
+ z: string | number;
567
+ } | undefined;
568
+ positionOffset?: {
569
+ x: number;
570
+ y: number;
571
+ z: number;
572
+ } | undefined;
573
+ size?: {
574
+ x: number;
575
+ y: number;
576
+ z: number;
577
+ } | undefined;
578
+ mtlUrl?: string | undefined;
579
+ }, {
580
+ objUrl: string;
581
+ rotationOffset?: number | {
582
+ x: string | number;
583
+ y: string | number;
584
+ z: string | number;
585
+ } | undefined;
586
+ positionOffset?: {
587
+ x: string | number;
588
+ y: string | number;
589
+ z: string | number;
590
+ } | undefined;
591
+ size?: {
592
+ x: string | number;
593
+ y: string | number;
594
+ z: string | number;
595
+ } | undefined;
596
+ mtlUrl?: string | undefined;
597
+ }>, zod.ZodObject<zod.objectUtil.extendShape<{
598
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
599
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
600
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
601
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
602
+ }, "strip", zod.ZodTypeAny, {
603
+ x: string | number;
604
+ y: string | number;
605
+ z: string | number;
606
+ }, {
607
+ x: string | number;
608
+ y: string | number;
609
+ z: string | number;
610
+ }>]>>;
611
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
612
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
613
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
614
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
615
+ }, "strip", zod.ZodTypeAny, {
616
+ x: number;
617
+ y: number;
618
+ z: number;
619
+ }, {
620
+ x: string | number;
621
+ y: string | number;
622
+ z: string | number;
623
+ }>>;
624
+ size: zod.ZodOptional<zod.ZodObject<{
625
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
626
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
627
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
628
+ }, "strip", zod.ZodTypeAny, {
629
+ x: number;
630
+ y: number;
631
+ z: number;
632
+ }, {
633
+ x: string | number;
634
+ y: string | number;
635
+ z: string | number;
636
+ }>>;
637
+ }, {
638
+ jscad: zod.ZodAny;
639
+ }>, "strip", zod.ZodTypeAny, {
640
+ rotationOffset?: number | {
641
+ x: string | number;
642
+ y: string | number;
643
+ z: string | number;
644
+ } | undefined;
645
+ positionOffset?: {
646
+ x: number;
647
+ y: number;
648
+ z: number;
649
+ } | undefined;
650
+ size?: {
651
+ x: number;
652
+ y: number;
653
+ z: number;
654
+ } | undefined;
655
+ jscad?: any;
656
+ }, {
657
+ rotationOffset?: number | {
658
+ x: string | number;
659
+ y: string | number;
660
+ z: string | number;
661
+ } | undefined;
662
+ positionOffset?: {
663
+ x: string | number;
664
+ y: string | number;
665
+ z: string | number;
666
+ } | undefined;
667
+ size?: {
668
+ x: string | number;
669
+ y: string | number;
670
+ z: string | number;
671
+ } | undefined;
672
+ jscad?: any;
673
+ }>]>>;
674
+ children: zod.ZodOptional<zod.ZodAny>;
675
+ }>, {
676
+ resistance: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
677
+ }>, "strip", zod.ZodTypeAny, {
678
+ name: string;
679
+ resistance: number;
680
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
681
+ pcbX?: number | undefined;
682
+ pcbY?: number | undefined;
683
+ pcbRotation?: number | undefined;
684
+ schX?: number | undefined;
685
+ schY?: number | undefined;
686
+ schRotation?: number | undefined;
687
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
688
+ footprint?: Props.Footprint | undefined;
689
+ cadModel?: {
690
+ stlUrl: string;
691
+ rotationOffset?: number | {
692
+ x: string | number;
693
+ y: string | number;
694
+ z: string | number;
695
+ } | undefined;
696
+ positionOffset?: {
697
+ x: number;
698
+ y: number;
699
+ z: number;
700
+ } | undefined;
701
+ size?: {
702
+ x: number;
703
+ y: number;
704
+ z: number;
705
+ } | undefined;
706
+ } | {
707
+ objUrl: string;
708
+ rotationOffset?: number | {
709
+ x: string | number;
710
+ y: string | number;
711
+ z: string | number;
712
+ } | undefined;
713
+ positionOffset?: {
714
+ x: number;
715
+ y: number;
716
+ z: number;
717
+ } | undefined;
718
+ size?: {
719
+ x: number;
720
+ y: number;
721
+ z: number;
722
+ } | undefined;
723
+ mtlUrl?: string | undefined;
724
+ } | {
725
+ rotationOffset?: number | {
726
+ x: string | number;
727
+ y: string | number;
728
+ z: string | number;
729
+ } | undefined;
730
+ positionOffset?: {
731
+ x: number;
732
+ y: number;
733
+ z: number;
734
+ } | undefined;
735
+ size?: {
736
+ x: number;
737
+ y: number;
738
+ z: number;
739
+ } | undefined;
740
+ jscad?: any;
741
+ } | undefined;
742
+ children?: any;
743
+ }, {
744
+ name: string;
745
+ resistance: string | number;
746
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
747
+ pcbX?: string | number | undefined;
748
+ pcbY?: string | number | undefined;
749
+ pcbRotation?: string | number | undefined;
750
+ schX?: string | number | undefined;
751
+ schY?: string | number | undefined;
752
+ schRotation?: string | number | undefined;
753
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
754
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
755
+ } | undefined;
756
+ footprint?: Props.Footprint | undefined;
757
+ cadModel?: {
758
+ stlUrl: string;
759
+ rotationOffset?: number | {
760
+ x: string | number;
761
+ y: string | number;
762
+ z: string | number;
763
+ } | undefined;
764
+ positionOffset?: {
765
+ x: string | number;
766
+ y: string | number;
767
+ z: string | number;
768
+ } | undefined;
769
+ size?: {
770
+ x: string | number;
771
+ y: string | number;
772
+ z: string | number;
773
+ } | undefined;
774
+ } | {
775
+ objUrl: string;
776
+ rotationOffset?: number | {
777
+ x: string | number;
778
+ y: string | number;
779
+ z: string | number;
780
+ } | undefined;
781
+ positionOffset?: {
782
+ x: string | number;
783
+ y: string | number;
784
+ z: string | number;
785
+ } | undefined;
786
+ size?: {
787
+ x: string | number;
788
+ y: string | number;
789
+ z: string | number;
790
+ } | undefined;
791
+ mtlUrl?: string | undefined;
792
+ } | {
793
+ rotationOffset?: number | {
794
+ x: string | number;
795
+ y: string | number;
796
+ z: string | number;
797
+ } | undefined;
798
+ positionOffset?: {
799
+ x: string | number;
800
+ y: string | number;
801
+ z: string | number;
802
+ } | undefined;
803
+ size?: {
804
+ x: string | number;
805
+ y: string | number;
806
+ z: string | number;
807
+ } | undefined;
808
+ jscad?: any;
809
+ } | undefined;
810
+ children?: any;
811
+ }>;
812
+ sourceFtype: Ftype;
813
+ };
814
+ pin1: Port;
815
+ pin2: Port;
816
+ doInitialSourceRender(): void;
817
+ }
818
+
819
+ declare class Led extends NormalComponent<typeof ledProps, PolarizedPassivePorts> {
820
+ get config(): {
821
+ schematicSymbolName: BaseSymbolName;
822
+ zodProps: zod.ZodObject<zod.objectUtil.extendShape<zod.objectUtil.extendShape<zod.objectUtil.extendShape<{
823
+ pcbX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
824
+ pcbY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
825
+ pcbRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
826
+ schX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
827
+ schY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
828
+ schRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
829
+ layer: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
830
+ name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
831
+ }, "strip", zod.ZodTypeAny, {
832
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
833
+ }, {
834
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
835
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
836
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
837
+ }>>;
838
+ footprint: zod.ZodOptional<zod.ZodType<Props.Footprint, zod.ZodTypeDef, Props.Footprint>>;
839
+ }, {
840
+ supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
841
+ }>, {
842
+ name: zod.ZodString;
843
+ cadModel: zod.ZodOptional<zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
844
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
845
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
846
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
847
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
848
+ }, "strip", zod.ZodTypeAny, {
849
+ x: string | number;
850
+ y: string | number;
851
+ z: string | number;
852
+ }, {
853
+ x: string | number;
854
+ y: string | number;
855
+ z: string | number;
856
+ }>]>>;
857
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
858
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
859
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
860
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
861
+ }, "strip", zod.ZodTypeAny, {
862
+ x: number;
863
+ y: number;
864
+ z: number;
865
+ }, {
866
+ x: string | number;
867
+ y: string | number;
868
+ z: string | number;
869
+ }>>;
870
+ size: zod.ZodOptional<zod.ZodObject<{
871
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
872
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
873
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
874
+ }, "strip", zod.ZodTypeAny, {
875
+ x: number;
876
+ y: number;
877
+ z: number;
878
+ }, {
879
+ x: string | number;
880
+ y: string | number;
881
+ z: string | number;
882
+ }>>;
883
+ }, {
884
+ stlUrl: zod.ZodString;
885
+ }>, "strip", zod.ZodTypeAny, {
886
+ stlUrl: string;
887
+ rotationOffset?: number | {
888
+ x: string | number;
889
+ y: string | number;
890
+ z: string | number;
891
+ } | undefined;
892
+ positionOffset?: {
893
+ x: number;
894
+ y: number;
895
+ z: number;
896
+ } | undefined;
897
+ size?: {
898
+ x: number;
899
+ y: number;
900
+ z: number;
901
+ } | undefined;
902
+ }, {
903
+ stlUrl: string;
904
+ rotationOffset?: number | {
905
+ x: string | number;
906
+ y: string | number;
907
+ z: string | number;
908
+ } | undefined;
909
+ positionOffset?: {
910
+ x: string | number;
911
+ y: string | number;
912
+ z: string | number;
913
+ } | undefined;
914
+ size?: {
915
+ x: string | number;
916
+ y: string | number;
917
+ z: string | number;
918
+ } | undefined;
919
+ }>, zod.ZodObject<zod.objectUtil.extendShape<{
920
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
921
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
922
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
923
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
924
+ }, "strip", zod.ZodTypeAny, {
925
+ x: string | number;
926
+ y: string | number;
927
+ z: string | number;
928
+ }, {
929
+ x: string | number;
930
+ y: string | number;
931
+ z: string | number;
932
+ }>]>>;
933
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
934
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
935
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
936
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
937
+ }, "strip", zod.ZodTypeAny, {
938
+ x: number;
939
+ y: number;
940
+ z: number;
941
+ }, {
942
+ x: string | number;
943
+ y: string | number;
944
+ z: string | number;
945
+ }>>;
946
+ size: zod.ZodOptional<zod.ZodObject<{
947
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
948
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
949
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
950
+ }, "strip", zod.ZodTypeAny, {
951
+ x: number;
952
+ y: number;
953
+ z: number;
954
+ }, {
955
+ x: string | number;
956
+ y: string | number;
957
+ z: string | number;
958
+ }>>;
959
+ }, {
960
+ objUrl: zod.ZodString;
961
+ mtlUrl: zod.ZodOptional<zod.ZodString>;
962
+ }>, "strip", zod.ZodTypeAny, {
963
+ objUrl: string;
964
+ rotationOffset?: number | {
965
+ x: string | number;
966
+ y: string | number;
967
+ z: string | number;
968
+ } | undefined;
969
+ positionOffset?: {
970
+ x: number;
971
+ y: number;
972
+ z: number;
973
+ } | undefined;
974
+ size?: {
975
+ x: number;
976
+ y: number;
977
+ z: number;
978
+ } | undefined;
979
+ mtlUrl?: string | undefined;
980
+ }, {
981
+ objUrl: string;
982
+ rotationOffset?: number | {
983
+ x: string | number;
984
+ y: string | number;
985
+ z: string | number;
986
+ } | undefined;
987
+ positionOffset?: {
988
+ x: string | number;
989
+ y: string | number;
990
+ z: string | number;
991
+ } | undefined;
992
+ size?: {
993
+ x: string | number;
994
+ y: string | number;
995
+ z: string | number;
996
+ } | undefined;
997
+ mtlUrl?: string | undefined;
998
+ }>, zod.ZodObject<zod.objectUtil.extendShape<{
999
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
1000
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1001
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1002
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1003
+ }, "strip", zod.ZodTypeAny, {
1004
+ x: string | number;
1005
+ y: string | number;
1006
+ z: string | number;
1007
+ }, {
1008
+ x: string | number;
1009
+ y: string | number;
1010
+ z: string | number;
1011
+ }>]>>;
1012
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
1013
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1014
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1015
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1016
+ }, "strip", zod.ZodTypeAny, {
1017
+ x: number;
1018
+ y: number;
1019
+ z: number;
1020
+ }, {
1021
+ x: string | number;
1022
+ y: string | number;
1023
+ z: string | number;
1024
+ }>>;
1025
+ size: zod.ZodOptional<zod.ZodObject<{
1026
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1027
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1028
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1029
+ }, "strip", zod.ZodTypeAny, {
1030
+ x: number;
1031
+ y: number;
1032
+ z: number;
1033
+ }, {
1034
+ x: string | number;
1035
+ y: string | number;
1036
+ z: string | number;
1037
+ }>>;
1038
+ }, {
1039
+ jscad: zod.ZodAny;
1040
+ }>, "strip", zod.ZodTypeAny, {
1041
+ rotationOffset?: number | {
1042
+ x: string | number;
1043
+ y: string | number;
1044
+ z: string | number;
1045
+ } | undefined;
1046
+ positionOffset?: {
1047
+ x: number;
1048
+ y: number;
1049
+ z: number;
1050
+ } | undefined;
1051
+ size?: {
1052
+ x: number;
1053
+ y: number;
1054
+ z: number;
1055
+ } | undefined;
1056
+ jscad?: any;
1057
+ }, {
1058
+ rotationOffset?: number | {
1059
+ x: string | number;
1060
+ y: string | number;
1061
+ z: string | number;
1062
+ } | undefined;
1063
+ positionOffset?: {
1064
+ x: string | number;
1065
+ y: string | number;
1066
+ z: string | number;
1067
+ } | undefined;
1068
+ size?: {
1069
+ x: string | number;
1070
+ y: string | number;
1071
+ z: string | number;
1072
+ } | undefined;
1073
+ jscad?: any;
1074
+ }>]>>;
1075
+ children: zod.ZodOptional<zod.ZodAny>;
1076
+ }>, {
1077
+ color: zod.ZodOptional<zod.ZodString>;
1078
+ }>, "strip", zod.ZodTypeAny, {
1079
+ name: string;
1080
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
1081
+ pcbX?: number | undefined;
1082
+ pcbY?: number | undefined;
1083
+ pcbRotation?: number | undefined;
1084
+ schX?: number | undefined;
1085
+ schY?: number | undefined;
1086
+ schRotation?: number | undefined;
1087
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
1088
+ footprint?: Props.Footprint | undefined;
1089
+ cadModel?: {
1090
+ stlUrl: string;
1091
+ rotationOffset?: number | {
1092
+ x: string | number;
1093
+ y: string | number;
1094
+ z: string | number;
1095
+ } | undefined;
1096
+ positionOffset?: {
1097
+ x: number;
1098
+ y: number;
1099
+ z: number;
1100
+ } | undefined;
1101
+ size?: {
1102
+ x: number;
1103
+ y: number;
1104
+ z: number;
1105
+ } | undefined;
1106
+ } | {
1107
+ objUrl: string;
1108
+ rotationOffset?: number | {
1109
+ x: string | number;
1110
+ y: string | number;
1111
+ z: string | number;
1112
+ } | undefined;
1113
+ positionOffset?: {
1114
+ x: number;
1115
+ y: number;
1116
+ z: number;
1117
+ } | undefined;
1118
+ size?: {
1119
+ x: number;
1120
+ y: number;
1121
+ z: number;
1122
+ } | undefined;
1123
+ mtlUrl?: string | undefined;
1124
+ } | {
1125
+ rotationOffset?: number | {
1126
+ x: string | number;
1127
+ y: string | number;
1128
+ z: string | number;
1129
+ } | undefined;
1130
+ positionOffset?: {
1131
+ x: number;
1132
+ y: number;
1133
+ z: number;
1134
+ } | undefined;
1135
+ size?: {
1136
+ x: number;
1137
+ y: number;
1138
+ z: number;
1139
+ } | undefined;
1140
+ jscad?: any;
1141
+ } | undefined;
1142
+ children?: any;
1143
+ color?: string | undefined;
1144
+ }, {
1145
+ name: string;
1146
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
1147
+ pcbX?: string | number | undefined;
1148
+ pcbY?: string | number | undefined;
1149
+ pcbRotation?: string | number | undefined;
1150
+ schX?: string | number | undefined;
1151
+ schY?: string | number | undefined;
1152
+ schRotation?: string | number | undefined;
1153
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1154
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1155
+ } | undefined;
1156
+ footprint?: Props.Footprint | undefined;
1157
+ cadModel?: {
1158
+ stlUrl: string;
1159
+ rotationOffset?: number | {
1160
+ x: string | number;
1161
+ y: string | number;
1162
+ z: string | number;
1163
+ } | undefined;
1164
+ positionOffset?: {
1165
+ x: string | number;
1166
+ y: string | number;
1167
+ z: string | number;
1168
+ } | undefined;
1169
+ size?: {
1170
+ x: string | number;
1171
+ y: string | number;
1172
+ z: string | number;
1173
+ } | undefined;
1174
+ } | {
1175
+ objUrl: string;
1176
+ rotationOffset?: number | {
1177
+ x: string | number;
1178
+ y: string | number;
1179
+ z: string | number;
1180
+ } | undefined;
1181
+ positionOffset?: {
1182
+ x: string | number;
1183
+ y: string | number;
1184
+ z: string | number;
1185
+ } | undefined;
1186
+ size?: {
1187
+ x: string | number;
1188
+ y: string | number;
1189
+ z: string | number;
1190
+ } | undefined;
1191
+ mtlUrl?: string | undefined;
1192
+ } | {
1193
+ rotationOffset?: number | {
1194
+ x: string | number;
1195
+ y: string | number;
1196
+ z: string | number;
1197
+ } | undefined;
1198
+ positionOffset?: {
1199
+ x: string | number;
1200
+ y: string | number;
1201
+ z: string | number;
1202
+ } | undefined;
1203
+ size?: {
1204
+ x: string | number;
1205
+ y: string | number;
1206
+ z: string | number;
1207
+ } | undefined;
1208
+ jscad?: any;
1209
+ } | undefined;
1210
+ children?: any;
1211
+ color?: string | undefined;
1212
+ }>;
1213
+ sourceFtype: Ftype;
1214
+ };
1215
+ pos: Port;
1216
+ pin1: Port;
1217
+ anode: Port;
1218
+ neg: Port;
1219
+ pin2: Port;
1220
+ cathode: Port;
1221
+ }
1222
+
1223
+ type PortNames = "1" | "2" | "pin1" | "pin2" | "left" | "right" | "anode" | "cathode";
1224
+ declare class Capacitor extends NormalComponent<typeof ledProps, PortNames> {
1225
+ get config(): {
1226
+ zodProps: zod.ZodObject<zod.objectUtil.extendShape<zod.objectUtil.extendShape<zod.objectUtil.extendShape<{
1227
+ pcbX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1228
+ pcbY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1229
+ pcbRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1230
+ schX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1231
+ schY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1232
+ schRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1233
+ layer: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
1234
+ name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
1235
+ }, "strip", zod.ZodTypeAny, {
1236
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1237
+ }, {
1238
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1239
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1240
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1241
+ }>>;
1242
+ footprint: zod.ZodOptional<zod.ZodType<Props.Footprint, zod.ZodTypeDef, Props.Footprint>>;
1243
+ }, {
1244
+ supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
1245
+ }>, {
1246
+ name: zod.ZodString;
1247
+ cadModel: zod.ZodOptional<zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
1248
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
1249
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1250
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1251
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1252
+ }, "strip", zod.ZodTypeAny, {
1253
+ x: string | number;
1254
+ y: string | number;
1255
+ z: string | number;
1256
+ }, {
1257
+ x: string | number;
1258
+ y: string | number;
1259
+ z: string | number;
1260
+ }>]>>;
1261
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
1262
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1263
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1264
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1265
+ }, "strip", zod.ZodTypeAny, {
1266
+ x: number;
1267
+ y: number;
1268
+ z: number;
1269
+ }, {
1270
+ x: string | number;
1271
+ y: string | number;
1272
+ z: string | number;
1273
+ }>>;
1274
+ size: zod.ZodOptional<zod.ZodObject<{
1275
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1276
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1277
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1278
+ }, "strip", zod.ZodTypeAny, {
1279
+ x: number;
1280
+ y: number;
1281
+ z: number;
1282
+ }, {
1283
+ x: string | number;
1284
+ y: string | number;
1285
+ z: string | number;
1286
+ }>>;
1287
+ }, {
1288
+ stlUrl: zod.ZodString;
1289
+ }>, "strip", zod.ZodTypeAny, {
1290
+ stlUrl: string;
1291
+ rotationOffset?: number | {
1292
+ x: string | number;
1293
+ y: string | number;
1294
+ z: string | number;
1295
+ } | undefined;
1296
+ positionOffset?: {
1297
+ x: number;
1298
+ y: number;
1299
+ z: number;
1300
+ } | undefined;
1301
+ size?: {
1302
+ x: number;
1303
+ y: number;
1304
+ z: number;
1305
+ } | undefined;
1306
+ }, {
1307
+ stlUrl: string;
1308
+ rotationOffset?: number | {
1309
+ x: string | number;
1310
+ y: string | number;
1311
+ z: string | number;
1312
+ } | undefined;
1313
+ positionOffset?: {
1314
+ x: string | number;
1315
+ y: string | number;
1316
+ z: string | number;
1317
+ } | undefined;
1318
+ size?: {
1319
+ x: string | number;
1320
+ y: string | number;
1321
+ z: string | number;
1322
+ } | undefined;
1323
+ }>, zod.ZodObject<zod.objectUtil.extendShape<{
1324
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
1325
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1326
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1327
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1328
+ }, "strip", zod.ZodTypeAny, {
1329
+ x: string | number;
1330
+ y: string | number;
1331
+ z: string | number;
1332
+ }, {
1333
+ x: string | number;
1334
+ y: string | number;
1335
+ z: string | number;
1336
+ }>]>>;
1337
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
1338
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1339
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1340
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1341
+ }, "strip", zod.ZodTypeAny, {
1342
+ x: number;
1343
+ y: number;
1344
+ z: number;
1345
+ }, {
1346
+ x: string | number;
1347
+ y: string | number;
1348
+ z: string | number;
1349
+ }>>;
1350
+ size: zod.ZodOptional<zod.ZodObject<{
1351
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1352
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1353
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1354
+ }, "strip", zod.ZodTypeAny, {
1355
+ x: number;
1356
+ y: number;
1357
+ z: number;
1358
+ }, {
1359
+ x: string | number;
1360
+ y: string | number;
1361
+ z: string | number;
1362
+ }>>;
1363
+ }, {
1364
+ objUrl: zod.ZodString;
1365
+ mtlUrl: zod.ZodOptional<zod.ZodString>;
1366
+ }>, "strip", zod.ZodTypeAny, {
1367
+ objUrl: string;
1368
+ rotationOffset?: number | {
1369
+ x: string | number;
1370
+ y: string | number;
1371
+ z: string | number;
1372
+ } | undefined;
1373
+ positionOffset?: {
1374
+ x: number;
1375
+ y: number;
1376
+ z: number;
1377
+ } | undefined;
1378
+ size?: {
1379
+ x: number;
1380
+ y: number;
1381
+ z: number;
1382
+ } | undefined;
1383
+ mtlUrl?: string | undefined;
1384
+ }, {
1385
+ objUrl: string;
1386
+ rotationOffset?: number | {
1387
+ x: string | number;
1388
+ y: string | number;
1389
+ z: string | number;
1390
+ } | undefined;
1391
+ positionOffset?: {
1392
+ x: string | number;
1393
+ y: string | number;
1394
+ z: string | number;
1395
+ } | undefined;
1396
+ size?: {
1397
+ x: string | number;
1398
+ y: string | number;
1399
+ z: string | number;
1400
+ } | undefined;
1401
+ mtlUrl?: string | undefined;
1402
+ }>, zod.ZodObject<zod.objectUtil.extendShape<{
1403
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
1404
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1405
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1406
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1407
+ }, "strip", zod.ZodTypeAny, {
1408
+ x: string | number;
1409
+ y: string | number;
1410
+ z: string | number;
1411
+ }, {
1412
+ x: string | number;
1413
+ y: string | number;
1414
+ z: string | number;
1415
+ }>]>>;
1416
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
1417
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1418
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1419
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1420
+ }, "strip", zod.ZodTypeAny, {
1421
+ x: number;
1422
+ y: number;
1423
+ z: number;
1424
+ }, {
1425
+ x: string | number;
1426
+ y: string | number;
1427
+ z: string | number;
1428
+ }>>;
1429
+ size: zod.ZodOptional<zod.ZodObject<{
1430
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1431
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1432
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1433
+ }, "strip", zod.ZodTypeAny, {
1434
+ x: number;
1435
+ y: number;
1436
+ z: number;
1437
+ }, {
1438
+ x: string | number;
1439
+ y: string | number;
1440
+ z: string | number;
1441
+ }>>;
1442
+ }, {
1443
+ jscad: zod.ZodAny;
1444
+ }>, "strip", zod.ZodTypeAny, {
1445
+ rotationOffset?: number | {
1446
+ x: string | number;
1447
+ y: string | number;
1448
+ z: string | number;
1449
+ } | undefined;
1450
+ positionOffset?: {
1451
+ x: number;
1452
+ y: number;
1453
+ z: number;
1454
+ } | undefined;
1455
+ size?: {
1456
+ x: number;
1457
+ y: number;
1458
+ z: number;
1459
+ } | undefined;
1460
+ jscad?: any;
1461
+ }, {
1462
+ rotationOffset?: number | {
1463
+ x: string | number;
1464
+ y: string | number;
1465
+ z: string | number;
1466
+ } | undefined;
1467
+ positionOffset?: {
1468
+ x: string | number;
1469
+ y: string | number;
1470
+ z: string | number;
1471
+ } | undefined;
1472
+ size?: {
1473
+ x: string | number;
1474
+ y: string | number;
1475
+ z: string | number;
1476
+ } | undefined;
1477
+ jscad?: any;
1478
+ }>]>>;
1479
+ children: zod.ZodOptional<zod.ZodAny>;
1480
+ }>, {
1481
+ color: zod.ZodOptional<zod.ZodString>;
1482
+ }>, "strip", zod.ZodTypeAny, {
1483
+ name: string;
1484
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
1485
+ pcbX?: number | undefined;
1486
+ pcbY?: number | undefined;
1487
+ pcbRotation?: number | undefined;
1488
+ schX?: number | undefined;
1489
+ schY?: number | undefined;
1490
+ schRotation?: number | undefined;
1491
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
1492
+ footprint?: Props.Footprint | undefined;
1493
+ cadModel?: {
1494
+ stlUrl: string;
1495
+ rotationOffset?: number | {
1496
+ x: string | number;
1497
+ y: string | number;
1498
+ z: string | number;
1499
+ } | undefined;
1500
+ positionOffset?: {
1501
+ x: number;
1502
+ y: number;
1503
+ z: number;
1504
+ } | undefined;
1505
+ size?: {
1506
+ x: number;
1507
+ y: number;
1508
+ z: number;
1509
+ } | undefined;
1510
+ } | {
1511
+ objUrl: string;
1512
+ rotationOffset?: number | {
1513
+ x: string | number;
1514
+ y: string | number;
1515
+ z: string | number;
1516
+ } | undefined;
1517
+ positionOffset?: {
1518
+ x: number;
1519
+ y: number;
1520
+ z: number;
1521
+ } | undefined;
1522
+ size?: {
1523
+ x: number;
1524
+ y: number;
1525
+ z: number;
1526
+ } | undefined;
1527
+ mtlUrl?: string | undefined;
1528
+ } | {
1529
+ rotationOffset?: number | {
1530
+ x: string | number;
1531
+ y: string | number;
1532
+ z: string | number;
1533
+ } | undefined;
1534
+ positionOffset?: {
1535
+ x: number;
1536
+ y: number;
1537
+ z: number;
1538
+ } | undefined;
1539
+ size?: {
1540
+ x: number;
1541
+ y: number;
1542
+ z: number;
1543
+ } | undefined;
1544
+ jscad?: any;
1545
+ } | undefined;
1546
+ children?: any;
1547
+ color?: string | undefined;
1548
+ }, {
1549
+ name: string;
1550
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
1551
+ pcbX?: string | number | undefined;
1552
+ pcbY?: string | number | undefined;
1553
+ pcbRotation?: string | number | undefined;
1554
+ schX?: string | number | undefined;
1555
+ schY?: string | number | undefined;
1556
+ schRotation?: string | number | undefined;
1557
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1558
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1559
+ } | undefined;
1560
+ footprint?: Props.Footprint | undefined;
1561
+ cadModel?: {
1562
+ stlUrl: string;
1563
+ rotationOffset?: number | {
1564
+ x: string | number;
1565
+ y: string | number;
1566
+ z: string | number;
1567
+ } | undefined;
1568
+ positionOffset?: {
1569
+ x: string | number;
1570
+ y: string | number;
1571
+ z: string | number;
1572
+ } | undefined;
1573
+ size?: {
1574
+ x: string | number;
1575
+ y: string | number;
1576
+ z: string | number;
1577
+ } | undefined;
1578
+ } | {
1579
+ objUrl: string;
1580
+ rotationOffset?: number | {
1581
+ x: string | number;
1582
+ y: string | number;
1583
+ z: string | number;
1584
+ } | undefined;
1585
+ positionOffset?: {
1586
+ x: string | number;
1587
+ y: string | number;
1588
+ z: string | number;
1589
+ } | undefined;
1590
+ size?: {
1591
+ x: string | number;
1592
+ y: string | number;
1593
+ z: string | number;
1594
+ } | undefined;
1595
+ mtlUrl?: string | undefined;
1596
+ } | {
1597
+ rotationOffset?: number | {
1598
+ x: string | number;
1599
+ y: string | number;
1600
+ z: string | number;
1601
+ } | undefined;
1602
+ positionOffset?: {
1603
+ x: string | number;
1604
+ y: string | number;
1605
+ z: string | number;
1606
+ } | undefined;
1607
+ size?: {
1608
+ x: string | number;
1609
+ y: string | number;
1610
+ z: string | number;
1611
+ } | undefined;
1612
+ jscad?: any;
1613
+ } | undefined;
1614
+ children?: any;
1615
+ color?: string | undefined;
1616
+ }>;
1617
+ sourceFtype: "simple_capacitor";
1618
+ };
1619
+ }
1620
+
1621
+ declare const netProps: z.ZodObject<{
1622
+ name: z.ZodString;
1623
+ }, "strip", z.ZodTypeAny, {
1624
+ name: string;
1625
+ }, {
1626
+ name: string;
1627
+ }>;
1628
+ declare class Net extends PrimitiveComponent<typeof netProps> {
1629
+ getPortSelector(): string;
1630
+ }
1631
+
1632
+ declare class Trace extends PrimitiveComponent<typeof traceProps> {
1633
+ source_trace_id: string | null;
1634
+ pcb_trace_id: string | null;
1635
+ schematic_trace_id: string | null;
1636
+ get config(): {
1637
+ zodProps: zod.ZodUnion<[zod.ZodObject<{
1638
+ path: zod.ZodArray<zod.ZodUnion<[zod.ZodString, zod.ZodType<{
1639
+ getPortSelector: () => string;
1640
+ }, zod.ZodTypeDef, {
1641
+ getPortSelector: () => string;
1642
+ }>]>, "many">;
1643
+ thickness: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1644
+ schematicRouteHints: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
1645
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1646
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1647
+ }, "strip", zod.ZodTypeAny, {
1648
+ x: number;
1649
+ y: number;
1650
+ }, {
1651
+ x: string | number;
1652
+ y: string | number;
1653
+ }>, "many">>;
1654
+ pcbRouteHints: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
1655
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1656
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1657
+ via: zod.ZodOptional<zod.ZodBoolean>;
1658
+ to_layer: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
1659
+ name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
1660
+ }, "strip", zod.ZodTypeAny, {
1661
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1662
+ }, {
1663
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1664
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1665
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1666
+ }>>;
1667
+ trace_width: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1668
+ }, "strip", zod.ZodTypeAny, {
1669
+ x: number;
1670
+ y: number;
1671
+ trace_width?: number | undefined;
1672
+ via?: boolean | undefined;
1673
+ to_layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
1674
+ }, {
1675
+ x: string | number;
1676
+ y: string | number;
1677
+ trace_width?: string | number | undefined;
1678
+ via?: boolean | undefined;
1679
+ to_layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1680
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1681
+ } | undefined;
1682
+ }>, "many">>;
1683
+ }, "strip", zod.ZodTypeAny, {
1684
+ path: (string | {
1685
+ getPortSelector: () => string;
1686
+ })[];
1687
+ thickness?: number | undefined;
1688
+ schematicRouteHints?: {
1689
+ x: number;
1690
+ y: number;
1691
+ }[] | undefined;
1692
+ pcbRouteHints?: {
1693
+ x: number;
1694
+ y: number;
1695
+ trace_width?: number | undefined;
1696
+ via?: boolean | undefined;
1697
+ to_layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
1698
+ }[] | undefined;
1699
+ }, {
1700
+ path: (string | {
1701
+ getPortSelector: () => string;
1702
+ })[];
1703
+ thickness?: string | number | undefined;
1704
+ schematicRouteHints?: {
1705
+ x: string | number;
1706
+ y: string | number;
1707
+ }[] | undefined;
1708
+ pcbRouteHints?: {
1709
+ x: string | number;
1710
+ y: string | number;
1711
+ trace_width?: string | number | undefined;
1712
+ via?: boolean | undefined;
1713
+ to_layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1714
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1715
+ } | undefined;
1716
+ }[] | undefined;
1717
+ }>, zod.ZodObject<{
1718
+ from: zod.ZodUnion<[zod.ZodString, zod.ZodType<{
1719
+ getPortSelector: () => string;
1720
+ }, zod.ZodTypeDef, {
1721
+ getPortSelector: () => string;
1722
+ }>]>;
1723
+ to: zod.ZodUnion<[zod.ZodString, zod.ZodType<{
1724
+ getPortSelector: () => string;
1725
+ }, zod.ZodTypeDef, {
1726
+ getPortSelector: () => string;
1727
+ }>]>;
1728
+ thickness: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1729
+ schematicRouteHints: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
1730
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1731
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1732
+ }, "strip", zod.ZodTypeAny, {
1733
+ x: number;
1734
+ y: number;
1735
+ }, {
1736
+ x: string | number;
1737
+ y: string | number;
1738
+ }>, "many">>;
1739
+ pcbRouteHints: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
1740
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1741
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1742
+ via: zod.ZodOptional<zod.ZodBoolean>;
1743
+ to_layer: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
1744
+ name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
1745
+ }, "strip", zod.ZodTypeAny, {
1746
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1747
+ }, {
1748
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1749
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1750
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1751
+ }>>;
1752
+ trace_width: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1753
+ }, "strip", zod.ZodTypeAny, {
1754
+ x: number;
1755
+ y: number;
1756
+ trace_width?: number | undefined;
1757
+ via?: boolean | undefined;
1758
+ to_layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
1759
+ }, {
1760
+ x: string | number;
1761
+ y: string | number;
1762
+ trace_width?: string | number | undefined;
1763
+ via?: boolean | undefined;
1764
+ to_layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1765
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1766
+ } | undefined;
1767
+ }>, "many">>;
1768
+ }, "strip", zod.ZodTypeAny, {
1769
+ from: string | {
1770
+ getPortSelector: () => string;
1771
+ };
1772
+ to: string | {
1773
+ getPortSelector: () => string;
1774
+ };
1775
+ thickness?: number | undefined;
1776
+ schematicRouteHints?: {
1777
+ x: number;
1778
+ y: number;
1779
+ }[] | undefined;
1780
+ pcbRouteHints?: {
1781
+ x: number;
1782
+ y: number;
1783
+ trace_width?: number | undefined;
1784
+ via?: boolean | undefined;
1785
+ to_layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
1786
+ }[] | undefined;
1787
+ }, {
1788
+ from: string | {
1789
+ getPortSelector: () => string;
1790
+ };
1791
+ to: string | {
1792
+ getPortSelector: () => string;
1793
+ };
1794
+ thickness?: string | number | undefined;
1795
+ schematicRouteHints?: {
1796
+ x: string | number;
1797
+ y: string | number;
1798
+ }[] | undefined;
1799
+ pcbRouteHints?: {
1800
+ x: string | number;
1801
+ y: string | number;
1802
+ trace_width?: string | number | undefined;
1803
+ via?: boolean | undefined;
1804
+ to_layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1805
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1806
+ } | undefined;
1807
+ }[] | undefined;
1808
+ }>]>;
1809
+ };
1810
+ getTracePortPathSelectors(): string[];
1811
+ _findConnectedPorts(): {
1812
+ allPortsFound: true;
1813
+ ports: Array<{
1814
+ selector: string;
1815
+ port: Port;
1816
+ }>;
1817
+ } | {
1818
+ allPortsFound: false;
1819
+ ports?: undefined;
1820
+ };
1821
+ doInitialSourceTraceRender(): void;
1822
+ doInitialPcbTraceRender(): void;
1823
+ doInitialSchematicTraceRender(): void;
1824
+ }
1825
+
1826
+ declare class TraceHint extends PrimitiveComponent<typeof traceHintProps> {
1827
+ matchedPort: Port | null;
1828
+ doInitialPortMatching(): void;
1829
+ getPcbRouteHints(): Array<RouteHintPoint>;
1830
+ }
1831
+
1832
+ declare class Group extends PrimitiveComponent<typeof groupProps> {
1833
+ get config(): {
1834
+ zodProps: zod.ZodObject<zod.objectUtil.extendShape<{
1835
+ pcbX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1836
+ pcbY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1837
+ pcbRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1838
+ schX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1839
+ schY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1840
+ schRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1841
+ layer: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
1842
+ name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
1843
+ }, "strip", zod.ZodTypeAny, {
1844
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1845
+ }, {
1846
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1847
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1848
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1849
+ }>>;
1850
+ footprint: zod.ZodOptional<zod.ZodType<Props.Footprint, zod.ZodTypeDef, Props.Footprint>>;
1851
+ }, {
1852
+ name: zod.ZodOptional<zod.ZodString>;
1853
+ layout: zod.ZodOptional<zod.ZodType<_tscircuit_layout.LayoutBuilder, zod.ZodTypeDef, _tscircuit_layout.LayoutBuilder>>;
1854
+ children: zod.ZodOptional<zod.ZodAny>;
1855
+ routingDisabled: zod.ZodOptional<zod.ZodBoolean>;
1856
+ }>, "strip", zod.ZodTypeAny, {
1857
+ pcbX?: number | undefined;
1858
+ pcbY?: number | undefined;
1859
+ pcbRotation?: number | undefined;
1860
+ schX?: number | undefined;
1861
+ schY?: number | undefined;
1862
+ schRotation?: number | undefined;
1863
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
1864
+ footprint?: Props.Footprint | undefined;
1865
+ name?: string | undefined;
1866
+ children?: any;
1867
+ layout?: _tscircuit_layout.LayoutBuilder | undefined;
1868
+ routingDisabled?: boolean | undefined;
1869
+ }, {
1870
+ pcbX?: string | number | undefined;
1871
+ pcbY?: string | number | undefined;
1872
+ pcbRotation?: string | number | undefined;
1873
+ schX?: string | number | undefined;
1874
+ schY?: string | number | undefined;
1875
+ schRotation?: string | number | undefined;
1876
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1877
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1878
+ } | undefined;
1879
+ footprint?: Props.Footprint | undefined;
1880
+ name?: string | undefined;
1881
+ children?: any;
1882
+ layout?: _tscircuit_layout.LayoutBuilder | undefined;
1883
+ routingDisabled?: boolean | undefined;
1884
+ }>;
1885
+ };
1886
+ }
1887
+
1888
+ interface SchematicBoxDimensions {
1889
+ pinCount: number;
1890
+ getPortPositionByPinNumber(pinNumber: number): {
1891
+ x: number;
1892
+ y: number;
1893
+ };
1894
+ getSize(): {
1895
+ width: number;
1896
+ height: number;
1897
+ };
1898
+ }
1899
+
1900
+ declare class Chip<PinLabels extends string = never> extends NormalComponent<typeof chipProps, PinLabels> {
1901
+ schematicDimensions: SchematicBoxDimensions | null;
1902
+ get config(): {
1903
+ zodProps: zod.ZodObject<zod.objectUtil.extendShape<zod.objectUtil.extendShape<zod.objectUtil.extendShape<{
1904
+ pcbX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1905
+ pcbY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1906
+ pcbRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1907
+ schX: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1908
+ schY: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1909
+ schRotation: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
1910
+ layer: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, zod.ZodObject<{
1911
+ name: zod.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
1912
+ }, "strip", zod.ZodTypeAny, {
1913
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1914
+ }, {
1915
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1916
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
1917
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
1918
+ }>>;
1919
+ footprint: zod.ZodOptional<zod.ZodType<Props.Footprint, zod.ZodTypeDef, Props.Footprint>>;
1920
+ }, {
1921
+ supplierPartNumbers: zod.ZodOptional<zod.ZodRecord<zod.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, zod.ZodArray<zod.ZodString, "many">>>;
1922
+ }>, {
1923
+ name: zod.ZodString;
1924
+ cadModel: zod.ZodOptional<zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
1925
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
1926
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1927
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1928
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
1929
+ }, "strip", zod.ZodTypeAny, {
1930
+ x: string | number;
1931
+ y: string | number;
1932
+ z: string | number;
1933
+ }, {
1934
+ x: string | number;
1935
+ y: string | number;
1936
+ z: string | number;
1937
+ }>]>>;
1938
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
1939
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1940
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1941
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1942
+ }, "strip", zod.ZodTypeAny, {
1943
+ x: number;
1944
+ y: number;
1945
+ z: number;
1946
+ }, {
1947
+ x: string | number;
1948
+ y: string | number;
1949
+ z: string | number;
1950
+ }>>;
1951
+ size: zod.ZodOptional<zod.ZodObject<{
1952
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1953
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1954
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
1955
+ }, "strip", zod.ZodTypeAny, {
1956
+ x: number;
1957
+ y: number;
1958
+ z: number;
1959
+ }, {
1960
+ x: string | number;
1961
+ y: string | number;
1962
+ z: string | number;
1963
+ }>>;
1964
+ }, {
1965
+ stlUrl: zod.ZodString;
1966
+ }>, "strip", zod.ZodTypeAny, {
1967
+ stlUrl: string;
1968
+ rotationOffset?: number | {
1969
+ x: string | number;
1970
+ y: string | number;
1971
+ z: string | number;
1972
+ } | undefined;
1973
+ positionOffset?: {
1974
+ x: number;
1975
+ y: number;
1976
+ z: number;
1977
+ } | undefined;
1978
+ size?: {
1979
+ x: number;
1980
+ y: number;
1981
+ z: number;
1982
+ } | undefined;
1983
+ }, {
1984
+ stlUrl: string;
1985
+ rotationOffset?: number | {
1986
+ x: string | number;
1987
+ y: string | number;
1988
+ z: string | number;
1989
+ } | undefined;
1990
+ positionOffset?: {
1991
+ x: string | number;
1992
+ y: string | number;
1993
+ z: string | number;
1994
+ } | undefined;
1995
+ size?: {
1996
+ x: string | number;
1997
+ y: string | number;
1998
+ z: string | number;
1999
+ } | undefined;
2000
+ }>, zod.ZodObject<zod.objectUtil.extendShape<{
2001
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
2002
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
2003
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
2004
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
2005
+ }, "strip", zod.ZodTypeAny, {
2006
+ x: string | number;
2007
+ y: string | number;
2008
+ z: string | number;
2009
+ }, {
2010
+ x: string | number;
2011
+ y: string | number;
2012
+ z: string | number;
2013
+ }>]>>;
2014
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
2015
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2016
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2017
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2018
+ }, "strip", zod.ZodTypeAny, {
2019
+ x: number;
2020
+ y: number;
2021
+ z: number;
2022
+ }, {
2023
+ x: string | number;
2024
+ y: string | number;
2025
+ z: string | number;
2026
+ }>>;
2027
+ size: zod.ZodOptional<zod.ZodObject<{
2028
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2029
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2030
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2031
+ }, "strip", zod.ZodTypeAny, {
2032
+ x: number;
2033
+ y: number;
2034
+ z: number;
2035
+ }, {
2036
+ x: string | number;
2037
+ y: string | number;
2038
+ z: string | number;
2039
+ }>>;
2040
+ }, {
2041
+ objUrl: zod.ZodString;
2042
+ mtlUrl: zod.ZodOptional<zod.ZodString>;
2043
+ }>, "strip", zod.ZodTypeAny, {
2044
+ objUrl: string;
2045
+ rotationOffset?: number | {
2046
+ x: string | number;
2047
+ y: string | number;
2048
+ z: string | number;
2049
+ } | undefined;
2050
+ positionOffset?: {
2051
+ x: number;
2052
+ y: number;
2053
+ z: number;
2054
+ } | undefined;
2055
+ size?: {
2056
+ x: number;
2057
+ y: number;
2058
+ z: number;
2059
+ } | undefined;
2060
+ mtlUrl?: string | undefined;
2061
+ }, {
2062
+ objUrl: string;
2063
+ rotationOffset?: number | {
2064
+ x: string | number;
2065
+ y: string | number;
2066
+ z: string | number;
2067
+ } | undefined;
2068
+ positionOffset?: {
2069
+ x: string | number;
2070
+ y: string | number;
2071
+ z: string | number;
2072
+ } | undefined;
2073
+ size?: {
2074
+ x: string | number;
2075
+ y: string | number;
2076
+ z: string | number;
2077
+ } | undefined;
2078
+ mtlUrl?: string | undefined;
2079
+ }>, zod.ZodObject<zod.objectUtil.extendShape<{
2080
+ rotationOffset: zod.ZodOptional<zod.ZodUnion<[zod.ZodNumber, zod.ZodObject<{
2081
+ x: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
2082
+ y: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
2083
+ z: zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>;
2084
+ }, "strip", zod.ZodTypeAny, {
2085
+ x: string | number;
2086
+ y: string | number;
2087
+ z: string | number;
2088
+ }, {
2089
+ x: string | number;
2090
+ y: string | number;
2091
+ z: string | number;
2092
+ }>]>>;
2093
+ positionOffset: zod.ZodOptional<zod.ZodObject<{
2094
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2095
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2096
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2097
+ }, "strip", zod.ZodTypeAny, {
2098
+ x: number;
2099
+ y: number;
2100
+ z: number;
2101
+ }, {
2102
+ x: string | number;
2103
+ y: string | number;
2104
+ z: string | number;
2105
+ }>>;
2106
+ size: zod.ZodOptional<zod.ZodObject<{
2107
+ x: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2108
+ y: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2109
+ z: zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>;
2110
+ }, "strip", zod.ZodTypeAny, {
2111
+ x: number;
2112
+ y: number;
2113
+ z: number;
2114
+ }, {
2115
+ x: string | number;
2116
+ y: string | number;
2117
+ z: string | number;
2118
+ }>>;
2119
+ }, {
2120
+ jscad: zod.ZodAny;
2121
+ }>, "strip", zod.ZodTypeAny, {
2122
+ rotationOffset?: number | {
2123
+ x: string | number;
2124
+ y: string | number;
2125
+ z: string | number;
2126
+ } | undefined;
2127
+ positionOffset?: {
2128
+ x: number;
2129
+ y: number;
2130
+ z: number;
2131
+ } | undefined;
2132
+ size?: {
2133
+ x: number;
2134
+ y: number;
2135
+ z: number;
2136
+ } | undefined;
2137
+ jscad?: any;
2138
+ }, {
2139
+ rotationOffset?: number | {
2140
+ x: string | number;
2141
+ y: string | number;
2142
+ z: string | number;
2143
+ } | undefined;
2144
+ positionOffset?: {
2145
+ x: string | number;
2146
+ y: string | number;
2147
+ z: string | number;
2148
+ } | undefined;
2149
+ size?: {
2150
+ x: string | number;
2151
+ y: string | number;
2152
+ z: string | number;
2153
+ } | undefined;
2154
+ jscad?: any;
2155
+ }>]>>;
2156
+ children: zod.ZodOptional<zod.ZodAny>;
2157
+ }>, {
2158
+ manufacturerPartNumber: zod.ZodOptional<zod.ZodString>;
2159
+ pinLabels: zod.ZodOptional<zod.ZodRecord<zod.ZodUnion<[zod.ZodNumber, zod.ZodString]>, zod.ZodString>>;
2160
+ schPortArrangement: zod.ZodOptional<zod.ZodUnion<[zod.ZodUnion<[zod.ZodObject<{
2161
+ leftSize: zod.ZodOptional<zod.ZodNumber>;
2162
+ topSize: zod.ZodOptional<zod.ZodNumber>;
2163
+ rightSize: zod.ZodOptional<zod.ZodNumber>;
2164
+ bottomSize: zod.ZodOptional<zod.ZodNumber>;
2165
+ }, "strip", zod.ZodTypeAny, {
2166
+ leftSize?: number | undefined;
2167
+ topSize?: number | undefined;
2168
+ rightSize?: number | undefined;
2169
+ bottomSize?: number | undefined;
2170
+ }, {
2171
+ leftSize?: number | undefined;
2172
+ topSize?: number | undefined;
2173
+ rightSize?: number | undefined;
2174
+ bottomSize?: number | undefined;
2175
+ }>, zod.ZodObject<{
2176
+ leftPinCount: zod.ZodOptional<zod.ZodNumber>;
2177
+ rightPinCount: zod.ZodOptional<zod.ZodNumber>;
2178
+ topPinCount: zod.ZodOptional<zod.ZodNumber>;
2179
+ bottomPinCount: zod.ZodOptional<zod.ZodNumber>;
2180
+ }, "strip", zod.ZodTypeAny, {
2181
+ leftPinCount?: number | undefined;
2182
+ rightPinCount?: number | undefined;
2183
+ topPinCount?: number | undefined;
2184
+ bottomPinCount?: number | undefined;
2185
+ }, {
2186
+ leftPinCount?: number | undefined;
2187
+ rightPinCount?: number | undefined;
2188
+ topPinCount?: number | undefined;
2189
+ bottomPinCount?: number | undefined;
2190
+ }>]>, zod.ZodObject<{
2191
+ leftSide: zod.ZodOptional<zod.ZodObject<{
2192
+ pins: zod.ZodArray<zod.ZodNumber, "many">;
2193
+ direction: zod.ZodUnion<[zod.ZodLiteral<"top-to-bottom">, zod.ZodLiteral<"left-to-right">, zod.ZodLiteral<"bottom-to-top">, zod.ZodLiteral<"right-to-left">]>;
2194
+ }, "strip", zod.ZodTypeAny, {
2195
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2196
+ pins: number[];
2197
+ }, {
2198
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2199
+ pins: number[];
2200
+ }>>;
2201
+ rightSide: zod.ZodOptional<zod.ZodObject<{
2202
+ pins: zod.ZodArray<zod.ZodNumber, "many">;
2203
+ direction: zod.ZodUnion<[zod.ZodLiteral<"top-to-bottom">, zod.ZodLiteral<"left-to-right">, zod.ZodLiteral<"bottom-to-top">, zod.ZodLiteral<"right-to-left">]>;
2204
+ }, "strip", zod.ZodTypeAny, {
2205
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2206
+ pins: number[];
2207
+ }, {
2208
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2209
+ pins: number[];
2210
+ }>>;
2211
+ topSide: zod.ZodOptional<zod.ZodObject<{
2212
+ pins: zod.ZodArray<zod.ZodNumber, "many">;
2213
+ direction: zod.ZodUnion<[zod.ZodLiteral<"top-to-bottom">, zod.ZodLiteral<"left-to-right">, zod.ZodLiteral<"bottom-to-top">, zod.ZodLiteral<"right-to-left">]>;
2214
+ }, "strip", zod.ZodTypeAny, {
2215
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2216
+ pins: number[];
2217
+ }, {
2218
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2219
+ pins: number[];
2220
+ }>>;
2221
+ bottomSide: zod.ZodOptional<zod.ZodObject<{
2222
+ pins: zod.ZodArray<zod.ZodNumber, "many">;
2223
+ direction: zod.ZodUnion<[zod.ZodLiteral<"top-to-bottom">, zod.ZodLiteral<"left-to-right">, zod.ZodLiteral<"bottom-to-top">, zod.ZodLiteral<"right-to-left">]>;
2224
+ }, "strip", zod.ZodTypeAny, {
2225
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2226
+ pins: number[];
2227
+ }, {
2228
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2229
+ pins: number[];
2230
+ }>>;
2231
+ }, "strip", zod.ZodTypeAny, {
2232
+ leftSide?: {
2233
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2234
+ pins: number[];
2235
+ } | undefined;
2236
+ rightSide?: {
2237
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2238
+ pins: number[];
2239
+ } | undefined;
2240
+ topSide?: {
2241
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2242
+ pins: number[];
2243
+ } | undefined;
2244
+ bottomSide?: {
2245
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2246
+ pins: number[];
2247
+ } | undefined;
2248
+ }, {
2249
+ leftSide?: {
2250
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2251
+ pins: number[];
2252
+ } | undefined;
2253
+ rightSide?: {
2254
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2255
+ pins: number[];
2256
+ } | undefined;
2257
+ topSide?: {
2258
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2259
+ pins: number[];
2260
+ } | undefined;
2261
+ bottomSide?: {
2262
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2263
+ pins: number[];
2264
+ } | undefined;
2265
+ }>]>>;
2266
+ schPinStyle: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodObject<{
2267
+ leftMargin: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
2268
+ rightMargin: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
2269
+ topMargin: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
2270
+ bottomMargin: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
2271
+ }, "strip", zod.ZodTypeAny, {
2272
+ leftMargin?: number | undefined;
2273
+ rightMargin?: number | undefined;
2274
+ topMargin?: number | undefined;
2275
+ bottomMargin?: number | undefined;
2276
+ }, {
2277
+ leftMargin?: string | number | undefined;
2278
+ rightMargin?: string | number | undefined;
2279
+ topMargin?: string | number | undefined;
2280
+ bottomMargin?: string | number | undefined;
2281
+ }>>>;
2282
+ schPinSpacing: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
2283
+ schWidth: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
2284
+ schHeight: zod.ZodOptional<zod.ZodEffects<zod.ZodUnion<[zod.ZodString, zod.ZodNumber]>, number, string | number>>;
2285
+ }>, "strip", zod.ZodTypeAny, {
2286
+ name: string;
2287
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
2288
+ pcbX?: number | undefined;
2289
+ pcbY?: number | undefined;
2290
+ pcbRotation?: number | undefined;
2291
+ schX?: number | undefined;
2292
+ schY?: number | undefined;
2293
+ schRotation?: number | undefined;
2294
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
2295
+ footprint?: Props.Footprint | undefined;
2296
+ cadModel?: {
2297
+ stlUrl: string;
2298
+ rotationOffset?: number | {
2299
+ x: string | number;
2300
+ y: string | number;
2301
+ z: string | number;
2302
+ } | undefined;
2303
+ positionOffset?: {
2304
+ x: number;
2305
+ y: number;
2306
+ z: number;
2307
+ } | undefined;
2308
+ size?: {
2309
+ x: number;
2310
+ y: number;
2311
+ z: number;
2312
+ } | undefined;
2313
+ } | {
2314
+ objUrl: string;
2315
+ rotationOffset?: number | {
2316
+ x: string | number;
2317
+ y: string | number;
2318
+ z: string | number;
2319
+ } | undefined;
2320
+ positionOffset?: {
2321
+ x: number;
2322
+ y: number;
2323
+ z: number;
2324
+ } | undefined;
2325
+ size?: {
2326
+ x: number;
2327
+ y: number;
2328
+ z: number;
2329
+ } | undefined;
2330
+ mtlUrl?: string | undefined;
2331
+ } | {
2332
+ rotationOffset?: number | {
2333
+ x: string | number;
2334
+ y: string | number;
2335
+ z: string | number;
2336
+ } | undefined;
2337
+ positionOffset?: {
2338
+ x: number;
2339
+ y: number;
2340
+ z: number;
2341
+ } | undefined;
2342
+ size?: {
2343
+ x: number;
2344
+ y: number;
2345
+ z: number;
2346
+ } | undefined;
2347
+ jscad?: any;
2348
+ } | undefined;
2349
+ children?: any;
2350
+ manufacturerPartNumber?: string | undefined;
2351
+ pinLabels?: Record<string | number, string> | undefined;
2352
+ schPortArrangement?: {
2353
+ leftSize?: number | undefined;
2354
+ topSize?: number | undefined;
2355
+ rightSize?: number | undefined;
2356
+ bottomSize?: number | undefined;
2357
+ } | {
2358
+ leftPinCount?: number | undefined;
2359
+ rightPinCount?: number | undefined;
2360
+ topPinCount?: number | undefined;
2361
+ bottomPinCount?: number | undefined;
2362
+ } | {
2363
+ leftSide?: {
2364
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2365
+ pins: number[];
2366
+ } | undefined;
2367
+ rightSide?: {
2368
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2369
+ pins: number[];
2370
+ } | undefined;
2371
+ topSide?: {
2372
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2373
+ pins: number[];
2374
+ } | undefined;
2375
+ bottomSide?: {
2376
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2377
+ pins: number[];
2378
+ } | undefined;
2379
+ } | undefined;
2380
+ schPinStyle?: Record<string, {
2381
+ leftMargin?: number | undefined;
2382
+ rightMargin?: number | undefined;
2383
+ topMargin?: number | undefined;
2384
+ bottomMargin?: number | undefined;
2385
+ }> | undefined;
2386
+ schPinSpacing?: number | undefined;
2387
+ schWidth?: number | undefined;
2388
+ schHeight?: number | undefined;
2389
+ }, {
2390
+ name: string;
2391
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
2392
+ pcbX?: string | number | undefined;
2393
+ pcbY?: string | number | undefined;
2394
+ pcbRotation?: string | number | undefined;
2395
+ schX?: string | number | undefined;
2396
+ schY?: string | number | undefined;
2397
+ schRotation?: string | number | undefined;
2398
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
2399
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
2400
+ } | undefined;
2401
+ footprint?: Props.Footprint | undefined;
2402
+ cadModel?: {
2403
+ stlUrl: string;
2404
+ rotationOffset?: number | {
2405
+ x: string | number;
2406
+ y: string | number;
2407
+ z: string | number;
2408
+ } | undefined;
2409
+ positionOffset?: {
2410
+ x: string | number;
2411
+ y: string | number;
2412
+ z: string | number;
2413
+ } | undefined;
2414
+ size?: {
2415
+ x: string | number;
2416
+ y: string | number;
2417
+ z: string | number;
2418
+ } | undefined;
2419
+ } | {
2420
+ objUrl: string;
2421
+ rotationOffset?: number | {
2422
+ x: string | number;
2423
+ y: string | number;
2424
+ z: string | number;
2425
+ } | undefined;
2426
+ positionOffset?: {
2427
+ x: string | number;
2428
+ y: string | number;
2429
+ z: string | number;
2430
+ } | undefined;
2431
+ size?: {
2432
+ x: string | number;
2433
+ y: string | number;
2434
+ z: string | number;
2435
+ } | undefined;
2436
+ mtlUrl?: string | undefined;
2437
+ } | {
2438
+ rotationOffset?: number | {
2439
+ x: string | number;
2440
+ y: string | number;
2441
+ z: string | number;
2442
+ } | undefined;
2443
+ positionOffset?: {
2444
+ x: string | number;
2445
+ y: string | number;
2446
+ z: string | number;
2447
+ } | undefined;
2448
+ size?: {
2449
+ x: string | number;
2450
+ y: string | number;
2451
+ z: string | number;
2452
+ } | undefined;
2453
+ jscad?: any;
2454
+ } | undefined;
2455
+ children?: any;
2456
+ manufacturerPartNumber?: string | undefined;
2457
+ pinLabels?: Record<string | number, string> | undefined;
2458
+ schPortArrangement?: {
2459
+ leftSize?: number | undefined;
2460
+ topSize?: number | undefined;
2461
+ rightSize?: number | undefined;
2462
+ bottomSize?: number | undefined;
2463
+ } | {
2464
+ leftPinCount?: number | undefined;
2465
+ rightPinCount?: number | undefined;
2466
+ topPinCount?: number | undefined;
2467
+ bottomPinCount?: number | undefined;
2468
+ } | {
2469
+ leftSide?: {
2470
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2471
+ pins: number[];
2472
+ } | undefined;
2473
+ rightSide?: {
2474
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2475
+ pins: number[];
2476
+ } | undefined;
2477
+ topSide?: {
2478
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2479
+ pins: number[];
2480
+ } | undefined;
2481
+ bottomSide?: {
2482
+ direction: "top-to-bottom" | "left-to-right" | "bottom-to-top" | "right-to-left";
2483
+ pins: number[];
2484
+ } | undefined;
2485
+ } | undefined;
2486
+ schPinStyle?: Record<string, {
2487
+ leftMargin?: string | number | undefined;
2488
+ rightMargin?: string | number | undefined;
2489
+ topMargin?: string | number | undefined;
2490
+ bottomMargin?: string | number | undefined;
2491
+ }> | undefined;
2492
+ schPinSpacing?: string | number | undefined;
2493
+ schWidth?: string | number | undefined;
2494
+ schHeight?: string | number | undefined;
2495
+ }>;
2496
+ };
2497
+ initPorts(): void;
2498
+ doInitialSourceRender(): void;
2499
+ doInitialSchematicComponentRender(): void;
2500
+ doInitialPcbComponentRender(): void;
2501
+ }
2502
+
2503
+ declare global {
2504
+ namespace JSX {
2505
+ interface IntrinsicElements {
2506
+ resistor: Props.ResistorProps;
2507
+ capacitor: Props.CapacitorProps;
2508
+ inductor: Props.InductorProps;
2509
+ diode: Props.DiodeProps;
2510
+ led: Props.LedProps;
2511
+ board: Props.BoardProps;
2512
+ bug: Props.ChipProps;
2513
+ chip: Props.ChipProps;
2514
+ powersource: Props.PowerSourceProps;
2515
+ via: Props.ViaProps;
2516
+ schematicbox: Props.SchematicBoxProps;
2517
+ schematicline: Props.SchematicLineProps;
2518
+ schematicpath: Props.SchematicPathProps;
2519
+ schematictext: Props.SchematicTextProps;
2520
+ smtpad: Props.SmtPadProps;
2521
+ platedhole: Props.PlatedHoleProps;
2522
+ hole: Props.HoleProps;
2523
+ port: Props.PortProps;
2524
+ group: Props.GroupProps;
2525
+ netalias: Props.NetAliasProps;
2526
+ trace: Props.TraceProps;
2527
+ custom: any;
2528
+ component: Props.ComponentProps;
2529
+ footprint: any;
2530
+ silkscreentext: Props.SilkscreenTextProps;
2531
+ silkscreenpath: Props.SilkscreenPathProps;
2532
+ silkscreenline: Props.SilkscreenLineProps;
2533
+ silkscreenrect: Props.SilkscreenRectProps;
2534
+ silkscreencircle: Props.SilkscreenCircleProps;
2535
+ tracehint: Props.TraceHintProps;
2536
+ pcbtrace: Props.PcbTraceProps;
2537
+ fabricationnotetext: Props.FabricationNoteTextProps;
2538
+ fabricationnotepath: Props.FabricationNotePathProps;
2539
+ jscad: any;
2540
+ }
2541
+ }
2542
+ }
2543
+
2544
+ export { Board, Capacitor, Chip, Footprint, Group, type IRenderable, Led, Net, NormalComponent, Port, PrimitiveComponent, Project, Renderable, Resistor, SmtPad, Trace, TraceHint };