chrome-devtools-frontend 1.0.1636056 → 1.0.1640418

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/front_end/core/common/Color.ts +0 -4
  2. package/front_end/core/host/AidaClientTypes.ts +8 -6
  3. package/front_end/core/root/Runtime.ts +2 -2
  4. package/front_end/core/sdk/DOMStorageModel.ts +1 -1
  5. package/front_end/core/sdk/SourceMap.ts +8 -3
  6. package/front_end/core/sdk/TargetManager.ts +14 -1
  7. package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +147 -0
  8. package/front_end/generated/ARIAProperties.js +17 -4
  9. package/front_end/generated/InspectorBackendCommands.ts +13 -7
  10. package/front_end/generated/SupportedCSSProperties.js +1 -0
  11. package/front_end/generated/protocol-mapping.d.ts +7 -0
  12. package/front_end/generated/protocol-proxy-api.d.ts +14 -0
  13. package/front_end/generated/protocol.ts +120 -2
  14. package/front_end/global_typings/global_defs.d.ts +13 -0
  15. package/front_end/models/ai_assistance/AiAgent2.ts +116 -0
  16. package/front_end/models/ai_assistance/AiConversation.ts +22 -36
  17. package/front_end/models/ai_assistance/AiHistoryStorage.ts +0 -1
  18. package/front_end/models/ai_assistance/AiOrigins.ts +46 -0
  19. package/front_end/models/ai_assistance/AiUtils.ts +9 -0
  20. package/front_end/models/ai_assistance/README.md +16 -0
  21. package/front_end/models/ai_assistance/StorageItem.ts +30 -26
  22. package/front_end/models/ai_assistance/agents/AccessibilityAgent.ts +12 -5
  23. package/front_end/models/ai_assistance/agents/AiAgent.ts +86 -32
  24. package/front_end/models/ai_assistance/agents/ContextSelectionAgent.snapshot.txt +2 -2
  25. package/front_end/models/ai_assistance/agents/ContextSelectionAgent.ts +31 -10
  26. package/front_end/models/ai_assistance/agents/ConversationSummaryAgent.ts +1 -1
  27. package/front_end/models/ai_assistance/agents/FileAgent.ts +2 -2
  28. package/front_end/models/ai_assistance/agents/GreenDevAgent.ts +1 -3
  29. package/front_end/models/ai_assistance/agents/NetworkAgent.snapshot.txt +19 -0
  30. package/front_end/models/ai_assistance/agents/NetworkAgent.ts +9 -4
  31. package/front_end/models/ai_assistance/agents/PerformanceAgent.snapshot.txt +2 -2
  32. package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +41 -12
  33. package/front_end/models/ai_assistance/agents/StorageAgent.ts +442 -122
  34. package/front_end/models/ai_assistance/agents/StylingAgent.ts +2 -2
  35. package/front_end/models/ai_assistance/ai_assistance.ts +4 -2
  36. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +2 -2
  37. package/front_end/models/ai_assistance/performance/AIContext.ts +7 -8
  38. package/front_end/models/ai_assistance/skills/README.md +40 -0
  39. package/front_end/models/ai_assistance/skills/Skill.ts +13 -0
  40. package/front_end/models/ai_assistance/skills/SkillRegistry.ts +10 -0
  41. package/front_end/models/ai_assistance/skills/styling.md +6 -0
  42. package/front_end/models/bindings/CompilerScriptMapping.ts +12 -4
  43. package/front_end/models/breakpoints/BreakpointManager.ts +54 -2
  44. package/front_end/models/greendev/Prototypes.ts +0 -7
  45. package/front_end/models/heap_snapshot/HeapSnapshotModel.ts +20 -0
  46. package/front_end/models/heap_snapshot/HeapSnapshotProxy.ts +5 -0
  47. package/front_end/models/issues_manager/EmailVerificationRequestIssue.ts +293 -0
  48. package/front_end/models/issues_manager/IssuesManager.ts +5 -0
  49. package/front_end/models/issues_manager/descriptions/emailVerificationRequestDnsFetchFailed.md +1 -0
  50. package/front_end/models/issues_manager/descriptions/emailVerificationRequestDnsInvalidRecord.md +1 -0
  51. package/front_end/models/issues_manager/descriptions/emailVerificationRequestInvalidEmail.md +1 -0
  52. package/front_end/models/issues_manager/descriptions/emailVerificationRequestKeyBindingSigningFailed.md +1 -0
  53. package/front_end/models/issues_manager/descriptions/emailVerificationRequestRpOriginIsOpaque.md +1 -0
  54. package/front_end/models/issues_manager/descriptions/emailVerificationRequestTokenHttpNotFound.md +1 -0
  55. package/front_end/models/issues_manager/descriptions/emailVerificationRequestTokenInvalidContentType.md +1 -0
  56. package/front_end/models/issues_manager/descriptions/emailVerificationRequestTokenInvalidResponse.md +1 -0
  57. package/front_end/models/issues_manager/descriptions/emailVerificationRequestTokenInvalidSdJwt.md +1 -0
  58. package/front_end/models/issues_manager/descriptions/emailVerificationRequestTokenMalformedSdJwt.md +1 -0
  59. package/front_end/models/issues_manager/descriptions/emailVerificationRequestTokenNoResponse.md +1 -0
  60. package/front_end/models/issues_manager/descriptions/emailVerificationRequestUserLoggedOut.md +1 -0
  61. package/front_end/models/issues_manager/descriptions/emailVerificationRequestWellKnownAccountsEndpointCrossOrigin.md +1 -0
  62. package/front_end/models/issues_manager/descriptions/emailVerificationRequestWellKnownHttpNotFound.md +1 -0
  63. package/front_end/models/issues_manager/descriptions/emailVerificationRequestWellKnownInvalidContentType.md +1 -0
  64. package/front_end/models/issues_manager/descriptions/emailVerificationRequestWellKnownInvalidResponse.md +1 -0
  65. package/front_end/models/issues_manager/descriptions/emailVerificationRequestWellKnownIssuanceEndpointCrossOrigin.md +1 -0
  66. package/front_end/models/issues_manager/descriptions/emailVerificationRequestWellKnownListEmpty.md +1 -0
  67. package/front_end/models/issues_manager/descriptions/emailVerificationRequestWellKnownMissingAccountsEndpoint.md +1 -0
  68. package/front_end/models/issues_manager/descriptions/emailVerificationRequestWellKnownMissingIssuanceEndpoint.md +1 -0
  69. package/front_end/models/issues_manager/descriptions/emailVerificationRequestWellKnownNoResponse.md +1 -0
  70. package/front_end/models/issues_manager/descriptions/emailVerificationRequestWellKnownUnsupportedSigningAlgorithm.md +1 -0
  71. package/front_end/models/issues_manager/issues_manager.ts +2 -0
  72. package/front_end/models/javascript_metadata/NativeFunctions.js +1748 -1739
  73. package/front_end/models/live-metrics/web-vitals-injected/web-vitals-injected.ts +1 -1
  74. package/front_end/models/stack_trace/DetailedErrorStackParser.ts +9 -1
  75. package/front_end/models/stack_trace/StackTraceImpl.ts +29 -9
  76. package/front_end/models/stack_trace/StackTraceModel.ts +23 -11
  77. package/front_end/models/stack_trace/Trie.ts +11 -1
  78. package/front_end/models/trace/extras/TraceTree.ts +20 -1
  79. package/front_end/models/trace/insights/Common.ts +9 -0
  80. package/front_end/models/trace/lantern/core/NetworkAnalyzer.ts +21 -25
  81. package/front_end/panels/ai_assistance/AiAssistancePanel.ts +19 -75
  82. package/front_end/panels/ai_assistance/components/AccessibilityAgentMarkdownRenderer.ts +10 -3
  83. package/front_end/panels/ai_assistance/components/ChatMessage.ts +148 -2
  84. package/front_end/panels/ai_assistance/components/PerformanceAgentMarkdownRenderer.ts +2 -3
  85. package/front_end/panels/ai_assistance/components/chatMessage.css +27 -0
  86. package/front_end/panels/application/CookieItemsView.ts +24 -0
  87. package/front_end/panels/application/DOMStorageItemsView.ts +9 -4
  88. package/front_end/panels/application/preloading/components/PreloadingString.ts +6 -0
  89. package/front_end/panels/application/preloading/components/UsedPreloadingView.ts +4 -4
  90. package/front_end/panels/console/ConsoleViewMessage.ts +13 -102
  91. package/front_end/panels/elements/StandaloneStylesContainer.ts +10 -0
  92. package/front_end/panels/elements/StylePropertiesSection.ts +6 -2
  93. package/front_end/panels/elements/StylePropertyTreeElement.ts +30 -1
  94. package/front_end/panels/elements/StylesContainer.ts +3 -0
  95. package/front_end/panels/elements/StylesSidebarPane.ts +54 -4
  96. package/front_end/panels/elements/elements-meta.ts +14 -0
  97. package/front_end/panels/layer_viewer/layerDetailsView.css +1 -1
  98. package/front_end/panels/lighthouse/LighthouseController.ts +1 -1
  99. package/front_end/panels/lighthouse/LighthouseProtocolService.ts +4 -4
  100. package/front_end/panels/network/NetworkDataGridNode.ts +14 -0
  101. package/front_end/panels/network/NetworkLogViewColumns.ts +2 -2
  102. package/front_end/panels/network/RequestHeadersView.ts +55 -19
  103. package/front_end/panels/network/networkTimingTable.css +2 -4
  104. package/front_end/panels/recorder/components/ReplaySection.ts +28 -16
  105. package/front_end/panels/recorder/converters/LighthouseConverter.snapshot.txt +47 -0
  106. package/front_end/panels/recorder/converters/PuppeteerConverter.snapshot.txt +49 -0
  107. package/front_end/panels/recorder/converters/PuppeteerReplayConverter.snapshot.txt +33 -0
  108. package/front_end/panels/settings/SettingsScreen.ts +1 -2
  109. package/front_end/panels/sources/BreakpointsView.ts +23 -42
  110. package/front_end/panels/sources/DebuggerPlugin.ts +12 -5
  111. package/front_end/panels/sources/ScopeChainSidebarPane.ts +169 -106
  112. package/front_end/panels/timeline/components/IgnoreListSetting.ts +1 -0
  113. package/front_end/third_party/chromium/README.chromium +1 -1
  114. package/front_end/third_party/lighthouse/lighthouse-dt-bundle.js +2 -2
  115. package/front_end/third_party/marked/README.chromium +3 -6
  116. package/front_end/third_party/marked/package/README.md +5 -5
  117. package/front_end/third_party/marked/package/bin/main.js +27 -22
  118. package/front_end/third_party/marked/package/bin/marked.js +2 -1
  119. package/front_end/third_party/marked/package/lib/marked.esm.d.ts +346 -256
  120. package/front_end/third_party/marked/package/lib/marked.esm.js +67 -2698
  121. package/front_end/third_party/marked/package/lib/marked.esm.js.map +7 -1
  122. package/front_end/third_party/marked/package/lib/marked.umd.js +69 -2722
  123. package/front_end/third_party/marked/package/lib/marked.umd.js.map +7 -1
  124. package/front_end/third_party/marked/package/man/marked.1 +4 -2
  125. package/front_end/third_party/marked/package/man/marked.1.md +2 -1
  126. package/front_end/third_party/marked/package/package.json +49 -57
  127. package/front_end/third_party/puppeteer-replay/README.chromium +2 -2
  128. package/front_end/third_party/puppeteer-replay/package/lib/cli.js +84 -80
  129. package/front_end/third_party/puppeteer-replay/package/lib/cli.js.map +1 -1
  130. package/front_end/third_party/puppeteer-replay/package/lib/extension-test.js +79 -83
  131. package/front_end/third_party/puppeteer-replay/package/lib/extension-test.js.map +1 -1
  132. package/front_end/third_party/puppeteer-replay/package/lib/main.d.ts +43 -171
  133. package/front_end/third_party/puppeteer-replay/package/lib/main.js +51 -206
  134. package/front_end/third_party/puppeteer-replay/package/lib/main.js.map +1 -1
  135. package/front_end/third_party/puppeteer-replay/package/package.json +37 -67
  136. package/front_end/tsconfig.json +1 -1
  137. package/front_end/ui/components/markdown_view/CodeBlock.ts +17 -6
  138. package/front_end/ui/components/markdown_view/MarkdownView.ts +39 -3
  139. package/front_end/ui/components/markdown_view/codeBlock.css +11 -0
  140. package/front_end/ui/components/markdown_view/markdownView.css +17 -0
  141. package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +0 -79
  142. package/front_end/ui/legacy/components/object_ui/RemoteObjectPreviewFormatter.ts +16 -4
  143. package/front_end/ui/visual_logging/KnownContextValues.ts +4 -0
  144. package/inspector_overlay/testing/InspectorOverlayHelpers.ts +2 -0
  145. package/mcp/mcp.ts +1 -6
  146. package/package.json +14 -16
  147. package/front_end/models/ai_assistance/agents/BreakpointDebuggerAgent.ts +0 -1015
  148. package/front_end/models/ai_assistance/agents/BreakpointDebuggerAgentOverlay.ts +0 -87
  149. package/front_end/third_party/marked/package/bin/marked +0 -215
  150. package/front_end/third_party/marked/package/lib/marked.cjs +0 -2726
  151. package/front_end/third_party/marked/package/lib/marked.cjs.map +0 -1
  152. package/front_end/third_party/marked/package/lib/marked.d.cts +0 -670
  153. package/front_end/third_party/marked/package/lib/marked.js +0 -2780
  154. package/front_end/third_party/marked/package/man/marked.1.txt +0 -86
  155. package/front_end/third_party/marked/package/marked.min.js +0 -6
  156. package/front_end/third_party/marked/package/src/Lexer.js +0 -492
  157. package/front_end/third_party/marked/package/src/Parser.js +0 -286
  158. package/front_end/third_party/marked/package/src/Renderer.js +0 -166
  159. package/front_end/third_party/marked/package/src/Slugger.js +0 -49
  160. package/front_end/third_party/marked/package/src/TextRenderer.js +0 -42
  161. package/front_end/third_party/marked/package/src/Tokenizer.js +0 -755
  162. package/front_end/third_party/marked/package/src/defaults.js +0 -29
  163. package/front_end/third_party/marked/package/src/helpers.js +0 -249
  164. package/front_end/third_party/marked/package/src/marked.js +0 -350
  165. package/front_end/third_party/marked/package/src/rules.js +0 -285
  166. package/front_end/third_party/puppeteer-replay/package/lib/cjs/main.cjs +0 -2099
  167. package/front_end/third_party/puppeteer-replay/package/lib/cjs/main.cjs.map +0 -1
  168. package/front_end/third_party/puppeteer-replay/package/lib/cjs/main.d.cts +0 -686
  169. package/front_end/third_party/puppeteer-replay/package/lib/cjs/main.d.ts +0 -35
  170. package/mcp/HostBindings.ts +0 -319
  171. /package/front_end/third_party/marked/package/{LICENSE.md → LICENSE} +0 -0
