effect 3.18.4 → 3.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/HashRing/package.json +6 -0
  2. package/dist/cjs/Array.js.map +1 -1
  3. package/dist/cjs/Effect.js.map +1 -1
  4. package/dist/cjs/Graph.js +290 -177
  5. package/dist/cjs/Graph.js.map +1 -1
  6. package/dist/cjs/HashRing.js +257 -0
  7. package/dist/cjs/HashRing.js.map +1 -0
  8. package/dist/cjs/JSONSchema.js +39 -8
  9. package/dist/cjs/JSONSchema.js.map +1 -1
  10. package/dist/cjs/TestClock.js +8 -8
  11. package/dist/cjs/TestClock.js.map +1 -1
  12. package/dist/cjs/index.js +4 -2
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/internal/version.js +1 -1
  15. package/dist/dts/Array.d.ts +3 -3
  16. package/dist/dts/Array.d.ts.map +1 -1
  17. package/dist/dts/Effect.d.ts +6 -1
  18. package/dist/dts/Effect.d.ts.map +1 -1
  19. package/dist/dts/Graph.d.ts +147 -49
  20. package/dist/dts/Graph.d.ts.map +1 -1
  21. package/dist/dts/HashRing.d.ts +158 -0
  22. package/dist/dts/HashRing.d.ts.map +1 -0
  23. package/dist/dts/JSONSchema.d.ts +3 -2
  24. package/dist/dts/JSONSchema.d.ts.map +1 -1
  25. package/dist/dts/Types.d.ts +1 -1
  26. package/dist/dts/Types.d.ts.map +1 -1
  27. package/dist/dts/index.d.ts +5 -0
  28. package/dist/dts/index.d.ts.map +1 -1
  29. package/dist/esm/Array.js.map +1 -1
  30. package/dist/esm/Effect.js.map +1 -1
  31. package/dist/esm/Graph.js +286 -175
  32. package/dist/esm/Graph.js.map +1 -1
  33. package/dist/esm/HashRing.js +245 -0
  34. package/dist/esm/HashRing.js.map +1 -0
  35. package/dist/esm/JSONSchema.js +35 -6
  36. package/dist/esm/JSONSchema.js.map +1 -1
  37. package/dist/esm/TestClock.js +8 -8
  38. package/dist/esm/TestClock.js.map +1 -1
  39. package/dist/esm/index.js +5 -0
  40. package/dist/esm/index.js.map +1 -1
  41. package/dist/esm/internal/version.js +1 -1
  42. package/package.json +9 -1
  43. package/src/Array.ts +4 -4
  44. package/src/Effect.ts +6 -1
  45. package/src/Graph.ts +415 -218
  46. package/src/HashRing.ts +387 -0
  47. package/src/JSONSchema.ts +39 -9
  48. package/src/TestClock.ts +9 -9
  49. package/src/Types.ts +3 -1
  50. package/src/index.ts +6 -0
  51. package/src/internal/version.ts +1 -1
@@ -118,6 +118,19 @@ export type MutableDirectedGraph<N, E> = MutableGraph<N, E, "directed">;
118
118
  * @category models
119
119
  */
120
120
  export type MutableUndirectedGraph<N, E> = MutableGraph<N, E, "undirected">;
121
+ declare const GraphError_base: new <A extends Record<string, any> = {}>(args: import("./Types.js").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => import("./Cause.js").YieldableError & {
122
+ readonly _tag: "GraphError";
123
+ } & Readonly<A>;
124
+ /**
125
+ * Error thrown when a graph operation fails.
126
+ *
127
+ * @since 3.18.0
128
+ * @category errors
129
+ */
130
+ export declare class GraphError extends GraphError_base<{
131
+ readonly message: string;
132
+ }> {
133
+ }
121
134
  /**
122
135
  * Creates a directed graph, optionally with initial mutations.
123
136
  *
@@ -861,6 +874,17 @@ export declare const neighbors: <N, E, T extends Kind = "directed">(graph: Graph
861
874
  * @category queries
862
875
  */
863
876
  export declare const neighborsDirected: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, nodeIndex: NodeIndex, direction: Direction) => Array<NodeIndex>;
