xstate 5.0.0-beta.21 → 5.0.0-beta.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/actions/dist/xstate-actions.cjs.js +1 -1
  2. package/actions/dist/xstate-actions.development.cjs.js +1 -1
  3. package/actions/dist/xstate-actions.development.esm.js +1 -1
  4. package/actions/dist/xstate-actions.esm.js +1 -1
  5. package/actions/dist/xstate-actions.umd.min.js +1 -1
  6. package/actions/dist/xstate-actions.umd.min.js.map +1 -1
  7. package/actors/dist/xstate-actors.cjs.js +1 -1
  8. package/actors/dist/xstate-actors.development.cjs.js +1 -1
  9. package/actors/dist/xstate-actors.development.esm.js +1 -1
  10. package/actors/dist/xstate-actors.esm.js +1 -1
  11. package/actors/dist/xstate-actors.umd.min.js.map +1 -1
  12. package/dev/dist/xstate-dev.umd.min.js.map +1 -1
  13. package/dist/{actions-a95d2e66.development.cjs.js → actions-0fcd4d15.development.cjs.js} +47 -30
  14. package/dist/{actions-5039c951.esm.js → actions-bf7f6679.esm.js} +45 -30
  15. package/dist/{actions-c619a105.cjs.js → actions-e83129c5.cjs.js} +47 -30
  16. package/dist/{actions-49f0501e.development.esm.js → actions-f6b5002d.development.esm.js} +45 -30
  17. package/dist/declarations/src/Machine.d.ts +2 -2
  18. package/dist/declarations/src/State.d.ts +5 -5
  19. package/dist/declarations/src/StateMachine.d.ts +24 -18
  20. package/dist/declarations/src/StateNode.d.ts +8 -8
  21. package/dist/declarations/src/actions/assign.d.ts +6 -6
  22. package/dist/declarations/src/actions/cancel.d.ts +7 -7
  23. package/dist/declarations/src/actions/choose.d.ts +4 -10
  24. package/dist/declarations/src/actions/log.d.ts +7 -7
  25. package/dist/declarations/src/actions/pure.d.ts +5 -17
  26. package/dist/declarations/src/actions/raise.d.ts +3 -3
  27. package/dist/declarations/src/actions/send.d.ts +22 -22
  28. package/dist/declarations/src/actions/stop.d.ts +7 -7
  29. package/dist/declarations/src/dev/index.d.ts +6 -6
  30. package/dist/declarations/src/index.d.ts +3 -2
  31. package/dist/declarations/src/interpreter.d.ts +31 -17
  32. package/dist/declarations/src/stateUtils.d.ts +12 -12
  33. package/dist/declarations/src/typegenTypes.d.ts +1 -1
  34. package/dist/declarations/src/types.d.ts +117 -136
  35. package/dist/declarations/src/utils.d.ts +8 -8
  36. package/dist/xstate.cjs.js +12 -9
  37. package/dist/xstate.cjs.mjs +3 -1
  38. package/dist/xstate.development.cjs.js +12 -9
  39. package/dist/xstate.development.cjs.mjs +3 -1
  40. package/dist/xstate.development.esm.js +9 -8
  41. package/dist/xstate.esm.js +9 -8
  42. package/dist/xstate.umd.min.js +1 -1
  43. package/dist/xstate.umd.min.js.map +1 -1
  44. package/guards/dist/xstate-guards.cjs.js +1 -1
  45. package/guards/dist/xstate-guards.development.cjs.js +1 -1
  46. package/guards/dist/xstate-guards.development.esm.js +1 -1
  47. package/guards/dist/xstate-guards.esm.js +1 -1
  48. package/guards/dist/xstate-guards.umd.min.js.map +1 -1
  49. package/package.json +1 -1
