@tscircuit/props 0.0.608 → 0.0.610

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2237,8 +2237,14 @@ export interface PlatformConfig {
2237
2237
  */
2238
2238
  allowLegacyAutorouters?: boolean;
2239
2239
 
2240
- // TODO this follows a subset of the localStorage interface
2241
- localCacheEngine?: any;
2240
+ /** A localStorage-compatible cache used by render phases and engines. */
2241
+ localCacheEngine?: LocalCacheEngine;
2242
+
2243
+ /**
2244
+ * Analyze rendered and supplier footprints so manufacturing exporters can
2245
+ * align their semantic pin 1 orientations.
2246
+ */
2247
+ enablePartOrientationAnalysis?: boolean;
2242
2248
 
2243
2249
  registryApiUrl?: string;
2244
2250
 
package/dist/index.d.ts CHANGED
@@ -101164,6 +101164,18 @@ interface PillSmtPadProps extends Omit<PcbLayoutProps, "pcbRotation"> {
101164
101164
  solderMaskMargin?: Distance;
101165
101165
  solderPasteMargin?: Distance;
101166
101166
  }
101167
+ interface RotatedPillSmtPadProps extends Omit<PcbLayoutProps, "pcbRotation"> {
101168
+ name?: string;
101169
+ shape: "rotated_pill";
101170
+ width: Distance;
101171
+ height: Distance;
101172
+ radius: Distance;
101173
+ ccwRotation: number;
101174
+ portHints?: PortHints;
101175
+ coveredWithSolderMask?: boolean;
101176
+ solderMaskMargin?: Distance;
101177
+ solderPasteMargin?: Distance;
101178
+ }
101167
101179
  interface PolygonSmtPadProps extends Omit<PcbLayoutProps, "pcbRotation"> {
101168
101180
  name?: string;
101169
101181
  shape: "polygon";
@@ -101173,7 +101185,7 @@ interface PolygonSmtPadProps extends Omit<PcbLayoutProps, "pcbRotation"> {
101173
101185
  solderMaskMargin?: Distance;
101174
101186
  solderPasteMargin?: Distance;
101175
101187
  }
101176
- type SmtPadProps = RectSmtPadProps | CircleSmtPadProps | RotatedRectSmtPadProps | PillSmtPadProps | PolygonSmtPadProps;
101188
+ type SmtPadProps = RectSmtPadProps | CircleSmtPadProps | RotatedRectSmtPadProps | PillSmtPadProps | RotatedPillSmtPadProps | PolygonSmtPadProps;
101177
101189
  declare const rectSmtPadProps: z.ZodObject<Omit<{
101178
101190
  pcbX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
101179
101191
  pcbY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
@@ -101838,6 +101850,169 @@ declare const pillSmtPadProps: z.ZodObject<Omit<{
101838
101850
  coveredWithSolderMask?: boolean | undefined;
101839
101851
  solderPasteMargin?: string | number | undefined;
101840
101852
  }>;
101853
+ declare const rotatedPillSmtPadProps: z.ZodObject<Omit<{
101854
+ pcbX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
101855
+ pcbY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
101856
+ pcbLeftEdgeX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
101857
+ pcbRightEdgeX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
101858
+ pcbTopEdgeY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
101859
+ pcbBottomEdgeY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
101860
+ pcbOffsetX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101861
+ pcbOffsetY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101862
+ pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101863
+ pcbPositionAnchor: z.ZodOptional<z.ZodString>;
101864
+ pcbPositionMode: z.ZodOptional<z.ZodEnum<["relative_to_group_anchor", "auto", "relative_to_board_anchor", "relative_to_component_anchor"]>>;
101865
+ shouldBeOnEdgeOfBoard: z.ZodOptional<z.ZodBoolean>;
101866
+ layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6", "inner7", "inner8"]>, z.ZodObject<{
101867
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6", "inner7", "inner8"]>;
101868
+ }, "strip", z.ZodTypeAny, {
101869
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8";
101870
+ }, {
101871
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8";
101872
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8" | {
101873
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8";
101874
+ }>>;
101875
+ pcbMarginTop: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101876
+ pcbMarginRight: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101877
+ pcbMarginBottom: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101878
+ pcbMarginLeft: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101879
+ pcbMarginX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101880
+ pcbMarginY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101881
+ pcbStyle: z.ZodOptional<z.ZodObject<{
101882
+ silkscreenFontSize: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101883
+ viaPadDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101884
+ viaHoleDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101885
+ silkscreenTextPosition: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["centered", "outside", "none"]>, z.ZodObject<{
101886
+ offsetX: z.ZodNumber;
101887
+ offsetY: z.ZodNumber;
101888
+ }, "strip", z.ZodTypeAny, {
101889
+ offsetX: number;
101890
+ offsetY: number;
101891
+ }, {
101892
+ offsetX: number;
101893
+ offsetY: number;
101894
+ }>]>>;
101895
+ silkscreenTextVisibility: z.ZodOptional<z.ZodEnum<["hidden", "visible", "inherit"]>>;
101896
+ }, "strip", z.ZodTypeAny, {
101897
+ silkscreenFontSize?: number | undefined;
101898
+ viaPadDiameter?: number | undefined;
101899
+ viaHoleDiameter?: number | undefined;
101900
+ silkscreenTextPosition?: "centered" | "outside" | "none" | {
101901
+ offsetX: number;
101902
+ offsetY: number;
101903
+ } | undefined;
101904
+ silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
101905
+ }, {
101906
+ silkscreenFontSize?: string | number | undefined;
101907
+ viaPadDiameter?: string | number | undefined;
101908
+ viaHoleDiameter?: string | number | undefined;
101909
+ silkscreenTextPosition?: "centered" | "outside" | "none" | {
101910
+ offsetX: number;
101911
+ offsetY: number;
101912
+ } | undefined;
101913
+ silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
101914
+ }>>;
101915
+ pcbSx: z.ZodOptional<z.ZodType<PcbSx, z.ZodTypeDef, PcbSx>>;
101916
+ pcbRelative: z.ZodOptional<z.ZodBoolean>;
101917
+ relative: z.ZodOptional<z.ZodBoolean>;
101918
+ }, "pcbRotation"> & {
101919
+ name: z.ZodOptional<z.ZodString>;
101920
+ shape: z.ZodLiteral<"rotated_pill">;
101921
+ width: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
101922
+ height: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
101923
+ radius: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
101924
+ ccwRotation: z.ZodNumber;
101925
+ portHints: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">>;
101926
+ coveredWithSolderMask: z.ZodOptional<z.ZodBoolean>;
101927
+ solderMaskMargin: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101928
+ solderPasteMargin: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
101929
+ }, "strip", z.ZodTypeAny, {
101930
+ shape: "rotated_pill";
101931
+ width: number;
101932
+ height: number;
101933
+ radius: number;
101934
+ ccwRotation: number;
101935
+ name?: string | undefined;
101936
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8" | undefined;
101937
+ pcbX?: string | number | undefined;
101938
+ pcbY?: string | number | undefined;
101939
+ pcbLeftEdgeX?: string | number | undefined;
101940
+ pcbRightEdgeX?: string | number | undefined;
101941
+ pcbTopEdgeY?: string | number | undefined;
101942
+ pcbBottomEdgeY?: string | number | undefined;
101943
+ pcbOffsetX?: number | undefined;
101944
+ pcbOffsetY?: number | undefined;
101945
+ pcbPositionAnchor?: string | undefined;
101946
+ pcbPositionMode?: "relative_to_group_anchor" | "auto" | "relative_to_board_anchor" | "relative_to_component_anchor" | undefined;
101947
+ shouldBeOnEdgeOfBoard?: boolean | undefined;
101948
+ pcbMarginTop?: number | undefined;
101949
+ pcbMarginRight?: number | undefined;
101950
+ pcbMarginBottom?: number | undefined;
101951
+ pcbMarginLeft?: number | undefined;
101952
+ pcbMarginX?: number | undefined;
101953
+ pcbMarginY?: number | undefined;
101954
+ pcbStyle?: {
101955
+ silkscreenFontSize?: number | undefined;
101956
+ viaPadDiameter?: number | undefined;
101957
+ viaHoleDiameter?: number | undefined;
101958
+ silkscreenTextPosition?: "centered" | "outside" | "none" | {
101959
+ offsetX: number;
101960
+ offsetY: number;
101961
+ } | undefined;
101962
+ silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
101963
+ } | undefined;
101964
+ pcbSx?: PcbSx | undefined;
101965
+ pcbRelative?: boolean | undefined;
101966
+ relative?: boolean | undefined;
101967
+ portHints?: (string | number)[] | undefined;
101968
+ solderMaskMargin?: number | undefined;
101969
+ coveredWithSolderMask?: boolean | undefined;
101970
+ solderPasteMargin?: number | undefined;
101971
+ }, {
101972
+ shape: "rotated_pill";
101973
+ width: string | number;
101974
+ height: string | number;
101975
+ radius: string | number;
101976
+ ccwRotation: number;
101977
+ name?: string | undefined;
101978
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8" | {
101979
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8";
101980
+ } | undefined;
101981
+ pcbX?: string | number | undefined;
101982
+ pcbY?: string | number | undefined;
101983
+ pcbLeftEdgeX?: string | number | undefined;
101984
+ pcbRightEdgeX?: string | number | undefined;
101985
+ pcbTopEdgeY?: string | number | undefined;
101986
+ pcbBottomEdgeY?: string | number | undefined;
101987
+ pcbOffsetX?: string | number | undefined;
101988
+ pcbOffsetY?: string | number | undefined;
101989
+ pcbPositionAnchor?: string | undefined;
101990
+ pcbPositionMode?: "relative_to_group_anchor" | "auto" | "relative_to_board_anchor" | "relative_to_component_anchor" | undefined;
101991
+ shouldBeOnEdgeOfBoard?: boolean | undefined;
101992
+ pcbMarginTop?: string | number | undefined;
101993
+ pcbMarginRight?: string | number | undefined;
101994
+ pcbMarginBottom?: string | number | undefined;
101995
+ pcbMarginLeft?: string | number | undefined;
101996
+ pcbMarginX?: string | number | undefined;
101997
+ pcbMarginY?: string | number | undefined;
101998
+ pcbStyle?: {
101999
+ silkscreenFontSize?: string | number | undefined;
102000
+ viaPadDiameter?: string | number | undefined;
102001
+ viaHoleDiameter?: string | number | undefined;
102002
+ silkscreenTextPosition?: "centered" | "outside" | "none" | {
102003
+ offsetX: number;
102004
+ offsetY: number;
102005
+ } | undefined;
102006
+ silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
102007
+ } | undefined;
102008
+ pcbSx?: PcbSx | undefined;
102009
+ pcbRelative?: boolean | undefined;
102010
+ relative?: boolean | undefined;
102011
+ portHints?: (string | number)[] | undefined;
102012
+ solderMaskMargin?: string | number | undefined;
102013
+ coveredWithSolderMask?: boolean | undefined;
102014
+ solderPasteMargin?: string | number | undefined;
102015
+ }>;
101841
102016
  declare const polygonSmtPadProps: z.ZodObject<Omit<{
101842
102017
  pcbX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
101843
102018
  pcbY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
@@ -102732,6 +102907,168 @@ declare const smtPadProps: z.ZodDiscriminatedUnion<"shape", [z.ZodObject<Omit<{
102732
102907
  pcbSx: z.ZodOptional<z.ZodType<PcbSx, z.ZodTypeDef, PcbSx>>;
102733
102908
  pcbRelative: z.ZodOptional<z.ZodBoolean>;
102734
102909
  relative: z.ZodOptional<z.ZodBoolean>;
102910
+ }, "pcbRotation"> & {
102911
+ name: z.ZodOptional<z.ZodString>;
102912
+ shape: z.ZodLiteral<"rotated_pill">;
102913
+ width: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
102914
+ height: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
102915
+ radius: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>;
102916
+ ccwRotation: z.ZodNumber;
102917
+ portHints: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">>;
102918
+ coveredWithSolderMask: z.ZodOptional<z.ZodBoolean>;
102919
+ solderMaskMargin: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
102920
+ solderPasteMargin: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
102921
+ }, "strip", z.ZodTypeAny, {
102922
+ shape: "rotated_pill";
102923
+ width: number;
102924
+ height: number;
102925
+ radius: number;
102926
+ ccwRotation: number;
102927
+ name?: string | undefined;
102928
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8" | undefined;
102929
+ pcbX?: string | number | undefined;
102930
+ pcbY?: string | number | undefined;
102931
+ pcbLeftEdgeX?: string | number | undefined;
102932
+ pcbRightEdgeX?: string | number | undefined;
102933
+ pcbTopEdgeY?: string | number | undefined;
102934
+ pcbBottomEdgeY?: string | number | undefined;
102935
+ pcbOffsetX?: number | undefined;
102936
+ pcbOffsetY?: number | undefined;
102937
+ pcbPositionAnchor?: string | undefined;
102938
+ pcbPositionMode?: "relative_to_group_anchor" | "auto" | "relative_to_board_anchor" | "relative_to_component_anchor" | undefined;
102939
+ shouldBeOnEdgeOfBoard?: boolean | undefined;
102940
+ pcbMarginTop?: number | undefined;
102941
+ pcbMarginRight?: number | undefined;
102942
+ pcbMarginBottom?: number | undefined;
102943
+ pcbMarginLeft?: number | undefined;
102944
+ pcbMarginX?: number | undefined;
102945
+ pcbMarginY?: number | undefined;
102946
+ pcbStyle?: {
102947
+ silkscreenFontSize?: number | undefined;
102948
+ viaPadDiameter?: number | undefined;
102949
+ viaHoleDiameter?: number | undefined;
102950
+ silkscreenTextPosition?: "centered" | "outside" | "none" | {
102951
+ offsetX: number;
102952
+ offsetY: number;
102953
+ } | undefined;
102954
+ silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
102955
+ } | undefined;
102956
+ pcbSx?: PcbSx | undefined;
102957
+ pcbRelative?: boolean | undefined;
102958
+ relative?: boolean | undefined;
102959
+ portHints?: (string | number)[] | undefined;
102960
+ solderMaskMargin?: number | undefined;
102961
+ coveredWithSolderMask?: boolean | undefined;
102962
+ solderPasteMargin?: number | undefined;
102963
+ }, {
102964
+ shape: "rotated_pill";
102965
+ width: string | number;
102966
+ height: string | number;
102967
+ radius: string | number;
102968
+ ccwRotation: number;
102969
+ name?: string | undefined;
102970
+ layer?: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8" | {
102971
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8";
102972
+ } | undefined;
102973
+ pcbX?: string | number | undefined;
102974
+ pcbY?: string | number | undefined;
102975
+ pcbLeftEdgeX?: string | number | undefined;
102976
+ pcbRightEdgeX?: string | number | undefined;
102977
+ pcbTopEdgeY?: string | number | undefined;
102978
+ pcbBottomEdgeY?: string | number | undefined;
102979
+ pcbOffsetX?: string | number | undefined;
102980
+ pcbOffsetY?: string | number | undefined;
102981
+ pcbPositionAnchor?: string | undefined;
102982
+ pcbPositionMode?: "relative_to_group_anchor" | "auto" | "relative_to_board_anchor" | "relative_to_component_anchor" | undefined;
102983
+ shouldBeOnEdgeOfBoard?: boolean | undefined;
102984
+ pcbMarginTop?: string | number | undefined;
102985
+ pcbMarginRight?: string | number | undefined;
102986
+ pcbMarginBottom?: string | number | undefined;
102987
+ pcbMarginLeft?: string | number | undefined;
102988
+ pcbMarginX?: string | number | undefined;
102989
+ pcbMarginY?: string | number | undefined;
102990
+ pcbStyle?: {
102991
+ silkscreenFontSize?: string | number | undefined;
102992
+ viaPadDiameter?: string | number | undefined;
102993
+ viaHoleDiameter?: string | number | undefined;
102994
+ silkscreenTextPosition?: "centered" | "outside" | "none" | {
102995
+ offsetX: number;
102996
+ offsetY: number;
102997
+ } | undefined;
102998
+ silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
102999
+ } | undefined;
103000
+ pcbSx?: PcbSx | undefined;
103001
+ pcbRelative?: boolean | undefined;
103002
+ relative?: boolean | undefined;
103003
+ portHints?: (string | number)[] | undefined;
103004
+ solderMaskMargin?: string | number | undefined;
103005
+ coveredWithSolderMask?: boolean | undefined;
103006
+ solderPasteMargin?: string | number | undefined;
103007
+ }>, z.ZodObject<Omit<{
103008
+ pcbX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
103009
+ pcbY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
103010
+ pcbLeftEdgeX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
103011
+ pcbRightEdgeX: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
103012
+ pcbTopEdgeY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
103013
+ pcbBottomEdgeY: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>]>>;
103014
+ pcbOffsetX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103015
+ pcbOffsetY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103016
+ pcbRotation: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103017
+ pcbPositionAnchor: z.ZodOptional<z.ZodString>;
103018
+ pcbPositionMode: z.ZodOptional<z.ZodEnum<["relative_to_group_anchor", "auto", "relative_to_board_anchor", "relative_to_component_anchor"]>>;
103019
+ shouldBeOnEdgeOfBoard: z.ZodOptional<z.ZodBoolean>;
103020
+ layer: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6", "inner7", "inner8"]>, z.ZodObject<{
103021
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6", "inner7", "inner8"]>;
103022
+ }, "strip", z.ZodTypeAny, {
103023
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8";
103024
+ }, {
103025
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8";
103026
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8" | {
103027
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | "inner7" | "inner8";
103028
+ }>>;
103029
+ pcbMarginTop: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103030
+ pcbMarginRight: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103031
+ pcbMarginBottom: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103032
+ pcbMarginLeft: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103033
+ pcbMarginX: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103034
+ pcbMarginY: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103035
+ pcbStyle: z.ZodOptional<z.ZodObject<{
103036
+ silkscreenFontSize: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103037
+ viaPadDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103038
+ viaHoleDiameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
103039
+ silkscreenTextPosition: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["centered", "outside", "none"]>, z.ZodObject<{
103040
+ offsetX: z.ZodNumber;
103041
+ offsetY: z.ZodNumber;
103042
+ }, "strip", z.ZodTypeAny, {
103043
+ offsetX: number;
103044
+ offsetY: number;
103045
+ }, {
103046
+ offsetX: number;
103047
+ offsetY: number;
103048
+ }>]>>;
103049
+ silkscreenTextVisibility: z.ZodOptional<z.ZodEnum<["hidden", "visible", "inherit"]>>;
103050
+ }, "strip", z.ZodTypeAny, {
103051
+ silkscreenFontSize?: number | undefined;
103052
+ viaPadDiameter?: number | undefined;
103053
+ viaHoleDiameter?: number | undefined;
103054
+ silkscreenTextPosition?: "centered" | "outside" | "none" | {
103055
+ offsetX: number;
103056
+ offsetY: number;
103057
+ } | undefined;
103058
+ silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
103059
+ }, {
103060
+ silkscreenFontSize?: string | number | undefined;
103061
+ viaPadDiameter?: string | number | undefined;
103062
+ viaHoleDiameter?: string | number | undefined;
103063
+ silkscreenTextPosition?: "centered" | "outside" | "none" | {
103064
+ offsetX: number;
103065
+ offsetY: number;
103066
+ } | undefined;
103067
+ silkscreenTextVisibility?: "hidden" | "visible" | "inherit" | undefined;
103068
+ }>>;
103069
+ pcbSx: z.ZodOptional<z.ZodType<PcbSx, z.ZodTypeDef, PcbSx>>;
103070
+ pcbRelative: z.ZodOptional<z.ZodBoolean>;
103071
+ relative: z.ZodOptional<z.ZodBoolean>;
102735
103072
  }, "pcbRotation"> & {
102736
103073
  name: z.ZodOptional<z.ZodString>;
102737
103074
  shape: z.ZodLiteral<"polygon">;
@@ -192714,6 +193051,11 @@ interface AutorouterInstance {
192714
193051
  interface AutorouterDefinition {
192715
193052
  createAutorouter: (simpleRouteJson: SimpleRouteJson, opts?: Record<string, unknown>) => AutorouterInstance | Promise<AutorouterInstance>;
192716
193053
  }
193054
+ interface LocalCacheEngine {
193055
+ getItem(key: string): string | Promise<string | null> | null;
193056
+ setItem(key: string, value: string): void | Promise<void>;
193057
+ removeItem?(key: string): void | Promise<void>;
193058
+ }
192717
193059
  /** e.g. "kicad", this is the prefix used to reference libraries in footprinter strings e.g. kicad:Resistor_0402 **/
192718
193060
  type FootprintLibraryPrefix = string;
192719
193061
  /** e.g. "kicad_mod", used to reference file extensions for loaders **/
@@ -192733,7 +193075,13 @@ interface PlatformConfig {
192733
193075
  * Platforms should only enable this temporarily while migrating projects.
192734
193076
  */
192735
193077
  allowLegacyAutorouters?: boolean;
192736
- localCacheEngine?: any;
193078
+ /** A localStorage-compatible cache used by render phases and engines. */
193079
+ localCacheEngine?: LocalCacheEngine;
193080
+ /**
193081
+ * Analyze rendered and supplier footprints so manufacturing exporters can
193082
+ * align their semantic pin 1 orientations.
193083
+ */
193084
+ enablePartOrientationAnalysis?: boolean;
192737
193085
  registryApiUrl?: string;
192738
193086
  cloudAutorouterUrl?: string;
192739
193087
  projectName?: string;
@@ -192772,4 +193120,4 @@ interface ProjectConfig extends Pick<PlatformConfig, "projectName" | "projectBas
192772
193120
  }
192773
193121
  declare const projectConfig: z.ZodType<ProjectConfig>;
192774
193122
 
192775
- export { type AmmeterPinLabels, type AmmeterProps, type AnalogAcSweepSimulationProps, type AnalogAnalysisSimulationBaseProps, type AnalogCapacitanceSweepParameterProps, type AnalogCurrentSweepParameterProps, type AnalogDcOperatingPointSimulationProps, type AnalogDcSweepSimulationProps, type AnalogInductanceSweepParameterProps, type AnalogResistanceSweepParameterProps, type AnalogSimulationProps, type AnalogSweepParameterProps, type AnalogTransientSimulationProps, type AnalogVoltageSweepParameterProps, type AssemblyDeviceProps, type AssemblyDevicePropsInput, type AutocompleteString, type AutorouterConfig, type AutorouterDefinition, type AutorouterInstance, type AutorouterPreset, type AutorouterProp, type AutoroutingPhaseProps, type BaseGroupProps, type BaseManualEditEvent, type BaseManualEditEventInput, type BasicFootprint, type BatteryPinLabels, type BatteryProps, type BoardColor, type BoardColorPreset, type BoardProps, type Border, type BreakoutPointProps, type BreakoutProps, type BusFanoutDirection, type BusName, type BusProps, type CadAssemblyProps, type CadAssemblyPropsInput, type CadModelAxisDirection, type CadModelBase, type CadModelFootprinterString, type CadModelGlb, type CadModelGltf, type CadModelJscad, type CadModelObj, type CadModelProp, type CadModelProps, type CadModelPropsInput, type CadModelStep, type CadModelStl, type CadModelWrl, type CapacitorPinLabels, type CapacitorProps, type ChipConnections, type ChipPinLabels, type ChipProps, type ChipPropsSU, type CircleCutoutProps, type CircleEnclosureCutoutApertureProps, type CircleHoleProps, type CirclePlatedHoleProps, type CircleShapeProps, type CircleSmtPadProps, type CircleSolderPasteProps, type CircuitJson, type CircularHoleWithRectPlatedProps, type CommonComponentProps, type CommonLayoutProps, type CommonShapeProps, type ComponentProps, type ConnectionTarget, type Connections, type ConnectorProps, type ConstrainedLayoutProps, type ConstraintProps, type CopperPourProps, type CopperPourPropsInput, type CopperTextProps, type CourtyardCircleProps, type CourtyardOutlineProps, type CourtyardPillProps, type CourtyardRectProps, type CrystalPinLabels, type CrystalProps, type CurrentSourcePinLabels, type CurrentSourceProps, type CustomDrcCheckContext, type CustomDrcCheckFn, type CustomDrcCheckInput, type CustomDrcConnectable, type CustomDrcSelect, type CustomDrcSelectAll, type CutoutProps, type CutoutPropsInput, type DifferentialPairProps, type DiodePinLabels, type DiodePinLabelsProp, type DiodeProps, type Direction, type DirectionAlongEdge, type DirectionalFanoutBoundaryPadding, type DrcCheckProps, type EditPcbComponentLocationEvent, type EditPcbComponentLocationEventInput, type EditPcbGroupLocationEvent, type EditPcbGroupLocationEventInput, type EditSchematicComponentLocationEvent, type EditSchematicComponentLocationEventInput, type EditSchematicGroupLocationEvent, type EditSchematicGroupLocationEventInput, type EditTraceHintEvent, type EditTraceHintEventInput, type EnclosureCutoutApertureProps, type EnclosureCutoutApertureShape, type EnclosureFdmBoxProps, type EnclosureFdmBoxPropsInput, type FabricationNoteDimensionProps, type FabricationNoteDimensionPropsInput, type FabricationNotePathProps, type FabricationNoteRectProps, type FabricationNoteTextProps, type FabricationNoteTextPropsInput, type FanoutBoundaryPadding, type FanoutPourNetMap, type FanoutProps, type FiducialProps, type FootprintFileParserEntry, type FootprintInsertionDirection, type FootprintLibraryResult, type FootprintProp, type FootprintProps, type FootprintPropsInput, type FootprintSoupElements, type FootprinterAutocompleteString, type FootprinterStringExample, type FusePinLabels, type FuseProps, type GroupProps, type HoleProps, type HoleWithPolygonPadPlatedHoleProps, type InductorPinLabels, type InductorProps, type InferredChipProps, type InferredConstrainedLayoutProps, type InferredDiodeProps, type InferredFuseProps, type InferredHoleProps, type InferredSchematicArcProps, type InferredSchematicBoxProps, type InferredSchematicCircleProps, type InferredSchematicLineProps, type InferredSchematicPathProps, type InferredSchematicRectProps, type InferredSchematicSectionProps, type InferredSchematicSheetProps, type InferredSchematicSymbolProps, type InferredSchematicTextProps, type InferredSmtPadProps, type InferredSolderPasteProps, type InferredSwitchProps, type InferredTestpointProps, type InferredViaProps, type InterconnectProps, type InternalCircuitElement, type InternalCircuitProps, type JlcpcbAutocompleteStringPath, type JlcpcbKnownPartNumber, type JumperProps, type KicadAt, type KicadAutocompleteStringPath, type KicadEffects, type KicadFont, type KicadFootprintAttributes, type KicadFootprintMetadata, type KicadFootprintModel, type KicadFootprintPad, type KicadFootprintProperties, type KicadPath, type KicadPinElectricalType, type KicadPinGraphicStyle, type KicadPinMetadata, type KicadProperty, type KicadSymbolEffects, type KicadSymbolMetadata, type KicadSymbolPinNames, type KicadSymbolPinNumbers, type KicadSymbolProperties, type KicadSymbolProperty, type LayoutConfig, type LedPinLabels, type LedProps, type ManualEditEvent, type ManualEditEventInput, type ManualEditsFile, type ManualEditsFileInput, type ManualPcbPlacement, type ManualPcbPlacementInput, type ManualSchematicPlacement, type ManualSchematicPlacementInput, type ManualTraceHint, type ManualTraceHintInput, type MosfetPinLabels, type MosfetProps, type MountedBoardProps, type NetAliasProps, type NetLabelProps, type NetProps, type NinePointAnchor, type NonSubcircuitGroupProps, type OpAmpPinLabels, type OpAmpProps, type OvalHoleProps, type OvalPlatedHoleProps, type PanelProps, type ParsedEnclosureCutoutApertureProps, type PartsEngine, type PcbKeepoutProps, type PcbLayoutProps, type PcbNoteDimensionProps, type PcbNoteDimensionPropsInput, type PcbNoteLineProps, type PcbNoteLinePropsInput, type PcbNotePathProps, type PcbNotePathPropsInput, type PcbNoteRectProps, type PcbNoteRectPropsInput, type PcbNoteTextProps, type PcbNoteTextPropsInput, type PcbPositionMode, type PcbRouteCache, type PcbSameXConstraint, type PcbSameYConstraint, type PcbStyle, type PcbSx, type PcbSxSelector, type PcbSxValue, type PcbTraceProps, type PcbXDistConstraint, type PcbYDistConstraint, type PillEnclosureCutoutApertureProps, type PillHoleProps, type PillPlatedHoleProps, type PillShapeProps, type PillSmtPadProps, type PillWithRectPadPlatedHoleProps, type PinAttributeMap, type PinCapability, type PinCompatibleVariant, type PinHeaderProps, type PinLabelFromPinLabelMap, type PinLabelsProp, type PinSideDefinition, type PinSideDefinitionInput, type PinVariant, type PinoutProps, type PlatedHoleProps, type PlatformConfig, type PolygonCutoutProps, type PolygonSmtPadProps, type PortHints, type PortProps, type PositionMode, type PotentiometerPinLabels, type PotentiometerPinVariant, type PotentiometerProps, type PowerSourceProps, type ProjectConfig, type PushButtonProps, type RectCutoutProps, type RectEnclosureCutoutApertureProps, type RectHoleProps, type RectShapeProps, type RectSmtPadProps, type RectSolderPasteProps, type ResistorPinLabels, type ResistorProps, type ResonatorPinVariant, type ResonatorProps, type RotatedRectSmtPadProps, type RoutingTolerances, type SchStyle, type SchematicArcProps, type SchematicBoxProps, type SchematicCellProps, type SchematicCircleProps, type SchematicLineProps, type SchematicOrientation, type SchematicPathProps, type SchematicPinArrangement, type SchematicPinArrangementWithPinCounts, type SchematicPinArrangementWithSides, type SchematicPinArrangementWithSizes, type SchematicPinLabel, type SchematicPinStyle, type SchematicPortArrangement, type SchematicPortArrangementWithPinCounts, type SchematicPortArrangementWithSides, type SchematicPortArrangementWithSizes, type SchematicRectProps, type SchematicRowProps, type SchematicSectionProps, type SchematicSheetProps, type SchematicSymbolProps, type SchematicSymbolSize, type SchematicTableProps, type SchematicTextProps, type SelectionResult, type SelectionResultComponent, type SelectionResultNet, type SelectionResultPort, type Selectors, type SilkscreenCircleProps, type SilkscreenGraphicProps, type SilkscreenLineProps, type SilkscreenPathProps, type SilkscreenRectProps, type SilkscreenTextProps, type SimpleRouteJson, type SmtPadProps, type SolderJumperProps, type SolderPasteProps, type SpiceEngine, type SpiceEngineSimulationResult, type SpiceModelElement, type SpiceModelProps, type SpiceOptions, type StampboardProps, type SubcircuitGroupProps, type SubcircuitGroupPropsWithBool, type SubcircuitProps, type SubpanelProps, type SupplierName, type SupplierPartNumbers, type SupplierProps, type SwitchProps, type SymbolProp, type SymbolProps, type SymbolPropsInput, type TestpointConnections, type TestpointPinLabels, type TestpointProps, type ToolingrailProps, type TraceHintProps, type TraceProps, type TransistorPinLabels, type TransistorProps, type ViaProps, type VoltageProbeProps, type VoltageSourcePinLabels, type VoltageSourceProps, type WaveShape, ammeterPinLabels, ammeterPins, ammeterProps, analogAcSweepSimulationProps, analogAnalysisSimulationBaseProps, analogCapacitanceSweepParameterProps, analogCurrentSweepParameterProps, analogDcOperatingPointSimulationProps, analogDcSweepSimulationProps, analogInductanceSweepParameterProps, analogResistanceSweepParameterProps, analogSimulationProps, analogSweepParameterProps, analogTransientSimulationProps, analogVoltageSweepParameterProps, assemblyDeviceProps, assemblyProps, autorouterConfig, autorouterEffortLevel, autorouterPreset, autorouterProp, autoroutingPhaseProps, baseGroupProps, base_manual_edit_event, batteryPins, batteryProps, boardProps, border, breakoutPointProps, breakoutProps, bugProps, busFanoutDirection, busProps, cadModelAxisDirection, cadModelAxisDirections, cadModelBase, cadModelGlb, cadModelGltf, cadModelJscad, cadModelObj, cadModelProp, cadModelStep, cadModelStl, cadModelWrl, cadassemblyProps, cadmodelProps, capacitorPinLabels, capacitorPins, capacitorProps, chipProps, circleCutoutProps, circleShapeProps, circleSmtPadProps, circleSolderPasteProps, commonComponentProps, commonLayoutProps, commonShapeProps, componentProps, connectorProps, constrainedLayoutProps, constraintProps, copperPourProps, copperTextProps, courtyardCircleProps, courtyardOutlineProps, courtyardPillProps, courtyardRectProps, crystalPins, crystalProps, currentSourcePinLabels, currentSourcePins, currentSourceProps, customDrcCheckFn, cutoutProps, differentialPairProps, diodePinLabelsProp, diodePins, diodeProps, direction, directionAlongEdge, distanceOrMultiplier, drcCheckProps, edit_component_location_event, edit_pcb_component_location_event, edit_pcb_group_location_event, edit_schematic_component_location_event, edit_schematic_group_location_event, edit_trace_hint_event, enclosureCutoutApertureProps, enclosureCutoutApertureShapes, enclosureFdmBoxProps, enclosureProps, explicitPinSideDefinition, fabricationNoteDimensionProps, fabricationNotePathProps, fabricationNoteRectProps, fabricationNoteTextProps, fanoutBoundaryPadding, fanoutProps, fiducialProps, footprintInsertionDirection, footprintProp, footprintProps, footprinterStringExamples, fusePinLabels, fuseProps, groupProps, holeProps, inductorPins, inductorProps, interconnectProps, internalCircuitProps, jumperProps, kicadAt, kicadEffects, kicadFont, kicadFootprintAttributes, kicadFootprintKeys, kicadFootprintMetadata, kicadFootprintModel, kicadFootprintPad, kicadFootprintProperties, kicadFootprintStrings, kicadPinElectricalType, kicadPinGraphicStyle, kicadPinMetadata, kicadProperty, kicadSymbolEffects, kicadSymbolMetadata, kicadSymbolPinNames, kicadSymbolPinNumbers, kicadSymbolProperties, kicadSymbolProperty, layoutConfig, ledPins, ledProps, lrPins, lrPolarPins, manual_edit_event, manual_edits_file, manual_pcb_placement, manual_schematic_placement, manual_trace_hint, mosfetPins, mosfetProps, mountedboardProps, netAliasProps, netLabelProps, netProps, ninePointAnchor, opampPinLabels, opampPins, opampProps, panelProps, partsEngine, pcbKeepoutProps, pcbLayoutProps, pcbNoteDimensionProps, pcbNoteLineProps, pcbNotePathProps, pcbNoteRectProps, pcbNoteTextProps, pcbSameXConstraintProps, pcbSameYConstraintProps, pcbStyle, pcbSx, pcbSxValue, pcbTraceProps, pcbXDistConstraintProps, pcbYDistConstraintProps, pillShapeProps, pillSmtPadProps, pinAttributeMap, pinCapability, pinCompatibleVariant, pinHeaderProps, pinLabelsProp, pinoutProps, platedHoleProps, platformConfig, point3, polygonCutoutProps, polygonSmtPadProps, portHints, portProps, portRef, potentiometerPinLabels, potentiometerProps, powerSourceProps, projectConfig, pushButtonProps, rectCutoutProps, rectShapeProps, rectSmtPadProps, rectSolderPasteProps, resistorPinLabels, resistorPins, resistorProps, resonatorProps, rotatedRectSmtPadProps, rotationPoint3, routeHintPointProps, routingTolerances, schStyle, schematicArcProps, schematicBoxProps, schematicCellProps, schematicCircleProps, schematicLineProps, schematicOrientation, schematicPathProps, schematicPinArrangement, schematicPinLabel, schematicPinStyle, schematicPortArrangement, schematicRectProps, schematicRowProps, schematicSectionProps, schematicSheetProps, schematicSymbolProps, schematicSymbolSize, schematicTableProps, schematicTextProps, silkscreenCircleProps, silkscreenGraphicProps, silkscreenLineProps, silkscreenPathProps, silkscreenRectProps, silkscreenTextProps, smtPadProps, solderPasteProps, solderjumperProps, spicemodelProps, stampboardProps, subcircuitGroupProps, subcircuitGroupPropsWithBool, subcircuitProps, subpanelProps, supplierProps, switchProps, symbolProp, symbolProps, testpointPins, testpointProps, toolingrailProps, traceHintProps, traceProps, transistorPins, transistorPinsLabels, transistorProps, viaProps, voltageProbeProps, voltageSourcePinLabels, voltageSourcePins, voltageSourceProps };
193123
+ export { type AmmeterPinLabels, type AmmeterProps, type AnalogAcSweepSimulationProps, type AnalogAnalysisSimulationBaseProps, type AnalogCapacitanceSweepParameterProps, type AnalogCurrentSweepParameterProps, type AnalogDcOperatingPointSimulationProps, type AnalogDcSweepSimulationProps, type AnalogInductanceSweepParameterProps, type AnalogResistanceSweepParameterProps, type AnalogSimulationProps, type AnalogSweepParameterProps, type AnalogTransientSimulationProps, type AnalogVoltageSweepParameterProps, type AssemblyDeviceProps, type AssemblyDevicePropsInput, type AutocompleteString, type AutorouterConfig, type AutorouterDefinition, type AutorouterInstance, type AutorouterPreset, type AutorouterProp, type AutoroutingPhaseProps, type BaseGroupProps, type BaseManualEditEvent, type BaseManualEditEventInput, type BasicFootprint, type BatteryPinLabels, type BatteryProps, type BoardColor, type BoardColorPreset, type BoardProps, type Border, type BreakoutPointProps, type BreakoutProps, type BusFanoutDirection, type BusName, type BusProps, type CadAssemblyProps, type CadAssemblyPropsInput, type CadModelAxisDirection, type CadModelBase, type CadModelFootprinterString, type CadModelGlb, type CadModelGltf, type CadModelJscad, type CadModelObj, type CadModelProp, type CadModelProps, type CadModelPropsInput, type CadModelStep, type CadModelStl, type CadModelWrl, type CapacitorPinLabels, type CapacitorProps, type ChipConnections, type ChipPinLabels, type ChipProps, type ChipPropsSU, type CircleCutoutProps, type CircleEnclosureCutoutApertureProps, type CircleHoleProps, type CirclePlatedHoleProps, type CircleShapeProps, type CircleSmtPadProps, type CircleSolderPasteProps, type CircuitJson, type CircularHoleWithRectPlatedProps, type CommonComponentProps, type CommonLayoutProps, type CommonShapeProps, type ComponentProps, type ConnectionTarget, type Connections, type ConnectorProps, type ConstrainedLayoutProps, type ConstraintProps, type CopperPourProps, type CopperPourPropsInput, type CopperTextProps, type CourtyardCircleProps, type CourtyardOutlineProps, type CourtyardPillProps, type CourtyardRectProps, type CrystalPinLabels, type CrystalProps, type CurrentSourcePinLabels, type CurrentSourceProps, type CustomDrcCheckContext, type CustomDrcCheckFn, type CustomDrcCheckInput, type CustomDrcConnectable, type CustomDrcSelect, type CustomDrcSelectAll, type CutoutProps, type CutoutPropsInput, type DifferentialPairProps, type DiodePinLabels, type DiodePinLabelsProp, type DiodeProps, type Direction, type DirectionAlongEdge, type DirectionalFanoutBoundaryPadding, type DrcCheckProps, type EditPcbComponentLocationEvent, type EditPcbComponentLocationEventInput, type EditPcbGroupLocationEvent, type EditPcbGroupLocationEventInput, type EditSchematicComponentLocationEvent, type EditSchematicComponentLocationEventInput, type EditSchematicGroupLocationEvent, type EditSchematicGroupLocationEventInput, type EditTraceHintEvent, type EditTraceHintEventInput, type EnclosureCutoutApertureProps, type EnclosureCutoutApertureShape, type EnclosureFdmBoxProps, type EnclosureFdmBoxPropsInput, type FabricationNoteDimensionProps, type FabricationNoteDimensionPropsInput, type FabricationNotePathProps, type FabricationNoteRectProps, type FabricationNoteTextProps, type FabricationNoteTextPropsInput, type FanoutBoundaryPadding, type FanoutPourNetMap, type FanoutProps, type FiducialProps, type FootprintFileParserEntry, type FootprintInsertionDirection, type FootprintLibraryResult, type FootprintProp, type FootprintProps, type FootprintPropsInput, type FootprintSoupElements, type FootprinterAutocompleteString, type FootprinterStringExample, type FusePinLabels, type FuseProps, type GroupProps, type HoleProps, type HoleWithPolygonPadPlatedHoleProps, type InductorPinLabels, type InductorProps, type InferredChipProps, type InferredConstrainedLayoutProps, type InferredDiodeProps, type InferredFuseProps, type InferredHoleProps, type InferredSchematicArcProps, type InferredSchematicBoxProps, type InferredSchematicCircleProps, type InferredSchematicLineProps, type InferredSchematicPathProps, type InferredSchematicRectProps, type InferredSchematicSectionProps, type InferredSchematicSheetProps, type InferredSchematicSymbolProps, type InferredSchematicTextProps, type InferredSmtPadProps, type InferredSolderPasteProps, type InferredSwitchProps, type InferredTestpointProps, type InferredViaProps, type InterconnectProps, type InternalCircuitElement, type InternalCircuitProps, type JlcpcbAutocompleteStringPath, type JlcpcbKnownPartNumber, type JumperProps, type KicadAt, type KicadAutocompleteStringPath, type KicadEffects, type KicadFont, type KicadFootprintAttributes, type KicadFootprintMetadata, type KicadFootprintModel, type KicadFootprintPad, type KicadFootprintProperties, type KicadPath, type KicadPinElectricalType, type KicadPinGraphicStyle, type KicadPinMetadata, type KicadProperty, type KicadSymbolEffects, type KicadSymbolMetadata, type KicadSymbolPinNames, type KicadSymbolPinNumbers, type KicadSymbolProperties, type KicadSymbolProperty, type LayoutConfig, type LedPinLabels, type LedProps, type LocalCacheEngine, type ManualEditEvent, type ManualEditEventInput, type ManualEditsFile, type ManualEditsFileInput, type ManualPcbPlacement, type ManualPcbPlacementInput, type ManualSchematicPlacement, type ManualSchematicPlacementInput, type ManualTraceHint, type ManualTraceHintInput, type MosfetPinLabels, type MosfetProps, type MountedBoardProps, type NetAliasProps, type NetLabelProps, type NetProps, type NinePointAnchor, type NonSubcircuitGroupProps, type OpAmpPinLabels, type OpAmpProps, type OvalHoleProps, type OvalPlatedHoleProps, type PanelProps, type ParsedEnclosureCutoutApertureProps, type PartsEngine, type PcbKeepoutProps, type PcbLayoutProps, type PcbNoteDimensionProps, type PcbNoteDimensionPropsInput, type PcbNoteLineProps, type PcbNoteLinePropsInput, type PcbNotePathProps, type PcbNotePathPropsInput, type PcbNoteRectProps, type PcbNoteRectPropsInput, type PcbNoteTextProps, type PcbNoteTextPropsInput, type PcbPositionMode, type PcbRouteCache, type PcbSameXConstraint, type PcbSameYConstraint, type PcbStyle, type PcbSx, type PcbSxSelector, type PcbSxValue, type PcbTraceProps, type PcbXDistConstraint, type PcbYDistConstraint, type PillEnclosureCutoutApertureProps, type PillHoleProps, type PillPlatedHoleProps, type PillShapeProps, type PillSmtPadProps, type PillWithRectPadPlatedHoleProps, type PinAttributeMap, type PinCapability, type PinCompatibleVariant, type PinHeaderProps, type PinLabelFromPinLabelMap, type PinLabelsProp, type PinSideDefinition, type PinSideDefinitionInput, type PinVariant, type PinoutProps, type PlatedHoleProps, type PlatformConfig, type PolygonCutoutProps, type PolygonSmtPadProps, type PortHints, type PortProps, type PositionMode, type PotentiometerPinLabels, type PotentiometerPinVariant, type PotentiometerProps, type PowerSourceProps, type ProjectConfig, type PushButtonProps, type RectCutoutProps, type RectEnclosureCutoutApertureProps, type RectHoleProps, type RectShapeProps, type RectSmtPadProps, type RectSolderPasteProps, type ResistorPinLabels, type ResistorProps, type ResonatorPinVariant, type ResonatorProps, type RotatedPillSmtPadProps, type RotatedRectSmtPadProps, type RoutingTolerances, type SchStyle, type SchematicArcProps, type SchematicBoxProps, type SchematicCellProps, type SchematicCircleProps, type SchematicLineProps, type SchematicOrientation, type SchematicPathProps, type SchematicPinArrangement, type SchematicPinArrangementWithPinCounts, type SchematicPinArrangementWithSides, type SchematicPinArrangementWithSizes, type SchematicPinLabel, type SchematicPinStyle, type SchematicPortArrangement, type SchematicPortArrangementWithPinCounts, type SchematicPortArrangementWithSides, type SchematicPortArrangementWithSizes, type SchematicRectProps, type SchematicRowProps, type SchematicSectionProps, type SchematicSheetProps, type SchematicSymbolProps, type SchematicSymbolSize, type SchematicTableProps, type SchematicTextProps, type SelectionResult, type SelectionResultComponent, type SelectionResultNet, type SelectionResultPort, type Selectors, type SilkscreenCircleProps, type SilkscreenGraphicProps, type SilkscreenLineProps, type SilkscreenPathProps, type SilkscreenRectProps, type SilkscreenTextProps, type SimpleRouteJson, type SmtPadProps, type SolderJumperProps, type SolderPasteProps, type SpiceEngine, type SpiceEngineSimulationResult, type SpiceModelElement, type SpiceModelProps, type SpiceOptions, type StampboardProps, type SubcircuitGroupProps, type SubcircuitGroupPropsWithBool, type SubcircuitProps, type SubpanelProps, type SupplierName, type SupplierPartNumbers, type SupplierProps, type SwitchProps, type SymbolProp, type SymbolProps, type SymbolPropsInput, type TestpointConnections, type TestpointPinLabels, type TestpointProps, type ToolingrailProps, type TraceHintProps, type TraceProps, type TransistorPinLabels, type TransistorProps, type ViaProps, type VoltageProbeProps, type VoltageSourcePinLabels, type VoltageSourceProps, type WaveShape, ammeterPinLabels, ammeterPins, ammeterProps, analogAcSweepSimulationProps, analogAnalysisSimulationBaseProps, analogCapacitanceSweepParameterProps, analogCurrentSweepParameterProps, analogDcOperatingPointSimulationProps, analogDcSweepSimulationProps, analogInductanceSweepParameterProps, analogResistanceSweepParameterProps, analogSimulationProps, analogSweepParameterProps, analogTransientSimulationProps, analogVoltageSweepParameterProps, assemblyDeviceProps, assemblyProps, autorouterConfig, autorouterEffortLevel, autorouterPreset, autorouterProp, autoroutingPhaseProps, baseGroupProps, base_manual_edit_event, batteryPins, batteryProps, boardProps, border, breakoutPointProps, breakoutProps, bugProps, busFanoutDirection, busProps, cadModelAxisDirection, cadModelAxisDirections, cadModelBase, cadModelGlb, cadModelGltf, cadModelJscad, cadModelObj, cadModelProp, cadModelStep, cadModelStl, cadModelWrl, cadassemblyProps, cadmodelProps, capacitorPinLabels, capacitorPins, capacitorProps, chipProps, circleCutoutProps, circleShapeProps, circleSmtPadProps, circleSolderPasteProps, commonComponentProps, commonLayoutProps, commonShapeProps, componentProps, connectorProps, constrainedLayoutProps, constraintProps, copperPourProps, copperTextProps, courtyardCircleProps, courtyardOutlineProps, courtyardPillProps, courtyardRectProps, crystalPins, crystalProps, currentSourcePinLabels, currentSourcePins, currentSourceProps, customDrcCheckFn, cutoutProps, differentialPairProps, diodePinLabelsProp, diodePins, diodeProps, direction, directionAlongEdge, distanceOrMultiplier, drcCheckProps, edit_component_location_event, edit_pcb_component_location_event, edit_pcb_group_location_event, edit_schematic_component_location_event, edit_schematic_group_location_event, edit_trace_hint_event, enclosureCutoutApertureProps, enclosureCutoutApertureShapes, enclosureFdmBoxProps, enclosureProps, explicitPinSideDefinition, fabricationNoteDimensionProps, fabricationNotePathProps, fabricationNoteRectProps, fabricationNoteTextProps, fanoutBoundaryPadding, fanoutProps, fiducialProps, footprintInsertionDirection, footprintProp, footprintProps, footprinterStringExamples, fusePinLabels, fuseProps, groupProps, holeProps, inductorPins, inductorProps, interconnectProps, internalCircuitProps, jumperProps, kicadAt, kicadEffects, kicadFont, kicadFootprintAttributes, kicadFootprintKeys, kicadFootprintMetadata, kicadFootprintModel, kicadFootprintPad, kicadFootprintProperties, kicadFootprintStrings, kicadPinElectricalType, kicadPinGraphicStyle, kicadPinMetadata, kicadProperty, kicadSymbolEffects, kicadSymbolMetadata, kicadSymbolPinNames, kicadSymbolPinNumbers, kicadSymbolProperties, kicadSymbolProperty, layoutConfig, ledPins, ledProps, lrPins, lrPolarPins, manual_edit_event, manual_edits_file, manual_pcb_placement, manual_schematic_placement, manual_trace_hint, mosfetPins, mosfetProps, mountedboardProps, netAliasProps, netLabelProps, netProps, ninePointAnchor, opampPinLabels, opampPins, opampProps, panelProps, partsEngine, pcbKeepoutProps, pcbLayoutProps, pcbNoteDimensionProps, pcbNoteLineProps, pcbNotePathProps, pcbNoteRectProps, pcbNoteTextProps, pcbSameXConstraintProps, pcbSameYConstraintProps, pcbStyle, pcbSx, pcbSxValue, pcbTraceProps, pcbXDistConstraintProps, pcbYDistConstraintProps, pillShapeProps, pillSmtPadProps, pinAttributeMap, pinCapability, pinCompatibleVariant, pinHeaderProps, pinLabelsProp, pinoutProps, platedHoleProps, platformConfig, point3, polygonCutoutProps, polygonSmtPadProps, portHints, portProps, portRef, potentiometerPinLabels, potentiometerProps, powerSourceProps, projectConfig, pushButtonProps, rectCutoutProps, rectShapeProps, rectSmtPadProps, rectSolderPasteProps, resistorPinLabels, resistorPins, resistorProps, resonatorProps, rotatedPillSmtPadProps, rotatedRectSmtPadProps, rotationPoint3, routeHintPointProps, routingTolerances, schStyle, schematicArcProps, schematicBoxProps, schematicCellProps, schematicCircleProps, schematicLineProps, schematicOrientation, schematicPathProps, schematicPinArrangement, schematicPinLabel, schematicPinStyle, schematicPortArrangement, schematicRectProps, schematicRowProps, schematicSectionProps, schematicSheetProps, schematicSymbolProps, schematicSymbolSize, schematicTableProps, schematicTextProps, silkscreenCircleProps, silkscreenGraphicProps, silkscreenLineProps, silkscreenPathProps, silkscreenRectProps, silkscreenTextProps, smtPadProps, solderPasteProps, solderjumperProps, spicemodelProps, stampboardProps, subcircuitGroupProps, subcircuitGroupPropsWithBool, subcircuitProps, subpanelProps, supplierProps, switchProps, symbolProp, symbolProps, testpointPins, testpointProps, toolingrailProps, traceHintProps, traceProps, transistorPins, transistorPinsLabels, transistorProps, viaProps, voltageProbeProps, voltageSourcePinLabels, voltageSourcePins, voltageSourceProps };
package/dist/index.js CHANGED
@@ -17237,6 +17237,19 @@ var pillSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
17237
17237
  solderPasteMargin: distance.optional()
17238
17238
  });