877
+ /**
878
+ * Configuration options for GraphViz DOT format generation from graphs.
879
+ *
880
+ * @since 3.18.0
881
+ * @category models
882
+ */
883
+ export interface GraphVizOptions<N, E> {
884
+ readonly nodeLabel?: (data: N) => string;
885
+ readonly edgeLabel?: (data: E) => string;
886
+ readonly graphName?: string;
887
+ }
864
888
  /**
865
889
  * Exports a graph to GraphViz DOT format for visualization.
866
890
  *
@@ -892,11 +916,70 @@ export declare const neighborsDirected: <N, E, T extends Kind = "directed">(grap
892
916
  * @since 3.18.0
893
917
  * @category utils
894
918
  */
895
- export declare const toGraphViz: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, options?: {
919
+ export declare const toGraphViz: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, options?: GraphVizOptions<N, E>) => string;
920
+ /**
921
+ * Mermaid node shape types.
922
+ *
923
+ * @since 3.18.0
924
+ * @category models
925
+ */
926
+ export type MermaidNodeShape = "rectangle" | "rounded" | "circle" | "diamond" | "hexagon" | "stadium" | "subroutine" | "cylindrical";
927
+ /**
928
+ * Mermaid diagram direction types.
929
+ *
930
+ * @since 3.18.0
931
+ * @category models
932
+ */
933
+ export type MermaidDirection = "TB" | "TD" | "BT" | "LR" | "RL";
934
+ /**
935
+ * Mermaid diagram type.
936
+ *
937
+ * @since 3.18.0
938
+ * @category models
939
+ */
940
+ export type MermaidDiagramType = "flowchart" | "graph";
941
+ /**
942
+ * Configuration options for Mermaid diagram generation.
943
+ *
944
+ * @since 3.18.0
945
+ * @category models
946
+ */
947
+ export interface MermaidOptions<N, E> {
896
948
  readonly nodeLabel?: (data: N) => string;
897
949
  readonly edgeLabel?: (data: E) => string;
898
- readonly graphName?: string;
899
- }) => string;
950
+ readonly diagramType?: MermaidDiagramType;
951
+ readonly direction?: MermaidDirection;
952
+ readonly nodeShape?: (data: N) => MermaidNodeShape;
953
+ }
954
+ /**
955
+ * Exports a graph to Mermaid diagram format for visualization.
956
+ *
957
+ * @example
958
+ * ```ts
959
+ * import { Graph } from "effect"
960
+ *
961
+ * const graph = Graph.mutate(Graph.directed<string, number>(), (mutable) => {
962
+ * const app = Graph.addNode(mutable, "App")
963
+ * const db = Graph.addNode(mutable, "Database")
964
+ * const cache = Graph.addNode(mutable, "Cache")
965
+ * Graph.addEdge(mutable, app, db, 1)
966
+ * Graph.addEdge(mutable, app, cache, 2)
967
+ * })
968
+ *
969
+ * const mermaid = Graph.toMermaid(graph)
970
+ * console.log(mermaid)
971
+ * // flowchart TD
972
+ * // 0["App"]
973
+ * // 1["Database"]
974
+ * // 2["Cache"]
975
+ * // 0 -->|"1"| 1
976
+ * // 0 -->|"2"| 2
977
+ * ```
978
+ *
979
+ * @since 3.18.0
980
+ * @category utils
981
+ */
982
+ export declare const toMermaid: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, options?: MermaidOptions<N, E>) => string;
900
983
  /**
901
984
  * Direction for graph traversal, indicating which edges to follow.
902
985
  *
@@ -911,10 +994,10 @@ export declare const toGraphViz: <N, E, T extends Kind = "directed">(graph: Grap
911
994
  * })
912
995
  *
913
996
  * // Follow outgoing edges (normal direction)
914
- * const outgoingNodes = Array.from(Graph.indices(Graph.dfs(graph, { startNodes: [0], direction: "outgoing" })))
997
+ * const outgoingNodes = Array.from(Graph.indices(Graph.dfs(graph, { start: [0], direction: "outgoing" })))
915
998
  *
916
999
  * // Follow incoming edges (reverse direction)
917
- * const incomingNodes = Array.from(Graph.indices(Graph.dfs(graph, { startNodes: [1], direction: "incoming" })))
1000
+ * const incomingNodes = Array.from(Graph.indices(Graph.dfs(graph, { start: [1], direction: "incoming" })))
918
1001
  * ```
919
1002
  *
920
1003
  * @since 3.18.0
@@ -1054,7 +1137,41 @@ export declare const stronglyConnectedComponents: <N, E, T extends Kind = "direc
1054
1137
  export interface PathResult<E> {
1055
1138
  readonly path: Array<NodeIndex>;
1056
1139
  readonly distance: number;
1057
- readonly edgeWeights: Array<E>;
1140
+ readonly costs: Array<E>;
1141
+ }
1142
+ /**
1143
+ * Configuration for Dijkstra's algorithm.
1144
+ *
1145
+ * @since 3.18.0
1146
+ * @category models
1147
+ */
1148
+ export interface DijkstraConfig<E> {
1149
+ source: NodeIndex;
1150
+ target: NodeIndex;
1151
+ cost: (edgeData: E) => number;
1152
+ }
1153
+ /**
1154
+ * Configuration for A* algorithm.
1155
+ *
1156
+ * @since 3.18.0
1157
+ * @category models
1158
+ */
1159
+ export interface AstarConfig<E, N> {
1160
+ source: NodeIndex;
1161
+ target: NodeIndex;
1162
+ cost: (edgeData: E) => number;
1163
+ heuristic: (sourceNodeData: N, targetNodeData: N) => number;
1164
+ }
1165
+ /**
1166
+ * Configuration for Bellman-Ford algorithm.
1167
+ *
1168
+ * @since 3.18.0
1169
+ * @category models
1170
+ */
1171
+ export interface BellmanFordConfig<E> {
1172
+ source: NodeIndex;
1173
+ target: NodeIndex;
1174
+ cost: (edgeData: E) => number;
1058
1175
  }
