@graphrefly/graphrefly 0.10.0 → 0.12.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 (70) hide show
  1. package/dist/{chunk-QTZSBQGJ.js → chunk-4F2ZFD5L.js} +19 -1
  2. package/dist/chunk-4F2ZFD5L.js.map +1 -0
  3. package/dist/{chunk-LR2CLSEF.js → chunk-6OLNYOGU.js} +2 -3
  4. package/dist/chunk-6OLNYOGU.js.map +1 -0
  5. package/dist/{chunk-TZLX4KIT.js → chunk-BRPCN2HJ.js} +46 -17
  6. package/dist/chunk-BRPCN2HJ.js.map +1 -0
  7. package/dist/{chunk-A2AJJOSJ.js → chunk-IXTW3BIO.js} +3 -3
  8. package/dist/{chunk-XCZPGOVP.js → chunk-JYRHO63K.js} +3 -3
  9. package/dist/{chunk-UCW3VWMN.js → chunk-NULSP7U4.js} +4 -4
  10. package/dist/{chunk-WYI7YW54.js → chunk-VQWLA6XQ.js} +3 -3
  11. package/dist/{chunk-YWTP2XRJ.js → chunk-X732W3QA.js} +2 -2
  12. package/dist/{chunk-E7OH6ZAZ.js → chunk-XWMTVV2D.js} +62 -3
  13. package/dist/chunk-XWMTVV2D.js.map +1 -0
  14. package/dist/compat/nestjs/index.cjs +10 -1
  15. package/dist/compat/nestjs/index.cjs.map +1 -1
  16. package/dist/compat/nestjs/index.d.cts +4 -4
  17. package/dist/compat/nestjs/index.d.ts +4 -4
  18. package/dist/compat/nestjs/index.js +7 -7
  19. package/dist/core/index.cjs +74 -1
  20. package/dist/core/index.cjs.map +1 -1
  21. package/dist/core/index.d.cts +2 -2
  22. package/dist/core/index.d.ts +2 -2
  23. package/dist/core/index.js +12 -3
  24. package/dist/extra/index.cjs +52 -14
  25. package/dist/extra/index.cjs.map +1 -1
  26. package/dist/extra/index.d.cts +4 -4
  27. package/dist/extra/index.d.ts +4 -4
  28. package/dist/extra/index.js +5 -5
  29. package/dist/graph/index.cjs +10 -1
  30. package/dist/graph/index.cjs.map +1 -1
  31. package/dist/graph/index.d.cts +3 -3
  32. package/dist/graph/index.d.ts +3 -3
  33. package/dist/graph/index.js +4 -4
  34. package/dist/{graph-DqTICAY2.d.cts → graph-BE10ujU9.d.cts} +1 -1
  35. package/dist/{graph-X9uwnD_z.d.ts → graph-DXT95WZ3.d.ts} +1 -1
  36. package/dist/{index-DLO8wnYU.d.ts → index-53cDGX7F.d.ts} +3 -3
  37. package/dist/{index-DMv1Etbi.d.ts → index-B10Q0sQB.d.ts} +2 -2
  38. package/dist/{index-BPCeYDS4.d.ts → index-C0_7g9sj.d.ts} +1 -1
  39. package/dist/{index-3U0WxdD-.d.cts → index-CCvzN5GB.d.cts} +2 -2
  40. package/dist/{index-BP1t_38S.d.cts → index-CiAqgfFg.d.ts} +17 -13
  41. package/dist/{index-a5gHmH5b.d.ts → index-CthwPnHQ.d.cts} +17 -13
  42. package/dist/{index-BVG5pjin.d.ts → index-Dzdm20sx.d.ts} +88 -3
  43. package/dist/{index-BYEgosAX.d.cts → index-QfbXNW1N.d.cts} +88 -3
  44. package/dist/{index-BYa2YMat.d.cts → index-aBZ2RoP0.d.cts} +3 -3
  45. package/dist/{index-DbwgQ4Cw.d.cts → index-nRulwTr-.d.cts} +1 -1
  46. package/dist/index.cjs +1084 -118
  47. package/dist/index.cjs.map +1 -1
  48. package/dist/index.d.cts +422 -22
  49. package/dist/index.d.ts +422 -22
  50. package/dist/index.js +988 -120
  51. package/dist/index.js.map +1 -1
  52. package/dist/{meta-BJEU8fYz.d.cts → meta-BcuDhtwu.d.cts} +33 -1
  53. package/dist/{meta-BJEU8fYz.d.ts → meta-BcuDhtwu.d.ts} +33 -1
  54. package/dist/patterns/reactive-layout/index.cjs +10 -1
  55. package/dist/patterns/reactive-layout/index.cjs.map +1 -1
  56. package/dist/patterns/reactive-layout/index.d.cts +3 -3
  57. package/dist/patterns/reactive-layout/index.d.ts +3 -3
  58. package/dist/patterns/reactive-layout/index.js +4 -4
  59. package/dist/{reactive-log-RhgIog2Z.d.ts → reactive-log-Cu0VdqkT.d.ts} +2 -2
  60. package/dist/{reactive-log-BfX6bOSZ.d.cts → reactive-log-OULQssZg.d.cts} +2 -2
  61. package/package.json +7 -2
  62. package/dist/chunk-E7OH6ZAZ.js.map +0 -1
  63. package/dist/chunk-LR2CLSEF.js.map +0 -1
  64. package/dist/chunk-QTZSBQGJ.js.map +0 -1
  65. package/dist/chunk-TZLX4KIT.js.map +0 -1
  66. /package/dist/{chunk-A2AJJOSJ.js.map → chunk-IXTW3BIO.js.map} +0 -0
  67. /package/dist/{chunk-XCZPGOVP.js.map → chunk-JYRHO63K.js.map} +0 -0
  68. /package/dist/{chunk-UCW3VWMN.js.map → chunk-NULSP7U4.js.map} +0 -0
  69. /package/dist/{chunk-WYI7YW54.js.map → chunk-VQWLA6XQ.js.map} +0 -0
  70. /package/dist/{chunk-YWTP2XRJ.js.map → chunk-X732W3QA.js.map} +0 -0
