1 | import { StateValue, ActivityMap, EventObject, HistoryValue, ActionObject, StateConfig, SCXML, StateSchema, TransitionDefinition, Typestate, ActorRef, StateMachine, SimpleEventsOf } from './types';
|
2 | import { StateNode } from './StateNode';
|
3 | import { TypegenDisabled, TypegenEnabled } from './typegenTypes';
|
4 | import { BaseActionObject, Prop } from './types';
|
5 | export declare function stateValuesEqual(a: StateValue | undefined, b: StateValue | undefined): boolean;
|
6 | export declare function isStateConfig<TContext, TEvent extends EventObject>(state: any): state is StateConfig<TContext, TEvent>;
|
7 |
|
8 |
|
9 |
|
10 | export declare const isState: typeof isStateConfig;
|
11 | export declare function bindActionToState<TC, TE extends EventObject>(action: ActionObject<TC, TE>, state: State<TC, TE, any, any, any>): ActionObject<TC, TE>;
|
12 | export declare class State<TContext, TEvent extends EventObject = EventObject, TStateSchema extends StateSchema<TContext> = any, TTypestate extends Typestate<TContext> = {
|
13 | value: any;
|
14 | context: TContext;
|
15 | }, TResolvedTypesMeta = TypegenDisabled> {
|
16 | value: StateValue;
|
17 | context: TContext;
|
18 | historyValue?: HistoryValue | undefined;
|
19 | history?: State<TContext, TEvent, TStateSchema, TTypestate, TResolvedTypesMeta>;
|
20 | actions: Array<ActionObject<TContext, TEvent>>;
|
21 | activities: ActivityMap;
|
22 | meta: any;
|
23 | events: TEvent[];
|
24 | event: TEvent;
|
25 | _event: SCXML.Event<TEvent>;
|
26 | _sessionid: string | null;
|
27 | |
28 |
|
29 |
|
30 |
|
31 |
|
32 |
|
33 |
|
34 |
|
35 | changed: boolean | undefined;
|
36 | |
37 |
|
38 |
|
39 | done: boolean | undefined;
|
40 | |
41 |
|
42 |
|
43 | configuration: Array<StateNode<TContext, any, TEvent, any, any>>;
|
44 | |
45 |
|
46 |
|
47 | nextEvents: Array<TEvent['type']>;
|
48 | |
49 |
|
50 |
|
51 | transitions: Array<TransitionDefinition<TContext, TEvent>>;
|
52 | |
53 |
|
54 |
|
55 | children: Record<string, ActorRef<any>>;
|
56 | tags: Set<string>;
|
57 | machine: StateMachine<TContext, any, TEvent, TTypestate, BaseActionObject, any, TResolvedTypesMeta> | undefined;
|
58 | |
59 |
|
60 |
|
61 |
|
62 |
|
63 | static from<TC, TE extends EventObject = EventObject>(stateValue: State<TC, TE, any, any, any> | StateValue, context?: TC | undefined): State<TC, TE, any, any, any>;
|
64 | |
65 |
|
66 |
|
67 |
|
68 | static create<TC, TE extends EventObject = EventObject>(config: StateConfig<TC, TE>): State<TC, TE, any, any, any>;
|
69 | |
70 |
|
71 |
|
72 |
|
73 |
|
74 | static inert<TC, TE extends EventObject = EventObject>(stateValue: State<TC, TE, any, any, any> | StateValue, context: TC): State<TC, TE>;
|
75 | |
76 |
|
77 |
|
78 |
|
79 |
|
80 |
|
81 |
|
82 |
|
83 |
|
84 |
|
85 |
|
86 |
|
87 | constructor(config: StateConfig<TContext, TEvent>);
|
88 | /**
|
89 | * Returns an array of all the string leaf state node paths.
|
90 | * @param stateValue
|
91 | * @param delimiter The character(s) that separate each subpath in the string state node path.
|
92 | */
|
93 | toStrings(stateValue?: StateValue, delimiter?: string): string[];
|
94 | toJSON(): Omit<this, "configuration" | "transitions" | "tags" | "machine" | "toStrings" | "toJSON" | "matches" | "hasTag" | "can"> & {
|
95 | tags: string[];
|
96 | };
|
97 | |
98 |
|
99 |
|
100 |
|
101 | matches<TSV extends TResolvedTypesMeta extends TypegenEnabled ? Prop<Prop<TResolvedTypesMeta, 'resolved'>, 'matchesStates'> : never>(parentStateValue: TSV): boolean;
|
102 | matches<TSV extends TResolvedTypesMeta extends TypegenDisabled ? TTypestate['value'] : never>(parentStateValue: TSV): this is State<(TTypestate extends any ? {
|
103 | value: TSV;
|
104 | context: any;
|
105 | } extends TTypestate ? TTypestate : never : never)['context'], TEvent, TStateSchema, TTypestate, TResolvedTypesMeta> & {
|
106 | value: TSV;
|
107 | };
|
108 | |
109 |
|
110 |
|
111 |
|
112 | hasTag(tag: TResolvedTypesMeta extends TypegenEnabled ? Prop<Prop<TResolvedTypesMeta, 'resolved'>, 'tags'> : string): boolean;
|
113 | |
114 |
|
115 |
|
116 |
|
117 |
|
118 |
|
119 |
|
120 |
|
121 | can(event: TEvent | SimpleEventsOf<TEvent>['type']): boolean;
|
122 | }
|
123 |
|
\ | No newline at end of file |