@tscircuit/capacity-autorouter 0.0.54 → 0.0.55

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
@@ -127,14 +127,24 @@ declare class CapacityMeshEdgeSolver extends BaseSolver {
127
127
  visualize(): GraphicsObject;
128
128
  }
129
129
 
130
- type BucketCoordinate$1 = `${number}x${number}`;
130
+ /**
131
+ * ObstacleTree wraps different spatial index implementations:
132
+ * - 'native': original spatial-hash grid
133
+ * - 'rbush': dynamic R-tree via rbush
134
+ * - 'flatbush': static index via flatbush
135
+ */
131
136
  declare class ObstacleSpatialHashIndex {
132
- obstacles: Obstacle[];
133
- buckets: Map<BucketCoordinate$1, [Obstacle, number][]>;
134
- CELL_SIZE: number;
135
- constructor(obstacles: Obstacle[]);
136
- getBucketKey(x: number, y: number): BucketCoordinate$1;
137
- getNodesInArea(centerX: number, centerY: number, width: number, height: number): Obstacle[];
137
+ private idx;
138
+ private storage;
139
+ constructor(implementation?: "native" | "rbush" | "flatbush", obstacles?: Obstacle[]);
140
+ insert(o: Obstacle): void;
141
+ search(bbox: {
142
+ minX: number;
143
+ minY: number;
144
+ maxX: number;
145
+ maxY: number;
146
+ }): Obstacle[];
147
+ searchArea(centerX: number, centerY: number, width: number, height: number): Obstacle[];
138
148
  }
139
149
 
140
150
  interface Target$1 {
@@ -973,6 +983,16 @@ declare class SingleHighDensityRouteStitchSolver extends BaseSolver {
973
983
  };
974
984
  colorMap?: Record<string, string>;
975
985
  });
986
+ /**
987
+ * Scan `remainingHdRoutes` and find a route that has **one** end that is not
988
+ * within `5e-6` of the start or end of any other route on the same layer.
989
+ * That “lonely” end marks one extremity of the whole chain, which we use as
990
+ * our starting segment. If no such route exists (e.g., the data form a loop),
991
+ * we simply return the first route so the solver can proceed.
992
+ */
993
+ getDisjointedRoute(): {
994
+ firstRoute: HighDensityIntraNodeRoute$1;
995
+ };
976
996
  _step(): void;
977
997
  visualize(): GraphicsObject;
978
998
  }