1059
1176
  /**
1060
1177
  * Find the shortest path between two nodes using Dijkstra's algorithm.
@@ -1075,7 +1192,7 @@ export interface PathResult<E> {
1075
1192
  * Graph.addEdge(mutable, b, c, 2)
1076
1193
  * })
1077
1194
  *
1078
- * const result = Graph.dijkstra(graph, 0, 2, (edgeData) => edgeData)
1195
+ * const result = Graph.dijkstra(graph, { source: 0, target: 2, cost: (edgeData) => edgeData })
1079
1196
  * if (Option.isSome(result)) {
1080
1197
  * console.log(result.value.path) // [0, 1, 2] - shortest path A->B->C
1081
1198
  * console.log(result.value.distance) // 7 - total distance
@@ -1085,7 +1202,7 @@ export interface PathResult<E> {
1085
1202
  * @since 3.18.0
1086
1203
  * @category algorithms
1087
1204
  */
1088
- export declare const dijkstra: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, source: NodeIndex, target: NodeIndex, edgeWeight: (edgeData: E) => number) => Option.Option<PathResult<E>>;
1205
+ export declare const dijkstra: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config: DijkstraConfig<E>) => Option.Option<PathResult<E>>;
1089
1206
  /**
1090
1207
  * Result of all-pairs shortest path computation.
1091
1208
  *
@@ -1095,7 +1212,7 @@ export declare const dijkstra: <N, E, T extends Kind = "directed">(graph: Graph<
1095
1212
  export interface AllPairsResult<E> {
1096
1213
  readonly distances: Map<NodeIndex, Map<NodeIndex, number>>;
1097
1214
  readonly paths: Map<NodeIndex, Map<NodeIndex, Array<NodeIndex> | null>>;
1098
- readonly edgeWeights: Map<NodeIndex, Map<NodeIndex, Array<E>>>;
1215
+ readonly costs: Map<NodeIndex, Map<NodeIndex, Array<E>>>;
1099
1216
  }
1100
1217
  /**
1101
1218
  * Find shortest paths between all pairs of nodes using Floyd-Warshall algorithm.
@@ -1124,7 +1241,7 @@ export interface AllPairsResult<E> {
1124
1241
  * @since 3.18.0
1125
1242
  * @category algorithms
1126
1243
  */