17239
17239
  expectTypesMatch(true);
17240
+ var rotatedPillSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
17241
+ name: z67.string().optional(),
17242
+ shape: z67.literal("rotated_pill"),
17243
+ width: distance,
17244
+ height: distance,
17245
+ radius: distance,
17246
+ ccwRotation: z67.number(),
17247
+ portHints: portHints.optional(),
17248
+ coveredWithSolderMask: z67.boolean().optional(),
17249
+ solderMaskMargin: distance.optional(),
17250
+ solderPasteMargin: distance.optional()
17251
+ });
17252
+ expectTypesMatch(true);
17240
17253
  var polygonSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
17241
17254
  name: z67.string().optional(),
17242
17255
  shape: z67.literal("polygon"),
@@ -17252,6 +17265,7 @@ var smtPadProps = z67.discriminatedUnion("shape", [
17252
17265
  rectSmtPadProps,
17253
17266
  rotatedRectSmtPadProps,
17254
17267
  pillSmtPadProps,
17268
+ rotatedPillSmtPadProps,
17255
17269
  polygonSmtPadProps
17256
17270
  ]);
17257
17271
  expectTypesMatch(true);
@@ -18943,6 +18957,9 @@ var autorouterDefinition = z146.object({
18943
18957
  createAutorouter: z146.function().args(z146.any(), z146.any().optional()).returns(z146.union([autorouterInstance, z146.promise(autorouterInstance)])).describe("Create an autorouter instance")
18944
18958
  });
