@graphrefly/graphrefly 0.1.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 (73) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +234 -0
  3. package/dist/chunk-5X3LAO3B.js +1571 -0
  4. package/dist/chunk-5X3LAO3B.js.map +1 -0
  5. package/dist/chunk-6W5SGIGB.js +1793 -0
  6. package/dist/chunk-6W5SGIGB.js.map +1 -0
  7. package/dist/chunk-CP6MNKAA.js +97 -0
  8. package/dist/chunk-CP6MNKAA.js.map +1 -0
  9. package/dist/chunk-HP7OKEOE.js +107 -0
  10. package/dist/chunk-HP7OKEOE.js.map +1 -0
  11. package/dist/chunk-KWXPDASV.js +781 -0
  12. package/dist/chunk-KWXPDASV.js.map +1 -0
  13. package/dist/chunk-O3PI7W45.js +68 -0
  14. package/dist/chunk-O3PI7W45.js.map +1 -0
  15. package/dist/chunk-QW7H3ICI.js +1372 -0
  16. package/dist/chunk-QW7H3ICI.js.map +1 -0
  17. package/dist/chunk-VPS7L64N.js +4785 -0
  18. package/dist/chunk-VPS7L64N.js.map +1 -0
  19. package/dist/chunk-Z4Y4FMQN.js +1097 -0
  20. package/dist/chunk-Z4Y4FMQN.js.map +1 -0
  21. package/dist/compat/nestjs/index.cjs +4883 -0
  22. package/dist/compat/nestjs/index.cjs.map +1 -0
  23. package/dist/compat/nestjs/index.d.cts +7 -0
  24. package/dist/compat/nestjs/index.d.ts +7 -0
  25. package/dist/compat/nestjs/index.js +84 -0
  26. package/dist/compat/nestjs/index.js.map +1 -0
  27. package/dist/core/index.cjs +1632 -0
  28. package/dist/core/index.cjs.map +1 -0
  29. package/dist/core/index.d.cts +2 -0
  30. package/dist/core/index.d.ts +2 -0
  31. package/dist/core/index.js +90 -0
  32. package/dist/core/index.js.map +1 -0
  33. package/dist/extra/index.cjs +6885 -0
  34. package/dist/extra/index.cjs.map +1 -0
  35. package/dist/extra/index.d.cts +5 -0
  36. package/dist/extra/index.d.ts +5 -0
  37. package/dist/extra/index.js +290 -0
  38. package/dist/extra/index.js.map +1 -0
  39. package/dist/graph/index.cjs +3225 -0
  40. package/dist/graph/index.cjs.map +1 -0
  41. package/dist/graph/index.d.cts +3 -0
  42. package/dist/graph/index.d.ts +3 -0
  43. package/dist/graph/index.js +25 -0
  44. package/dist/graph/index.js.map +1 -0
  45. package/dist/graph-CL_ZDAj9.d.cts +605 -0
  46. package/dist/graph-D18qmsNm.d.ts +605 -0
  47. package/dist/index-B6SsZs2h.d.cts +3463 -0
  48. package/dist/index-B7eOdgEx.d.ts +449 -0
  49. package/dist/index-BHUvlQ3v.d.ts +3463 -0
  50. package/dist/index-BtK55IE2.d.ts +231 -0
  51. package/dist/index-BvhgZRHK.d.cts +231 -0
  52. package/dist/index-Bvy_6CaN.d.ts +452 -0
  53. package/dist/index-C3BMRmmp.d.cts +449 -0
  54. package/dist/index-C5mqLhMX.d.cts +452 -0
  55. package/dist/index-CP_QvbWu.d.ts +940 -0
  56. package/dist/index-D_geH2Bm.d.cts +940 -0
  57. package/dist/index.cjs +14843 -0
  58. package/dist/index.cjs.map +1 -0
  59. package/dist/index.d.cts +1517 -0
  60. package/dist/index.d.ts +1517 -0
  61. package/dist/index.js +3649 -0
  62. package/dist/index.js.map +1 -0
  63. package/dist/meta-BsF6Sag9.d.cts +607 -0
  64. package/dist/meta-BsF6Sag9.d.ts +607 -0
  65. package/dist/patterns/reactive-layout/index.cjs +4143 -0
  66. package/dist/patterns/reactive-layout/index.cjs.map +1 -0
  67. package/dist/patterns/reactive-layout/index.d.cts +3 -0
  68. package/dist/patterns/reactive-layout/index.d.ts +3 -0
  69. package/dist/patterns/reactive-layout/index.js +38 -0
  70. package/dist/patterns/reactive-layout/index.js.map +1 -0
  71. package/dist/reactive-log-BfvfNWQh.d.cts +137 -0
  72. package/dist/reactive-log-ohLmTXoZ.d.ts +137 -0
  73. package/package.json +256 -0