@@ -1,9 +1,9 @@
1
- import { ActionArgs, ActorRef, AnyActorContext, AnyActorRef, AnyEventObject, AnyState, Cast, DelayExpr, EventFrom, EventObject, InferEvent, MachineContext, SendExpr, SendToActionOptions, SendToActionParams, UnifiedArg } from "../types.js";
2
- declare function resolve(actorContext: AnyActorContext, state: AnyState, args: ActionArgs<any, any>, { to, event: eventOrExpr, id, delay }: {
1
+ import { ActionArgs, ActorRef, AnyActorContext, AnyActorRef, AnyEventObject, AnyState, Cast, DelayExpr, EventFrom, EventObject, InferEvent, MachineContext, SendExpr, SendToActionOptions, SendToActionParams, UnifiedArg, ParameterizedObject } from "../types.js";
2
+ declare function resolve(actorContext: AnyActorContext, state: AnyState, args: ActionArgs<any, any, any>, { to, event: eventOrExpr, id, delay }: {
3
3
  to: AnyActorRef | string | ((args: UnifiedArg<MachineContext, EventObject>) => AnyActorRef | string);
4
- event: EventObject | SendExpr<MachineContext, EventObject, EventObject>;
4
+ event: EventObject | SendExpr<MachineContext, EventObject, ParameterizedObject | undefined, EventObject>;
5
5
  id: string | undefined;
6
- delay: string | number | DelayExpr<MachineContext, EventObject> | undefined;
6
+ delay: string | number | DelayExpr<MachineContext, EventObject, ParameterizedObject | undefined> | undefined;
7
7
  }): (AnyState | {
8
8
  to: AnyActorRef;
9
9
  event: EventObject;
@@ -25,13 +25,13 @@ declare function execute(actorContext: AnyActorContext, params: {
25
25
  * - `id` - The unique send event identifier (used with `cancel()`).
26
26
  * - `delay` - The number of milliseconds to delay the sending of the event.
27
27
  */
28
- export declare function sendTo<TContext extends MachineContext, TExpressionEvent extends EventObject, TEvent extends EventObject, TActor extends AnyActorRef>(to: TActor | string | ((args: UnifiedArg<TContext, TExpressionEvent>) => TActor | string), eventOrExpr: EventFrom<TActor> | SendExpr<TContext, TExpressionEvent, InferEvent<Cast<EventFrom<TActor>, EventObject>>>, options?: SendToActionOptions<TContext, TExpressionEvent>): {
29
- (_: ActionArgs<TContext, TExpressionEvent>): void;
28
+ export declare function sendTo<TContext extends MachineContext, TExpressionEvent extends EventObject, TExpressionAction extends ParameterizedObject | undefined, TActor extends AnyActorRef>(to: TActor | string | ((args: ActionArgs<TContext, TExpressionEvent, TExpressionAction>) => TActor | string), eventOrExpr: EventFrom<TActor> | SendExpr<TContext, TExpressionEvent, TExpressionAction, InferEvent<Cast<EventFrom<TActor>, EventObject>>>, options?: SendToActionOptions<TContext, TExpressionEvent, TExpressionAction>): {
29
+ (_: ActionArgs<TContext, TExpressionEvent, TExpressionAction>): void;
30
30
  type: string;
31
- to: string | TActor | ((args: UnifiedArg<TContext, TExpressionEvent>) => TActor | string);
32
- event: ((TActor extends import("../types.js").AnyFunction ? ReturnType<TActor> : TActor) extends infer R ? R extends import("../StateMachine.js").StateMachine<infer _ extends MachineContext, infer TEvent_1 extends EventObject, infer __ extends import("../types.js").ParameterizedObject, infer ___ extends import("../types.js").ProvidedActor, infer ____, infer _____> ? TEvent_1 : R extends import("../State.js").State<infer _TContext extends MachineContext, infer TEvent_2 extends EventObject, infer _TAction extends import("../types.js").ProvidedActor, infer _TActor> ? TEvent_2 : R extends ActorRef<infer TEvent_3 extends EventObject, infer __1> ? TEvent_3 : never : never) | SendExpr<TContext, TExpressionEvent, InferEvent<Cast<(TActor extends import("../types.js").AnyFunction ? ReturnType<TActor> : TActor) extends infer R ? R extends import("../StateMachine.js").StateMachine<infer _ extends MachineContext, infer TEvent_1 extends EventObject, infer __ extends import("../types.js").ParameterizedObject, infer ___ extends import("../types.js").ProvidedActor, infer ____, infer _____> ? TEvent_1 : R extends import("../State.js").State<infer _TContext extends MachineContext, infer TEvent_2 extends EventObject, infer _TAction extends import("../types.js").ProvidedActor, infer _TActor> ? TEvent_2 : R extends ActorRef<infer TEvent_3 extends EventObject, infer __1> ? TEvent_3 : never : never, EventObject>>>;
31
+ to: string | TActor | ((args: ActionArgs<TContext, TExpressionEvent, TExpressionAction>) => TActor | string);
32
+ event: ((TActor extends import("../types.js").AnyFunction ? ReturnType<TActor> : TActor) extends infer R ? R extends import("../StateMachine.js").StateMachine<infer _TContext extends MachineContext, infer TEvent extends EventObject, infer _TAction extends ParameterizedObject, infer _TActor extends import("../types.js").ProvidedActor, infer _TInput, infer _TOutput, infer _TResolvedTypesMeta> ? TEvent : R extends import("../State.js").State<infer _TContext_1 extends MachineContext, infer TEvent_1 extends EventObject, infer _TActor_1 extends import("../types.js").ProvidedActor, infer _TOutput_1, infer _TResolvedTypesMeta_1> ? TEvent_1 : R extends ActorRef<infer TEvent_2 extends EventObject, infer _> ? TEvent_2 : never : never) | SendExpr<TContext, TExpressionEvent, TExpressionAction, InferEvent<Cast<(TActor extends import("../types.js").AnyFunction ? ReturnType<TActor> : TActor) extends infer R ? R extends import("../StateMachine.js").StateMachine<infer _TContext extends MachineContext, infer TEvent extends EventObject, infer _TAction extends ParameterizedObject, infer _TActor extends import("../types.js").ProvidedActor, infer _TInput, infer _TOutput, infer _TResolvedTypesMeta> ? TEvent : R extends import("../State.js").State<infer _TContext_1 extends MachineContext, infer TEvent_1 extends EventObject, infer _TActor_1 extends import("../types.js").ProvidedActor, infer _TOutput_1, infer _TResolvedTypesMeta_1> ? TEvent_1 : R extends ActorRef<infer TEvent_2 extends EventObject, infer _> ? TEvent_2 : never : never, EventObject>>>;
33
33
  id: string | undefined;
34
- delay: string | number | DelayExpr<TContext, TExpressionEvent> | undefined;
34
+ delay: string | number | DelayExpr<TContext, TExpressionEvent, TExpressionAction> | undefined;
35
35
  resolve: typeof resolve;
36
36
  execute: typeof execute;
37
37
  };
@@ -41,30 +41,30 @@ export declare function sendTo<TContext extends MachineContext, TExpressionEvent
41
41
  * @param event The event to send to the parent machine.
42
42
  * @param options Options to pass into the send event.
43
43
  */
44
- export declare function sendParent<TContext extends MachineContext, TExpressionEvent extends EventObject, TEvent extends EventObject, TSentEvent extends EventObject = AnyEventObject>(event: TSentEvent | SendExpr<TContext, TExpressionEvent, TSentEvent>, options?: SendToActionOptions<TContext, TExpressionEvent>): {
45
- (_: ActionArgs<TContext, TExpressionEvent, import("../types.js").ParameterizedObject>): void;
44
+ export declare function sendParent<TContext extends MachineContext, TExpressionEvent extends EventObject, TExpressionAction extends ParameterizedObject | undefined, TSentEvent extends EventObject = AnyEventObject>(event: TSentEvent | SendExpr<TContext, TExpressionEvent, TExpressionAction, TSentEvent>, options?: SendToActionOptions<TContext, TExpressionEvent, TExpressionAction>): {
45
+ (_: ActionArgs<TContext, TExpressionEvent, TSentEvent>): void;
46
46
  type: string;
47
- to: string | AnyActorRef | ((args: UnifiedArg<TContext, TExpressionEvent>) => string | AnyActorRef);
47
+ to: string | AnyActorRef | ((args: ActionArgs<TContext, TExpressionEvent, TSentEvent>) => string | AnyActorRef);
48
48
  event: any;
49
49
  id: string | undefined;
50
- delay: string | number | DelayExpr<TContext, TExpressionEvent> | undefined;
50
+ delay: string | number | DelayExpr<TContext, TExpressionEvent, TSentEvent> | undefined;
51
51
  resolve: typeof resolve;
52
52
  execute: typeof execute;
53
53
  };
54
- type Target<TContext extends MachineContext, TEvent extends EventObject> = string | ActorRef<any, any> | ((args: UnifiedArg<TContext, TEvent>) => string | ActorRef<any, any>);
54
+ type Target<TContext extends MachineContext, TExpressionEvent extends EventObject, TExpressionAction extends ParameterizedObject | undefined> = string | ActorRef<any, any> | ((args: ActionArgs<TContext, TExpressionEvent, TExpressionAction>) => string | ActorRef<any, any>);
55
55
  /**
56
56
  * Forwards (sends) an event to a specified service.
57
57
  *
58
58
  * @param target The target service to forward the event to.
59
59
  * @param options Options to pass into the send action creator.
60
60
  */
61
- export declare function forwardTo<TContext extends MachineContext, TExpressionEvent extends EventObject>(target: Target<TContext, TExpressionEvent>, options?: SendToActionOptions<TContext, TExpressionEvent>): {
62
- (_: ActionArgs<TContext, TExpressionEvent, import("../types.js").ParameterizedObject>): void;
61
+ export declare function forwardTo<TContext extends MachineContext, TExpressionEvent extends EventObject, TExpressionAction extends ParameterizedObject | undefined>(target: Target<TContext, TExpressionEvent, TExpressionAction>, options?: SendToActionOptions<TContext, TExpressionEvent, TExpressionAction>): {
62
+ (_: ActionArgs<TContext, TExpressionEvent, TExpressionAction>): void;
63
63
  type: string;
64
- to: string | AnyActorRef | ((args: UnifiedArg<TContext, TExpressionEvent>) => string | AnyActorRef);
64
+ to: string | AnyActorRef | ((args: ActionArgs<TContext, TExpressionEvent, TExpressionAction>) => string | AnyActorRef);
65
65
  event: any;
66
66
  id: string | undefined;
67
- delay: string | number | DelayExpr<TContext, TExpressionEvent> | undefined;
67
+ delay: string | number | DelayExpr<TContext, TExpressionEvent, TExpressionAction> | undefined;
68
68
  resolve: typeof resolve;
69
69
  execute: typeof execute;
70
70
  };
@@ -75,13 +75,13 @@ export declare function forwardTo<TContext extends MachineContext, TExpressionEv
75
75
  * takes in the `context`, `event`, and `meta`, and returns the error data to send.
76
76
  * @param options Options to pass into the send action creator.
77
77
  */
78
- export declare function escalate<TContext extends MachineContext, TExpressionEvent extends EventObject, TErrorData = any>(errorData: TErrorData | ((args: UnifiedArg<TContext, TExpressionEvent>) => TErrorData), options?: SendToActionParams<TContext, TExpressionEvent>): {
79
- (_: ActionArgs<TContext, TExpressionEvent, import("../types.js").ParameterizedObject>): void;
78
+ export declare function escalate<TContext extends MachineContext, TExpressionEvent extends EventObject, TExpressionAction extends ParameterizedObject | undefined, TErrorData = any>(errorData: TErrorData | ((args: UnifiedArg<TContext, TExpressionEvent>) => TErrorData), options?: SendToActionParams<TContext, TExpressionEvent, TExpressionAction, EventObject>): {
79
+ (_: ActionArgs<TContext, TExpressionEvent, EventObject>): void;
80
80
  type: string;
81
- to: string | AnyActorRef | ((args: UnifiedArg<TContext, TExpressionEvent>) => string | AnyActorRef);
81
+ to: string | AnyActorRef | ((args: ActionArgs<TContext, TExpressionEvent, EventObject>) => string | AnyActorRef);
82
82
  event: any;
83
83
  id: string | undefined;
84
- delay: string | number | DelayExpr<TContext, TExpressionEvent> | undefined;
84
+ delay: string | number | DelayExpr<TContext, TExpressionEvent, EventObject> | undefined;
85
85
  resolve: typeof resolve;
86
86
  execute: typeof execute;
87
87
  };
@@ -1,7 +1,7 @@
1
- import { ActionArgs, ActorRef, AnyActorContext, AnyState, EventObject, MachineContext, UnifiedArg } from "../types.js";
2
- type ResolvableActorRef<TContext extends MachineContext, TExpressionEvent extends EventObject> = string | ActorRef<any> | ((args: UnifiedArg<TContext, TExpressionEvent>) => ActorRef<any> | string);
3
- declare function resolve(_: AnyActorContext, state: AnyState, args: ActionArgs<any, any>, { actorRef }: {
4
- actorRef: ResolvableActorRef<any, any>;
1
+ import { ActionArgs, ActorRef, AnyActorContext, AnyState, EventObject, MachineContext, ParameterizedObject } from "../types.js";
2
+ type ResolvableActorRef<TContext extends MachineContext, TExpressionEvent extends EventObject, TExpressionAction extends ParameterizedObject | undefined> = string | ActorRef<any> | ((args: ActionArgs<TContext, TExpressionEvent, TExpressionAction>) => ActorRef<any> | string);
3
+ declare function resolve(_: AnyActorContext, state: AnyState, args: ActionArgs<any, any, any>, { actorRef }: {
4
+ actorRef: ResolvableActorRef<any, any, any>;
5
5
  }): (AnyState | ActorRef<any, any>)[];
6
6
  declare function execute(actorContext: AnyActorContext, actorRef: ActorRef<any, any> | undefined): void;
7
7
  /**
@@ -9,10 +9,10 @@ declare function execute(actorContext: AnyActorContext, actorRef: ActorRef<any,
9
9
  *
10
10
  * @param actorRef The actor to stop.
11
11
  */
12
- export declare function stop<TContext extends MachineContext, TExpressionEvent extends EventObject, TEvent extends EventObject>(actorRef: ResolvableActorRef<TContext, TExpressionEvent>): {
13
- (_: ActionArgs<TContext, TExpressionEvent>): void;
12
+ export declare function stop<TContext extends MachineContext, TExpressionEvent extends EventObject, TExpressionAction extends ParameterizedObject | undefined>(actorRef: ResolvableActorRef<TContext, TExpressionEvent, TExpressionAction>): {
13
+ (_: ActionArgs<TContext, TExpressionEvent, TExpressionAction>): void;
14
14
  type: string;
15
- actorRef: ResolvableActorRef<TContext, TExpressionEvent>;
15
+ actorRef: ResolvableActorRef<TContext, TExpressionEvent, TExpressionAction>;
16
16
  resolve: typeof resolve;
17
17
  execute: typeof execute;
18
18
  };
@@ -1,14 +1,14 @@
1
- import { AnyInterpreter, DevToolsAdapter } from "../types.js";
2
- type ServiceListener = (service: AnyInterpreter) => void;
1
+ import { AnyActor, DevToolsAdapter } from "../types.js";
2
+ type ServiceListener = (service: AnyActor) => void;
3
3
  export interface XStateDevInterface {
4
- register: (service: AnyInterpreter) => void;
5
- unregister: (service: AnyInterpreter) => void;
4
+ register: (service: AnyActor) => void;
5
+ unregister: (service: AnyActor) => void;
6
6
  onRegister: (listener: ServiceListener) => {
7
7
  unsubscribe: () => void;
8
8
  };
9
- services: Set<AnyInterpreter>;
9
+ services: Set<AnyActor>;
10
10
  }
11
11
  export declare function getGlobal(): typeof globalThis | undefined;
12
- export declare function registerService(service: AnyInterpreter): void;
12
+ export declare function registerService(service: AnyActor): void;
13
13
  export declare const devToolsAdapter: DevToolsAdapter;
14
14
  export {};
@@ -6,7 +6,7 @@ export { log } from "./actions/log.js";
6
6
  export { pure } from "./actions/pure.js";
7
7
  export { raise } from "./actions/raise.js";
8
8
  export { stop } from "./actions/stop.js";
9
- import { interpret, Interpreter, ActorStatus } from "./interpreter.js";
9
+ import { createActor, interpret, Actor, ActorStatus, InterpreterStatus, Interpreter } from "./interpreter.js";
10
10
  import { createMachine } from "./Machine.js";
11
11
  import { mapState } from "./mapState.js";
12
12
  import { State } from "./State.js";
@@ -18,7 +18,8 @@ export { waitFor } from "./waitFor.js";
18
18
  export * from "./typegenTypes.js";
19
19
  export * from "./types.js";
20
20
  export { matchesState, pathToStateValue, toObserver } from "./utils.js";
21
- export { StateNode, State, mapState, sendTo, sendParent, forwardTo, interpret, Interpreter, ActorStatus as InterpreterStatus, doneInvoke, createMachine };
21
+ export { StateNode, State, mapState, sendTo, sendParent, forwardTo, createActor, interpret, // deprecated
22
+ Actor, type Interpreter, ActorStatus, InterpreterStatus, doneInvoke, createMachine };
22
23
  export { fromPromise, fromObservable, fromCallback, fromEventObservable, fromTransition } from "./actors/index.js";
23
24
  export { stateIn, not, and, or } from "./guards.js";
24
25
  declare global {
@@ -1,7 +1,7 @@
1
1
  import { symbolObservable } from "./symbolObservable.js";
2
2
  import { AreAllImplementationsAssumedToBeProvided, MissingImplementationsError } from "./typegenTypes.js";
3
- import type { ActorSystem, AnyActorLogic, AnyStateMachine, EventFromLogic, InterpreterFrom, PersistedStateFrom, SnapshotFrom, AnyActorRef } from "./types.js";
4
- import { ActorRef, EventObject, InteropSubscribable, InterpreterOptions, Observer, Subscription } from "./types.js";
3
+ import type { ActorSystem, AnyActorLogic, AnyStateMachine, EventFromLogic, PersistedStateFrom, SnapshotFrom, AnyActorRef } from "./types.js";
4
+ import { ActorRef, EventObject, InteropSubscribable, ActorOptions, Observer, Subscription } from "./types.js";
5
5
  export type SnapshotListener<TLogic extends AnyActorLogic> = (state: SnapshotFrom<TLogic>) => void;
6
6
  export type EventListener<TEvent extends EventObject = EventObject> = (event: TEvent) => void;
7
7
  export type Listener = () => void;
@@ -15,17 +15,21 @@ export declare enum ActorStatus {
15
15
  Running = 1,
16
16
  Stopped = 2
17
17
  }
18
- export declare class Interpreter<TLogic extends AnyActorLogic, TEvent extends EventObject = EventFromLogic<TLogic>> implements ActorRef<TEvent, SnapshotFrom<TLogic>> {
18
+ /**
19
+ * @deprecated Use `ActorStatus` instead.
20
+ */
21
+ export declare const InterpreterStatus: typeof ActorStatus;
22
+ export declare class Actor<TLogic extends AnyActorLogic, TEvent extends EventObject = EventFromLogic<TLogic>> implements ActorRef<TEvent, SnapshotFrom<TLogic>> {
19
23
  logic: TLogic;
20
24
  /**
21
- * The current state of the interpreted logic.
25
+ * The current internal state of the actor.
22
26
  */
23
27
  private _state;
24
28
  /**
25
29
  * The clock that is responsible for setting and clearing timeouts, such as delayed events and transitions.
26
30
  */
27
31
  clock: Clock;
28
- options: Readonly<InterpreterOptions<TLogic>>;
32
+ options: Readonly<ActorOptions<TLogic>>;
29
33
  /**
30
34
  * The unique identifier for this actor relative to its parent.
31
35
  */
@@ -50,32 +54,32 @@ export declare class Interpreter<TLogic extends AnyActorLogic, TEvent extends Ev
50
54
  private _doneEvent?;
51
55
  src?: string;
52
56
  /**
53
- * Creates a new Interpreter instance (i.e., service) for the given logic with the provided options, if any.
57
+ * Creates a new actor instance for the given logic with the provided options, if any.
54
58
  *
55
- * @param logic The logic to be interpreted
56
- * @param options Interpreter options
59
+ * @param logic The logic to create an actor from
60
+ * @param options Actor options
57
61
  */
58
- constructor(logic: TLogic, options?: InterpreterOptions<TLogic>);
62
+ constructor(logic: TLogic, options?: ActorOptions<TLogic>);
59
63
  private _initState;
60
64
  private _deferred;
61
65
  private update;
62
66
  subscribe(observer: Observer<SnapshotFrom<TLogic>>): Subscription;
63
67
  subscribe(nextListener?: (state: SnapshotFrom<TLogic>) => void, errorListener?: (error: any) => void, completeListener?: () => void): Subscription;
64
68
  /**
65
- * Starts the interpreter from the initial state
69
+ * Starts the Actor from the initial state
66
70
  */
67
71
  start(): this;
68
72
  private _process;
69
73
  private _stop;
70
74
  /**
71
- * Stops the interpreter and unsubscribe all listeners.
75
+ * Stops the Actor and unsubscribe all listeners.
72
76
  */
73
77
  stop(): this;
74
78
  private _complete;
75
79
  private _error;
76
80
  private _stopProcedure;
77
81
  /**
78
- * Sends an event to the running interpreter to trigger a transition.
82
+ * Sends an event to the running Actor to trigger a transition.
79
83
  *
80
84
  * @param event The event to send
81
85
  */
@@ -92,14 +96,24 @@ export declare class Interpreter<TLogic extends AnyActorLogic, TEvent extends Ev
92
96
  id: string;
93
97
  };
94
98
  getPersistedState(): PersistedStateFrom<TLogic> | undefined;
95
- [Symbol.observable](): InteropSubscribable<SnapshotFrom<TLogic>>;
99
+ [symbolObservable](): InteropSubscribable<SnapshotFrom<TLogic>>;
96
100
  getSnapshot(): SnapshotFrom<TLogic>;
97
101
  }
102
+ /**
103
+ * Creates a new `ActorRef` instance for the given machine with the provided options, if any.
104
+ *
105
+ * @param machine The machine to create an actor from
106
+ * @param options `ActorRef` options
107
+ */
108
+ export declare function createActor<TMachine extends AnyStateMachine>(machine: AreAllImplementationsAssumedToBeProvided<TMachine['__TResolvedTypesMeta']> extends true ? TMachine : MissingImplementationsError<TMachine['__TResolvedTypesMeta']>, options?: ActorOptions<TMachine>): Actor<TMachine>;
109
+ export declare function createActor<TLogic extends AnyActorLogic>(logic: TLogic, options?: ActorOptions<TLogic>): Actor<TLogic>;
98
110
  /**
99
111
  * Creates a new Interpreter instance for the given machine with the provided options, if any.
100
112
  *
101
- * @param machine The machine to interpret
102
- * @param options Interpreter options
113
+ * @deprecated Use `createActor` instead
114
+ */
115
+ export declare const interpret: typeof createActor;
116
+ /**
117
+ * @deprecated Use `Actor` instead.
103
118
  */
104
- export declare function interpret<TMachine extends AnyStateMachine>(machine: AreAllImplementationsAssumedToBeProvided<TMachine['__TResolvedTypesMeta']> extends true ? TMachine : MissingImplementationsError<TMachine['__TResolvedTypesMeta']>, options?: InterpreterOptions<TMachine>): InterpreterFrom<TMachine>;
105
- export declare function interpret<TLogic extends AnyActorLogic>(logic: TLogic, options?: InterpreterOptions<TLogic>): Interpreter<TLogic>;
119
+ export type Interpreter = typeof Actor;
@@ -1,6 +1,6 @@
1
1
  import { State } from "./State.js";
2
2
  import type { StateNode } from "./StateNode.js";
3
- import { Action, AnyActorContext, AnyHistoryValue, AnyState, AnyStateNode, AnyTransitionDefinition, DelayedTransitionDefinition, EventObject, InitialTransitionConfig, InitialTransitionDefinition, MachineContext, SingleOrArray, StateValue, StateValueMap, TransitionConfig, TransitionDefinition, TODO } from "./types.js";
3
+ import { AnyActorContext, AnyHistoryValue, AnyState, AnyStateNode, AnyTransitionDefinition, DelayedTransitionDefinition, EventObject, InitialTransitionConfig, InitialTransitionDefinition, MachineContext, SingleOrArray, StateValue, StateValueMap, TransitionConfig, TransitionDefinition, TODO, UnknownAction } from "./types.js";
4
4
  type Configuration<TContext extends MachineContext, TE extends EventObject> = Iterable<StateNode<TContext, TE>>;
5
5
  type AnyConfiguration = Configuration<any, any>;
6
6
  type AdjList = Map<AnyStateNode, Array<AnyStateNode>>;
@@ -14,11 +14,11 @@ export declare function getCandidates<TEvent extends EventObject>(stateNode: Sta
14
14
  /**
15
15
  * All delayed transitions from the config.
16
16
  */
17
- export declare function getDelayedTransitions<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode): Array<DelayedTransitionDefinition<TContext, TEvent>>;
18
- export declare function formatTransition<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, descriptor: string, transitionConfig: TransitionConfig<TContext, TEvent>): AnyTransitionDefinition;
17
+ export declare function getDelayedTransitions(stateNode: AnyStateNode): Array<DelayedTransitionDefinition<MachineContext, EventObject>>;
18
+ export declare function formatTransition<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, descriptor: string, transitionConfig: TransitionConfig<TContext, TEvent, TEvent, any>): AnyTransitionDefinition;
19
19
  export declare function formatTransitions<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode): Map<string, TransitionDefinition<TContext, TEvent>[]>;
20
- export declare function formatInitialTransition<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, _target: SingleOrArray<string> | InitialTransitionConfig<TContext, TEvent>): InitialTransitionDefinition<TContext, TEvent>;
21
- export declare function resolveTarget(stateNode: AnyStateNode, targets: Array<string | AnyStateNode> | undefined): Array<AnyStateNode> | undefined;
20
+ export declare function formatInitialTransition<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, _target: SingleOrArray<string> | InitialTransitionConfig<TContext, TEvent, TODO>): InitialTransitionDefinition<TContext, TEvent>;
21
+ export declare function resolveTarget(stateNode: AnyStateNode, targets: ReadonlyArray<string | AnyStateNode> | undefined): ReadonlyArray<AnyStateNode> | undefined;
22
22
  export declare function getInitialStateNodes(stateNode: AnyStateNode): Array<AnyStateNode>;
23
23
  /**
24
24
  * Returns the child state node from its relative `stateKey`, or throws.
@@ -35,11 +35,11 @@ export declare function getStateNodeByPath(stateNode: AnyStateNode, statePath: s
35
35
  *
36
36
  * @param state The state value or State instance
37
37
  */
38
- export declare function getStateNodes<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, state: StateValue | State<TContext, TEvent, TODO>): Array<AnyStateNode>;
39
- export declare function transitionAtomicNode<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, stateValue: string, state: State<TContext, TEvent, TODO>, event: TEvent): Array<TransitionDefinition<TContext, TEvent>> | undefined;
40
- export declare function transitionCompoundNode<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, stateValue: StateValueMap, state: State<TContext, TEvent, TODO>, event: TEvent): Array<TransitionDefinition<TContext, TEvent>> | undefined;
41
- export declare function transitionParallelNode<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, stateValue: StateValueMap, state: State<TContext, TEvent, TODO>, event: TEvent): Array<TransitionDefinition<TContext, TEvent>> | undefined;
42
- export declare function transitionNode<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, stateValue: StateValue, state: State<TContext, TEvent, TODO, any>, event: TEvent): Array<TransitionDefinition<TContext, TEvent>> | undefined;
38
+ export declare function getStateNodes<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, state: StateValue | State<TContext, TEvent, TODO, TODO>): Array<AnyStateNode>;
39
+ export declare function transitionAtomicNode<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, stateValue: string, state: State<TContext, TEvent, TODO, TODO>, event: TEvent): Array<TransitionDefinition<TContext, TEvent>> | undefined;
40
+ export declare function transitionCompoundNode<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, stateValue: StateValueMap, state: State<TContext, TEvent, TODO, TODO>, event: TEvent): Array<TransitionDefinition<TContext, TEvent>> | undefined;
41
+ export declare function transitionParallelNode<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, stateValue: StateValueMap, state: State<TContext, TEvent, TODO, TODO>, event: TEvent): Array<TransitionDefinition<TContext, TEvent>> | undefined;
42
+ export declare function transitionNode<TContext extends MachineContext, TEvent extends EventObject>(stateNode: AnyStateNode, stateValue: StateValue, state: State<TContext, TEvent, TODO, TODO, TODO>, event: TEvent): Array<TransitionDefinition<TContext, TEvent>> | undefined;
43
43
  export declare function removeConflictingTransitions(enabledTransitions: Array<AnyTransitionDefinition>, configuration: Set<AnyStateNode>, historyValue: AnyHistoryValue): Array<AnyTransitionDefinition>;