@@ -1,4 +1,4 @@
1
- import { k as Messages, N as Node, l as NodeDescribeKind, m as NodeGuard, a as NodeOptions, a3 as NodeInspectorHook, o as NodeStatus, A as Actor, p as NodeTransportOptions, n as NodeSink, S as SubscribeHints, c as NodeFn, C as COMPLETE, D as DATA, d as DEFAULT_ACTOR, e as DIRTY, f as DescribeDetail, g as DescribeField, h as DescribeNodeOutput, E as ERROR, G as GuardAction, i as GuardDenied, j as GuardDeniedDetails, H as HashFn, I as INVALIDATE, M as Message, b as NodeActions, q as NodeVersionInfo, O as OnMessageHandler, P as PAUSE, r as PolicyAllow, s as PolicyDeny, t as PolicyRuleData, R as RESOLVED, u as RESUME, T as TEARDOWN, V as V0, v as V1, w as VersioningLevel, x as VersioningOptions, y as accessHintForGuard, z as advanceVersion, B as createVersioning, F as defaultHash, J as describeNode, K as isKnownMessageType, L as isPhase2Message, Q as isTerminalMessage, U as isV1, W as knownMessageTypes, X as messageTier, Y as metaSnapshot, Z as node, _ as normalizeActor, $ as policy, a0 as policyFromRules, a1 as propagatesToMeta, a2 as resolveDescribeFields } from './meta-BJEU8fYz.cjs';
1
+ import { m as Messages, N as Node, n as NodeDescribeKind, o as NodeGuard, a as NodeOptions, a6 as NodeInspectorHook, q as NodeStatus, A as Actor, r as NodeTransportOptions, p as NodeSink, S as SubscribeHints, c as NodeFn, C as CLEANUP_RESULT, d as COMPLETE, e as CleanupResult, D as DATA, f as DEFAULT_ACTOR, g as DIRTY, h as DescribeDetail, i as DescribeField, j as DescribeNodeOutput, E as ERROR, G as GuardAction, k as GuardDenied, l as GuardDeniedDetails, H as HashFn, I as INVALIDATE, M as Message, b as NodeActions, s as NodeVersionInfo, O as OnMessageHandler, P as PAUSE, t as PolicyAllow, u as PolicyDeny, v as PolicyRuleData, R as RESOLVED, w as RESUME, T as TEARDOWN, V as V0, x as V1, y as VersioningLevel, z as VersioningOptions, B as accessHintForGuard, F as advanceVersion, J as cleanupResult, K as createVersioning, L as defaultHash, Q as describeNode, U as isKnownMessageType, W as isPhase2Message, X as isTerminalMessage, Y as isV1, Z as knownMessageTypes, _ as messageTier, $ as metaSnapshot, a0 as node, a1 as normalizeActor, a2 as policy, a3 as policyFromRules, a4 as propagatesToMeta, a5 as resolveDescribeFields } from './meta-BcuDhtwu.cjs';
2
2
 