@@ -0,0 +1,452 @@
1
+ import { i as Messages, N as Node, j as NodeDescribeKind, k as NodeGuard, a as NodeOptions, a0 as NodeInspectorHook, m as NodeStatus, A as Actor, n as NodeTransportOptions, l as NodeSink, S as SubscribeHints, c as NodeFn, C as COMPLETE, D as DATA, d as DEFAULT_ACTOR, e as DIRTY, f as DescribeNodeOutput, E as ERROR, G as GuardAction, g as GuardDenied, h as GuardDeniedDetails, H as HashFn, I as INVALIDATE, M as Message, b as NodeActions, o as NodeVersionInfo, O as OnMessageHandler, P as PAUSE, p as PolicyAllow, q as PolicyDeny, r as PolicyRuleData, R as RESOLVED, s as RESUME, T as TEARDOWN, V as V0, t as V1, u as VersioningLevel, v as VersioningOptions, w as accessHintForGuard, x as advanceVersion, y as createVersioning, z as defaultHash, B as describeNode, F as isKnownMessageType, J as isPhase2Message, K as isTerminalMessage, L as isV1, Q as knownMessageTypes, U as messageTier, W as metaSnapshot, X as node, Y as normalizeActor, Z as policy, _ as policyFromRules, $ as propagatesToMeta } from './meta-BsF6Sag9.js';
2
+
3
+ /**
4
+ * Returns whether the current call stack is inside a batch scope **or** while
5
+ * deferred phase-2 work is draining.
6
+ *
7
+ * Matching Python's `is_batching()` semantics: nested emissions during drain
8
+ * are deferred until the current drain pass completes, preventing ordering
9
+ * bugs when callbacks trigger further DATA/RESOLVED.
10
+ *
11
+ * @returns `true` while inside `batch()` or while the drain loop is running.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { batch, isBatching } from "@graphrefly/graphrefly-ts";
16
+ *
17
+ * batch(() => {
18
+ * console.log(isBatching()); // true
19
+ * });
20
+ * ```
21
+ *
22
+ * @category core
23
+ */
24
+ declare function isBatching(): boolean;
25
+ /**
26
+ * Runs `fn` inside a batch scope. Nested `batch()` calls share one deferral queue.
27
+ * If `fn` throws (including from a nested `batch`), deferred DATA/RESOLVED for
28
+ * that **outer** `batch` frame are discarded — phase-2 is not flushed after an
29
+ * error. While the drain loop is running (`flushInProgress`), a nested `batch`
30
+ * that throws must **not** clear the global queue (cross-language decision A4).
31
+ *
32
+ * During the drain loop, `isBatching()` remains true so nested `emitWithBatch`
33
+ * calls still defer phase-2 messages. The drain loop runs until the queue is
34
+ * quiescent (no pending work remains). Per-emission try/catch ensures one
35
+ * throwing callback does not orphan remaining emissions; the first error is
36
+ * re-thrown after all emissions drain. Callbacks that ran before the throw may
37
+ * have applied phase-2 — partial graph state is intentional (decision C1).
38
+ *
39
+ * @param fn — Synchronous work that may call `emitWithBatch` / `node.down()`.
40
+ * @returns `void` — all side-effects happen through `emitWithBatch` and the
41
+ * phase-2 drain that runs after `fn` returns.
42
+ *
43
+ * @example
44
+ * ```ts
45
+ * import { core } from "@graphrefly/graphrefly-ts";
46
+ *
47
+ * core.batch(() => {
48
+ * core.emitWithBatch(sink, [[core.DATA, 1]]);
49
+ * });
50
+ * ```
51
+ *
52
+ * @category core
53
+ */
54
+ declare function batch(fn: () => void): void;
55
+ /**
56
+ * Splits a message array into three groups by signal tier (see `messages.ts`):
57
+ *
58
+ * - **immediate** — tier 0–1: DIRTY, INVALIDATE, PAUSE, RESUME, TEARDOWN, unknown
59
+ * - **deferred** — tier 2: DATA, RESOLVED (phase-2, deferred inside `batch()`)
60
+ * - **terminal** — tier 3: COMPLETE, ERROR (delivered after phase-2)
61
+ *
62
+ * Order within each group is preserved.
63
+ *
64
+ * @param messages — One `down()` payload.
65
+ * @returns Three groups in canonical delivery order.
66
+ *
67
+ * @example
68
+ * ```ts
69
+ * import { DATA, DIRTY, COMPLETE, partitionForBatch } from "@graphrefly/graphrefly-ts";
70
+ *
71
+ * partitionForBatch([[DIRTY], [DATA, 1], [COMPLETE]]);
72
+ * // { immediate: [[DIRTY]], deferred: [[DATA, 1]], terminal: [[COMPLETE]] }
73
+ * ```
74
+ *
75
+ * @category core
76
+ */
77
+ declare function partitionForBatch(messages: Messages): {
78
+ immediate: Messages;
79
+ deferred: Messages;
80
+ terminal: Messages;
81
+ };
82
+ /**
83
+ * Delivers messages through `emit`, applying batch semantics and canonical
84
+ * tier-based ordering (see `messages.ts`):
85
+ *
86
+ * 1. **Immediate** (tier 0–1, 4): DIRTY, INVALIDATE, PAUSE, RESUME, TEARDOWN,
87
+ * unknown — emitted synchronously.
88
+ * 2. **Phase-2** (tier 2): DATA, RESOLVED — deferred while `isBatching()`.
89
+ * 3. **Terminal** (tier 3): COMPLETE, ERROR — always delivered after phase-2.
90
+ * When batching, terminal is queued after deferred phase-2 in the pending list.
91
+ * When not batching, terminal is emitted after phase-2 synchronously.
92
+ *
93
+ * This ordering prevents the "COMPLETE-before-DATA" class of bugs: terminal
94
+ * signals never make a node terminal before phase-2 values reach sinks,
95
+ * regardless of how the source assembled the message array.
96
+ *
97
+ * @param emit — Sink callback. May be called up to three times per invocation
98
+ * (immediate, deferred, terminal) when not batching.
99
+ * @param messages — Full `[[Type, Data?], ...]` array for one emission.
100
+ * @returns `void` — delivery is performed through `emit` callbacks, synchronously
101
+ * or deferred into the active batch queue.
102
+ *
103
+ * @example
104
+ * ```ts
105
+ * import { core } from "@graphrefly/graphrefly-ts";
106
+ *
107
+ * core.emitWithBatch((msgs) => console.log(msgs), [[core.DIRTY], [core.DATA, 42]]);
108
+ * ```
109
+ *
110
+ * @category core
111
+ */
112
+ declare function emitWithBatch(emit: (messages: Messages) => void, messages: Messages, phase?: 2 | 3): void;
113
+
114
+ /**
115
+ * Centralised timestamp utilities.
116
+ *
117
+ * Convention: all graphrefly-ts timestamps use nanoseconds (`_ns` suffix).
118
+ *
119
+ * - {@link monotonicNs} — monotonic clock (ordering, durations, timeline events).
120
+ * - {@link wallClockNs} — wall-clock (mutation attribution, cron emission).
121
+ *
122
+ * **Precision limits (JS platform):**
123
+ *
124
+ * - `monotonicNs`: effective ~microsecond precision. `performance.now()` returns
125
+ * milliseconds with ~5µs resolution; the last 3 digits of the nanosecond value
126
+ * are always zero. Python's `time.monotonic_ns()` gives true nanoseconds.
127
+ *
128
+ * - `wallClockNs`: ~256ns precision loss at current epoch. `Date.now() * 1e6`
129
+ * produces values around 1.8×10¹⁸ which exceed IEEE 754's 2⁵³ safe integer
130
+ * limit. Python's `time.time_ns()` (arbitrary-precision `int`) has no loss.
131
+ * In practice this is irrelevant — JS is single-threaded, so sub-microsecond
132
+ * timestamp collisions cannot occur.
133
+ */
134
+ /** Monotonic nanosecond timestamp via `performance.now()`. */
135
+ declare function monotonicNs(): number;
136
+ /** Wall-clock nanosecond timestamp via `Date.now()`. */
137
+ declare function wallClockNs(): number;
138
+
139
+ /**
140
+ * `dynamicNode` — runtime dep tracking with diamond resolution (Phase 0.3b).
141
+ *
142
+ * Unlike `node()` where deps are fixed at construction, `dynamicNode` discovers
143
+ * deps at runtime via a tracking `get()` proxy. After each recompute, deps are
144
+ * diffed: new deps are connected, removed deps are disconnected, and bitmasks
145
+ * are rebuilt. Kept deps retain their subscriptions (no teardown/reconnect churn).
146
+ *
147
+ * This ports callbag-recharge's `dynamicDerived` pattern to GraphReFly's protocol.
148
+ */
149
+
150
+ /**
151
+ * The tracking `get` function passed to `dynamicNode`'s compute function.
152
+ * Each call to `get(dep)` reads the dep's current value and records it as a dependency.
153
+ */
154
+ type DynGet = <V>(dep: Node<V>) => V | undefined;
155
+ /**
156
+ * Compute function for `dynamicNode`. Receives a tracking `get` proxy.
157
+ * Deps are discovered by which nodes are passed to `get()` during execution.
158
+ */
159
+ type DynamicNodeFn<T> = (get: DynGet) => T;
160
+ /** Options for `dynamicNode`. */
161
+ type DynamicNodeOptions = Pick<NodeOptions, "name" | "equals" | "meta" | "resubscribable" | "resetOnTeardown" | "guard" | "onMessage" | "onResubscribe" | "completeWhenDepsComplete" | "describeKind">;
162
+ /**
163
+ * Creates a node with runtime dep tracking. Deps are discovered each time the
164
+ * compute function runs by tracking which nodes are passed to the `get()` proxy.
165
+ *
166
+ * After each recompute:
167
+ * - New deps (not in previous set) are subscribed
168
+ * - Removed deps (not in current set) are unsubscribed
169
+ * - Kept deps retain their existing subscriptions
170
+ * - Bitmasks are rebuilt to match the new dep set
171
+ *
172
+ * The node participates fully in diamond resolution via the standard two-phase
173
+ * DIRTY/RESOLVED protocol across all dynamically-tracked deps.
174
+ *
175
+ * @param fn - Compute function receiving a tracking `get` proxy.
176
+ * @param opts - Optional configuration.
177
+ * @returns `Node<T>` with dynamic dep tracking.
178
+ *
179
+ * @example
180
+ * ```ts
181
+ * import { dynamicNode, state } from "@graphrefly/graphrefly-ts";
182
+ *
183
+ * const cond = state(true);
184
+ * const a = state(1);
185
+ * const b = state(2);
186
+ *
187
+ * // Deps change based on cond's value
188
+ * const d = dynamicNode((get) => {
189
+ * const useA = get(cond);
190
+ * return useA ? get(a) : get(b);
191
+ * });
192
+ * ```
193
+ *
194
+ * @category core
195
+ */
196
+ declare function dynamicNode<T = unknown>(fn: DynamicNodeFn<T>, opts?: DynamicNodeOptions): Node<T>;
197
+ /** @internal — exported for {@link describeNode} `instanceof` check. */
198
+ declare class DynamicNodeImpl<T = unknown> implements Node<T> {
199
+ private readonly _optsName;
200
+ private _registryName;
201
+ readonly _describeKind: NodeDescribeKind | undefined;
202
+ readonly meta: Record<string, Node>;
203
+ private readonly _fn;
204
+ private readonly _equals;
205
+ private readonly _resubscribable;
206
+ private readonly _resetOnTeardown;
207
+ private readonly _autoComplete;
208
+ private readonly _onMessage;
209
+ private readonly _onResubscribe;
210
+ /** @internal — read by {@link describeNode} for `accessHintForGuard`. */
211
+ readonly _guard: NodeGuard | undefined;
212
+ private _lastMutation;
213
+ private _inspectorHook;
214
+ private _sinkCount;
215
+ private _singleDepSinkCount;
216
+ private _singleDepSinks;
217
+ private readonly _actions;
218
+ private readonly _boundEmitToSinks;
219
+ private _cached;
220
+ private _status;
221
+ private _terminal;
222
+ private _connected;
223
+ private _rewiring;
224
+ private _deps;
225
+ private _depUnsubs;
226
+ private _depIndexMap;
227
+ private _dirtyBits;
228
+ private _settledBits;
229
+ private _completeBits;
230
+ private _sinks;
231
+ constructor(fn: DynamicNodeFn<T>, opts: DynamicNodeOptions);
232
+ get name(): string | undefined;
233
+ /** @internal */
234
+ _assignRegistryName(localName: string): void;
235
+ /**
236
+ * @internal Attach/remove inspector hook for graph-level observability.
237
+ * Returns a disposer that restores the previous hook.
238
+ */
239
+ _setInspectorHook(hook?: NodeInspectorHook): () => void;
240
+ get status(): NodeStatus;
241
+ get lastMutation(): Readonly<{
242
+ actor: Actor;
243
+ timestamp_ns: number;
244
+ }> | undefined;
245
+ /** Versioning not yet supported on DynamicNodeImpl. */
246
+ get v(): undefined;
247
+ hasGuard(): boolean;
248
+ allowsObserve(actor: Actor): boolean;
249
+ get(): T | undefined;
250
+ down(messages: Messages, options?: NodeTransportOptions): void;
251
+ private _downInternal;
252
+ private _canSkipDirty;
253
+ subscribe(sink: NodeSink, hints?: SubscribeHints): () => void;
254
+ up(messages: Messages, options?: NodeTransportOptions): void;
255
+ unsubscribe(): void;
256
+ private _emitToSinks;
257
+ private _handleLocalLifecycle;
258
+ /** Propagate a signal to all companion meta nodes (best-effort). */
259
+ private _propagateToMeta;
260
+ private _emitAutoValue;
261
+ private _connect;
262
+ private _disconnect;
263
+ private _runFn;
264
+ private _rewire;
265
+ private _handleDepMessages;
266
+ private _allDirtySettled;
267
+ }
268
+
269
+ /**
270
+ * Creates a manual source with no upstream deps. Emit values with {@link Node.down}.
271
+ *
272
+ * Spec: `state(initial, opts?)` is `node([], { initial, ...opts })` (GRAPHREFLY-SPEC §2.7).
273
+ *
274
+ * @param initial - Initial cached value.
275
+ * @param opts - Optional {@link NodeOptions} (excluding `initial`).
276
+ * @returns `Node<T>` - Stateful node you drive imperatively.
277
+ *
278
+ * @example
279
+ * ```ts
280
+ * import { DATA, state } from "@graphrefly/graphrefly-ts";
281
+ *
282
+ * const n = state(0);
283
+ * n.down([[DATA, 1]]);
284
+ * ```
285
+ *
286
+ * @category core
287
+ */
288
+ declare function state<T>(initial: T, opts?: Omit<NodeOptions, "initial">): Node<T>;
289
+ /**
290
+ * Creates a producer node with no deps; `fn` runs when the first subscriber connects.
291
+ *
292
+ * @param fn - Receives deps (empty) and {@link NodeActions}; use `emit` / `down` to push.
293
+ * @param opts - Optional {@link NodeOptions}.
294
+ * @returns `Node<T>` - Producer node.
295
+ *
296
+ * @example
297
+ * ```ts
298
+ * import { producer } from "@graphrefly/graphrefly-ts";
299
+ *
300
+ * const tick = producer((_d, a) => {
301
+ * a.emit(1);
302
+ * });
303
+ * ```
304
+ *
305
+ * @category core
306
+ */
307
+ declare function producer<T = unknown>(fn: NodeFn<T>, opts?: NodeOptions): Node<T>;
308
+ /**
309
+ * Creates a derived node from dependencies and a compute function (same primitive as operators).
310
+ *
311
+ * @param deps - Upstream nodes.
312
+ * @param fn - Compute function; return value is emitted, or use `actions` explicitly.
313
+ * @param opts - Optional {@link NodeOptions}.
314
+ * @returns `Node<T>` - Derived node.
315
+ *
316
+ * @example
317
+ * ```ts
318
+ * import { derived, state } from "@graphrefly/graphrefly-ts";
319
+ *
320
+ * const a = state(1);
321
+ * const b = derived([a], ([x]) => (x as number) * 2);
322
+ * ```
323
+ *
324
+ * @category core
325
+ */
326
+ declare function derived<T = unknown>(deps: readonly Node[], fn: NodeFn<T>, opts?: NodeOptions): Node<T>;
327
+ /**
328
+ * Runs a side-effect when deps settle; return value is not auto-emitted.
329
+ *
330
+ * @param deps - Nodes to watch.
331
+ * @param fn - Side-effect body.
332
+ * @returns `Node<unknown>` - Effect node.
333
+ *
334
+ * @example
335
+ * ```ts
336
+ * import { effect, state } from "@graphrefly/graphrefly-ts";
337
+ *
338
+ * const n = state(1);
339
+ * effect([n], ([v]) => {
340
+ * console.log(v);
341
+ * });
342
+ * ```
343
+ *
344
+ * @category core
345
+ */
346
+ declare function effect(deps: readonly Node[], fn: NodeFn<unknown>): Node<unknown>;
347
+ /** Unary transform used by {@link pipe} (typically returns a new node wrapping `n`). */
348
+ type PipeOperator = (n: Node) => Node;
349
+ /**
350
+ * Composes unary operators left-to-right; returns the final node. Does not register a {@link Graph}.
351
+ *
352
+ * @param source - Starting node.
353
+ * @param ops - Each operator maps `Node` to `Node` (curried operators from `extra` use a factory pattern — wrap or use direct calls).
354
+ * @returns `Node` - Result of the last operator.
355
+ *
356
+ * @example
357
+ * ```ts
358
+ * import { filter, map, pipe, state } from "@graphrefly/graphrefly-ts";
359
+ *
360
+ * const src = state(1);
361
+ * const out = pipe(
362
+ * src,
363
+ * (n) => map(n, (x) => x + 1),
364
+ * (n) => filter(n, (x) => x > 0),
365
+ * );
366
+ * ```
367
+ *
368
+ * @category core
369
+ */
370
+ declare function pipe(source: Node, ...ops: PipeOperator[]): Node;
371
+
372
+ /**
373
+ * Core layer: message protocol, node primitive, lifecycle (Phase 0).
374
+ */
375
+
376
+ declare const index_Actor: typeof Actor;
377
+ declare const index_COMPLETE: typeof COMPLETE;
378
+ declare const index_DATA: typeof DATA;
379
+ declare const index_DEFAULT_ACTOR: typeof DEFAULT_ACTOR;
380
+ declare const index_DIRTY: typeof DIRTY;
381
+ declare const index_DescribeNodeOutput: typeof DescribeNodeOutput;
382
+ type index_DynGet = DynGet;
383
+ type index_DynamicNodeFn<T> = DynamicNodeFn<T>;
384
+ type index_DynamicNodeImpl<T = unknown> = DynamicNodeImpl<T>;
385
+ declare const index_DynamicNodeImpl: typeof DynamicNodeImpl;
386
+ type index_DynamicNodeOptions = DynamicNodeOptions;
387
+ declare const index_ERROR: typeof ERROR;
388
+ declare const index_GuardAction: typeof GuardAction;
389
+ declare const index_GuardDenied: typeof GuardDenied;
390
+ declare const index_GuardDeniedDetails: typeof GuardDeniedDetails;
391
+ declare const index_HashFn: typeof HashFn;
392
+ declare const index_INVALIDATE: typeof INVALIDATE;
393
+ declare const index_Message: typeof Message;
394
+ declare const index_Messages: typeof Messages;
395
+ declare const index_Node: typeof Node;
396
+ declare const index_NodeActions: typeof NodeActions;
397
+ declare const index_NodeDescribeKind: typeof NodeDescribeKind;
398
+ declare const index_NodeFn: typeof NodeFn;
399
+ declare const index_NodeGuard: typeof NodeGuard;
400
+ declare const index_NodeOptions: typeof NodeOptions;
401
+ declare const index_NodeSink: typeof NodeSink;
402
+ declare const index_NodeStatus: typeof NodeStatus;
403
+ declare const index_NodeTransportOptions: typeof NodeTransportOptions;
404
+ declare const index_NodeVersionInfo: typeof NodeVersionInfo;
405
+ declare const index_OnMessageHandler: typeof OnMessageHandler;
406
+ declare const index_PAUSE: typeof PAUSE;
407
+ type index_PipeOperator = PipeOperator;
408
+ declare const index_PolicyAllow: typeof PolicyAllow;
409
+ declare const index_PolicyDeny: typeof PolicyDeny;
410
+ declare const index_PolicyRuleData: typeof PolicyRuleData;
411
+ declare const index_RESOLVED: typeof RESOLVED;
412
+ declare const index_RESUME: typeof RESUME;
413
+ declare const index_SubscribeHints: typeof SubscribeHints;
414
+ declare const index_TEARDOWN: typeof TEARDOWN;
415
+ declare const index_V0: typeof V0;
416
+ declare const index_V1: typeof V1;
417
+ declare const index_VersioningLevel: typeof VersioningLevel;
418
+ declare const index_VersioningOptions: typeof VersioningOptions;
419
+ declare const index_accessHintForGuard: typeof accessHintForGuard;
420
+ declare const index_advanceVersion: typeof advanceVersion;
421
+ declare const index_batch: typeof batch;
422
+ declare const index_createVersioning: typeof createVersioning;
423
+ declare const index_defaultHash: typeof defaultHash;
424
+ declare const index_derived: typeof derived;
425
+ declare const index_describeNode: typeof describeNode;
426
+ declare const index_dynamicNode: typeof dynamicNode;
427
+ declare const index_effect: typeof effect;
428
+ declare const index_emitWithBatch: typeof emitWithBatch;
429
+ declare const index_isBatching: typeof isBatching;
430
+ declare const index_isKnownMessageType: typeof isKnownMessageType;
431
+ declare const index_isPhase2Message: typeof isPhase2Message;
432
+ declare const index_isTerminalMessage: typeof isTerminalMessage;
433
+ declare const index_isV1: typeof isV1;
434
+ declare const index_knownMessageTypes: typeof knownMessageTypes;
435
+ declare const index_messageTier: typeof messageTier;
436
+ declare const index_metaSnapshot: typeof metaSnapshot;
437
+ declare const index_monotonicNs: typeof monotonicNs;
438
+ declare const index_node: typeof node;
439
+ declare const index_normalizeActor: typeof normalizeActor;
440
+ declare const index_partitionForBatch: typeof partitionForBatch;
441
+ declare const index_pipe: typeof pipe;
442
+ declare const index_policy: typeof policy;
443
+ declare const index_policyFromRules: typeof policyFromRules;
444
+ declare const index_producer: typeof producer;
445
+ declare const index_propagatesToMeta: typeof propagatesToMeta;
446
+ declare const index_state: typeof state;
447
+ declare const index_wallClockNs: typeof wallClockNs;
448
+ declare namespace index {
449
+ export { index_Actor as Actor, index_COMPLETE as COMPLETE, index_DATA as DATA, index_DEFAULT_ACTOR as DEFAULT_ACTOR, index_DIRTY as DIRTY, 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_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_state as state, index_wallClockNs as wallClockNs };
450
+ }
451
+
452
+ export { type DynGet as D, type PipeOperator as P, 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 };