@tscircuit/core 0.0.634 → 0.0.635

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _tscircuit_props from '@tscircuit/props';
2
- import { PlatformConfig, subcircuitGroupProps, AutorouterConfig, traceProps, SupplierPartNumbers, SchematicPortArrangement, groupProps, boardProps, capacitorProps, chipProps, diodeProps, fuseProps, jumperProps, solderjumperProps, ledProps, powerSourceProps, resistorProps, constraintProps, fabricationNotePathProps, fabricationNoteTextProps, footprintProps, subcircuitProps, breakoutProps, breakoutPointProps, holeProps, pcbKeepoutProps, netLabelProps, platedHoleProps, silkscreenCircleProps, silkscreenPathProps, silkscreenRectProps, silkscreenTextProps, silkscreenLineProps, smtPadProps, traceHintProps, viaProps, cutoutProps, batteryProps, pinHeaderProps, resonatorProps, inductorProps, potentiometerProps, pushButtonProps, crystalProps, transistorProps, mosfetProps, switchProps, testpointProps, schematicTextProps, schematicBoxProps, schematicTableProps, schematicRowProps, schematicCellProps, CapacitorProps, ChipProps, DiodeProps, ResistorProps, ManualEditEvent, ManualEditsFile, ChipConnections, manual_edits_file } from '@tscircuit/props';
2
+ import { PlatformConfig, subcircuitGroupProps, AutorouterConfig, traceProps, SupplierPartNumbers, SchematicPortArrangement, groupProps, boardProps, capacitorProps, chipProps, diodeProps, fuseProps, jumperProps, solderjumperProps, ledProps, powerSourceProps, CommonComponentProps, resistorProps, constraintProps, fabricationNotePathProps, fabricationNoteTextProps, footprintProps, subcircuitProps, breakoutProps, breakoutPointProps, holeProps, pcbKeepoutProps, netLabelProps, platedHoleProps, silkscreenCircleProps, silkscreenPathProps, silkscreenRectProps, silkscreenTextProps, silkscreenLineProps, smtPadProps, traceHintProps, viaProps, cutoutProps, batteryProps, pinHeaderProps, resonatorProps, inductorProps, potentiometerProps, pushButtonProps, crystalProps, transistorProps, mosfetProps, switchProps, testpointProps, schematicTextProps, schematicBoxProps, schematicTableProps, schematicRowProps, schematicCellProps, CapacitorProps, ChipProps, DiodeProps, ResistorProps, ManualEditEvent, ManualEditsFile, ChipConnections, manual_edits_file } from '@tscircuit/props';
3
3
  import React, { ReactElement, DetailedHTMLProps, SVGProps } from 'react';
4
4
  export { createElement } from 'react';
5
5
  import * as zod from 'zod';
@@ -7515,6 +7515,947 @@ declare class PowerSource extends NormalComponent<typeof powerSourceProps, Polar
7515
7515
  negative: Port;
7516
7516
  }
7517
7517
 