1127
- export declare const floydWarshall: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, edgeWeight: (edgeData: E) => number) => AllPairsResult<E>;
1244
+ export declare const floydWarshall: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, cost: (edgeData: E) => number) => AllPairsResult<E>;
1128
1245
  /**
1129
1246
  * Find the shortest path between two nodes using A* pathfinding algorithm.
1130
1247
  *
@@ -1148,7 +1265,7 @@ export declare const floydWarshall: <N, E, T extends Kind = "directed">(graph: G
1148
1265
  * const heuristic = (nodeData: {x: number, y: number}, targetData: {x: number, y: number}) =>
1149
1266
  * Math.abs(nodeData.x - targetData.x) + Math.abs(nodeData.y - targetData.y)
1150
1267
  *
1151
- * const result = Graph.astar(graph, 0, 2, (edgeData) => edgeData, heuristic)
1268
+ * const result = Graph.astar(graph, { source: 0, target: 2, cost: (edgeData) => edgeData, heuristic })
1152
1269
  * if (Option.isSome(result)) {
1153
1270
  * console.log(result.value.path) // [0, 1, 2] - shortest path
1154
1271
  * console.log(result.value.distance) // 2 - total distance
@@ -1158,7 +1275,7 @@ export declare const floydWarshall: <N, E, T extends Kind = "directed">(graph: G
1158
1275
  * @since 3.18.0
1159
1276
  * @category algorithms
1160
1277
  */
1161
- export declare const astar: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, source: NodeIndex, target: NodeIndex, edgeWeight: (edgeData: E) => number, heuristic: (sourceNodeData: N, targetNodeData: N) => number) => Option.Option<PathResult<E>>;
1278
+ export declare const astar: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config: AstarConfig<E, N>) => Option.Option<PathResult<E>>;
1162
1279
  /**
1163
1280
  * Find the shortest path between two nodes using Bellman-Ford algorithm.
1164
1281
  *
@@ -1179,7 +1296,7 @@ export declare const astar: <N, E, T extends Kind = "directed">(graph: Graph<N,
1179
1296
  * Graph.addEdge(mutable, a, c, 5)
1180
1297
  * })
1181
1298
  *
1182
- * const result = Graph.bellmanFord(graph, 0, 2, (edgeData) => edgeData)
1299
+ * const result = Graph.bellmanFord(graph, { source: 0, target: 2, cost: (edgeData) => edgeData })
1183
1300
  * if (Option.isSome(result)) {
1184
1301
  * console.log(result.value.path) // [0, 1, 2] - shortest path A->B->C
1185
1302
  * console.log(result.value.distance) // 2 - total distance
@@ -1189,7 +1306,7 @@ export declare const astar: <N, E, T extends Kind = "directed">(graph: Graph<N,
1189
1306
  * @since 3.18.0
1190
1307
  * @category algorithms
1191
1308
  */
