@typeonce/effect-machine 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NOTICE +0 -2
- package/README.md +347 -52
- package/dist/AtomMachine.d.ts +187 -10
- package/dist/AtomMachine.d.ts.map +1 -1
- package/dist/AtomMachine.js +145 -18
- package/dist/AtomMachine.js.map +1 -1
- package/dist/ClusterMachine.d.ts +15 -5
- package/dist/ClusterMachine.d.ts.map +1 -1
- package/dist/ClusterMachine.js.map +1 -1
- package/dist/Machine.d.ts +410 -94
- package/dist/Machine.d.ts.map +1 -1
- package/dist/Machine.js +105 -47
- package/dist/Machine.js.map +1 -1
- package/dist/internal/machineModel.d.ts +6 -1
- package/dist/internal/machineModel.d.ts.map +1 -1
- package/dist/internal/machineModel.js +68 -15
- package/dist/internal/machineModel.js.map +1 -1
- package/dist/internal/machinePlanner.d.ts +15 -5
- package/dist/internal/machinePlanner.d.ts.map +1 -1
- package/dist/internal/machinePlanner.js +75 -48
- package/dist/internal/machinePlanner.js.map +1 -1
- package/dist/internal/machineProcess.d.ts +2 -2
- package/dist/internal/machineProcess.d.ts.map +1 -1
- package/dist/internal/machineProcess.js +22 -11
- package/dist/internal/machineProcess.js.map +1 -1
- package/dist/internal/machineRuntime.d.ts +11 -5
- package/dist/internal/machineRuntime.d.ts.map +1 -1
- package/dist/internal/machineRuntime.js +24 -13
- package/dist/internal/machineRuntime.js.map +1 -1
- package/docs/agent-guide.md +585 -0
- package/package.json +18 -21
package/dist/AtomMachine.d.ts
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
import * as Option from "effect/Option";
|
|
7
7
|
import type * as Schema from "effect/Schema";
|
|
8
8
|
import type * as Scope from "effect/Scope";
|
|
9
|
-
import * as Machine from "./Machine.js";
|
|
10
9
|
import { AsyncResult, Atom, type AtomRegistry } from "effect/unstable/reactivity";
|
|
10
|
+
import * as Machine from "./Machine.js";
|
|
11
11
|
declare const NotReadyError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
12
12
|
readonly _tag: "NotReadyError";
|
|
13
13
|
} & Readonly<A>;
|
|
@@ -41,6 +41,8 @@ type EnsureNoExternalRequirements<Requirements> = [ExternalRequirements<Requirem
|
|
|
41
41
|
type IsAny<A> = 0 extends (1 & A) ? true : false;
|
|
42
42
|
type ExcludeCompatibleMachineRuntime<Requirements, Events, Emits> = Requirements extends Machine.Runtime.Requirement<infer RequiredEvents, infer RequiredEmits> ? IsAny<Requirements> extends true ? Requirements : [RequiredEvents] extends [Events] ? [RequiredEmits] extends [Emits] ? never : Requirements : Requirements : Requirements;
|
|
43
43
|
type MachineRequirements<InitialR, R, Events, Emits> = ExcludeCompatibleMachineRuntime<Machine.ExecutionServices<InitialR | R>, Events, Emits>;
|
|
44
|
+
type MachineRuntimeError<E, R> = E | Machine.ActionError<R> | Machine.InfiniteTransitionError | Machine.MachineSchemaDecodeError | Machine.StoppedError;
|
|
45
|
+
type MachineStartError<InitialE, E, InitialR, R, RuntimeError = never> = InitialE | E | Machine.ActionError<InitialR | R> | Machine.InfiniteTransitionError | Machine.MachineSchemaDecodeError | Machine.StartupError | Machine.StoppedError | RuntimeError;
|
|
44
46
|
/**
|
|
45
47
|
* Atoms backed by one running machine instance in an `AtomRegistry`.
|
|
46
48
|
*
|
|
@@ -69,9 +71,20 @@ export interface MachineAtom<State, Event, Error = never, Output = never, StartE
|
|
|
69
71
|
/**
|
|
70
72
|
* Atom containing the state value from the latest runtime snapshot.
|
|
71
73
|
*
|
|
74
|
+
* This preserves the historical behavior of exposing a state even when the
|
|
75
|
+
* runtime snapshot reports a terminal error. Use `result` when runtime
|
|
76
|
+
* failures must be represented in the atom failure channel.
|
|
77
|
+
*
|
|
72
78
|
* @since 4.0.0
|
|
73
79
|
*/
|
|
74
80
|
readonly state: Atom.Atom<AsyncResult.AsyncResult<State, StartError>>;
|
|
81
|
+
/**
|
|
82
|
+
* Atom containing the current state, with startup and runtime failures in
|
|
83
|
+
* one typed failure channel.
|
|
84
|
+
*
|
|
85
|
+
* @since 4.0.0
|
|
86
|
+
*/
|
|
87
|
+
readonly result: Atom.Atom<AsyncResult.AsyncResult<State, StartError | Error>>;
|
|
75
88
|
/**
|
|
76
89
|
* Writable atom that sends events to the machine. Writes before startup
|
|
77
90
|
* completes fail with `NotReadyError`.
|
|
@@ -88,6 +101,8 @@ export interface MachineAtom<State, Event, Error = never, Output = never, StartE
|
|
|
88
101
|
readonly stop: Atom.Writable<AsyncResult.AsyncResult<void, StartError | NotReadyError>, void>;
|
|
89
102
|
/**
|
|
90
103
|
* Creates a reactive bridge for a directly invoked child machine.
|
|
104
|
+
* Reusing the same descriptor returns the same live bridge while it remains
|
|
105
|
+
* referenced.
|
|
91
106
|
*
|
|
92
107
|
* @since 4.0.0
|
|
93
108
|
*/
|
|
@@ -113,29 +128,191 @@ type RefOutput<Ref> = Ref extends Machine.MachineRef<any, any, any, infer Output
|
|
|
113
128
|
* @category models
|
|
114
129
|
* @since 4.0.0
|
|
115
130
|
*/
|
|
116
|
-
export interface ChildMachineAtom<Child extends Machine.ChildMachine.Any, StartError =
|
|
117
|
-
/**
|
|
131
|
+
export interface ChildMachineAtom<Child extends Machine.ChildMachine.Any, StartError = unknown> {
|
|
132
|
+
/**
|
|
133
|
+
* Atom containing the current child reference when the child is active.
|
|
134
|
+
*
|
|
135
|
+
* @since 4.0.0
|
|
136
|
+
*/
|
|
118
137
|
readonly ref: Atom.Atom<AsyncResult.AsyncResult<Option.Option<Machine.ChildMachine.Ref<Child>>, StartError>>;
|
|
119
|
-
/**
|
|
138
|
+
/**
|
|
139
|
+
* Atom containing the current child lifecycle snapshot when active.
|
|
140
|
+
*
|
|
141
|
+
* @since 4.0.0
|
|
142
|
+
*/
|
|
120
143
|
readonly snapshot: Atom.Atom<AsyncResult.AsyncResult<Option.Option<Machine.RuntimeSnapshot<RefState<Machine.ChildMachine.Ref<Child>>, RefError<Machine.ChildMachine.Ref<Child>>, RefOutput<Machine.ChildMachine.Ref<Child>>>>, StartError>>;
|
|
121
|
-
/**
|
|
144
|
+
/**
|
|
145
|
+
* Atom containing the current child state when active.
|
|
146
|
+
*
|
|
147
|
+
* Runtime failures retain the last successful state. Use `result` when they
|
|
148
|
+
* must be represented in the atom failure channel.
|
|
149
|
+
*
|
|
150
|
+
* @since 4.0.0
|
|
151
|
+
*/
|
|
122
152
|
readonly state: Atom.Atom<AsyncResult.AsyncResult<Option.Option<RefState<Machine.ChildMachine.Ref<Child>>>, StartError>>;
|
|
123
|
-
/**
|
|
153
|
+
/**
|
|
154
|
+
* Atom containing the current child state when active, with startup and
|
|
155
|
+
* runtime failures in one typed failure channel.
|
|
156
|
+
*
|
|
157
|
+
* @since 4.0.0
|
|
158
|
+
*/
|
|
159
|
+
readonly result: Atom.Atom<AsyncResult.AsyncResult<Option.Option<RefState<Machine.ChildMachine.Ref<Child>>>, StartError | RefError<Machine.ChildMachine.Ref<Child>>>>;
|
|
160
|
+
/**
|
|
161
|
+
* Writable atom that sends events to the active child.
|
|
162
|
+
*
|
|
163
|
+
* Writes fail with `ChildNotActiveError` while the child is inactive.
|
|
164
|
+
*
|
|
165
|
+
* @since 4.0.0
|
|
166
|
+
*/
|
|
124
167
|
readonly send: Atom.Writable<AsyncResult.AsyncResult<void, StartError | NotReadyError | ChildNotActiveError | Machine.StoppedError>, Machine.ChildMachine.Event<Child>>;
|
|
125
|
-
/**
|
|
168
|
+
/**
|
|
169
|
+
* Writable atom that stops the active child.
|
|
170
|
+
*
|
|
171
|
+
* Writes fail with `ChildNotActiveError` while the child is inactive.
|
|
172
|
+
*
|
|
173
|
+
* @since 4.0.0
|
|
174
|
+
*/
|
|
126
175
|
readonly stop: Atom.Writable<AsyncResult.AsyncResult<void, StartError | NotReadyError | ChildNotActiveError>, void>;
|
|
127
|
-
/**
|
|
176
|
+
/**
|
|
177
|
+
* Creates a reactive bridge for a directly owned nested child. Reusing the
|
|
178
|
+
* same descriptor returns the same live bridge while it remains referenced.
|
|
179
|
+
*
|
|
180
|
+
* @since 4.0.0
|
|
181
|
+
*/
|
|
128
182
|
readonly child: <Nested extends Machine.ChildMachine.Any>(child: Nested) => ChildMachineAtom<Nested, StartError>;
|
|
129
183
|
}
|
|
184
|
+
type BridgeStartError<Bridge> = Bridge extends MachineAtom<any, any, any, any, infer StartError> ? StartError : Bridge extends ChildMachineAtom<any, infer StartError> ? StartError : never;
|
|
185
|
+
/**
|
|
186
|
+
* Derives the exact child bridge type from a parent bridge and child
|
|
187
|
+
* descriptor.
|
|
188
|
+
*
|
|
189
|
+
* @category utility types
|
|
190
|
+
* @since 4.0.0
|
|
191
|
+
*/
|
|
192
|
+
export type ChildOf<Parent extends MachineAtom<any, any, any, any, any> | ChildMachineAtom<any, any>, Child extends Machine.ChildMachine.Any> = ChildMachineAtom<Child, BridgeStartError<Parent>>;
|
|
193
|
+
type SnapshotNode<State> = State extends Machine.Machine.AtomicSnapshot<string, unknown> ? State | (State extends {
|
|
194
|
+
readonly state: infer Child;
|
|
195
|
+
} ? SnapshotNode<Child> : State extends {
|
|
196
|
+
readonly states: infer Regions;
|
|
197
|
+
} ? SnapshotNode<Regions[keyof Regions]> : never) : never;
|
|
198
|
+
type SnapshotIdentifier<State> = SnapshotNode<State> extends infer Node ? Node extends {
|
|
199
|
+
readonly path: infer Path extends string;
|
|
200
|
+
} ? Path : never : never;
|
|
201
|
+
type SnapshotValueByIdentifier<State, Path extends SnapshotIdentifier<State>> = SnapshotNode<State> extends infer Node ? Node extends {
|
|
202
|
+
readonly path: Path;
|
|
203
|
+
readonly value: infer Value;
|
|
204
|
+
} ? Value : never : never;
|
|
205
|
+
type ChildState<Child extends Machine.ChildMachine.Any> = RefState<Machine.ChildMachine.Ref<Child>>;
|
|
206
|
+
/**
|
|
207
|
+
* Selects the typed value for an active state path.
|
|
208
|
+
*
|
|
209
|
+
* Valid paths and their selected value types are inferred from the bridge.
|
|
210
|
+
* The derived atom suppresses structurally equal updates. Keep the returned
|
|
211
|
+
* atom stable when constructing it inside a component.
|
|
212
|
+
*
|
|
213
|
+
* **Example**
|
|
214
|
+
*
|
|
215
|
+
* ```ts
|
|
216
|
+
* const readyAtom = AtomMachine.select(machineAtom, "Ready")
|
|
217
|
+
* // Atom<AsyncResult<Option<Ready>, StartError | RuntimeError>>
|
|
218
|
+
* ```
|
|
219
|
+
*
|
|
220
|
+
* @category combinators
|
|
221
|
+
* @since 4.0.0
|
|
222
|
+
*/
|
|
223
|
+
export declare const select: <State extends Machine.Machine.AtomicSnapshot<string, unknown>, Event, Error, Output, StartError, const Path extends SnapshotIdentifier<State>>(self: MachineAtom<State, Event, Error, Output, StartError>, path: Path) => Atom.Atom<AsyncResult.AsyncResult<Option.Option<SnapshotValueByIdentifier<State, Path>>, StartError | Error>>;
|
|
224
|
+
/**
|
|
225
|
+
* Selects the typed value for an active state path in an invoked child.
|
|
226
|
+
*
|
|
227
|
+
* Valid paths and their selected value types are inferred from the child
|
|
228
|
+
* bridge. An inactive child produces `Option.none()`. Keep the returned atom
|
|
229
|
+
* stable when constructing it inside a component.
|
|
230
|
+
*
|
|
231
|
+
* **Example**
|
|
232
|
+
*
|
|
233
|
+
* ```ts
|
|
234
|
+
* const editingAtom = AtomMachine.selectChild(editorAtom, "Editing")
|
|
235
|
+
* // Atom<AsyncResult<Option<Editing>, StartError | ChildRuntimeError>>
|
|
236
|
+
* ```
|
|
237
|
+
*
|
|
238
|
+
* @category combinators
|
|
239
|
+
* @since 4.0.0
|
|
240
|
+
*/
|
|
241
|
+
export declare const selectChild: <Child extends Machine.ChildMachine.Any, StartError, const Path extends SnapshotIdentifier<ChildState<Child>>>(self: ChildMachineAtom<Child, StartError>, path: Path) => Atom.Atom<AsyncResult.AsyncResult<Option.Option<SnapshotValueByIdentifier<ChildState<Child>, Path>>, StartError | RefError<Machine.ChildMachine.Ref<Child>>>>;
|
|
242
|
+
/**
|
|
243
|
+
* Returns whether a state path is active.
|
|
244
|
+
*
|
|
245
|
+
* Valid paths are inferred from the bridge snapshot.
|
|
246
|
+
* The derived atom suppresses equal updates. Runtime failures remain in the
|
|
247
|
+
* typed failure channel.
|
|
248
|
+
*
|
|
249
|
+
* @category combinators
|
|
250
|
+
* @since 4.0.0
|
|
251
|
+
*/
|
|
252
|
+
export declare const matches: <State extends Machine.Machine.AtomicSnapshot<string, unknown>, Event, Error, Output, StartError, const Path extends SnapshotIdentifier<State>>(self: MachineAtom<State, Event, Error, Output, StartError>, path: Path) => Atom.Atom<AsyncResult.AsyncResult<boolean, StartError | Error>>;
|
|
253
|
+
/**
|
|
254
|
+
* Returns whether a state path is active in an invoked child.
|
|
255
|
+
*
|
|
256
|
+
* Valid paths are inferred from the child bridge snapshot.
|
|
257
|
+
* An inactive child produces `false`. Keep the returned atom stable when
|
|
258
|
+
* constructing it inside a component.
|
|
259
|
+
*
|
|
260
|
+
* @category combinators
|
|
261
|
+
* @since 4.0.0
|
|
262
|
+
*/
|
|
263
|
+
export declare const matchesChild: <Child extends Machine.ChildMachine.Any, StartError, const Path extends SnapshotIdentifier<ChildState<Child>>>(self: ChildMachineAtom<Child, StartError>, path: Path) => Atom.Atom<AsyncResult.AsyncResult<boolean, StartError | RefError<Machine.ChildMachine.Ref<Child>>>>;
|
|
264
|
+
declare const BoundRequirementsTypeId = "~effect/reactivity/AtomMachine/BoundRequirements";
|
|
265
|
+
type MachineRequirementsOf<M extends Machine.Machine.Any> = M extends Machine.Machine<any, infer Events, any, any, any, infer R, any, infer InitialR, any, any, infer Emits, any, any> ? MachineRequirements<InitialR, R, Machine.Machine.EventOf<Events>, Machine.Machine.EmitOf<Emits>> : never;
|
|
266
|
+
type MissingBoundRequirements<Services, M extends Machine.Machine.Any> = Exclude<ExternalRequirements<MachineRequirementsOf<M>>, Services>;
|
|
267
|
+
type EnsureBoundRequirements<Services, M extends Machine.Machine.Any> = IsAny<MachineRequirementsOf<M>> extends true ? {
|
|
268
|
+
readonly [BoundRequirementsTypeId]: MachineRequirementsOf<M>;
|
|
269
|
+
} : [MissingBoundRequirements<Services, M>] extends [never] ? unknown : {
|
|
270
|
+
readonly [BoundRequirementsTypeId]: MissingBoundRequirements<Services, M>;
|
|
271
|
+
};
|
|
272
|
+
type EnsureMachineOutputImplementations<M extends Machine.Machine.Any> = M extends Machine.Machine<infer States, any, any, any, any, any, any, any, any, any, any, infer OutputStates, any> ? IsAny<States> extends true ? {
|
|
273
|
+
readonly "~effect/reactivity/AtomMachine/ConcreteMachineRequired": M;
|
|
274
|
+
} : Machine.Machine.EnsureOutputImplementations<States, OutputStates> : never;
|
|
275
|
+
type MachineInputArgsOf<M extends Machine.Machine.Any> = M extends Machine.Machine<any, any, infer Input, any, any, any, any, any, any, any, any, any, any> ? [...Machine.Machine.InputArgs<Input>] : never;
|
|
276
|
+
type MachineAtomOf<M extends Machine.Machine.Any, RuntimeError> = M extends Machine.Machine<infer States, any, any, any, infer E, infer R, infer InitialE, infer InitialR, any, infer Output, any, any, any> ? MachineAtom<Machine.Machine.Snapshot<States>, Machine.Machine.InputEvent<M>, MachineRuntimeError<E, R>, Output, MachineStartError<InitialE, E, InitialR, R, RuntimeError>> : never;
|
|
277
|
+
/**
|
|
278
|
+
* An `AtomMachine` factory with one owned Effect runtime.
|
|
279
|
+
*
|
|
280
|
+
* @category models
|
|
281
|
+
* @since 4.0.0
|
|
282
|
+
*/
|
|
283
|
+
export interface Bound<Services, RuntimeError = never> {
|
|
284
|
+
/**
|
|
285
|
+
* Creates an independent machine bridge using the bound runtime.
|
|
286
|
+
*
|
|
287
|
+
* The machine's external service requirements must be provided by the
|
|
288
|
+
* runtime. Machine-native runtime requirements are supplied automatically.
|
|
289
|
+
*
|
|
290
|
+
* @since 4.0.0
|
|
291
|
+
*/
|
|
292
|
+
readonly make: <M extends Machine.Machine.Any>(machine: M & EnsureBoundRequirements<Services, M> & EnsureMachineOutputImplementations<M>, ...args: MachineInputArgsOf<M>) => MachineAtomOf<M, RuntimeError>;
|
|
293
|
+
}
|
|
130
294
|
/**
|
|
131
295
|
* Creates atoms backed by a running machine.
|
|
132
296
|
*
|
|
297
|
+
* Use `bind(runtime).make(machine)` when the machine requires external
|
|
298
|
+
* services.
|
|
299
|
+
*
|
|
133
300
|
* @category constructors
|
|
134
301
|
* @since 4.0.0
|
|
135
302
|
*/
|
|
136
303
|
export declare const make: {
|
|
137
|
-
<const States extends Machine.Machine.StateSchemas, const Events extends ReadonlyArray<Machine.Machine.TaggedSchema>, const Emits extends ReadonlyArray<Machine.Machine.TaggedSchema> = any, const Input extends Schema.Top = typeof Schema.Void, UnhandledStates extends Machine.Machine.StateIdentifier<States> = Machine.Machine.StateIdentifier<States>, E = never, R = never, InitialE = never, InitialR = never, FinalStates extends Machine.Machine.StateIdentifier<States> = never, Output = never>(machine: Machine.Machine<States, Events, Input, UnhandledStates, E, R, InitialE, InitialR, FinalStates, Output, Emits> & EnsureNoExternalRequirements<MachineRequirements<InitialR, R, Machine.Machine.EventOf<Events>, Machine.Machine.EmitOf<Emits
|
|
138
|
-
<RuntimeError, const States extends Machine.Machine.StateSchemas, const Events extends ReadonlyArray<Machine.Machine.TaggedSchema>, const Emits extends ReadonlyArray<Machine.Machine.TaggedSchema> = any, const Input extends Schema.Top = typeof Schema.Void, UnhandledStates extends Machine.Machine.StateIdentifier<States> = Machine.Machine.StateIdentifier<States>, E = never, R = never, InitialE = never, InitialR = never, FinalStates extends Machine.Machine.StateIdentifier<States> = never, Output = never>(runtime: Atom.AtomRuntime<ExternalRequirements<MachineRequirements<InitialR, R, Machine.Machine.EventOf<Events>, Machine.Machine.EmitOf<Emits>>>, RuntimeError>, machine: Machine.Machine<States, Events, Input, UnhandledStates, E, R, InitialE, InitialR, FinalStates, Output, Emits>, ...args: [...Machine.Machine.InputArgs<Input>]): MachineAtom<Machine.Machine.Snapshot<States>, Machine.Machine.EventOf<Events>, E | Machine.ActionError<InitialR | R> | Machine.InfiniteTransitionError | Machine.MachineSchemaDecodeError | Machine.StartupError | Machine.StoppedError | InitialE, Output | undefined, InitialE | Machine.ActionError<InitialR | R> | Machine.MachineSchemaDecodeError | Machine.StartupError | Machine.StoppedError | RuntimeError>;
|
|
304
|
+
<const States extends Machine.Machine.StateSchemas, const Events extends ReadonlyArray<Machine.Machine.TaggedSchema>, const Emits extends ReadonlyArray<Machine.Machine.TaggedSchema> = any, const Input extends Schema.Top = typeof Schema.Void, UnhandledStates extends Machine.Machine.StateIdentifier<States> = Machine.Machine.StateIdentifier<States>, E = never, R = never, InitialE = never, InitialR = never, FinalStates extends Machine.Machine.StateIdentifier<States> = never, Output = never, OutputStates extends Machine.Machine.StateIdentifier<States> = never, InputEvents extends ReadonlyArray<Machine.Machine.TaggedSchema> = Events>(machine: Machine.Machine<States, Events, Input, UnhandledStates, E, R, InitialE, InitialR, FinalStates, Output, Emits, OutputStates, InputEvents> & EnsureNoExternalRequirements<MachineRequirements<InitialR, R, Machine.Machine.EventOf<Events>, Machine.Machine.EmitOf<Emits>>> & Machine.Machine.EnsureOutputImplementations<States, OutputStates>, ...args: [...Machine.Machine.InputArgs<Input>]): MachineAtom<Machine.Machine.Snapshot<States>, Machine.Machine.EventOf<InputEvents>, MachineRuntimeError<E, R>, Output, MachineStartError<InitialE, E, InitialR, R>>;
|
|
139
305
|
};
|
|
306
|
+
/**
|
|
307
|
+
* Creates an `AtomMachine` factory that owns a shared Effect runtime.
|
|
308
|
+
*
|
|
309
|
+
* Use this when an application runs many machines from the same service layer.
|
|
310
|
+
* The returned factory keeps runtime provisioning at the composition boundary,
|
|
311
|
+
* while every call to `make` still creates an independent machine bridge.
|
|
312
|
+
*
|
|
313
|
+
* @category constructors
|
|
314
|
+
* @since 4.0.0
|
|
315
|
+
*/
|
|
316
|
+
export declare const bind: <Services, RuntimeError>(runtime: Atom.AtomRuntime<Services, RuntimeError>) => Bound<Services, RuntimeError>;
|
|
140
317
|
export {};
|
|
141
318
|
//# sourceMappingURL=AtomMachine.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AtomMachine.d.ts","sourceRoot":"","sources":["../src/AtomMachine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AtomMachine.d.ts","sourceRoot":"","sources":["../src/AtomMachine.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAE1C,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACjF,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;;;;AAGvC;;;;;GAKG;AACH,qBAAa,aAAc,SAAQ,kBAAiC;CAAG;;;;AAEvE;;;;;GAKG;AACH,qBAAa,mBAAoB,SAAQ,yBAAwC;IAC/E,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CACpB,CAAC;CAAG;AAEL,KAAK,yBAAyB,GAAG,KAAK,CAAC,KAAK,GAAG,YAAY,CAAC,YAAY,CAAA;AAExE,KAAK,oBAAoB,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,EAAE,yBAAyB,CAAC,CAAA;AAE1F,QAAA,MAAM,0BAA0B,wDAAwD,CAAA;AAExF,KAAK,4BAA4B,CAAC,YAAY,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG;IACjH,QAAQ,CAAC,CAAC,0BAA0B,CAAC,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAA;CAC1E,CAAA;AAED,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,CAAA;AAEhD,KAAK,+BAA+B,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,IAAI,YAAY,SAC9E,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,cAAc,EAAE,MAAM,aAAa,CAAC,GACtE,KAAK,CAAC,YAAY,CAAC,SAAS,IAAI,GAAG,YAAY,GAC7C,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,YAAY,GAC1F,YAAY,GACZ,YAAY,CAAA;AAEhB,KAAK,mBAAmB,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,+BAA+B,CACpF,OAAO,CAAC,iBAAiB,CAAC,QAAQ,GAAG,CAAC,CAAC,EACvC,MAAM,EACN,KAAK,CACN,CAAA;AAED,KAAK,mBAAmB,CAAC,CAAC,EAAE,CAAC,IACzB,CAAC,GACD,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,GACtB,OAAO,CAAC,uBAAuB,GAC/B,OAAO,CAAC,wBAAwB,GAChC,OAAO,CAAC,YAAY,CAAA;AAExB,KAAK,iBAAiB,CAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,YAAY,GAAG,KAAK,IACjE,QAAQ,GACR,CAAC,GACD,OAAO,CAAC,WAAW,CAAC,QAAQ,GAAG,CAAC,CAAC,GACjC,OAAO,CAAC,uBAAuB,GAC/B,OAAO,CAAC,wBAAwB,GAChC,OAAO,CAAC,YAAY,GACpB,OAAO,CAAC,YAAY,GACpB,YAAY,CAAA;AAwDhB;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,UAAU,GAAG,KAAK;IAC1F;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CACrB,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,CACrF,CAAA;IAED;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAC1B,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,CACnF,CAAA;IAED;;;;;;;;OAQG;IACH,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;IAErE;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAAC,CAAC,CAAA;IAE9E;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAC1B,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,EAChF,KAAK,CACN,CAAA;IAED;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,CAAC,EAAE,IAAI,CAAC,CAAA;IAE7F;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,SAAS,OAAO,CAAC,YAAY,CAAC,GAAG,EACrD,KAAK,EAAE,KAAK,KACT,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;CACzC;AAED,KAAK,QAAQ,CAAC,GAAG,IAAI,GAAG,SAAS,OAAO,CAAC,UAAU,CAAC,MAAM,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,KAAK,GAAG,KAAK,CAAA;AAC/F,KAAK,QAAQ,CAAC,GAAG,IAAI,GAAG,SAAS,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,KAAK,EAAE,GAAG,CAAC,GAAG,KAAK,GAAG,KAAK,CAAA;AAC/F,KAAK,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC,GAAG,MAAM,GAAG,KAAK,CAAA;AAElG;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,gBAAgB,CAAC,KAAK,SAAS,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO;IAC5F;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CACrB,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CACpF,CAAA;IAED;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAC1B,WAAW,CAAC,WAAW,CACrB,MAAM,CAAC,MAAM,CACX,OAAO,CAAC,eAAe,CACrB,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EACzC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EACzC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAC3C,CACF,EACD,UAAU,CACX,CACF,CAAA;IACD;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CACvB,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAC9F,CAAA;IACD;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CACxB,WAAW,CAAC,WAAW,CACrB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EACxD,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CACvD,CACF,CAAA;IACD;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAC1B,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,GAAG,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,EACtG,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAClC,CAAA;IACD;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAC1B,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,GAAG,mBAAmB,CAAC,EAC/E,IAAI,CACL,CAAA;IACD;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,MAAM,SAAS,OAAO,CAAC,YAAY,CAAC,GAAG,EACtD,KAAK,EAAE,MAAM,KACV,gBAAgB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CAC1C;AAED,KAAK,gBAAgB,CAAC,MAAM,IAAI,MAAM,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC,GAAG,UAAU,GACzG,MAAM,SAAS,gBAAgB,CAAC,GAAG,EAAE,MAAM,UAAU,CAAC,GAAG,UAAU,GACnE,KAAK,CAAA;AAET;;;;;;GAMG;AACH,MAAM,MAAM,OAAO,CACjB,MAAM,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,EAChF,KAAK,SAAS,OAAO,CAAC,YAAY,CAAC,GAAG,IACpC,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAA;AA4RrD,KAAK,YAAY,CAAC,KAAK,IAAI,KAAK,SAAS,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,GACpF,KAAK,GACL,CAAC,KAAK,SAAS;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,KAAK,CAAA;CAAE,GAAG,YAAY,CAAC,KAAK,CAAC,GAClE,KAAK,SAAS;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,OAAO,CAAA;CAAE,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,OAAO,CAAC,CAAC,GACvF,KAAK,CAAC,GACR,KAAK,CAAA;AAET,KAAK,kBAAkB,CAAC,KAAK,IAAI,YAAY,CAAC,KAAK,CAAC,SAAS,MAAM,IAAI,GACrE,IAAI,SAAS;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,SAAS,MAAM,CAAA;CAAE,GAAG,IAAI,GAAG,KAAK,GACtE,KAAK,CAAA;AAET,KAAK,yBAAyB,CAAC,KAAK,EAAE,IAAI,SAAS,kBAAkB,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,SAAS,MAAM,IAAI,GACpH,IAAI,SAAS;IAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,KAAK,CAAA;CAAE,GAAG,KAAK,GAAG,KAAK,GAC/E,KAAK,CAAA;AAET,KAAK,UAAU,CAAC,KAAK,SAAS,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;AAanG;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,MAAM,GACjB,KAAK,SAAS,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7D,KAAK,EACL,KAAK,EACL,MAAM,EACN,UAAU,EACV,KAAK,CAAC,IAAI,SAAS,kBAAkB,CAAC,KAAK,CAAC,EAE5C,MAAM,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAC1D,MAAM,IAAI,KACT,IAAI,CAAC,IAAI,CACV,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC,CAIjG,CAAA;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,WAAW,GACtB,KAAK,SAAS,OAAO,CAAC,YAAY,CAAC,GAAG,EACtC,UAAU,EACV,KAAK,CAAC,IAAI,SAAS,kBAAkB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAExD,MAAM,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,EACzC,MAAM,IAAI,KACT,IAAI,CAAC,IAAI,CACV,WAAW,CAAC,WAAW,CACrB,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC,EACjE,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CACvD,CAKsC,CAAA;AAEzC;;;;;;;;;GASG;AACH,eAAO,MAAM,OAAO,GAClB,KAAK,SAAS,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7D,KAAK,EACL,KAAK,EACL,MAAM,EACN,UAAU,EACV,KAAK,CAAC,IAAI,SAAS,kBAAkB,CAAC,KAAK,CAAC,EAE5C,MAAM,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAC1D,MAAM,IAAI,KACT,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,KAAK,CAAC,CAG9D,CAAA;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,GACvB,KAAK,SAAS,OAAO,CAAC,YAAY,CAAC,GAAG,EACtC,UAAU,EACV,KAAK,CAAC,IAAI,SAAS,kBAAkB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAExD,MAAM,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,EACzC,MAAM,IAAI,KACT,IAAI,CAAC,IAAI,CACV,WAAW,CAAC,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAKjD,CAAA;AAEzC,QAAA,MAAM,uBAAuB,qDAAqD,CAAA;AAElF,KAAK,qBAAqB,CAAC,CAAC,SAAS,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,OAAO,CAAC,OAAO,CACjF,GAAG,EACH,MAAM,MAAM,EACZ,GAAG,EACH,GAAG,EACH,GAAG,EACH,MAAM,CAAC,EACP,GAAG,EACH,MAAM,QAAQ,EACd,GAAG,EACH,GAAG,EACH,MAAM,KAAK,EACX,GAAG,EACH,GAAG,CACJ,GAAG,mBAAmB,CACnB,QAAQ,EACR,CAAC,EACD,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAC9B,GACD,KAAK,CAAA;AAET,KAAK,wBAAwB,CAAC,QAAQ,EAAE,CAAC,SAAS,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAC9E,oBAAoB,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAC9C,QAAQ,CACT,CAAA;AAED,KAAK,uBAAuB,CAAC,QAAQ,EAAE,CAAC,SAAS,OAAO,CAAC,OAAO,CAAC,GAAG,IAClE,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG;IAC3C,QAAQ,CAAC,CAAC,uBAAuB,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAA;CAC7D,GACC,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,GACjE;IACA,QAAQ,CAAC,CAAC,uBAAuB,CAAC,EAAE,wBAAwB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;CAC1E,CAAA;AAEL,KAAK,kCAAkC,CAAC,CAAC,SAAS,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,OAAO,CAAC,OAAO,CAChG,MAAM,MAAM,EACZ,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,MAAM,YAAY,EAClB,GAAG,CACJ,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,GAAG;IAC3B,QAAQ,CAAC,wDAAwD,EAAE,CAAC,CAAA;CACrE,GACD,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,MAAM,EAAE,YAAY,CAAC,GACjE,KAAK,CAAA;AAET,KAAK,kBAAkB,CAAC,CAAC,SAAS,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,OAAO,CAAC,OAAO,CAChF,GAAG,EACH,GAAG,EACH,MAAM,KAAK,EACX,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,CACJ,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,GACrC,KAAK,CAAA;AAET,KAAK,aAAa,CAAC,CAAC,SAAS,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,IAAI,CAAC,SAAS,OAAO,CAAC,OAAO,CACzF,MAAM,MAAM,EACZ,GAAG,EACH,GAAG,EACH,GAAG,EACH,MAAM,CAAC,EACP,MAAM,CAAC,EACP,MAAM,QAAQ,EACd,MAAM,QAAQ,EACd,GAAG,EACH,MAAM,MAAM,EACZ,GAAG,EACH,GAAG,EACH,GAAG,CACJ,GAAG,WAAW,CACX,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAChC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAC7B,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,EACzB,MAAM,EACN,iBAAiB,CAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,YAAY,CAAC,CAC1D,GACC,KAAK,CAAA;AAET;;;;;GAKG;AACH,MAAM,WAAW,KAAK,CAAC,QAAQ,EAAE,YAAY,GAAG,KAAK;IACnD;;;;;;;OAOG;IACH,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,OAAO,CAAC,OAAO,CAAC,GAAG,EAC3C,OAAO,EAAE,CAAC,GAAG,uBAAuB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,kCAAkC,CAAC,CAAC,CAAC,EACzF,GAAG,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,KAC3B,aAAa,CAAC,CAAC,EAAE,YAAY,CAAC,CAAA;CACpC;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,IAAI,EAAE;IACjB,CACE,KAAK,CAAC,MAAM,SAAS,OAAO,CAAC,OAAO,CAAC,YAAY,EACjD,KAAK,CAAC,MAAM,SAAS,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,EAChE,KAAK,CAAC,KAAK,SAAS,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,GAAG,EACrE,KAAK,CAAC,KAAK,SAAS,MAAM,CAAC,GAAG,GAAG,OAAO,MAAM,CAAC,IAAI,EACnD,eAAe,SAAS,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,EACzG,CAAC,GAAG,KAAK,EACT,CAAC,GAAG,KAAK,EACT,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,KAAK,EAChB,WAAW,SAAS,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,KAAK,EACnE,MAAM,GAAG,KAAK,EACd,YAAY,SAAS,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,KAAK,EACpE,WAAW,SAAS,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,MAAM,EAExE,OAAO,EACH,OAAO,CAAC,OAAO,CACf,MAAM,EACN,MAAM,EACN,KAAK,EACL,eAAe,EACf,CAAC,EACD,CAAC,EACD,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,MAAM,EACN,KAAK,EACL,YAAY,EACZ,WAAW,CACZ,GACC,4BAA4B,CAC5B,mBAAmB,CACjB,QAAQ,EACR,CAAC,EACD,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAC9B,CACF,GACC,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,MAAM,EAAE,YAAY,CAAC,EACrE,GAAG,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,GAC7C,WAAW,CACZ,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAChC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,EACpC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,EACzB,MAAM,EACN,iBAAiB,CAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAC5C,CAAA;CAIM,CAAA;AAWT;;;;;;;;;GASG;AACH,eAAO,MAAM,IAAI,GAAI,QAAQ,EAAE,YAAY,EACzC,SAAS,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,KAChD,KAAK,CAAC,QAAQ,EAAE,YAAY,CAM7B,CAAA"}
|
package/dist/AtomMachine.js
CHANGED
|
@@ -5,10 +5,12 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import * as Data from "effect/Data";
|
|
7
7
|
import * as Effect from "effect/Effect";
|
|
8
|
+
import * as Equal from "effect/Equal";
|
|
8
9
|
import * as Option from "effect/Option";
|
|
9
10
|
import * as Stream from "effect/Stream";
|
|
10
|
-
import * as Machine from "./Machine.js";
|
|
11
11
|
import { AsyncResult, Atom } from "effect/unstable/reactivity";
|
|
12
|
+
import * as Machine from "./Machine.js";
|
|
13
|
+
import * as Model from "./internal/machineModel.js";
|
|
12
14
|
/**
|
|
13
15
|
* Error returned when a machine command is issued before startup completes.
|
|
14
16
|
*
|
|
@@ -27,6 +29,57 @@ export class ChildNotActiveError extends Data.TaggedError("ChildNotActiveError")
|
|
|
27
29
|
}
|
|
28
30
|
const ExternalRequirementsTypeId = "~effect/reactivity/AtomMachine/ExternalRequirements";
|
|
29
31
|
const startMachineAtomEffect = (get, machine, args) => Effect.scoped(Effect.acquireRelease(Machine.start(machine, ...args), (ref) => ref.stop).pipe(Effect.tap((ref) => Effect.sync(() => get.setSelf(AsyncResult.success(ref)))), Effect.flatMap(() => Effect.never)));
|
|
32
|
+
const makeRuntimeResultAtom = (snapshot) => Atom.readable((get) => {
|
|
33
|
+
const current = get(snapshot);
|
|
34
|
+
if (AsyncResult.isInitial(current)) {
|
|
35
|
+
return AsyncResult.initial(current.waiting);
|
|
36
|
+
}
|
|
37
|
+
else if (AsyncResult.isFailure(current)) {
|
|
38
|
+
return AsyncResult.failureWithPrevious(current.cause, {
|
|
39
|
+
previous: get.self(),
|
|
40
|
+
waiting: current.waiting
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
else if (current.value.status === "error") {
|
|
44
|
+
return AsyncResult.failureWithPrevious(current.value.cause, {
|
|
45
|
+
previous: get.self(),
|
|
46
|
+
waiting: current.waiting
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
return AsyncResult.success(current.value.state, {
|
|
50
|
+
waiting: current.waiting
|
|
51
|
+
});
|
|
52
|
+
}).pipe(Atom.withEquality(Equal.equals));
|
|
53
|
+
const makeChildRuntimeResultAtom = (snapshot) => Atom.readable((get) => {
|
|
54
|
+
const current = get(snapshot);
|
|
55
|
+
if (AsyncResult.isInitial(current)) {
|
|
56
|
+
return AsyncResult.initial(current.waiting);
|
|
57
|
+
}
|
|
58
|
+
else if (AsyncResult.isFailure(current)) {
|
|
59
|
+
return AsyncResult.failureWithPrevious(current.cause, {
|
|
60
|
+
previous: get.self(),
|
|
61
|
+
waiting: current.waiting
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
else if (Option.isNone(current.value)) {
|
|
65
|
+
const previous = get.self();
|
|
66
|
+
if (Option.isSome(previous) && AsyncResult.isFailure(previous.value)) {
|
|
67
|
+
return previous.value;
|
|
68
|
+
}
|
|
69
|
+
return AsyncResult.success(Option.none(), {
|
|
70
|
+
waiting: current.waiting
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
else if (current.value.value.status === "error") {
|
|
74
|
+
return AsyncResult.failureWithPrevious(current.value.value.cause, {
|
|
75
|
+
previous: get.self(),
|
|
76
|
+
waiting: current.waiting
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
return AsyncResult.success(Option.some(current.value.value.state), {
|
|
80
|
+
waiting: current.waiting
|
|
81
|
+
});
|
|
82
|
+
}).pipe(Atom.withEquality(Equal.equals));
|
|
30
83
|
const makeChildRefAtom = (parentRef, child) => Atom.readable((get) => {
|
|
31
84
|
const parent = get(parentRef);
|
|
32
85
|
if (AsyncResult.isInitial(parent)) {
|
|
@@ -99,13 +152,16 @@ const makeChildFromRefAtom = (ref, descriptor) => {
|
|
|
99
152
|
Effect.runCallback(result.value.value.stop);
|
|
100
153
|
}
|
|
101
154
|
});
|
|
155
|
+
const childFamily = Atom.family((nested) => makeChildFromRefAtom(makeChildRefAtom(ref, nested), nested));
|
|
156
|
+
const child = (nested) => childFamily(nested);
|
|
102
157
|
return {
|
|
103
158
|
ref,
|
|
104
159
|
snapshot,
|
|
105
160
|
state: Atom.mapResult(snapshot, Option.map((snapshot) => snapshot.state)),
|
|
161
|
+
result: makeChildRuntimeResultAtom(snapshot),
|
|
106
162
|
send,
|
|
107
163
|
stop,
|
|
108
|
-
child
|
|
164
|
+
child
|
|
109
165
|
};
|
|
110
166
|
};
|
|
111
167
|
const makeFromRefAtom = (ref) => {
|
|
@@ -156,36 +212,107 @@ const makeFromRefAtom = (ref) => {
|
|
|
156
212
|
Effect.runCallback(result.value.stop);
|
|
157
213
|
}
|
|
158
214
|
});
|
|
215
|
+
const optionalRef = Atom.mapResult(ref, Option.some);
|
|
216
|
+
const childFamily = Atom.family((descriptor) => makeChildFromRefAtom(makeChildRefAtom(optionalRef, descriptor), descriptor));
|
|
217
|
+
const child = (descriptor) => childFamily(descriptor);
|
|
159
218
|
return {
|
|
160
219
|
ref,
|
|
161
220
|
snapshot,
|
|
162
221
|
state: Atom.mapResult(snapshot, (snapshot) => snapshot.state),
|
|
222
|
+
result: makeRuntimeResultAtom(snapshot),
|
|
163
223
|
send,
|
|
164
224
|
stop,
|
|
165
|
-
child
|
|
166
|
-
const optionalRef = Atom.mapResult(ref, Option.some);
|
|
167
|
-
return makeChildFromRefAtom(makeChildRefAtom(optionalRef, child), child);
|
|
168
|
-
}
|
|
225
|
+
child
|
|
169
226
|
};
|
|
170
227
|
};
|
|
228
|
+
const selectSnapshot = (snapshot, path) => Model.getSnapshotByPath(snapshot, path).pipe(Option.map((snapshot) => snapshot.value));
|
|
229
|
+
/**
|
|
230
|
+
* Selects the typed value for an active state path.
|
|
231
|
+
*
|
|
232
|
+
* Valid paths and their selected value types are inferred from the bridge.
|
|
233
|
+
* The derived atom suppresses structurally equal updates. Keep the returned
|
|
234
|
+
* atom stable when constructing it inside a component.
|
|
235
|
+
*
|
|
236
|
+
* **Example**
|
|
237
|
+
*
|
|
238
|
+
* ```ts
|
|
239
|
+
* const readyAtom = AtomMachine.select(machineAtom, "Ready")
|
|
240
|
+
* // Atom<AsyncResult<Option<Ready>, StartError | RuntimeError>>
|
|
241
|
+
* ```
|
|
242
|
+
*
|
|
243
|
+
* @category combinators
|
|
244
|
+
* @since 4.0.0
|
|
245
|
+
*/
|
|
246
|
+
export const select = (self, path) => Atom.mapResult(self.result, (snapshot) => selectSnapshot(snapshot, path)).pipe(Atom.withEquality(Equal.equals));
|
|
247
|
+
/**
|
|
248
|
+
* Selects the typed value for an active state path in an invoked child.
|
|
249
|
+
*
|
|
250
|
+
* Valid paths and their selected value types are inferred from the child
|
|
251
|
+
* bridge. An inactive child produces `Option.none()`. Keep the returned atom
|
|
252
|
+
* stable when constructing it inside a component.
|
|
253
|
+
*
|
|
254
|
+
* **Example**
|
|
255
|
+
*
|
|
256
|
+
* ```ts
|
|
257
|
+
* const editingAtom = AtomMachine.selectChild(editorAtom, "Editing")
|
|
258
|
+
* // Atom<AsyncResult<Option<Editing>, StartError | ChildRuntimeError>>
|
|
259
|
+
* ```
|
|
260
|
+
*
|
|
261
|
+
* @category combinators
|
|
262
|
+
* @since 4.0.0
|
|
263
|
+
*/
|
|
264
|
+
export const selectChild = (self, path) => Atom.mapResult(self.result, Option.flatMap((snapshot) => selectSnapshot(snapshot, path))).pipe(Atom.withEquality(Equal.equals));
|
|
265
|
+
/**
|
|
266
|
+
* Returns whether a state path is active.
|
|
267
|
+
*
|
|
268
|
+
* Valid paths are inferred from the bridge snapshot.
|
|
269
|
+
* The derived atom suppresses equal updates. Runtime failures remain in the
|
|
270
|
+
* typed failure channel.
|
|
271
|
+
*
|
|
272
|
+
* @category combinators
|
|
273
|
+
* @since 4.0.0
|
|
274
|
+
*/
|
|
275
|
+
export const matches = (self, path) => Atom.mapResult(self.result, (snapshot) => Option.isSome(Model.getSnapshotByPath(snapshot, path))).pipe(Atom.withEquality(Equal.equals));
|
|
276
|
+
/**
|
|
277
|
+
* Returns whether a state path is active in an invoked child.
|
|
278
|
+
*
|
|
279
|
+
* Valid paths are inferred from the child bridge snapshot.
|
|
280
|
+
* An inactive child produces `false`. Keep the returned atom stable when
|
|
281
|
+
* constructing it inside a component.
|
|
282
|
+
*
|
|
283
|
+
* @category combinators
|
|
284
|
+
* @since 4.0.0
|
|
285
|
+
*/
|
|
286
|
+
export const matchesChild = (self, path) => Atom.mapResult(self.result, Option.exists((snapshot) => Option.isSome(Model.getSnapshotByPath(snapshot, path)))).pipe(Atom.withEquality(Equal.equals));
|
|
287
|
+
const BoundRequirementsTypeId = "~effect/reactivity/AtomMachine/BoundRequirements";
|
|
171
288
|
/**
|
|
172
289
|
* Creates atoms backed by a running machine.
|
|
173
290
|
*
|
|
291
|
+
* Use `bind(runtime).make(machine)` when the machine requires external
|
|
292
|
+
* services.
|
|
293
|
+
*
|
|
174
294
|
* @category constructors
|
|
175
295
|
* @since 4.0.0
|
|
176
296
|
*/
|
|
177
|
-
export const make = ((...args) => {
|
|
178
|
-
const
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
return makeFromRefAtom(ref);
|
|
184
|
-
}
|
|
185
|
-
const runtime = runtimeOrMachine;
|
|
186
|
-
const machine = args[1];
|
|
187
|
-
const input = args.slice(2);
|
|
188
|
-
const ref = runtime.atom((get) => startMachineAtomEffect(get, machine, input));
|
|
297
|
+
export const make = ((machine, ...args) => {
|
|
298
|
+
const ref = Atom.make((get) => startMachineAtomEffect(get, machine, args));
|
|
299
|
+
return makeFromRefAtom(ref);
|
|
300
|
+
});
|
|
301
|
+
const makeWithRuntime = (runtime, machine, args) => {
|
|
302
|
+
const ref = runtime.atom((get) => startMachineAtomEffect(get, machine, args));
|
|
189
303
|
return makeFromRefAtom(ref);
|
|
304
|
+
};
|
|
305
|
+
/**
|
|
306
|
+
* Creates an `AtomMachine` factory that owns a shared Effect runtime.
|
|
307
|
+
*
|
|
308
|
+
* Use this when an application runs many machines from the same service layer.
|
|
309
|
+
* The returned factory keeps runtime provisioning at the composition boundary,
|
|
310
|
+
* while every call to `make` still creates an independent machine bridge.
|
|
311
|
+
*
|
|
312
|
+
* @category constructors
|
|
313
|
+
* @since 4.0.0
|
|
314
|
+
*/
|
|
315
|
+
export const bind = (runtime) => ({
|
|
316
|
+
make: ((machine, ...args) => makeWithRuntime(runtime, machine, args))
|
|
190
317
|
});
|
|
191
318
|
//# sourceMappingURL=AtomMachine.js.map
|
package/dist/AtomMachine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AtomMachine.js","sourceRoot":"","sources":["../src/AtomMachine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AtomMachine.js","sourceRoot":"","sources":["../src/AtomMachine.ts"],"names":[],"mappings":"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"}
|
package/dist/ClusterMachine.d.ts
CHANGED
|
@@ -22,9 +22,13 @@ type Snowflake = Snowflake.Snowflake;
|
|
|
22
22
|
* @since 4.0.0
|
|
23
23
|
*/
|
|
24
24
|
export interface Checkpoint {
|
|
25
|
+
/** Stable identity of the machine definition that produced the snapshot. */
|
|
25
26
|
readonly machineId: string;
|
|
27
|
+
/** Application-controlled deployment or migration version. */
|
|
26
28
|
readonly version: string;
|
|
29
|
+
/** Cluster request whose accepted transition produced this checkpoint. */
|
|
27
30
|
readonly requestId: Snowflake;
|
|
31
|
+
/** Encoded logical machine state and completed outputs. */
|
|
28
32
|
readonly snapshot: Machine.Machine.EncodedSnapshot;
|
|
29
33
|
}
|
|
30
34
|
/**
|
|
@@ -40,7 +44,9 @@ export interface Checkpoint {
|
|
|
40
44
|
* @since 4.0.0
|
|
41
45
|
*/
|
|
42
46
|
export interface LoadResult {
|
|
47
|
+
/** Latest checkpoint for the entity, when one has been committed. */
|
|
43
48
|
readonly checkpoint: Option.Option<Checkpoint>;
|
|
49
|
+
/** Whether the requested id has already been committed. */
|
|
44
50
|
readonly processed: boolean;
|
|
45
51
|
}
|
|
46
52
|
/**
|
|
@@ -157,8 +163,8 @@ export declare class Rejected extends Rejected_base {
|
|
|
157
163
|
*/
|
|
158
164
|
export declare const SendResult: Schema.Union<readonly [typeof Accepted, typeof Rejected]>;
|
|
159
165
|
type SendRpc<Events extends ReadonlyArray<Machine.Machine.TaggedSchema>> = Rpc.Rpc<"send", Schema.Union<Events>, typeof SendResult>;
|
|
160
|
-
type MachineEvents<M extends Machine.Machine.Any> = M extends Machine.Machine<any,
|
|
161
|
-
type MachineEmits<M extends Machine.Machine.Any> = M extends Machine.Machine<any, any, any, any, any, any, any, any, any, any, infer Emits, any> ? Emits & ReadonlyArray<Machine.Machine.TaggedSchema> : never;
|
|
166
|
+
type MachineEvents<M extends Machine.Machine.Any> = M extends Machine.Machine<any, any, any, any, any, any, any, any, any, any, any, any, infer InputEvents> ? InputEvents & ReadonlyArray<Machine.Machine.TaggedSchema> : never;
|
|
167
|
+
type MachineEmits<M extends Machine.Machine.Any> = M extends Machine.Machine<any, any, any, any, any, any, any, any, any, any, infer Emits, any, any> ? Emits & ReadonlyArray<Machine.Machine.TaggedSchema> : never;
|
|
162
168
|
/**
|
|
163
169
|
* Cluster adapter for one machine definition and entity type.
|
|
164
170
|
*
|
|
@@ -172,7 +178,9 @@ type MachineEmits<M extends Machine.Machine.Any> = M extends Machine.Machine<any
|
|
|
172
178
|
* @since 4.0.0
|
|
173
179
|
*/
|
|
174
180
|
export interface ClusterMachine<in out Type extends string, in out M extends Machine.Machine.Any, out Services = MachineServices<M>> {
|
|
181
|
+
/** Machine definition executed by each entity instance. */
|
|
175
182
|
readonly machine: M;
|
|
183
|
+
/** Cluster entity exposing the persisted, schema-validated `send` RPC. */
|
|
176
184
|
readonly entity: Entity.Entity<Type, SendRpc<MachineEvents<M>>>;
|
|
177
185
|
/**
|
|
178
186
|
* Creates the Cluster entity layer for this machine.
|
|
@@ -184,12 +192,14 @@ export interface ClusterMachine<in out Type extends string, in out M extends Mac
|
|
|
184
192
|
* arbitrary external effects are not atomic with the checkpoint. The reply
|
|
185
193
|
* is persisted after commit and recovered through request-id deduplication if
|
|
186
194
|
* delivery is interrupted. Machines that never emit may omit `enqueue`.
|
|
195
|
+
*
|
|
196
|
+
* @since 4.0.0
|
|
187
197
|
*/
|
|
188
198
|
readonly toLayer: <R = never>(options?: {
|
|
189
199
|
readonly enqueue?: (event: Machine.Machine.EmitOf<MachineEmits<M>>) => Effect.Effect<void, unknown, R>;
|
|
190
200
|
}) => Layer.Layer<never, never, Storage | MessageStorage.MessageStorage | Sharding.Sharding | R | Services>;
|
|
191
201
|
}
|
|
192
|
-
type MachineServices<M extends Machine.Machine.Any> = M extends Machine.Machine<infer States, infer Events, any, any, any, infer R, any, infer InitialR, any, any, infer Emits, any> ? ExcludeCompatibleRuntime<Machine.ExecutionServices<R | InitialR>, Machine.Machine.EventOf<Events & ReadonlyArray<Machine.Machine.TaggedSchema>>, Machine.Machine.EmitOf<Emits & ReadonlyArray<Machine.Machine.TaggedSchema>>> | Machine.Machine.SnapshotDecodingServices<States & Machine.Machine.StateSchemas> | Machine.Machine.SnapshotEncodingServices<States & Machine.Machine.StateSchemas> : never;
|
|
202
|
+
type MachineServices<M extends Machine.Machine.Any> = M extends Machine.Machine<infer States, infer Events, any, any, any, infer R, any, infer InitialR, any, any, infer Emits, any, any> ? ExcludeCompatibleRuntime<Machine.ExecutionServices<R | InitialR>, Machine.Machine.EventOf<Events & ReadonlyArray<Machine.Machine.TaggedSchema>>, Machine.Machine.EmitOf<Emits & ReadonlyArray<Machine.Machine.TaggedSchema>>> | Machine.Machine.SnapshotDecodingServices<States & Machine.Machine.StateSchemas> | Machine.Machine.SnapshotEncodingServices<States & Machine.Machine.StateSchemas> : never;
|
|
193
203
|
type IsAny<A> = 0 extends (1 & A) ? true : false;
|
|
194
204
|
type ExcludeCompatibleRuntime<Requirements, Events, Emits> = Requirements extends Machine.Runtime.Requirement<infer RequiredEvents, infer RequiredEmits> ? IsAny<Requirements> extends true ? Requirements : [RequiredEvents] extends [Events] ? [RequiredEmits] extends [Emits] ? never : Requirements : Requirements : Requirements;
|
|
195
205
|
/**
|
|
@@ -243,8 +253,8 @@ export declare const layerMemory: Layer.Layer<Storage>;
|
|
|
243
253
|
* @category constructors
|
|
244
254
|
* @since 4.0.0
|
|
245
255
|
*/
|
|
246
|
-
export declare const make: <const Type extends string, States extends Machine.Machine.StateSchemas, Events extends ReadonlyArray<Machine.Machine.TaggedSchema>, Input extends Schema.Top, UnhandledStates extends Machine.Machine.StateIdentifier<States>, E, R, InitialE, InitialR, FinalStates extends Machine.Machine.StateIdentifier<States>, Output, Emits extends ReadonlyArray<Machine.Machine.TaggedSchema>, OutputStates extends Machine.Machine.StateIdentifier<States
|
|
256
|
+
export declare const make: <const Type extends string, States extends Machine.Machine.StateSchemas, Events extends ReadonlyArray<Machine.Machine.TaggedSchema>, Input extends Schema.Top, UnhandledStates extends Machine.Machine.StateIdentifier<States>, E, R, InitialE, InitialR, FinalStates extends Machine.Machine.StateIdentifier<States>, Output, Emits extends ReadonlyArray<Machine.Machine.TaggedSchema>, OutputStates extends Machine.Machine.StateIdentifier<States>, InputEvents extends ReadonlyArray<Machine.Machine.TaggedSchema> = Events>(type: Type, machine: Machine.Machine<States, Events, Input, UnhandledStates, E, R, InitialE, InitialR, FinalStates, Output, Emits, OutputStates, InputEvents> & Machine.Machine.EnsureOutputImplementations<States, OutputStates>, options: {
|
|
247
257
|
readonly version: string;
|
|
248
|
-
}, ...input: [...Machine.Machine.InputArgs<Input>]) => ClusterMachine<Type, Machine.Machine<States, Events, Input, UnhandledStates, E, R, InitialE, InitialR, FinalStates, Output, Emits, OutputStates>, ExcludeCompatibleRuntime<Machine.ExecutionServices<R | InitialR>, Machine.Machine.EventOf<Events>, Machine.Machine.EmitOf<Emits>> | Machine.Machine.SnapshotDecodingServices<States> | Machine.Machine.SnapshotEncodingServices<States>>;
|
|
258
|
+
}, ...input: [...Machine.Machine.InputArgs<Input>]) => ClusterMachine<Type, Machine.Machine<States, Events, Input, UnhandledStates, E, R, InitialE, InitialR, FinalStates, Output, Emits, OutputStates, InputEvents>, ExcludeCompatibleRuntime<Machine.ExecutionServices<R | InitialR>, Machine.Machine.EventOf<Events>, Machine.Machine.EmitOf<Emits>> | Machine.Machine.SnapshotDecodingServices<States> | Machine.Machine.SnapshotEncodingServices<States>>;
|
|
249
259
|
export {};
|
|
250
260
|
//# sourceMappingURL=ClusterMachine.d.ts.map
|