7518
+ type WaveShape = "sinewave" | "square" | "triangle" | "sawtooth";
7519
+ interface VoltageSourceProps extends CommonComponentProps {
7520
+ voltage?: number | string;
7521
+ frequency?: number | string;
7522
+ peakToPeakVoltage?: number | string;
7523
+ waveShape?: WaveShape;
7524
+ phase?: number | string;
7525
+ }
7526
+ declare const voltageSourceProps: z.ZodObject<{
7527
+ pcbX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7528
+ pcbY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7529
+ pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7530
+ schX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7531
+ schY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7532
+ schRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7533
+ layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
7534
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
7535
+ }, "strip", z.ZodTypeAny, {
7536
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
7537
+ }, {
7538
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
7539
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
7540
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
7541
+ }>>;
7542
+ footprint: z.ZodOptional<z.ZodType<_tscircuit_props.FootprintProp, z.ZodTypeDef, _tscircuit_props.FootprintProp>>;
7543
+ relative: z.ZodOptional<z.ZodBoolean>;
7544
+ schRelative: z.ZodOptional<z.ZodBoolean>;
7545
+ pcbRelative: z.ZodOptional<z.ZodBoolean>;
7546
+ } & {
7547
+ supplierPartNumbers: z.ZodOptional<z.ZodRecord<z.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, z.ZodArray<z.ZodString, "many">>>;
7548
+ } & {
7549
+ key: z.ZodOptional<z.ZodAny>;
7550
+ name: z.ZodString;
7551
+ cadModel: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString, z.ZodObject<{
7552
+ rotationOffset: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodObject<{
7553
+ x: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
7554
+ y: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
7555
+ z: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
7556
+ }, "strip", z.ZodTypeAny, {
7557
+ x: string | number;
7558
+ y: string | number;
7559
+ z: string | number;
7560
+ }, {
7561
+ x: string | number;
7562
+ y: string | number;
7563
+ z: string | number;
7564
+ }>]>>;
7565
+ positionOffset: z.ZodOptional<z.ZodObject<{
7566
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7567
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7568
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7569
+ }, "strip", z.ZodTypeAny, {
7570
+ x: number;
7571
+ y: number;
7572
+ z: number;
7573
+ }, {
7574
+ x: string | number;
7575
+ y: string | number;
7576
+ z: string | number;
7577
+ }>>;
7578
+ size: z.ZodOptional<z.ZodObject<{
7579
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7580
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7581
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7582
+ }, "strip", z.ZodTypeAny, {
7583
+ x: number;
7584
+ y: number;
7585
+ z: number;
7586
+ }, {
7587
+ x: string | number;
7588
+ y: string | number;
7589
+ z: string | number;
7590
+ }>>;
7591
+ } & {
7592
+ stlUrl: z.ZodString;
7593
+ }, "strip", z.ZodTypeAny, {
7594
+ stlUrl: string;
7595
+ rotationOffset?: number | {
7596
+ x: string | number;
7597
+ y: string | number;
7598
+ z: string | number;
7599
+ } | undefined;
7600
+ positionOffset?: {
7601
+ x: number;
7602
+ y: number;
7603
+ z: number;
7604
+ } | undefined;
7605
+ size?: {
7606
+ x: number;
7607
+ y: number;
7608
+ z: number;
7609
+ } | undefined;
7610
+ }, {
7611
+ stlUrl: string;
7612
+ rotationOffset?: number | {
7613
+ x: string | number;
7614
+ y: string | number;
7615
+ z: string | number;
7616
+ } | undefined;
7617
+ positionOffset?: {
7618
+ x: string | number;
7619
+ y: string | number;
7620
+ z: string | number;
7621
+ } | undefined;
7622
+ size?: {
7623
+ x: string | number;
7624
+ y: string | number;
7625
+ z: string | number;
7626
+ } | undefined;
7627
+ }>, z.ZodObject<{
7628
+ rotationOffset: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodObject<{
7629
+ x: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
7630
+ y: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
7631
+ z: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
7632
+ }, "strip", z.ZodTypeAny, {
7633
+ x: string | number;
7634
+ y: string | number;
7635
+ z: string | number;
7636
+ }, {
7637
+ x: string | number;
7638
+ y: string | number;
7639
+ z: string | number;
7640
+ }>]>>;
7641
+ positionOffset: z.ZodOptional<z.ZodObject<{
7642
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7643
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7644
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7645
+ }, "strip", z.ZodTypeAny, {
7646
+ x: number;
7647
+ y: number;
7648
+ z: number;
7649
+ }, {
7650
+ x: string | number;
7651
+ y: string | number;
7652
+ z: string | number;
7653
+ }>>;
7654
+ size: z.ZodOptional<z.ZodObject<{
7655
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7656
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7657
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7658
+ }, "strip", z.ZodTypeAny, {
7659
+ x: number;
7660
+ y: number;
7661
+ z: number;
7662
+ }, {
7663
+ x: string | number;
7664
+ y: string | number;
7665
+ z: string | number;
7666
+ }>>;
7667
+ } & {
7668
+ objUrl: z.ZodString;
7669
+ mtlUrl: z.ZodOptional<z.ZodString>;
7670
+ }, "strip", z.ZodTypeAny, {
7671
+ objUrl: string;
7672
+ rotationOffset?: number | {
7673
+ x: string | number;
7674
+ y: string | number;
7675
+ z: string | number;
7676
+ } | undefined;
7677
+ positionOffset?: {
7678
+ x: number;
7679
+ y: number;
7680
+ z: number;
7681
+ } | undefined;
7682
+ size?: {
7683
+ x: number;
7684
+ y: number;
7685
+ z: number;
7686
+ } | undefined;
7687
+ mtlUrl?: string | undefined;
7688
+ }, {
7689
+ objUrl: string;
7690
+ rotationOffset?: number | {
7691
+ x: string | number;
7692
+ y: string | number;
7693
+ z: string | number;
7694
+ } | undefined;
7695
+ positionOffset?: {
7696
+ x: string | number;
7697
+ y: string | number;
7698
+ z: string | number;
7699
+ } | undefined;
7700
+ size?: {
7701
+ x: string | number;
7702
+ y: string | number;
7703
+ z: string | number;
7704
+ } | undefined;
7705
+ mtlUrl?: string | undefined;
7706
+ }>, z.ZodObject<{
7707
+ rotationOffset: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodObject<{
7708
+ x: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
7709
+ y: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
7710
+ z: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
7711
+ }, "strip", z.ZodTypeAny, {
7712
+ x: string | number;
7713
+ y: string | number;
7714
+ z: string | number;
7715
+ }, {
7716
+ x: string | number;
7717
+ y: string | number;
7718
+ z: string | number;
7719
+ }>]>>;
7720
+ positionOffset: z.ZodOptional<z.ZodObject<{
7721
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7722
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7723
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7724
+ }, "strip", z.ZodTypeAny, {
7725
+ x: number;
7726
+ y: number;
7727
+ z: number;
7728
+ }, {
7729
+ x: string | number;
7730
+ y: string | number;
7731
+ z: string | number;
7732
+ }>>;
7733
+ size: z.ZodOptional<z.ZodObject<{
7734
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7735
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7736
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
7737
+ }, "strip", z.ZodTypeAny, {
7738
+ x: number;
7739
+ y: number;
7740
+ z: number;
7741
+ }, {
7742
+ x: string | number;
7743
+ y: string | number;
7744
+ z: string | number;
7745
+ }>>;
7746
+ } & {
7747
+ jscad: z.ZodRecord<z.ZodString, z.ZodAny>;
7748
+ }, "strip", z.ZodTypeAny, {
7749
+ jscad: Record<string, any>;
7750
+ rotationOffset?: number | {
7751
+ x: string | number;
7752
+ y: string | number;
7753
+ z: string | number;
7754
+ } | undefined;
7755
+ positionOffset?: {
7756
+ x: number;
7757
+ y: number;
7758
+ z: number;
7759
+ } | undefined;
7760
+ size?: {
7761
+ x: number;
7762
+ y: number;
7763
+ z: number;
7764
+ } | undefined;
7765
+ }, {
7766
+ jscad: Record<string, any>;
7767
+ rotationOffset?: number | {
7768
+ x: string | number;
7769
+ y: string | number;
7770
+ z: string | number;
7771
+ } | undefined;
7772
+ positionOffset?: {
7773
+ x: string | number;
7774
+ y: string | number;
7775
+ z: string | number;
7776
+ } | undefined;
7777
+ size?: {
7778
+ x: string | number;
7779
+ y: string | number;
7780
+ z: string | number;
7781
+ } | undefined;
7782
+ }>]>>;
7783
+ children: z.ZodOptional<z.ZodAny>;
7784
+ symbolName: z.ZodOptional<z.ZodString>;
7785
+ doNotPlace: z.ZodOptional<z.ZodBoolean>;
7786
+ pinAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
7787
+ providesPower: z.ZodOptional<z.ZodBoolean>;
7788
+ requiresPower: z.ZodOptional<z.ZodBoolean>;
7789
+ providesGround: z.ZodOptional<z.ZodBoolean>;
7790
+ requiresGround: z.ZodOptional<z.ZodBoolean>;
7791
+ providesVoltage: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
7792
+ requiresVoltage: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
7793
+ }, "strip", z.ZodTypeAny, {
7794
+ providesPower?: boolean | undefined;
7795
+ requiresPower?: boolean | undefined;
7796
+ providesGround?: boolean | undefined;
7797
+ requiresGround?: boolean | undefined;
7798
+ providesVoltage?: string | number | undefined;
7799
+ requiresVoltage?: string | number | undefined;
7800
+ }, {
7801
+ providesPower?: boolean | undefined;
7802
+ requiresPower?: boolean | undefined;
7803
+ providesGround?: boolean | undefined;
7804
+ requiresGround?: boolean | undefined;
7805
+ providesVoltage?: string | number | undefined;
7806
+ requiresVoltage?: string | number | undefined;
7807
+ }>>>;
7808
+ } & {
7809
+ voltage: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7810
+ frequency: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7811
+ peakToPeakVoltage: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7812
+ waveShape: z.ZodOptional<z.ZodEnum<["sinewave", "square", "triangle", "sawtooth"]>>;
7813
+ phase: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7814
+ }, "strip", z.ZodTypeAny, {
7815
+ name: string;
7816
+ children?: any;
7817
+ key?: any;
7818
+ footprint?: _tscircuit_props.FootprintProp | undefined;
7819
+ relative?: boolean | undefined;
7820
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
7821
+ phase?: number | undefined;
7822
+ voltage?: number | undefined;
7823
+ pcbX?: number | undefined;
7824
+ pcbY?: number | undefined;
7825
+ frequency?: number | undefined;
7826
+ pcbRotation?: number | undefined;
7827
+ schX?: number | undefined;
7828
+ schY?: number | undefined;
7829
+ schRotation?: number | undefined;
7830
+ schRelative?: boolean | undefined;
7831
+ pcbRelative?: boolean | undefined;
7832
+ pinAttributes?: Record<string, {
7833
+ providesPower?: boolean | undefined;
7834
+ requiresPower?: boolean | undefined;
7835
+ providesGround?: boolean | undefined;
7836
+ requiresGround?: boolean | undefined;
7837
+ providesVoltage?: string | number | undefined;
7838
+ requiresVoltage?: string | number | undefined;
7839
+ }> | undefined;
7840
+ peakToPeakVoltage?: number | undefined;
7841
+ waveShape?: "square" | "sinewave" | "triangle" | "sawtooth" | undefined;
7842
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
7843
+ cadModel?: string | {
7844
+ stlUrl: string;
7845
+ rotationOffset?: number | {
7846
+ x: string | number;
7847
+ y: string | number;
7848
+ z: string | number;
7849
+ } | undefined;
7850
+ positionOffset?: {
7851
+ x: number;
7852
+ y: number;
7853
+ z: number;
7854
+ } | undefined;
7855
+ size?: {
7856
+ x: number;
7857
+ y: number;
7858
+ z: number;
7859
+ } | undefined;
7860
+ } | {
7861
+ objUrl: string;
7862
+ rotationOffset?: number | {
7863
+ x: string | number;
7864
+ y: string | number;
7865
+ z: string | number;
7866
+ } | undefined;
7867
+ positionOffset?: {
7868
+ x: number;
7869
+ y: number;
7870
+ z: number;
7871
+ } | undefined;
7872
+ size?: {
7873
+ x: number;
7874
+ y: number;
7875
+ z: number;
7876
+ } | undefined;
7877
+ mtlUrl?: string | undefined;
7878
+ } | {
7879
+ jscad: Record<string, any>;
7880
+ rotationOffset?: number | {
7881
+ x: string | number;
7882
+ y: string | number;
7883
+ z: string | number;
7884
+ } | undefined;
7885
+ positionOffset?: {
7886
+ x: number;
7887
+ y: number;
7888
+ z: number;
7889
+ } | undefined;
7890
+ size?: {
7891
+ x: number;
7892
+ y: number;
7893
+ z: number;
7894
+ } | undefined;
7895
+ } | null | undefined;
7896
+ symbolName?: string | undefined;
7897
+ doNotPlace?: boolean | undefined;
7898
+ }, {
7899
+ name: string;
7900
+ children?: any;
7901
+ key?: any;
7902
+ footprint?: _tscircuit_props.FootprintProp | undefined;
7903
+ relative?: boolean | undefined;
7904
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
7905
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
7906
+ } | undefined;
7907
+ phase?: string | number | undefined;
7908
+ voltage?: string | number | undefined;
7909
+ pcbX?: string | number | undefined;
7910
+ pcbY?: string | number | undefined;
7911
+ frequency?: string | number | undefined;
7912
+ pcbRotation?: string | number | undefined;
7913
+ schX?: string | number | undefined;
7914
+ schY?: string | number | undefined;
7915
+ schRotation?: string | number | undefined;
7916
+ schRelative?: boolean | undefined;
7917
+ pcbRelative?: boolean | undefined;
7918
+ pinAttributes?: Record<string, {
7919
+ providesPower?: boolean | undefined;
7920
+ requiresPower?: boolean | undefined;
7921
+ providesGround?: boolean | undefined;
7922
+ requiresGround?: boolean | undefined;
7923
+ providesVoltage?: string | number | undefined;
7924
+ requiresVoltage?: string | number | undefined;
7925
+ }> | undefined;
7926
+ peakToPeakVoltage?: string | number | undefined;
7927
+ waveShape?: "square" | "sinewave" | "triangle" | "sawtooth" | undefined;
7928
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
7929
+ cadModel?: string | {
7930
+ stlUrl: string;
7931
+ rotationOffset?: number | {
7932
+ x: string | number;
7933
+ y: string | number;
7934
+ z: string | number;
7935
+ } | undefined;
7936
+ positionOffset?: {
7937
+ x: string | number;
7938
+ y: string | number;
7939
+ z: string | number;
7940
+ } | undefined;
7941
+ size?: {
7942
+ x: string | number;
7943
+ y: string | number;
7944
+ z: string | number;
7945
+ } | undefined;
7946
+ } | {
7947
+ objUrl: string;
7948
+ rotationOffset?: number | {
7949
+ x: string | number;
7950
+ y: string | number;
7951
+ z: string | number;
7952
+ } | undefined;
7953
+ positionOffset?: {
7954
+ x: string | number;
7955
+ y: string | number;
7956
+ z: string | number;
7957
+ } | undefined;
7958
+ size?: {
7959
+ x: string | number;
7960
+ y: string | number;
7961
+ z: string | number;
7962
+ } | undefined;
7963
+ mtlUrl?: string | undefined;
7964
+ } | {
7965
+ jscad: Record<string, any>;
7966
+ rotationOffset?: number | {
7967
+ x: string | number;
7968
+ y: string | number;
7969
+ z: string | number;
7970
+ } | undefined;
7971
+ positionOffset?: {
7972
+ x: string | number;
7973
+ y: string | number;
7974
+ z: string | number;
7975
+ } | undefined;
7976
+ size?: {
7977
+ x: string | number;
7978
+ y: string | number;
7979
+ z: string | number;
7980
+ } | undefined;
7981
+ } | null | undefined;
7982
+ symbolName?: string | undefined;
7983
+ doNotPlace?: boolean | undefined;
7984
+ }>;
7985
+ declare class VoltageSource extends NormalComponent<typeof voltageSourceProps, "terminal1" | "terminal2"> {
7986
+ get config(): {
7987
+ componentName: string;
7988
+ schematicSymbolName: BaseSymbolName;
7989
+ zodProps: z.ZodObject<{
7990
+ pcbX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7991
+ pcbY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7992
+ pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7993
+ schX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7994
+ schY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7995
+ schRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
7996
+ layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
7997
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
7998
+ }, "strip", z.ZodTypeAny, {
7999
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
8000
+ }, {
8001
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
8002
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
8003
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
8004
+ }>>;
8005
+ footprint: z.ZodOptional<z.ZodType<_tscircuit_props.FootprintProp, z.ZodTypeDef, _tscircuit_props.FootprintProp>>;
8006
+ relative: z.ZodOptional<z.ZodBoolean>;
8007
+ schRelative: z.ZodOptional<z.ZodBoolean>;
8008
+ pcbRelative: z.ZodOptional<z.ZodBoolean>;
8009
+ } & {
8010
+ supplierPartNumbers: z.ZodOptional<z.ZodRecord<z.ZodEnum<["jlcpcb", "macrofab", "pcbway", "digikey", "mouser", "lcsc"]>, z.ZodArray<z.ZodString, "many">>>;
8011
+ } & {
8012
+ key: z.ZodOptional<z.ZodAny>;
8013
+ name: z.ZodString;
8014
+ cadModel: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString, z.ZodObject<{
8015
+ rotationOffset: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodObject<{
8016
+ x: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
8017
+ y: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
8018
+ z: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
8019
+ }, "strip", z.ZodTypeAny, {
8020
+ x: string | number;
8021
+ y: string | number;
8022
+ z: string | number;
8023
+ }, {
8024
+ x: string | number;
8025
+ y: string | number;
8026
+ z: string | number;
8027
+ }>]>>;
8028
+ positionOffset: z.ZodOptional<z.ZodObject<{
8029
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8030
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8031
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8032
+ }, "strip", z.ZodTypeAny, {
8033
+ x: number;
8034
+ y: number;
8035
+ z: number;
8036
+ }, {
8037
+ x: string | number;
8038
+ y: string | number;
8039
+ z: string | number;
8040
+ }>>;
8041
+ size: z.ZodOptional<z.ZodObject<{
8042
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8043
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8044
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8045
+ }, "strip", z.ZodTypeAny, {
8046
+ x: number;
8047
+ y: number;
8048
+ z: number;
8049
+ }, {
8050
+ x: string | number;
8051
+ y: string | number;
8052
+ z: string | number;
8053
+ }>>;
8054
+ } & {
8055
+ stlUrl: z.ZodString;
8056
+ }, "strip", z.ZodTypeAny, {
8057
+ stlUrl: string;
8058
+ rotationOffset?: number | {
8059
+ x: string | number;
8060
+ y: string | number;
8061
+ z: string | number;
8062
+ } | undefined;
8063
+ positionOffset?: {
8064
+ x: number;
8065
+ y: number;
8066
+ z: number;
8067
+ } | undefined;
8068
+ size?: {
8069
+ x: number;
8070
+ y: number;
8071
+ z: number;
8072
+ } | undefined;
8073
+ }, {
8074
+ stlUrl: string;
8075
+ rotationOffset?: number | {
8076
+ x: string | number;
8077
+ y: string | number;
8078
+ z: string | number;
8079
+ } | undefined;
8080
+ positionOffset?: {
8081
+ x: string | number;
8082
+ y: string | number;
8083
+ z: string | number;
8084
+ } | undefined;
8085
+ size?: {
8086
+ x: string | number;
8087
+ y: string | number;
8088
+ z: string | number;
8089
+ } | undefined;
8090
+ }>, z.ZodObject<{
8091
+ rotationOffset: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodObject<{
8092
+ x: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
8093
+ y: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
8094
+ z: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
8095
+ }, "strip", z.ZodTypeAny, {
8096
+ x: string | number;
8097
+ y: string | number;
8098
+ z: string | number;
8099
+ }, {
8100
+ x: string | number;
8101
+ y: string | number;
8102
+ z: string | number;
8103
+ }>]>>;
8104
+ positionOffset: z.ZodOptional<z.ZodObject<{
8105
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8106
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8107
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8108
+ }, "strip", z.ZodTypeAny, {
8109
+ x: number;
8110
+ y: number;
8111
+ z: number;
8112
+ }, {
8113
+ x: string | number;
8114
+ y: string | number;
8115
+ z: string | number;
8116
+ }>>;
8117
+ size: z.ZodOptional<z.ZodObject<{
8118
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8119
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8120
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8121
+ }, "strip", z.ZodTypeAny, {
8122
+ x: number;
8123
+ y: number;
8124
+ z: number;
8125
+ }, {
8126
+ x: string | number;
8127
+ y: string | number;
8128
+ z: string | number;
8129
+ }>>;
8130
+ } & {
8131
+ objUrl: z.ZodString;
8132
+ mtlUrl: z.ZodOptional<z.ZodString>;
8133
+ }, "strip", z.ZodTypeAny, {
8134
+ objUrl: string;
8135
+ rotationOffset?: number | {
8136
+ x: string | number;
8137
+ y: string | number;
8138
+ z: string | number;
8139
+ } | undefined;
8140
+ positionOffset?: {
8141
+ x: number;
8142
+ y: number;
8143
+ z: number;
8144
+ } | undefined;
8145
+ size?: {
8146
+ x: number;
8147
+ y: number;
8148
+ z: number;
8149
+ } | undefined;
8150
+ mtlUrl?: string | undefined;
8151
+ }, {
8152
+ objUrl: string;
8153
+ rotationOffset?: number | {
8154
+ x: string | number;
8155
+ y: string | number;
8156
+ z: string | number;
8157
+ } | undefined;
8158
+ positionOffset?: {
8159
+ x: string | number;
8160
+ y: string | number;
8161
+ z: string | number;
8162
+ } | undefined;
8163
+ size?: {
8164
+ x: string | number;
8165
+ y: string | number;
8166
+ z: string | number;
8167
+ } | undefined;
8168
+ mtlUrl?: string | undefined;
8169
+ }>, z.ZodObject<{
8170
+ rotationOffset: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodObject<{
8171
+ x: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
8172
+ y: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
8173
+ z: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
8174
+ }, "strip", z.ZodTypeAny, {
8175
+ x: string | number;
8176
+ y: string | number;
8177
+ z: string | number;
8178
+ }, {
8179
+ x: string | number;
8180
+ y: string | number;
8181
+ z: string | number;
8182
+ }>]>>;
8183
+ positionOffset: z.ZodOptional<z.ZodObject<{
8184
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8185
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8186
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8187
+ }, "strip", z.ZodTypeAny, {
8188
+ x: number;
8189
+ y: number;
8190
+ z: number;
8191
+ }, {
8192
+ x: string | number;
8193
+ y: string | number;
8194
+ z: string | number;
8195
+ }>>;
8196
+ size: z.ZodOptional<z.ZodObject<{
8197
+ x: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8198
+ y: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8199
+ z: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
8200
+ }, "strip", z.ZodTypeAny, {
8201
+ x: number;
8202
+ y: number;
8203
+ z: number;
8204
+ }, {
8205
+ x: string | number;
8206
+ y: string | number;
8207
+ z: string | number;
8208
+ }>>;
8209
+ } & {
8210
+ jscad: z.ZodRecord<z.ZodString, z.ZodAny>;
8211
+ }, "strip", z.ZodTypeAny, {
8212
+ jscad: Record<string, any>;
8213
+ rotationOffset?: number | {
8214
+ x: string | number;
8215
+ y: string | number;
8216
+ z: string | number;
8217
+ } | undefined;
8218
+ positionOffset?: {
8219
+ x: number;
8220
+ y: number;
8221
+ z: number;
8222
+ } | undefined;
8223
+ size?: {
8224
+ x: number;
8225
+ y: number;
8226
+ z: number;
8227
+ } | undefined;
8228
+ }, {
8229
+ jscad: Record<string, any>;
8230
+ rotationOffset?: number | {
8231
+ x: string | number;
8232
+ y: string | number;
8233
+ z: string | number;
8234
+ } | undefined;
8235
+ positionOffset?: {
8236
+ x: string | number;
8237
+ y: string | number;
8238
+ z: string | number;
8239
+ } | undefined;
8240
+ size?: {
8241
+ x: string | number;
8242
+ y: string | number;
8243
+ z: string | number;
8244
+ } | undefined;
8245
+ }>]>>;
8246
+ children: z.ZodOptional<z.ZodAny>;
8247
+ symbolName: z.ZodOptional<z.ZodString>;
8248
+ doNotPlace: z.ZodOptional<z.ZodBoolean>;
8249
+ pinAttributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
8250
+ providesPower: z.ZodOptional<z.ZodBoolean>;
8251
+ requiresPower: z.ZodOptional<z.ZodBoolean>;
8252
+ providesGround: z.ZodOptional<z.ZodBoolean>;
8253
+ requiresGround: z.ZodOptional<z.ZodBoolean>;
8254
+ providesVoltage: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
8255
+ requiresVoltage: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
8256
+ }, "strip", z.ZodTypeAny, {
8257
+ providesPower?: boolean | undefined;
8258
+ requiresPower?: boolean | undefined;
8259
+ providesGround?: boolean | undefined;
8260
+ requiresGround?: boolean | undefined;
8261
+ providesVoltage?: string | number | undefined;
8262
+ requiresVoltage?: string | number | undefined;
8263
+ }, {
8264
+ providesPower?: boolean | undefined;
8265
+ requiresPower?: boolean | undefined;
8266
+ providesGround?: boolean | undefined;
8267
+ requiresGround?: boolean | undefined;
8268
+ providesVoltage?: string | number | undefined;
8269
+ requiresVoltage?: string | number | undefined;
8270
+ }>>>;
8271
+ } & {
8272
+ voltage: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
8273
+ frequency: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
8274
+ peakToPeakVoltage: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
8275
+ waveShape: z.ZodOptional<z.ZodEnum<["sinewave", "square", "triangle", "sawtooth"]>>;
8276
+ phase: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
8277
+ }, "strip", z.ZodTypeAny, {
8278
+ name: string;
8279
+ children?: any;
8280
+ key?: any;
8281
+ footprint?: _tscircuit_props.FootprintProp | undefined;
8282
+ relative?: boolean | undefined;
8283
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | undefined;
8284
+ phase?: number | undefined;
8285
+ voltage?: number | undefined;
8286
+ pcbX?: number | undefined;
8287
+ pcbY?: number | undefined;
8288
+ frequency?: number | undefined;
8289
+ pcbRotation?: number | undefined;
8290
+ schX?: number | undefined;
8291
+ schY?: number | undefined;
8292
+ schRotation?: number | undefined;
8293
+ schRelative?: boolean | undefined;
8294
+ pcbRelative?: boolean | undefined;
8295
+ pinAttributes?: Record<string, {
8296
+ providesPower?: boolean | undefined;
8297
+ requiresPower?: boolean | undefined;
8298
+ providesGround?: boolean | undefined;
8299
+ requiresGround?: boolean | undefined;
8300
+ providesVoltage?: string | number | undefined;
8301
+ requiresVoltage?: string | number | undefined;
8302
+ }> | undefined;
8303
+ peakToPeakVoltage?: number | undefined;
8304
+ waveShape?: "square" | "sinewave" | "triangle" | "sawtooth" | undefined;
8305
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
8306
+ cadModel?: string | {
8307
+ stlUrl: string;
8308
+ rotationOffset?: number | {
8309
+ x: string | number;
8310
+ y: string | number;
8311
+ z: string | number;
8312
+ } | undefined;
8313
+ positionOffset?: {
8314
+ x: number;
8315
+ y: number;
8316
+ z: number;
8317
+ } | undefined;
8318
+ size?: {
8319
+ x: number;
8320
+ y: number;
8321
+ z: number;
8322
+ } | undefined;
8323
+ } | {
8324
+ objUrl: string;
8325
+ rotationOffset?: number | {
8326
+ x: string | number;
8327
+ y: string | number;
8328
+ z: string | number;
8329
+ } | undefined;
8330
+ positionOffset?: {
8331
+ x: number;
8332
+ y: number;
8333
+ z: number;
8334
+ } | undefined;
8335
+ size?: {
8336
+ x: number;
8337
+ y: number;
8338
+ z: number;
8339
+ } | undefined;
8340
+ mtlUrl?: string | undefined;
8341
+ } | {
8342
+ jscad: Record<string, any>;
8343
+ rotationOffset?: number | {
8344
+ x: string | number;
8345
+ y: string | number;
8346
+ z: string | number;
8347
+ } | undefined;
8348
+ positionOffset?: {
8349
+ x: number;
8350
+ y: number;
8351
+ z: number;
8352
+ } | undefined;
8353
+ size?: {
8354
+ x: number;
8355
+ y: number;
8356
+ z: number;
8357
+ } | undefined;
8358
+ } | null | undefined;
8359
+ symbolName?: string | undefined;
8360
+ doNotPlace?: boolean | undefined;
8361
+ }, {
8362
+ name: string;
8363
+ children?: any;
8364
+ key?: any;
8365
+ footprint?: _tscircuit_props.FootprintProp | undefined;
8366
+ relative?: boolean | undefined;
8367
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
8368
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
8369
+ } | undefined;
8370
+ phase?: string | number | undefined;
8371
+ voltage?: string | number | undefined;
8372
+ pcbX?: string | number | undefined;
8373
+ pcbY?: string | number | undefined;
8374
+ frequency?: string | number | undefined;
8375
+ pcbRotation?: string | number | undefined;
8376
+ schX?: string | number | undefined;
8377
+ schY?: string | number | undefined;
8378
+ schRotation?: string | number | undefined;
8379
+ schRelative?: boolean | undefined;
8380
+ pcbRelative?: boolean | undefined;
8381
+ pinAttributes?: Record<string, {
8382
+ providesPower?: boolean | undefined;
8383
+ requiresPower?: boolean | undefined;
8384
+ providesGround?: boolean | undefined;
8385
+ requiresGround?: boolean | undefined;
8386
+ providesVoltage?: string | number | undefined;
8387
+ requiresVoltage?: string | number | undefined;
8388
+ }> | undefined;
8389
+ peakToPeakVoltage?: string | number | undefined;
8390
+ waveShape?: "square" | "sinewave" | "triangle" | "sawtooth" | undefined;
8391
+ supplierPartNumbers?: Partial<Record<"jlcpcb" | "macrofab" | "pcbway" | "digikey" | "mouser" | "lcsc", string[]>> | undefined;
8392
+ cadModel?: string | {
8393
+ stlUrl: string;
8394
+ rotationOffset?: number | {
8395
+ x: string | number;
8396
+ y: string | number;
8397
+ z: string | number;
8398
+ } | undefined;
8399
+ positionOffset?: {
8400
+ x: string | number;
8401
+ y: string | number;
8402
+ z: string | number;
8403
+ } | undefined;
8404
+ size?: {
8405
+ x: string | number;
8406
+ y: string | number;
8407
+ z: string | number;
8408
+ } | undefined;
8409
+ } | {
8410
+ objUrl: string;
8411
+ rotationOffset?: number | {
8412
+ x: string | number;
8413
+ y: string | number;
8414
+ z: string | number;
8415
+ } | undefined;
8416
+ positionOffset?: {
8417
+ x: string | number;
8418
+ y: string | number;
8419
+ z: string | number;
8420
+ } | undefined;
8421
+ size?: {
8422
+ x: string | number;
8423
+ y: string | number;
8424
+ z: string | number;
8425
+ } | undefined;
8426
+ mtlUrl?: string | undefined;
8427
+ } | {
8428
+ jscad: Record<string, any>;
8429
+ rotationOffset?: number | {
8430
+ x: string | number;
8431
+ y: string | number;
8432
+ z: string | number;
8433
+ } | undefined;
8434
+ positionOffset?: {
8435
+ x: string | number;
8436
+ y: string | number;
8437
+ z: string | number;
8438
+ } | undefined;
8439
+ size?: {
8440
+ x: string | number;
8441
+ y: string | number;
8442
+ z: string | number;
8443
+ } | undefined;
8444
+ } | null | undefined;
8445
+ symbolName?: string | undefined;
8446
+ doNotPlace?: boolean | undefined;
8447
+ }>;
8448
+ sourceFtype: Ftype;
8449
+ };
8450
+ runRenderPhaseForChildren(phase: RenderPhase): void;
8451
+ doInitialPcbComponentRender(): void;
8452
+ initPorts(): void;
8453
+ doInitialSourceRender(): void;
8454
+ doInitialSimulationRender(): void;
8455
+ terminal1: Port;
8456
+ terminal2: Port;
8457
+ }
8458
+
7518
8459
  declare class Resistor extends NormalComponent<typeof resistorProps, PassivePorts> {
7519
8460
  get config(): {
7520
8461
  componentName: string;
@@ -16965,6 +17906,7 @@ interface TscircuitElements {
16965
17906
  switch: _tscircuit_props.SwitchProps;
16966
17907
  mosfet: _tscircuit_props.MosfetProps;
16967
17908
  testpoint: _tscircuit_props.TestpointProps;
17909
+ voltagesource: VoltageSourceProps;
16968
17910
  jscad: any;
16969
17911
  }
16970
17912
  declare module "react" {
@@ -16981,4 +17923,4 @@ declare module "react/jsx-runtime" {
16981
17923
  }
16982
17924
  }
16983
17925
 
16984
- export { type AsyncEffect, type AutorouterCompleteEvent, type AutorouterErrorEvent, type AutorouterEvent, type AutorouterProgressEvent, type AutoroutingEndEvent, type AutoroutingErrorEvent, type AutoroutingProgressEvent, type AutoroutingStartEvent, Battery, Board, Breakout, BreakoutPoint, Capacitor, Chip, Circuit, type ComponentWithPins, Constraint, Crystal, Cutout, Diode, FabricationNotePath, FabricationNoteText, Footprint, Fuse, type GenericConnectionsAndSelectorsSel, type GenericLocalAutorouter, Group, Hole, type IRenderable, Inductor, Jumper, Keepout, Led, type LocalCacheEngine, Mosfet, Net, NetLabel, NormalComponent, type Obstacle, PcbTrace, PinHeader, type PinLabelSpec, PlatedHole, Port, Potentiometer, PowerSource, PrimitiveComponent, Project, PushButton, type RenderPhase, type RenderPhaseFn, type RenderPhaseFunctions, type RenderPhaseStates, Renderable, Resistor, Resonator, RootCircuit, type RootCircuitEventName, SchematicBox, SchematicCell, SchematicRow, SchematicTable, SchematicText, type Sel, SilkscreenCircle, SilkscreenLine, SilkscreenPath, SilkscreenRect, SilkscreenText, type SimpleRouteConnection, type SimpleRouteJson, type SimplifiedPcbTrace, SmtPad, SolderJumper, Subcircuit, Switch, TestPoint, Trace, TraceHint, Transistor, Via, applyEditEvents, applyEditEventsToManualEditsFile, applyPcbEditEventsToManualEditsFile, applySchematicEditEventsToManualEditsFile, createUseComponent, getPhaseTimingsFromRenderEvents, getSimpleRouteJsonFromCircuitJson, normalizePinLabels, orderedRenderPhases, sel, useCapacitor, useChip, useDiode, useLed, useRenderedCircuit, useResistor };
17926
+ export { type AsyncEffect, type AutorouterCompleteEvent, type AutorouterErrorEvent, type AutorouterEvent, type AutorouterProgressEvent, type AutoroutingEndEvent, type AutoroutingErrorEvent, type AutoroutingProgressEvent, type AutoroutingStartEvent, Battery, Board, Breakout, BreakoutPoint, Capacitor, Chip, Circuit, type ComponentWithPins, Constraint, Crystal, Cutout, Diode, FabricationNotePath, FabricationNoteText, Footprint, Fuse, type GenericConnectionsAndSelectorsSel, type GenericLocalAutorouter, Group, Hole, type IRenderable, Inductor, Jumper, Keepout, Led, type LocalCacheEngine, Mosfet, Net, NetLabel, NormalComponent, type Obstacle, PcbTrace, PinHeader, type PinLabelSpec, PlatedHole, Port, Potentiometer, PowerSource, PrimitiveComponent, Project, PushButton, type RenderPhase, type RenderPhaseFn, type RenderPhaseFunctions, type RenderPhaseStates, Renderable, Resistor, Resonator, RootCircuit, type RootCircuitEventName, SchematicBox, SchematicCell, SchematicRow, SchematicTable, SchematicText, type Sel, SilkscreenCircle, SilkscreenLine, SilkscreenPath, SilkscreenRect, SilkscreenText, type SimpleRouteConnection, type SimpleRouteJson, type SimplifiedPcbTrace, SmtPad, SolderJumper, Subcircuit, Switch, TestPoint, Trace, TraceHint, Transistor, Via, VoltageSource, applyEditEvents, applyEditEventsToManualEditsFile, applyPcbEditEventsToManualEditsFile, applySchematicEditEventsToManualEditsFile, createUseComponent, getPhaseTimingsFromRenderEvents, getSimpleRouteJsonFromCircuitJson, normalizePinLabels, orderedRenderPhases, sel, useCapacitor, useChip, useDiode, useLed, useRenderedCircuit, useResistor };
package/dist/index.js CHANGED
@@ -60,7 +60,8 @@ __export(components_exports, {
60
60
  Trace: () => Trace3,
61
61
  TraceHint: () => TraceHint,
62
62
  Transistor: () => Transistor,
63
- Via: () => Via
63
+ Via: () => Via,
64
+ VoltageSource: () => VoltageSource
64
65
  });
65
66
 
66
67
  // lib/components/base-components/NormalComponent/NormalComponent.ts
@@ -4272,12 +4273,12 @@ var getObstaclesFromRoute = (route, source_trace_id, { viaDiameter = 0.5 } = {})
4272
4273
 
4273
4274
  // lib/utils/obstacles/generateApproximatingRects.ts
4274
4275
  function generateApproximatingRects(rotatedRect, numRects = 4) {
4275
- const { center, width, height, rotation: rotation2 } = rotatedRect;
4276
+ const { center, width, height, rotation: rotation4 } = rotatedRect;
4276
4277
  const rects = [];
4277
- const angleRad = rotation2 * Math.PI / 180;
4278
+ const angleRad = rotation4 * Math.PI / 180;
4278
4279
  const cosAngle = Math.cos(angleRad);
4279
4280
  const sinAngle = Math.sin(angleRad);
4280
- const normalizedRotation = (rotation2 % 360 + 360) % 360;
4281
+ const normalizedRotation = (rotation4 % 360 + 360) % 360;
4281
4282
  const sliceAlongWidth = height <= width ? normalizedRotation >= 45 && normalizedRotation < 135 || normalizedRotation >= 225 && normalizedRotation < 315 : normalizedRotation >= 135 && normalizedRotation < 225 || normalizedRotation >= 315 || normalizedRotation < 45;
4282
4283
  if (sliceAlongWidth) {
4283
4284
  const sliceWidth = width / numRects;
@@ -10452,7 +10453,7 @@ var Chip = class extends NormalComponent {
10452
10453
  if (!pinAttributes) return;
10453
10454
  let powerPort = null;
10454
10455
  let groundPort = null;
10455
- let voltage;
10456
+ let voltage2;
10456
10457
  const ports = this.selectAll("port");
10457
10458
  for (const port of ports) {
10458
10459
  for (const alias of port.getNameAndAliases()) {
@@ -10460,7 +10461,7 @@ var Chip = class extends NormalComponent {
10460
10461
  const attributes = pinAttributes[alias];
10461
10462
  if (attributes.providesPower) {
10462
10463
  powerPort = port;
10463
- voltage = attributes.providesVoltage;
10464
+ voltage2 = attributes.providesVoltage;
10464
10465
  }
10465
10466
  if (attributes.providesGround) {
10466
10467
  groundPort = port;
@@ -10468,7 +10469,7 @@ var Chip = class extends NormalComponent {
10468
10469
  }
10469
10470
  }
10470
10471
  }
10471
- if (!powerPort || !groundPort || voltage === void 0) {
10472
+ if (!powerPort || !groundPort || voltage2 === void 0) {
10472
10473
  return;
10473
10474
  }
10474
10475
  const powerSourcePort = db.source_port.get(powerPort.source_port_id);
@@ -10491,7 +10492,7 @@ var Chip = class extends NormalComponent {
10491
10492
  positive_source_net_id: powerNet.source_net_id,
10492
10493
  negative_source_port_id: groundPort.source_port_id,
10493
10494
  negative_source_net_id: groundNet.source_net_id,
10494
- voltage
10495
+ voltage: voltage2
10495
10496
  });
10496
10497
  }
10497
10498
  };
@@ -10558,8 +10559,8 @@ var Fuse = class extends NormalComponent {
10558
10559
  const rawCurrent = this._parsedProps.currentRating;
10559
10560
  const rawVoltage = this._parsedProps.voltageRating;
10560
10561
  const current = typeof rawCurrent === "string" ? parseFloat(rawCurrent) : rawCurrent;
10561
- const voltage = typeof rawVoltage === "string" ? parseFloat(rawVoltage) : rawVoltage;
10562
- return `${formatSiUnit2(current)}A / ${formatSiUnit2(voltage)}V`;
10562
+ const voltage2 = typeof rawVoltage === "string" ? parseFloat(rawVoltage) : rawVoltage;
10563
+ return `${formatSiUnit2(current)}A / ${formatSiUnit2(voltage2)}V`;
10563
10564
  }
10564
10565
  doInitialSourceRender() {
10565
10566
  const { db } = this.root;
@@ -10918,6 +10919,84 @@ var PowerSource = class extends NormalComponent {
10918
10919
  negative = this.portMap.pin2;
10919
10920
  };
10920
10921
 
10922
+ // lib/components/normal-components/VoltageSource.ts
10923
+ import { frequency, rotation as rotation2, voltage } from "circuit-json";
10924
+ import {
10925
+ commonComponentProps
10926
+ } from "@tscircuit/props";
10927
+ import { z as z12 } from "zod";
10928
+ var voltageSourceProps = commonComponentProps.extend({
10929
+ voltage: voltage.optional(),
10930
+ frequency: frequency.optional(),
10931
+ peakToPeakVoltage: voltage.optional(),
10932
+ waveShape: z12.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
10933
+ phase: rotation2.optional()
10934
+ });
10935
+ var VoltageSource = class extends NormalComponent {
10936
+ get config() {
10937
+ return {
10938
+ componentName: "VoltageSource",
10939
+ schematicSymbolName: "ac_voltmeter",
10940
+ zodProps: voltageSourceProps,
10941
+ sourceFtype: "simple_voltage_source"
10942
+ };
10943
+ }
10944
+ runRenderPhaseForChildren(phase) {
10945
+ if (phase.startsWith("Pcb")) {
10946
+ return;
10947
+ }
10948
+ for (const child of this.children) {
10949
+ child.runRenderPhaseForChildren(phase);
10950
+ child.runRenderPhase(phase);
10951
+ }
10952
+ }
10953
+ doInitialPcbComponentRender() {
10954
+ }
10955
+ initPorts() {
10956
+ super.initPorts({
10957
+ additionalAliases: {
10958
+ pin1: ["terminal1"],
10959
+ pin2: ["terminal2"]
10960
+ }
10961
+ });
10962
+ }
10963
+ doInitialSourceRender() {
10964
+ const { db } = this.root;
10965
+ const { _parsedProps: props } = this;
10966
+ const source_component = db.source_component.insert({
10967
+ ftype: "simple_voltage_source",
10968
+ name: this.name,
10969
+ voltage: props.voltage,
10970
+ frequency: props.frequency,
10971
+ peak_to_peak_voltage: props.peakToPeakVoltage,
10972
+ wave_shape: props.waveShape,
10973
+ phase: props.phase,
10974
+ supplier_part_numbers: props.supplierPartNumbers,
10975
+ are_pins_interchangeable: true
10976
+ });
10977
+ this.source_component_id = source_component.source_component_id;
10978
+ }
10979
+ doInitialSimulationRender() {
10980
+ const { db } = this.root;
10981
+ const { _parsedProps: props } = this;
10982
+ const terminal1Port = this.portMap.terminal1;
10983
+ const terminal2Port = this.portMap.terminal2;
10984
+ db.simulation_voltage_source.insert({
10985
+ type: "simulation_voltage_source",
10986
+ is_dc_source: false,
10987
+ terminal1_source_port_id: terminal1Port.source_port_id,
10988
+ terminal2_source_port_id: terminal2Port.source_port_id,
10989
+ voltage: props.voltage,
10990
+ frequency: props.frequency,
10991
+ peak_to_peak_voltage: props.peakToPeakVoltage,
10992
+ wave_shape: props.waveShape,
10993
+ phase: props.phase
10994
+ });
10995
+ }
10996
+ terminal1 = this.portMap.terminal1;
10997
+ terminal2 = this.portMap.terminal2;
10998
+ };
10999
+
10921
11000
  // lib/components/normal-components/Resistor.ts
10922
11001
  import { resistorProps } from "@tscircuit/props";
10923
11002
  import { formatSiUnit as formatSiUnit3 } from "format-si-unit";
@@ -12548,7 +12627,7 @@ import { identity as identity5 } from "transformation-matrix";
12548
12627
  var package_default = {
12549
12628
  name: "@tscircuit/core",
12550
12629
  type: "module",
12551
- version: "0.0.633",
12630
+ version: "0.0.634",
12552
12631
  types: "dist/index.d.ts",
12553
12632
  main: "dist/index.js",
12554
12633
  module: "dist/index.js",
@@ -12581,7 +12660,7 @@ var package_default = {
12581
12660
  "@tscircuit/matchpack": "^0.0.4",
12582
12661
  "@tscircuit/math-utils": "^0.0.18",
12583
12662
  "@tscircuit/miniflex": "^0.0.4",
12584
- "@tscircuit/props": "^0.0.286",
12663
+ "@tscircuit/props": "^0.0.287",
12585
12664
  "@tscircuit/schematic-autolayout": "^0.0.6",
12586
12665
  "@tscircuit/schematic-corpus": "^0.0.110",
12587
12666
  "@tscircuit/schematic-match-adapt": "^0.0.16",
@@ -12595,7 +12674,7 @@ var package_default = {
12595
12674
  "bun-match-svg": "0.0.12",
12596
12675
  "calculate-elbow": "^0.0.9",
12597
12676
  "chokidar-cli": "^3.0.0",
12598
- "circuit-json": "^0.0.230",
12677
+ "circuit-json": "^0.0.232",
12599
12678
  "circuit-json-to-bpc": "^0.0.13",
12600
12679
  "circuit-json-to-connectivity-map": "^0.0.22",
12601
12680
  "circuit-json-to-simple-3d": "^0.0.6",
@@ -13093,6 +13172,7 @@ export {
13093
13172
  TraceHint,
13094
13173
  Transistor,
13095
13174
  Via,
13175
+ VoltageSource,
13096
13176
  applyEditEvents,
13097
13177
  applyEditEventsToManualEditsFile,
13098
13178
  applyPcbEditEventsToManualEditsFile,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tscircuit/core",
3
3
  "type": "module",
4
- "version": "0.0.634",
4
+ "version": "0.0.635",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -34,7 +34,7 @@
34
34
  "@tscircuit/matchpack": "^0.0.4",
35
35
  "@tscircuit/math-utils": "^0.0.18",
36
36
  "@tscircuit/miniflex": "^0.0.4",
37
- "@tscircuit/props": "^0.0.286",
37
+ "@tscircuit/props": "^0.0.287",
38
38
  "@tscircuit/schematic-autolayout": "^0.0.6",
39
39
  "@tscircuit/schematic-corpus": "^0.0.110",
40
40
  "@tscircuit/schematic-match-adapt": "^0.0.16",
@@ -48,7 +48,7 @@
48
48
  "bun-match-svg": "0.0.12",
49
49
  "calculate-elbow": "^0.0.9",
50
50
  "chokidar-cli": "^3.0.0",
51
- "circuit-json": "^0.0.230",
51
+ "circuit-json": "^0.0.232",
52
52
  "circuit-json-to-bpc": "^0.0.13",
53
53
  "circuit-json-to-connectivity-map": "^0.0.22",
54
54
  "circuit-json-to-simple-3d": "^0.0.6",