1192
- export declare const bellmanFord: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, source: NodeIndex, target: NodeIndex, edgeWeight: (edgeData: E) => number) => Option.Option<PathResult<E>>;
1309
+ export declare const bellmanFord: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config: BellmanFordConfig<E>) => Option.Option<PathResult<E>>;
1193
1310
  /**
1194
1311
  * Concrete class for iterables that produce [NodeIndex, NodeData] tuples.
1195
1312
  *
@@ -1208,7 +1325,7 @@ export declare const bellmanFord: <N, E, T extends Kind = "directed">(graph: Gra
1208
1325
  * })
1209
1326
  *
1210
1327
  * // Both traversal and element iterators return NodeWalker
1211
- * const dfsNodes: Graph.NodeWalker<string> = Graph.dfs(graph, { startNodes: [0] })
1328
+ * const dfsNodes: Graph.NodeWalker<string> = Graph.dfs(graph, { start: [0] })
1212
1329
  * const allNodes: Graph.NodeWalker<string> = Graph.nodes(graph)
1213
1330
  *
1214
1331
  * // Common interface for working with node iterables
@@ -1243,7 +1360,7 @@ export declare class Walker<T, N> implements Iterable<[T, N]> {
1243
1360
  * Graph.addEdge(mutable, a, b, 1)
1244
1361
  * })
1245
1362
  *
1246
- * const dfs = Graph.dfs(graph, { startNodes: [0] })
1363
+ * const dfs = Graph.dfs(graph, { start: [0] })
1247
1364
  *
1248
1365
  * // Map to just the node data
1249
1366
  * const values = Array.from(dfs.visit((index, data) => data))
@@ -1276,7 +1393,7 @@ export declare class Walker<T, N> implements Iterable<[T, N]> {
1276
1393
  * Graph.addEdge(mutable, a, b, 1)
1277
1394
  * })
1278
1395
  *
1279
- * const dfs = Graph.dfs(graph, { startNodes: [0] })
1396
+ * const dfs = Graph.dfs(graph, { start: [0] })
1280
1397
  *
1281
1398
  * // Map to just the node data
1282
1399
  * const values = Array.from(dfs.visit((index, data) => data))
@@ -1321,7 +1438,7 @@ export type EdgeWalker<E> = Walker<EdgeIndex, Edge<E>>;
1321
1438
  * Graph.addEdge(mutable, a, b, 1)
1322
1439
  * })
1323
1440
  *
1324
- * const dfs = Graph.dfs(graph, { startNodes: [0] })
1441
+ * const dfs = Graph.dfs(graph, { start: [0] })
1325
1442
  * const indices = Array.from(Graph.indices(dfs))
1326
1443
  * console.log(indices) // [0, 1]
1327
1444
  * ```
@@ -1343,7 +1460,7 @@ export declare const indices: <T, N>(walker: Walker<T, N>) => Iterable<T>;
1343
1460
  * Graph.addEdge(mutable, a, b, 1)
1344
1461
  * })
1345
1462
  *
1346
- * const dfs = Graph.dfs(graph, { startNodes: [0] })
1463
+ * const dfs = Graph.dfs(graph, { start: [0] })
1347
1464
  * const values = Array.from(Graph.values(dfs))
1348
1465
  * console.log(values) // ["A", "B"]
1349
1466
  * ```
@@ -1365,7 +1482,7 @@ export declare const values: <T, N>(walker: Walker<T, N>) => Iterable<N>;
1365
1482
  * Graph.addEdge(mutable, a, b, 1)
1366
1483
  * })
1367
1484
  *
1368
- * const dfs = Graph.dfs(graph, { startNodes: [0] })
1485
+ * const dfs = Graph.dfs(graph, { start: [0] })
1369
1486
  * const entries = Array.from(Graph.entries(dfs))
1370
1487
  * console.log(entries) // [[0, "A"], [1, "B"]]
1371
1488
  * ```
@@ -1375,13 +1492,13 @@ export declare const values: <T, N>(walker: Walker<T, N>) => Iterable<N>;
1375
1492
  */
1376
1493
  export declare const entries: <T, N>(walker: Walker<T, N>) => Iterable<[T, N]>;
1377
1494
  /**
1378
- * Configuration options for DFS iterator.
1495
+ * Configuration for graph search iterators.
1379
1496
  *
1380
1497
  * @since 3.18.0
1381
1498
  * @category models
1382
1499
  */
