effect 4.0.0-beta.66 → 4.0.0-beta.68
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/Array.d.ts +151 -106
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +50 -40
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +620 -553
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +298 -254
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +342 -274
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +168 -126
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +189 -156
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +85 -68
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.d.ts +30 -5
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +19 -2
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +239 -135
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +135 -59
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +84 -73
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +51 -44
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +1568 -632
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +685 -315
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +119 -10
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js +45 -6
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +574 -428
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +250 -191
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +16 -9
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +9 -5
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +11 -5
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +10 -4
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +80 -68
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +53 -49
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +33 -32
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +19 -18
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +76 -50
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +69 -46
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +400 -189
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +143 -77
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +67 -48
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +94 -36
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +208 -0
- package/dist/Crypto.d.ts.map +1 -0
- package/dist/Crypto.js +157 -0
- package/dist/Crypto.js.map +1 -0
- package/dist/Data.d.ts +9 -3
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +893 -464
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +387 -228
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +367 -175
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +146 -72
- package/dist/Deferred.js.map +1 -1
- package/dist/Differ.d.ts +44 -2
- package/dist/Differ.d.ts.map +1 -1
- package/dist/Differ.js +36 -0
- package/dist/Duration.d.ts +333 -186
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +178 -107
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +2181 -2275
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +935 -850
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.d.ts +38 -3
- package/dist/Effectable.d.ts.map +1 -1
- package/dist/Effectable.js +3 -3
- package/dist/Effectable.js.map +1 -1
- package/dist/Encoding.d.ts +78 -28
- package/dist/Encoding.d.ts.map +1 -1
- package/dist/Encoding.js +75 -27
- package/dist/Encoding.js.map +1 -1
- package/dist/Equal.d.ts +4 -3
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +4 -3
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +18 -24
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +16 -21
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +66 -82
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +38 -29
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +106 -12
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +23 -6
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +6 -5
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +71 -40
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +39 -21
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +118 -57
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +121 -39
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +287 -159
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +175 -73
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +93 -52
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +97 -34
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +102 -73
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +53 -39
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +166 -88
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +68 -42
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +4 -2
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +3 -69
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +218 -151
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +94 -78
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +714 -415
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +325 -182
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +29 -13
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +35 -24
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +27 -17
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +540 -388
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +262 -156
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts +53 -34
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +83 -16
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +239 -153
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +110 -56
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +26 -13
- package/dist/Inspectable.d.ts.map +1 -1
- package/dist/Inspectable.js +22 -10
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +336 -222
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +146 -100
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +12 -9
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +9 -6
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +13 -11
- package/dist/JsonPointer.d.ts.map +1 -1
- package/dist/JsonPointer.js +13 -11
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +16 -0
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +10 -0
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +97 -26
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +39 -20
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +472 -410
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +290 -226
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +99 -26
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +58 -14
- package/dist/LayerMap.js.map +1 -1
- package/dist/LogLevel.d.ts +92 -131
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +25 -15
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +159 -104
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +215 -189
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +78 -19
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +24 -17
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +135 -161
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +86 -78
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +330 -291
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +219 -214
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +146 -87
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +67 -43
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +52 -30
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +92 -38
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +110 -68
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +135 -85
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +99 -62
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +78 -60
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +15 -2
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +8 -2
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +38 -48
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +34 -25
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +261 -205
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +119 -91
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +6 -7
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +5 -6
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +133 -156
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +64 -64
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +6 -6
- package/dist/Order.js +6 -6
- package/dist/Ordering.d.ts +56 -45
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +10 -8
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +225 -40
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +113 -17
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +77 -13
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +49 -4
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +77 -18
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +63 -14
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +74 -6
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/PlatformError.js +68 -5
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +66 -31
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +26 -24
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +16 -23
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +12 -17
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +11 -3
- package/dist/PrimaryKey.d.ts.map +1 -1
- package/dist/PrimaryKey.js +9 -2
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +385 -309
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +260 -207
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +94 -25
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +61 -13
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +303 -184
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +231 -134
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +65 -57
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +41 -66
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +151 -141
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +66 -20
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +68 -32
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +33 -16
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +282 -137
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +124 -62
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +7 -5
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +5 -3
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +63 -34
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +31 -15
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +3 -1
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +2 -0
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +85 -66
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +57 -45
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +73 -31
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +66 -30
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +12 -6
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +12 -6
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +159 -34
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +68 -12
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +262 -118
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +78 -42
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.d.ts +13 -7
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +44 -6
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +135 -151
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +56 -68
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +40 -20
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +34 -17
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +556 -590
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +265 -253
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +44 -7
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +34 -5
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +1293 -602
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +501 -361
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +122 -92
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +102 -77
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +49 -36
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +42 -29
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +19 -24
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +16 -14
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +231 -63
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +266 -75
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +89 -77
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +47 -37
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +97 -46
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +89 -38
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/SchemaUtils.d.ts +8 -1
- package/dist/SchemaUtils.d.ts.map +1 -1
- package/dist/SchemaUtils.js +24 -1
- package/dist/SchemaUtils.js.map +1 -1
- package/dist/Scope.d.ts +107 -65
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +61 -32
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts +141 -49
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +82 -21
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +28 -8
- package/dist/ScopedRef.d.ts.map +1 -1
- package/dist/ScopedRef.js +25 -5
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +61 -37
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +18 -21
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +461 -206
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +241 -90
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +43 -6
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +33 -4
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +2117 -1541
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +951 -682
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +174 -97
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +128 -69
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +20 -18
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +10 -8
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +309 -204
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +126 -77
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +13 -5
- package/dist/Symbol.d.ts.map +1 -1
- package/dist/Symbol.js +13 -5
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +278 -62
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js +116 -23
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.d.ts +26 -2
- package/dist/Take.d.ts.map +1 -1
- package/dist/Take.js +4 -1
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +39 -7
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js +10 -4
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +233 -59
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +94 -18
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +280 -245
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +116 -102
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +34 -32
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +16 -14
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +200 -155
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +83 -61
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +43 -29
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +22 -15
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +362 -223
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +171 -98
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +181 -111
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +87 -49
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +94 -63
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +55 -37
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +77 -49
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +60 -37
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +277 -242
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +147 -101
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +69 -46
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +48 -32
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +69 -40
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +34 -19
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +101 -115
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +76 -77
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +74 -50
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +34 -23
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +31 -34
- package/dist/Types.d.ts.map +1 -1
- package/dist/UndefinedOr.d.ts +62 -25
- package/dist/UndefinedOr.d.ts.map +1 -1
- package/dist/UndefinedOr.js +36 -25
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +72 -117
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +20 -6
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +5 -2
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +4 -0
- package/dist/Utils.js.map +1 -1
- package/dist/index.d.ts +1973 -418
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1973 -418
- package/dist/index.js.map +1 -1
- package/dist/internal/schema/schema.js +1 -1
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/testing/FastCheck.d.ts +9 -6
- package/dist/testing/FastCheck.d.ts.map +1 -1
- package/dist/testing/FastCheck.js +9 -6
- package/dist/testing/FastCheck.js.map +1 -1
- package/dist/testing/TestClock.d.ts +39 -35
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +42 -12
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +44 -36
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +30 -15
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +2 -0
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +9 -7
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.d.ts +34 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +34 -0
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +205 -147
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +164 -109
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +2 -2
- package/dist/unstable/ai/Chat.d.ts +64 -41
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +51 -33
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.d.ts +12 -11
- package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.js +9 -8
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
- package/dist/unstable/ai/IdGenerator.d.ts +28 -18
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +18 -11
- package/dist/unstable/ai/IdGenerator.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +31 -25
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +20 -14
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +342 -119
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +266 -98
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +56 -20
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +64 -16
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +10 -12
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +9 -7
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +2 -2
- package/dist/unstable/ai/Prompt.d.ts +200 -176
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +77 -68
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +173 -160
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +43 -48
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.d.ts +43 -4
- package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.js +27 -2
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
- package/dist/unstable/ai/Telemetry.d.ts +43 -33
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +15 -11
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +14 -9
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +10 -6
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +167 -96
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +107 -53
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +32 -39
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +7 -5
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +121 -29
- package/dist/unstable/ai/index.d.ts.map +1 -1
- package/dist/unstable/ai/index.js +121 -29
- package/dist/unstable/ai/index.js.map +1 -1
- package/dist/unstable/cli/Argument.d.ts +226 -134
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +101 -65
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +72 -26
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +86 -23
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +48 -19
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +32 -9
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +196 -115
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +45 -31
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.d.ts +7 -7
- package/dist/unstable/cli/Completions.js +1 -1
- package/dist/unstable/cli/Flag.d.ts +235 -142
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js +111 -71
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +41 -13
- package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/unstable/cli/GlobalFlag.js +30 -7
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/HelpDoc.d.ts +39 -14
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/HelpDoc.js +21 -0
- package/dist/unstable/cli/Param.d.ts +110 -32
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +196 -135
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +79 -42
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +66 -35
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.d.ts +183 -59
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js +105 -23
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.d.ts +182 -0
- package/dist/unstable/cli/index.d.ts.map +1 -1
- package/dist/unstable/cli/index.js +205 -6
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/ansi.d.ts.map +1 -1
- package/dist/unstable/cli/internal/ansi.js +13 -0
- package/dist/unstable/cli/internal/ansi.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts +5 -1
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +5 -1
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/config.d.ts +3 -0
- package/dist/unstable/cli/internal/config.d.ts.map +1 -1
- package/dist/unstable/cli/internal/config.js.map +1 -1
- package/dist/unstable/cli/internal/lexer.js.map +1 -1
- package/dist/unstable/cli/internal/parser.js +0 -1
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts +35 -1
- package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js +35 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.d.ts +56 -7
- package/dist/unstable/cluster/ClusterError.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterError.js +56 -7
- package/dist/unstable/cluster/ClusterError.js.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.d.ts +39 -5
- package/dist/unstable/cluster/ClusterMetrics.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.js +39 -5
- package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts +61 -8
- package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.js +61 -8
- package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +14 -2
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +35 -2
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.d.ts +39 -4
- package/dist/unstable/cluster/DeliverAt.d.ts.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js +11 -3
- package/dist/unstable/cluster/DeliverAt.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +74 -16
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +75 -10
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.d.ts +30 -2
- package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityAddress.js +30 -2
- package/dist/unstable/cluster/EntityAddress.js.map +1 -1
- package/dist/unstable/cluster/EntityId.d.ts +18 -3
- package/dist/unstable/cluster/EntityId.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityId.js +15 -2
- package/dist/unstable/cluster/EntityId.js.map +1 -1
- package/dist/unstable/cluster/EntityProxy.d.ts +42 -14
- package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +30 -14
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.d.ts +18 -2
- package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js +40 -8
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +43 -6
- package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityResource.js +11 -4
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/EntityType.d.ts +27 -3
- package/dist/unstable/cluster/EntityType.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityType.js +24 -2
- package/dist/unstable/cluster/EntityType.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +105 -23
- package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
- package/dist/unstable/cluster/Envelope.js +88 -14
- package/dist/unstable/cluster/Envelope.js.map +1 -1
- package/dist/unstable/cluster/HttpRunner.d.ts +88 -13
- package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/HttpRunner.js +88 -13
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.d.ts +49 -6
- package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js +31 -6
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/MachineId.d.ts +24 -3
- package/dist/unstable/cluster/MachineId.d.ts.map +1 -1
- package/dist/unstable/cluster/MachineId.js +21 -2
- package/dist/unstable/cluster/MachineId.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +102 -13
- package/dist/unstable/cluster/Message.d.ts.map +1 -1
- package/dist/unstable/cluster/Message.js +86 -10
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +126 -21
- package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +70 -10
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +101 -12
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +64 -8
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.d.ts +47 -17
- package/dist/unstable/cluster/Runner.d.ts.map +1 -1
- package/dist/unstable/cluster/Runner.js +47 -17
- package/dist/unstable/cluster/Runner.js.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.d.ts +34 -2
- package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.js +34 -2
- package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +40 -12
- package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +40 -12
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts +7 -4
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +31 -4
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +42 -5
- package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.js +38 -4
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +76 -13
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +73 -12
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.d.ts +53 -5
- package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardId.js +49 -4
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts +10 -2
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +35 -4
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +65 -9
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js +66 -9
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts +27 -6
- package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.js +28 -4
- package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
- package/dist/unstable/cluster/SingleRunner.d.ts +23 -1
- package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/SingleRunner.js +23 -1
- package/dist/unstable/cluster/SingleRunner.js.map +1 -1
- package/dist/unstable/cluster/Singleton.d.ts +15 -1
- package/dist/unstable/cluster/Singleton.d.ts.map +1 -1
- package/dist/unstable/cluster/Singleton.js +15 -1
- package/dist/unstable/cluster/Singleton.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +21 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.js +21 -1
- package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
- package/dist/unstable/cluster/Snowflake.d.ts +90 -19
- package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
- package/dist/unstable/cluster/Snowflake.js +49 -13
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SocketRunner.d.ts +8 -2
- package/dist/unstable/cluster/SocketRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/SocketRunner.js +29 -2
- package/dist/unstable/cluster/SocketRunner.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.d.ts +11 -3
- package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +27 -3
- package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts +11 -3
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js +46 -7
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/TestRunner.d.ts +18 -1
- package/dist/unstable/cluster/TestRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/TestRunner.js +18 -1
- package/dist/unstable/cluster/TestRunner.js.map +1 -1
- package/dist/unstable/cluster/index.d.ts +790 -0
- package/dist/unstable/cluster/index.d.ts.map +1 -1
- package/dist/unstable/cluster/index.js +790 -0
- package/dist/unstable/cluster/index.js.map +1 -1
- package/dist/unstable/cluster/internal/hash.js +12 -0
- package/dist/unstable/cluster/internal/hash.js.map +1 -1
- package/dist/unstable/devtools/DevTools.d.ts +26 -3
- package/dist/unstable/devtools/DevTools.d.ts.map +1 -1
- package/dist/unstable/devtools/DevTools.js +26 -3
- package/dist/unstable/devtools/DevTools.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.d.ts +20 -5
- package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js +32 -5
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.d.ts +184 -44
- package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js +102 -20
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.d.ts +27 -2
- package/dist/unstable/devtools/DevToolsServer.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.js +21 -1
- package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
- package/dist/unstable/devtools/index.d.ts +58 -0
- package/dist/unstable/devtools/index.d.ts.map +1 -1
- package/dist/unstable/devtools/index.js +58 -0
- package/dist/unstable/devtools/index.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts +81 -12
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +75 -9
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.d.ts +149 -21
- package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
- package/dist/unstable/encoding/Ndjson.js +97 -13
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts +109 -18
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js +69 -13
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/encoding/index.d.ts +49 -0
- package/dist/unstable/encoding/index.d.ts.map +1 -1
- package/dist/unstable/encoding/index.js +49 -0
- package/dist/unstable/encoding/index.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts +115 -30
- package/dist/unstable/eventlog/Event.d.ts.map +1 -1
- package/dist/unstable/eventlog/Event.js +22 -2
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts +50 -17
- package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventGroup.js +24 -6
- package/dist/unstable/eventlog/EventGroup.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +104 -20
- package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.js +108 -16
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +150 -31
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +111 -20
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +42 -6
- package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +38 -5
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +92 -18
- package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js +72 -16
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +35 -8
- package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js +54 -8
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts +17 -3
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js +17 -3
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +32 -6
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.js +52 -6
- package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +74 -16
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +90 -16
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +59 -15
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js +73 -14
- package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.d.ts +10 -2
- package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js +28 -2
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts +32 -3
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +32 -3
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts +10 -2
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +28 -2
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/index.d.ts +240 -0
- package/dist/unstable/eventlog/index.d.ts.map +1 -1
- package/dist/unstable/eventlog/index.js +240 -0
- package/dist/unstable/eventlog/index.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +156 -77
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +93 -39
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +40 -7
- package/dist/unstable/http/Etag.d.ts.map +1 -1
- package/dist/unstable/http/Etag.js +27 -4
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts +29 -3
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js +33 -4
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/FindMyWay.d.ts +1 -1
- package/dist/unstable/http/FindMyWay.js +1 -1
- package/dist/unstable/http/Headers.d.ts +182 -36
- package/dist/unstable/http/Headers.d.ts.map +1 -1
- package/dist/unstable/http/Headers.js +86 -16
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +114 -26
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +98 -20
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +204 -96
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +85 -38
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.d.ts +68 -12
- package/dist/unstable/http/HttpClientError.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientError.js +71 -9
- package/dist/unstable/http/HttpClientError.js.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts +318 -100
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +151 -45
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +59 -16
- package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientResponse.js +44 -11
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +42 -16
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js +33 -13
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.d.ts +48 -7
- package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js +45 -6
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +38 -6
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +27 -2
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +38 -11
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +52 -10
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +34 -3
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +34 -3
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +209 -62
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +136 -41
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +151 -22
- package/dist/unstable/http/HttpServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpServer.js +76 -11
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +93 -10
- package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerError.js +85 -8
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +125 -21
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +101 -20
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.d.ts +32 -6
- package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js +43 -5
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +391 -67
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +205 -33
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +24 -8
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpStaticServer.js +24 -8
- package/dist/unstable/http/HttpStaticServer.js.map +1 -1
- package/dist/unstable/http/HttpTraceContext.d.ts +53 -6
- package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/unstable/http/HttpTraceContext.js +47 -5
- package/dist/unstable/http/HttpTraceContext.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +179 -28
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +131 -19
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Multipasta/HeadersParser.d.ts +1 -1
- package/dist/unstable/http/Multipasta/HeadersParser.js +1 -1
- package/dist/unstable/http/Multipasta/Node.d.ts +1 -1
- package/dist/unstable/http/Multipasta/Node.js +1 -1
- package/dist/unstable/http/Multipasta/Search.d.ts +1 -1
- package/dist/unstable/http/Multipasta/Search.js +1 -1
- package/dist/unstable/http/Multipasta/Web.d.ts +1 -1
- package/dist/unstable/http/Multipasta/Web.js +1 -1
- package/dist/unstable/http/Multipasta.d.ts +1 -1
- package/dist/unstable/http/Multipasta.js +1 -1
- package/dist/unstable/http/Template.d.ts +53 -1
- package/dist/unstable/http/Template.d.ts.map +1 -1
- package/dist/unstable/http/Template.js +26 -0
- package/dist/unstable/http/Template.js.map +1 -1
- package/dist/unstable/http/Url.d.ts +70 -56
- package/dist/unstable/http/Url.d.ts.map +1 -1
- package/dist/unstable/http/Url.js +35 -21
- package/dist/unstable/http/Url.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts +237 -51
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +120 -25
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.d.ts +452 -0
- package/dist/unstable/http/index.d.ts.map +1 -1
- package/dist/unstable/http/index.js +452 -0
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.d.ts +49 -14
- package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js +14 -8
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +54 -16
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +44 -6
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +57 -15
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +42 -6
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +214 -59
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +53 -9
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +81 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +98 -1
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +87 -20
- package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js +5 -2
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +113 -22
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +49 -5
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +19 -4
- package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js +32 -2
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +86 -38
- package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.js +59 -35
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts +73 -17
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js +38 -5
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.d.ts +4 -3
- package/dist/unstable/httpapi/HttpApiSwagger.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.js +23 -3
- package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.d.ts +6 -1
- package/dist/unstable/httpapi/HttpApiTest.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.js +26 -1
- package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +86 -15
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +73 -15
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/httpapi/index.d.ts +310 -25
- package/dist/unstable/httpapi/index.d.ts.map +1 -1
- package/dist/unstable/httpapi/index.js +310 -25
- package/dist/unstable/httpapi/index.js.map +1 -1
- package/dist/unstable/observability/Otlp.d.ts +33 -3
- package/dist/unstable/observability/Otlp.d.ts.map +1 -1
- package/dist/unstable/observability/Otlp.js +14 -3
- package/dist/unstable/observability/Otlp.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +8 -1
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +32 -1
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts +15 -2
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js +29 -2
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +17 -5
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js +32 -2
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpResource.d.ts +49 -12
- package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpResource.js +47 -5
- package/dist/unstable/observability/OtlpResource.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.d.ts +28 -3
- package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js +28 -3
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts +19 -2
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js +32 -2
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +36 -16
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.js +9 -7
- package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
- package/dist/unstable/observability/index.d.ts +160 -3
- package/dist/unstable/observability/index.d.ts.map +1 -1
- package/dist/unstable/observability/index.js +160 -3
- package/dist/unstable/observability/index.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +93 -18
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +81 -21
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +76 -15
- package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistable.js +22 -5
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.d.ts +27 -2
- package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js +24 -1
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +73 -16
- package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js +60 -13
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +98 -16
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +91 -14
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +101 -21
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +85 -16
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +26 -5
- package/dist/unstable/persistence/Redis.d.ts.map +1 -1
- package/dist/unstable/persistence/Redis.js +36 -4
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/persistence/index.d.ts +147 -0
- package/dist/unstable/persistence/index.d.ts.map +1 -1
- package/dist/unstable/persistence/index.js +147 -0
- package/dist/unstable/persistence/index.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +87 -64
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +25 -18
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +23 -12
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +11 -6
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/process/index.d.ts +2 -1
- package/dist/unstable/process/index.d.ts.map +1 -1
- package/dist/unstable/process/index.js +2 -1
- package/dist/unstable/process/index.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts +198 -59
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +121 -36
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +544 -130
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +252 -58
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +41 -2
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +35 -1
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRef.d.ts +51 -7
- package/dist/unstable/reactivity/AtomRef.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRef.js +29 -3
- package/dist/unstable/reactivity/AtomRef.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.d.ts +135 -21
- package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +69 -10
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +36 -2
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +29 -1
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts +28 -5
- package/dist/unstable/reactivity/Hydration.d.ts.map +1 -1
- package/dist/unstable/reactivity/Hydration.js +35 -3
- package/dist/unstable/reactivity/Hydration.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.d.ts +94 -13
- package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js +60 -7
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/reactivity/index.d.ts +167 -0
- package/dist/unstable/reactivity/index.d.ts.map +1 -1
- package/dist/unstable/reactivity/index.js +167 -0
- package/dist/unstable/reactivity/index.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +254 -56
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +44 -11
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +80 -19
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +52 -12
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.d.ts +26 -2
- package/dist/unstable/rpc/RpcClientError.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClientError.js +26 -2
- package/dist/unstable/rpc/RpcClientError.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts +51 -8
- package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcGroup.js +3 -1
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMessage.d.ts +128 -32
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js +23 -7
- package/dist/unstable/rpc/RpcMessage.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +100 -20
- package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js +39 -3
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +38 -4
- package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSchema.js +34 -3
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +60 -13
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +56 -12
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +73 -23
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +69 -22
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcTest.d.ts +20 -1
- package/dist/unstable/rpc/RpcTest.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcTest.js +20 -1
- package/dist/unstable/rpc/RpcTest.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +39 -6
- package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcWorker.js +16 -4
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.d.ts +10 -0
- package/dist/unstable/rpc/Utils.d.ts.map +1 -1
- package/dist/unstable/rpc/Utils.js +10 -0
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/rpc/index.d.ts +272 -0
- package/dist/unstable/rpc/index.d.ts.map +1 -1
- package/dist/unstable/rpc/index.js +272 -0
- package/dist/unstable/rpc/index.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +192 -59
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +122 -38
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +101 -24
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +22 -6
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/schema/index.d.ts +37 -0
- package/dist/unstable/schema/index.d.ts.map +1 -1
- package/dist/unstable/schema/index.js +37 -0
- package/dist/unstable/schema/index.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +168 -34
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +124 -28
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.d.ts +58 -10
- package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
- package/dist/unstable/socket/SocketServer.js +43 -5
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/socket/index.d.ts +44 -0
- package/dist/unstable/socket/index.d.ts.map +1 -1
- package/dist/unstable/socket/index.js +44 -0
- package/dist/unstable/socket/index.js.map +1 -1
- package/dist/unstable/sql/Migrator.d.ts +40 -9
- package/dist/unstable/sql/Migrator.d.ts.map +1 -1
- package/dist/unstable/sql/Migrator.js +45 -5
- package/dist/unstable/sql/Migrator.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +38 -2
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +40 -1
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.d.ts +34 -3
- package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
- package/dist/unstable/sql/SqlConnection.js +22 -0
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts +117 -0
- package/dist/unstable/sql/SqlError.d.ts.map +1 -1
- package/dist/unstable/sql/SqlError.js +131 -0
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +25 -5
- package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
- package/dist/unstable/sql/SqlModel.js +8 -4
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts +56 -13
- package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
- package/dist/unstable/sql/SqlResolver.js +44 -10
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.d.ts +29 -8
- package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
- package/dist/unstable/sql/SqlSchema.js +29 -8
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/SqlStream.d.ts +4 -0
- package/dist/unstable/sql/SqlStream.d.ts.map +1 -1
- package/dist/unstable/sql/SqlStream.js +24 -0
- package/dist/unstable/sql/SqlStream.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +151 -24
- package/dist/unstable/sql/Statement.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.js +91 -6
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/sql/index.d.ts +179 -1
- package/dist/unstable/sql/index.d.ts.map +1 -1
- package/dist/unstable/sql/index.js +179 -1
- package/dist/unstable/sql/index.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +72 -20
- package/dist/unstable/workers/Transferable.d.ts.map +1 -1
- package/dist/unstable/workers/Transferable.js +57 -14
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +61 -8
- package/dist/unstable/workers/Worker.d.ts.map +1 -1
- package/dist/unstable/workers/Worker.js +44 -4
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +31 -9
- package/dist/unstable/workers/WorkerError.d.ts.map +1 -1
- package/dist/unstable/workers/WorkerError.js +44 -7
- package/dist/unstable/workers/WorkerError.js.map +1 -1
- package/dist/unstable/workers/WorkerRunner.d.ts +32 -3
- package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
- package/dist/unstable/workers/WorkerRunner.js +24 -1
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workers/index.d.ts +81 -1
- package/dist/unstable/workers/index.d.ts.map +1 -1
- package/dist/unstable/workers/index.js +81 -1
- package/dist/unstable/workers/index.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +61 -10
- package/dist/unstable/workflow/Activity.d.ts.map +1 -1
- package/dist/unstable/workflow/Activity.js +20 -5
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +12 -3
- package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableClock.js +22 -2
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts +128 -31
- package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js +77 -13
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/DurableQueue.d.ts +33 -8
- package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableQueue.js +26 -6
- package/dist/unstable/workflow/DurableQueue.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +102 -31
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +75 -19
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +40 -5
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +16 -4
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.d.ts +40 -12
- package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.js +8 -12
- package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.d.ts +37 -2
- package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js +12 -6
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/dist/unstable/workflow/index.d.ts +160 -0
- package/dist/unstable/workflow/index.d.ts.map +1 -1
- package/dist/unstable/workflow/index.js +160 -0
- package/dist/unstable/workflow/index.js.map +1 -1
- package/package.json +11 -11
- package/src/Array.ts +151 -106
- package/src/BigDecimal.ts +620 -553
- package/src/BigInt.ts +342 -274
- package/src/Boolean.ts +189 -156
- package/src/Brand.ts +30 -5
- package/src/Cache.ts +334 -167
- package/src/Cause.ts +84 -73
- package/src/Channel.ts +1639 -667
- package/src/ChannelSchema.ts +137 -12
- package/src/Chunk.ts +575 -429
- package/src/Clock.ts +16 -9
- package/src/Combiner.ts +11 -5
- package/src/Config.ts +80 -68
- package/src/ConfigProvider.ts +33 -32
- package/src/Console.ts +88 -58
- package/src/Context.ts +401 -190
- package/src/Cron.ts +109 -48
- package/src/Crypto.ts +327 -0
- package/src/Data.ts +9 -3
- package/src/DateTime.ts +893 -464
- package/src/Deferred.ts +367 -175
- package/src/Differ.ts +44 -2
- package/src/Duration.ts +333 -186
- package/src/Effect.ts +2201 -2289
- package/src/Effectable.ts +38 -3
- package/src/Encoding.ts +78 -28
- package/src/Equal.ts +4 -3
- package/src/Equivalence.ts +18 -24
- package/src/ErrorReporter.ts +66 -82
- package/src/ExecutionPlan.ts +106 -12
- package/src/Exit.ts +6 -5
- package/src/Fiber.ts +71 -40
- package/src/FiberHandle.ts +157 -57
- package/src/FiberMap.ts +328 -163
- package/src/FiberSet.ts +130 -52
- package/src/FileSystem.ts +104 -74
- package/src/Filter.ts +166 -88
- package/src/Formatter.ts +4 -70
- package/src/Function.ts +218 -151
- package/src/Graph.ts +714 -415
- package/src/HKT.ts +29 -13
- package/src/Hash.ts +35 -24
- package/src/HashMap.ts +540 -388
- package/src/HashRing.ts +111 -34
- package/src/HashSet.ts +239 -153
- package/src/Inspectable.ts +30 -17
- package/src/Iterable.ts +336 -222
- package/src/JsonPatch.ts +13 -10
- package/src/JsonPointer.ts +13 -11
- package/src/JsonSchema.ts +16 -0
- package/src/Latch.ts +97 -26
- package/src/Layer.ts +547 -445
- package/src/LayerMap.ts +99 -26
- package/src/LogLevel.ts +92 -131
- package/src/Logger.ts +365 -297
- package/src/ManagedRuntime.ts +78 -19
- package/src/Match.ts +135 -161
- package/src/Metric.ts +362 -313
- package/src/MutableHashMap.ts +202 -127
- package/src/MutableHashSet.ts +120 -52
- package/src/MutableList.ts +157 -100
- package/src/MutableRef.ts +129 -90
- package/src/Newtype.ts +15 -2
- package/src/NonEmptyIterable.ts +38 -48
- package/src/Number.ts +261 -205
- package/src/Optic.ts +6 -7
- package/src/Option.ts +133 -156
- package/src/Order.ts +6 -6
- package/src/Ordering.ts +56 -45
- package/src/PartitionedSemaphore.ts +225 -40
- package/src/Path.ts +77 -13
- package/src/Pipeable.ts +82 -24
- package/src/PlatformError.ts +74 -6
- package/src/Pool.ts +94 -31
- package/src/Predicate.ts +17 -24
- package/src/PrimaryKey.ts +11 -3
- package/src/PubSub.ts +385 -309
- package/src/Pull.ts +94 -25
- package/src/Queue.ts +303 -184
- package/src/Random.ts +69 -93
- package/src/RcMap.ts +151 -141
- package/src/RcRef.ts +68 -32
- package/src/Record.ts +282 -137
- package/src/Redactable.ts +7 -5
- package/src/Redacted.ts +63 -34
- package/src/Reducer.ts +3 -1
- package/src/Ref.ts +173 -134
- package/src/References.ts +73 -31
- package/src/RegExp.ts +12 -6
- package/src/Request.ts +159 -34
- package/src/RequestResolver.ts +278 -121
- package/src/Resource.ts +45 -7
- package/src/Result.ts +137 -153
- package/src/Runtime.ts +42 -21
- package/src/Schedule.ts +585 -613
- package/src/Scheduler.ts +44 -7
- package/src/Schema.ts +1309 -615
- package/src/SchemaAST.ts +123 -93
- package/src/SchemaGetter.ts +52 -37
- package/src/SchemaIssue.ts +19 -24
- package/src/SchemaParser.ts +306 -85
- package/src/SchemaRepresentation.ts +89 -77
- package/src/SchemaTransformation.ts +97 -46
- package/src/SchemaUtils.ts +24 -1
- package/src/Scope.ts +107 -65
- package/src/ScopedCache.ts +195 -59
- package/src/ScopedRef.ts +28 -8
- package/src/Semaphore.ts +61 -37
- package/src/Sink.ts +461 -206
- package/src/Stdio.ts +43 -6
- package/src/Stream.ts +2361 -1613
- package/src/String.ts +174 -97
- package/src/Struct.ts +20 -18
- package/src/SubscriptionRef.ts +309 -204
- package/src/Symbol.ts +13 -5
- package/src/SynchronizedRef.ts +278 -62
- package/src/Take.ts +26 -2
- package/src/Terminal.ts +40 -7
- package/src/Tracer.ts +233 -59
- package/src/Trie.ts +280 -245
- package/src/Tuple.ts +34 -32
- package/src/TxChunk.ts +200 -155
- package/src/TxDeferred.ts +43 -29
- package/src/TxHashMap.ts +370 -231
- package/src/TxHashSet.ts +253 -159
- package/src/TxPriorityQueue.ts +97 -65
- package/src/TxPubSub.ts +77 -49
- package/src/TxQueue.ts +277 -242
- package/src/TxReentrantLock.ts +70 -47
- package/src/TxRef.ts +69 -40
- package/src/TxSemaphore.ts +101 -115
- package/src/TxSubscriptionRef.ts +74 -50
- package/src/Types.ts +31 -34
- package/src/UndefinedOr.ts +62 -25
- package/src/Unify.ts +72 -117
- package/src/Utils.ts +5 -2
- package/src/index.ts +1976 -420
- package/src/internal/schema/schema.ts +1 -1
- package/src/testing/FastCheck.ts +9 -6
- package/src/testing/TestClock.ts +63 -35
- package/src/testing/TestConsole.ts +54 -36
- package/src/testing/TestSchema.ts +10 -8
- package/src/testing/index.ts +34 -0
- package/src/unstable/ai/AiError.ts +195 -137
- package/src/unstable/ai/AnthropicStructuredOutput.ts +2 -2
- package/src/unstable/ai/Chat.ts +68 -43
- package/src/unstable/ai/EmbeddingModel.ts +12 -11
- package/src/unstable/ai/IdGenerator.ts +28 -18
- package/src/unstable/ai/LanguageModel.ts +35 -27
- package/src/unstable/ai/McpSchema.ts +342 -119
- package/src/unstable/ai/McpServer.ts +79 -20
- package/src/unstable/ai/Model.ts +10 -12
- package/src/unstable/ai/OpenAiStructuredOutput.ts +2 -2
- package/src/unstable/ai/Prompt.ts +216 -192
- package/src/unstable/ai/Response.ts +179 -167
- package/src/unstable/ai/ResponseIdTracker.ts +43 -4
- package/src/unstable/ai/Telemetry.ts +43 -33
- package/src/unstable/ai/Tokenizer.ts +14 -9
- package/src/unstable/ai/Tool.ts +168 -97
- package/src/unstable/ai/Toolkit.ts +51 -46
- package/src/unstable/ai/index.ts +121 -29
- package/src/unstable/cli/Argument.ts +226 -134
- package/src/unstable/cli/CliError.ts +96 -26
- package/src/unstable/cli/CliOutput.ts +48 -19
- package/src/unstable/cli/Command.ts +196 -115
- package/src/unstable/cli/Completions.ts +7 -7
- package/src/unstable/cli/Flag.ts +235 -142
- package/src/unstable/cli/GlobalFlag.ts +41 -13
- package/src/unstable/cli/HelpDoc.ts +39 -14
- package/src/unstable/cli/Param.ts +395 -260
- package/src/unstable/cli/Primitive.ts +79 -42
- package/src/unstable/cli/Prompt.ts +207 -59
- package/src/unstable/cli/index.ts +205 -6
- package/src/unstable/cli/internal/ansi.ts +13 -0
- package/src/unstable/cli/internal/command.ts +5 -1
- package/src/unstable/cli/internal/config.ts +3 -0
- package/src/unstable/cli/internal/lexer.ts +11 -0
- package/src/unstable/cli/internal/parser.ts +0 -1
- package/src/unstable/cluster/ClusterCron.ts +35 -1
- package/src/unstable/cluster/ClusterError.ts +56 -7
- package/src/unstable/cluster/ClusterMetrics.ts +39 -5
- package/src/unstable/cluster/ClusterSchema.ts +61 -8
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +35 -2
- package/src/unstable/cluster/DeliverAt.ts +39 -4
- package/src/unstable/cluster/Entity.ts +106 -16
- package/src/unstable/cluster/EntityAddress.ts +30 -2
- package/src/unstable/cluster/EntityId.ts +18 -3
- package/src/unstable/cluster/EntityProxy.ts +42 -14
- package/src/unstable/cluster/EntityProxyServer.ts +45 -8
- package/src/unstable/cluster/EntityResource.ts +43 -6
- package/src/unstable/cluster/EntityType.ts +27 -3
- package/src/unstable/cluster/Envelope.ts +128 -23
- package/src/unstable/cluster/HttpRunner.ts +88 -13
- package/src/unstable/cluster/K8sHttpClient.ts +49 -6
- package/src/unstable/cluster/MachineId.ts +24 -3
- package/src/unstable/cluster/Message.ts +102 -13
- package/src/unstable/cluster/MessageStorage.ts +126 -21
- package/src/unstable/cluster/Reply.ts +101 -12
- package/src/unstable/cluster/Runner.ts +47 -17
- package/src/unstable/cluster/RunnerAddress.ts +34 -2
- package/src/unstable/cluster/RunnerHealth.ts +40 -12
- package/src/unstable/cluster/RunnerServer.ts +31 -4
- package/src/unstable/cluster/RunnerStorage.ts +42 -5
- package/src/unstable/cluster/Runners.ts +76 -13
- package/src/unstable/cluster/ShardId.ts +53 -5
- package/src/unstable/cluster/Sharding.ts +35 -4
- package/src/unstable/cluster/ShardingConfig.ts +75 -10
- package/src/unstable/cluster/ShardingRegistrationEvent.ts +31 -7
- package/src/unstable/cluster/SingleRunner.ts +23 -1
- package/src/unstable/cluster/Singleton.ts +15 -1
- package/src/unstable/cluster/SingletonAddress.ts +21 -1
- package/src/unstable/cluster/Snowflake.ts +90 -19
- package/src/unstable/cluster/SocketRunner.ts +29 -2
- package/src/unstable/cluster/SqlMessageStorage.ts +27 -3
- package/src/unstable/cluster/SqlRunnerStorage.ts +46 -7
- package/src/unstable/cluster/TestRunner.ts +18 -1
- package/src/unstable/cluster/index.ts +790 -0
- package/src/unstable/cluster/internal/hash.ts +12 -0
- package/src/unstable/devtools/DevTools.ts +26 -3
- package/src/unstable/devtools/DevToolsClient.ts +32 -5
- package/src/unstable/devtools/DevToolsSchema.ts +201 -44
- package/src/unstable/devtools/DevToolsServer.ts +27 -2
- package/src/unstable/devtools/index.ts +58 -0
- package/src/unstable/encoding/Msgpack.ts +97 -12
- package/src/unstable/encoding/Ndjson.ts +149 -21
- package/src/unstable/encoding/Sse.ts +109 -18
- package/src/unstable/encoding/index.ts +49 -0
- package/src/unstable/eventlog/Event.ts +131 -30
- package/src/unstable/eventlog/EventGroup.ts +50 -17
- package/src/unstable/eventlog/EventJournal.ts +120 -20
- package/src/unstable/eventlog/EventLog.ts +150 -31
- package/src/unstable/eventlog/EventLogEncryption.ts +42 -6
- package/src/unstable/eventlog/EventLogMessage.ts +92 -18
- package/src/unstable/eventlog/EventLogRemote.ts +54 -8
- package/src/unstable/eventlog/EventLogServer.ts +33 -3
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +52 -6
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +90 -16
- package/src/unstable/eventlog/EventLogSessionAuth.ts +77 -15
- package/src/unstable/eventlog/SqlEventJournal.ts +28 -2
- package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +32 -3
- package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +28 -2
- package/src/unstable/eventlog/index.ts +240 -0
- package/src/unstable/http/Cookies.ts +156 -77
- package/src/unstable/http/Etag.ts +40 -7
- package/src/unstable/http/FetchHttpClient.ts +33 -4
- package/src/unstable/http/FindMyWay.ts +1 -1
- package/src/unstable/http/Headers.ts +252 -50
- package/src/unstable/http/HttpBody.ts +128 -26
- package/src/unstable/http/HttpClient.ts +204 -96
- package/src/unstable/http/HttpClientError.ts +80 -12
- package/src/unstable/http/HttpClientRequest.ts +318 -100
- package/src/unstable/http/HttpClientResponse.ts +59 -16
- package/src/unstable/http/HttpEffect.ts +66 -18
- package/src/unstable/http/HttpIncomingMessage.ts +48 -7
- package/src/unstable/http/HttpMethod.ts +38 -6
- package/src/unstable/http/HttpMiddleware.ts +60 -11
- package/src/unstable/http/HttpPlatform.ts +34 -3
- package/src/unstable/http/HttpRouter.ts +232 -69
- package/src/unstable/http/HttpServer.ts +151 -22
- package/src/unstable/http/HttpServerError.ts +93 -10
- package/src/unstable/http/HttpServerRequest.ts +125 -21
- package/src/unstable/http/HttpServerRespondable.ts +49 -6
- package/src/unstable/http/HttpServerResponse.ts +391 -67
- package/src/unstable/http/HttpStaticServer.ts +24 -8
- package/src/unstable/http/HttpTraceContext.ts +53 -6
- package/src/unstable/http/Multipart.ts +179 -28
- package/src/unstable/http/Multipasta/HeadersParser.ts +1 -1
- package/src/unstable/http/Multipasta/Node.ts +1 -1
- package/src/unstable/http/Multipasta/Search.ts +1 -1
- package/src/unstable/http/Multipasta/Web.ts +1 -1
- package/src/unstable/http/Multipasta.ts +1 -1
- package/src/unstable/http/Template.ts +53 -1
- package/src/unstable/http/Url.ts +70 -56
- package/src/unstable/http/UrlParams.ts +237 -51
- package/src/unstable/http/index.ts +452 -0
- package/src/unstable/httpapi/HttpApi.ts +49 -14
- package/src/unstable/httpapi/HttpApiBuilder.ts +81 -16
- package/src/unstable/httpapi/HttpApiClient.ts +78 -15
- package/src/unstable/httpapi/HttpApiEndpoint.ts +238 -59
- package/src/unstable/httpapi/HttpApiError.ts +100 -1
- package/src/unstable/httpapi/HttpApiGroup.ts +87 -20
- package/src/unstable/httpapi/HttpApiMiddleware.ts +113 -22
- package/src/unstable/httpapi/HttpApiScalar.ts +38 -4
- package/src/unstable/httpapi/HttpApiSchema.ts +86 -38
- package/src/unstable/httpapi/HttpApiSecurity.ts +73 -17
- package/src/unstable/httpapi/HttpApiSwagger.ts +23 -3
- package/src/unstable/httpapi/HttpApiTest.ts +26 -1
- package/src/unstable/httpapi/OpenApi.ts +115 -15
- package/src/unstable/httpapi/index.ts +310 -25
- package/src/unstable/observability/Otlp.ts +33 -3
- package/src/unstable/observability/OtlpExporter.ts +32 -1
- package/src/unstable/observability/OtlpLogger.ts +32 -2
- package/src/unstable/observability/OtlpMetrics.ts +39 -5
- package/src/unstable/observability/OtlpResource.ts +68 -12
- package/src/unstable/observability/OtlpSerialization.ts +28 -3
- package/src/unstable/observability/OtlpTracer.ts +41 -2
- package/src/unstable/observability/PrometheusMetrics.ts +36 -16
- package/src/unstable/observability/index.ts +160 -3
- package/src/unstable/persistence/KeyValueStore.ts +108 -28
- package/src/unstable/persistence/Persistable.ts +76 -15
- package/src/unstable/persistence/PersistedCache.ts +27 -2
- package/src/unstable/persistence/PersistedQueue.ts +98 -16
- package/src/unstable/persistence/Persistence.ts +98 -16
- package/src/unstable/persistence/RateLimiter.ts +101 -21
- package/src/unstable/persistence/Redis.ts +42 -5
- package/src/unstable/persistence/index.ts +147 -0
- package/src/unstable/process/ChildProcess.ts +90 -66
- package/src/unstable/process/ChildProcessSpawner.ts +23 -12
- package/src/unstable/process/index.ts +2 -1
- package/src/unstable/reactivity/AsyncResult.ts +204 -61
- package/src/unstable/reactivity/Atom.ts +598 -139
- package/src/unstable/reactivity/AtomHttpApi.ts +41 -2
- package/src/unstable/reactivity/AtomRef.ts +51 -7
- package/src/unstable/reactivity/AtomRegistry.ts +141 -22
- package/src/unstable/reactivity/AtomRpc.ts +36 -2
- package/src/unstable/reactivity/Hydration.ts +45 -5
- package/src/unstable/reactivity/Reactivity.ts +94 -13
- package/src/unstable/reactivity/index.ts +167 -0
- package/src/unstable/rpc/Rpc.ts +254 -56
- package/src/unstable/rpc/RpcClient.ts +106 -19
- package/src/unstable/rpc/RpcClientError.ts +26 -2
- package/src/unstable/rpc/RpcGroup.ts +51 -8
- package/src/unstable/rpc/RpcMessage.ts +128 -32
- package/src/unstable/rpc/RpcMiddleware.ts +100 -20
- package/src/unstable/rpc/RpcSchema.ts +38 -4
- package/src/unstable/rpc/RpcSerialization.ts +60 -13
- package/src/unstable/rpc/RpcServer.ts +107 -23
- package/src/unstable/rpc/RpcTest.ts +20 -1
- package/src/unstable/rpc/RpcWorker.ts +39 -6
- package/src/unstable/rpc/Utils.ts +33 -0
- package/src/unstable/rpc/index.ts +272 -0
- package/src/unstable/schema/Model.ts +245 -61
- package/src/unstable/schema/VariantSchema.ts +101 -24
- package/src/unstable/schema/index.ts +37 -0
- package/src/unstable/socket/Socket.ts +168 -34
- package/src/unstable/socket/SocketServer.ts +58 -10
- package/src/unstable/socket/index.ts +44 -0
- package/src/unstable/sql/Migrator.ts +61 -9
- package/src/unstable/sql/SqlClient.ts +59 -2
- package/src/unstable/sql/SqlConnection.ts +34 -3
- package/src/unstable/sql/SqlError.ts +135 -0
- package/src/unstable/sql/SqlModel.ts +25 -5
- package/src/unstable/sql/SqlResolver.ts +56 -13
- package/src/unstable/sql/SqlSchema.ts +29 -8
- package/src/unstable/sql/SqlStream.ts +24 -0
- package/src/unstable/sql/Statement.ts +168 -24
- package/src/unstable/sql/index.ts +179 -1
- package/src/unstable/workers/Transferable.ts +72 -20
- package/src/unstable/workers/Worker.ts +61 -8
- package/src/unstable/workers/WorkerError.ts +50 -9
- package/src/unstable/workers/WorkerRunner.ts +32 -3
- package/src/unstable/workers/index.ts +81 -1
- package/src/unstable/workflow/Activity.ts +61 -10
- package/src/unstable/workflow/DurableClock.ts +26 -3
- package/src/unstable/workflow/DurableDeferred.ts +148 -31
- package/src/unstable/workflow/DurableQueue.ts +33 -8
- package/src/unstable/workflow/Workflow.ts +123 -31
- package/src/unstable/workflow/WorkflowEngine.ts +40 -5
- package/src/unstable/workflow/WorkflowProxy.ts +40 -12
- package/src/unstable/workflow/WorkflowProxyServer.ts +41 -6
- package/src/unstable/workflow/index.ts +160 -0
package/dist/Graph.d.ts
CHANGED
|
@@ -1,4 +1,54 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* The `Graph` module provides immutable and scoped-mutable graph data
|
|
3
|
+
* structures for modeling relationships between indexed nodes and edges. A
|
|
4
|
+
* graph can be directed or undirected, stores user-defined data on both nodes
|
|
5
|
+
* and edges, and exposes traversal, analysis, path finding, transformation, and
|
|
6
|
+
* diagram export utilities.
|
|
7
|
+
*
|
|
8
|
+
* **Mental model**
|
|
9
|
+
*
|
|
10
|
+
* - Nodes and edges are addressed by stable numeric indices: {@link NodeIndex}
|
|
11
|
+
* and {@link EdgeIndex}
|
|
12
|
+
* - Node data has type `N`; edge data has type `E`
|
|
13
|
+
* - {@link Graph} values are immutable snapshots; use {@link MutableGraph}
|
|
14
|
+
* through {@link mutate}, {@link beginMutation}, or constructor callbacks to
|
|
15
|
+
* add, remove, or update nodes and edges
|
|
16
|
+
* - Directed graphs follow edge direction for neighbors and traversals, while
|
|
17
|
+
* undirected graphs treat each edge as connecting both endpoints
|
|
18
|
+
* - Missing lookups return `Option`, while structurally invalid operations such
|
|
19
|
+
* as adding an edge to a missing node throw {@link GraphError}
|
|
20
|
+
*
|
|
21
|
+
* **Common tasks**
|
|
22
|
+
*
|
|
23
|
+
* - Create graphs: {@link directed}, {@link undirected}
|
|
24
|
+
* - Mutate safely: {@link mutate}, {@link addNode}, {@link addEdge},
|
|
25
|
+
* {@link removeNode}, {@link removeEdge}
|
|
26
|
+
* - Query contents: {@link getNode}, {@link getEdge}, {@link hasNode},
|
|
27
|
+
* {@link hasEdge}, {@link nodeCount}, {@link edgeCount}, {@link neighbors}
|
|
28
|
+
* - Transform data: {@link updateNode}, {@link updateEdge}, {@link mapNodes},
|
|
29
|
+
* {@link mapEdges}, {@link filterNodes}, {@link filterEdges},
|
|
30
|
+
* {@link filterMapNodes}, {@link filterMapEdges}
|
|
31
|
+
* - Traverse lazily: {@link dfs}, {@link bfs}, {@link topo},
|
|
32
|
+
* {@link dfsPostOrder}, {@link nodes}, {@link edges}, {@link Walker}
|
|
33
|
+
* - Analyze structure: {@link isAcyclic}, {@link isBipartite},
|
|
34
|
+
* {@link connectedComponents}, {@link stronglyConnectedComponents},
|
|
35
|
+
* {@link externals}
|
|
36
|
+
* - Find paths: {@link dijkstra}, {@link astar}, {@link bellmanFord},
|
|
37
|
+
* {@link floydWarshall}
|
|
38
|
+
* - Export diagrams: {@link toGraphViz}, {@link toMermaid}
|
|
39
|
+
*
|
|
40
|
+
* **Gotchas**
|
|
41
|
+
*
|
|
42
|
+
* - Only mutable graphs can be changed. Create one with {@link mutate} or by
|
|
43
|
+
* passing a callback to {@link directed} / {@link undirected}.
|
|
44
|
+
* - Traversal APIs return lazy {@link Walker} values. Use {@link indices},
|
|
45
|
+
* {@link values}, or {@link entries} to choose what each iteration yields.
|
|
46
|
+
* - `NodeIndex` and `EdgeIndex` values are identifiers, not array offsets. They
|
|
47
|
+
* are not reused after removals.
|
|
48
|
+
* - Shortest-path algorithms require a cost function. {@link dijkstra} and
|
|
49
|
+
* {@link astar} reject negative weights; use {@link bellmanFord} or
|
|
50
|
+
* {@link floydWarshall} when negative weights are part of the model.
|
|
51
|
+
*
|
|
2
52
|
* @since 4.0.0
|
|
3
53
|
*/
|
|
4
54
|
import * as Data from "./Data.ts";
|
|
@@ -10,22 +60,22 @@ declare const TypeId = "~effect/collections/Graph";
|
|
|
10
60
|
/**
|
|
11
61
|
* Node index for node identification using plain numbers.
|
|
12
62
|
*
|
|
13
|
-
* @since 4.0.0
|
|
14
63
|
* @category models
|
|
64
|
+
* @since 3.18.0
|
|
15
65
|
*/
|
|
16
66
|
export type NodeIndex = number;
|
|
17
67
|
/**
|
|
18
68
|
* Edge index for edge identification using plain numbers.
|
|
19
69
|
*
|
|
20
|
-
* @since 4.0.0
|
|
21
70
|
* @category models
|
|
71
|
+
* @since 3.18.0
|
|
22
72
|
*/
|
|
23
73
|
export type EdgeIndex = number;
|
|
24
74
|
/**
|
|
25
75
|
* Edge data containing source, target, and user data.
|
|
26
76
|
*
|
|
27
|
-
* @since 4.0.0
|
|
28
77
|
* @category models
|
|
78
|
+
* @since 3.18.0
|
|
29
79
|
*/
|
|
30
80
|
export declare class Edge<E> extends Data.Class<{
|
|
31
81
|
readonly source: NodeIndex;
|
|
@@ -36,15 +86,20 @@ export declare class Edge<E> extends Data.Class<{
|
|
|
36
86
|
/**
|
|
37
87
|
* Graph type for distinguishing directed and undirected graphs.
|
|
38
88
|
*
|
|
39
|
-
* @since 4.0.0
|
|
40
89
|
* @category models
|
|
90
|
+
* @since 3.18.0
|
|
41
91
|
*/
|
|
42
92
|
export type Kind = "directed" | "undirected";
|
|
43
93
|
/**
|
|
44
|
-
*
|
|
94
|
+
* Common structural interface shared by immutable and mutable graphs.
|
|
95
|
+
*
|
|
96
|
+
* **Details**
|
|
97
|
+
*
|
|
98
|
+
* Contains the node and edge maps, adjacency indexes, allocation counters, and
|
|
99
|
+
* shared protocols used by both `Graph` and `MutableGraph`.
|
|
45
100
|
*
|
|
46
|
-
* @since 4.0.0
|
|
47
101
|
* @category models
|
|
102
|
+
* @since 3.18.0
|
|
48
103
|
*/
|
|
49
104
|
export interface Proto<out N, out E> extends Iterable<readonly [NodeIndex, N]>, Equal.Equal, Pipeable, Inspectable {
|
|
50
105
|
readonly [TypeId]: typeof TypeId;
|
|
@@ -59,8 +114,8 @@ export interface Proto<out N, out E> extends Iterable<readonly [NodeIndex, N]>,
|
|
|
59
114
|
/**
|
|
60
115
|
* Immutable graph interface.
|
|
61
116
|
*
|
|
62
|
-
* @since 4.0.0
|
|
63
117
|
* @category models
|
|
118
|
+
* @since 3.18.0
|
|
64
119
|
*/
|
|
65
120
|
export interface Graph<out N, out E, T extends Kind = "directed"> extends Proto<N, E> {
|
|
66
121
|
readonly type: T;
|
|
@@ -69,8 +124,8 @@ export interface Graph<out N, out E, T extends Kind = "directed"> extends Proto<
|
|
|
69
124
|
/**
|
|
70
125
|
* Mutable graph interface.
|
|
71
126
|
*
|
|
72
|
-
* @since 4.0.0
|
|
73
127
|
* @category models
|
|
128
|
+
* @since 3.18.0
|
|
74
129
|
*/
|
|
75
130
|
export interface MutableGraph<out N, out E, T extends Kind = "directed"> extends Proto<N, E> {
|
|
76
131
|
readonly type: T;
|
|
@@ -79,51 +134,59 @@ export interface MutableGraph<out N, out E, T extends Kind = "directed"> extends
|
|
|
79
134
|
/**
|
|
80
135
|
* Directed graph type alias.
|
|
81
136
|
*
|
|
82
|
-
* @since 4.0.0
|
|
83
137
|
* @category models
|
|
138
|
+
* @since 3.18.0
|
|
84
139
|
*/
|
|
85
140
|
export type DirectedGraph<N, E> = Graph<N, E, "directed">;
|
|
86
141
|
/**
|
|
87
142
|
* Undirected graph type alias.
|
|
88
143
|
*
|
|
89
|
-
* @since 4.0.0
|
|
90
144
|
* @category models
|
|
145
|
+
* @since 3.18.0
|
|
91
146
|
*/
|
|
92
147
|
export type UndirectedGraph<N, E> = Graph<N, E, "undirected">;
|
|
93
148
|
/**
|
|
94
149
|
* Mutable directed graph type alias.
|
|
95
150
|
*
|
|
96
|
-
* @since 4.0.0
|
|
97
151
|
* @category models
|
|
152
|
+
* @since 3.18.0
|
|
98
153
|
*/
|
|
99
154
|
export type MutableDirectedGraph<N, E> = MutableGraph<N, E, "directed">;
|
|
100
155
|
/**
|
|
101
156
|
* Mutable undirected graph type alias.
|
|
102
157
|
*
|
|
103
|
-
* @since 4.0.0
|
|
104
158
|
* @category models
|
|
159
|
+
* @since 3.18.0
|
|
105
160
|
*/
|
|
106
161
|
export type MutableUndirectedGraph<N, E> = MutableGraph<N, E, "undirected">;
|
|
107
162
|
declare const GraphError_base: new <A extends Record<string, any> = {}>(args: import("./Types.ts").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("./Cause.ts").YieldableError & {
|
|
108
163
|
readonly _tag: "GraphError";
|
|
109
164
|
} & Readonly<A>;
|
|
110
165
|
/**
|
|
111
|
-
*
|
|
166
|
+
* Error thrown by graph operations when the requested graph structure is
|
|
167
|
+
* invalid, such as referencing a missing node or using unsupported edge
|
|
168
|
+
* weights.
|
|
169
|
+
*
|
|
112
170
|
* @category errors
|
|
171
|
+
* @since 3.18.0
|
|
113
172
|
*/
|
|
114
173
|
export declare class GraphError extends GraphError_base<{
|
|
115
174
|
readonly message: string;
|
|
116
175
|
}> {
|
|
117
176
|
}
|
|
118
177
|
/**
|
|
178
|
+
* Returns `true` if a value has the graph runtime type identifier, narrowing
|
|
179
|
+
* it to a `Graph`.
|
|
180
|
+
*
|
|
181
|
+
* @category guards
|
|
119
182
|
* @since 4.0.0
|
|
120
|
-
* @category Guards
|
|
121
183
|
*/
|
|
122
184
|
export declare const isGraph: (u: unknown) => u is Graph<unknown, unknown>;
|
|
123
185
|
/**
|
|
124
186
|
* Creates a directed graph, optionally with initial mutations.
|
|
125
187
|
*
|
|
126
|
-
*
|
|
188
|
+
* **Example** (Creating a directed graph)
|
|
189
|
+
*
|
|
127
190
|
* ```ts
|
|
128
191
|
* import { Graph } from "effect"
|
|
129
192
|
*
|
|
@@ -137,14 +200,15 @@ export declare const isGraph: (u: unknown) => u is Graph<unknown, unknown>;
|
|
|
137
200
|
* })
|
|
138
201
|
* ```
|
|
139
202
|
*
|
|
140
|
-
* @since 4.0.0
|
|
141
203
|
* @category constructors
|
|
204
|
+
* @since 3.18.0
|
|
142
205
|
*/
|
|
143
206
|
export declare const directed: <N, E>(mutate?: (mutable: MutableDirectedGraph<N, E>) => void) => DirectedGraph<N, E>;
|
|
144
207
|
/**
|
|
145
208
|
* Creates an undirected graph, optionally with initial mutations.
|
|
146
209
|
*
|
|
147
|
-
*
|
|
210
|
+
* **Example** (Creating an undirected graph)
|
|
211
|
+
*
|
|
148
212
|
* ```ts
|
|
149
213
|
* import { Graph } from "effect"
|
|
150
214
|
*
|
|
@@ -158,14 +222,15 @@ export declare const directed: <N, E>(mutate?: (mutable: MutableDirectedGraph<N,
|
|
|
158
222
|
* })
|
|
159
223
|
* ```
|
|
160
224
|
*
|
|
161
|
-
* @since 4.0.0
|
|
162
225
|
* @category constructors
|
|
226
|
+
* @since 3.18.0
|
|
163
227
|
*/
|
|
164
228
|
export declare const undirected: <N, E>(mutate?: (mutable: MutableUndirectedGraph<N, E>) => void) => UndirectedGraph<N, E>;
|
|
165
229
|
/**
|
|
166
230
|
* Creates a mutable scope for safe graph mutations by copying the data structure.
|
|
167
231
|
*
|
|
168
|
-
*
|
|
232
|
+
* **Example** (Beginning a mutation scope)
|
|
233
|
+
*
|
|
169
234
|
* ```ts
|
|
170
235
|
* import { Graph } from "effect"
|
|
171
236
|
*
|
|
@@ -174,14 +239,15 @@ export declare const undirected: <N, E>(mutate?: (mutable: MutableUndirectedGrap
|
|
|
174
239
|
* // Now mutable can be safely modified without affecting original graph
|
|
175
240
|
* ```
|
|
176
241
|
*
|
|
177
|
-
* @since 4.0.0
|
|
178
242
|
* @category mutations
|
|
243
|
+
* @since 3.18.0
|
|
179
244
|
*/
|
|
180
245
|
export declare const beginMutation: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T>) => MutableGraph<N, E, T>;
|
|
181
246
|
/**
|
|
182
247
|
* Converts a mutable graph back to an immutable graph, ending the mutation scope.
|
|
183
248
|
*
|
|
184
|
-
*
|
|
249
|
+
* **Example** (Ending a mutation scope)
|
|
250
|
+
*
|
|
185
251
|
* ```ts
|
|
186
252
|
* import { Graph } from "effect"
|
|
187
253
|
*
|
|
@@ -191,69 +257,85 @@ export declare const beginMutation: <N, E, T extends Kind = "directed">(graph: G
|
|
|
191
257
|
* const newGraph = Graph.endMutation(mutable)
|
|
192
258
|
* ```
|
|
193
259
|
*
|
|
194
|
-
* @since 4.0.0
|
|
195
260
|
* @category mutations
|
|
261
|
+
* @since 3.18.0
|
|
196
262
|
*/
|
|
197
263
|
export declare const endMutation: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>) => Graph<N, E, T>;
|
|
198
264
|
/**
|
|
199
265
|
* Performs scoped mutations on a graph, automatically managing the mutation lifecycle.
|
|
200
266
|
*
|
|
201
|
-
*
|
|
267
|
+
* **Example** (Applying scoped mutations)
|
|
268
|
+
*
|
|
202
269
|
* ```ts
|
|
203
270
|
* import { Graph } from "effect"
|
|
204
271
|
*
|
|
205
272
|
* const graph = Graph.directed<string, number>()
|
|
206
273
|
* const newGraph = Graph.mutate(graph, (mutable) => {
|
|
207
|
-
*
|
|
208
|
-
*
|
|
274
|
+
* const nodeA = Graph.addNode(mutable, "A")
|
|
275
|
+
* const nodeB = Graph.addNode(mutable, "B")
|
|
276
|
+
* Graph.addEdge(mutable, nodeA, nodeB, 1)
|
|
209
277
|
* })
|
|
278
|
+
*
|
|
279
|
+
* console.log(Graph.nodeCount(newGraph)) // 2
|
|
280
|
+
* console.log(Graph.edgeCount(newGraph)) // 1
|
|
210
281
|
* ```
|
|
211
282
|
*
|
|
212
|
-
* @since 4.0.0
|
|
213
283
|
* @category mutations
|
|
284
|
+
* @since 3.18.0
|
|
214
285
|
*/
|
|
215
286
|
export declare const mutate: {
|
|
216
287
|
/**
|
|
217
288
|
* Performs scoped mutations on a graph, automatically managing the mutation lifecycle.
|
|
218
289
|
*
|
|
219
|
-
*
|
|
290
|
+
* **Example** (Applying scoped mutations)
|
|
291
|
+
*
|
|
220
292
|
* ```ts
|
|
221
293
|
* import { Graph } from "effect"
|
|
222
294
|
*
|
|
223
295
|
* const graph = Graph.directed<string, number>()
|
|
224
296
|
* const newGraph = Graph.mutate(graph, (mutable) => {
|
|
225
|
-
*
|
|
226
|
-
*
|
|
297
|
+
* const nodeA = Graph.addNode(mutable, "A")
|
|
298
|
+
* const nodeB = Graph.addNode(mutable, "B")
|
|
299
|
+
* Graph.addEdge(mutable, nodeA, nodeB, 1)
|
|
227
300
|
* })
|
|
301
|
+
*
|
|
302
|
+
* console.log(Graph.nodeCount(newGraph)) // 2
|
|
303
|
+
* console.log(Graph.edgeCount(newGraph)) // 1
|
|
228
304
|
* ```
|
|
229
305
|
*
|
|
230
|
-
* @since 4.0.0
|
|
231
306
|
* @category mutations
|
|
307
|
+
* @since 3.18.0
|
|
232
308
|
*/
|
|
233
309
|
<N, E, T extends Kind = "directed">(f: (mutable: MutableGraph<N, E, T>) => void): (graph: Graph<N, E, T>) => Graph<N, E, T>;
|
|
234
310
|
/**
|
|
235
311
|
* Performs scoped mutations on a graph, automatically managing the mutation lifecycle.
|
|
236
312
|
*
|
|
237
|
-
*
|
|
313
|
+
* **Example** (Applying scoped mutations)
|
|
314
|
+
*
|
|
238
315
|
* ```ts
|
|
239
316
|
* import { Graph } from "effect"
|
|
240
317
|
*
|
|
241
318
|
* const graph = Graph.directed<string, number>()
|
|
242
319
|
* const newGraph = Graph.mutate(graph, (mutable) => {
|
|
243
|
-
*
|
|
244
|
-
*
|
|
320
|
+
* const nodeA = Graph.addNode(mutable, "A")
|
|
321
|
+
* const nodeB = Graph.addNode(mutable, "B")
|
|
322
|
+
* Graph.addEdge(mutable, nodeA, nodeB, 1)
|
|
245
323
|
* })
|
|
324
|
+
*
|
|
325
|
+
* console.log(Graph.nodeCount(newGraph)) // 2
|
|
326
|
+
* console.log(Graph.edgeCount(newGraph)) // 1
|
|
246
327
|
* ```
|
|
247
328
|
*
|
|
248
|
-
* @since 4.0.0
|
|
249
329
|
* @category mutations
|
|
330
|
+
* @since 3.18.0
|
|
250
331
|
*/
|
|
251
332
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T>, f: (mutable: MutableGraph<N, E, T>) => void): Graph<N, E, T>;
|
|
252
333
|
};
|
|
253
334
|
/**
|
|
254
335
|
* Adds a new node to a mutable graph and returns its index.
|
|
255
336
|
*
|
|
256
|
-
*
|
|
337
|
+
* **Example** (Adding nodes)
|
|
338
|
+
*
|
|
257
339
|
* ```ts
|
|
258
340
|
* import { Graph } from "effect"
|
|
259
341
|
*
|
|
@@ -265,17 +347,17 @@ export declare const mutate: {
|
|
|
265
347
|
* })
|
|
266
348
|
* ```
|
|
267
349
|
*
|
|
268
|
-
* @since 4.0.0
|
|
269
350
|
* @category mutations
|
|
351
|
+
* @since 3.18.0
|
|
270
352
|
*/
|
|
271
353
|
export declare const addNode: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, data: N) => NodeIndex;
|
|
272
354
|
/**
|
|
273
355
|
* Gets the data associated with a node index, if it exists.
|
|
274
356
|
*
|
|
275
|
-
*
|
|
357
|
+
* **Example** (Getting node data)
|
|
358
|
+
*
|
|
276
359
|
* ```ts
|
|
277
|
-
* import { Graph } from "effect"
|
|
278
|
-
* import * as Option from "effect/Option"
|
|
360
|
+
* import { Graph, Option } from "effect"
|
|
279
361
|
*
|
|
280
362
|
* const graph = Graph.mutate(Graph.directed<string, number>(), (mutable) => {
|
|
281
363
|
* Graph.addNode(mutable, "Node A")
|
|
@@ -289,17 +371,17 @@ export declare const addNode: <N, E, T extends Kind = "directed">(mutable: Mutab
|
|
|
289
371
|
* }
|
|
290
372
|
* ```
|
|
291
373
|
*
|
|
292
|
-
* @since 4.0.0
|
|
293
374
|
* @category getters
|
|
375
|
+
* @since 3.18.0
|
|
294
376
|
*/
|
|
295
377
|
export declare const getNode: {
|
|
296
378
|
/**
|
|
297
379
|
* Gets the data associated with a node index, if it exists.
|
|
298
380
|
*
|
|
299
|
-
*
|
|
381
|
+
* **Example** (Getting node data)
|
|
382
|
+
*
|
|
300
383
|
* ```ts
|
|
301
|
-
* import { Graph } from "effect"
|
|
302
|
-
* import * as Option from "effect/Option"
|
|
384
|
+
* import { Graph, Option } from "effect"
|
|
303
385
|
*
|
|
304
386
|
* const graph = Graph.mutate(Graph.directed<string, number>(), (mutable) => {
|
|
305
387
|
* Graph.addNode(mutable, "Node A")
|
|
@@ -313,17 +395,17 @@ export declare const getNode: {
|
|
|
313
395
|
* }
|
|
314
396
|
* ```
|
|
315
397
|
*
|
|
316
|
-
* @since 4.0.0
|
|
317
398
|
* @category getters
|
|
399
|
+
* @since 3.18.0
|
|
318
400
|
*/
|
|
319
401
|
<N, E, T extends Kind = "directed">(nodeIndex: NodeIndex): (graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Option.Option<N>;
|
|
320
402
|
/**
|
|
321
403
|
* Gets the data associated with a node index, if it exists.
|
|
322
404
|
*
|
|
323
|
-
*
|
|
405
|
+
* **Example** (Getting node data)
|
|
406
|
+
*
|
|
324
407
|
* ```ts
|
|
325
|
-
* import { Graph } from "effect"
|
|
326
|
-
* import * as Option from "effect/Option"
|
|
408
|
+
* import { Graph, Option } from "effect"
|
|
327
409
|
*
|
|
328
410
|
* const graph = Graph.mutate(Graph.directed<string, number>(), (mutable) => {
|
|
329
411
|
* Graph.addNode(mutable, "Node A")
|
|
@@ -337,15 +419,16 @@ export declare const getNode: {
|
|
|
337
419
|
* }
|
|
338
420
|
* ```
|
|
339
421
|
*
|
|
340
|
-
* @since 4.0.0
|
|
341
422
|
* @category getters
|
|
423
|
+
* @since 3.18.0
|
|
342
424
|
*/
|
|
343
425
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, nodeIndex: NodeIndex): Option.Option<N>;
|
|
344
426
|
};
|
|
345
427
|
/**
|
|
346
428
|
* Checks if a node with the given index exists in the graph.
|
|
347
429
|
*
|
|
348
|
-
*
|
|
430
|
+
* **Example** (Checking node existence)
|
|
431
|
+
*
|
|
349
432
|
* ```ts
|
|
350
433
|
* import { Graph } from "effect"
|
|
351
434
|
*
|
|
@@ -362,14 +445,15 @@ export declare const getNode: {
|
|
|
362
445
|
* console.log(notExists) // false
|
|
363
446
|
* ```
|
|
364
447
|
*
|
|
365
|
-
* @since 4.0.0
|
|
366
448
|
* @category getters
|
|
449
|
+
* @since 3.18.0
|
|
367
450
|
*/
|
|
368
451
|
export declare const hasNode: {
|
|
369
452
|
/**
|
|
370
453
|
* Checks if a node with the given index exists in the graph.
|
|
371
454
|
*
|
|
372
|
-
*
|
|
455
|
+
* **Example** (Checking node existence)
|
|
456
|
+
*
|
|
373
457
|
* ```ts
|
|
374
458
|
* import { Graph } from "effect"
|
|
375
459
|
*
|
|
@@ -386,14 +470,15 @@ export declare const hasNode: {
|
|
|
386
470
|
* console.log(notExists) // false
|
|
387
471
|
* ```
|
|
388
472
|
*
|
|
389
|
-
* @since 4.0.0
|
|
390
473
|
* @category getters
|
|
474
|
+
* @since 3.18.0
|
|
391
475
|
*/
|
|
392
476
|
(nodeIndex: NodeIndex): <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => boolean;
|
|
393
477
|
/**
|
|
394
478
|
* Checks if a node with the given index exists in the graph.
|
|
395
479
|
*
|
|
396
|
-
*
|
|
480
|
+
* **Example** (Checking node existence)
|
|
481
|
+
*
|
|
397
482
|
* ```ts
|
|
398
483
|
* import { Graph } from "effect"
|
|
399
484
|
*
|
|
@@ -410,15 +495,16 @@ export declare const hasNode: {
|
|
|
410
495
|
* console.log(notExists) // false
|
|
411
496
|
* ```
|
|
412
497
|
*
|
|
413
|
-
* @since 4.0.0
|
|
414
498
|
* @category getters
|
|
499
|
+
* @since 3.18.0
|
|
415
500
|
*/
|
|
416
501
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, nodeIndex: NodeIndex): boolean;
|
|
417
502
|
};
|
|
418
503
|
/**
|
|
419
504
|
* Returns the number of nodes in the graph.
|
|
420
505
|
*
|
|
421
|
-
*
|
|
506
|
+
* **Example** (Counting nodes)
|
|
507
|
+
*
|
|
422
508
|
* ```ts
|
|
423
509
|
* import { Graph } from "effect"
|
|
424
510
|
*
|
|
@@ -434,14 +520,15 @@ export declare const hasNode: {
|
|
|
434
520
|
* console.log(Graph.nodeCount(graphWithNodes)) // 3
|
|
435
521
|
* ```
|
|
436
522
|
*
|
|
437
|
-
* @since 4.0.0
|
|
438
523
|
* @category getters
|
|
524
|
+
* @since 3.18.0
|
|
439
525
|
*/
|
|
440
526
|
export declare const nodeCount: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => number;
|
|
441
527
|
/**
|
|
442
528
|
* Finds the first node that matches the given predicate.
|
|
443
529
|
*
|
|
444
|
-
*
|
|
530
|
+
* **Example** (Finding the first matching node)
|
|
531
|
+
*
|
|
445
532
|
* ```ts
|
|
446
533
|
* import { Graph } from "effect"
|
|
447
534
|
*
|
|
@@ -458,14 +545,15 @@ export declare const nodeCount: <N, E, T extends Kind = "directed">(graph: Graph
|
|
|
458
545
|
* console.log(notFound) // Option.none()
|
|
459
546
|
* ```
|
|
460
547
|
*
|
|
461
|
-
* @since 4.0.0
|
|
462
548
|
* @category getters
|
|
549
|
+
* @since 3.18.0
|
|
463
550
|
*/
|
|
464
551
|
export declare const findNode: {
|
|
465
552
|
/**
|
|
466
553
|
* Finds the first node that matches the given predicate.
|
|
467
554
|
*
|
|
468
|
-
*
|
|
555
|
+
* **Example** (Finding the first matching node)
|
|
556
|
+
*
|
|
469
557
|
* ```ts
|
|
470
558
|
* import { Graph } from "effect"
|
|
471
559
|
*
|
|
@@ -482,14 +570,15 @@ export declare const findNode: {
|
|
|
482
570
|
* console.log(notFound) // Option.none()
|
|
483
571
|
* ```
|
|
484
572
|
*
|
|
485
|
-
* @since 4.0.0
|
|
486
573
|
* @category getters
|
|
574
|
+
* @since 3.18.0
|
|
487
575
|
*/
|
|
488
576
|
<N>(predicate: (data: N) => boolean): <E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Option.Option<NodeIndex>;
|
|
489
577
|
/**
|
|
490
578
|
* Finds the first node that matches the given predicate.
|
|
491
579
|
*
|
|
492
|
-
*
|
|
580
|
+
* **Example** (Finding the first matching node)
|
|
581
|
+
*
|
|
493
582
|
* ```ts
|
|
494
583
|
* import { Graph } from "effect"
|
|
495
584
|
*
|
|
@@ -506,15 +595,16 @@ export declare const findNode: {
|
|
|
506
595
|
* console.log(notFound) // Option.none()
|
|
507
596
|
* ```
|
|
508
597
|
*
|
|
509
|
-
* @since 4.0.0
|
|
510
598
|
* @category getters
|
|
599
|
+
* @since 3.18.0
|
|
511
600
|
*/
|
|
512
601
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, predicate: (data: N) => boolean): Option.Option<NodeIndex>;
|
|
513
602
|
};
|
|
514
603
|
/**
|
|
515
604
|
* Finds all nodes that match the given predicate.
|
|
516
605
|
*
|
|
517
|
-
*
|
|
606
|
+
* **Example** (Finding matching nodes)
|
|
607
|
+
*
|
|
518
608
|
* ```ts
|
|
519
609
|
* import { Graph } from "effect"
|
|
520
610
|
*
|
|
@@ -531,14 +621,15 @@ export declare const findNode: {
|
|
|
531
621
|
* console.log(empty) // []
|
|
532
622
|
* ```
|
|
533
623
|
*
|
|
534
|
-
* @since 4.0.0
|
|
535
624
|
* @category getters
|
|
625
|
+
* @since 3.18.0
|
|
536
626
|
*/
|
|
537
627
|
export declare const findNodes: {
|
|
538
628
|
/**
|
|
539
629
|
* Finds all nodes that match the given predicate.
|
|
540
630
|
*
|
|
541
|
-
*
|
|
631
|
+
* **Example** (Finding matching nodes)
|
|
632
|
+
*
|
|
542
633
|
* ```ts
|
|
543
634
|
* import { Graph } from "effect"
|
|
544
635
|
*
|
|
@@ -555,14 +646,15 @@ export declare const findNodes: {
|
|
|
555
646
|
* console.log(empty) // []
|
|
556
647
|
* ```
|
|
557
648
|
*
|
|
558
|
-
* @since 4.0.0
|
|
559
649
|
* @category getters
|
|
650
|
+
* @since 3.18.0
|
|
560
651
|
*/
|
|
561
652
|
<N>(predicate: (data: N) => boolean): <E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Array<NodeIndex>;
|
|
562
653
|
/**
|
|
563
654
|
* Finds all nodes that match the given predicate.
|
|
564
655
|
*
|
|
565
|
-
*
|
|
656
|
+
* **Example** (Finding matching nodes)
|
|
657
|
+
*
|
|
566
658
|
* ```ts
|
|
567
659
|
* import { Graph } from "effect"
|
|
568
660
|
*
|
|
@@ -579,15 +671,16 @@ export declare const findNodes: {
|
|
|
579
671
|
* console.log(empty) // []
|
|
580
672
|
* ```
|
|
581
673
|
*
|
|
582
|
-
* @since 4.0.0
|
|
583
674
|
* @category getters
|
|
675
|
+
* @since 3.18.0
|
|
584
676
|
*/
|
|
585
677
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, predicate: (data: N) => boolean): Array<NodeIndex>;
|
|
586
678
|
};
|
|
587
679
|
/**
|
|
588
680
|
* Finds the first edge that matches the given predicate.
|
|
589
681
|
*
|
|
590
|
-
*
|
|
682
|
+
* **Example** (Finding the first matching edge)
|
|
683
|
+
*
|
|
591
684
|
* ```ts
|
|
592
685
|
* import { Graph } from "effect"
|
|
593
686
|
*
|
|
@@ -606,14 +699,15 @@ export declare const findNodes: {
|
|
|
606
699
|
* console.log(notFound) // Option.none()
|
|
607
700
|
* ```
|
|
608
701
|
*
|
|
609
|
-
* @since 4.0.0
|
|
610
702
|
* @category getters
|
|
703
|
+
* @since 3.18.0
|
|
611
704
|
*/
|
|
612
705
|
export declare const findEdge: {
|
|
613
706
|
/**
|
|
614
707
|
* Finds the first edge that matches the given predicate.
|
|
615
708
|
*
|
|
616
|
-
*
|
|
709
|
+
* **Example** (Finding the first matching edge)
|
|
710
|
+
*
|
|
617
711
|
* ```ts
|
|
618
712
|
* import { Graph } from "effect"
|
|
619
713
|
*
|
|
@@ -632,14 +726,15 @@ export declare const findEdge: {
|
|
|
632
726
|
* console.log(notFound) // Option.none()
|
|
633
727
|
* ```
|
|
634
728
|
*
|
|
635
|
-
* @since 4.0.0
|
|
636
729
|
* @category getters
|
|
730
|
+
* @since 3.18.0
|
|
637
731
|
*/
|
|
638
732
|
<E>(predicate: (data: E, source: NodeIndex, target: NodeIndex) => boolean): <N, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Option.Option<EdgeIndex>;
|
|
639
733
|
/**
|
|
640
734
|
* Finds the first edge that matches the given predicate.
|
|
641
735
|
*
|
|
642
|
-
*
|
|
736
|
+
* **Example** (Finding the first matching edge)
|
|
737
|
+
*
|
|
643
738
|
* ```ts
|
|
644
739
|
* import { Graph } from "effect"
|
|
645
740
|
*
|
|
@@ -658,15 +753,16 @@ export declare const findEdge: {
|
|
|
658
753
|
* console.log(notFound) // Option.none()
|
|
659
754
|
* ```
|
|
660
755
|
*
|
|
661
|
-
* @since 4.0.0
|
|
662
756
|
* @category getters
|
|
757
|
+
* @since 3.18.0
|
|
663
758
|
*/
|
|
664
759
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, predicate: (data: E, source: NodeIndex, target: NodeIndex) => boolean): Option.Option<EdgeIndex>;
|
|
665
760
|
};
|
|
666
761
|
/**
|
|
667
762
|
* Finds all edges that match the given predicate.
|
|
668
763
|
*
|
|
669
|
-
*
|
|
764
|
+
* **Example** (Finding matching edges)
|
|
765
|
+
*
|
|
670
766
|
* ```ts
|
|
671
767
|
* import { Graph } from "effect"
|
|
672
768
|
*
|
|
@@ -686,14 +782,15 @@ export declare const findEdge: {
|
|
|
686
782
|
* console.log(empty) // []
|
|
687
783
|
* ```
|
|
688
784
|
*
|
|
689
|
-
* @since 4.0.0
|
|
690
785
|
* @category getters
|
|
786
|
+
* @since 3.18.0
|
|
691
787
|
*/
|
|
692
788
|
export declare const findEdges: {
|
|
693
789
|
/**
|
|
694
790
|
* Finds all edges that match the given predicate.
|
|
695
791
|
*
|
|
696
|
-
*
|
|
792
|
+
* **Example** (Finding matching edges)
|
|
793
|
+
*
|
|
697
794
|
* ```ts
|
|
698
795
|
* import { Graph } from "effect"
|
|
699
796
|
*
|
|
@@ -713,14 +810,15 @@ export declare const findEdges: {
|
|
|
713
810
|
* console.log(empty) // []
|
|
714
811
|
* ```
|
|
715
812
|
*
|
|
716
|
-
* @since 4.0.0
|
|
717
813
|
* @category getters
|
|
814
|
+
* @since 3.18.0
|
|
718
815
|
*/
|
|
719
816
|
<E>(predicate: (data: E, source: NodeIndex, target: NodeIndex) => boolean): <N, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Array<EdgeIndex>;
|
|
720
817
|
/**
|
|
721
818
|
* Finds all edges that match the given predicate.
|
|
722
819
|
*
|
|
723
|
-
*
|
|
820
|
+
* **Example** (Finding matching edges)
|
|
821
|
+
*
|
|
724
822
|
* ```ts
|
|
725
823
|
* import { Graph } from "effect"
|
|
726
824
|
*
|
|
@@ -740,15 +838,16 @@ export declare const findEdges: {
|
|
|
740
838
|
* console.log(empty) // []
|
|
741
839
|
* ```
|
|
742
840
|
*
|
|
743
|
-
* @since 4.0.0
|
|
744
841
|
* @category getters
|
|
842
|
+
* @since 3.18.0
|
|
745
843
|
*/
|
|
746
844
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, predicate: (data: E, source: NodeIndex, target: NodeIndex) => boolean): Array<EdgeIndex>;
|
|
747
845
|
};
|
|
748
846
|
/**
|
|
749
847
|
* Updates a single node's data by applying a transformation function.
|
|
750
848
|
*
|
|
751
|
-
*
|
|
849
|
+
* **Example** (Updating node data)
|
|
850
|
+
*
|
|
752
851
|
* ```ts
|
|
753
852
|
* import { Graph } from "effect"
|
|
754
853
|
*
|
|
@@ -762,14 +861,15 @@ export declare const findEdges: {
|
|
|
762
861
|
* console.log(nodeData) // Option.some("NODE A")
|
|
763
862
|
* ```
|
|
764
863
|
*
|
|
765
|
-
* @
|
|
766
|
-
* @
|
|
864
|
+
* @category transforming
|
|
865
|
+
* @since 3.18.0
|
|
767
866
|
*/
|
|
768
867
|
export declare const updateNode: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, index: NodeIndex, f: (data: N) => N) => void;
|
|
769
868
|
/**
|
|
770
869
|
* Updates a single edge's data by applying a transformation function.
|
|
771
870
|
*
|
|
772
|
-
*
|
|
871
|
+
* **Example** (Updating edge data)
|
|
872
|
+
*
|
|
773
873
|
* ```ts
|
|
774
874
|
* import { Graph } from "effect"
|
|
775
875
|
*
|
|
@@ -781,17 +881,23 @@ export declare const updateNode: <N, E, T extends Kind = "directed">(mutable: Mu
|
|
|
781
881
|
* })
|
|
782
882
|
*
|
|
783
883
|
* const edgeData = Graph.getEdge(result, 0)
|
|
784
|
-
* console.log(edgeData) // new Graph.Edge({ source: 0, target: 1, data: 20 })
|
|
884
|
+
* console.log(edgeData) // Option.some(new Graph.Edge({ source: 0, target: 1, data: 20 }))
|
|
785
885
|
* ```
|
|
786
886
|
*
|
|
787
|
-
* @since 4.0.0
|
|
788
887
|
* @category mutations
|
|
888
|
+
* @since 3.18.0
|
|
789
889
|
*/
|
|
790
890
|
export declare const updateEdge: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, edgeIndex: EdgeIndex, f: (data: E) => E) => void;
|
|
791
891
|
/**
|
|
792
|
-
*
|
|
892
|
+
* Transforms every node's data in a mutable graph in place using the provided
|
|
893
|
+
* mapping function.
|
|
894
|
+
*
|
|
895
|
+
* **Details**
|
|
896
|
+
*
|
|
897
|
+
* Node indices and edges are preserved; only the stored node data is replaced.
|
|
898
|
+
*
|
|
899
|
+
* **Example** (Mapping node data)
|
|
793
900
|
*
|
|
794
|
-
* @example
|
|
795
901
|
* ```ts
|
|
796
902
|
* import { Graph } from "effect"
|
|
797
903
|
*
|
|
@@ -803,17 +909,18 @@ export declare const updateEdge: <N, E, T extends Kind = "directed">(mutable: Mu
|
|
|
803
909
|
* })
|
|
804
910
|
*
|
|
805
911
|
* const nodeData = Graph.getNode(graph, 0)
|
|
806
|
-
* console.log(nodeData) //
|
|
912
|
+
* console.log(nodeData) // Option.some("NODE A")
|
|
807
913
|
* ```
|
|
808
914
|
*
|
|
809
|
-
* @
|
|
810
|
-
* @
|
|
915
|
+
* @category transforming
|
|
916
|
+
* @since 3.18.0
|
|
811
917
|
*/
|
|
812
918
|
export declare const mapNodes: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, f: (data: N) => N) => void;
|
|
813
919
|
/**
|
|
814
920
|
* Transforms all edge data in a mutable graph using the provided mapping function.
|
|
815
921
|
*
|
|
816
|
-
*
|
|
922
|
+
* **Example** (Mapping edge data)
|
|
923
|
+
*
|
|
817
924
|
* ```ts
|
|
818
925
|
* import { Graph } from "effect"
|
|
819
926
|
*
|
|
@@ -827,17 +934,18 @@ export declare const mapNodes: <N, E, T extends Kind = "directed">(mutable: Muta
|
|
|
827
934
|
* })
|
|
828
935
|
*
|
|
829
936
|
* const edgeData = Graph.getEdge(graph, 0)
|
|
830
|
-
* console.log(edgeData) // new Graph.Edge({ source: 0, target: 1, data: 20 })
|
|
937
|
+
* console.log(edgeData) // Option.some(new Graph.Edge({ source: 0, target: 1, data: 20 }))
|
|
831
938
|
* ```
|
|
832
939
|
*
|
|
833
|
-
* @
|
|
834
|
-
* @
|
|
940
|
+
* @category transforming
|
|
941
|
+
* @since 3.18.0
|
|
835
942
|
*/
|
|
836
943
|
export declare const mapEdges: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, f: (data: E) => E) => void;
|
|
837
944
|
/**
|
|
838
945
|
* Reverses all edge directions in a mutable graph by swapping source and target nodes.
|
|
839
946
|
*
|
|
840
|
-
*
|
|
947
|
+
* **Example** (Reversing edge directions)
|
|
948
|
+
*
|
|
841
949
|
* ```ts
|
|
842
950
|
* import { Graph } from "effect"
|
|
843
951
|
*
|
|
@@ -851,21 +959,21 @@ export declare const mapEdges: <N, E, T extends Kind = "directed">(mutable: Muta
|
|
|
851
959
|
* })
|
|
852
960
|
*
|
|
853
961
|
* const edge0 = Graph.getEdge(graph, 0)
|
|
854
|
-
* console.log(edge0) // new Graph.Edge({ source: 1, target: 0, data: 1 })
|
|
962
|
+
* console.log(edge0) // Option.some(new Graph.Edge({ source: 1, target: 0, data: 1 }))
|
|
855
963
|
* ```
|
|
856
964
|
*
|
|
857
|
-
* @
|
|
858
|
-
* @
|
|
965
|
+
* @category transforming
|
|
966
|
+
* @since 3.18.0
|
|
859
967
|
*/
|
|
860
968
|
export declare const reverse: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>) => void;
|
|
861
969
|
/**
|
|
862
970
|
* Filters and optionally transforms nodes in a mutable graph using a predicate function.
|
|
863
971
|
* Nodes that return Option.none are removed along with all their connected edges.
|
|
864
972
|
*
|
|
865
|
-
*
|
|
973
|
+
* **Example** (Filtering and mapping nodes)
|
|
974
|
+
*
|
|
866
975
|
* ```ts
|
|
867
|
-
* import { Graph } from "effect"
|
|
868
|
-
* import * as Option from "effect/Option"
|
|
976
|
+
* import { Graph, Option } from "effect"
|
|
869
977
|
*
|
|
870
978
|
* const graph = Graph.directed<string, number>((mutable) => {
|
|
871
979
|
* const a = Graph.addNode(mutable, "active")
|
|
@@ -885,18 +993,18 @@ export declare const reverse: <N, E, T extends Kind = "directed">(mutable: Mutab
|
|
|
885
993
|
* console.log(Graph.nodeCount(graph)) // 2 (only "active" nodes remain)
|
|
886
994
|
* ```
|
|
887
995
|
*
|
|
888
|
-
* @
|
|
889
|
-
* @
|
|
996
|
+
* @category transforming
|
|
997
|
+
* @since 3.18.0
|
|
890
998
|
*/
|
|
891
999
|
export declare const filterMapNodes: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, f: (data: N) => Option.Option<N>) => void;
|
|
892
1000
|
/**
|
|
893
1001
|
* Filters and optionally transforms edges in a mutable graph using a predicate function.
|
|
894
1002
|
* Edges that return Option.none are removed from the graph.
|
|
895
1003
|
*
|
|
896
|
-
*
|
|
1004
|
+
* **Example** (Filtering and mapping edges)
|
|
1005
|
+
*
|
|
897
1006
|
* ```ts
|
|
898
|
-
* import { Graph } from "effect"
|
|
899
|
-
* import * as Option from "effect/Option"
|
|
1007
|
+
* import { Graph, Option } from "effect"
|
|
900
1008
|
*
|
|
901
1009
|
* const graph = Graph.directed<string, number>((mutable) => {
|
|
902
1010
|
* const a = Graph.addNode(mutable, "A")
|
|
@@ -916,15 +1024,16 @@ export declare const filterMapNodes: <N, E, T extends Kind = "directed">(mutable
|
|
|
916
1024
|
* console.log(Graph.edgeCount(graph)) // 2 (edges with weight 5 removed)
|
|
917
1025
|
* ```
|
|
918
1026
|
*
|
|
919
|
-
* @
|
|
920
|
-
* @
|
|
1027
|
+
* @category transforming
|
|
1028
|
+
* @since 3.18.0
|
|
921
1029
|
*/
|
|
922
1030
|
export declare const filterMapEdges: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, f: (data: E) => Option.Option<E>) => void;
|
|
923
1031
|
/**
|
|
924
1032
|
* Filters nodes by removing those that don't match the predicate.
|
|
925
1033
|
* This function modifies the mutable graph in place.
|
|
926
1034
|
*
|
|
927
|
-
*
|
|
1035
|
+
* **Example** (Filtering nodes)
|
|
1036
|
+
*
|
|
928
1037
|
* ```ts
|
|
929
1038
|
* import { Graph } from "effect"
|
|
930
1039
|
*
|
|
@@ -941,15 +1050,16 @@ export declare const filterMapEdges: <N, E, T extends Kind = "directed">(mutable
|
|
|
941
1050
|
* console.log(Graph.nodeCount(graph)) // 2 (only "active" nodes remain)
|
|
942
1051
|
* ```
|
|
943
1052
|
*
|
|
944
|
-
* @
|
|
945
|
-
* @
|
|
1053
|
+
* @category transforming
|
|
1054
|
+
* @since 3.18.0
|
|
946
1055
|
*/
|
|
947
1056
|
export declare const filterNodes: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, predicate: (data: N) => boolean) => void;
|
|
948
1057
|
/**
|
|
949
1058
|
* Filters edges by removing those that don't match the predicate.
|
|
950
1059
|
* This function modifies the mutable graph in place.
|
|
951
1060
|
*
|
|
952
|
-
*
|
|
1061
|
+
* **Example** (Filtering edges)
|
|
1062
|
+
*
|
|
953
1063
|
* ```ts
|
|
954
1064
|
* import { Graph } from "effect"
|
|
955
1065
|
*
|
|
@@ -969,14 +1079,15 @@ export declare const filterNodes: <N, E, T extends Kind = "directed">(mutable: M
|
|
|
969
1079
|
* console.log(Graph.edgeCount(graph)) // 2 (edge with weight 5 removed)
|
|
970
1080
|
* ```
|
|
971
1081
|
*
|
|
972
|
-
* @
|
|
973
|
-
* @
|
|
1082
|
+
* @category transforming
|
|
1083
|
+
* @since 3.18.0
|
|
974
1084
|
*/
|
|
975
1085
|
export declare const filterEdges: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, predicate: (data: E) => boolean) => void;
|
|
976
1086
|
/**
|
|
977
1087
|
* Adds a new edge to a mutable graph and returns its index.
|
|
978
1088
|
*
|
|
979
|
-
*
|
|
1089
|
+
* **Example** (Adding edges)
|
|
1090
|
+
*
|
|
980
1091
|
* ```ts
|
|
981
1092
|
* import { Graph } from "effect"
|
|
982
1093
|
*
|
|
@@ -988,14 +1099,15 @@ export declare const filterEdges: <N, E, T extends Kind = "directed">(mutable: M
|
|
|
988
1099
|
* })
|
|
989
1100
|
* ```
|
|
990
1101
|
*
|
|
991
|
-
* @since 4.0.0
|
|
992
1102
|
* @category mutations
|
|
1103
|
+
* @since 3.18.0
|
|
993
1104
|
*/
|
|
994
1105
|
export declare const addEdge: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, source: NodeIndex, target: NodeIndex, data: E) => EdgeIndex;
|
|
995
1106
|
/**
|
|
996
1107
|
* Removes a node and all its incident edges from a mutable graph.
|
|
997
1108
|
*
|
|
998
|
-
*
|
|
1109
|
+
* **Example** (Removing a node)
|
|
1110
|
+
*
|
|
999
1111
|
* ```ts
|
|
1000
1112
|
* import { Graph } from "effect"
|
|
1001
1113
|
*
|
|
@@ -1009,14 +1121,15 @@ export declare const addEdge: <N, E, T extends Kind = "directed">(mutable: Mutab
|
|
|
1009
1121
|
* })
|
|
1010
1122
|
* ```
|
|
1011
1123
|
*
|
|
1012
|
-
* @since 4.0.0
|
|
1013
1124
|
* @category mutations
|
|
1125
|
+
* @since 3.18.0
|
|
1014
1126
|
*/
|
|
1015
1127
|
export declare const removeNode: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, nodeIndex: NodeIndex) => void;
|
|
1016
1128
|
/**
|
|
1017
1129
|
* Removes an edge from a mutable graph.
|
|
1018
1130
|
*
|
|
1019
|
-
*
|
|
1131
|
+
* **Example** (Removing an edge)
|
|
1132
|
+
*
|
|
1020
1133
|
* ```ts
|
|
1021
1134
|
* import { Graph } from "effect"
|
|
1022
1135
|
*
|
|
@@ -1030,14 +1143,15 @@ export declare const removeNode: <N, E, T extends Kind = "directed">(mutable: Mu
|
|
|
1030
1143
|
* })
|
|
1031
1144
|
* ```
|
|
1032
1145
|
*
|
|
1033
|
-
* @since 4.0.0
|
|
1034
1146
|
* @category mutations
|
|
1147
|
+
* @since 3.18.0
|
|
1035
1148
|
*/
|
|
1036
1149
|
export declare const removeEdge: <N, E, T extends Kind = "directed">(mutable: MutableGraph<N, E, T>, edgeIndex: EdgeIndex) => void;
|
|
1037
1150
|
/**
|
|
1038
1151
|
* Gets the edge data associated with an edge index, if it exists.
|
|
1039
1152
|
*
|
|
1040
|
-
*
|
|
1153
|
+
* **Example** (Getting edge data)
|
|
1154
|
+
*
|
|
1041
1155
|
* ```ts
|
|
1042
1156
|
* import { Graph } from "effect"
|
|
1043
1157
|
*
|
|
@@ -1052,19 +1166,20 @@ export declare const removeEdge: <N, E, T extends Kind = "directed">(mutable: Mu
|
|
|
1052
1166
|
*
|
|
1053
1167
|
* if (edgeData._tag === "Some") {
|
|
1054
1168
|
* console.log(edgeData.value.data) // 42
|
|
1055
|
-
* console.log(edgeData.value.source) //
|
|
1056
|
-
* console.log(edgeData.value.target) //
|
|
1169
|
+
* console.log(edgeData.value.source) // 0
|
|
1170
|
+
* console.log(edgeData.value.target) // 1
|
|
1057
1171
|
* }
|
|
1058
1172
|
* ```
|
|
1059
1173
|
*
|
|
1060
|
-
* @since 4.0.0
|
|
1061
1174
|
* @category getters
|
|
1175
|
+
* @since 3.18.0
|
|
1062
1176
|
*/
|
|
1063
1177
|
export declare const getEdge: {
|
|
1064
1178
|
/**
|
|
1065
1179
|
* Gets the edge data associated with an edge index, if it exists.
|
|
1066
1180
|
*
|
|
1067
|
-
*
|
|
1181
|
+
* **Example** (Getting edge data)
|
|
1182
|
+
*
|
|
1068
1183
|
* ```ts
|
|
1069
1184
|
* import { Graph } from "effect"
|
|
1070
1185
|
*
|
|
@@ -1079,19 +1194,20 @@ export declare const getEdge: {
|
|
|
1079
1194
|
*
|
|
1080
1195
|
* if (edgeData._tag === "Some") {
|
|
1081
1196
|
* console.log(edgeData.value.data) // 42
|
|
1082
|
-
* console.log(edgeData.value.source) //
|
|
1083
|
-
* console.log(edgeData.value.target) //
|
|
1197
|
+
* console.log(edgeData.value.source) // 0
|
|
1198
|
+
* console.log(edgeData.value.target) // 1
|
|
1084
1199
|
* }
|
|
1085
1200
|
* ```
|
|
1086
1201
|
*
|
|
1087
|
-
* @since 4.0.0
|
|
1088
1202
|
* @category getters
|
|
1203
|
+
* @since 3.18.0
|
|
1089
1204
|
*/
|
|
1090
1205
|
<E>(edgeIndex: EdgeIndex): <N, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Option.Option<Edge<E>>;
|
|
1091
1206
|
/**
|
|
1092
1207
|
* Gets the edge data associated with an edge index, if it exists.
|
|
1093
1208
|
*
|
|
1094
|
-
*
|
|
1209
|
+
* **Example** (Getting edge data)
|
|
1210
|
+
*
|
|
1095
1211
|
* ```ts
|
|
1096
1212
|
* import { Graph } from "effect"
|
|
1097
1213
|
*
|
|
@@ -1106,20 +1222,21 @@ export declare const getEdge: {
|
|
|
1106
1222
|
*
|
|
1107
1223
|
* if (edgeData._tag === "Some") {
|
|
1108
1224
|
* console.log(edgeData.value.data) // 42
|
|
1109
|
-
* console.log(edgeData.value.source) //
|
|
1110
|
-
* console.log(edgeData.value.target) //
|
|
1225
|
+
* console.log(edgeData.value.source) // 0
|
|
1226
|
+
* console.log(edgeData.value.target) // 1
|
|
1111
1227
|
* }
|
|
1112
1228
|
* ```
|
|
1113
1229
|
*
|
|
1114
|
-
* @since 4.0.0
|
|
1115
1230
|
* @category getters
|
|
1231
|
+
* @since 3.18.0
|
|
1116
1232
|
*/
|
|
1117
1233
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, edgeIndex: EdgeIndex): Option.Option<Edge<E>>;
|
|
1118
1234
|
};
|
|
1119
1235
|
/**
|
|
1120
1236
|
* Checks if an edge exists between two nodes in the graph.
|
|
1121
1237
|
*
|
|
1122
|
-
*
|
|
1238
|
+
* **Example** (Checking edge existence)
|
|
1239
|
+
*
|
|
1123
1240
|
* ```ts
|
|
1124
1241
|
* import { Graph } from "effect"
|
|
1125
1242
|
*
|
|
@@ -1141,14 +1258,15 @@ export declare const getEdge: {
|
|
|
1141
1258
|
* console.log(hasAC) // false
|
|
1142
1259
|
* ```
|
|
1143
1260
|
*
|
|
1144
|
-
* @since 4.0.0
|
|
1145
1261
|
* @category getters
|
|
1262
|
+
* @since 3.18.0
|
|
1146
1263
|
*/
|
|
1147
1264
|
export declare const hasEdge: {
|
|
1148
1265
|
/**
|
|
1149
1266
|
* Checks if an edge exists between two nodes in the graph.
|
|
1150
1267
|
*
|
|
1151
|
-
*
|
|
1268
|
+
* **Example** (Checking edge existence)
|
|
1269
|
+
*
|
|
1152
1270
|
* ```ts
|
|
1153
1271
|
* import { Graph } from "effect"
|
|
1154
1272
|
*
|
|
@@ -1170,14 +1288,15 @@ export declare const hasEdge: {
|
|
|
1170
1288
|
* console.log(hasAC) // false
|
|
1171
1289
|
* ```
|
|
1172
1290
|
*
|
|
1173
|
-
* @since 4.0.0
|
|
1174
1291
|
* @category getters
|
|
1292
|
+
* @since 3.18.0
|
|
1175
1293
|
*/
|
|
1176
1294
|
(source: NodeIndex, target: NodeIndex): <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => boolean;
|
|
1177
1295
|
/**
|
|
1178
1296
|
* Checks if an edge exists between two nodes in the graph.
|
|
1179
1297
|
*
|
|
1180
|
-
*
|
|
1298
|
+
* **Example** (Checking edge existence)
|
|
1299
|
+
*
|
|
1181
1300
|
* ```ts
|
|
1182
1301
|
* import { Graph } from "effect"
|
|
1183
1302
|
*
|
|
@@ -1199,15 +1318,16 @@ export declare const hasEdge: {
|
|
|
1199
1318
|
* console.log(hasAC) // false
|
|
1200
1319
|
* ```
|
|
1201
1320
|
*
|
|
1202
|
-
* @since 4.0.0
|
|
1203
1321
|
* @category getters
|
|
1322
|
+
* @since 3.18.0
|
|
1204
1323
|
*/
|
|
1205
1324
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, source: NodeIndex, target: NodeIndex): boolean;
|
|
1206
1325
|
};
|
|
1207
1326
|
/**
|
|
1208
1327
|
* Returns the number of edges in the graph.
|
|
1209
1328
|
*
|
|
1210
|
-
*
|
|
1329
|
+
* **Example** (Counting edges)
|
|
1330
|
+
*
|
|
1211
1331
|
* ```ts
|
|
1212
1332
|
* import { Graph } from "effect"
|
|
1213
1333
|
*
|
|
@@ -1226,14 +1346,20 @@ export declare const hasEdge: {
|
|
|
1226
1346
|
* console.log(Graph.edgeCount(graphWithEdges)) // 3
|
|
1227
1347
|
* ```
|
|
1228
1348
|
*
|
|
1229
|
-
* @since 4.0.0
|
|
1230
1349
|
* @category getters
|
|
1350
|
+
* @since 3.18.0
|
|
1231
1351
|
*/
|
|
1232
1352
|
export declare const edgeCount: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => number;
|
|
1233
1353
|
/**
|
|
1234
|
-
* Returns the neighboring
|
|
1354
|
+
* Returns the neighboring node indices for a node.
|
|
1355
|
+
*
|
|
1356
|
+
* **Details**
|
|
1357
|
+
*
|
|
1358
|
+
* For directed graphs, neighbors are the targets of outgoing edges. For
|
|
1359
|
+
* undirected graphs, neighbors are the other endpoints of incident edges.
|
|
1360
|
+
*
|
|
1361
|
+
* **Example** (Getting outgoing neighbors)
|
|
1235
1362
|
*
|
|
1236
|
-
* @example
|
|
1237
1363
|
* ```ts
|
|
1238
1364
|
* import { Graph } from "effect"
|
|
1239
1365
|
*
|
|
@@ -1250,20 +1376,26 @@ export declare const edgeCount: <N, E, T extends Kind = "directed">(graph: Graph
|
|
|
1250
1376
|
* const nodeC = 2
|
|
1251
1377
|
*
|
|
1252
1378
|
* const neighborsA = Graph.neighbors(graph, nodeA)
|
|
1253
|
-
* console.log(neighborsA) // [
|
|
1379
|
+
* console.log(neighborsA) // [1, 2]
|
|
1254
1380
|
*
|
|
1255
1381
|
* const neighborsB = Graph.neighbors(graph, nodeB)
|
|
1256
1382
|
* console.log(neighborsB) // []
|
|
1257
1383
|
* ```
|
|
1258
1384
|
*
|
|
1259
|
-
* @since 4.0.0
|
|
1260
1385
|
* @category getters
|
|
1386
|
+
* @since 3.18.0
|
|
1261
1387
|
*/
|
|
1262
1388
|
export declare const neighbors: {
|
|
1263
1389
|
/**
|
|
1264
|
-
* Returns the neighboring
|
|
1390
|
+
* Returns the neighboring node indices for a node.
|
|
1391
|
+
*
|
|
1392
|
+
* **Details**
|
|
1393
|
+
*
|
|
1394
|
+
* For directed graphs, neighbors are the targets of outgoing edges. For
|
|
1395
|
+
* undirected graphs, neighbors are the other endpoints of incident edges.
|
|
1396
|
+
*
|
|
1397
|
+
* **Example** (Getting outgoing neighbors)
|
|
1265
1398
|
*
|
|
1266
|
-
* @example
|
|
1267
1399
|
* ```ts
|
|
1268
1400
|
* import { Graph } from "effect"
|
|
1269
1401
|
*
|
|
@@ -1280,20 +1412,26 @@ export declare const neighbors: {
|
|
|
1280
1412
|
* const nodeC = 2
|
|
1281
1413
|
*
|
|
1282
1414
|
* const neighborsA = Graph.neighbors(graph, nodeA)
|
|
1283
|
-
* console.log(neighborsA) // [
|
|
1415
|
+
* console.log(neighborsA) // [1, 2]
|
|
1284
1416
|
*
|
|
1285
1417
|
* const neighborsB = Graph.neighbors(graph, nodeB)
|
|
1286
1418
|
* console.log(neighborsB) // []
|
|
1287
1419
|
* ```
|
|
1288
1420
|
*
|
|
1289
|
-
* @since 4.0.0
|
|
1290
1421
|
* @category getters
|
|
1422
|
+
* @since 3.18.0
|
|
1291
1423
|
*/
|
|
1292
1424
|
(nodeIndex: NodeIndex): <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Array<NodeIndex>;
|
|
1293
1425
|
/**
|
|
1294
|
-
* Returns the neighboring
|
|
1426
|
+
* Returns the neighboring node indices for a node.
|
|
1427
|
+
*
|
|
1428
|
+
* **Details**
|
|
1429
|
+
*
|
|
1430
|
+
* For directed graphs, neighbors are the targets of outgoing edges. For
|
|
1431
|
+
* undirected graphs, neighbors are the other endpoints of incident edges.
|
|
1432
|
+
*
|
|
1433
|
+
* **Example** (Getting outgoing neighbors)
|
|
1295
1434
|
*
|
|
1296
|
-
* @example
|
|
1297
1435
|
* ```ts
|
|
1298
1436
|
* import { Graph } from "effect"
|
|
1299
1437
|
*
|
|
@@ -1310,21 +1448,22 @@ export declare const neighbors: {
|
|
|
1310
1448
|
* const nodeC = 2
|
|
1311
1449
|
*
|
|
1312
1450
|
* const neighborsA = Graph.neighbors(graph, nodeA)
|
|
1313
|
-
* console.log(neighborsA) // [
|
|
1451
|
+
* console.log(neighborsA) // [1, 2]
|
|
1314
1452
|
*
|
|
1315
1453
|
* const neighborsB = Graph.neighbors(graph, nodeB)
|
|
1316
1454
|
* console.log(neighborsB) // []
|
|
1317
1455
|
* ```
|
|
1318
1456
|
*
|
|
1319
|
-
* @since 4.0.0
|
|
1320
1457
|
* @category getters
|
|
1458
|
+
* @since 3.18.0
|
|
1321
1459
|
*/
|
|
1322
1460
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, nodeIndex: NodeIndex): Array<NodeIndex>;
|
|
1323
1461
|
};
|
|
1324
1462
|
/**
|
|
1325
1463
|
* Get neighbors of a node in a specific direction for bidirectional traversal.
|
|
1326
1464
|
*
|
|
1327
|
-
*
|
|
1465
|
+
* **Example** (Traversing directed neighbors)
|
|
1466
|
+
*
|
|
1328
1467
|
* ```ts
|
|
1329
1468
|
* import { Graph } from "effect"
|
|
1330
1469
|
*
|
|
@@ -1344,14 +1483,15 @@ export declare const neighbors: {
|
|
|
1344
1483
|
* const incoming = Graph.neighborsDirected(graph, nodeB, "incoming")
|
|
1345
1484
|
* ```
|
|
1346
1485
|
*
|
|
1347
|
-
* @since 4.0.0
|
|
1348
1486
|
* @category queries
|
|
1487
|
+
* @since 3.18.0
|
|
1349
1488
|
*/
|
|
1350
1489
|
export declare const neighborsDirected: {
|
|
1351
1490
|
/**
|
|
1352
1491
|
* Get neighbors of a node in a specific direction for bidirectional traversal.
|
|
1353
1492
|
*
|
|
1354
|
-
*
|
|
1493
|
+
* **Example** (Traversing directed neighbors)
|
|
1494
|
+
*
|
|
1355
1495
|
* ```ts
|
|
1356
1496
|
* import { Graph } from "effect"
|
|
1357
1497
|
*
|
|
@@ -1371,14 +1511,15 @@ export declare const neighborsDirected: {
|
|
|
1371
1511
|
* const incoming = Graph.neighborsDirected(graph, nodeB, "incoming")
|
|
1372
1512
|
* ```
|
|
1373
1513
|
*
|
|
1374
|
-
* @since 4.0.0
|
|
1375
1514
|
* @category queries
|
|
1515
|
+
* @since 3.18.0
|
|
1376
1516
|
*/
|
|
1377
1517
|
(nodeIndex: NodeIndex, direction: Direction): <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Array<NodeIndex>;
|
|
1378
1518
|
/**
|
|
1379
1519
|
* Get neighbors of a node in a specific direction for bidirectional traversal.
|
|
1380
1520
|
*
|
|
1381
|
-
*
|
|
1521
|
+
* **Example** (Traversing directed neighbors)
|
|
1522
|
+
*
|
|
1382
1523
|
* ```ts
|
|
1383
1524
|
* import { Graph } from "effect"
|
|
1384
1525
|
*
|
|
@@ -1398,8 +1539,8 @@ export declare const neighborsDirected: {
|
|
|
1398
1539
|
* const incoming = Graph.neighborsDirected(graph, nodeB, "incoming")
|
|
1399
1540
|
* ```
|
|
1400
1541
|
*
|
|
1401
|
-
* @since 4.0.0
|
|
1402
1542
|
* @category queries
|
|
1543
|
+
* @since 3.18.0
|
|
1403
1544
|
*/
|
|
1404
1545
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, nodeIndex: NodeIndex, direction: Direction): Array<NodeIndex>;
|
|
1405
1546
|
};
|
|
@@ -1409,9 +1550,10 @@ export declare const neighborsDirected: {
|
|
|
1409
1550
|
* Provides customization for node labels, edge labels, and graph naming
|
|
1410
1551
|
* in DOT format compatible with GraphViz tools.
|
|
1411
1552
|
*
|
|
1412
|
-
*
|
|
1553
|
+
* **Example** (Configuring GraphViz labels)
|
|
1554
|
+
*
|
|
1413
1555
|
* ```ts
|
|
1414
|
-
* import type
|
|
1556
|
+
* import type { Graph } from "effect"
|
|
1415
1557
|
*
|
|
1416
1558
|
* // Basic options with custom labels
|
|
1417
1559
|
* const basicOptions: Graph.GraphVizOptions<string, number> = {
|
|
@@ -1427,8 +1569,8 @@ export declare const neighborsDirected: {
|
|
|
1427
1569
|
* }
|
|
1428
1570
|
* ```
|
|
1429
1571
|
*
|
|
1430
|
-
* @since 4.0.0
|
|
1431
1572
|
* @category models
|
|
1573
|
+
* @since 3.18.0
|
|
1432
1574
|
*/
|
|
1433
1575
|
export interface GraphVizOptions<N, E> {
|
|
1434
1576
|
/**
|
|
@@ -1450,7 +1592,8 @@ export interface GraphVizOptions<N, E> {
|
|
|
1450
1592
|
/**
|
|
1451
1593
|
* Exports a graph to GraphViz DOT format for visualization.
|
|
1452
1594
|
*
|
|
1453
|
-
*
|
|
1595
|
+
* **Example** (Exporting GraphViz DOT)
|
|
1596
|
+
*
|
|
1454
1597
|
* ```ts
|
|
1455
1598
|
* import { Graph } from "effect"
|
|
1456
1599
|
*
|
|
@@ -1475,14 +1618,15 @@ export interface GraphVizOptions<N, E> {
|
|
|
1475
1618
|
* // }
|
|
1476
1619
|
* ```
|
|
1477
1620
|
*
|
|
1478
|
-
* @since 4.0.0
|
|
1479
1621
|
* @category utils
|
|
1622
|
+
* @since 3.18.0
|
|
1480
1623
|
*/
|
|
1481
1624
|
export declare const toGraphViz: {
|
|
1482
1625
|
/**
|
|
1483
1626
|
* Exports a graph to GraphViz DOT format for visualization.
|
|
1484
1627
|
*
|
|
1485
|
-
*
|
|
1628
|
+
* **Example** (Exporting GraphViz DOT)
|
|
1629
|
+
*
|
|
1486
1630
|
* ```ts
|
|
1487
1631
|
* import { Graph } from "effect"
|
|
1488
1632
|
*
|
|
@@ -1507,14 +1651,15 @@ export declare const toGraphViz: {
|
|
|
1507
1651
|
* // }
|
|
1508
1652
|
* ```
|
|
1509
1653
|
*
|
|
1510
|
-
* @since 4.0.0
|
|
1511
1654
|
* @category utils
|
|
1655
|
+
* @since 3.18.0
|
|
1512
1656
|
*/
|
|
1513
1657
|
<N, E>(options?: GraphVizOptions<N, E>): <T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => string;
|
|
1514
1658
|
/**
|
|
1515
1659
|
* Exports a graph to GraphViz DOT format for visualization.
|
|
1516
1660
|
*
|
|
1517
|
-
*
|
|
1661
|
+
* **Example** (Exporting GraphViz DOT)
|
|
1662
|
+
*
|
|
1518
1663
|
* ```ts
|
|
1519
1664
|
* import { Graph } from "effect"
|
|
1520
1665
|
*
|
|
@@ -1539,8 +1684,8 @@ export declare const toGraphViz: {
|
|
|
1539
1684
|
* // }
|
|
1540
1685
|
* ```
|
|
1541
1686
|
*
|
|
1542
|
-
* @since 4.0.0
|
|
1543
1687
|
* @category utils
|
|
1688
|
+
* @since 3.18.0
|
|
1544
1689
|
*/
|
|
1545
1690
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, options?: GraphVizOptions<N, E>): string;
|
|
1546
1691
|
};
|
|
@@ -1557,9 +1702,10 @@ export declare const toGraphViz: {
|
|
|
1557
1702
|
* - `subroutine`: Subroutine-style nodes `A[["label"]]`
|
|
1558
1703
|
* - `cylindrical`: Cylindrical database-style nodes `A[("label")]`
|
|
1559
1704
|
*
|
|
1560
|
-
*
|
|
1705
|
+
* **Example** (Selecting Mermaid node shapes)
|
|
1706
|
+
*
|
|
1561
1707
|
* ```ts
|
|
1562
|
-
* import type
|
|
1708
|
+
* import type { Graph } from "effect"
|
|
1563
1709
|
*
|
|
1564
1710
|
* // Shape selector function for different node types
|
|
1565
1711
|
* const shapeSelector = (nodeData: string): Graph.MermaidNodeShape => {
|
|
@@ -1575,8 +1721,8 @@ export declare const toGraphViz: {
|
|
|
1575
1721
|
* }
|
|
1576
1722
|
* ```
|
|
1577
1723
|
*
|
|
1578
|
-
* @since 4.0.0
|
|
1579
1724
|
* @category models
|
|
1725
|
+
* @since 3.18.0
|
|
1580
1726
|
*/
|
|
1581
1727
|
export type MermaidNodeShape = "rectangle" | "rounded" | "circle" | "diamond" | "hexagon" | "stadium" | "subroutine" | "cylindrical";
|
|
1582
1728
|
/**
|
|
@@ -1588,9 +1734,10 @@ export type MermaidNodeShape = "rectangle" | "rounded" | "circle" | "diamond" |
|
|
|
1588
1734
|
* - `LR`: Left to Right (horizontal layout)
|
|
1589
1735
|
* - `RL`: Right to Left (reverse horizontal)
|
|
1590
1736
|
*
|
|
1591
|
-
*
|
|
1737
|
+
* **Example** (Configuring Mermaid directions)
|
|
1738
|
+
*
|
|
1592
1739
|
* ```ts
|
|
1593
|
-
* import type
|
|
1740
|
+
* import type { Graph } from "effect"
|
|
1594
1741
|
*
|
|
1595
1742
|
* // Horizontal workflow diagram
|
|
1596
1743
|
* const horizontalOptions: Graph.MermaidOptions<string, string> = {
|
|
@@ -1608,8 +1755,8 @@ export type MermaidNodeShape = "rectangle" | "rounded" | "circle" | "diamond" |
|
|
|
1608
1755
|
* }
|
|
1609
1756
|
* ```
|
|
1610
1757
|
*
|
|
1611
|
-
* @since 4.0.0
|
|
1612
1758
|
* @category models
|
|
1759
|
+
* @since 3.18.0
|
|
1613
1760
|
*/
|
|
1614
1761
|
export type MermaidDirection = "TB" | "TD" | "BT" | "RL" | "LR";
|
|
1615
1762
|
/**
|
|
@@ -1622,9 +1769,10 @@ export type MermaidDirection = "TB" | "TD" | "BT" | "RL" | "LR";
|
|
|
1622
1769
|
* When not specified, automatically selects based on graph type:
|
|
1623
1770
|
* directed graphs use "flowchart", undirected graphs use "graph".
|
|
1624
1771
|
*
|
|
1625
|
-
*
|
|
1772
|
+
* **Example** (Selecting Mermaid diagram types)
|
|
1773
|
+
*
|
|
1626
1774
|
* ```ts
|
|
1627
|
-
* import type
|
|
1775
|
+
* import type { Graph } from "effect"
|
|
1628
1776
|
*
|
|
1629
1777
|
* // Force flowchart format (even for undirected graphs)
|
|
1630
1778
|
* const flowchartOptions: Graph.MermaidOptions<string, string> = {
|
|
@@ -1640,15 +1788,15 @@ export type MermaidDirection = "TB" | "TD" | "BT" | "RL" | "LR";
|
|
|
1640
1788
|
* const autoOptions: Graph.MermaidOptions<string, string> = {}
|
|
1641
1789
|
* ```
|
|
1642
1790
|
*
|
|
1643
|
-
* @since 4.0.0
|
|
1644
1791
|
* @category models
|
|
1792
|
+
* @since 3.18.0
|
|
1645
1793
|
*/
|
|
1646
1794
|
export type MermaidDiagramType = "flowchart" | "graph";
|
|
1647
1795
|
/**
|
|
1648
1796
|
* Configuration options for Mermaid diagram generation, following GraphViz pattern.
|
|
1649
1797
|
*
|
|
1650
|
-
* @since 4.0.0
|
|
1651
1798
|
* @category models
|
|
1799
|
+
* @since 4.0.0
|
|
1652
1800
|
*/
|
|
1653
1801
|
/**
|
|
1654
1802
|
* Configuration options for Mermaid diagram generation from graphs.
|
|
@@ -1656,9 +1804,10 @@ export type MermaidDiagramType = "flowchart" | "graph";
|
|
|
1656
1804
|
* Provides customization for node labels, edge labels, diagram type,
|
|
1657
1805
|
* layout direction, node shapes, and graph naming in Mermaid format.
|
|
1658
1806
|
*
|
|
1659
|
-
*
|
|
1807
|
+
* **Example** (Configuring Mermaid output)
|
|
1808
|
+
*
|
|
1660
1809
|
* ```ts
|
|
1661
|
-
* import type
|
|
1810
|
+
* import type { Graph } from "effect"
|
|
1662
1811
|
*
|
|
1663
1812
|
* // Basic options with custom labels
|
|
1664
1813
|
* const basicOptions: Graph.MermaidOptions<string, number> = {
|
|
@@ -1676,8 +1825,8 @@ export type MermaidDiagramType = "flowchart" | "graph";
|
|
|
1676
1825
|
* }
|
|
1677
1826
|
* ```
|
|
1678
1827
|
*
|
|
1679
|
-
* @since 4.0.0
|
|
1680
1828
|
* @category models
|
|
1829
|
+
* @since 3.18.0
|
|
1681
1830
|
*/
|
|
1682
1831
|
export interface MermaidOptions<N, E> {
|
|
1683
1832
|
/**
|
|
@@ -1715,9 +1864,10 @@ export interface MermaidOptions<N, E> {
|
|
|
1715
1864
|
* structures to valid Mermaid syntax for use in documentation, web applications,
|
|
1716
1865
|
* and visualization tools.
|
|
1717
1866
|
*
|
|
1718
|
-
*
|
|
1867
|
+
* **Example** (Exporting a directed Mermaid diagram)
|
|
1868
|
+
*
|
|
1719
1869
|
* ```ts
|
|
1720
|
-
* import
|
|
1870
|
+
* import { Graph } from "effect"
|
|
1721
1871
|
*
|
|
1722
1872
|
* // Basic directed graph export
|
|
1723
1873
|
* const graph = Graph.directed<string, number>((mutable) => {
|
|
@@ -1738,9 +1888,10 @@ export interface MermaidOptions<N, E> {
|
|
|
1738
1888
|
* // 0 -->|"2"| 2
|
|
1739
1889
|
* ```
|
|
1740
1890
|
*
|
|
1741
|
-
*
|
|
1891
|
+
* **Example** (Exporting an undirected Mermaid diagram)
|
|
1892
|
+
*
|
|
1742
1893
|
* ```ts
|
|
1743
|
-
* import
|
|
1894
|
+
* import { Graph } from "effect"
|
|
1744
1895
|
*
|
|
1745
1896
|
* // Undirected graph with custom labels and direction
|
|
1746
1897
|
* const socialGraph = Graph.undirected<{ name: string }, string>((mutable) => {
|
|
@@ -1765,9 +1916,10 @@ export interface MermaidOptions<N, E> {
|
|
|
1765
1916
|
* // 1 ---|"colleagues"| 2
|
|
1766
1917
|
* ```
|
|
1767
1918
|
*
|
|
1768
|
-
*
|
|
1919
|
+
* **Example** (Customizing Mermaid node shapes)
|
|
1920
|
+
*
|
|
1769
1921
|
* ```ts
|
|
1770
|
-
* import
|
|
1922
|
+
* import { Graph } from "effect"
|
|
1771
1923
|
*
|
|
1772
1924
|
* // Advanced styling with node shapes for flowchart
|
|
1773
1925
|
* const workflow = Graph.directed<{ type: string; name: string }, string>(
|
|
@@ -1816,9 +1968,10 @@ export interface MermaidOptions<N, E> {
|
|
|
1816
1968
|
* // 2 --> 3
|
|
1817
1969
|
* ```
|
|
1818
1970
|
*
|
|
1819
|
-
*
|
|
1971
|
+
* **Example** (Visualizing dependency graphs)
|
|
1972
|
+
*
|
|
1820
1973
|
* ```ts
|
|
1821
|
-
* import
|
|
1974
|
+
* import { Graph } from "effect"
|
|
1822
1975
|
*
|
|
1823
1976
|
* // Real-world example: Software dependency graph
|
|
1824
1977
|
* interface Dependency {
|
|
@@ -1877,12 +2030,8 @@ export interface MermaidOptions<N, E> {
|
|
|
1877
2030
|
* // 0 -->|"builds with"| 3
|
|
1878
2031
|
* ```
|
|
1879
2032
|
*
|
|
1880
|
-
* @param graph - The graph to export (directed or undirected)
|
|
1881
|
-
* @param options - Optional configuration for the Mermaid output
|
|
1882
|
-
* @returns Mermaid diagram syntax as a string
|
|
1883
|
-
*
|
|
1884
|
-
* @since 4.0.0
|
|
1885
2033
|
* @category utils
|
|
2034
|
+
* @since 3.18.0
|
|
1886
2035
|
*/
|
|
1887
2036
|
export declare const toMermaid: {
|
|
1888
2037
|
/**
|
|
@@ -1893,9 +2042,10 @@ export declare const toMermaid: {
|
|
|
1893
2042
|
* structures to valid Mermaid syntax for use in documentation, web applications,
|
|
1894
2043
|
* and visualization tools.
|
|
1895
2044
|
*
|
|
1896
|
-
*
|
|
2045
|
+
* **Example** (Exporting a directed Mermaid diagram)
|
|
2046
|
+
*
|
|
1897
2047
|
* ```ts
|
|
1898
|
-
* import
|
|
2048
|
+
* import { Graph } from "effect"
|
|
1899
2049
|
*
|
|
1900
2050
|
* // Basic directed graph export
|
|
1901
2051
|
* const graph = Graph.directed<string, number>((mutable) => {
|
|
@@ -1916,9 +2066,10 @@ export declare const toMermaid: {
|
|
|
1916
2066
|
* // 0 -->|"2"| 2
|
|
1917
2067
|
* ```
|
|
1918
2068
|
*
|
|
1919
|
-
*
|
|
2069
|
+
* **Example** (Exporting an undirected Mermaid diagram)
|
|
2070
|
+
*
|
|
1920
2071
|
* ```ts
|
|
1921
|
-
* import
|
|
2072
|
+
* import { Graph } from "effect"
|
|
1922
2073
|
*
|
|
1923
2074
|
* // Undirected graph with custom labels and direction
|
|
1924
2075
|
* const socialGraph = Graph.undirected<{ name: string }, string>((mutable) => {
|
|
@@ -1943,9 +2094,10 @@ export declare const toMermaid: {
|
|
|
1943
2094
|
* // 1 ---|"colleagues"| 2
|
|
1944
2095
|
* ```
|
|
1945
2096
|
*
|
|
1946
|
-
*
|
|
2097
|
+
* **Example** (Customizing Mermaid node shapes)
|
|
2098
|
+
*
|
|
1947
2099
|
* ```ts
|
|
1948
|
-
* import
|
|
2100
|
+
* import { Graph } from "effect"
|
|
1949
2101
|
*
|
|
1950
2102
|
* // Advanced styling with node shapes for flowchart
|
|
1951
2103
|
* const workflow = Graph.directed<{ type: string; name: string }, string>(
|
|
@@ -1994,9 +2146,10 @@ export declare const toMermaid: {
|
|
|
1994
2146
|
* // 2 --> 3
|
|
1995
2147
|
* ```
|
|
1996
2148
|
*
|
|
1997
|
-
*
|
|
2149
|
+
* **Example** (Visualizing dependency graphs)
|
|
2150
|
+
*
|
|
1998
2151
|
* ```ts
|
|
1999
|
-
* import
|
|
2152
|
+
* import { Graph } from "effect"
|
|
2000
2153
|
*
|
|
2001
2154
|
* // Real-world example: Software dependency graph
|
|
2002
2155
|
* interface Dependency {
|
|
@@ -2055,12 +2208,8 @@ export declare const toMermaid: {
|
|
|
2055
2208
|
* // 0 -->|"builds with"| 3
|
|
2056
2209
|
* ```
|
|
2057
2210
|
*
|
|
2058
|
-
* @param graph - The graph to export (directed or undirected)
|
|
2059
|
-
* @param options - Optional configuration for the Mermaid output
|
|
2060
|
-
* @returns Mermaid diagram syntax as a string
|
|
2061
|
-
*
|
|
2062
|
-
* @since 4.0.0
|
|
2063
2211
|
* @category utils
|
|
2212
|
+
* @since 3.18.0
|
|
2064
2213
|
*/
|
|
2065
2214
|
<N, E>(options?: MermaidOptions<N, E>): <T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => string;
|
|
2066
2215
|
/**
|
|
@@ -2071,9 +2220,10 @@ export declare const toMermaid: {
|
|
|
2071
2220
|
* structures to valid Mermaid syntax for use in documentation, web applications,
|
|
2072
2221
|
* and visualization tools.
|
|
2073
2222
|
*
|
|
2074
|
-
*
|
|
2223
|
+
* **Example** (Exporting a directed Mermaid diagram)
|
|
2224
|
+
*
|
|
2075
2225
|
* ```ts
|
|
2076
|
-
* import
|
|
2226
|
+
* import { Graph } from "effect"
|
|
2077
2227
|
*
|
|
2078
2228
|
* // Basic directed graph export
|
|
2079
2229
|
* const graph = Graph.directed<string, number>((mutable) => {
|
|
@@ -2094,9 +2244,10 @@ export declare const toMermaid: {
|
|
|
2094
2244
|
* // 0 -->|"2"| 2
|
|
2095
2245
|
* ```
|
|
2096
2246
|
*
|
|
2097
|
-
*
|
|
2247
|
+
* **Example** (Exporting an undirected Mermaid diagram)
|
|
2248
|
+
*
|
|
2098
2249
|
* ```ts
|
|
2099
|
-
* import
|
|
2250
|
+
* import { Graph } from "effect"
|
|
2100
2251
|
*
|
|
2101
2252
|
* // Undirected graph with custom labels and direction
|
|
2102
2253
|
* const socialGraph = Graph.undirected<{ name: string }, string>((mutable) => {
|
|
@@ -2121,9 +2272,10 @@ export declare const toMermaid: {
|
|
|
2121
2272
|
* // 1 ---|"colleagues"| 2
|
|
2122
2273
|
* ```
|
|
2123
2274
|
*
|
|
2124
|
-
*
|
|
2275
|
+
* **Example** (Customizing Mermaid node shapes)
|
|
2276
|
+
*
|
|
2125
2277
|
* ```ts
|
|
2126
|
-
* import
|
|
2278
|
+
* import { Graph } from "effect"
|
|
2127
2279
|
*
|
|
2128
2280
|
* // Advanced styling with node shapes for flowchart
|
|
2129
2281
|
* const workflow = Graph.directed<{ type: string; name: string }, string>(
|
|
@@ -2172,9 +2324,10 @@ export declare const toMermaid: {
|
|
|
2172
2324
|
* // 2 --> 3
|
|
2173
2325
|
* ```
|
|
2174
2326
|
*
|
|
2175
|
-
*
|
|
2327
|
+
* **Example** (Visualizing dependency graphs)
|
|
2328
|
+
*
|
|
2176
2329
|
* ```ts
|
|
2177
|
-
* import
|
|
2330
|
+
* import { Graph } from "effect"
|
|
2178
2331
|
*
|
|
2179
2332
|
* // Real-world example: Software dependency graph
|
|
2180
2333
|
* interface Dependency {
|
|
@@ -2233,19 +2386,16 @@ export declare const toMermaid: {
|
|
|
2233
2386
|
* // 0 -->|"builds with"| 3
|
|
2234
2387
|
* ```
|
|
2235
2388
|
*
|
|
2236
|
-
* @param graph - The graph to export (directed or undirected)
|
|
2237
|
-
* @param options - Optional configuration for the Mermaid output
|
|
2238
|
-
* @returns Mermaid diagram syntax as a string
|
|
2239
|
-
*
|
|
2240
|
-
* @since 4.0.0
|
|
2241
2389
|
* @category utils
|
|
2390
|
+
* @since 3.18.0
|
|
2242
2391
|
*/
|
|
2243
2392
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, options?: MermaidOptions<N, E>): string;
|
|
2244
2393
|
};
|
|
2245
2394
|
/**
|
|
2246
2395
|
* Direction for graph traversal, indicating which edges to follow.
|
|
2247
2396
|
*
|
|
2248
|
-
*
|
|
2397
|
+
* **Example** (Traversing by direction)
|
|
2398
|
+
*
|
|
2249
2399
|
* ```ts
|
|
2250
2400
|
* import { Graph } from "effect"
|
|
2251
2401
|
*
|
|
@@ -2266,8 +2416,8 @@ export declare const toMermaid: {
|
|
|
2266
2416
|
* )
|
|
2267
2417
|
* ```
|
|
2268
2418
|
*
|
|
2269
|
-
* @since 4.0.0
|
|
2270
2419
|
* @category models
|
|
2420
|
+
* @since 3.18.0
|
|
2271
2421
|
*/
|
|
2272
2422
|
export type Direction = "outgoing" | "incoming";
|
|
2273
2423
|
/**
|
|
@@ -2277,7 +2427,8 @@ export type Direction = "outgoing" | "incoming";
|
|
|
2277
2427
|
* For directed graphs, any back edge creates a cycle. For undirected graphs,
|
|
2278
2428
|
* a back edge that doesn't go to the immediate parent creates a cycle.
|
|
2279
2429
|
*
|
|
2280
|
-
*
|
|
2430
|
+
* **Example** (Checking cycles)
|
|
2431
|
+
*
|
|
2281
2432
|
* ```ts
|
|
2282
2433
|
* import { Graph } from "effect"
|
|
2283
2434
|
*
|
|
@@ -2301,8 +2452,8 @@ export type Direction = "outgoing" | "incoming";
|
|
|
2301
2452
|
* console.log(Graph.isAcyclic(cyclic)) // false
|
|
2302
2453
|
* ```
|
|
2303
2454
|
*
|
|
2304
|
-
* @since 4.0.0
|
|
2305
2455
|
* @category algorithms
|
|
2456
|
+
* @since 3.18.0
|
|
2306
2457
|
*/
|
|
2307
2458
|
export declare const isAcyclic: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => boolean;
|
|
2308
2459
|
/**
|
|
@@ -2312,7 +2463,8 @@ export declare const isAcyclic: <N, E, T extends Kind = "directed">(graph: Graph
|
|
|
2312
2463
|
* such that no two vertices within the same set are adjacent. Uses BFS coloring
|
|
2313
2464
|
* to determine bipartiteness.
|
|
2314
2465
|
*
|
|
2315
|
-
*
|
|
2466
|
+
* **Example** (Checking bipartite graphs)
|
|
2467
|
+
*
|
|
2316
2468
|
* ```ts
|
|
2317
2469
|
* import { Graph } from "effect"
|
|
2318
2470
|
*
|
|
@@ -2340,15 +2492,16 @@ export declare const isAcyclic: <N, E, T extends Kind = "directed">(graph: Graph
|
|
|
2340
2492
|
* console.log(Graph.isBipartite(triangle)) // false
|
|
2341
2493
|
* ```
|
|
2342
2494
|
*
|
|
2343
|
-
* @since 4.0.0
|
|
2344
2495
|
* @category algorithms
|
|
2496
|
+
* @since 3.18.0
|
|
2345
2497
|
*/
|
|
2346
2498
|
export declare const isBipartite: <N, E>(graph: Graph<N, E, "undirected"> | MutableGraph<N, E, "undirected">) => boolean;
|
|
2347
2499
|
/**
|
|
2348
2500
|
* Find connected components in an undirected graph.
|
|
2349
2501
|
* Each component is represented as an array of node indices.
|
|
2350
2502
|
*
|
|
2351
|
-
*
|
|
2503
|
+
* **Example** (Finding connected components)
|
|
2504
|
+
*
|
|
2352
2505
|
* ```ts
|
|
2353
2506
|
* import { Graph } from "effect"
|
|
2354
2507
|
*
|
|
@@ -2365,15 +2518,16 @@ export declare const isBipartite: <N, E>(graph: Graph<N, E, "undirected"> | Muta
|
|
|
2365
2518
|
* console.log(components) // [[0, 1], [2, 3]]
|
|
2366
2519
|
* ```
|
|
2367
2520
|
*
|
|
2368
|
-
* @since 4.0.0
|
|
2369
2521
|
* @category algorithms
|
|
2522
|
+
* @since 3.18.0
|
|
2370
2523
|
*/
|
|
2371
2524
|
export declare const connectedComponents: <N, E>(graph: Graph<N, E, "undirected"> | MutableGraph<N, E, "undirected">) => Array<Array<NodeIndex>>;
|
|
2372
2525
|
/**
|
|
2373
2526
|
* Find strongly connected components in a directed graph using Kosaraju's algorithm.
|
|
2374
2527
|
* Each SCC is represented as an array of node indices.
|
|
2375
2528
|
*
|
|
2376
|
-
*
|
|
2529
|
+
* **Example** (Finding strongly connected components)
|
|
2530
|
+
*
|
|
2377
2531
|
* ```ts
|
|
2378
2532
|
* import { Graph } from "effect"
|
|
2379
2533
|
*
|
|
@@ -2390,15 +2544,20 @@ export declare const connectedComponents: <N, E>(graph: Graph<N, E, "undirected"
|
|
|
2390
2544
|
* console.log(sccs) // [[0, 1, 2]]
|
|
2391
2545
|
* ```
|
|
2392
2546
|
*
|
|
2393
|
-
* @since 4.0.0
|
|
2394
2547
|
* @category algorithms
|
|
2548
|
+
* @since 3.18.0
|
|
2395
2549
|
*/
|
|
2396
2550
|
export declare const stronglyConnectedComponents: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Array<Array<NodeIndex>>;
|
|
2397
2551
|
/**
|
|
2398
|
-
* Result of a shortest path computation
|
|
2552
|
+
* Result of a shortest path computation.
|
|
2553
|
+
*
|
|
2554
|
+
* **Details**
|
|
2555
|
+
*
|
|
2556
|
+
* Contains the node-index path, the total numeric distance, and the edge data
|
|
2557
|
+
* encountered along the path.
|
|
2399
2558
|
*
|
|
2400
|
-
* @since 4.0.0
|
|
2401
2559
|
* @category models
|
|
2560
|
+
* @since 3.18.0
|
|
2402
2561
|
*/
|
|
2403
2562
|
export interface PathResult<E> {
|
|
2404
2563
|
readonly path: Array<NodeIndex>;
|
|
@@ -2406,10 +2565,15 @@ export interface PathResult<E> {
|
|
|
2406
2565
|
readonly costs: Array<E>;
|
|
2407
2566
|
}
|
|
2408
2567
|
/**
|
|
2409
|
-
* Configuration for Dijkstra's algorithm.
|
|
2568
|
+
* Configuration for finding a shortest path with Dijkstra's algorithm.
|
|
2569
|
+
*
|
|
2570
|
+
* **Details**
|
|
2571
|
+
*
|
|
2572
|
+
* Specifies the source and target node indices, plus a cost function that maps
|
|
2573
|
+
* each edge's data to a non-negative numeric weight.
|
|
2410
2574
|
*
|
|
2411
|
-
* @since 4.0.0
|
|
2412
2575
|
* @category models
|
|
2576
|
+
* @since 3.18.0
|
|
2413
2577
|
*/
|
|
2414
2578
|
export interface DijkstraConfig<E> {
|
|
2415
2579
|
source: NodeIndex;
|
|
@@ -2417,12 +2581,17 @@ export interface DijkstraConfig<E> {
|
|
|
2417
2581
|
cost: (edgeData: E) => number;
|
|
2418
2582
|
}
|
|
2419
2583
|
/**
|
|
2420
|
-
*
|
|
2584
|
+
* Finds the shortest path from the configured source node to the target node
|
|
2585
|
+
* using Dijkstra's algorithm.
|
|
2586
|
+
*
|
|
2587
|
+
* **Details**
|
|
2588
|
+
*
|
|
2589
|
+
* Edge costs must be non-negative. Returns `Option.none()` when the target is
|
|
2590
|
+
* not reachable, and throws a `GraphError` when either endpoint is missing or a
|
|
2591
|
+
* negative edge cost is encountered.
|
|
2421
2592
|
*
|
|
2422
|
-
*
|
|
2423
|
-
* path from a source node to a target node in O((V + E) log V) time complexity.
|
|
2593
|
+
* **Example** (Finding shortest paths with Dijkstra)
|
|
2424
2594
|
*
|
|
2425
|
-
* @example
|
|
2426
2595
|
* ```ts
|
|
2427
2596
|
* import { Graph } from "effect"
|
|
2428
2597
|
*
|
|
@@ -2447,17 +2616,22 @@ export interface DijkstraConfig<E> {
|
|
|
2447
2616
|
* }
|
|
2448
2617
|
* ```
|
|
2449
2618
|
*
|
|
2450
|
-
* @since 4.0.0
|
|
2451
2619
|
* @category algorithms
|
|
2620
|
+
* @since 3.18.0
|
|
2452
2621
|
*/
|
|
2453
2622
|
export declare const dijkstra: {
|
|
2454
2623
|
/**
|
|
2455
|
-
*
|
|
2624
|
+
* Finds the shortest path from the configured source node to the target node
|
|
2625
|
+
* using Dijkstra's algorithm.
|
|
2626
|
+
*
|
|
2627
|
+
* **Details**
|
|
2456
2628
|
*
|
|
2457
|
-
*
|
|
2458
|
-
*
|
|
2629
|
+
* Edge costs must be non-negative. Returns `Option.none()` when the target is
|
|
2630
|
+
* not reachable, and throws a `GraphError` when either endpoint is missing or a
|
|
2631
|
+
* negative edge cost is encountered.
|
|
2632
|
+
*
|
|
2633
|
+
* **Example** (Finding shortest paths with Dijkstra)
|
|
2459
2634
|
*
|
|
2460
|
-
* @example
|
|
2461
2635
|
* ```ts
|
|
2462
2636
|
* import { Graph } from "effect"
|
|
2463
2637
|
*
|
|
@@ -2482,17 +2656,22 @@ export declare const dijkstra: {
|
|
|
2482
2656
|
* }
|
|
2483
2657
|
* ```
|
|
2484
2658
|
*
|
|
2485
|
-
* @since 4.0.0
|
|
2486
2659
|
* @category algorithms
|
|
2660
|
+
* @since 3.18.0
|
|
2487
2661
|
*/
|
|
2488
2662
|
<E>(config: DijkstraConfig<E>): <N, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Option.Option<PathResult<E>>;
|
|
2489
2663
|
/**
|
|
2490
|
-
*
|
|
2664
|
+
* Finds the shortest path from the configured source node to the target node
|
|
2665
|
+
* using Dijkstra's algorithm.
|
|
2666
|
+
*
|
|
2667
|
+
* **Details**
|
|
2491
2668
|
*
|
|
2492
|
-
*
|
|
2493
|
-
*
|
|
2669
|
+
* Edge costs must be non-negative. Returns `Option.none()` when the target is
|
|
2670
|
+
* not reachable, and throws a `GraphError` when either endpoint is missing or a
|
|
2671
|
+
* negative edge cost is encountered.
|
|
2672
|
+
*
|
|
2673
|
+
* **Example** (Finding shortest paths with Dijkstra)
|
|
2494
2674
|
*
|
|
2495
|
-
* @example
|
|
2496
2675
|
* ```ts
|
|
2497
2676
|
* import { Graph } from "effect"
|
|
2498
2677
|
*
|
|
@@ -2517,16 +2696,21 @@ export declare const dijkstra: {
|
|
|
2517
2696
|
* }
|
|
2518
2697
|
* ```
|
|
2519
2698
|
*
|
|
2520
|
-
* @since 4.0.0
|
|
2521
2699
|
* @category algorithms
|
|
2700
|
+
* @since 3.18.0
|
|
2522
2701
|
*/
|
|
2523
2702
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config: DijkstraConfig<E>): Option.Option<PathResult<E>>;
|
|
2524
2703
|
};
|
|
2525
2704
|
/**
|
|
2526
|
-
* Result of all-pairs shortest path computation.
|
|
2705
|
+
* Result of an all-pairs shortest path computation.
|
|
2706
|
+
*
|
|
2707
|
+
* **Details**
|
|
2708
|
+
*
|
|
2709
|
+
* Contains distance, node-path, and edge-data maps keyed by source and target
|
|
2710
|
+
* node indices.
|
|
2527
2711
|
*
|
|
2528
|
-
* @since 4.0.0
|
|
2529
2712
|
* @category models
|
|
2713
|
+
* @since 3.18.0
|
|
2530
2714
|
*/
|
|
2531
2715
|
export interface AllPairsResult<E> {
|
|
2532
2716
|
readonly distances: Map<NodeIndex, Map<NodeIndex, number>>;
|
|
@@ -2534,14 +2718,17 @@ export interface AllPairsResult<E> {
|
|
|
2534
2718
|
readonly costs: Map<NodeIndex, Map<NodeIndex, Array<E>>>;
|
|
2535
2719
|
}
|
|
2536
2720
|
/**
|
|
2537
|
-
*
|
|
2721
|
+
* Finds shortest paths between all pairs of nodes using the Floyd-Warshall
|
|
2722
|
+
* algorithm.
|
|
2538
2723
|
*
|
|
2539
|
-
*
|
|
2540
|
-
* It can handle negative edge weights and detect negative cycles.
|
|
2724
|
+
* **Details**
|
|
2541
2725
|
*
|
|
2542
|
-
*
|
|
2726
|
+
* Computes distances, reconstructed node paths, and edge-data paths for every
|
|
2727
|
+
* source and target pair in O(V^3) time. Negative edge weights are allowed, but
|
|
2728
|
+
* a `GraphError` is thrown if any negative cycle is detected.
|
|
2729
|
+
*
|
|
2730
|
+
* **Example** (Finding all-pairs shortest paths)
|
|
2543
2731
|
*
|
|
2544
|
-
* @example
|
|
2545
2732
|
* ```ts
|
|
2546
2733
|
* import { Graph } from "effect"
|
|
2547
2734
|
*
|
|
@@ -2559,19 +2746,22 @@ export interface AllPairsResult<E> {
|
|
|
2559
2746
|
* const pathAToC = result.paths.get(0)?.get(2) // [0, 1, 2]
|
|
2560
2747
|
* ```
|
|
2561
2748
|
*
|
|
2562
|
-
* @since 4.0.0
|
|
2563
2749
|
* @category algorithms
|
|
2750
|
+
* @since 3.18.0
|
|
2564
2751
|
*/
|
|
2565
2752
|
export declare const floydWarshall: {
|
|
2566
2753
|
/**
|
|
2567
|
-
*
|
|
2754
|
+
* Finds shortest paths between all pairs of nodes using the Floyd-Warshall
|
|
2755
|
+
* algorithm.
|
|
2568
2756
|
*
|
|
2569
|
-
*
|
|
2570
|
-
* It can handle negative edge weights and detect negative cycles.
|
|
2757
|
+
* **Details**
|
|
2571
2758
|
*
|
|
2572
|
-
*
|
|
2759
|
+
* Computes distances, reconstructed node paths, and edge-data paths for every
|
|
2760
|
+
* source and target pair in O(V^3) time. Negative edge weights are allowed, but
|
|
2761
|
+
* a `GraphError` is thrown if any negative cycle is detected.
|
|
2762
|
+
*
|
|
2763
|
+
* **Example** (Finding all-pairs shortest paths)
|
|
2573
2764
|
*
|
|
2574
|
-
* @example
|
|
2575
2765
|
* ```ts
|
|
2576
2766
|
* import { Graph } from "effect"
|
|
2577
2767
|
*
|
|
@@ -2589,19 +2779,22 @@ export declare const floydWarshall: {
|
|
|
2589
2779
|
* const pathAToC = result.paths.get(0)?.get(2) // [0, 1, 2]
|
|
2590
2780
|
* ```
|
|
2591
2781
|
*
|
|
2592
|
-
* @since 4.0.0
|
|
2593
2782
|
* @category algorithms
|
|
2783
|
+
* @since 3.18.0
|
|
2594
2784
|
*/
|
|
2595
2785
|
<E>(cost: (edgeData: E) => number): <N, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => AllPairsResult<E>;
|
|
2596
2786
|
/**
|
|
2597
|
-
*
|
|
2787
|
+
* Finds shortest paths between all pairs of nodes using the Floyd-Warshall
|
|
2788
|
+
* algorithm.
|
|
2789
|
+
*
|
|
2790
|
+
* **Details**
|
|
2598
2791
|
*
|
|
2599
|
-
*
|
|
2600
|
-
*
|
|
2792
|
+
* Computes distances, reconstructed node paths, and edge-data paths for every
|
|
2793
|
+
* source and target pair in O(V^3) time. Negative edge weights are allowed, but
|
|
2794
|
+
* a `GraphError` is thrown if any negative cycle is detected.
|
|
2601
2795
|
*
|
|
2602
|
-
*
|
|
2796
|
+
* **Example** (Finding all-pairs shortest paths)
|
|
2603
2797
|
*
|
|
2604
|
-
* @example
|
|
2605
2798
|
* ```ts
|
|
2606
2799
|
* import { Graph } from "effect"
|
|
2607
2800
|
*
|
|
@@ -2619,16 +2812,21 @@ export declare const floydWarshall: {
|
|
|
2619
2812
|
* const pathAToC = result.paths.get(0)?.get(2) // [0, 1, 2]
|
|
2620
2813
|
* ```
|
|
2621
2814
|
*
|
|
2622
|
-
* @since 4.0.0
|
|
2623
2815
|
* @category algorithms
|
|
2816
|
+
* @since 3.18.0
|
|
2624
2817
|
*/
|
|
2625
2818
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, cost: (edgeData: E) => number): AllPairsResult<E>;
|
|
2626
2819
|
};
|
|
2627
2820
|
/**
|
|
2628
|
-
* Configuration for A*
|
|
2821
|
+
* Configuration for finding a shortest path with the A* algorithm.
|
|
2822
|
+
*
|
|
2823
|
+
* **Details**
|
|
2824
|
+
*
|
|
2825
|
+
* Specifies the source and target node indices, an edge-cost function, and a
|
|
2826
|
+
* heuristic that estimates the remaining cost from a node to the target.
|
|
2629
2827
|
*
|
|
2630
|
-
* @since 4.0.0
|
|
2631
2828
|
* @category models
|
|
2829
|
+
* @since 3.18.0
|
|
2632
2830
|
*/
|
|
2633
2831
|
export interface AstarConfig<E, N> {
|
|
2634
2832
|
source: NodeIndex;
|
|
@@ -2637,13 +2835,18 @@ export interface AstarConfig<E, N> {
|
|
|
2637
2835
|
heuristic: (sourceNodeData: N, targetNodeData: N) => number;
|
|
2638
2836
|
}
|
|
2639
2837
|
/**
|
|
2640
|
-
*
|
|
2838
|
+
* Finds the shortest path from the configured source node to the target node
|
|
2839
|
+
* using the A* pathfinding algorithm.
|
|
2840
|
+
*
|
|
2841
|
+
* **Details**
|
|
2641
2842
|
*
|
|
2642
|
-
*
|
|
2643
|
-
*
|
|
2644
|
-
*
|
|
2843
|
+
* The edge-cost function must return non-negative weights, and the heuristic
|
|
2844
|
+
* should be admissible to preserve shortest-path guarantees. Returns
|
|
2845
|
+
* `Option.none()` when the target is not reachable, and throws a `GraphError`
|
|
2846
|
+
* when either endpoint is missing or a negative edge cost is encountered.
|
|
2847
|
+
*
|
|
2848
|
+
* **Example** (Finding shortest paths with A-star)
|
|
2645
2849
|
*
|
|
2646
|
-
* @example
|
|
2647
2850
|
* ```ts
|
|
2648
2851
|
* import { Graph } from "effect"
|
|
2649
2852
|
*
|
|
@@ -2674,18 +2877,23 @@ export interface AstarConfig<E, N> {
|
|
|
2674
2877
|
* }
|
|
2675
2878
|
* ```
|
|
2676
2879
|
*
|
|
2677
|
-
* @since 4.0.0
|
|
2678
2880
|
* @category algorithms
|
|
2881
|
+
* @since 3.18.0
|
|
2679
2882
|
*/
|
|
2680
2883
|
export declare const astar: {
|
|
2681
2884
|
/**
|
|
2682
|
-
*
|
|
2885
|
+
* Finds the shortest path from the configured source node to the target node
|
|
2886
|
+
* using the A* pathfinding algorithm.
|
|
2683
2887
|
*
|
|
2684
|
-
*
|
|
2685
|
-
*
|
|
2686
|
-
* The
|
|
2888
|
+
* **Details**
|
|
2889
|
+
*
|
|
2890
|
+
* The edge-cost function must return non-negative weights, and the heuristic
|
|
2891
|
+
* should be admissible to preserve shortest-path guarantees. Returns
|
|
2892
|
+
* `Option.none()` when the target is not reachable, and throws a `GraphError`
|
|
2893
|
+
* when either endpoint is missing or a negative edge cost is encountered.
|
|
2894
|
+
*
|
|
2895
|
+
* **Example** (Finding shortest paths with A-star)
|
|
2687
2896
|
*
|
|
2688
|
-
* @example
|
|
2689
2897
|
* ```ts
|
|
2690
2898
|
* import { Graph } from "effect"
|
|
2691
2899
|
*
|
|
@@ -2716,18 +2924,23 @@ export declare const astar: {
|
|
|
2716
2924
|
* }
|
|
2717
2925
|
* ```
|
|
2718
2926
|
*
|
|
2719
|
-
* @since 4.0.0
|
|
2720
2927
|
* @category algorithms
|
|
2928
|
+
* @since 3.18.0
|
|
2721
2929
|
*/
|
|
2722
2930
|
<E, N>(config: AstarConfig<E, N>): <T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Option.Option<PathResult<E>>;
|
|
2723
2931
|
/**
|
|
2724
|
-
*
|
|
2932
|
+
* Finds the shortest path from the configured source node to the target node
|
|
2933
|
+
* using the A* pathfinding algorithm.
|
|
2934
|
+
*
|
|
2935
|
+
* **Details**
|
|
2936
|
+
*
|
|
2937
|
+
* The edge-cost function must return non-negative weights, and the heuristic
|
|
2938
|
+
* should be admissible to preserve shortest-path guarantees. Returns
|
|
2939
|
+
* `Option.none()` when the target is not reachable, and throws a `GraphError`
|
|
2940
|
+
* when either endpoint is missing or a negative edge cost is encountered.
|
|
2725
2941
|
*
|
|
2726
|
-
*
|
|
2727
|
-
* the search towards the target, potentially finding paths faster than Dijkstra's.
|
|
2728
|
-
* The heuristic must be admissible (never overestimate the actual cost).
|
|
2942
|
+
* **Example** (Finding shortest paths with A-star)
|
|
2729
2943
|
*
|
|
2730
|
-
* @example
|
|
2731
2944
|
* ```ts
|
|
2732
2945
|
* import { Graph } from "effect"
|
|
2733
2946
|
*
|
|
@@ -2758,16 +2971,21 @@ export declare const astar: {
|
|
|
2758
2971
|
* }
|
|
2759
2972
|
* ```
|
|
2760
2973
|
*
|
|
2761
|
-
* @since 4.0.0
|
|
2762
2974
|
* @category algorithms
|
|
2975
|
+
* @since 3.18.0
|
|
2763
2976
|
*/
|
|
2764
2977
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config: AstarConfig<E, N>): Option.Option<PathResult<E>>;
|
|
2765
2978
|
};
|
|
2766
2979
|
/**
|
|
2767
|
-
* Configuration for Bellman-Ford algorithm.
|
|
2980
|
+
* Configuration for finding a shortest path with the Bellman-Ford algorithm.
|
|
2981
|
+
*
|
|
2982
|
+
* **Details**
|
|
2983
|
+
*
|
|
2984
|
+
* Specifies the source and target node indices, plus a cost function that maps
|
|
2985
|
+
* each edge's data to a numeric weight.
|
|
2768
2986
|
*
|
|
2769
|
-
* @since 4.0.0
|
|
2770
2987
|
* @category models
|
|
2988
|
+
* @since 3.18.0
|
|
2771
2989
|
*/
|
|
2772
2990
|
export interface BellmanFordConfig<E> {
|
|
2773
2991
|
source: NodeIndex;
|
|
@@ -2775,13 +2993,17 @@ export interface BellmanFordConfig<E> {
|
|
|
2775
2993
|
cost: (edgeData: E) => number;
|
|
2776
2994
|
}
|
|
2777
2995
|
/**
|
|
2778
|
-
*
|
|
2996
|
+
* Finds the shortest path from the configured source node to the target node
|
|
2997
|
+
* using the Bellman-Ford algorithm.
|
|
2998
|
+
*
|
|
2999
|
+
* **Details**
|
|
2779
3000
|
*
|
|
2780
|
-
*
|
|
2781
|
-
*
|
|
2782
|
-
*
|
|
3001
|
+
* Negative edge weights are allowed. Returns `Option.none()` when the target is
|
|
3002
|
+
* unreachable or when a negative cycle affects the path to the target. Throws a
|
|
3003
|
+
* `GraphError` when either endpoint is missing.
|
|
3004
|
+
*
|
|
3005
|
+
* **Example** (Finding shortest paths with Bellman-Ford)
|
|
2783
3006
|
*
|
|
2784
|
-
* @example
|
|
2785
3007
|
* ```ts
|
|
2786
3008
|
* import { Graph } from "effect"
|
|
2787
3009
|
*
|
|
@@ -2806,18 +3028,22 @@ export interface BellmanFordConfig<E> {
|
|
|
2806
3028
|
* }
|
|
2807
3029
|
* ```
|
|
2808
3030
|
*
|
|
2809
|
-
* @since 4.0.0
|
|
2810
3031
|
* @category algorithms
|
|
3032
|
+
* @since 3.18.0
|
|
2811
3033
|
*/
|
|
2812
3034
|
export declare const bellmanFord: {
|
|
2813
3035
|
/**
|
|
2814
|
-
*
|
|
3036
|
+
* Finds the shortest path from the configured source node to the target node
|
|
3037
|
+
* using the Bellman-Ford algorithm.
|
|
3038
|
+
*
|
|
3039
|
+
* **Details**
|
|
2815
3040
|
*
|
|
2816
|
-
*
|
|
2817
|
-
*
|
|
2818
|
-
*
|
|
3041
|
+
* Negative edge weights are allowed. Returns `Option.none()` when the target is
|
|
3042
|
+
* unreachable or when a negative cycle affects the path to the target. Throws a
|
|
3043
|
+
* `GraphError` when either endpoint is missing.
|
|
3044
|
+
*
|
|
3045
|
+
* **Example** (Finding shortest paths with Bellman-Ford)
|
|
2819
3046
|
*
|
|
2820
|
-
* @example
|
|
2821
3047
|
* ```ts
|
|
2822
3048
|
* import { Graph } from "effect"
|
|
2823
3049
|
*
|
|
@@ -2842,18 +3068,22 @@ export declare const bellmanFord: {
|
|
|
2842
3068
|
* }
|
|
2843
3069
|
* ```
|
|
2844
3070
|
*
|
|
2845
|
-
* @since 4.0.0
|
|
2846
3071
|
* @category algorithms
|
|
3072
|
+
* @since 3.18.0
|
|
2847
3073
|
*/
|
|
2848
3074
|
<E>(config: BellmanFordConfig<E>): <N, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => Option.Option<PathResult<E>>;
|
|
2849
3075
|
/**
|
|
2850
|
-
*
|
|
3076
|
+
* Finds the shortest path from the configured source node to the target node
|
|
3077
|
+
* using the Bellman-Ford algorithm.
|
|
2851
3078
|
*
|
|
2852
|
-
*
|
|
2853
|
-
*
|
|
2854
|
-
* Returns Option.none()
|
|
3079
|
+
* **Details**
|
|
3080
|
+
*
|
|
3081
|
+
* Negative edge weights are allowed. Returns `Option.none()` when the target is
|
|
3082
|
+
* unreachable or when a negative cycle affects the path to the target. Throws a
|
|
3083
|
+
* `GraphError` when either endpoint is missing.
|
|
3084
|
+
*
|
|
3085
|
+
* **Example** (Finding shortest paths with Bellman-Ford)
|
|
2855
3086
|
*
|
|
2856
|
-
* @example
|
|
2857
3087
|
* ```ts
|
|
2858
3088
|
* import { Graph } from "effect"
|
|
2859
3089
|
*
|
|
@@ -2878,19 +3108,22 @@ export declare const bellmanFord: {
|
|
|
2878
3108
|
* }
|
|
2879
3109
|
* ```
|
|
2880
3110
|
*
|
|
2881
|
-
* @since 4.0.0
|
|
2882
3111
|
* @category algorithms
|
|
3112
|
+
* @since 3.18.0
|
|
2883
3113
|
*/
|
|
2884
3114
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config: BellmanFordConfig<E>): Option.Option<PathResult<E>>;
|
|
2885
3115
|
};
|
|
2886
3116
|
/**
|
|
2887
|
-
*
|
|
3117
|
+
* Iterable wrapper used by graph traversal and listing APIs.
|
|
3118
|
+
*
|
|
3119
|
+
* **Details**
|
|
3120
|
+
*
|
|
3121
|
+
* A `Walker` yields `[index, data]` pairs lazily and can be viewed as just the
|
|
3122
|
+
* indices, just the values, or mapped entries with `indices`, `values`,
|
|
3123
|
+
* `entries`, and `visit`.
|
|
2888
3124
|
*
|
|
2889
|
-
*
|
|
2890
|
-
* including traversal iterators (DFS, BFS, etc.) and element iterators (nodes, externals).
|
|
2891
|
-
* It uses a mapEntry function pattern for flexible iteration and transformation.
|
|
3125
|
+
* **Example** (Working with node walkers)
|
|
2892
3126
|
*
|
|
2893
|
-
* @example
|
|
2894
3127
|
* ```ts
|
|
2895
3128
|
* import { Graph } from "effect"
|
|
2896
3129
|
*
|
|
@@ -2914,8 +3147,8 @@ export declare const bellmanFord: {
|
|
|
2914
3147
|
* const nodeEntries = Array.from(Graph.entries(allNodes)) // [[0, "A"], [1, "B"]]
|
|
2915
3148
|
* ```
|
|
2916
3149
|
*
|
|
2917
|
-
* @since 4.0.0
|
|
2918
3150
|
* @category models
|
|
3151
|
+
* @since 3.18.0
|
|
2919
3152
|
*/
|
|
2920
3153
|
export declare class Walker<T, N> implements Iterable<[T, N]> {
|
|
2921
3154
|
readonly [Symbol.iterator]: () => Iterator<[T, N]>;
|
|
@@ -2926,7 +3159,8 @@ export declare class Walker<T, N> implements Iterable<[T, N]> {
|
|
|
2926
3159
|
* and returns an iterable of the mapped values. Skips elements that
|
|
2927
3160
|
* no longer exist in the graph.
|
|
2928
3161
|
*
|
|
2929
|
-
*
|
|
3162
|
+
* **Example** (Visiting walker elements)
|
|
3163
|
+
*
|
|
2930
3164
|
* ```ts
|
|
2931
3165
|
* import { Graph } from "effect"
|
|
2932
3166
|
*
|
|
@@ -2950,7 +3184,6 @@ export declare class Walker<T, N> implements Iterable<[T, N]> {
|
|
|
2950
3184
|
* ```
|
|
2951
3185
|
*
|
|
2952
3186
|
* @since 4.0.0
|
|
2953
|
-
* @category iterators
|
|
2954
3187
|
*/
|
|
2955
3188
|
readonly visit: <U>(f: (index: T, data: N) => U) => Iterable<U>;
|
|
2956
3189
|
constructor(
|
|
@@ -2961,7 +3194,8 @@ export declare class Walker<T, N> implements Iterable<[T, N]> {
|
|
|
2961
3194
|
* and returns an iterable of the mapped values. Skips elements that
|
|
2962
3195
|
* no longer exist in the graph.
|
|
2963
3196
|
*
|
|
2964
|
-
*
|
|
3197
|
+
* **Example** (Visiting walker elements)
|
|
3198
|
+
*
|
|
2965
3199
|
* ```ts
|
|
2966
3200
|
* import { Graph } from "effect"
|
|
2967
3201
|
*
|
|
@@ -2984,8 +3218,8 @@ export declare class Walker<T, N> implements Iterable<[T, N]> {
|
|
|
2984
3218
|
* console.log(custom) // [{ id: 0, name: "A" }, { id: 1, name: "B" }]
|
|
2985
3219
|
* ```
|
|
2986
3220
|
*
|
|
2987
|
-
* @since 4.0.0
|
|
2988
3221
|
* @category iterators
|
|
3222
|
+
* @since 4.0.0
|
|
2989
3223
|
*/
|
|
2990
3224
|
visit: <U>(f: (index: T, data: N) => U) => Iterable<U>);
|
|
2991
3225
|
}
|
|
@@ -2993,22 +3227,23 @@ export declare class Walker<T, N> implements Iterable<[T, N]> {
|
|
|
2993
3227
|
* Type alias for node iteration using Walker.
|
|
2994
3228
|
* NodeWalker is represented as Walker<NodeIndex, N>.
|
|
2995
3229
|
*
|
|
2996
|
-
* @since 4.0.0
|
|
2997
3230
|
* @category models
|
|
3231
|
+
* @since 3.18.0
|
|
2998
3232
|
*/
|
|
2999
3233
|
export type NodeWalker<N> = Walker<NodeIndex, N>;
|
|
3000
3234
|
/**
|
|
3001
3235
|
* Type alias for edge iteration using Walker.
|
|
3002
3236
|
* EdgeWalker is represented as Walker<EdgeIndex, Edge<E>>.
|
|
3003
3237
|
*
|
|
3004
|
-
* @since 4.0.0
|
|
3005
3238
|
* @category models
|
|
3239
|
+
* @since 3.18.0
|
|
3006
3240
|
*/
|
|
3007
3241
|
export type EdgeWalker<E> = Walker<EdgeIndex, Edge<E>>;
|
|
3008
3242
|
/**
|
|
3009
3243
|
* Returns an iterator over the indices in the walker.
|
|
3010
3244
|
*
|
|
3011
|
-
*
|
|
3245
|
+
* **Example** (Iterating walker indices)
|
|
3246
|
+
*
|
|
3012
3247
|
* ```ts
|
|
3013
3248
|
* import { Graph } from "effect"
|
|
3014
3249
|
*
|
|
@@ -3023,14 +3258,15 @@ export type EdgeWalker<E> = Walker<EdgeIndex, Edge<E>>;
|
|
|
3023
3258
|
* console.log(indices) // [0, 1]
|
|
3024
3259
|
* ```
|
|
3025
3260
|
*
|
|
3026
|
-
* @
|
|
3027
|
-
* @
|
|
3261
|
+
* @category utils
|
|
3262
|
+
* @since 3.18.0
|
|
3028
3263
|
*/
|
|
3029
3264
|
export declare const indices: <T, N>(walker: Walker<T, N>) => Iterable<T>;
|
|
3030
3265
|
/**
|
|
3031
3266
|
* Returns an iterator over the values (data) in the walker.
|
|
3032
3267
|
*
|
|
3033
|
-
*
|
|
3268
|
+
* **Example** (Iterating walker values)
|
|
3269
|
+
*
|
|
3034
3270
|
* ```ts
|
|
3035
3271
|
* import { Graph } from "effect"
|
|
3036
3272
|
*
|
|
@@ -3045,14 +3281,15 @@ export declare const indices: <T, N>(walker: Walker<T, N>) => Iterable<T>;
|
|
|
3045
3281
|
* console.log(values) // ["A", "B"]
|
|
3046
3282
|
* ```
|
|
3047
3283
|
*
|
|
3048
|
-
* @
|
|
3049
|
-
* @
|
|
3284
|
+
* @category utils
|
|
3285
|
+
* @since 3.18.0
|
|
3050
3286
|
*/
|
|
3051
3287
|
export declare const values: <T, N>(walker: Walker<T, N>) => Iterable<N>;
|
|
3052
3288
|
/**
|
|
3053
3289
|
* Returns an iterator over [index, data] entries in the walker.
|
|
3054
3290
|
*
|
|
3055
|
-
*
|
|
3291
|
+
* **Example** (Iterating walker entries)
|
|
3292
|
+
*
|
|
3056
3293
|
* ```ts
|
|
3057
3294
|
* import { Graph } from "effect"
|
|
3058
3295
|
*
|
|
@@ -3067,27 +3304,38 @@ export declare const values: <T, N>(walker: Walker<T, N>) => Iterable<N>;
|
|
|
3067
3304
|
* console.log(entries) // [[0, "A"], [1, "B"]]
|
|
3068
3305
|
* ```
|
|
3069
3306
|
*
|
|
3070
|
-
* @
|
|
3071
|
-
* @
|
|
3307
|
+
* @category utils
|
|
3308
|
+
* @since 3.18.0
|
|
3072
3309
|
*/
|
|
3073
3310
|
export declare const entries: <T, N>(walker: Walker<T, N>) => Iterable<[T, N]>;
|
|
3074
3311
|
/**
|
|
3075
|
-
* Configuration
|
|
3312
|
+
* Configuration for DFS, BFS, and postorder graph traversals.
|
|
3313
|
+
*
|
|
3314
|
+
* **Details**
|
|
3315
|
+
*
|
|
3316
|
+
* `start` supplies the node indices where traversal begins. If it is omitted,
|
|
3317
|
+
* the iterator is empty. `direction` chooses whether traversal follows
|
|
3318
|
+
* outgoing or incoming edges.
|
|
3076
3319
|
*
|
|
3077
|
-
* @since 4.0.0
|
|
3078
3320
|
* @category models
|
|
3321
|
+
* @since 3.18.0
|
|
3079
3322
|
*/
|
|
3080
3323
|
export interface SearchConfig {
|
|
3081
3324
|
readonly start?: Array<NodeIndex>;
|
|
3082
3325
|
readonly direction?: Direction;
|
|
3083
3326
|
}
|
|
3084
3327
|
/**
|
|
3085
|
-
* Creates a
|
|
3328
|
+
* Creates a lazy depth-first traversal iterator from the configured start
|
|
3329
|
+
* nodes.
|
|
3086
3330
|
*
|
|
3087
|
-
*
|
|
3088
|
-
*
|
|
3331
|
+
* **Details**
|
|
3332
|
+
*
|
|
3333
|
+
* If no start nodes are supplied, the iterator is empty. The `direction` option
|
|
3334
|
+
* chooses whether to follow outgoing or incoming edges. Throws a `GraphError`
|
|
3335
|
+
* if any configured start node does not exist.
|
|
3336
|
+
*
|
|
3337
|
+
* **Example** (Traversing depth-first)
|
|
3089
3338
|
*
|
|
3090
|
-
* @example
|
|
3091
3339
|
* ```ts
|
|
3092
3340
|
* import { Graph } from "effect"
|
|
3093
3341
|
*
|
|
@@ -3110,17 +3358,22 @@ export interface SearchConfig {
|
|
|
3110
3358
|
* // Can be used programmatically
|
|
3111
3359
|
* ```
|
|
3112
3360
|
*
|
|
3113
|
-
* @since 4.0.0
|
|
3114
3361
|
* @category iterators
|
|
3362
|
+
* @since 3.18.0
|
|
3115
3363
|
*/
|
|
3116
3364
|
export declare const dfs: {
|
|
3117
3365
|
/**
|
|
3118
|
-
* Creates a
|
|
3366
|
+
* Creates a lazy depth-first traversal iterator from the configured start
|
|
3367
|
+
* nodes.
|
|
3368
|
+
*
|
|
3369
|
+
* **Details**
|
|
3370
|
+
*
|
|
3371
|
+
* If no start nodes are supplied, the iterator is empty. The `direction` option
|
|
3372
|
+
* chooses whether to follow outgoing or incoming edges. Throws a `GraphError`
|
|
3373
|
+
* if any configured start node does not exist.
|
|
3119
3374
|
*
|
|
3120
|
-
*
|
|
3121
|
-
* It provides lazy evaluation of the depth-first search.
|
|
3375
|
+
* **Example** (Traversing depth-first)
|
|
3122
3376
|
*
|
|
3123
|
-
* @example
|
|
3124
3377
|
* ```ts
|
|
3125
3378
|
* import { Graph } from "effect"
|
|
3126
3379
|
*
|
|
@@ -3143,17 +3396,22 @@ export declare const dfs: {
|
|
|
3143
3396
|
* // Can be used programmatically
|
|
3144
3397
|
* ```
|
|
3145
3398
|
*
|
|
3146
|
-
* @since 4.0.0
|
|
3147
3399
|
* @category iterators
|
|
3400
|
+
* @since 3.18.0
|
|
3148
3401
|
*/
|
|
3149
3402
|
(config?: SearchConfig): <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => NodeWalker<N>;
|
|
3150
3403
|
/**
|
|
3151
|
-
* Creates a
|
|
3404
|
+
* Creates a lazy depth-first traversal iterator from the configured start
|
|
3405
|
+
* nodes.
|
|
3406
|
+
*
|
|
3407
|
+
* **Details**
|
|
3408
|
+
*
|
|
3409
|
+
* If no start nodes are supplied, the iterator is empty. The `direction` option
|
|
3410
|
+
* chooses whether to follow outgoing or incoming edges. Throws a `GraphError`
|
|
3411
|
+
* if any configured start node does not exist.
|
|
3152
3412
|
*
|
|
3153
|
-
*
|
|
3154
|
-
* It provides lazy evaluation of the depth-first search.
|
|
3413
|
+
* **Example** (Traversing depth-first)
|
|
3155
3414
|
*
|
|
3156
|
-
* @example
|
|
3157
3415
|
* ```ts
|
|
3158
3416
|
* import { Graph } from "effect"
|
|
3159
3417
|
*
|
|
@@ -3176,18 +3434,23 @@ export declare const dfs: {
|
|
|
3176
3434
|
* // Can be used programmatically
|
|
3177
3435
|
* ```
|
|
3178
3436
|
*
|
|
3179
|
-
* @since 4.0.0
|
|
3180
3437
|
* @category iterators
|
|
3438
|
+
* @since 3.18.0
|
|
3181
3439
|
*/
|
|
3182
3440
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: SearchConfig): NodeWalker<N>;
|
|
3183
3441
|
};
|
|
3184
3442
|
/**
|
|
3185
|
-
* Creates a
|
|
3443
|
+
* Creates a lazy breadth-first traversal iterator from the configured start
|
|
3444
|
+
* nodes.
|
|
3445
|
+
*
|
|
3446
|
+
* **Details**
|
|
3186
3447
|
*
|
|
3187
|
-
*
|
|
3188
|
-
*
|
|
3448
|
+
* If no start nodes are supplied, the iterator is empty. The `direction` option
|
|
3449
|
+
* chooses whether to follow outgoing or incoming edges. Throws a `GraphError`
|
|
3450
|
+
* if any configured start node does not exist.
|
|
3451
|
+
*
|
|
3452
|
+
* **Example** (Traversing breadth-first)
|
|
3189
3453
|
*
|
|
3190
|
-
* @example
|
|
3191
3454
|
* ```ts
|
|
3192
3455
|
* import { Graph } from "effect"
|
|
3193
3456
|
*
|
|
@@ -3210,17 +3473,22 @@ export declare const dfs: {
|
|
|
3210
3473
|
* // Can be used programmatically
|
|
3211
3474
|
* ```
|
|
3212
3475
|
*
|
|
3213
|
-
* @since 4.0.0
|
|
3214
3476
|
* @category iterators
|
|
3477
|
+
* @since 3.18.0
|
|
3215
3478
|
*/
|
|
3216
3479
|
export declare const bfs: {
|
|
3217
3480
|
/**
|
|
3218
|
-
* Creates a
|
|
3481
|
+
* Creates a lazy breadth-first traversal iterator from the configured start
|
|
3482
|
+
* nodes.
|
|
3483
|
+
*
|
|
3484
|
+
* **Details**
|
|
3219
3485
|
*
|
|
3220
|
-
*
|
|
3221
|
-
*
|
|
3486
|
+
* If no start nodes are supplied, the iterator is empty. The `direction` option
|
|
3487
|
+
* chooses whether to follow outgoing or incoming edges. Throws a `GraphError`
|
|
3488
|
+
* if any configured start node does not exist.
|
|
3489
|
+
*
|
|
3490
|
+
* **Example** (Traversing breadth-first)
|
|
3222
3491
|
*
|
|
3223
|
-
* @example
|
|
3224
3492
|
* ```ts
|
|
3225
3493
|
* import { Graph } from "effect"
|
|
3226
3494
|
*
|
|
@@ -3243,17 +3511,22 @@ export declare const bfs: {
|
|
|
3243
3511
|
* // Can be used programmatically
|
|
3244
3512
|
* ```
|
|
3245
3513
|
*
|
|
3246
|
-
* @since 4.0.0
|
|
3247
3514
|
* @category iterators
|
|
3515
|
+
* @since 3.18.0
|
|
3248
3516
|
*/
|
|
3249
3517
|
(config?: SearchConfig): <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => NodeWalker<N>;
|
|
3250
3518
|
/**
|
|
3251
|
-
* Creates a
|
|
3519
|
+
* Creates a lazy breadth-first traversal iterator from the configured start
|
|
3520
|
+
* nodes.
|
|
3252
3521
|
*
|
|
3253
|
-
*
|
|
3254
|
-
*
|
|
3522
|
+
* **Details**
|
|
3523
|
+
*
|
|
3524
|
+
* If no start nodes are supplied, the iterator is empty. The `direction` option
|
|
3525
|
+
* chooses whether to follow outgoing or incoming edges. Throws a `GraphError`
|
|
3526
|
+
* if any configured start node does not exist.
|
|
3527
|
+
*
|
|
3528
|
+
* **Example** (Traversing breadth-first)
|
|
3255
3529
|
*
|
|
3256
|
-
* @example
|
|
3257
3530
|
* ```ts
|
|
3258
3531
|
* import { Graph } from "effect"
|
|
3259
3532
|
*
|
|
@@ -3276,16 +3549,22 @@ export declare const bfs: {
|
|
|
3276
3549
|
* // Can be used programmatically
|
|
3277
3550
|
* ```
|
|
3278
3551
|
*
|
|
3279
|
-
* @since 4.0.0
|
|
3280
3552
|
* @category iterators
|
|
3553
|
+
* @since 3.18.0
|
|
3281
3554
|
*/
|
|
3282
3555
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: SearchConfig): NodeWalker<N>;
|
|
3283
3556
|
};
|
|
3284
3557
|
/**
|
|
3285
|
-
* Configuration
|
|
3558
|
+
* Configuration for the topological sort iterator.
|
|
3559
|
+
*
|
|
3560
|
+
* **Details**
|
|
3561
|
+
*
|
|
3562
|
+
* `initials` optionally supplies the node indices used as initial queue
|
|
3563
|
+
* entries. When omitted, topological sorting starts from all nodes with zero
|
|
3564
|
+
* in-degree.
|
|
3286
3565
|
*
|
|
3287
|
-
* @since 4.0.0
|
|
3288
3566
|
* @category models
|
|
3567
|
+
* @since 3.18.0
|
|
3289
3568
|
*/
|
|
3290
3569
|
export interface TopoConfig {
|
|
3291
3570
|
readonly initials?: Array<NodeIndex>;
|
|
@@ -3296,7 +3575,8 @@ export interface TopoConfig {
|
|
|
3296
3575
|
* The iterator uses Kahn's algorithm to lazily produce nodes in topological order.
|
|
3297
3576
|
* Throws an error if the graph contains cycles.
|
|
3298
3577
|
*
|
|
3299
|
-
*
|
|
3578
|
+
* **Example** (Sorting topologically)
|
|
3579
|
+
*
|
|
3300
3580
|
* ```ts
|
|
3301
3581
|
* import { Graph } from "effect"
|
|
3302
3582
|
*
|
|
@@ -3317,7 +3597,7 @@ export interface TopoConfig {
|
|
|
3317
3597
|
* // With initial nodes
|
|
3318
3598
|
* const topo2 = Graph.topo(graph, { initials: [0] })
|
|
3319
3599
|
*
|
|
3320
|
-
* //
|
|
3600
|
+
* // Check before sorting a cyclic graph
|
|
3321
3601
|
* const cyclicGraph = Graph.directed<string, number>((mutable) => {
|
|
3322
3602
|
* const a = Graph.addNode(mutable, "A")
|
|
3323
3603
|
* const b = Graph.addNode(mutable, "B")
|
|
@@ -3325,15 +3605,13 @@ export interface TopoConfig {
|
|
|
3325
3605
|
* Graph.addEdge(mutable, b, a, 2) // Creates cycle
|
|
3326
3606
|
* })
|
|
3327
3607
|
*
|
|
3328
|
-
*
|
|
3329
|
-
*
|
|
3330
|
-
* } catch (error) {
|
|
3331
|
-
* console.log((error as Error).message)
|
|
3608
|
+
* if (!Graph.isAcyclic(cyclicGraph)) {
|
|
3609
|
+
* console.log("cyclic graph") // cyclic graph
|
|
3332
3610
|
* }
|
|
3333
3611
|
* ```
|
|
3334
3612
|
*
|
|
3335
|
-
* @since 4.0.0
|
|
3336
3613
|
* @category iterators
|
|
3614
|
+
* @since 3.18.0
|
|
3337
3615
|
*/
|
|
3338
3616
|
export declare const topo: {
|
|
3339
3617
|
/**
|
|
@@ -3342,7 +3620,8 @@ export declare const topo: {
|
|
|
3342
3620
|
* The iterator uses Kahn's algorithm to lazily produce nodes in topological order.
|
|
3343
3621
|
* Throws an error if the graph contains cycles.
|
|
3344
3622
|
*
|
|
3345
|
-
*
|
|
3623
|
+
* **Example** (Sorting topologically)
|
|
3624
|
+
*
|
|
3346
3625
|
* ```ts
|
|
3347
3626
|
* import { Graph } from "effect"
|
|
3348
3627
|
*
|
|
@@ -3363,7 +3642,7 @@ export declare const topo: {
|
|
|
3363
3642
|
* // With initial nodes
|
|
3364
3643
|
* const topo2 = Graph.topo(graph, { initials: [0] })
|
|
3365
3644
|
*
|
|
3366
|
-
* //
|
|
3645
|
+
* // Check before sorting a cyclic graph
|
|
3367
3646
|
* const cyclicGraph = Graph.directed<string, number>((mutable) => {
|
|
3368
3647
|
* const a = Graph.addNode(mutable, "A")
|
|
3369
3648
|
* const b = Graph.addNode(mutable, "B")
|
|
@@ -3371,15 +3650,13 @@ export declare const topo: {
|
|
|
3371
3650
|
* Graph.addEdge(mutable, b, a, 2) // Creates cycle
|
|
3372
3651
|
* })
|
|
3373
3652
|
*
|
|
3374
|
-
*
|
|
3375
|
-
*
|
|
3376
|
-
* } catch (error) {
|
|
3377
|
-
* console.log((error as Error).message)
|
|
3653
|
+
* if (!Graph.isAcyclic(cyclicGraph)) {
|
|
3654
|
+
* console.log("cyclic graph") // cyclic graph
|
|
3378
3655
|
* }
|
|
3379
3656
|
* ```
|
|
3380
3657
|
*
|
|
3381
|
-
* @since 4.0.0
|
|
3382
3658
|
* @category iterators
|
|
3659
|
+
* @since 3.18.0
|
|
3383
3660
|
*/
|
|
3384
3661
|
(config?: TopoConfig): <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => NodeWalker<N>;
|
|
3385
3662
|
/**
|
|
@@ -3388,7 +3665,8 @@ export declare const topo: {
|
|
|
3388
3665
|
* The iterator uses Kahn's algorithm to lazily produce nodes in topological order.
|
|
3389
3666
|
* Throws an error if the graph contains cycles.
|
|
3390
3667
|
*
|
|
3391
|
-
*
|
|
3668
|
+
* **Example** (Sorting topologically)
|
|
3669
|
+
*
|
|
3392
3670
|
* ```ts
|
|
3393
3671
|
* import { Graph } from "effect"
|
|
3394
3672
|
*
|
|
@@ -3409,7 +3687,7 @@ export declare const topo: {
|
|
|
3409
3687
|
* // With initial nodes
|
|
3410
3688
|
* const topo2 = Graph.topo(graph, { initials: [0] })
|
|
3411
3689
|
*
|
|
3412
|
-
* //
|
|
3690
|
+
* // Check before sorting a cyclic graph
|
|
3413
3691
|
* const cyclicGraph = Graph.directed<string, number>((mutable) => {
|
|
3414
3692
|
* const a = Graph.addNode(mutable, "A")
|
|
3415
3693
|
* const b = Graph.addNode(mutable, "B")
|
|
@@ -3417,26 +3695,28 @@ export declare const topo: {
|
|
|
3417
3695
|
* Graph.addEdge(mutable, b, a, 2) // Creates cycle
|
|
3418
3696
|
* })
|
|
3419
3697
|
*
|
|
3420
|
-
*
|
|
3421
|
-
*
|
|
3422
|
-
* } catch (error) {
|
|
3423
|
-
* console.log((error as Error).message)
|
|
3698
|
+
* if (!Graph.isAcyclic(cyclicGraph)) {
|
|
3699
|
+
* console.log("cyclic graph") // cyclic graph
|
|
3424
3700
|
* }
|
|
3425
3701
|
* ```
|
|
3426
3702
|
*
|
|
3427
|
-
* @since 4.0.0
|
|
3428
3703
|
* @category iterators
|
|
3704
|
+
* @since 3.18.0
|
|
3429
3705
|
*/
|
|
3430
3706
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: TopoConfig): NodeWalker<N>;
|
|
3431
3707
|
};
|
|
3432
3708
|
/**
|
|
3433
|
-
* Creates a
|
|
3709
|
+
* Creates a lazy depth-first postorder traversal iterator from the configured
|
|
3710
|
+
* start nodes.
|
|
3711
|
+
*
|
|
3712
|
+
* **Details**
|
|
3434
3713
|
*
|
|
3435
|
-
*
|
|
3436
|
-
*
|
|
3437
|
-
*
|
|
3714
|
+
* Nodes are emitted after their reachable descendants have been processed. If
|
|
3715
|
+
* no start nodes are supplied, the iterator is empty. The `direction` option
|
|
3716
|
+
* chooses whether to follow outgoing or incoming edges.
|
|
3717
|
+
*
|
|
3718
|
+
* **Example** (Traversing in postorder)
|
|
3438
3719
|
*
|
|
3439
|
-
* @example
|
|
3440
3720
|
* ```ts
|
|
3441
3721
|
* import { Graph } from "effect"
|
|
3442
3722
|
*
|
|
@@ -3455,18 +3735,22 @@ export declare const topo: {
|
|
|
3455
3735
|
* }
|
|
3456
3736
|
* ```
|
|
3457
3737
|
*
|
|
3458
|
-
* @since 4.0.0
|
|
3459
3738
|
* @category iterators
|
|
3739
|
+
* @since 3.18.0
|
|
3460
3740
|
*/
|
|
3461
3741
|
export declare const dfsPostOrder: {
|
|
3462
3742
|
/**
|
|
3463
|
-
* Creates a
|
|
3743
|
+
* Creates a lazy depth-first postorder traversal iterator from the configured
|
|
3744
|
+
* start nodes.
|
|
3464
3745
|
*
|
|
3465
|
-
*
|
|
3466
|
-
*
|
|
3467
|
-
*
|
|
3746
|
+
* **Details**
|
|
3747
|
+
*
|
|
3748
|
+
* Nodes are emitted after their reachable descendants have been processed. If
|
|
3749
|
+
* no start nodes are supplied, the iterator is empty. The `direction` option
|
|
3750
|
+
* chooses whether to follow outgoing or incoming edges.
|
|
3751
|
+
*
|
|
3752
|
+
* **Example** (Traversing in postorder)
|
|
3468
3753
|
*
|
|
3469
|
-
* @example
|
|
3470
3754
|
* ```ts
|
|
3471
3755
|
* import { Graph } from "effect"
|
|
3472
3756
|
*
|
|
@@ -3485,18 +3769,22 @@ export declare const dfsPostOrder: {
|
|
|
3485
3769
|
* }
|
|
3486
3770
|
* ```
|
|
3487
3771
|
*
|
|
3488
|
-
* @since 4.0.0
|
|
3489
3772
|
* @category iterators
|
|
3773
|
+
* @since 3.18.0
|
|
3490
3774
|
*/
|
|
3491
3775
|
(config?: SearchConfig): <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => NodeWalker<N>;
|
|
3492
3776
|
/**
|
|
3493
|
-
* Creates a
|
|
3777
|
+
* Creates a lazy depth-first postorder traversal iterator from the configured
|
|
3778
|
+
* start nodes.
|
|
3779
|
+
*
|
|
3780
|
+
* **Details**
|
|
3781
|
+
*
|
|
3782
|
+
* Nodes are emitted after their reachable descendants have been processed. If
|
|
3783
|
+
* no start nodes are supplied, the iterator is empty. The `direction` option
|
|
3784
|
+
* chooses whether to follow outgoing or incoming edges.
|
|
3494
3785
|
*
|
|
3495
|
-
*
|
|
3496
|
-
* in postorder (after all descendants have been processed). Essential for
|
|
3497
|
-
* dependency resolution and tree destruction algorithms.
|
|
3786
|
+
* **Example** (Traversing in postorder)
|
|
3498
3787
|
*
|
|
3499
|
-
* @example
|
|
3500
3788
|
* ```ts
|
|
3501
3789
|
* import { Graph } from "effect"
|
|
3502
3790
|
*
|
|
@@ -3515,8 +3803,8 @@ export declare const dfsPostOrder: {
|
|
|
3515
3803
|
* }
|
|
3516
3804
|
* ```
|
|
3517
3805
|
*
|
|
3518
|
-
* @since 4.0.0
|
|
3519
3806
|
* @category iterators
|
|
3807
|
+
* @since 3.18.0
|
|
3520
3808
|
*/
|
|
3521
3809
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: SearchConfig): NodeWalker<N>;
|
|
3522
3810
|
};
|
|
@@ -3526,7 +3814,8 @@ export declare const dfsPostOrder: {
|
|
|
3526
3814
|
* The iterator produces node indices in the order they were added to the graph.
|
|
3527
3815
|
* This provides access to all nodes regardless of connectivity.
|
|
3528
3816
|
*
|
|
3529
|
-
*
|
|
3817
|
+
* **Example** (Iterating all nodes)
|
|
3818
|
+
*
|
|
3530
3819
|
* ```ts
|
|
3531
3820
|
* import { Graph } from "effect"
|
|
3532
3821
|
*
|
|
@@ -3541,8 +3830,8 @@ export declare const dfsPostOrder: {
|
|
|
3541
3830
|
* console.log(indices) // [0, 1, 2]
|
|
3542
3831
|
* ```
|
|
3543
3832
|
*
|
|
3544
|
-
* @since 4.0.0
|
|
3545
3833
|
* @category iterators
|
|
3834
|
+
* @since 3.18.0
|
|
3546
3835
|
*/
|
|
3547
3836
|
export declare const nodes: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => NodeWalker<N>;
|
|
3548
3837
|
/**
|
|
@@ -3551,7 +3840,8 @@ export declare const nodes: <N, E, T extends Kind = "directed">(graph: Graph<N,
|
|
|
3551
3840
|
* The iterator produces edge indices in the order they were added to the graph.
|
|
3552
3841
|
* This provides access to all edges regardless of connectivity.
|
|
3553
3842
|
*
|
|
3554
|
-
*
|
|
3843
|
+
* **Example** (Iterating all edges)
|
|
3844
|
+
*
|
|
3555
3845
|
* ```ts
|
|
3556
3846
|
* import { Graph } from "effect"
|
|
3557
3847
|
*
|
|
@@ -3567,15 +3857,21 @@ export declare const nodes: <N, E, T extends Kind = "directed">(graph: Graph<N,
|
|
|
3567
3857
|
* console.log(indices) // [0, 1]
|
|
3568
3858
|
* ```
|
|
3569
3859
|
*
|
|
3570
|
-
* @since 4.0.0
|
|
3571
3860
|
* @category iterators
|
|
3861
|
+
* @since 3.18.0
|
|
3572
3862
|
*/
|
|
3573
3863
|
export declare const edges: <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => EdgeWalker<E>;
|
|
3574
3864
|
/**
|
|
3575
|
-
* Configuration for
|
|
3865
|
+
* Configuration for selecting external nodes.
|
|
3866
|
+
*
|
|
3867
|
+
* **Details**
|
|
3868
|
+
*
|
|
3869
|
+
* `direction` chooses which missing edge direction makes a node external:
|
|
3870
|
+
* `"outgoing"` selects nodes with no outgoing edges, and `"incoming"` selects
|
|
3871
|
+
* nodes with no incoming edges.
|
|
3576
3872
|
*
|
|
3577
|
-
* @since 4.0.0
|
|
3578
3873
|
* @category models
|
|
3874
|
+
* @since 3.18.0
|
|
3579
3875
|
*/
|
|
3580
3876
|
export interface ExternalsConfig {
|
|
3581
3877
|
readonly direction?: Direction;
|
|
@@ -3587,7 +3883,8 @@ export interface ExternalsConfig {
|
|
|
3587
3883
|
* no incoming edges (direction="incoming"). These are useful for finding
|
|
3588
3884
|
* sources, sinks, or isolated nodes.
|
|
3589
3885
|
*
|
|
3590
|
-
*
|
|
3886
|
+
* **Example** (Iterating external nodes)
|
|
3887
|
+
*
|
|
3591
3888
|
* ```ts
|
|
3592
3889
|
* import { Graph } from "effect"
|
|
3593
3890
|
*
|
|
@@ -3614,8 +3911,8 @@ export interface ExternalsConfig {
|
|
|
3614
3911
|
* console.log(sources) // [0, 3]
|
|
3615
3912
|
* ```
|
|
3616
3913
|
*
|
|
3617
|
-
* @since 4.0.0
|
|
3618
3914
|
* @category iterators
|
|
3915
|
+
* @since 3.18.0
|
|
3619
3916
|
*/
|
|
3620
3917
|
export declare const externals: {
|
|
3621
3918
|
/**
|
|
@@ -3625,7 +3922,8 @@ export declare const externals: {
|
|
|
3625
3922
|
* no incoming edges (direction="incoming"). These are useful for finding
|
|
3626
3923
|
* sources, sinks, or isolated nodes.
|
|
3627
3924
|
*
|
|
3628
|
-
*
|
|
3925
|
+
* **Example** (Iterating external nodes)
|
|
3926
|
+
*
|
|
3629
3927
|
* ```ts
|
|
3630
3928
|
* import { Graph } from "effect"
|
|
3631
3929
|
*
|
|
@@ -3652,8 +3950,8 @@ export declare const externals: {
|
|
|
3652
3950
|
* console.log(sources) // [0, 3]
|
|
3653
3951
|
* ```
|
|
3654
3952
|
*
|
|
3655
|
-
* @since 4.0.0
|
|
3656
3953
|
* @category iterators
|
|
3954
|
+
* @since 3.18.0
|
|
3657
3955
|
*/
|
|
3658
3956
|
(config?: ExternalsConfig): <N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>) => NodeWalker<N>;
|
|
3659
3957
|
/**
|
|
@@ -3663,7 +3961,8 @@ export declare const externals: {
|
|
|
3663
3961
|
* no incoming edges (direction="incoming"). These are useful for finding
|
|
3664
3962
|
* sources, sinks, or isolated nodes.
|
|
3665
3963
|
*
|
|
3666
|
-
*
|
|
3964
|
+
* **Example** (Iterating external nodes)
|
|
3965
|
+
*
|
|
3667
3966
|
* ```ts
|
|
3668
3967
|
* import { Graph } from "effect"
|
|
3669
3968
|
*
|
|
@@ -3690,8 +3989,8 @@ export declare const externals: {
|
|
|
3690
3989
|
* console.log(sources) // [0, 3]
|
|
3691
3990
|
* ```
|
|
3692
3991
|
*
|
|
3693
|
-
* @since 4.0.0
|
|
3694
3992
|
* @category iterators
|
|
3993
|
+
* @since 3.18.0
|
|
3695
3994
|
*/
|
|
3696
3995
|
<N, E, T extends Kind = "directed">(graph: Graph<N, E, T> | MutableGraph<N, E, T>, config?: ExternalsConfig): NodeWalker<N>;
|
|
3697
3996
|
};
|