3
3
  /**
4
4
  * Returns whether the current call stack is inside a batch scope **or** while
@@ -116,6 +116,85 @@ declare function emitWithBatch(emit: (messages: Messages) => void, messages: Mes
116
116
  strategy?: "partition" | "sequential";
117
117
  }): void;
118
118
 
119
+ /**
120
+ * bridge — graph-visible message forwarding between two nodes.
121
+ *
122
+ * Replaces ad-hoc `subscribe()` bridges that bypass graph topology.
123
+ * The returned node is an effect that intercepts messages from `from`
124
+ * and forwards them to `to.down()`. Register it with `graph.add()` to
125
+ * make the bridge visible in `describe()` and `snapshot()`.
126
+ *
127
+ * **Upstream path:** The bridge node has `from` as its dep, so anything
128
+ * downstream of the bridge that calls `up()` naturally reaches `from`.
129
+ * If `to` is used as a dep by other nodes and those nodes send `up()`,
130
+ * the messages reach `to`'s deps (not `from`). For full upstream relay
131
+ * across the bridge boundary, wire the bridge as a dep of `to`'s
132
+ * consumers or use `graph.connect()`.
133
+ *
134
+ * **ABAC / guards:** `to.down()` is called without `NodeTransportOptions`,
135
+ * so any ABAC guard on `to` receives `actor = undefined`. Upstream (`up()`)
136
+ * messages propagate through the dep chain the same way — no actor is
137
+ * injected on either path. Both paths are intentionally unguarded; if `to`
138
+ * requires a specific actor, provide a guarded wrapper node and bridge to
139
+ * that instead.
140
+ *
141
+ * **Default forwarding:** All standard message types are forwarded by
142
+ * default, including TEARDOWN, PAUSE, RESUME, and INVALIDATE. Use the
143
+ * `down` option to restrict which types are forwarded. Callers that need
144
+ * to exclude TEARDOWN (e.g. inter-stage wiring in `funnel()`) pass an
145
+ * explicit `down` array without TEARDOWN.
146
+ *
147
+ * @module
148
+ */
149
+
150
+ /** Options for {@link bridge}. */
151
+ type BridgeOptions = {
152
+ /** Node name (for graph registration / describe). */
153
+ name?: string;
154
+ /**
155
+ * Standard message types to forward downstream. Default: all standard
156
+ * types. Unknown (non-standard) types always forward per spec §1.3.6
157
+ * regardless of this option.
158
+ */
159
+ down?: readonly symbol[];
160
+ };
161
+ /** All standard types forwarded by default. Export for callers that
162
+ * need to customize (e.g. exclude TEARDOWN). */
163
+ declare const DEFAULT_DOWN: readonly symbol[];
164
+ /**
165
+ * Create a graph-visible bridge node that forwards messages from `from` to `to`.
166
+ *
167
+ * The bridge is a real node (effect) — it shows up in `describe()`, participates
168
+ * in two-phase push, and cleans up on TEARDOWN. Register it via `graph.add()`
169
+ * to make it part of the graph topology.
170
+ *
171
+ * **Unknown message types** (custom domain signals not in the standard protocol
172
+ * set) are always forwarded to `to`, regardless of the `down` option. This
173
+ * satisfies spec §1.3.6 ("unknown types forward unchanged").
174
+ *
175
+ * **COMPLETE / ERROR**: when forwarded, the bridge also transitions to terminal
176
+ * state so graph-wide completion detection works correctly.
177
+ *
178
+ * @param from - Source node to observe.
179
+ * @param to - Target node to forward messages to via `to.down()`.
180
+ * @param opts - Optional configuration.
181
+ * @returns A bridge effect node. Add it to a graph with `graph.add(name, bridge(...))`.
182
+ *
183
+ * @example
184
+ * ```ts
185
+ * import { bridge, state } from "@graphrefly/graphrefly-ts";
186
+ *
187
+ * const a = state(0);
188
+ * const b = state(0);
189
+ * const br = bridge(a, b, { name: "__bridge_a_b" });
190
+ * graph.add("__bridge_a_b", br);
191
+ * // Now a's messages flow to b, visible in describe()
192
+ * ```
193
+ *
194
+ * @category core
195
+ */
196
+ declare function bridge<T = unknown>(from: Node<T>, to: Node, opts?: BridgeOptions): Node<unknown>;
197
+
119
198
  /**
120
199
  * Centralised timestamp utilities.
121
200
  *
@@ -414,9 +493,13 @@ declare class ResettableTimer {
414
493
  */