44
44
  /**
45
45
  * https://www.w3.org/TR/scxml/#microstepProcedure
@@ -49,8 +49,8 @@ export declare function removeConflictingTransitions(enabledTransitions: Array<A
49
49
  * @param currentState
50
50
  * @param mutConfiguration
51
51
  */
52
- export declare function microstep<TContext extends MachineContext, TEvent extends EventObject>(transitions: Array<TransitionDefinition<TContext, TEvent>>, currentState: State<TContext, TEvent, TODO, any>, actorCtx: AnyActorContext, event: TEvent, isInitial: boolean): State<TContext, TEvent, TODO, any>;
53
- export declare function resolveActionsAndContext<TContext extends MachineContext, TEvent extends EventObject>(actions: Action<any, any, any>[], event: TEvent, currentState: State<TContext, TEvent, TODO, any>, actorCtx: AnyActorContext): AnyState;
52
+ export declare function microstep<TContext extends MachineContext, TEvent extends EventObject>(transitions: Array<TransitionDefinition<TContext, TEvent>>, currentState: AnyState, actorCtx: AnyActorContext, event: TEvent, isInitial: boolean): AnyState;
53
+ export declare function resolveActionsAndContext<TContext extends MachineContext, TEvent extends EventObject>(actions: UnknownAction[], event: TEvent, currentState: AnyState, actorCtx: AnyActorContext): AnyState;
54
54
  export declare function macrostep(state: AnyState, event: EventObject, actorCtx: AnyActorContext): {
55
55
  state: typeof state;
56
56
  microstates: Array<typeof state>;
@@ -119,7 +119,7 @@ export interface ResolveTypegenMeta<TTypesMeta extends TypegenConstraint, TEvent
119
119
  '@@xstate/typegen': TTypesMeta['@@xstate/typegen'];
120
120
  resolved: {
121
121
  enabled: TTypesMeta & {
122
- indexedActions: IndexByType<TAction>;
122
+ indexedActions: string extends TAction['type'] ? IsNever<Prop<TTypesMeta, 'eventsCausingActions'>> extends true ? never : Record<keyof Prop<TTypesMeta, 'eventsCausingActions'>, ParameterizedObject> : IndexByType<TAction>;
123
123
  indexedActors: string extends TActor['src'] ? Record<keyof Prop<TTypesMeta, 'eventsCausingActors'>, {
124
124
  logic: AnyActorLogic;
125
125
  }> : IndexByProp<TActor, 'src'>;