1383
- export interface DfsConfig {
1384
- readonly startNodes?: Array<NodeIndex>;
1500
+ export interface SearchConfig {
1501
+ readonly start?: Array<NodeIndex>;
1385
1502
  readonly direction?: Direction;
1386
1503
  }
1387
1504
  /**
@@ -1403,7 +1520,7 @@ export interface DfsConfig {
1403
1520
  * })
1404
1521
  *
1405
1522
  * // Start from a specific node
1406
- * const dfs1 = Graph.dfs(graph, { startNodes: [0] })
1523
+ * const dfs1 = Graph.dfs(graph, { start: [0] })
1407
1524
  * for (const nodeIndex of Graph.indices(dfs1)) {
1408
1525
  * console.log(nodeIndex) // Traverses in DFS order: 0, 1, 2
1409
1526
  * }
@@ -1416,17 +1533,7 @@ export interface DfsConfig {
1416
1533
  * @since 3.18.0
1417
1534
  * @category iterators
1418
1535
  */
1419
- export declare const dfs: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: DfsConfig) => NodeWalker<N>;
1420
- /**
1421
- * Configuration options for BFS iterator.
1422
- *
1423
- * @since 3.18.0
1424
- * @category models
1425
- */
1426
- export interface BfsConfig {
1427
- readonly startNodes?: Array<NodeIndex>;
1428
- readonly direction?: Direction;
1429
- }
1536
+ export declare const dfs: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: SearchConfig) => NodeWalker<N>;
1430
1537
  /**
1431
1538
  * Creates a new BFS iterator with optional configuration.
1432
1539
  *
@@ -1446,7 +1553,7 @@ export interface BfsConfig {
1446
1553
  * })
1447
1554
  *
1448
1555
  * // Start from a specific node
1449
- * const bfs1 = Graph.bfs(graph, { startNodes: [0] })
1556
+ * const bfs1 = Graph.bfs(graph, { start: [0] })
1450
1557
  * for (const nodeIndex of Graph.indices(bfs1)) {
1451
1558
  * console.log(nodeIndex) // Traverses in BFS order: 0, 1, 2
1452
1559
  * }
@@ -1459,7 +1566,7 @@ export interface BfsConfig {
1459
1566
  * @since 3.18.0
1460
1567
  * @category iterators
1461
1568
  */
1462
- export declare const bfs: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: BfsConfig) => NodeWalker<N>;
1569
+ export declare const bfs: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: SearchConfig) => NodeWalker<N>;
1463
1570
  /**
1464
1571
  * Configuration options for topological sort iterator.
1465
1572
  *
@@ -1515,16 +1622,6 @@ export interface TopoConfig {
1515
1622
  * @category iterators
1516
1623
  */
1517
1624
  export declare const topo: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: TopoConfig) => NodeWalker<N>;
1518
- /**
1519
- * Configuration options for DFS postorder iterator.
1520
- *
1521
- * @since 3.18.0
1522
- * @category models
1523
- */
1524
- export interface DfsPostOrderConfig {
1525
- readonly startNodes?: Array<NodeIndex>;
1526
- readonly direction?: Direction;
1527
- }
1528
1625
  /**
1529
1626
  * Creates a new DFS postorder iterator with optional configuration.
1530
1627
  *
@@ -1545,7 +1642,7 @@ export interface DfsPostOrderConfig {
1545
1642
  * })
1546
1643
  *
1547
1644
  * // Postorder: children before parents
1548
- * const postOrder = Graph.dfsPostOrder(graph, { startNodes: [0] })
1645
+ * const postOrder = Graph.dfsPostOrder(graph, { start: [0] })
1549
1646
  * for (const node of postOrder) {
1550
1647
  * console.log(node) // 1, 2, 0
1551
1648
  * }
@@ -1554,7 +1651,7 @@ export interface DfsPostOrderConfig {
1554
1651
  * @since 3.18.0
1555
1652
  * @category iterators
1556
1653
  */
1557
- export declare const dfsPostOrder: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: DfsPostOrderConfig) => NodeWalker<N>;
1654
+ export declare const dfsPostOrder: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: SearchConfig) => NodeWalker<N>;
1558
1655
  /**
1559
1656
  * Creates an iterator over all node indices in the graph.
1560
1657
  *
@@ -1649,4 +1746,5 @@ export interface ExternalsConfig {
1649
1746
  * @category iterators
1650
1747
  */