415
494
 
416
495
  declare const index_Actor: typeof Actor;
496
+ type index_BridgeOptions = BridgeOptions;
497
+ declare const index_CLEANUP_RESULT: typeof CLEANUP_RESULT;
417
498
  declare const index_COMPLETE: typeof COMPLETE;
499
+ declare const index_CleanupResult: typeof CleanupResult;
418
500
  declare const index_DATA: typeof DATA;
419
501
  declare const index_DEFAULT_ACTOR: typeof DEFAULT_ACTOR;
502
+ declare const index_DEFAULT_DOWN: typeof DEFAULT_DOWN;
420
503
  declare const index_DIRTY: typeof DIRTY;
421
504
  declare const index_DescribeDetail: typeof DescribeDetail;
422
505
  declare const index_DescribeField: typeof DescribeField;
@@ -463,6 +546,8 @@ declare const index_VersioningOptions: typeof VersioningOptions;
463
546
  declare const index_accessHintForGuard: typeof accessHintForGuard;
464
547
  declare const index_advanceVersion: typeof advanceVersion;
465
548
  declare const index_batch: typeof batch;
549
+ declare const index_bridge: typeof bridge;
550
+ declare const index_cleanupResult: typeof cleanupResult;
466
551
  declare const index_createVersioning: typeof createVersioning;
467
552
  declare const index_defaultHash: typeof defaultHash;
468
553
  declare const index_derived: typeof derived;
@@ -491,7 +576,7 @@ declare const index_resolveDescribeFields: typeof resolveDescribeFields;
491
576
  declare const index_state: typeof state;
492
577
  declare const index_wallClockNs: typeof wallClockNs;