18945
18959
  var platformFetch = z146.custom((value) => typeof value === "function").describe("A fetch-like function to use for platform requests");
18960
+ var localCacheEngine = z146.custom(
18961
+ (value) => typeof value === "object" && value !== null && "getItem" in value && typeof value.getItem === "function" && "setItem" in value && typeof value.setItem === "function"
18962
+ );
18946
18963
  var platformConfig = z146.object({
18947
18964
  partsEngine: partsEngine.optional(),
18948
18965
  autorouter: autorouterProp.optional(),
@@ -18963,7 +18980,8 @@ var platformConfig = z146.object({
18963
18980
  ).optional(),
18964
18981
  defaultSpiceEngine: defaultSpiceEngine.optional(),
18965
18982
  unitPreference: z146.enum(["mm", "in", "mil"]).optional(),
18966
- localCacheEngine: z146.any().optional(),
18983
+ localCacheEngine: localCacheEngine.optional(),
18984
+ enablePartOrientationAnalysis: z146.boolean().optional(),
18967
18985
  pcbDisabled: z146.boolean().optional(),
18968
18986
  routingDisabled: z146.boolean().optional(),
18969
18987
  schematicDisabled: z146.boolean().optional(),
@@ -19208,6 +19226,7 @@ export {
19208
19226
  resistorPins,
19209
19227
  resistorProps,
19210
19228
  resonatorProps,
19229
+ rotatedPillSmtPadProps,
19211
19230
  rotatedRectSmtPadProps,
19212
19231
  rotationPoint3,
19213
19232
  routeHintPointProps,