@@ -1,686 +0,0 @@
1
- import { Browser, Page } from 'puppeteer';
2
- import * as lighthouse from 'lighthouse';
3
-
4
- type ExcludeType<T, U> = {
5
- [K in keyof T]-?: T[K] extends U ? K : never;
6
- }[keyof T];
7
- type PickType<T, U> = Pick<T, ExcludeType<T, U>>;
8
- type JSONValue = null | string | number | boolean | JSONObject | JSONArray;
9
- interface JSONObject {
10
- [key: string]: JSONValue;
11
- }
12
- type JSONArray = JSONValue[];
13
- type JSONSerializable<Object extends object> = PickType<Object, JSONValue>;
14
-
15
- /**
16
- Copyright 2022 Google LLC
17
-
18
- Licensed under the Apache License, Version 2.0 (the "License");
19
- you may not use this file except in compliance with the License.
20
- You may obtain a copy of the License at
21
-
22
- https://www.apache.org/licenses/LICENSE-2.0
23
-
24
- Unless required by applicable law or agreed to in writing, software
25
- distributed under the License is distributed on an "AS IS" BASIS,
26
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
27
- See the License for the specific language governing permissions and
28
- limitations under the License.
29
- */
30
-
31
- type Target = string;
32
- type Pattern = string;
33
- type Selector = string | string[];
34
- type FrameSelector = number[];
35
- declare enum SelectorType {
36
- CSS = "css",
37
- ARIA = "aria",
38
- Text = "text",
39
- XPath = "xpath",
40
- Pierce = "pierce"
41
- }
42
- declare enum StepType {
43
- Change = "change",
44
- Click = "click",
45
- Close = "close",
46
- CustomStep = "customStep",
47
- DoubleClick = "doubleClick",
48
- EmulateNetworkConditions = "emulateNetworkConditions",
49
- Hover = "hover",
50
- KeyDown = "keyDown",
51
- KeyUp = "keyUp",
52
- Navigate = "navigate",
53
- Scroll = "scroll",
54
- SetViewport = "setViewport",
55
- WaitForElement = "waitForElement",
56
- WaitForExpression = "waitForExpression"
57
- }
58
- declare enum AssertedEventType {
59
- Navigation = "navigation"
60
- }
61
- interface NavigationEvent {
62
- type: AssertedEventType.Navigation;
63
- url?: Pattern;
64
- title?: Pattern;
65
- }
66
- type AssertedEvent = NavigationEvent;
67
- interface BaseStep {
68
- type: StepType;
69
- timeout?: number;
70
- assertedEvents?: AssertedEvent[];
71
- }
72
- interface StepWithTarget extends BaseStep {
73
- /**
74
- * Defaults to main
75
- */
76
- target?: Target;
77
- }
78
- interface StepWithFrame extends StepWithTarget {
79
- /**
80
- * Defaults to main frame
81
- */
82
- frame?: FrameSelector;
83
- }
84
- interface StepWithSelectors extends StepWithFrame {
85
- /**
86
- * A list of alternative selectors that lead to selection of a single element
87
- * to perform the step on. Currently, we support CSS selectors, ARIA selectors
88
- * (start with 'aria/'), XPath selectors (start with `xpath/`) and text
89
- * selectors (start with `text/`). Each selector could be a string or an array
90
- * of strings. If it's a string, it means that the selector points directly to
91
- * the target element. If it's an array, the last element is the selector for
92
- * the target element and the preceding selectors point to the ancestor
93
- * elements. If the parent element is a shadow root host, the subsequent
94
- * selector is evaluated only against the shadow DOM of the host (i.e.,
95
- * `parent.shadowRoot.querySelector`). If the parent element is not a shadow
96
- * root host, the subsequent selector is evaluated in the regular DOM (i.e.,
97
- * `parent.querySelector`).
98
- *
99
- * During the execution, it's recommended that the implementation tries out
100
- * all of the alternative selectors to improve reliability of the replay as
101
- * some selectors might get outdated over time.
102
- */
103
- selectors: Selector[];
104
- }
105
- type PointerDeviceType = 'mouse' | 'pen' | 'touch';
106
- type PointerButtonType = 'primary' | 'auxiliary' | 'secondary' | 'back' | 'forward';
107
- interface ClickAttributes {
108
- /**
109
- * Pointer type for the event. Defaults to 'mouse'.
110
- */
111
- deviceType?: PointerDeviceType;
112
- /**
113
- * Defaults to 'primary' if the device type is a mouse.
114
- */
115
- button?: PointerButtonType;
116
- /**
117
- * in px, relative to the top-left corner of the element content box. Defaults
118
- * to the center of the element
119
- */
120
- offsetX: number;
121
- /**
122
- * in px, relative to the top-left corner of the element content box. Defaults
123
- * to the center of the element
124
- */
125
- offsetY: number;
126
- /**
127
- * Delay (in ms) between the mouse up and mouse down of the click.
128
- *
129
- * @defaultValue `50`
130
- */
131
- duration?: number;
132
- }
133
- interface DoubleClickStep extends ClickAttributes, StepWithSelectors {
134
- type: StepType.DoubleClick;
135
- }
136
- interface ClickStep extends ClickAttributes, StepWithSelectors {
137
- type: StepType.Click;
138
- }
139
- interface HoverStep extends StepWithSelectors {
140
- type: StepType.Hover;
141
- }
142
- interface ChangeStep extends StepWithSelectors {
143
- type: StepType.Change;
144
- value: string;
145
- }
146
- interface EmulateNetworkConditionsStep extends StepWithTarget {
147
- type: StepType.EmulateNetworkConditions;
148
- download: number;
149
- upload: number;
150
- latency: number;
151
- }
152
- interface KeyDownStep extends StepWithTarget {
153
- type: StepType.KeyDown;
154
- key: Key;
155
- }
156
- interface KeyUpStep extends StepWithTarget {
157
- type: StepType.KeyUp;
158
- key: Key;
159
- }
160
- interface CloseStep extends StepWithTarget {
161
- type: StepType.Close;
162
- }
163
- interface SetViewportStep extends StepWithTarget {
164
- type: StepType.SetViewport;
165
- width: number;
166
- height: number;
167
- deviceScaleFactor: number;
168
- isMobile: boolean;
169
- hasTouch: boolean;
170
- isLandscape: boolean;
171
- }
172
- interface ScrollPageStep extends StepWithFrame {
173
- type: StepType.Scroll;
174
- /**
175
- * Absolute scroll x position in px. Defaults to 0
176
- */
177
- x?: number;
178
- /**
179
- * Absolute scroll y position in px. Defaults to 0
180
- */
181
- y?: number;
182
- }
183
- type ScrollElementStep = ScrollPageStep & StepWithSelectors;
184
- type ScrollStep = ScrollPageStep | ScrollElementStep;
185
- interface NavigateStep extends StepWithTarget {
186
- type: StepType.Navigate;
187
- url: string;
188
- }
189
- interface CustomStepParams {
190
- type: StepType.CustomStep;
191
- name: string;
192
- parameters: unknown;
193
- }
194
- type CustomStep = (CustomStepParams & StepWithTarget) | (CustomStepParams & StepWithFrame);
195
- type UserStep = ChangeStep | ClickStep | HoverStep | CloseStep | CustomStep | DoubleClickStep | EmulateNetworkConditionsStep | KeyDownStep | KeyUpStep | NavigateStep | ScrollStep | SetViewportStep;
196
- /**
197
- * `waitForElement` allows waiting for the presence (or absence) of the number
198
- * of elements identified by the selector.
199
- *
200
- * For example, the following step would wait for less than three elements
201
- * to be on the page that match the selector `.my-class`.
202
- *
203
- * ```
204
- * {
205
- * "type": "waitForElement",
206
- * "selectors": [".my-class"],
207
- * "operator": "<=",
208
- * "count": 2,
209
- * }
210
- * ```
211
- */
212
- interface WaitForElementStep extends StepWithSelectors {
213
- type: StepType.WaitForElement;
214
- /**
215
- * @defaultValue `'=='`
216
- */
217
- operator?: '>=' | '==' | '<=';
218
- /**
219
- * @defaultValue `1`
220
- */
221
- count?: number;
222
- /**
223
- * Whether to wait for elements matching this step to be hidden. This can be
224
- * thought of as an inversion of this step.
225
- *
226
- * @defaultValue `true`
227
- */
228
- visible?: boolean;
229
- /**
230
- * Whether to also check the element(s) for the given properties.
231
- */
232
- properties?: Partial<JSONSerializable<HTMLElement>> & {
233
- [key: string]: JSONValue;
234
- };
235
- /**
236
- * Whether to also check the element(s) for the given attributes.
237
- */
238
- attributes?: {
239
- [name: string]: string;
240
- };
241
- }
242
- /**
243
- * `waitForExpression` allows for a JavaScript expression to resolve to truthy
244
- * value.
245
- *
246
- * For example, the following step pauses for two seconds and then resolves to
247
- * true allowing the replay to continue.
248
- *
249
- * ```
250
- * {
251
- * "type": "waitForExpression",
252
- * "expression": "new Promise(resolve => setTimeout(() => resolve(true),
253
- * 2000))",
254
- * }
255
- * ```
256
- */
257
- interface WaitForExpressionStep extends StepWithFrame {
258
- type: StepType.WaitForExpression;
259
- expression: string;
260
- }
261
- type AssertionStep = WaitForElementStep | WaitForExpressionStep;
262
- type Step = UserStep | AssertionStep;
263
- interface UserFlow {
264
- /**
265
- * Human-readble title describing the recorder user flow.
266
- */
267
- title: string;
268
- /**
269
- * Timeout in milliseconds.
270
- */
271
- timeout?: number;
272
- /**
273
- * The name of the attribute to use to generate selectors instead of regular
274
- * CSS selectors. For example, specifying `data-testid` would generate the
275
- * selector `[data-testid=value]` for the element `<div data-testid=value>`.
276
- */
277
- selectorAttribute?: string;
278
- steps: Step[];
279
- }
280
- type Key = '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | 'Power' | 'Eject' | 'Abort' | 'Help' | 'Backspace' | 'Tab' | 'Numpad5' | 'NumpadEnter' | 'Enter' | '\r' | '\n' | 'ShiftLeft' | 'ShiftRight' | 'ControlLeft' | 'ControlRight' | 'AltLeft' | 'AltRight' | 'Pause' | 'CapsLock' | 'Escape' | 'Convert' | 'NonConvert' | 'Space' | 'Numpad9' | 'PageUp' | 'Numpad3' | 'PageDown' | 'End' | 'Numpad1' | 'Home' | 'Numpad7' | 'ArrowLeft' | 'Numpad4' | 'Numpad8' | 'ArrowUp' | 'ArrowRight' | 'Numpad6' | 'Numpad2' | 'ArrowDown' | 'Select' | 'Open' | 'PrintScreen' | 'Insert' | 'Numpad0' | 'Delete' | 'NumpadDecimal' | 'Digit0' | 'Digit1' | 'Digit2' | 'Digit3' | 'Digit4' | 'Digit5' | 'Digit6' | 'Digit7' | 'Digit8' | 'Digit9' | 'KeyA' | 'KeyB' | 'KeyC' | 'KeyD' | 'KeyE' | 'KeyF' | 'KeyG' | 'KeyH' | 'KeyI' | 'KeyJ' | 'KeyK' | 'KeyL' | 'KeyM' | 'KeyN' | 'KeyO' | 'KeyP' | 'KeyQ' | 'KeyR' | 'KeyS' | 'KeyT' | 'KeyU' | 'KeyV' | 'KeyW' | 'KeyX' | 'KeyY' | 'KeyZ' | 'MetaLeft' | 'MetaRight' | 'ContextMenu' | 'NumpadMultiply' | 'NumpadAdd' | 'NumpadSubtract' | 'NumpadDivide' | 'F1' | 'F2' | 'F3' | 'F4' | 'F5' | 'F6' | 'F7' | 'F8' | 'F9' | 'F10' | 'F11' | 'F12' | 'F13' | 'F14' | 'F15' | 'F16' | 'F17' | 'F18' | 'F19' | 'F20' | 'F21' | 'F22' | 'F23' | 'F24' | 'NumLock' | 'ScrollLock' | 'AudioVolumeMute' | 'AudioVolumeDown' | 'AudioVolumeUp' | 'MediaTrackNext' | 'MediaTrackPrevious' | 'MediaStop' | 'MediaPlayPause' | 'Semicolon' | 'Equal' | 'NumpadEqual' | 'Comma' | 'Minus' | 'Period' | 'Slash' | 'Backquote' | 'BracketLeft' | 'Backslash' | 'BracketRight' | 'Quote' | 'AltGraph' | 'Props' | 'Cancel' | 'Clear' | 'Shift' | 'Control' | 'Alt' | 'Accept' | 'ModeChange' | ' ' | 'Print' | 'Execute' | '\u0000' | 'a' | 'b' | 'c' | 'd' | 'e' | 'f' | 'g' | 'h' | 'i' | 'j' | 'k' | 'l' | 'm' | 'n' | 'o' | 'p' | 'q' | 'r' | 's' | 't' | 'u' | 'v' | 'w' | 'x' | 'y' | 'z' | 'Meta' | '*' | '+' | '-' | '/' | ';' | '=' | ',' | '.' | '`' | '[' | '\\' | ']' | "'" | 'Attn' | 'CrSel' | 'ExSel' | 'EraseEof' | 'Play' | 'ZoomOut' | ')' | '!' | '@' | '#' | '$' | '%' | '^' | '&' | '(' | 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z' | ':' | '<' | '_' | '>' | '?' | '~' | '{' | '|' | '}' | '"' | 'SoftLeft' | 'SoftRight' | 'Camera' | 'Call' | 'EndCall' | 'VolumeDown' | 'VolumeUp';
281
-
282
- type Schema_AssertedEvent = AssertedEvent;
283
- type Schema_AssertedEventType = AssertedEventType;
284
- declare const Schema_AssertedEventType: typeof AssertedEventType;
285
- type Schema_AssertionStep = AssertionStep;
286
- type Schema_BaseStep = BaseStep;
287
- type Schema_ChangeStep = ChangeStep;
288
- type Schema_ClickAttributes = ClickAttributes;
289
- type Schema_ClickStep = ClickStep;
290
- type Schema_CloseStep = CloseStep;
291
- type Schema_CustomStep = CustomStep;
292
- type Schema_CustomStepParams = CustomStepParams;
293
- type Schema_DoubleClickStep = DoubleClickStep;
294
- type Schema_EmulateNetworkConditionsStep = EmulateNetworkConditionsStep;
295
- type Schema_FrameSelector = FrameSelector;
296
- type Schema_HoverStep = HoverStep;
297
- type Schema_Key = Key;
298
- type Schema_KeyDownStep = KeyDownStep;
299
- type Schema_KeyUpStep = KeyUpStep;
300
- type Schema_NavigateStep = NavigateStep;
301
- type Schema_NavigationEvent = NavigationEvent;
302
- type Schema_Pattern = Pattern;
303
- type Schema_PointerButtonType = PointerButtonType;
304
- type Schema_PointerDeviceType = PointerDeviceType;
305
- type Schema_ScrollElementStep = ScrollElementStep;
306
- type Schema_ScrollPageStep = ScrollPageStep;
307
- type Schema_ScrollStep = ScrollStep;
308
- type Schema_Selector = Selector;
309
- type Schema_SelectorType = SelectorType;
310
- declare const Schema_SelectorType: typeof SelectorType;
311
- type Schema_SetViewportStep = SetViewportStep;
312
- type Schema_Step = Step;
313
- type Schema_StepType = StepType;
314
- declare const Schema_StepType: typeof StepType;
315
- type Schema_StepWithFrame = StepWithFrame;
316
- type Schema_StepWithSelectors = StepWithSelectors;
317
- type Schema_StepWithTarget = StepWithTarget;
318
- type Schema_Target = Target;
319
- type Schema_UserFlow = UserFlow;
320
- type Schema_UserStep = UserStep;
321
- type Schema_WaitForElementStep = WaitForElementStep;
322
- type Schema_WaitForExpressionStep = WaitForExpressionStep;
323
- declare namespace Schema {
324
- export { type Schema_AssertedEvent as AssertedEvent, Schema_AssertedEventType as AssertedEventType, type Schema_AssertionStep as AssertionStep, type Schema_BaseStep as BaseStep, type Schema_ChangeStep as ChangeStep, type Schema_ClickAttributes as ClickAttributes, type Schema_ClickStep as ClickStep, type Schema_CloseStep as CloseStep, type Schema_CustomStep as CustomStep, type Schema_CustomStepParams as CustomStepParams, type Schema_DoubleClickStep as DoubleClickStep, type Schema_EmulateNetworkConditionsStep as EmulateNetworkConditionsStep, type Schema_FrameSelector as FrameSelector, type Schema_HoverStep as HoverStep, type Schema_Key as Key, type Schema_KeyDownStep as KeyDownStep, type Schema_KeyUpStep as KeyUpStep, type Schema_NavigateStep as NavigateStep, type Schema_NavigationEvent as NavigationEvent, type Schema_Pattern as Pattern, type Schema_PointerButtonType as PointerButtonType, type Schema_PointerDeviceType as PointerDeviceType, type Schema_ScrollElementStep as ScrollElementStep, type Schema_ScrollPageStep as ScrollPageStep, type Schema_ScrollStep as ScrollStep, type Schema_Selector as Selector, Schema_SelectorType as SelectorType, type Schema_SetViewportStep as SetViewportStep, type Schema_Step as Step, Schema_StepType as StepType, type Schema_StepWithFrame as StepWithFrame, type Schema_StepWithSelectors as StepWithSelectors, type Schema_StepWithTarget as StepWithTarget, type Schema_Target as Target, type Schema_UserFlow as UserFlow, type Schema_UserStep as UserStep, type Schema_WaitForElementStep as WaitForElementStep, type Schema_WaitForExpressionStep as WaitForExpressionStep };
325
- }
326
-
327
- /**
328
- Copyright 2022 Google LLC
329
-
330
- Licensed under the Apache License, Version 2.0 (the "License");
331
- you may not use this file except in compliance with the License.
332
- You may obtain a copy of the License at
333
-
334
- https://www.apache.org/licenses/LICENSE-2.0
335
-
336
- Unless required by applicable law or agreed to in writing, software
337
- distributed under the License is distributed on an "AS IS" BASIS,
338
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
339
- See the License for the specific language governing permissions and
340
- limitations under the License.
341
- */
342
-
343
- declare function assertAllStepTypesAreHandled(s: never): never;
344
- declare const typeableInputTypes: ReadonlySet<string>;
345
- declare const pointerDeviceTypes: ReadonlySet<string>;
346
- declare const mouseButtonMap: ReadonlyMap<string, 'left' | 'middle' | 'right' | 'back' | 'forward'>;
347
- declare function parseStep(step: unknown, idx?: number): Step;
348
- declare const minTimeout = 1;
349
- declare const maxTimeout = 30000;
350
- declare function validTimeout(timeout: number): boolean;
351
- declare function parse(data: unknown): UserFlow;
352
- /**
353
- * Detects what type of a selector the string contains. For example,
354
- * `aria/Label` is a SelectorType.ARIA.
355
- *
356
- * Note that CSS selectors are special and usually don't require a prefix,
357
- * therefore, SelectorType.CSS is the default type if other types didn't match.
358
- */
359
- declare function getSelectorType(selector: string): SelectorType;
360
- /**
361
- * Converts a selector or an array of selector parts into a Puppeteer selector.
362
- *
363
- * @see https://pptr.dev/guides/query-selectors#p-elements
364
- */
365
- declare function selectorToPElementSelector(selector: string[] | string): string;
366
-
367
- /**
368
- Copyright 2022 Google LLC
369
-
370
- Licensed under the Apache License, Version 2.0 (the "License");
371
- you may not use this file except in compliance with the License.
372
- You may obtain a copy of the License at
373
-
374
- https://www.apache.org/licenses/LICENSE-2.0
375
-
376
- Unless required by applicable law or agreed to in writing, software
377
- distributed under the License is distributed on an "AS IS" BASIS,
378
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
379
- See the License for the specific language governing permissions and
380
- limitations under the License.
381
- */
382
- interface LineWriter {
383
- appendLine(line: string): LineWriter;
384
- startBlock(): LineWriter;
385
- endBlock(): LineWriter;
386
- getIndent(): string;
387
- getSize(): number;
388
- }
389
-
390
- /**
391
- Copyright 2022 Google LLC
392
-
393
- Licensed under the Apache License, Version 2.0 (the "License");
394
- you may not use this file except in compliance with the License.
395
- You may obtain a copy of the License at
396
-
397
- https://www.apache.org/licenses/LICENSE-2.0
398
-
399
- Unless required by applicable law or agreed to in writing, software
400
- distributed under the License is distributed on an "AS IS" BASIS,
401
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
402
- See the License for the specific language governing permissions and
403
- limitations under the License.
404
- */
405
-
406
- declare class StringifyExtension {
407
- beforeAllSteps?(out: LineWriter, flow: UserFlow): Promise<void>;
408
- afterAllSteps?(out: LineWriter, flow: UserFlow): Promise<void>;
409
- beforeEachStep?(out: LineWriter, step: Step, flow?: UserFlow): Promise<void>;
410
- stringifyStep(out: LineWriter, step: Step, flow?: UserFlow): Promise<void>;
411
- afterEachStep?(out: LineWriter, step: Step, flow?: UserFlow): Promise<void>;
412
- }
413
-
414
- /**
415
- Copyright 2022 Google LLC
416
-
417
- Licensed under the Apache License, Version 2.0 (the "License");
418
- you may not use this file except in compliance with the License.
419
- You may obtain a copy of the License at
420
-
421
- https://www.apache.org/licenses/LICENSE-2.0
422
-
423
- Unless required by applicable law or agreed to in writing, software
424
- distributed under the License is distributed on an "AS IS" BASIS,
425
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
426
- See the License for the specific language governing permissions and
427
- limitations under the License.
428
- */
429
-
430
- /**
431
- * Stringifies a user flow to JSON with source maps.
432
- *
433
- * You probably want to strip the source map because not all
434
- * parsers support comments in JSON.
435
- */
436
- declare class JSONStringifyExtension extends StringifyExtension {
437
- beforeAllSteps(out: LineWriter, flow: UserFlow): Promise<void>;
438
- afterAllSteps(out: LineWriter): Promise<void>;
439
- stringifyStep(out: LineWriter, step: Step, flow?: UserFlow): Promise<void>;
440
- }
441
-
442
- /**
443
- Copyright 2022 Google LLC
444
-
445
- Licensed under the Apache License, Version 2.0 (the "License");
446
- you may not use this file except in compliance with the License.
447
- You may obtain a copy of the License at
448
-
449
- https://www.apache.org/licenses/LICENSE-2.0
450
-
451
- Unless required by applicable law or agreed to in writing, software
452
- distributed under the License is distributed on an "AS IS" BASIS,
453
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
454
- See the License for the specific language governing permissions and
455
- limitations under the License.
456
- */
457
-
458
- interface StringifyOptions {
459
- extension?: StringifyExtension;
460
- writer?: LineWriter;
461
- indentation?: string;
462
- }
463
- /**
464
- * The format is [version, [lineNo, length], [lineNo, length] ... [lineNo, length]].
465
- */
466
- type SourceMap = Array<number>;
467
- /**
468
- * Stringifes an entire recording. The following hooks are invoked with the `flow` parameter containing the entire flow:
469
- * - `beforeAllSteps` (once)
470
- * - `beforeEachStep` (per step)
471
- * - `stringifyStep` (per step)
472
- * - `afterEachStep` (per step)
473
- * - `afterAllSteps` (once)
474
- */
475
- declare function stringify(flow: UserFlow, opts?: StringifyOptions): Promise<string>;
476
- /**
477
- * Stringifes a single step. Only the following hooks are invoked with the `flow` parameter as undefined:
478
- * - `beforeEachStep`
479
- * - `stringifyStep`
480
- * - `afterEachStep`
481
- */
482
- declare function stringifyStep(step: Step, opts?: StringifyOptions): Promise<string>;
483
- /**
484
- * Extracts a source map from a text.
485
- */
486
- declare function parseSourceMap(text: string): SourceMap | undefined;
487
- declare function stripSourceMap(text: string): string;
488
-
489
- /**
490
- Copyright 2022 Google LLC
491
-
492
- Licensed under the Apache License, Version 2.0 (the "License");
493
- you may not use this file except in compliance with the License.
494
- You may obtain a copy of the License at
495
-
496
- https://www.apache.org/licenses/LICENSE-2.0
497
-
498
- Unless required by applicable law or agreed to in writing, software
499
- distributed under the License is distributed on an "AS IS" BASIS,
500
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
501
- See the License for the specific language governing permissions and
502
- limitations under the License.
503
- */
504
-
505
- declare class RunnerExtension {
506
- beforeAllSteps?(flow?: UserFlow): Promise<void>;
507
- afterAllSteps?(flow?: UserFlow): Promise<void>;
508
- beforeEachStep?(step: Step, flow?: UserFlow): Promise<void>;
509
- runStep(step: Step, flow?: UserFlow): Promise<void>;
510
- afterEachStep?(step: Step, flow?: UserFlow): Promise<void>;
511
- }
512
-
513
- /**
514
- Copyright 2022 Google LLC
515
-
516
- Licensed under the Apache License, Version 2.0 (the "License");
517
- you may not use this file except in compliance with the License.
518
- You may obtain a copy of the License at
519
-
520
- https://www.apache.org/licenses/LICENSE-2.0
521
-
522
- Unless required by applicable law or agreed to in writing, software
523
- distributed under the License is distributed on an "AS IS" BASIS,
524
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
525
- See the License for the specific language governing permissions and
526
- limitations under the License.
527
- */
528
-
529
- declare class Runner {
530
- #private;
531
- abort(): void;
532
- set flow(flow: UserFlow);
533
- runBeforeAllSteps(flow?: UserFlow): Promise<void>;
534
- runAfterAllSteps(flow?: UserFlow): Promise<void>;
535
- /**
536
- * Runs the provided `step` with `beforeEachStep` and `afterEachStep` hooks.
537
- * Parameters from the `flow` apply if the `flow` is set.
538
- */
539
- runStep(step: Step): Promise<void>;
540
- /**
541
- * Run all the steps in the flow
542
- * @returns whether all the steps are run or the execution is aborted
543
- */
544
- run(): Promise<boolean>;
545
- }
546
- declare function createRunner(): Promise<Runner>;
547
- declare function createRunner(flow: UserFlow): Promise<Runner>;
548
- declare function createRunner(extension: RunnerExtension): Promise<Runner>;
549
- declare function createRunner(flow: UserFlow, extension: RunnerExtension): Promise<Runner>;
550
-
551
- /**
552
- Copyright 2022 Google LLC
553
-
554
- Licensed under the Apache License, Version 2.0 (the "License");
555
- you may not use this file except in compliance with the License.
556
- You may obtain a copy of the License at
557
-
558
- https://www.apache.org/licenses/LICENSE-2.0
559
-
560
- Unless required by applicable law or agreed to in writing, software
561
- distributed under the License is distributed on an "AS IS" BASIS,
562
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
563
- See the License for the specific language governing permissions and
564
- limitations under the License.
565
- */
566
-
567
- declare class PuppeteerRunnerExtension extends RunnerExtension {
568
- #private;
569
- protected browser: Browser;
570
- protected page: Page;
571
- protected timeout: number;
572
- constructor(browser: Browser, page: Page, opts?: {
573
- timeout?: number;
574
- });
575
- runStep(step: Step, flow?: UserFlow): Promise<void>;
576
- }
577
- declare class PuppeteerRunnerOwningBrowserExtension extends PuppeteerRunnerExtension {
578
- afterAllSteps(): Promise<void>;
579
- }
580
-
581
- /**
582
- Copyright 2022 Google LLC
583
-
584
- Licensed under the Apache License, Version 2.0 (the "License");
585
- you may not use this file except in compliance with the License.
586
- You may obtain a copy of the License at
587
-
588
- https://www.apache.org/licenses/LICENSE-2.0
589
-
590
- Unless required by applicable law or agreed to in writing, software
591
- distributed under the License is distributed on an "AS IS" BASIS,
592
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
593
- See the License for the specific language governing permissions and
594
- limitations under the License.
595
- */
596
-
597
- type TargetBrowser = 'chrome' | 'firefox';
598
- declare class PuppeteerStringifyExtension extends StringifyExtension {
599
- #private;
600
- constructor(targetBrowser?: TargetBrowser);
601
- beforeAllSteps(out: LineWriter, flow: UserFlow): Promise<void>;
602
- afterAllSteps(out: LineWriter, flow: UserFlow): Promise<void>;
603
- stringifyStep(out: LineWriter, step: Step, flow: UserFlow): Promise<void>;
604
- }
605
-
606
- /**
607
- Copyright 2022 Google LLC
608
-
609
- Licensed under the Apache License, Version 2.0 (the "License");
610
- you may not use this file except in compliance with the License.
611
- You may obtain a copy of the License at
612
-
613
- https://www.apache.org/licenses/LICENSE-2.0
614
-
615
- Unless required by applicable law or agreed to in writing, software
616
- distributed under the License is distributed on an "AS IS" BASIS,
617
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
618
- See the License for the specific language governing permissions and
619
- limitations under the License.
620
- */
621
-
622
- /**
623
- * Stringifies a user flow to a script that uses \@puppeteer/replay's own API.
624
- */
625
- declare class PuppeteerReplayStringifyExtension extends StringifyExtension {
626
- beforeAllSteps(out: LineWriter): Promise<void>;
627
- afterAllSteps(out: LineWriter): Promise<void>;
628
- stringifyStep(out: LineWriter, step: Step): Promise<void>;
629
- }
630
-
631
- /**
632
- Copyright 2022 Google LLC
633
-
634
- Licensed under the Apache License, Version 2.0 (the "License");
635
- you may not use this file except in compliance with the License.
636
- You may obtain a copy of the License at
637
-
638
- https://www.apache.org/licenses/LICENSE-2.0
639
-
640
- Unless required by applicable law or agreed to in writing, software
641
- distributed under the License is distributed on an "AS IS" BASIS,
642
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
643
- See the License for the specific language governing permissions and
644
- limitations under the License.
645
- */
646
-
647
- declare class LighthouseStringifyExtension extends PuppeteerStringifyExtension {
648
- #private;
649
- beforeAllSteps(out: LineWriter, flow: UserFlow): Promise<void>;
650
- stringifyStep(out: LineWriter, step: Step, flow: UserFlow): Promise<void>;
651
- afterAllSteps(out: LineWriter, flow: UserFlow): Promise<void>;
652
- }
653
-
654
- declare class LighthouseRunnerExtension extends PuppeteerRunnerExtension {
655
- #private;
656
- createFlowResult(): Promise<lighthouse.FlowResult>;
657
- beforeAllSteps(flow: UserFlow): Promise<void>;
658
- beforeEachStep(step: Step, flow?: UserFlow): Promise<void>;
659
- afterEachStep(step: Step, flow?: UserFlow): Promise<void>;
660
- afterAllSteps(flow: UserFlow): Promise<void>;
661
- }
662
-
663
- /**
664
- Copyright 2022 Google LLC
665
-
666
- Licensed under the Apache License, Version 2.0 (the "License");
667
- you may not use this file except in compliance with the License.
668
- You may obtain a copy of the License at
669
-
670
- https://www.apache.org/licenses/LICENSE-2.0
671
-
672
- Unless required by applicable law or agreed to in writing, software
673
- distributed under the License is distributed on an "AS IS" BASIS,
674
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
675
- See the License for the specific language governing permissions and
676
- limitations under the License.
677
- */
678
- /**
679
- * Copyright (c) 2020 The Chromium Authors. All rights reserved.
680
- * Use of this source code is governed by a BSD-style license that can be
681
- * found in the LICENSE file.
682
- */
683
- declare function formatJSONAsJS(json: unknown, indent: string): string;
684
- declare const formatAsJSLiteral: (content: string) => string;
685
-
686
- export { type AssertedEvent, AssertedEventType, type AssertionStep, type BaseStep, type ChangeStep, type ClickAttributes, type ClickStep, type CloseStep, type CustomStep, type CustomStepParams, type DoubleClickStep, type EmulateNetworkConditionsStep, type FrameSelector, type HoverStep, JSONStringifyExtension, type Key, type KeyDownStep, type KeyUpStep, LighthouseRunnerExtension, LighthouseStringifyExtension, type LineWriter, type NavigateStep, type NavigationEvent, type Pattern, type PointerButtonType, type PointerDeviceType, PuppeteerReplayStringifyExtension, PuppeteerRunnerExtension, PuppeteerRunnerOwningBrowserExtension, PuppeteerStringifyExtension, Runner, RunnerExtension, Schema, type ScrollElementStep, type ScrollPageStep, type ScrollStep, type Selector, SelectorType, type SetViewportStep, type SourceMap, type Step, StepType, type StepWithFrame, type StepWithSelectors, type StepWithTarget, StringifyExtension, type StringifyOptions, type Target, type UserFlow, type UserStep, type WaitForElementStep, type WaitForExpressionStep, assertAllStepTypesAreHandled, createRunner, formatAsJSLiteral, formatJSONAsJS, getSelectorType, maxTimeout, minTimeout, mouseButtonMap, parse, parseSourceMap, parseStep, pointerDeviceTypes, selectorToPElementSelector, stringify, stringifyStep, stripSourceMap, typeableInputTypes, validTimeout };