-
Notifications
You must be signed in to change notification settings - Fork 21
/
jssm.Machine.html
277 lines (277 loc) · 417 KB
/
jssm.Machine.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
<!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>Machine | JSSM, a JavaScript state machine - the FSM for FSL</title><meta name="description" content="Documentation for JSSM, a JavaScript state machine - the FSM for FSL"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><link rel="stylesheet" href="../assets/custom.css"/><script async src="../assets/search.js" id="search-script"></script><link rel="stylesheet" href="../assets/pages.css"/></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">JSSM, a JavaScript state machine - the FSM for FSL</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../modules.html">JSSM, a JavaScript state machine - the FSM for FSL</a></li><li><a href="../modules/jssm.html">jssm</a></li><li><a href="jssm.Machine.html">Machine</a></li></ul><h1>Class Machine<mDT> </h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel tsd-type-parameters"><h3>Type Parameters</h3><ul class="tsd-type-parameters"><li><h4>mDT</h4></li></ul></section><section class="tsd-panel tsd-hierarchy"><h3>Hierarchy</h3><ul class="tsd-hierarchy"><li><span class="target">Machine</span></li></ul></section><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Constructors</h3><ul class="tsd-index-list"><li class="tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter"><a href="jssm.Machine.html#constructor" class="tsd-kind-icon">constructor</a></li></ul></section><section class="tsd-index-section "><h3>Properties</h3><ul class="tsd-index-list"><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_actions" class="tsd-kind-icon">_actions</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_active_state_style" class="tsd-kind-icon">_active_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_any_action_hook" class="tsd-kind-icon">_any_<wbr/>action_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_any_transition_hook" class="tsd-kind-icon">_any_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_arrange_declaration" class="tsd-kind-icon">_arrange_<wbr/>declaration</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_arrange_end_declaration" class="tsd-kind-icon">_arrange_<wbr/>end_<wbr/>declaration</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_arrange_start_declaration" class="tsd-kind-icon">_arrange_<wbr/>start_<wbr/>declaration</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_data" class="tsd-kind-icon">_data</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_default_properties" class="tsd-kind-icon">_default_<wbr/>properties</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_dot_preamble" class="tsd-kind-icon">_dot_<wbr/>preamble</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_edge_map" class="tsd-kind-icon">_edge_<wbr/>map</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_edges" class="tsd-kind-icon">_edges</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_end_state_style" class="tsd-kind-icon">_end_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_end_states" class="tsd-kind-icon">_end_<wbr/>states</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_entry_hooks" class="tsd-kind-icon">_entry_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_exit_hooks" class="tsd-kind-icon">_exit_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_flow" class="tsd-kind-icon">_flow</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_forced_transition_hook" class="tsd-kind-icon">_forced_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_fsl_version" class="tsd-kind-icon">_fsl_<wbr/>version</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_global_action_hooks" class="tsd-kind-icon">_global_<wbr/>action_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_graph_layout" class="tsd-kind-icon">_graph_<wbr/>layout</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_basic_hooks" class="tsd-kind-icon">_has_<wbr/>basic_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_entry_hooks" class="tsd-kind-icon">_has_<wbr/>entry_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_exit_hooks" class="tsd-kind-icon">_has_<wbr/>exit_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_global_action_hooks" class="tsd-kind-icon">_has_<wbr/>global_<wbr/>action_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_hooks" class="tsd-kind-icon">_has_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_named_hooks" class="tsd-kind-icon">_has_<wbr/>named_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_basic_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>basic_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_entry_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>entry_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_exit_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>exit_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_global_action_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>global_<wbr/>action_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_named_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>named_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_transition_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>transition_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_transition_hooks" class="tsd-kind-icon">_has_<wbr/>transition_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_history" class="tsd-kind-icon">_history</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_history_length" class="tsd-kind-icon">_history_<wbr/>length</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_hooked_state_style" class="tsd-kind-icon">_hooked_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_hooks" class="tsd-kind-icon">_hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_instance_name" class="tsd-kind-icon">_instance_<wbr/>name</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_author" class="tsd-kind-icon">_machine_<wbr/>author</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_comment" class="tsd-kind-icon">_machine_<wbr/>comment</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_contributor" class="tsd-kind-icon">_machine_<wbr/>contributor</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_definition" class="tsd-kind-icon">_machine_<wbr/>definition</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_language" class="tsd-kind-icon">_machine_<wbr/>language</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_license" class="tsd-kind-icon">_machine_<wbr/>license</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_name" class="tsd-kind-icon">_machine_<wbr/>name</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_version" class="tsd-kind-icon">_machine_<wbr/>version</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_main_transition_hook" class="tsd-kind-icon">_main_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_named_hooks" class="tsd-kind-icon">_named_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_named_transitions" class="tsd-kind-icon">_named_<wbr/>transitions</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_any_action_hook" class="tsd-kind-icon">_post_<wbr/>any_<wbr/>action_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_any_transition_hook" class="tsd-kind-icon">_post_<wbr/>any_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_entry_hooks" class="tsd-kind-icon">_post_<wbr/>entry_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_exit_hooks" class="tsd-kind-icon">_post_<wbr/>exit_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_forced_transition_hook" class="tsd-kind-icon">_post_<wbr/>forced_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_global_action_hooks" class="tsd-kind-icon">_post_<wbr/>global_<wbr/>action_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_hooks" class="tsd-kind-icon">_post_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_main_transition_hook" class="tsd-kind-icon">_post_<wbr/>main_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_named_hooks" class="tsd-kind-icon">_post_<wbr/>named_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_standard_transition_hook" class="tsd-kind-icon">_post_<wbr/>standard_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_property_keys" class="tsd-kind-icon">_property_<wbr/>keys</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_raw_state_declaration" class="tsd-kind-icon">_raw_<wbr/>state_<wbr/>declaration</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_required_properties" class="tsd-kind-icon">_required_<wbr/>properties</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_reverse_action_targets" class="tsd-kind-icon">_reverse_<wbr/>action_<wbr/>targets</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_reverse_actions" class="tsd-kind-icon">_reverse_<wbr/>actions</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_standard_transition_hook" class="tsd-kind-icon">_standard_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_start_state_style" class="tsd-kind-icon">_start_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_start_states" class="tsd-kind-icon">_start_<wbr/>states</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_state" class="tsd-kind-icon">_state</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_state_declarations" class="tsd-kind-icon">_state_<wbr/>declarations</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_state_labels" class="tsd-kind-icon">_state_<wbr/>labels</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_state_properties" class="tsd-kind-icon">_state_<wbr/>properties</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_state_style" class="tsd-kind-icon">_state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_states" class="tsd-kind-icon">_states</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_terminal_state_style" class="tsd-kind-icon">_terminal_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_themes" class="tsd-kind-icon">_themes</a></li></ul></section><section class="tsd-index-section "><h3>Accessors</h3><ul class="tsd-index-list"><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#active_state_style" class="tsd-kind-icon">active_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#end_state_style" class="tsd-kind-icon">end_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#history" class="tsd-kind-icon">history</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#history_inclusive" class="tsd-kind-icon">history_<wbr/>inclusive</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="jssm.Machine.html#history_length" class="tsd-kind-icon">history_<wbr/>length</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#hooked_state_style" class="tsd-kind-icon">hooked_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#standard_state_style" class="tsd-kind-icon">standard_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#start_state_style" class="tsd-kind-icon">start_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#terminal_state_style" class="tsd-kind-icon">terminal_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="jssm.Machine.html#themes" class="tsd-kind-icon">themes</a></li></ul></section><section class="tsd-index-section "><h3>Methods</h3><ul class="tsd-index-list"><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#_new_state" class="tsd-kind-icon">_new_<wbr/>state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#action" class="tsd-kind-icon">action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#actions" class="tsd-kind-icon">actions</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#all_themes" class="tsd-kind-icon">all_<wbr/>themes</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#current_action_edge_for" class="tsd-kind-icon">current_<wbr/>action_<wbr/>edge_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#current_action_for" class="tsd-kind-icon">current_<wbr/>action_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#data" class="tsd-kind-icon">data</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#display_text" class="tsd-kind-icon">display_<wbr/>text</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#do" class="tsd-kind-icon">do</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#dot_preamble" class="tsd-kind-icon">dot_<wbr/>preamble</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#edges_between" class="tsd-kind-icon">edges_<wbr/>between</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#flow" class="tsd-kind-icon">flow</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#force_transition" class="tsd-kind-icon">force_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#fsl_version" class="tsd-kind-icon">fsl_<wbr/>version</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#get_transition_by_state_names" class="tsd-kind-icon">get_<wbr/>transition_<wbr/>by_<wbr/>state_<wbr/>names</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#go" class="tsd-kind-icon">go</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#graph_layout" class="tsd-kind-icon">graph_<wbr/>layout</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#has_completes" class="tsd-kind-icon">has_<wbr/>completes</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#has_state" class="tsd-kind-icon">has_<wbr/>state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#has_terminals" class="tsd-kind-icon">has_<wbr/>terminals</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#has_unenterables" class="tsd-kind-icon">has_<wbr/>unenterables</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook" class="tsd-kind-icon">hook</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_action" class="tsd-kind-icon">hook_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_any_action" class="tsd-kind-icon">hook_<wbr/>any_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_any_transition" class="tsd-kind-icon">hook_<wbr/>any_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_entry" class="tsd-kind-icon">hook_<wbr/>entry</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_exit" class="tsd-kind-icon">hook_<wbr/>exit</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_forced_transition" class="tsd-kind-icon">hook_<wbr/>forced_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_global_action" class="tsd-kind-icon">hook_<wbr/>global_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_main_transition" class="tsd-kind-icon">hook_<wbr/>main_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_standard_transition" class="tsd-kind-icon">hook_<wbr/>standard_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#instance_name" class="tsd-kind-icon">instance_<wbr/>name</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_complete" class="tsd-kind-icon">is_<wbr/>complete</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_end_state" class="tsd-kind-icon">is_<wbr/>end_<wbr/>state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_final" class="tsd-kind-icon">is_<wbr/>final</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_start_state" class="tsd-kind-icon">is_<wbr/>start_<wbr/>state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_terminal" class="tsd-kind-icon">is_<wbr/>terminal</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_unenterable" class="tsd-kind-icon">is_<wbr/>unenterable</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#known_prop" class="tsd-kind-icon">known_<wbr/>prop</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#known_props" class="tsd-kind-icon">known_<wbr/>props</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#label_for" class="tsd-kind-icon">label_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_actions" class="tsd-kind-icon">list_<wbr/>actions</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_edges" class="tsd-kind-icon">list_<wbr/>edges</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_entrances" class="tsd-kind-icon">list_<wbr/>entrances</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_exit_actions" class="tsd-kind-icon">list_<wbr/>exit_<wbr/>actions</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_exits" class="tsd-kind-icon">list_<wbr/>exits</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_named_transitions" class="tsd-kind-icon">list_<wbr/>named_<wbr/>transitions</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_states_having_action" class="tsd-kind-icon">list_<wbr/>states_<wbr/>having_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_transitions" class="tsd-kind-icon">list_<wbr/>transitions</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#lookup_transition_for" class="tsd-kind-icon">lookup_<wbr/>transition_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_author" class="tsd-kind-icon">machine_<wbr/>author</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_comment" class="tsd-kind-icon">machine_<wbr/>comment</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_contributor" class="tsd-kind-icon">machine_<wbr/>contributor</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_definition" class="tsd-kind-icon">machine_<wbr/>definition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_language" class="tsd-kind-icon">machine_<wbr/>language</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_license" class="tsd-kind-icon">machine_<wbr/>license</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_name" class="tsd-kind-icon">machine_<wbr/>name</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_state" class="tsd-kind-icon">machine_<wbr/>state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_version" class="tsd-kind-icon">machine_<wbr/>version</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook" class="tsd-kind-icon">post_<wbr/>hook</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_action" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_any_action" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>any_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_any_transition" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>any_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_entry" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>entry</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_exit" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>exit</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_forced_transition" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>forced_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_global_action" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>global_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_main_transition" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>main_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_standard_transition" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>standard_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#probabilistic_histo_walk" class="tsd-kind-icon">probabilistic_<wbr/>histo_<wbr/>walk</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#probabilistic_transition" class="tsd-kind-icon">probabilistic_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#probabilistic_walk" class="tsd-kind-icon">probabilistic_<wbr/>walk</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#probable_action_exits" class="tsd-kind-icon">probable_<wbr/>action_<wbr/>exits</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#probable_exits_for" class="tsd-kind-icon">probable_<wbr/>exits_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#prop" class="tsd-kind-icon">prop</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#props" class="tsd-kind-icon">props</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#raw_state_declarations" class="tsd-kind-icon">raw_<wbr/>state_<wbr/>declarations</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#serialize" class="tsd-kind-icon">serialize</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#set_hook" class="tsd-kind-icon">set_<wbr/>hook</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#sm" class="tsd-kind-icon">sm</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state" class="tsd-kind-icon">state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_declaration" class="tsd-kind-icon">state_<wbr/>declaration</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_declarations" class="tsd-kind-icon">state_<wbr/>declarations</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_for" class="tsd-kind-icon">state_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_is_complete" class="tsd-kind-icon">state_<wbr/>is_<wbr/>complete</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_is_final" class="tsd-kind-icon">state_<wbr/>is_<wbr/>final</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_is_terminal" class="tsd-kind-icon">state_<wbr/>is_<wbr/>terminal</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#states" class="tsd-kind-icon">states</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#strict_prop" class="tsd-kind-icon">strict_<wbr/>prop</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#style_for" class="tsd-kind-icon">style_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#transition" class="tsd-kind-icon">transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#transition_impl" class="tsd-kind-icon">transition_<wbr/>impl</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#valid_action" class="tsd-kind-icon">valid_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#valid_force_transition" class="tsd-kind-icon">valid_<wbr/>force_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#valid_transition" class="tsd-kind-icon">valid_<wbr/>transition</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Constructors</h2><section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter"><a id="constructor" class="tsd-anchor"></a><h3 class="tsd-anchor-link">constructor<a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter"><li class="tsd-signature tsd-kind-icon">new <wbr/>Machine<span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">(</span>__namedParameters<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmGenericConfig" class="tsd-signature-type" data-tsd-kind="Type alias">JssmGenericConfig</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L979">src/ts/jssm.ts:979</a></li></ul></aside><h4 class="tsd-type-parameters-title">Type Parameters</h4><ul class="tsd-type-parameters"><li><h4>mDT</h4></li></ul><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>__namedParameters: <a href="../modules/jssm_types.html#JssmGenericConfig" class="tsd-signature-type" data-tsd-kind="Type alias">JssmGenericConfig</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section></section><section class="tsd-panel-group tsd-member-group "><h2>Properties</h2><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_actions" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_actions<a href="#_actions" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_actions<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L888">src/ts/jssm.ts:888</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_active_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_active_<wbr/>state_<wbr/>style<a href="#_active_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_active_<wbr/>state_<wbr/>style<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L969">src/ts/jssm.ts:969</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_any_action_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_any_<wbr/>action_<wbr/>hook<a href="#_any_action_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_any_<wbr/>action_<wbr/>hook<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L934">src/ts/jssm.ts:934</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_any_transition_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_any_<wbr/>transition_<wbr/>hook<a href="#_any_transition_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_any_<wbr/>transition_<wbr/>hook<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L938">src/ts/jssm.ts:938</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_arrange_declaration" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_arrange_<wbr/>declaration<a href="#_arrange_declaration" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_arrange_<wbr/>declaration<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L913">src/ts/jssm.ts:913</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_arrange_end_declaration" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_arrange_<wbr/>end_<wbr/>declaration<a href="#_arrange_end_declaration" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_arrange_<wbr/>end_<wbr/>declaration<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L915">src/ts/jssm.ts:915</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_arrange_start_declaration" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_arrange_<wbr/>start_<wbr/>declaration<a href="#_arrange_start_declaration" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_arrange_<wbr/>start_<wbr/>declaration<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">[]</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L914">src/ts/jssm.ts:914</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_data" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOptional">Optional</span> _data<a href="#_data" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_data<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L909">src/ts/jssm.ts:909</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_default_properties" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_default_<wbr/>properties<a href="#_default_properties" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_default_<wbr/>properties<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L961">src/ts/jssm.ts:961</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_dot_preamble" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_dot_<wbr/>preamble<a href="#_dot_preamble" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_dot_<wbr/>preamble<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L912">src/ts/jssm.ts:912</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_edge_map" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_edge_<wbr/>map<a href="#_edge_map" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_edge_<wbr/>map<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L886">src/ts/jssm.ts:886</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_edges" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_edges<a href="#_edges" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_edges<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#JssmTransition" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransition</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">[]</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L885">src/ts/jssm.ts:885</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_end_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_end_<wbr/>state_<wbr/>style<a href="#_end_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_end_<wbr/>state_<wbr/>style<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L973">src/ts/jssm.ts:973</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_end_states" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_end_<wbr/>states<a href="#_end_states" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_end_<wbr/>states<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Set</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L893">src/ts/jssm.ts:893</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_entry_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_entry_<wbr/>hooks<a href="#_entry_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_entry_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L931">src/ts/jssm.ts:931</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_exit_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_exit_<wbr/>hooks<a href="#_exit_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_exit_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L932">src/ts/jssm.ts:932</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_flow" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_flow<a href="#_flow" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_flow<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">"up"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"right"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"down"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"left"</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L918">src/ts/jssm.ts:918</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_forced_transition_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_forced_<wbr/>transition_<wbr/>hook<a href="#_forced_transition_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_forced_<wbr/>transition_<wbr/>hook<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L937">src/ts/jssm.ts:937</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_fsl_version" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOptional">Optional</span> _fsl_<wbr/>version<a href="#_fsl_version" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_fsl_<wbr/>version<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L903">src/ts/jssm.ts:903</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_global_action_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_global_<wbr/>action_<wbr/>hooks<a href="#_global_action_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_global_<wbr/>action_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L933">src/ts/jssm.ts:933</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_graph_layout" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_graph_<wbr/>layout<a href="#_graph_layout" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_graph_<wbr/>layout<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#JssmLayout" class="tsd-signature-type" data-tsd-kind="Type alias">JssmLayout</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L911">src/ts/jssm.ts:911</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_basic_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>basic_<wbr/>hooks<a href="#_has_basic_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>basic_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L921">src/ts/jssm.ts:921</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_entry_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>entry_<wbr/>hooks<a href="#_has_entry_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>entry_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L923">src/ts/jssm.ts:923</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_exit_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>exit_<wbr/>hooks<a href="#_has_exit_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>exit_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L924">src/ts/jssm.ts:924</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_global_action_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>global_<wbr/>action_<wbr/>hooks<a href="#_has_global_action_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>global_<wbr/>action_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L925">src/ts/jssm.ts:925</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>hooks<a href="#_has_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L920">src/ts/jssm.ts:920</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_named_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>named_<wbr/>hooks<a href="#_has_named_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>named_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L922">src/ts/jssm.ts:922</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_post_basic_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>post_<wbr/>basic_<wbr/>hooks<a href="#_has_post_basic_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>post_<wbr/>basic_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L941">src/ts/jssm.ts:941</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_post_entry_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>post_<wbr/>entry_<wbr/>hooks<a href="#_has_post_entry_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>post_<wbr/>entry_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L943">src/ts/jssm.ts:943</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_post_exit_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>post_<wbr/>exit_<wbr/>hooks<a href="#_has_post_exit_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>post_<wbr/>exit_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L944">src/ts/jssm.ts:944</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_post_global_action_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>post_<wbr/>global_<wbr/>action_<wbr/>hooks<a href="#_has_post_global_action_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>post_<wbr/>global_<wbr/>action_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L945">src/ts/jssm.ts:945</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_post_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>post_<wbr/>hooks<a href="#_has_post_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>post_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L940">src/ts/jssm.ts:940</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_post_named_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>post_<wbr/>named_<wbr/>hooks<a href="#_has_post_named_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>post_<wbr/>named_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L942">src/ts/jssm.ts:942</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_post_transition_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>post_<wbr/>transition_<wbr/>hooks<a href="#_has_post_transition_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>post_<wbr/>transition_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L946">src/ts/jssm.ts:946</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_has_transition_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_has_<wbr/>transition_<wbr/>hooks<a href="#_has_transition_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_has_<wbr/>transition_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L926">src/ts/jssm.ts:926</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_history" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_history<a href="#_history" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_history<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#JssmHistory" class="tsd-signature-type" data-tsd-kind="Type alias">JssmHistory</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L965">src/ts/jssm.ts:965</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_history_length" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_history_<wbr/>length<a href="#_history_length" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_history_<wbr/>length<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L966">src/ts/jssm.ts:966</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_hooked_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_hooked_<wbr/>state_<wbr/>style<a href="#_hooked_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_hooked_<wbr/>state_<wbr/>style<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L970">src/ts/jssm.ts:970</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_hooks<a href="#_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L929">src/ts/jssm.ts:929</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_instance_name" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_instance_<wbr/>name<a href="#_instance_name" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_instance_<wbr/>name<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L907">src/ts/jssm.ts:907</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_machine_author" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOptional">Optional</span> _machine_<wbr/>author<a href="#_machine_author" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_machine_<wbr/>author<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L895">src/ts/jssm.ts:895</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_machine_comment" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOptional">Optional</span> _machine_<wbr/>comment<a href="#_machine_comment" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_machine_<wbr/>comment<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L896">src/ts/jssm.ts:896</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_machine_contributor" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOptional">Optional</span> _machine_<wbr/>contributor<a href="#_machine_contributor" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_machine_<wbr/>contributor<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L897">src/ts/jssm.ts:897</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_machine_definition" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOptional">Optional</span> _machine_<wbr/>definition<a href="#_machine_definition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_machine_<wbr/>definition<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L898">src/ts/jssm.ts:898</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_machine_language" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOptional">Optional</span> _machine_<wbr/>language<a href="#_machine_language" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_machine_<wbr/>language<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L899">src/ts/jssm.ts:899</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_machine_license" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOptional">Optional</span> _machine_<wbr/>license<a href="#_machine_license" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_machine_<wbr/>license<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L900">src/ts/jssm.ts:900</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_machine_name" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOptional">Optional</span> _machine_<wbr/>name<a href="#_machine_name" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_machine_<wbr/>name<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L901">src/ts/jssm.ts:901</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_machine_version" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOptional">Optional</span> _machine_<wbr/>version<a href="#_machine_version" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_machine_<wbr/>version<span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L902">src/ts/jssm.ts:902</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_main_transition_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_main_<wbr/>transition_<wbr/>hook<a href="#_main_transition_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_main_<wbr/>transition_<wbr/>hook<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L936">src/ts/jssm.ts:936</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_named_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_named_<wbr/>hooks<a href="#_named_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_named_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L930">src/ts/jssm.ts:930</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_named_transitions" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_named_<wbr/>transitions<a href="#_named_transitions" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_named_<wbr/>transitions<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L887">src/ts/jssm.ts:887</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_post_any_action_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_post_<wbr/>any_<wbr/>action_<wbr/>hook<a href="#_post_any_action_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_post_<wbr/>any_<wbr/>action_<wbr/>hook<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L954">src/ts/jssm.ts:954</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_post_any_transition_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_post_<wbr/>any_<wbr/>transition_<wbr/>hook<a href="#_post_any_transition_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_post_<wbr/>any_<wbr/>transition_<wbr/>hook<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L958">src/ts/jssm.ts:958</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_post_entry_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_post_<wbr/>entry_<wbr/>hooks<a href="#_post_entry_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_post_<wbr/>entry_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L951">src/ts/jssm.ts:951</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_post_exit_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_post_<wbr/>exit_<wbr/>hooks<a href="#_post_exit_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_post_<wbr/>exit_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L952">src/ts/jssm.ts:952</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_post_forced_transition_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_post_<wbr/>forced_<wbr/>transition_<wbr/>hook<a href="#_post_forced_transition_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_post_<wbr/>forced_<wbr/>transition_<wbr/>hook<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L957">src/ts/jssm.ts:957</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_post_global_action_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_post_<wbr/>global_<wbr/>action_<wbr/>hooks<a href="#_post_global_action_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_post_<wbr/>global_<wbr/>action_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L953">src/ts/jssm.ts:953</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_post_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_post_<wbr/>hooks<a href="#_post_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_post_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L949">src/ts/jssm.ts:949</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_post_main_transition_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_post_<wbr/>main_<wbr/>transition_<wbr/>hook<a href="#_post_main_transition_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_post_<wbr/>main_<wbr/>transition_<wbr/>hook<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L956">src/ts/jssm.ts:956</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_post_named_hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_post_<wbr/>named_<wbr/>hooks<a href="#_post_named_hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_post_<wbr/>named_<wbr/>hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L950">src/ts/jssm.ts:950</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_post_standard_transition_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_post_<wbr/>standard_<wbr/>transition_<wbr/>hook<a href="#_post_standard_transition_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_post_<wbr/>standard_<wbr/>transition_<wbr/>hook<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L955">src/ts/jssm.ts:955</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_property_keys" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_property_<wbr/>keys<a href="#_property_keys" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_property_<wbr/>keys<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Set</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L960">src/ts/jssm.ts:960</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_raw_state_declaration" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagOptional">Optional</span> _raw_<wbr/>state_<wbr/>declaration<a href="#_raw_state_declaration" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_raw_<wbr/>state_<wbr/>declaration<span class="tsd-signature-symbol">?:</span> <a href="../modules/jssm._internal_.html" class="tsd-signature-type" data-tsd-kind="Namespace"><internal></a><span class="tsd-signature-symbol">.</span><a href="../modules/jssm._internal_.html#Object-1" class="tsd-signature-type" data-tsd-kind="Variable">Object</a><span class="tsd-signature-symbol">[]</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L904">src/ts/jssm.ts:904</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_required_properties" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_required_<wbr/>properties<a href="#_required_properties" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_required_<wbr/>properties<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Set</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L963">src/ts/jssm.ts:963</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_reverse_action_targets" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_reverse_<wbr/>action_<wbr/>targets<a href="#_reverse_action_targets" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_reverse_<wbr/>action_<wbr/>targets<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L890">src/ts/jssm.ts:890</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_reverse_actions" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_reverse_<wbr/>actions<a href="#_reverse_actions" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_reverse_<wbr/>actions<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L889">src/ts/jssm.ts:889</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_standard_transition_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_standard_<wbr/>transition_<wbr/>hook<a href="#_standard_transition_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_standard_<wbr/>transition_<wbr/>hook<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L935">src/ts/jssm.ts:935</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_start_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_start_<wbr/>state_<wbr/>style<a href="#_start_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_start_<wbr/>state_<wbr/>style<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L972">src/ts/jssm.ts:972</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_start_states" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_start_<wbr/>states<a href="#_start_states" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_start_<wbr/>states<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Set</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L892">src/ts/jssm.ts:892</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_state" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_state<a href="#_state" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_state<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L883">src/ts/jssm.ts:883</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_state_declarations" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_state_<wbr/>declarations<a href="#_state_declarations" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_state_<wbr/>declarations<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L905">src/ts/jssm.ts:905</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_state_labels" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_state_<wbr/>labels<a href="#_state_labels" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_state_<wbr/>labels<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L975">src/ts/jssm.ts:975</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_state_properties" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_state_<wbr/>properties<a href="#_state_properties" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_state_<wbr/>properties<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L962">src/ts/jssm.ts:962</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_state_<wbr/>style<a href="#_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_state_<wbr/>style<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L968">src/ts/jssm.ts:968</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_states" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_states<a href="#_states" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_states<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#JssmGenericState" class="tsd-signature-type" data-tsd-kind="Type alias">JssmGenericState</a><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L884">src/ts/jssm.ts:884</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_terminal_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_terminal_<wbr/>state_<wbr/>style<a href="#_terminal_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_terminal_<wbr/>state_<wbr/>style<span class="tsd-signature-symbol">:</span> <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L971">src/ts/jssm.ts:971</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="_themes" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_themes<a href="#_themes" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">_themes<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-signature-type">"default"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"modern"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"ocean"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"bold"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"plain"</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">[]</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L917">src/ts/jssm.ts:917</a></li></ul></aside></section></section><section class="tsd-panel-group tsd-member-group "><h2>Accessors</h2><section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"><a id="active_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">active_<wbr/>state_<wbr/>style<a href="#active_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> active_state_style<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3257">src/ts/jssm.ts:3257</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the style for the active state. <em><strong>Does not</strong></em> include
composition from an applied theme, or things from the underlying base
stylesheet; only the modifications applied by this machine.</p>
</div><div><pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b;`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">active_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// {}</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b; active_state: { shape: circle; };`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">active_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// { shape: 'circle' }</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"><a id="end_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">end_<wbr/>state_<wbr/>style<a href="#end_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> end_state_style<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3198">src/ts/jssm.ts:3198</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the end state style. <em><strong>Does not</strong></em> include
composition from an applied theme, or things from the underlying base
stylesheet; only the modifications applied by this machine.</p>
</div><div><p> End states are defined in the directive <code>end_states</code>, and are distinct
from terminal states. End states are voluntary successful endpoints for a
process. Terminal states are states that cannot be exited. By example,
most error states are terminal states, but not end states. Also, since
some end states can be exited and are determined by hooks, such as
recursive or iterative nodes, there is such a thing as an end state that
is not a terminal state.</p>
<pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b;`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">standard_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// {}</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b; end_state: { shape: circle; };`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">standard_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// { shape: 'circle' }</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"><a id="history" class="tsd-anchor"></a><h3 class="tsd-anchor-link">history<a href="#history" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> history<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2968">src/ts/jssm.ts:2968</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get a truncated history of the recent states and data of the machine.
Turned off by default; configure with <code>.from('...', {data: 5})</code> by length,
or set <code>.history_length</code> at runtime.</p>
</div><div><p> History <em>does not contain the current state</em>. If you want that, call
<code>.history_inclusive</code> instead.</p>
<pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">foo</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><br/><span class="hl-1"> </span><span class="hl-3">"a 'next' -> b 'next' -> c 'next' -> d 'next' -> e;"</span><span class="hl-1">,</span><br/><span class="hl-1"> { </span><span class="hl-2">history:</span><span class="hl-1"> </span><span class="hl-8">3</span><span class="hl-1"> }</span><br/><span class="hl-1">);</span><br/><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">);</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">);</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">);</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">);</span><br/><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-2">history</span><span class="hl-1">; </span><span class="hl-7">// [ ['b',undefined], ['c',undefined], ['d',undefined] ]</span>
</code></pre>
<p> Notice that the machine's current state, <code>e</code>, is not in the returned list.</p>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"><a id="history_inclusive" class="tsd-anchor"></a><h3 class="tsd-anchor-link">history_<wbr/>inclusive<a href="#history_inclusive" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> history_inclusive<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3009">src/ts/jssm.ts:3009</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get a truncated history of the recent states and data of the machine,
including the current state. Turned off by default; configure with
<code>.from('...', {data: 5})</code> by length, or set <code>.history_length</code> at runtime.</p>
</div><div><p> History inclusive contains the current state. If you only want past
states, call <code>.history</code> instead.</p>
<p> The list returned will be one longer than the history buffer kept, as the
history buffer kept gets the current state added to it to produce this
list.</p>
<pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">foo</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><br/><span class="hl-1"> </span><span class="hl-3">"a 'next' -> b 'next' -> c 'next' -> d 'next' -> e;"</span><span class="hl-1">,</span><br/><span class="hl-1"> { </span><span class="hl-2">history:</span><span class="hl-1"> </span><span class="hl-8">3</span><span class="hl-1"> }</span><br/><span class="hl-1">);</span><br/><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">);</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">);</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">);</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">);</span><br/><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-2">history_inclusive</span><span class="hl-1">; </span><span class="hl-7">// [ ['b',undefined], ['c',undefined], ['d',undefined], ['e',undefined] ]</span>
</code></pre>
<p> Notice that the machine's current state, <code>e</code>, is in the returned list.</p>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="history_length" class="tsd-anchor"></a><h3 class="tsd-anchor-link">history_<wbr/>length<a href="#history_length" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-accessor tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> history_length<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">set</span> history_length<span class="tsd-signature-symbol">(</span>to<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3038">src/ts/jssm.ts:3038</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Find out how long a history this machine is keeping. Defaults to zero.
Settable directly.</p>
</div><div><pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">foo</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><span class="hl-3">"a -> b;"</span><span class="hl-1">);</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-2">history_length</span><span class="hl-1">; </span><span class="hl-7">// 0</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">bar</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><span class="hl-3">"a -> b;"</span><span class="hl-1">, { </span><span class="hl-2">history:</span><span class="hl-1"> </span><span class="hl-8">3</span><span class="hl-1"> });</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-2">history_length</span><span class="hl-1">; </span><span class="hl-7">// 3</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-2">history_length</span><span class="hl-1"> = </span><span class="hl-8">5</span><span class="hl-1">;</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-2">history_length</span><span class="hl-1">; </span><span class="hl-7">// 5</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4></li><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3042">src/ts/jssm.ts:3042</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Find out how long a history this machine is keeping. Defaults to zero.
Settable directly.</p>
</div><div><pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">foo</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><span class="hl-3">"a -> b;"</span><span class="hl-1">);</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-2">history_length</span><span class="hl-1">; </span><span class="hl-7">// 0</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">bar</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><span class="hl-3">"a -> b;"</span><span class="hl-1">, { </span><span class="hl-2">history:</span><span class="hl-1"> </span><span class="hl-8">3</span><span class="hl-1"> });</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-2">history_length</span><span class="hl-1">; </span><span class="hl-7">// 3</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-2">history_length</span><span class="hl-1"> = </span><span class="hl-8">5</span><span class="hl-1">;</span><br/><span class="hl-2">foo</span><span class="hl-1">.</span><span class="hl-2">history_length</span><span class="hl-1">; </span><span class="hl-7">// 5</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>to: <span class="tsd-signature-type">number</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"><a id="hooked_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hooked_<wbr/>state_<wbr/>style<a href="#hooked_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> hooked_state_style<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3131">src/ts/jssm.ts:3131</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the hooked state style. <em><strong>Does not</strong></em> include
composition from an applied theme, or things from the underlying base
stylesheet; only the modifications applied by this machine.</p>
</div><div><p> The hooked style is only applied to nodes which have a named hook in the
graph. Open hooks set through the external API aren't graphed, because
that would be literally every node.</p>
<pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b;`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">hooked_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// {}</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b; hooked_state: { shape: circle; };`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">hooked_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// { shape: 'circle' }</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"><a id="standard_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">standard_<wbr/>state_<wbr/>style<a href="#standard_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> standard_state_style<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3099">src/ts/jssm.ts:3099</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the standard style for a single state. <em><strong>Does not</strong></em> include
composition from an applied theme, or things from the underlying base
stylesheet; only the modifications applied by this machine.</p>
</div><div><pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b;`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">standard_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// {}</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b; state: { shape: circle; };`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">standard_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// { shape: 'circle' }</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"><a id="start_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">start_<wbr/>state_<wbr/>style<a href="#start_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> start_state_style<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3162">src/ts/jssm.ts:3162</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the start state style. <em><strong>Does not</strong></em> include composition from an
applied theme, or things from the underlying base stylesheet; only the
modifications applied by this machine.</p>
</div><div><p> Start states are defined by the directive <code>start_states</code>, or in absentia,
are the first mentioned state.</p>
<pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b;`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">start_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// {}</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b; start_state: { shape: circle; };`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">start_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// { shape: 'circle' }</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class"><a id="terminal_state_style" class="tsd-anchor"></a><h3 class="tsd-anchor-link">terminal_<wbr/>state_<wbr/>style<a href="#terminal_state_style" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> terminal_state_style<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3229">src/ts/jssm.ts:3229</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the terminal state style. <em><strong>Does not</strong></em> include
composition from an applied theme, or things from the underlying base
stylesheet; only the modifications applied by this machine.</p>
</div><div><p> Terminal state styles are automatically determined by the machine. Any
state without a valid exit transition is terminal.</p>
<pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b;`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">terminal_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// {}</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b; terminal_state: { shape: circle; };`</span><span class="hl-1">;</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">(</span><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-2">terminal_state_style</span><span class="hl-1">);</span><br/><span class="hl-7">// { shape: 'circle' }</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class"><a id="themes" class="tsd-anchor"></a><h3 class="tsd-anchor-link">themes<a href="#themes" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-accessor tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> themes<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">"default"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"modern"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"ocean"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"bold"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"plain"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-type">"default"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"modern"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"ocean"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"bold"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"plain"</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">[]</span></li><li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">set</span> themes<span class="tsd-signature-symbol">(</span>to<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">"default"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"modern"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"ocean"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"bold"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"plain"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-type">"default"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"modern"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"ocean"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"bold"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"plain"</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2015">src/ts/jssm.ts:2015</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">"default"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"modern"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"ocean"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"bold"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"plain"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-type">"default"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"modern"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"ocean"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"bold"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"plain"</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">[]</span></h4></li><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2019">src/ts/jssm.ts:2019</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>to: <span class="tsd-signature-type">"default"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"modern"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"ocean"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"bold"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"plain"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-type">"default"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"modern"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"ocean"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"bold"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"plain"</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">[]</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section></section><section class="tsd-panel-group tsd-member-group "><h2>Methods</h2><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="_new_state" class="tsd-anchor"></a><h3 class="tsd-anchor-link">_new_<wbr/>state<a href="#_new_state" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">_new_<wbr/>state<span class="tsd-signature-symbol">(</span>state_config<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmGenericState" class="tsd-signature-type" data-tsd-kind="Type alias">JssmGenericState</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1321">src/ts/jssm.ts:1321</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Internal method for fabricating states. Not meant for external use.</p>
</div><dl class="tsd-comment-tags"><dt>internal</dt><dd></dd></dl></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>state_config: <a href="../modules/jssm_types.html#JssmGenericState" class="tsd-signature-type" data-tsd-kind="Type alias">JssmGenericState</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="action" class="tsd-anchor"></a><h3 class="tsd-anchor-link">action<a href="#action" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">action<span class="tsd-signature-symbol">(</span>actionName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, newData<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3071">src/ts/jssm.ts:3071</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Instruct the machine to complete an action. Synonym for <a href="jssm.Machine.html#do">do</a>.</p>
</div><div><pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`red 'next' -> green 'next' -> yellow 'next' -> red; [red yellow green] 'shutdown' ~> off 'start' -> red;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'red'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'green'</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>actionName: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The action to engage</p>
</div></div></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> newData: <span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The data change to insert during the action</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="actions" class="tsd-anchor"></a><h3 class="tsd-anchor-link">actions<a href="#actions" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">actions<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2219">src/ts/jssm.ts:2219</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> List all actions available from this state. Please note that the order of
the actions is not guaranteed.</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> { </span><span class="hl-2">sm</span><span class="hl-1"> } </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">machine</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`</span><br/><span class="hl-3"> red 'next' -> green 'next' -> yellow 'next' -> red;</span><br/><span class="hl-3"> [red yellow green] 'shutdown' ~> off 'start' -> red;</span><br/><span class="hl-3">`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">() ); </span><span class="hl-7">// logs 'red'</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">actions</span><span class="hl-1">() ); </span><span class="hl-7">// logs ['next', 'shutdown']</span><br/><br/><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">() ); </span><span class="hl-7">// logs 'green'</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">actions</span><span class="hl-1">() ); </span><span class="hl-7">// logs ['next', 'shutdown']</span><br/><br/><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'shutdown'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">() ); </span><span class="hl-7">// logs 'off'</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">actions</span><span class="hl-1">() ); </span><span class="hl-7">// logs ['start']</span><br/><br/><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">action</span><span class="hl-1">(</span><span class="hl-3">'start'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">() ); </span><span class="hl-7">// logs 'red'</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">actions</span><span class="hl-1">() ); </span><span class="hl-7">// logs ['next', 'shutdown']</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = ...</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The state whose actions to have listed</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="all_themes" class="tsd-anchor"></a><h3 class="tsd-anchor-link">all_<wbr/>themes<a href="#all_themes" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">all_<wbr/>themes<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-type">"default"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"modern"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"ocean"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"bold"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"plain"</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2007">src/ts/jssm.ts:2007</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">(</span><span class="tsd-signature-type">"default"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"modern"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"ocean"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"bold"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"plain"</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="current_action_edge_for" class="tsd-anchor"></a><h3 class="tsd-anchor-link">current_<wbr/>action_<wbr/>edge_<wbr/>for<a href="#current_action_edge_for" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">current_<wbr/>action_<wbr/>edge_<wbr/>for<span class="tsd-signature-symbol">(</span>action<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmTransition" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransition</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3548">src/ts/jssm.ts:3548</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>action: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="../modules/jssm_types.html#JssmTransition" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransition</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="current_action_for" class="tsd-anchor"></a><h3 class="tsd-anchor-link">current_<wbr/>action_<wbr/>for<a href="#current_action_for" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">current_<wbr/>action_<wbr/>for<span class="tsd-signature-symbol">(</span>action<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3541">src/ts/jssm.ts:3541</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>action: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="data" class="tsd-anchor"></a><h3 class="tsd-anchor-link">data<a href="#data" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">data<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1434">src/ts/jssm.ts:1434</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the current data of a machine.</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> </span><span class="hl-4">*</span><span class="hl-1"> </span><span class="hl-0">as</span><span class="hl-1"> </span><span class="hl-2">jssm</span><span class="hl-1"> </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">lswitch</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><span class="hl-3">'on <=> off;'</span><span class="hl-1">, {</span><span class="hl-2">data:</span><span class="hl-1"> </span><span class="hl-8">1</span><span class="hl-1">});</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">data</span><span class="hl-1">() ); </span><span class="hl-7">// 1</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="display_text" class="tsd-anchor"></a><h3 class="tsd-anchor-link">display_<wbr/>text<a href="#display_text" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">display_<wbr/>text<span class="tsd-signature-symbol">(</span>state<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1411">src/ts/jssm.ts:1411</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get whatever the node should show as text.</p>
</div><div><p> Currently, this means to get the label for a given state, if any;
otherwise to return the node's name. However, this definition is expected
to grow with time, and it is currently considered ill-advised to manually
parse this text.</p>
<p> See also <a href="jssm.Machine.html#label_for">label_for</a>.</p>
<pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> </span><span class="hl-4">*</span><span class="hl-1"> </span><span class="hl-0">as</span><span class="hl-1"> </span><span class="hl-2">jssm</span><span class="hl-1"> </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">lswitch</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><span class="hl-3">'a -> b; state a: { label: "Foo!"; };'</span><span class="hl-1">);</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">display_text</span><span class="hl-1">(</span><span class="hl-3">'a'</span><span class="hl-1">) ); </span><span class="hl-7">// 'Foo!'</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">display_text</span><span class="hl-1">(</span><span class="hl-3">'b'</span><span class="hl-1">) ); </span><span class="hl-7">// 'b'</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>state: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="do" class="tsd-anchor"></a><h3 class="tsd-anchor-link">do<a href="#do" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">do<span class="tsd-signature-symbol">(</span>actionName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, newData<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3436">src/ts/jssm.ts:3436</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Instruct the machine to complete an action. Synonym for <a href="jssm.Machine.html#action">action</a>.</p>
</div><div><pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`</span><br/><span class="hl-3"> off 'start' -> red;</span><br/><span class="hl-3"> red 'next' -> green 'next' -> yellow 'next' -> red;</span><br/><span class="hl-3"> [red yellow green] 'shutdown' ~> off;</span><br/><span class="hl-3">`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'off'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">do</span><span class="hl-1">(</span><span class="hl-3">'start'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'red'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">do</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'green'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">do</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'yellow'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">do</span><span class="hl-1">(</span><span class="hl-3">'dance'</span><span class="hl-1">); </span><span class="hl-7">// !! false - no such action</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'yellow'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">do</span><span class="hl-1">(</span><span class="hl-3">'start'</span><span class="hl-1">); </span><span class="hl-7">// !! false - yellow does not have the action start</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'yellow'</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>actionName: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The action to engage</p>
</div></div></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> newData: <span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The data change to insert during the action</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="dot_preamble" class="tsd-anchor"></a><h3 class="tsd-anchor-link">dot_<wbr/>preamble<a href="#dot_preamble" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">dot_<wbr/>preamble<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1813">src/ts/jssm.ts:1813</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="edges_between" class="tsd-anchor"></a><h3 class="tsd-anchor-link">edges_<wbr/>between<a href="#edges_between" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">edges_<wbr/>between<span class="tsd-signature-symbol">(</span>from<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, to<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmTransition" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransition</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2682">src/ts/jssm.ts:2682</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>from: <span class="tsd-signature-type">string</span></h5></li><li><h5>to: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="../modules/jssm_types.html#JssmTransition" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransition</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="flow" class="tsd-anchor"></a><h3 class="tsd-anchor-link">flow<a href="#flow" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">flow<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">"up"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"right"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"down"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"left"</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2027">src/ts/jssm.ts:2027</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">"up"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"right"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"down"</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">"left"</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="force_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">force_<wbr/>transition<a href="#force_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">force_<wbr/>transition<span class="tsd-signature-symbol">(</span>newState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, newData<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3533">src/ts/jssm.ts:3533</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Instruct the machine to complete a forced transition (which will reject if
called with a normal <a href="jssm.Machine.html#transition">transition</a> call.)</p>
</div><div><pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`red -> green -> yellow -> red; [red yellow green] 'shutdown' ~> off 'start' -> red;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'red'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">transition</span><span class="hl-1">(</span><span class="hl-3">'off'</span><span class="hl-1">); </span><span class="hl-7">// false</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'red'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">force_transition</span><span class="hl-1">(</span><span class="hl-3">'off'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'off'</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>newState: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The state to switch to</p>
</div></div></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> newData: <span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The data change to insert during the transition</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="fsl_version" class="tsd-anchor"></a><h3 class="tsd-anchor-link">fsl_<wbr/>version<a href="#fsl_version" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">fsl_<wbr/>version<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1863">src/ts/jssm.ts:1863</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="get_transition_by_state_names" class="tsd-anchor"></a><h3 class="tsd-anchor-link">get_<wbr/>transition_<wbr/>by_<wbr/>state_<wbr/>names<a href="#get_transition_by_state_names" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">get_<wbr/>transition_<wbr/>by_<wbr/>state_<wbr/>names<span class="tsd-signature-symbol">(</span>from<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, to<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2033">src/ts/jssm.ts:2033</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>from: <span class="tsd-signature-type">string</span></h5></li><li><h5>to: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="go" class="tsd-anchor"></a><h3 class="tsd-anchor-link">go<a href="#go" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">go<span class="tsd-signature-symbol">(</span>newState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, newData<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3502">src/ts/jssm.ts:3502</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Instruct the machine to complete a transition. Synonym for <a href="jssm.Machine.html#transition">transition</a>.</p>
</div><div><pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`red -> green -> yellow -> red; [red yellow green] 'shutdown' ~> off 'start' -> red;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'red'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">go</span><span class="hl-1">(</span><span class="hl-3">'green'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'green'</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>newState: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The state to switch to</p>
</div></div></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> newData: <span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The data change to insert during the transition</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="graph_layout" class="tsd-anchor"></a><h3 class="tsd-anchor-link">graph_<wbr/>layout<a href="#graph_layout" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">graph_<wbr/>layout<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1809">src/ts/jssm.ts:1809</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="has_completes" class="tsd-anchor"></a><h3 class="tsd-anchor-link">has_<wbr/>completes<a href="#has_completes" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">has_<wbr/>completes<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2356">src/ts/jssm.ts:2356</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="has_state" class="tsd-anchor"></a><h3 class="tsd-anchor-link">has_<wbr/>state<a href="#has_state" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">has_<wbr/>state<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1951">src/ts/jssm.ts:1951</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Check whether the machine knows a given state.</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> </span><span class="hl-4">*</span><span class="hl-1"> </span><span class="hl-0">as</span><span class="hl-1"> </span><span class="hl-2">jssm</span><span class="hl-1"> </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">lswitch</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><span class="hl-3">'on <=> off;'</span><span class="hl-1">);</span><br/><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">has_state</span><span class="hl-1">(</span><span class="hl-3">'off'</span><span class="hl-1">) ); </span><span class="hl-7">// true</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">has_state</span><span class="hl-1">(</span><span class="hl-3">'dance'</span><span class="hl-1">) ); </span><span class="hl-7">// false</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The state to be checked for extance</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="has_terminals" class="tsd-anchor"></a><h3 class="tsd-anchor-link">has_<wbr/>terminals<a href="#has_terminals" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">has_<wbr/>terminals<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2340">src/ts/jssm.ts:2340</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="has_unenterables" class="tsd-anchor"></a><h3 class="tsd-anchor-link">has_<wbr/>unenterables<a href="#has_unenterables" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">has_<wbr/>unenterables<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2324">src/ts/jssm.ts:2324</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hook<a href="#hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">hook<span class="tsd-signature-symbol">(</span>from<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, to<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2494">src/ts/jssm.ts:2494</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>from: <span class="tsd-signature-type">string</span></h5></li><li><h5>to: <span class="tsd-signature-type">string</span></h5></li><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="hook_action" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hook_<wbr/>action<a href="#hook_action" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">hook_<wbr/>action<span class="tsd-signature-symbol">(</span>from<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, to<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, action<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2503">src/ts/jssm.ts:2503</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>from: <span class="tsd-signature-type">string</span></h5></li><li><h5>to: <span class="tsd-signature-type">string</span></h5></li><li><h5>action: <span class="tsd-signature-type">string</span></h5></li><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="hook_any_action" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hook_<wbr/>any_<wbr/>action<a href="#hook_any_action" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">hook_<wbr/>any_<wbr/>action<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2521">src/ts/jssm.ts:2521</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="hook_any_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hook_<wbr/>any_<wbr/>transition<a href="#hook_any_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">hook_<wbr/>any_<wbr/>transition<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2557">src/ts/jssm.ts:2557</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="hook_entry" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hook_<wbr/>entry<a href="#hook_entry" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">hook_<wbr/>entry<span class="tsd-signature-symbol">(</span>to<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2566">src/ts/jssm.ts:2566</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>to: <span class="tsd-signature-type">string</span></h5></li><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="hook_exit" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hook_<wbr/>exit<a href="#hook_exit" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">hook_<wbr/>exit<span class="tsd-signature-symbol">(</span>from<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2575">src/ts/jssm.ts:2575</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>from: <span class="tsd-signature-type">string</span></h5></li><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="hook_forced_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hook_<wbr/>forced_<wbr/>transition<a href="#hook_forced_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">hook_<wbr/>forced_<wbr/>transition<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2548">src/ts/jssm.ts:2548</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="hook_global_action" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hook_<wbr/>global_<wbr/>action<a href="#hook_global_action" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">hook_<wbr/>global_<wbr/>action<span class="tsd-signature-symbol">(</span>action<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2512">src/ts/jssm.ts:2512</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>action: <span class="tsd-signature-type">string</span></h5></li><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="hook_main_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hook_<wbr/>main_<wbr/>transition<a href="#hook_main_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">hook_<wbr/>main_<wbr/>transition<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2539">src/ts/jssm.ts:2539</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="hook_standard_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hook_<wbr/>standard_<wbr/>transition<a href="#hook_standard_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">hook_<wbr/>standard_<wbr/>transition<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2530">src/ts/jssm.ts:2530</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="instance_name" class="tsd-anchor"></a><h3 class="tsd-anchor-link">instance_<wbr/>name<a href="#instance_name" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">instance_<wbr/>name<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3578">src/ts/jssm.ts:3578</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="is_complete" class="tsd-anchor"></a><h3 class="tsd-anchor-link">is_<wbr/>complete<a href="#is_complete" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">is_<wbr/>complete<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2346">src/ts/jssm.ts:2346</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="is_end_state" class="tsd-anchor"></a><h3 class="tsd-anchor-link">is_<wbr/>end_<wbr/>state<a href="#is_end_state" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">is_<wbr/>end_<wbr/>state<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1716">src/ts/jssm.ts:1716</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Check whether a given state is a valid start state (either because it was
explicitly named as such, or because it was the first mentioned state.)</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> { </span><span class="hl-2">sm</span><span class="hl-1">, </span><span class="hl-2">is_end_state</span><span class="hl-1"> } </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">example</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">is_start_state</span><span class="hl-1">(</span><span class="hl-3">'a'</span><span class="hl-1">) ); </span><span class="hl-7">// false</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">is_start_state</span><span class="hl-1">(</span><span class="hl-3">'b'</span><span class="hl-1">) ); </span><span class="hl-7">// true</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">example</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`end_states: [a b]; a -> b;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">is_start_state</span><span class="hl-1">(</span><span class="hl-3">'a'</span><span class="hl-1">) ); </span><span class="hl-7">// true</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">is_start_state</span><span class="hl-1">(</span><span class="hl-3">'b'</span><span class="hl-1">) ); </span><span class="hl-7">// true</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The name of the state to check</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="is_final" class="tsd-anchor"></a><h3 class="tsd-anchor-link">is_<wbr/>final<a href="#is_final" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">is_<wbr/>final<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1769">src/ts/jssm.ts:1769</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Check whether the current state is final (either has no exits or is marked
<code>complete</code>.)</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> { </span><span class="hl-2">sm</span><span class="hl-1">, </span><span class="hl-2">is_final</span><span class="hl-1"> } </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">final_test</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`first -> second;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">is_final</span><span class="hl-1">() ); </span><span class="hl-7">// false</span><br/><span class="hl-2">state</span><span class="hl-1">.</span><span class="hl-6">transition</span><span class="hl-1">(</span><span class="hl-3">'second'</span><span class="hl-1">);</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">is_final</span><span class="hl-1">() ); </span><span class="hl-7">// true</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="is_start_state" class="tsd-anchor"></a><h3 class="tsd-anchor-link">is_<wbr/>start_<wbr/>state<a href="#is_start_state" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">is_<wbr/>start_<wbr/>state<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1683">src/ts/jssm.ts:1683</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Check whether a given state is a valid start state (either because it was
explicitly named as such, or because it was the first mentioned state.)</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> { </span><span class="hl-2">sm</span><span class="hl-1">, </span><span class="hl-2">is_start_state</span><span class="hl-1"> } </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">example</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`a -> b;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">is_start_state</span><span class="hl-1">(</span><span class="hl-3">'a'</span><span class="hl-1">) ); </span><span class="hl-7">// true</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">is_start_state</span><span class="hl-1">(</span><span class="hl-3">'b'</span><span class="hl-1">) ); </span><span class="hl-7">// false</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">example</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`start_states: [a b]; a -> b;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">is_start_state</span><span class="hl-1">(</span><span class="hl-3">'a'</span><span class="hl-1">) ); </span><span class="hl-7">// true</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">is_start_state</span><span class="hl-1">(</span><span class="hl-3">'b'</span><span class="hl-1">) ); </span><span class="hl-7">// true</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The name of the state to check</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="is_terminal" class="tsd-anchor"></a><h3 class="tsd-anchor-link">is_<wbr/>terminal<a href="#is_terminal" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">is_<wbr/>terminal<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2330">src/ts/jssm.ts:2330</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="is_unenterable" class="tsd-anchor"></a><h3 class="tsd-anchor-link">is_<wbr/>unenterable<a href="#is_unenterable" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">is_<wbr/>unenterable<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2319">src/ts/jssm.ts:2319</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="known_prop" class="tsd-anchor"></a><h3 class="tsd-anchor-link">known_<wbr/>prop<a href="#known_prop" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">known_<wbr/>prop<span class="tsd-signature-symbol">(</span>prop_name<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1629">src/ts/jssm.ts:1629</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Check whether a given string is a known property's name.</p>
</div><div><pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">example</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`property foo default 1; a->b;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">example</span><span class="hl-1">.</span><span class="hl-6">known_prop</span><span class="hl-1">(</span><span class="hl-3">'foo'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">example</span><span class="hl-1">.</span><span class="hl-6">known_prop</span><span class="hl-1">(</span><span class="hl-3">'bar'</span><span class="hl-1">); </span><span class="hl-7">// false</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>prop_name: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The relevant property name to look up</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="known_props" class="tsd-anchor"></a><h3 class="tsd-anchor-link">known_<wbr/>props<a href="#known_props" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">known_<wbr/>props<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1650">src/ts/jssm.ts:1650</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> List all known property names. If you'd also like values, use
<a href="jssm.Machine.html#props">props</a> instead. The order of the properties is not defined, and
the properties generally will not be sorted.</p>
</div><div><pre><code class="language-typescript">
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="label_for" class="tsd-anchor"></a><h3 class="tsd-anchor-link">label_<wbr/>for<a href="#label_for" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">label_<wbr/>for<span class="tsd-signature-symbol">(</span>state<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1380">src/ts/jssm.ts:1380</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the label for a given state, if any; return <code>undefined</code> otherwise.</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> </span><span class="hl-4">*</span><span class="hl-1"> </span><span class="hl-0">as</span><span class="hl-1"> </span><span class="hl-2">jssm</span><span class="hl-1"> </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">lswitch</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><span class="hl-3">'a -> b; state a: { label: "Foo!"; };'</span><span class="hl-1">);</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">label_for</span><span class="hl-1">(</span><span class="hl-3">'a'</span><span class="hl-1">) ); </span><span class="hl-7">// 'Foo!'</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">label_for</span><span class="hl-1">(</span><span class="hl-3">'b'</span><span class="hl-1">) ); </span><span class="hl-7">// undefined</span>
</code></pre>
<p> See also <a href="jssm.Machine.html#display_text">display_text</a>.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>state: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="list_actions" class="tsd-anchor"></a><h3 class="tsd-anchor-link">list_<wbr/>actions<a href="#list_actions" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">list_<wbr/>actions<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2001">src/ts/jssm.ts:2001</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="list_edges" class="tsd-anchor"></a><h3 class="tsd-anchor-link">list_<wbr/>edges<a href="#list_edges" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">list_<wbr/>edges<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmTransition" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransition</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1993">src/ts/jssm.ts:1993</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Lists all edges of a machine.</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> { </span><span class="hl-2">sm</span><span class="hl-1"> } </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">lswitch</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`on 'toggle' <=> 'toggle' off;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">list_edges</span><span class="hl-1">();</span><br/><span class="hl-1">[</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-2">from:</span><span class="hl-1"> </span><span class="hl-3">'on'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">to:</span><span class="hl-1"> </span><span class="hl-3">'off'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">kind:</span><span class="hl-1"> </span><span class="hl-3">'main'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">forced_only:</span><span class="hl-1"> </span><span class="hl-4">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">main_path:</span><span class="hl-1"> </span><span class="hl-4">true</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">action:</span><span class="hl-1"> </span><span class="hl-3">'toggle'</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-2">from:</span><span class="hl-1"> </span><span class="hl-3">'off'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">to:</span><span class="hl-1"> </span><span class="hl-3">'on'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">kind:</span><span class="hl-1"> </span><span class="hl-3">'main'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">forced_only:</span><span class="hl-1"> </span><span class="hl-4">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">main_path:</span><span class="hl-1"> </span><span class="hl-4">true</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-2">action:</span><span class="hl-1"> </span><span class="hl-3">'toggle'</span><br/><span class="hl-1"> }</span><br/><span class="hl-1">]</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <a href="../modules/jssm_types.html#JssmTransition" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransition</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="list_entrances" class="tsd-anchor"></a><h3 class="tsd-anchor-link">list_<wbr/>entrances<a href="#list_entrances" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">list_<wbr/>entrances<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2105">src/ts/jssm.ts:2105</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> List all entrances attached to the current state. Please note that the
order of the list is not defined.</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> { </span><span class="hl-2">sm</span><span class="hl-1"> } </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`red 'next' -> green 'next' -> yellow 'next' -> red; [red yellow green] 'shutdown' ~> off 'start' -> red;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'red'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">list_entrances</span><span class="hl-1">(); </span><span class="hl-7">// [ 'yellow', 'off' ]</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = ...</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The state whose entrances to have listed</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="list_exit_actions" class="tsd-anchor"></a><h3 class="tsd-anchor-link">list_<wbr/>exit_<wbr/>actions<a href="#list_exit_actions" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">list_<wbr/>exit_<wbr/>actions<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2283">src/ts/jssm.ts:2283</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = ...</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="list_exits" class="tsd-anchor"></a><h3 class="tsd-anchor-link">list_<wbr/>exits<a href="#list_exits" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">list_<wbr/>exits<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2135">src/ts/jssm.ts:2135</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> List all exits attached to the current state. Please note that the order
of the list is not defined.</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> { </span><span class="hl-2">sm</span><span class="hl-1"> } </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`red 'next' -> green 'next' -> yellow 'next' -> red; [red yellow green] 'shutdown' ~> off 'start' -> red;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'red'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">list_exits</span><span class="hl-1">(); </span><span class="hl-7">// [ 'green', 'off' ]</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = ...</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The state whose exits to have listed</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="list_named_transitions" class="tsd-anchor"></a><h3 class="tsd-anchor-link">list_<wbr/>named_<wbr/>transitions<a href="#list_named_transitions" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">list_<wbr/>named_<wbr/>transitions<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1997">src/ts/jssm.ts:1997</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="list_states_having_action" class="tsd-anchor"></a><h3 class="tsd-anchor-link">list_<wbr/>states_<wbr/>having_<wbr/>action<a href="#list_states_having_action" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">list_<wbr/>states_<wbr/>having_<wbr/>action<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2257">src/ts/jssm.ts:2257</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> List all states that have a specific action attached. Please note that
the order of the states is not guaranteed.</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> { </span><span class="hl-2">sm</span><span class="hl-1"> } </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">machine</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`</span><br/><span class="hl-3"> red 'next' -> green 'next' -> yellow 'next' -> red;</span><br/><span class="hl-3"> [red yellow green] 'shutdown' ~> off 'start' -> red;</span><br/><span class="hl-3">`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">list_states_having_action</span><span class="hl-1">(</span><span class="hl-3">'next'</span><span class="hl-1">) ); </span><span class="hl-7">// ['red', 'green', 'yellow']</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">machine</span><span class="hl-1">.</span><span class="hl-6">list_states_having_action</span><span class="hl-1">(</span><span class="hl-3">'start'</span><span class="hl-1">) ); </span><span class="hl-7">// ['off']</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The action to be checked for associated states</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="list_transitions" class="tsd-anchor"></a><h3 class="tsd-anchor-link">list_<wbr/>transitions<a href="#list_transitions" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">list_<wbr/>transitions<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmTransitionList" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransitionList</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2077">src/ts/jssm.ts:2077</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> List all transitions attached to the current state, sorted by entrance and
exit. The order of each sublist is not defined. A node could appear in
both lists.</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> { </span><span class="hl-2">sm</span><span class="hl-1"> } </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`red 'next' -> green 'next' -> yellow 'next' -> red; [red yellow green] 'shutdown' ~> off 'start' -> red;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'red'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">list_transitions</span><span class="hl-1">(); </span><span class="hl-7">// { entrances: [ 'yellow', 'off' ], exits: [ 'green', 'off' ] }</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = ...</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The state whose transitions to have listed</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <a href="../modules/jssm_types.html#JssmTransitionList" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransitionList</a></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="lookup_transition_for" class="tsd-anchor"></a><h3 class="tsd-anchor-link">lookup_<wbr/>transition_<wbr/>for<a href="#lookup_transition_for" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">lookup_<wbr/>transition_<wbr/>for<span class="tsd-signature-symbol">(</span>from<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, to<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmTransition" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransition</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2047">src/ts/jssm.ts:2047</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>from: <span class="tsd-signature-type">string</span></h5></li><li><h5>to: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="../modules/jssm_types.html#JssmTransition" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransition</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="machine_author" class="tsd-anchor"></a><h3 class="tsd-anchor-link">machine_<wbr/>author<a href="#machine_author" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">machine_<wbr/>author<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1819">src/ts/jssm.ts:1819</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="machine_comment" class="tsd-anchor"></a><h3 class="tsd-anchor-link">machine_<wbr/>comment<a href="#machine_comment" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">machine_<wbr/>comment<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1823">src/ts/jssm.ts:1823</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="machine_contributor" class="tsd-anchor"></a><h3 class="tsd-anchor-link">machine_<wbr/>contributor<a href="#machine_contributor" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">machine_<wbr/>contributor<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1827">src/ts/jssm.ts:1827</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="machine_definition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">machine_<wbr/>definition<a href="#machine_definition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">machine_<wbr/>definition<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1831">src/ts/jssm.ts:1831</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="machine_language" class="tsd-anchor"></a><h3 class="tsd-anchor-link">machine_<wbr/>language<a href="#machine_language" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">machine_<wbr/>language<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1835">src/ts/jssm.ts:1835</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="machine_license" class="tsd-anchor"></a><h3 class="tsd-anchor-link">machine_<wbr/>license<a href="#machine_license" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">machine_<wbr/>license<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1839">src/ts/jssm.ts:1839</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="machine_name" class="tsd-anchor"></a><h3 class="tsd-anchor-link">machine_<wbr/>name<a href="#machine_name" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">machine_<wbr/>name<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1843">src/ts/jssm.ts:1843</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="machine_state" class="tsd-anchor"></a><h3 class="tsd-anchor-link">machine_<wbr/>state<a href="#machine_state" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">machine_<wbr/>state<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmMachineInternalState" class="tsd-signature-type" data-tsd-kind="Type alias">JssmMachineInternalState</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1869">src/ts/jssm.ts:1869</a></li></ul></aside><h4 class="tsd-returns-title">Returns <a href="../modules/jssm_types.html#JssmMachineInternalState" class="tsd-signature-type" data-tsd-kind="Type alias">JssmMachineInternalState</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="machine_version" class="tsd-anchor"></a><h3 class="tsd-anchor-link">machine_<wbr/>version<a href="#machine_version" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">machine_<wbr/>version<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1847">src/ts/jssm.ts:1847</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="post_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">post_<wbr/>hook<a href="#post_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">post_<wbr/>hook<span class="tsd-signature-symbol">(</span>from<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, to<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2586">src/ts/jssm.ts:2586</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>from: <span class="tsd-signature-type">string</span></h5></li><li><h5>to: <span class="tsd-signature-type">string</span></h5></li><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="post_hook_action" class="tsd-anchor"></a><h3 class="tsd-anchor-link">post_<wbr/>hook_<wbr/>action<a href="#post_hook_action" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">post_<wbr/>hook_<wbr/>action<span class="tsd-signature-symbol">(</span>from<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, to<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, action<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2595">src/ts/jssm.ts:2595</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>from: <span class="tsd-signature-type">string</span></h5></li><li><h5>to: <span class="tsd-signature-type">string</span></h5></li><li><h5>action: <span class="tsd-signature-type">string</span></h5></li><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="post_hook_any_action" class="tsd-anchor"></a><h3 class="tsd-anchor-link">post_<wbr/>hook_<wbr/>any_<wbr/>action<a href="#post_hook_any_action" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">post_<wbr/>hook_<wbr/>any_<wbr/>action<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2613">src/ts/jssm.ts:2613</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="post_hook_any_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">post_<wbr/>hook_<wbr/>any_<wbr/>transition<a href="#post_hook_any_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">post_<wbr/>hook_<wbr/>any_<wbr/>transition<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2649">src/ts/jssm.ts:2649</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="post_hook_entry" class="tsd-anchor"></a><h3 class="tsd-anchor-link">post_<wbr/>hook_<wbr/>entry<a href="#post_hook_entry" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">post_<wbr/>hook_<wbr/>entry<span class="tsd-signature-symbol">(</span>to<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2658">src/ts/jssm.ts:2658</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>to: <span class="tsd-signature-type">string</span></h5></li><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="post_hook_exit" class="tsd-anchor"></a><h3 class="tsd-anchor-link">post_<wbr/>hook_<wbr/>exit<a href="#post_hook_exit" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">post_<wbr/>hook_<wbr/>exit<span class="tsd-signature-symbol">(</span>from<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2667">src/ts/jssm.ts:2667</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>from: <span class="tsd-signature-type">string</span></h5></li><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="post_hook_forced_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">post_<wbr/>hook_<wbr/>forced_<wbr/>transition<a href="#post_hook_forced_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">post_<wbr/>hook_<wbr/>forced_<wbr/>transition<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2640">src/ts/jssm.ts:2640</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="post_hook_global_action" class="tsd-anchor"></a><h3 class="tsd-anchor-link">post_<wbr/>hook_<wbr/>global_<wbr/>action<a href="#post_hook_global_action" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">post_<wbr/>hook_<wbr/>global_<wbr/>action<span class="tsd-signature-symbol">(</span>action<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2604">src/ts/jssm.ts:2604</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>action: <span class="tsd-signature-type">string</span></h5></li><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="post_hook_main_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">post_<wbr/>hook_<wbr/>main_<wbr/>transition<a href="#post_hook_main_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">post_<wbr/>hook_<wbr/>main_<wbr/>transition<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2631">src/ts/jssm.ts:2631</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="post_hook_standard_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">post_<wbr/>hook_<wbr/>standard_<wbr/>transition<a href="#post_hook_standard_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">post_<wbr/>hook_<wbr/>standard_<wbr/>transition<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2622">src/ts/jssm.ts:2622</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>handler: <a href="../modules/jssm_types.html#HookHandler" class="tsd-signature-type" data-tsd-kind="Type alias">HookHandler</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="probabilistic_histo_walk" class="tsd-anchor"></a><h3 class="tsd-anchor-link">probabilistic_<wbr/>histo_<wbr/>walk<a href="#probabilistic_histo_walk" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">probabilistic_<wbr/>histo_<wbr/>walk<span class="tsd-signature-symbol">(</span>n<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2176">src/ts/jssm.ts:2176</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>n: <span class="tsd-signature-type">number</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="probabilistic_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">probabilistic_<wbr/>transition<a href="#probabilistic_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">probabilistic_<wbr/>transition<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2161">src/ts/jssm.ts:2161</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="probabilistic_walk" class="tsd-anchor"></a><h3 class="tsd-anchor-link">probabilistic_<wbr/>walk<a href="#probabilistic_walk" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">probabilistic_<wbr/>walk<span class="tsd-signature-symbol">(</span>n<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2166">src/ts/jssm.ts:2166</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>n: <span class="tsd-signature-type">number</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="probable_action_exits" class="tsd-anchor"></a><h3 class="tsd-anchor-link">probable_<wbr/>action_<wbr/>exits<a href="#probable_action_exits" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">probable_<wbr/>action_<wbr/>exits<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2302">src/ts/jssm.ts:2302</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = ...</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="probable_exits_for" class="tsd-anchor"></a><h3 class="tsd-anchor-link">probable_<wbr/>exits_<wbr/>for<a href="#probable_exits_for" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">probable_<wbr/>exits_<wbr/>for<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmTransition" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransition</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2145">src/ts/jssm.ts:2145</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="../modules/jssm_types.html#JssmTransition" class="tsd-signature-type" data-tsd-kind="Type alias">JssmTransition</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="prop" class="tsd-anchor"></a><h3 class="tsd-anchor-link">prop<a href="#prop" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">prop<span class="tsd-signature-symbol">(</span>name<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1458">src/ts/jssm.ts:1458</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the current value of a given property name.</p>
</div><div><pre><code class="language-typescript">
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>name: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The relevant property name to look up</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">any</span></h4><div><p>The value behind the prop name. Because functional props are
evaluated as getters, this can be anything.</p>
</div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="props" class="tsd-anchor"></a><h3 class="tsd-anchor-link">props<a href="#props" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">props<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">object</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1555">src/ts/jssm.ts:1555</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the current value of every prop, as an object. If no current definition
exists for a prop - that is, if the prop was defined without a default and
the current state also doesn't define the prop - then that prop will be listed
in the returned object with a value of <code>undefined</code>.</p>
</div><div><pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">traffic_light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`</span><br/><br/><span class="hl-3"> property can_go default true;</span><br/><span class="hl-3"> property hesitate default true;</span><br/><span class="hl-3"> property stop_first default false;</span><br/><br/><span class="hl-3"> Off -> Red => Green => Yellow => Red;</span><br/><span class="hl-3"> [Red Yellow Green] ~> [Off FlashingRed];</span><br/><span class="hl-3"> FlashingRed -> Red;</span><br/><br/><span class="hl-3"> state Red: { property stop_first true; property can_go false; };</span><br/><span class="hl-3"> state Off: { property stop_first true; };</span><br/><span class="hl-3"> state FlashingRed: { property stop_first true; };</span><br/><span class="hl-3"> state Green: { property hesitate false; };</span><br/><br/><span class="hl-3">`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">traffic_light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// Off</span><br/><span class="hl-2">traffic_light</span><span class="hl-1">.</span><span class="hl-6">props</span><span class="hl-1">(); </span><span class="hl-7">// { can_go: true, hesitate: true, stop_first: true; }</span><br/><br/><span class="hl-2">traffic_light</span><span class="hl-1">.</span><span class="hl-6">go</span><span class="hl-1">(</span><span class="hl-3">'Red'</span><span class="hl-1">);</span><br/><span class="hl-2">traffic_light</span><span class="hl-1">.</span><span class="hl-6">props</span><span class="hl-1">(); </span><span class="hl-7">// { can_go: false, hesitate: true, stop_first: true; }</span><br/><br/><span class="hl-2">traffic_light</span><span class="hl-1">.</span><span class="hl-6">go</span><span class="hl-1">(</span><span class="hl-3">'Green'</span><span class="hl-1">);</span><br/><span class="hl-2">traffic_light</span><span class="hl-1">.</span><span class="hl-6">props</span><span class="hl-1">(); </span><span class="hl-7">// { can_go: true, hesitate: false, stop_first: false; }</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">object</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="raw_state_declarations" class="tsd-anchor"></a><h3 class="tsd-anchor-link">raw_<wbr/>state_<wbr/>declarations<a href="#raw_state_declarations" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">raw_<wbr/>state_<wbr/>declarations<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm._internal_.html" class="tsd-signature-type" data-tsd-kind="Namespace"><internal></a><span class="tsd-signature-symbol">.</span><a href="../modules/jssm._internal_.html#Object-1" class="tsd-signature-type" data-tsd-kind="Variable">Object</a><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1851">src/ts/jssm.ts:1851</a></li></ul></aside><h4 class="tsd-returns-title">Returns <a href="../modules/jssm._internal_.html" class="tsd-signature-type" data-tsd-kind="Namespace"><internal></a><span class="tsd-signature-symbol">.</span><a href="../modules/jssm._internal_.html#Object-1" class="tsd-signature-type" data-tsd-kind="Variable">Object</a><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="serialize" class="tsd-anchor"></a><h3 class="tsd-anchor-link">serialize<a href="#serialize" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">serialize<span class="tsd-signature-symbol">(</span>comment<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmSerialization" class="tsd-signature-type" data-tsd-kind="Type alias">JssmSerialization</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1789">src/ts/jssm.ts:1789</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Serialize the current machine, including all defining state but not the
machine string, to a structure. This means you will need the machine
string to recreate (to not waste repeated space;) if you want the machine
string embedded, call {@link serialize_with_string} instead.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> comment: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="../modules/jssm_types.html#JssmSerialization" class="tsd-signature-type" data-tsd-kind="Type alias">JssmSerialization</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="set_hook" class="tsd-anchor"></a><h3 class="tsd-anchor-link">set_<wbr/>hook<a href="#set_hook" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">set_<wbr/>hook<span class="tsd-signature-symbol">(</span>HookDesc<span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#HookDescription" class="tsd-signature-type" data-tsd-kind="Type alias">HookDescription</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2364">src/ts/jssm.ts:2364</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>HookDesc: <a href="../modules/jssm_types.html#HookDescription" class="tsd-signature-type" data-tsd-kind="Type alias">HookDescription</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="sm" class="tsd-anchor"></a><h3 class="tsd-anchor-link">sm<a href="#sm" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">sm<span class="tsd-signature-symbol">(</span>template_strings<span class="tsd-signature-symbol">: </span><a href="../interfaces/jssm._internal_.TemplateStringsArray.html" class="tsd-signature-type" data-tsd-kind="Interface">TemplateStringsArray</a>, <span class="tsd-signature-symbol">...</span>remainder<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3584">src/ts/jssm.ts:3584</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>template_strings: <a href="../interfaces/jssm._internal_.TemplateStringsArray.html" class="tsd-signature-type" data-tsd-kind="Interface">TemplateStringsArray</a></h5></li><li><h5><span class="tsd-flag ts-flagRest">Rest</span> <span class="tsd-signature-symbol">...</span>remainder: <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="jssm.Machine.html" class="tsd-signature-type" data-tsd-kind="Class">Machine</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="state" class="tsd-anchor"></a><h3 class="tsd-anchor-link">state<a href="#state" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">state<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1354">src/ts/jssm.ts:1354</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the current state of a machine.</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> </span><span class="hl-4">*</span><span class="hl-1"> </span><span class="hl-0">as</span><span class="hl-1"> </span><span class="hl-2">jssm</span><span class="hl-1"> </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">lswitch</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><span class="hl-3">'on <=> off;'</span><span class="hl-1">);</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">() ); </span><span class="hl-7">// 'on'</span><br/><br/><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">transition</span><span class="hl-1">(</span><span class="hl-3">'off'</span><span class="hl-1">);</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">() ); </span><span class="hl-7">// 'off'</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="state_declaration" class="tsd-anchor"></a><h3 class="tsd-anchor-link">state_<wbr/>declaration<a href="#state_declaration" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">state_<wbr/>declaration<span class="tsd-signature-symbol">(</span>which<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1855">src/ts/jssm.ts:1855</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>which: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="state_declarations" class="tsd-anchor"></a><h3 class="tsd-anchor-link">state_<wbr/>declarations<a href="#state_declarations" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">state_<wbr/>declarations<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1859">src/ts/jssm.ts:1859</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Map</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="state_for" class="tsd-anchor"></a><h3 class="tsd-anchor-link">state_<wbr/>for<a href="#state_for" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">state_<wbr/>for<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm_types.html#JssmGenericState" class="tsd-signature-type" data-tsd-kind="Type alias">JssmGenericState</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1916">src/ts/jssm.ts:1916</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="../modules/jssm_types.html#JssmGenericState" class="tsd-signature-type" data-tsd-kind="Type alias">JssmGenericState</a></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="state_is_complete" class="tsd-anchor"></a><h3 class="tsd-anchor-link">state_<wbr/>is_<wbr/>complete<a href="#state_is_complete" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">state_<wbr/>is_<wbr/>complete<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2350">src/ts/jssm.ts:2350</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="state_is_final" class="tsd-anchor"></a><h3 class="tsd-anchor-link">state_<wbr/>is_<wbr/>final<a href="#state_is_final" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">state_<wbr/>is_<wbr/>final<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1744">src/ts/jssm.ts:1744</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Check whether a given state is final (either has no exits or is marked
<code>complete</code>.)</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> { </span><span class="hl-2">sm</span><span class="hl-1">, </span><span class="hl-2">state_is_final</span><span class="hl-1"> } </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">final_test</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`first -> second;`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">state_is_final</span><span class="hl-1">(</span><span class="hl-3">'first'</span><span class="hl-1">) ); </span><span class="hl-7">// false</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">final_test</span><span class="hl-1">.</span><span class="hl-6">state_is_final</span><span class="hl-1">(</span><span class="hl-3">'second'</span><span class="hl-1">) ); </span><span class="hl-7">// true</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The name of the state to check for finality</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="state_is_terminal" class="tsd-anchor"></a><h3 class="tsd-anchor-link">state_<wbr/>is_<wbr/>terminal<a href="#state_is_terminal" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">state_<wbr/>is_<wbr/>terminal<span class="tsd-signature-symbol">(</span>whichState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2335">src/ts/jssm.ts:2335</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>whichState: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="states" class="tsd-anchor"></a><h3 class="tsd-anchor-link">states<a href="#states" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">states<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1908">src/ts/jssm.ts:1908</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> List all the states known by the machine. Please note that the order of
these states is not guaranteed.</p>
</div><div><pre><code class="language-typescript"><span class="hl-0">import</span><span class="hl-1"> </span><span class="hl-4">*</span><span class="hl-1"> </span><span class="hl-0">as</span><span class="hl-1"> </span><span class="hl-2">jssm</span><span class="hl-1"> </span><span class="hl-0">from</span><span class="hl-1"> </span><span class="hl-3">'jssm'</span><span class="hl-1">;</span><br/><br/><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">lswitch</span><span class="hl-1"> = </span><span class="hl-2">jssm</span><span class="hl-1">.</span><span class="hl-6">from</span><span class="hl-1">(</span><span class="hl-3">'on <=> off;'</span><span class="hl-1">);</span><br/><span class="hl-2">console</span><span class="hl-1">.</span><span class="hl-6">log</span><span class="hl-1">( </span><span class="hl-2">lswitch</span><span class="hl-1">.</span><span class="hl-6">states</span><span class="hl-1">() ); </span><span class="hl-7">// ['on', 'off']</span>
</code></pre>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="strict_prop" class="tsd-anchor"></a><h3 class="tsd-anchor-link">strict_<wbr/>prop<a href="#strict_prop" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">strict_<wbr/>prop<span class="tsd-signature-symbol">(</span>name<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L1496">src/ts/jssm.ts:1496</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Get the current value of a given property name. If missing on the state
and without a global default, throw, unlike <a href="jssm.Machine.html#prop">prop</a>, which would
return <code>undefined</code> instead.</p>
</div><div><pre><code class="language-typescript">
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>name: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The relevant property name to look up</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">any</span></h4><div><p>The value behind the prop name. Because functional props are
evaluated as getters, this can be anything.</p>
</div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="style_for" class="tsd-anchor"></a><h3 class="tsd-anchor-link">style_<wbr/>for<a href="#style_for" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">style_<wbr/>for<span class="tsd-signature-symbol">(</span>state<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3298">src/ts/jssm.ts:3298</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Gets the composite style for a specific node by individually imposing the
style layers on a given object, after determining which layers are
appropriate.</p>
</div><div><p> The order of composition is base, then theme, then user content. Each
item in the stack will be composited independently. First, the base state
style, then the theme state style, then the user state style.</p>
<p> After the three state styles, we'll composite the hooked styles; then the
terminal styles; then the start styles; then the end styles; finally, the
active styles. Remember, last wins.</p>
<p> The base state style must exist. All other styles are optional.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>state: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="../modules/jssm._internal_.html#Partial" class="tsd-signature-type" data-tsd-kind="Type alias">Partial</a><span class="tsd-signature-symbol"><</span><a href="../modules/jssm_types.html#JssmStateDeclaration" class="tsd-signature-type" data-tsd-kind="Type alias">JssmStateDeclaration</a><span class="tsd-signature-symbol">></span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">transition<a href="#transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">transition<span class="tsd-signature-symbol">(</span>newState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, newData<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3474">src/ts/jssm.ts:3474</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p> Instruct the machine to complete a transition. Synonym for <a href="jssm.Machine.html#go">go</a>.</p>
</div><div><pre><code class="language-typescript"><span class="hl-4">const</span><span class="hl-1"> </span><span class="hl-5">light</span><span class="hl-1"> = </span><span class="hl-6">sm</span><span class="hl-3">`</span><br/><span class="hl-3"> off 'start' -> red;</span><br/><span class="hl-3"> red 'next' -> green 'next' -> yellow 'next' -> red;</span><br/><span class="hl-3"> [red yellow green] 'shutdown' ~> off;</span><br/><span class="hl-3">`</span><span class="hl-1">;</span><br/><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'off'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">go</span><span class="hl-1">(</span><span class="hl-3">'red'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'red'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">go</span><span class="hl-1">(</span><span class="hl-3">'green'</span><span class="hl-1">); </span><span class="hl-7">// true</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'green'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">go</span><span class="hl-1">(</span><span class="hl-3">'blue'</span><span class="hl-1">); </span><span class="hl-7">// !! false - no such state</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'green'</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">go</span><span class="hl-1">(</span><span class="hl-3">'red'</span><span class="hl-1">); </span><span class="hl-7">// !! false - green may not go directly to red, only to yellow</span><br/><span class="hl-2">light</span><span class="hl-1">.</span><span class="hl-6">state</span><span class="hl-1">(); </span><span class="hl-7">// 'green'</span>
</code></pre>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>newState: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The state to switch to</p>
</div></div></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> newData: <span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>The data change to insert during the transition</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="transition_impl" class="tsd-anchor"></a><h3 class="tsd-anchor-link">transition_<wbr/>impl<a href="#transition_impl" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">transition_<wbr/>impl<span class="tsd-signature-symbol">(</span>newStateOrAction<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, newData<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span>, wasForced<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span>, wasAction<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L2688">src/ts/jssm.ts:2688</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>newStateOrAction: <span class="tsd-signature-type">string</span></h5></li><li><h5>newData: <span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></h5></li><li><h5>wasForced: <span class="tsd-signature-type">boolean</span></h5></li><li><h5>wasAction: <span class="tsd-signature-type">boolean</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="valid_action" class="tsd-anchor"></a><h3 class="tsd-anchor-link">valid_<wbr/>action<a href="#valid_action" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">valid_<wbr/>action<span class="tsd-signature-symbol">(</span>action<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, _newData<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3554">src/ts/jssm.ts:3554</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>action: <span class="tsd-signature-type">string</span></h5></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> _newData: <span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="valid_force_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">valid_<wbr/>force_<wbr/>transition<a href="#valid_force_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">valid_<wbr/>force_<wbr/>transition<span class="tsd-signature-symbol">(</span>newState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, _newData<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3572">src/ts/jssm.ts:3572</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>newState: <span class="tsd-signature-type">string</span></h5></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> _newData: <span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="valid_transition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">valid_<wbr/>transition<a href="#valid_transition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">valid_<wbr/>transition<span class="tsd-signature-symbol">(</span>newState<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, _newData<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/StoneCypher/jssm/blob/35ad722/src/ts/jssm.ts#L3560">src/ts/jssm.ts:3560</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>newState: <span class="tsd-signature-type">string</span></h5></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> _newData: <span class="tsd-signature-type" data-tsd-kind="Type parameter">mDT</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../modules.html">Modules</a></li><li class=" pages-entry pages-entry-menu pages-entry-depth-0"><a>Tutorials</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-1"><a href="../pages/WhatAreStateMachines.html">What are state machines?</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-1"><a href="../pages/GettingStarted.html">☕ <wbr/>Quick <wbr/>Start</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-1"><a href="../pages/LanguageReference.html">Language reference</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-1"><a href="../pages/todo.html">API reference</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-1"><a href="../pages/ExampleMachines.html">Example machines</a></li><li class=" pages-entry pages-entry-menu pages-entry-depth-1"><a>Howtos and <wbr/>Recipes</a></li><li class=" pages-entry pages-entry-menu pages-entry-depth-2"><a>Frameworks</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">React</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">Vue</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">Angular</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">Node</a></li><li class=" pages-entry pages-entry-menu pages-entry-depth-2"><a>Environments</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">Node</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">Typescript</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">The browser</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">AWS <wbr/>Lambda</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">SQL</a></li><li class=" pages-entry pages-entry-menu pages-entry-depth-2"><a>Bundling</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">Rollup</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">Webpack</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">CDN</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-3"><a href="../pages/todo.html">Local files</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-2"><a href="../pages/todo.html">Let's make a large machine</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-2"><a href="../pages/todo.html">Publishing</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-2"><a href="../pages/Styling.html">Theme, style, color</a></li><li class=" pages-entry pages-entry-menu pages-entry-depth-1"><a>Comparisons</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-2"><a href="../pages/FeatureComparison.html">Feature comparison</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-2"><a href="../pages/Shootout.html">LOC <wbr/>Shootout</a></li><li class=" pages-entry pages-entry-menu pages-entry-depth-0"><a>Tools</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-1"><a href="../pages/live_editor.html">Live <wbr/>Editor</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-1"><a href="../pages/todo.html">Github <wbr/>Action</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-1"><a href="../pages/todo.html">CLI</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-0"><a href="../pages/community.html">Community</a></li><li class=" pages-entry pages-entry-page pages-entry-depth-0"><a href="../pages/CHANGELOG.long.html">Changelog</a></li><li class="current tsd-kind-module"><a href="../modules/jssm.html">jssm</a><ul><li class=" tsd-kind-namespace tsd-parent-kind-module"><a href="../modules/jssm._internal_.html"><internal></a></li></ul></li><li class=" tsd-kind-module"><a href="../modules/jssm_constants.html">jssm_<wbr/>constants</a></li><li class=" tsd-kind-module"><a href="../modules/jssm_error.html">jssm_<wbr/>error</a></li><li class=" tsd-kind-module"><a href="../modules/jssm_types.html">jssm_<wbr/>types</a></li><li class=" tsd-kind-module"><a href="../modules/jssm_util.html">jssm_<wbr/>util</a></li><li class=" tsd-kind-module"><a href="../modules/version.html">version</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="current tsd-kind-class tsd-parent-kind-module tsd-has-type-parameter"><a href="jssm.Machine.html" class="tsd-kind-icon">Machine</a><ul><li class="tsd-kind-constructor tsd-parent-kind-class tsd-has-type-parameter"><a href="jssm.Machine.html#constructor" class="tsd-kind-icon">constructor</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_actions" class="tsd-kind-icon">_actions</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_active_state_style" class="tsd-kind-icon">_active_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_any_action_hook" class="tsd-kind-icon">_any_<wbr/>action_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_any_transition_hook" class="tsd-kind-icon">_any_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_arrange_declaration" class="tsd-kind-icon">_arrange_<wbr/>declaration</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_arrange_end_declaration" class="tsd-kind-icon">_arrange_<wbr/>end_<wbr/>declaration</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_arrange_start_declaration" class="tsd-kind-icon">_arrange_<wbr/>start_<wbr/>declaration</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_data" class="tsd-kind-icon">_data</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_default_properties" class="tsd-kind-icon">_default_<wbr/>properties</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_dot_preamble" class="tsd-kind-icon">_dot_<wbr/>preamble</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_edge_map" class="tsd-kind-icon">_edge_<wbr/>map</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_edges" class="tsd-kind-icon">_edges</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_end_state_style" class="tsd-kind-icon">_end_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_end_states" class="tsd-kind-icon">_end_<wbr/>states</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_entry_hooks" class="tsd-kind-icon">_entry_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_exit_hooks" class="tsd-kind-icon">_exit_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_flow" class="tsd-kind-icon">_flow</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_forced_transition_hook" class="tsd-kind-icon">_forced_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_fsl_version" class="tsd-kind-icon">_fsl_<wbr/>version</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_global_action_hooks" class="tsd-kind-icon">_global_<wbr/>action_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_graph_layout" class="tsd-kind-icon">_graph_<wbr/>layout</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_basic_hooks" class="tsd-kind-icon">_has_<wbr/>basic_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_entry_hooks" class="tsd-kind-icon">_has_<wbr/>entry_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_exit_hooks" class="tsd-kind-icon">_has_<wbr/>exit_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_global_action_hooks" class="tsd-kind-icon">_has_<wbr/>global_<wbr/>action_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_hooks" class="tsd-kind-icon">_has_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_named_hooks" class="tsd-kind-icon">_has_<wbr/>named_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_basic_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>basic_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_entry_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>entry_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_exit_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>exit_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_global_action_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>global_<wbr/>action_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_named_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>named_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_post_transition_hooks" class="tsd-kind-icon">_has_<wbr/>post_<wbr/>transition_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_has_transition_hooks" class="tsd-kind-icon">_has_<wbr/>transition_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_history" class="tsd-kind-icon">_history</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_history_length" class="tsd-kind-icon">_history_<wbr/>length</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_hooked_state_style" class="tsd-kind-icon">_hooked_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_hooks" class="tsd-kind-icon">_hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_instance_name" class="tsd-kind-icon">_instance_<wbr/>name</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_author" class="tsd-kind-icon">_machine_<wbr/>author</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_comment" class="tsd-kind-icon">_machine_<wbr/>comment</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_contributor" class="tsd-kind-icon">_machine_<wbr/>contributor</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_definition" class="tsd-kind-icon">_machine_<wbr/>definition</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_language" class="tsd-kind-icon">_machine_<wbr/>language</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_license" class="tsd-kind-icon">_machine_<wbr/>license</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_name" class="tsd-kind-icon">_machine_<wbr/>name</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_machine_version" class="tsd-kind-icon">_machine_<wbr/>version</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_main_transition_hook" class="tsd-kind-icon">_main_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_named_hooks" class="tsd-kind-icon">_named_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_named_transitions" class="tsd-kind-icon">_named_<wbr/>transitions</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_any_action_hook" class="tsd-kind-icon">_post_<wbr/>any_<wbr/>action_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_any_transition_hook" class="tsd-kind-icon">_post_<wbr/>any_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_entry_hooks" class="tsd-kind-icon">_post_<wbr/>entry_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_exit_hooks" class="tsd-kind-icon">_post_<wbr/>exit_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_forced_transition_hook" class="tsd-kind-icon">_post_<wbr/>forced_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_global_action_hooks" class="tsd-kind-icon">_post_<wbr/>global_<wbr/>action_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_hooks" class="tsd-kind-icon">_post_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_main_transition_hook" class="tsd-kind-icon">_post_<wbr/>main_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_named_hooks" class="tsd-kind-icon">_post_<wbr/>named_<wbr/>hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_post_standard_transition_hook" class="tsd-kind-icon">_post_<wbr/>standard_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_property_keys" class="tsd-kind-icon">_property_<wbr/>keys</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_raw_state_declaration" class="tsd-kind-icon">_raw_<wbr/>state_<wbr/>declaration</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_required_properties" class="tsd-kind-icon">_required_<wbr/>properties</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_reverse_action_targets" class="tsd-kind-icon">_reverse_<wbr/>action_<wbr/>targets</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_reverse_actions" class="tsd-kind-icon">_reverse_<wbr/>actions</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_standard_transition_hook" class="tsd-kind-icon">_standard_<wbr/>transition_<wbr/>hook</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_start_state_style" class="tsd-kind-icon">_start_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_start_states" class="tsd-kind-icon">_start_<wbr/>states</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_state" class="tsd-kind-icon">_state</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_state_declarations" class="tsd-kind-icon">_state_<wbr/>declarations</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_state_labels" class="tsd-kind-icon">_state_<wbr/>labels</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_state_properties" class="tsd-kind-icon">_state_<wbr/>properties</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_state_style" class="tsd-kind-icon">_state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_states" class="tsd-kind-icon">_states</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_terminal_state_style" class="tsd-kind-icon">_terminal_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="jssm.Machine.html#_themes" class="tsd-kind-icon">_themes</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#active_state_style" class="tsd-kind-icon">active_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#end_state_style" class="tsd-kind-icon">end_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#history" class="tsd-kind-icon">history</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#history_inclusive" class="tsd-kind-icon">history_<wbr/>inclusive</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="jssm.Machine.html#history_length" class="tsd-kind-icon">history_<wbr/>length</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#hooked_state_style" class="tsd-kind-icon">hooked_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#standard_state_style" class="tsd-kind-icon">standard_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#start_state_style" class="tsd-kind-icon">start_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="jssm.Machine.html#terminal_state_style" class="tsd-kind-icon">terminal_<wbr/>state_<wbr/>style</a></li><li class="tsd-kind-accessor tsd-parent-kind-class"><a href="jssm.Machine.html#themes" class="tsd-kind-icon">themes</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#_new_state" class="tsd-kind-icon">_new_<wbr/>state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#action" class="tsd-kind-icon">action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#actions" class="tsd-kind-icon">actions</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#all_themes" class="tsd-kind-icon">all_<wbr/>themes</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#current_action_edge_for" class="tsd-kind-icon">current_<wbr/>action_<wbr/>edge_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#current_action_for" class="tsd-kind-icon">current_<wbr/>action_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#data" class="tsd-kind-icon">data</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#display_text" class="tsd-kind-icon">display_<wbr/>text</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#do" class="tsd-kind-icon">do</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#dot_preamble" class="tsd-kind-icon">dot_<wbr/>preamble</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#edges_between" class="tsd-kind-icon">edges_<wbr/>between</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#flow" class="tsd-kind-icon">flow</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#force_transition" class="tsd-kind-icon">force_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#fsl_version" class="tsd-kind-icon">fsl_<wbr/>version</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#get_transition_by_state_names" class="tsd-kind-icon">get_<wbr/>transition_<wbr/>by_<wbr/>state_<wbr/>names</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#go" class="tsd-kind-icon">go</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#graph_layout" class="tsd-kind-icon">graph_<wbr/>layout</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#has_completes" class="tsd-kind-icon">has_<wbr/>completes</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#has_state" class="tsd-kind-icon">has_<wbr/>state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#has_terminals" class="tsd-kind-icon">has_<wbr/>terminals</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#has_unenterables" class="tsd-kind-icon">has_<wbr/>unenterables</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook" class="tsd-kind-icon">hook</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_action" class="tsd-kind-icon">hook_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_any_action" class="tsd-kind-icon">hook_<wbr/>any_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_any_transition" class="tsd-kind-icon">hook_<wbr/>any_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_entry" class="tsd-kind-icon">hook_<wbr/>entry</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_exit" class="tsd-kind-icon">hook_<wbr/>exit</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_forced_transition" class="tsd-kind-icon">hook_<wbr/>forced_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_global_action" class="tsd-kind-icon">hook_<wbr/>global_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_main_transition" class="tsd-kind-icon">hook_<wbr/>main_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#hook_standard_transition" class="tsd-kind-icon">hook_<wbr/>standard_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#instance_name" class="tsd-kind-icon">instance_<wbr/>name</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_complete" class="tsd-kind-icon">is_<wbr/>complete</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_end_state" class="tsd-kind-icon">is_<wbr/>end_<wbr/>state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_final" class="tsd-kind-icon">is_<wbr/>final</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_start_state" class="tsd-kind-icon">is_<wbr/>start_<wbr/>state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_terminal" class="tsd-kind-icon">is_<wbr/>terminal</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#is_unenterable" class="tsd-kind-icon">is_<wbr/>unenterable</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#known_prop" class="tsd-kind-icon">known_<wbr/>prop</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#known_props" class="tsd-kind-icon">known_<wbr/>props</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#label_for" class="tsd-kind-icon">label_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_actions" class="tsd-kind-icon">list_<wbr/>actions</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_edges" class="tsd-kind-icon">list_<wbr/>edges</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_entrances" class="tsd-kind-icon">list_<wbr/>entrances</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_exit_actions" class="tsd-kind-icon">list_<wbr/>exit_<wbr/>actions</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_exits" class="tsd-kind-icon">list_<wbr/>exits</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_named_transitions" class="tsd-kind-icon">list_<wbr/>named_<wbr/>transitions</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_states_having_action" class="tsd-kind-icon">list_<wbr/>states_<wbr/>having_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#list_transitions" class="tsd-kind-icon">list_<wbr/>transitions</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#lookup_transition_for" class="tsd-kind-icon">lookup_<wbr/>transition_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_author" class="tsd-kind-icon">machine_<wbr/>author</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_comment" class="tsd-kind-icon">machine_<wbr/>comment</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_contributor" class="tsd-kind-icon">machine_<wbr/>contributor</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_definition" class="tsd-kind-icon">machine_<wbr/>definition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_language" class="tsd-kind-icon">machine_<wbr/>language</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_license" class="tsd-kind-icon">machine_<wbr/>license</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_name" class="tsd-kind-icon">machine_<wbr/>name</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_state" class="tsd-kind-icon">machine_<wbr/>state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#machine_version" class="tsd-kind-icon">machine_<wbr/>version</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook" class="tsd-kind-icon">post_<wbr/>hook</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_action" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_any_action" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>any_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_any_transition" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>any_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_entry" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>entry</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_exit" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>exit</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_forced_transition" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>forced_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_global_action" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>global_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_main_transition" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>main_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#post_hook_standard_transition" class="tsd-kind-icon">post_<wbr/>hook_<wbr/>standard_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#probabilistic_histo_walk" class="tsd-kind-icon">probabilistic_<wbr/>histo_<wbr/>walk</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#probabilistic_transition" class="tsd-kind-icon">probabilistic_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#probabilistic_walk" class="tsd-kind-icon">probabilistic_<wbr/>walk</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#probable_action_exits" class="tsd-kind-icon">probable_<wbr/>action_<wbr/>exits</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#probable_exits_for" class="tsd-kind-icon">probable_<wbr/>exits_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#prop" class="tsd-kind-icon">prop</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#props" class="tsd-kind-icon">props</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#raw_state_declarations" class="tsd-kind-icon">raw_<wbr/>state_<wbr/>declarations</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#serialize" class="tsd-kind-icon">serialize</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#set_hook" class="tsd-kind-icon">set_<wbr/>hook</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#sm" class="tsd-kind-icon">sm</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state" class="tsd-kind-icon">state</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_declaration" class="tsd-kind-icon">state_<wbr/>declaration</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_declarations" class="tsd-kind-icon">state_<wbr/>declarations</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_for" class="tsd-kind-icon">state_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_is_complete" class="tsd-kind-icon">state_<wbr/>is_<wbr/>complete</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_is_final" class="tsd-kind-icon">state_<wbr/>is_<wbr/>final</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#state_is_terminal" class="tsd-kind-icon">state_<wbr/>is_<wbr/>terminal</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#states" class="tsd-kind-icon">states</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#strict_prop" class="tsd-kind-icon">strict_<wbr/>prop</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#style_for" class="tsd-kind-icon">style_<wbr/>for</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#transition" class="tsd-kind-icon">transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#transition_impl" class="tsd-kind-icon">transition_<wbr/>impl</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#valid_action" class="tsd-kind-icon">valid_<wbr/>action</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#valid_force_transition" class="tsd-kind-icon">valid_<wbr/>force_<wbr/>transition</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="jssm.Machine.html#valid_transition" class="tsd-kind-icon">valid_<wbr/>transition</a></li></ul></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-namespace"><span class="tsd-kind-icon">Namespace</span></li><li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li><li class="tsd-kind-function"><span class="tsd-kind-icon">Function</span></li><li class="tsd-kind-function tsd-has-type-parameter"><span class="tsd-kind-icon">Function with type parameter</span></li><li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li><li class="tsd-kind-type-alias tsd-has-type-parameter"><span class="tsd-kind-icon">Type alias with type parameter</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li><li class="tsd-kind-class tsd-has-type-parameter"><span class="tsd-kind-icon">Class with type parameter</span></li><li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li><li class="tsd-kind-accessor tsd-parent-kind-class"><span class="tsd-kind-icon">Accessor</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="../assets/main.js"></script></body></html>