493
578
  declare namespace index {
494
- export { index_Actor as Actor, index_COMPLETE as COMPLETE, index_DATA as DATA, index_DEFAULT_ACTOR as DEFAULT_ACTOR, index_DIRTY as DIRTY, index_DescribeDetail as DescribeDetail, index_DescribeField as DescribeField, index_DescribeNodeOutput as DescribeNodeOutput, type index_DynGet as DynGet, type index_DynamicNodeFn as DynamicNodeFn, index_DynamicNodeImpl as DynamicNodeImpl, type index_DynamicNodeOptions as DynamicNodeOptions, index_ERROR as ERROR, index_GuardAction as GuardAction, index_GuardDenied as GuardDenied, index_GuardDeniedDetails as GuardDeniedDetails, index_HashFn as HashFn, index_INVALIDATE as INVALIDATE, index_Message as Message, index_Messages as Messages, index_Node as Node, index_NodeActions as NodeActions, index_NodeDescribeKind as NodeDescribeKind, index_NodeFn as NodeFn, index_NodeGuard as NodeGuard, index_NodeOptions as NodeOptions, index_NodeSink as NodeSink, index_NodeStatus as NodeStatus, index_NodeTransportOptions as NodeTransportOptions, index_NodeVersionInfo as NodeVersionInfo, index_OnMessageHandler as OnMessageHandler, index_PAUSE as PAUSE, type index_PipeOperator as PipeOperator, index_PolicyAllow as PolicyAllow, index_PolicyDeny as PolicyDeny, index_PolicyRuleData as PolicyRuleData, index_RESOLVED as RESOLVED, index_RESUME as RESUME, index_ResettableTimer as ResettableTimer, index_SubscribeHints as SubscribeHints, index_TEARDOWN as TEARDOWN, index_V0 as V0, index_V1 as V1, index_VersioningLevel as VersioningLevel, index_VersioningOptions as VersioningOptions, index_accessHintForGuard as accessHintForGuard, index_advanceVersion as advanceVersion, index_batch as batch, index_createVersioning as createVersioning, index_defaultHash as defaultHash, index_derived as derived, index_describeNode as describeNode, index_dynamicNode as dynamicNode, index_effect as effect, index_emitWithBatch as emitWithBatch, index_isBatching as isBatching, index_isKnownMessageType as isKnownMessageType, index_isPhase2Message as isPhase2Message, index_isTerminalMessage as isTerminalMessage, index_isV1 as isV1, index_knownMessageTypes as knownMessageTypes, index_messageTier as messageTier, index_metaSnapshot as metaSnapshot, index_monotonicNs as monotonicNs, index_node as node, index_normalizeActor as normalizeActor, index_partitionForBatch as partitionForBatch, index_pipe as pipe, index_policy as policy, index_policyFromRules as policyFromRules, index_producer as producer, index_propagatesToMeta as propagatesToMeta, index_resolveDescribeFields as resolveDescribeFields, index_state as state, index_wallClockNs as wallClockNs };
579
+ export { index_Actor as Actor, type index_BridgeOptions as BridgeOptions, index_CLEANUP_RESULT as CLEANUP_RESULT, index_COMPLETE as COMPLETE, index_CleanupResult as CleanupResult, index_DATA as DATA, index_DEFAULT_ACTOR as DEFAULT_ACTOR, index_DEFAULT_DOWN as DEFAULT_DOWN, index_DIRTY as DIRTY, index_DescribeDetail as DescribeDetail, index_DescribeField as DescribeField, index_DescribeNodeOutput as DescribeNodeOutput, type index_DynGet as DynGet, type index_DynamicNodeFn as DynamicNodeFn, index_DynamicNodeImpl as DynamicNodeImpl, type index_DynamicNodeOptions as DynamicNodeOptions, index_ERROR as ERROR, index_GuardAction as GuardAction, index_GuardDenied as GuardDenied, index_GuardDeniedDetails as GuardDeniedDetails, index_HashFn as HashFn, index_INVALIDATE as INVALIDATE, index_Message as Message, index_Messages as Messages, index_Node as Node, index_NodeActions as NodeActions, index_NodeDescribeKind as NodeDescribeKind, index_NodeFn as NodeFn, index_NodeGuard as NodeGuard, index_NodeOptions as NodeOptions, index_NodeSink as NodeSink, index_NodeStatus as NodeStatus, index_NodeTransportOptions as NodeTransportOptions, index_NodeVersionInfo as NodeVersionInfo, index_OnMessageHandler as OnMessageHandler, index_PAUSE as PAUSE, type index_PipeOperator as PipeOperator, index_PolicyAllow as PolicyAllow, index_PolicyDeny as PolicyDeny, index_PolicyRuleData as PolicyRuleData, index_RESOLVED as RESOLVED, index_RESUME as RESUME, index_ResettableTimer as ResettableTimer, index_SubscribeHints as SubscribeHints, index_TEARDOWN as TEARDOWN, index_V0 as V0, index_V1 as V1, index_VersioningLevel as VersioningLevel, index_VersioningOptions as VersioningOptions, index_accessHintForGuard as accessHintForGuard, index_advanceVersion as advanceVersion, index_batch as batch, index_bridge as bridge, index_cleanupResult as cleanupResult, index_createVersioning as createVersioning, index_defaultHash as defaultHash, index_derived as derived, index_describeNode as describeNode, index_dynamicNode as dynamicNode, index_effect as effect, index_emitWithBatch as emitWithBatch, index_isBatching as isBatching, index_isKnownMessageType as isKnownMessageType, index_isPhase2Message as isPhase2Message, index_isTerminalMessage as isTerminalMessage, index_isV1 as isV1, index_knownMessageTypes as knownMessageTypes, index_messageTier as messageTier, index_metaSnapshot as metaSnapshot, index_monotonicNs as monotonicNs, index_node as node, index_normalizeActor as normalizeActor, index_partitionForBatch as partitionForBatch, index_pipe as pipe, index_policy as policy, index_policyFromRules as policyFromRules, index_producer as producer, index_propagatesToMeta as propagatesToMeta, index_resolveDescribeFields as resolveDescribeFields, index_state as state, index_wallClockNs as wallClockNs };
495
580
  }
496
581
 