1651
1748
  export declare const externals: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: ExternalsConfig) => NodeWalker<N>;
1749
+ export {};
1652
1750
  //# sourceMappingURL=Graph.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../src/Graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../src/Graph.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,158 @@
1
+ import { type Pipeable } from "./Pipeable.js";
2
+ import * as PrimaryKey from "./PrimaryKey.js";
3
+ declare const TypeId: "~effect/cluster/HashRing";
4
+ /**
5
+ * @since 3.19.0
6
+ * @category Models
7
+ * @experimental
8
+ */
9
+ export interface HashRing<A extends PrimaryKey.PrimaryKey> extends Pipeable, Iterable<A> {
10
+ readonly [TypeId]: typeof TypeId;
11
+ readonly baseWeight: number;
12
+ totalWeightCache: number;
13
+ readonly nodes: Map<string, [node: A, weight: number]>;
14
+ ring: Array<[hash: number, node: string]>;
15
+ }
16
+ /**
17
+ * @since 3.19.0
18
+ * @category Guards
19
+ * @experimental
20
+ */
21
+ export declare const isHashRing: (u: unknown) => u is HashRing<any>;
22
+ /**
23
+ * @since 3.19.0
24
+ * @category Constructors
25
+ * @experimental
26
+ */
27
+ export declare const make: <A extends PrimaryKey.PrimaryKey>(options?: {
28
+ readonly baseWeight?: number | undefined;
29
+ }) => HashRing<A>;
30
+ /**
31
+ * Add new nodes to the ring. If a node already exists in the ring, it
32
+ * will be updated. For example, you can use this to update the node's weight.
33
+ *
34
+ * @since 3.19.0
35
+ * @category Combinators
36
+ * @experimental
37
+ */
38
+ export declare const addMany: {
39
+ /**
40
+ * Add new nodes to the ring. If a node already exists in the ring, it
41
+ * will be updated. For example, you can use this to update the node's weight.
42
+ *
43
+ * @since 3.19.0
44
+ * @category Combinators
45
+ * @experimental
46
+ */
47
+ <A extends PrimaryKey.PrimaryKey>(nodes: Iterable<A>, options?: {
48
+ readonly weight?: number | undefined;
49
+ }): (self: HashRing<A>) => HashRing<A>;
50
+ /**
51
+ * Add new nodes to the ring. If a node already exists in the ring, it
52
+ * will be updated. For example, you can use this to update the node's weight.
53
+ *
54
+ * @since 3.19.0
55
+ * @category Combinators
56
+ * @experimental
57
+ */
58
+ <A extends PrimaryKey.PrimaryKey>(self: HashRing<A>, nodes: Iterable<A>, options?: {
59
+ readonly weight?: number | undefined;
60
+ }): HashRing<A>;
61
+ };
62
+ /**
63
+ * Add a new node to the ring. If the node already exists in the ring, it
64
+ * will be updated. For example, you can use this to update the node's weight.
65
+ *
66
+ * @since 3.19.0
67
+ * @category Combinators
68
+ * @experimental
69
+ */
70
+ export declare const add: {
71
+ /**
72
+ * Add a new node to the ring. If the node already exists in the ring, it
73
+ * will be updated. For example, you can use this to update the node's weight.
74
+ *
75
+ * @since 3.19.0
76
+ * @category Combinators
77
+ * @experimental
78
+ */
79
+ <A extends PrimaryKey.PrimaryKey>(node: A, options?: {
80
+ readonly weight?: number | undefined;
81
+ }): (self: HashRing<A>) => HashRing<A>;
82
+ /**
83
+ * Add a new node to the ring. If the node already exists in the ring, it
84
+ * will be updated. For example, you can use this to update the node's weight.
85
+ *
86
+ * @since 3.19.0
87
+ * @category Combinators
88
+ * @experimental
89
+ */
90
+ <A extends PrimaryKey.PrimaryKey>(self: HashRing<A>, node: A, options?: {
91
+ readonly weight?: number | undefined;
92
+ }): HashRing<A>;
93
+ };
94
+ /**
95
+ * Removes the node from the ring. No-op's if the node does not exist.
96
+ *
97
+ * @since 3.19.0
98
+ * @category Combinators
99
+ * @experimental
100
+ */
101
+ export declare const remove: {
102
+ /**
103
+ * Removes the node from the ring. No-op's if the node does not exist.
104
+ *
105
+ * @since 3.19.0
106
+ * @category Combinators
107
+ * @experimental
108
+ */
109
+ <A extends PrimaryKey.PrimaryKey>(node: A): (self: HashRing<A>) => HashRing<A>;
110
+ /**
111
+ * Removes the node from the ring. No-op's if the node does not exist.
112
+ *
113
+ * @since 3.19.0
114
+ * @category Combinators
115
+ * @experimental
116
+ */
117
+ <A extends PrimaryKey.PrimaryKey>(self: HashRing<A>, node: A): HashRing<A>;
118
+ };
119
+ /**
120
+ * @since 3.19.0
121
+ * @category Combinators
122
+ * @experimental
123
+ */
124
+ export declare const has: {
125
+ /**
126
+ * @since 3.19.0
127
+ * @category Combinators
128
+ * @experimental
129
+ */
130
+ <A extends PrimaryKey.PrimaryKey>(node: A): (self: HashRing<A>) => boolean;
131
+ /**
132
+ * @since 3.19.0
133
+ * @category Combinators
134
+ * @experimental
135
+ */
136
+ <A extends PrimaryKey.PrimaryKey>(self: HashRing<A>, node: A): boolean;
137
+ };
138
+ /**
139
+ * Gets the node which should handle the given input. Returns undefined if
140
+ * the hashring has no elements with weight.
141
+ *
142
+ * @since 3.19.0
143
+ * @category Combinators
144
+ * @experimental
145
+ */
146
+ export declare const get: <A extends PrimaryKey.PrimaryKey>(self: HashRing<A>, input: string) => A | undefined;
147
+ /**
148
+ * Distributes `count` shards across the nodes in the ring, attempting to
149
+ * balance the number of shards allocated to each node. Returns undefined if
150
+ * the hashring has no elements with weight.
151
+ *
152
+ * @since 3.19.0
153
+ * @category Combinators
154
+ * @experimental
155
+ */
156
+ export declare const getShards: <A extends PrimaryKey.PrimaryKey>(self: HashRing<A>, count: number) => Array<A> | undefined;
157
+ export {};
158
+ //# sourceMappingURL=HashRing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HashRing.d.ts","sourceRoot":"","sources":["../../src/HashRing.ts"],"names":[],"mappings":"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"}
@@ -148,7 +148,8 @@ export interface JsonSchema7Boolean extends JsonSchemaAnnotations {
148
148
  */
149
149
  export interface JsonSchema7Array extends JsonSchemaAnnotations {
150
150
  type: "array";
151
- items?: JsonSchema7 | Array<JsonSchema7>;
151
+ items?: JsonSchema7 | Array<JsonSchema7> | false;
152
+ prefixItems?: Array<JsonSchema7>;
152
153
  minItems?: number;
153
154
  maxItems?: number;
154
155
  additionalItems?: JsonSchema7 | boolean;
@@ -210,7 +211,7 @@ export type JsonSchema7Root = JsonSchema7 & {
210
211
  * @since 3.10.0
211
212
  */
212
213
  export declare const make: <A, I, R>(schema: Schema.Schema<A, I, R>) => JsonSchema7Root;
213
- type Target = "jsonSchema7" | "jsonSchema2019-09" | "openApi3.1";
214
+ type Target = "jsonSchema7" | "jsonSchema2019-09" | "openApi3.1" | "jsonSchema2020-12";
214
215
  type TopLevelReferenceStrategy = "skip" | "keep";
215
216
  type AdditionalPropertiesStrategy = "allow" | "strict";
216
217
  /**