497
- export { type DynGet as D, type PipeOperator as P, ResettableTimer as R, type DynamicNodeFn as a, DynamicNodeImpl as b, type DynamicNodeOptions as c, batch as d, derived as e, dynamicNode as f, effect as g, emitWithBatch as h, index as i, isBatching as j, pipe as k, producer as l, monotonicNs as m, partitionForBatch as p, state as s, wallClockNs as w };
582
+ export { type BridgeOptions as B, DEFAULT_DOWN as D, type PipeOperator as P, ResettableTimer as R, type DynGet as a, type DynamicNodeFn as b, DynamicNodeImpl as c, type DynamicNodeOptions as d, batch as e, bridge as f, derived as g, dynamicNode as h, index as i, effect as j, emitWithBatch as k, isBatching as l, monotonicNs as m, pipe as n, producer as o, partitionForBatch as p, state as s, wallClockNs as w };
@@ -1,8 +1,8 @@
1
- import { R as ReactiveLogSnapshot, o as observeGraph$, c as observeNode$, t as toMessages$, d as toObservable } from './reactive-log-BfX6bOSZ.cjs';
1
+ import { R as ReactiveLogSnapshot, o as observeGraph$, c as observeNode$, t as toMessages$, d as toObservable } from './reactive-log-OULQssZg.cjs';
2
2
  import { OnModuleInit, OnModuleDestroy, ExecutionContext, CanActivate, DynamicModule } from '@nestjs/common';
3
3
  import { ModuleRef } from '@nestjs/core';
4
- import { G as Graph, a as GraphOptions, r as GraphPersistSnapshot } from './graph-DqTICAY2.cjs';
5
- import { A as Actor, N as Node } from './meta-BJEU8fYz.cjs';
4
+ import { G as Graph, a as GraphOptions, r as GraphPersistSnapshot } from './graph-BE10ujU9.cjs';
5
+ import { A as Actor, N as Node } from './meta-BcuDhtwu.cjs';
6
6
 
7
7
  /** Class constructor key for decorator registries and Nest `ModuleRef.get()`. */
8
8
  type DecoratorHostConstructor = abstract new (...args: unknown[]) => unknown;
@@ -1,4 +1,4 @@
1
- import { r as GraphPersistSnapshot, A as AutoCheckpointAdapter, D as DescribeFilter, d as GRAPH_META_SEGMENT, G as Graph, e as GraphActorOptions, b as GraphAutoCheckpointHandle, c as GraphAutoCheckpointOptions, f as GraphCheckpointRecord, g as GraphDescribeOptions, h as GraphDescribeOutput, i as GraphDiagramDirection, j as GraphDiagramOptions, k as GraphDiffChange, l as GraphDiffResult, m as GraphDumpOptions, n as GraphFactoryContext, o as GraphNodeFactory, p as GraphObserveAll, q as GraphObserveOne, a as GraphOptions, s as GraphSpyHandle, t as GraphSpyOptions, u as GraphSpyTheme, v as GraphSpyThemeName, O as ObserveDetail, w as ObserveEvent, x as ObserveOptions, y as ObserveResult, R as ReachableDirection, z as ReachableOptions, T as TraceEntry, B as reachable } from './graph-DqTICAY2.cjs';
1
+ import { r as GraphPersistSnapshot, A as AutoCheckpointAdapter, D as DescribeFilter, d as GRAPH_META_SEGMENT, G as Graph, e as GraphActorOptions, b as GraphAutoCheckpointHandle, c as GraphAutoCheckpointOptions, f as GraphCheckpointRecord, g as GraphDescribeOptions, h as GraphDescribeOutput, i as GraphDiagramDirection, j as GraphDiagramOptions, k as GraphDiffChange, l as GraphDiffResult, m as GraphDumpOptions, n as GraphFactoryContext, o as GraphNodeFactory, p as GraphObserveAll, q as GraphObserveOne, a as GraphOptions, s as GraphSpyHandle, t as GraphSpyOptions, u as GraphSpyTheme, v as GraphSpyThemeName, O as ObserveDetail, w as ObserveEvent, x as ObserveOptions, y as ObserveResult, R as ReachableDirection, z as ReachableOptions, T as TraceEntry, B as reachable } from './graph-BE10ujU9.cjs';
2
2
 
3
3
  /**
4
4
  * GraphCodec — pluggable serialization for graph snapshots (Phase 8.6).