@midscene/core 0.27.3 → 0.27.4-beta-20250826061259.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/es/agent/agent.mjs.map +1 -1
  2. package/dist/es/agent/common.mjs +0 -0
  3. package/dist/es/agent/index.mjs +3 -3
  4. package/dist/es/agent/tasks.mjs +0 -13
  5. package/dist/es/agent/tasks.mjs.map +1 -1
  6. package/dist/es/agent/ui-utils.mjs +1 -32
  7. package/dist/es/agent/ui-utils.mjs.map +1 -1
  8. package/dist/es/agent/utils.mjs +3 -149
  9. package/dist/es/agent/utils.mjs.map +1 -1
  10. package/dist/es/ai-model/service-caller/index.mjs +1 -1
  11. package/dist/es/ai-model/service-caller/index.mjs.map +1 -1
  12. package/dist/es/device/index.mjs +91 -17
  13. package/dist/es/device/index.mjs.map +1 -1
  14. package/dist/es/types.mjs.map +1 -1
  15. package/dist/es/utils.mjs +2 -2
  16. package/dist/lib/agent/agent.js.map +1 -1
  17. package/dist/lib/agent/common.js +5 -0
  18. package/dist/lib/agent/index.js +2 -8
  19. package/dist/lib/agent/tasks.js +0 -13
  20. package/dist/lib/agent/tasks.js.map +1 -1
  21. package/dist/lib/agent/ui-utils.js +0 -34
  22. package/dist/lib/agent/ui-utils.js.map +1 -1
  23. package/dist/lib/agent/utils.js +1 -150
  24. package/dist/lib/agent/utils.js.map +1 -1
  25. package/dist/lib/ai-model/service-caller/index.js +1 -1
  26. package/dist/lib/ai-model/service-caller/index.js.map +1 -1
  27. package/dist/lib/device/index.js +139 -20
  28. package/dist/lib/device/index.js.map +1 -1
  29. package/dist/lib/types.js.map +1 -1
  30. package/dist/lib/utils.js +2 -2
  31. package/dist/types/agent/agent.d.ts +2 -2
  32. package/dist/types/agent/common.d.ts +0 -0
  33. package/dist/types/agent/index.d.ts +1 -2
  34. package/dist/types/agent/tasks.d.ts +3 -3
  35. package/dist/types/agent/ui-utils.d.ts +0 -4
  36. package/dist/types/agent/utils.d.ts +3 -4
  37. package/dist/types/device/index.d.ts +2240 -46
  38. package/dist/types/types.d.ts +1 -1
  39. package/package.json +3 -3
@@ -1,55 +1,2249 @@
1
- import type { ElementInfo, ElementNode } from '@midscene/shared/extractor';
2
- import type { DeviceAction, Point, Size, UIContext } from '../types';
3
- export declare type KeyInput = '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';
4
- export type MouseButton = 'left' | 'right' | 'middle';
5
- export interface MouseAction {
6
- click: (x: number, y: number, options: {
7
- button: MouseButton;
8
- }) => Promise<void>;
9
- wheel: (deltaX: number, deltaY: number) => Promise<void>;
10
- move: (x: number, y: number) => Promise<void>;
11
- drag: (from: {
12
- x: number;
13
- y: number;
14
- }, to: {
15
- x: number;
16
- y: number;
17
- }) => Promise<void>;
18
- }
19
- export interface KeyboardAction {
20
- type: (text: string) => Promise<void>;
21
- press: (action: {
22
- key: KeyInput;
23
- command?: string;
24
- } | {
25
- key: KeyInput;
26
- command?: string;
27
- }[]) => Promise<void>;
28
- }
29
- export interface ChromePageDestroyOptions {
30
- closeTab?: boolean;
31
- }
32
- export declare abstract class AbstractPage {
1
+ import type { DeviceAction } from '../index';
2
+ import { z } from '../index';
3
+ import type { ElementNode } from '@midscene/shared/extractor';
4
+ import type { Size, UIContext } from '../types';
5
+ export declare abstract class AbstractDevice {
33
6
  abstract pageType: string;
34
- abstract getElementsInfo(): Promise<ElementInfo[]>;
35
7
  abstract getElementsNodeTree(): Promise<ElementNode>;
36
8
  abstract url(): string | Promise<string>;
37
9
  abstract screenshotBase64(): Promise<string>;
38
10
  abstract size(): Promise<Size>;
39
11
  abstract actionSpace(): DeviceAction[] | Promise<DeviceAction[]>;
40
- get mouse(): MouseAction;
41
- get keyboard(): KeyboardAction;
42
- clearInput(element: ElementInfo): Promise<void>;
43
- abstract scrollUntilTop(startingPoint?: Point): Promise<void>;
44
- abstract scrollUntilBottom(startingPoint?: Point): Promise<void>;
45
- abstract scrollUntilLeft(startingPoint?: Point): Promise<void>;
46
- abstract scrollUntilRight(startingPoint?: Point): Promise<void>;
47
- abstract scrollUp(distance?: number, startingPoint?: Point): Promise<void>;
48
- abstract scrollDown(distance?: number, startingPoint?: Point): Promise<void>;
49
- abstract scrollLeft(distance?: number, startingPoint?: Point): Promise<void>;
50
- abstract scrollRight(distance?: number, startingPoint?: Point): Promise<void>;
51
- abstract beforeAction?(): Promise<void>;
52
- abstract destroy(options?: ChromePageDestroyOptions): Promise<void>;
12
+ abstract destroy(): Promise<void>;
53
13
  abstract evaluateJavaScript?<T = any>(script: string): Promise<T>;
14
+ abstract beforeAction?(): Promise<void>;
54
15
  abstract getContext?(): Promise<UIContext>;
55
16
  }
17
+ export declare const defineAction: <TSchema extends z.ZodType>(config: {
18
+ name: string;
19
+ description: string;
20
+ interfaceAlias?: string;
21
+ paramSchema: TSchema;
22
+ call: (param: z.infer<TSchema>) => Promise<void>;
23
+ } & Partial<Omit<DeviceAction<z.infer<TSchema>>, "name" | "description" | "interfaceAlias" | "paramSchema" | "call">>) => DeviceAction<z.infer<TSchema>>;
24
+ export declare const actionTapParamSchema: z.ZodObject<{
25
+ locate: z.ZodObject<{
26
+ midscene_location_field_flag: z.ZodLiteral<true>;
27
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
28
+ prompt: z.ZodString;
29
+ }, "strip", z.ZodTypeAny, {
30
+ prompt: string;
31
+ }, {
32
+ prompt: string;
33
+ }>, z.ZodObject<{
34
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
35
+ name: z.ZodString;
36
+ url: z.ZodString;
37
+ }, "strip", z.ZodTypeAny, {
38
+ name: string;
39
+ url: string;
40
+ }, {
41
+ name: string;
42
+ url: string;
43
+ }>, "many">>>;
44
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
45
+ }, "strip", z.ZodTypeAny, {
46
+ images?: {
47
+ name: string;
48
+ url: string;
49
+ }[] | undefined;
50
+ convertHttpImage2Base64?: boolean | undefined;
51
+ }, {
52
+ images?: {
53
+ name: string;
54
+ url: string;
55
+ }[] | undefined;
56
+ convertHttpImage2Base64?: boolean | undefined;
57
+ }>>]>;
58
+ deepThink: z.ZodOptional<z.ZodBoolean>;
59
+ cacheable: z.ZodOptional<z.ZodBoolean>;
60
+ xpath: z.ZodOptional<z.ZodBoolean>;
61
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
62
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
63
+ left: z.ZodNumber;
64
+ top: z.ZodNumber;
65
+ }, "strip", z.ZodTypeAny, {
66
+ left: number;
67
+ top: number;
68
+ }, {
69
+ left: number;
70
+ top: number;
71
+ }>, z.ZodObject<{
72
+ width: z.ZodNumber;
73
+ height: z.ZodNumber;
74
+ dpr: z.ZodOptional<z.ZodNumber>;
75
+ }, "strip", z.ZodTypeAny, {
76
+ width: number;
77
+ height: number;
78
+ dpr?: number | undefined;
79
+ }, {
80
+ width: number;
81
+ height: number;
82
+ dpr?: number | undefined;
83
+ }>>, z.ZodObject<{
84
+ zoom: z.ZodOptional<z.ZodNumber>;
85
+ }, "strip", z.ZodTypeAny, {
86
+ zoom?: number | undefined;
87
+ }, {
88
+ zoom?: number | undefined;
89
+ }>>;
90
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
91
+ midscene_location_field_flag: z.ZodLiteral<true>;
92
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
93
+ prompt: z.ZodString;
94
+ }, "strip", z.ZodTypeAny, {
95
+ prompt: string;
96
+ }, {
97
+ prompt: string;
98
+ }>, z.ZodObject<{
99
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
100
+ name: z.ZodString;
101
+ url: z.ZodString;
102
+ }, "strip", z.ZodTypeAny, {
103
+ name: string;
104
+ url: string;
105
+ }, {
106
+ name: string;
107
+ url: string;
108
+ }>, "many">>>;
109
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
110
+ }, "strip", z.ZodTypeAny, {
111
+ images?: {
112
+ name: string;
113
+ url: string;
114
+ }[] | undefined;
115
+ convertHttpImage2Base64?: boolean | undefined;
116
+ }, {
117
+ images?: {
118
+ name: string;
119
+ url: string;
120
+ }[] | undefined;
121
+ convertHttpImage2Base64?: boolean | undefined;
122
+ }>>]>;
123
+ deepThink: z.ZodOptional<z.ZodBoolean>;
124
+ cacheable: z.ZodOptional<z.ZodBoolean>;
125
+ xpath: z.ZodOptional<z.ZodBoolean>;
126
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
127
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
128
+ left: z.ZodNumber;
129
+ top: z.ZodNumber;
130
+ }, "strip", z.ZodTypeAny, {
131
+ left: number;
132
+ top: number;
133
+ }, {
134
+ left: number;
135
+ top: number;
136
+ }>, z.ZodObject<{
137
+ width: z.ZodNumber;
138
+ height: z.ZodNumber;
139
+ dpr: z.ZodOptional<z.ZodNumber>;
140
+ }, "strip", z.ZodTypeAny, {
141
+ width: number;
142
+ height: number;
143
+ dpr?: number | undefined;
144
+ }, {
145
+ width: number;
146
+ height: number;
147
+ dpr?: number | undefined;
148
+ }>>, z.ZodObject<{
149
+ zoom: z.ZodOptional<z.ZodNumber>;
150
+ }, "strip", z.ZodTypeAny, {
151
+ zoom?: number | undefined;
152
+ }, {
153
+ zoom?: number | undefined;
154
+ }>>;
155
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
156
+ midscene_location_field_flag: z.ZodLiteral<true>;
157
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
158
+ prompt: z.ZodString;
159
+ }, "strip", z.ZodTypeAny, {
160
+ prompt: string;
161
+ }, {
162
+ prompt: string;
163
+ }>, z.ZodObject<{
164
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
165
+ name: z.ZodString;
166
+ url: z.ZodString;
167
+ }, "strip", z.ZodTypeAny, {
168
+ name: string;
169
+ url: string;
170
+ }, {
171
+ name: string;
172
+ url: string;
173
+ }>, "many">>>;
174
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
175
+ }, "strip", z.ZodTypeAny, {
176
+ images?: {
177
+ name: string;
178
+ url: string;
179
+ }[] | undefined;
180
+ convertHttpImage2Base64?: boolean | undefined;
181
+ }, {
182
+ images?: {
183
+ name: string;
184
+ url: string;
185
+ }[] | undefined;
186
+ convertHttpImage2Base64?: boolean | undefined;
187
+ }>>]>;
188
+ deepThink: z.ZodOptional<z.ZodBoolean>;
189
+ cacheable: z.ZodOptional<z.ZodBoolean>;
190
+ xpath: z.ZodOptional<z.ZodBoolean>;
191
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
192
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
193
+ left: z.ZodNumber;
194
+ top: z.ZodNumber;
195
+ }, "strip", z.ZodTypeAny, {
196
+ left: number;
197
+ top: number;
198
+ }, {
199
+ left: number;
200
+ top: number;
201
+ }>, z.ZodObject<{
202
+ width: z.ZodNumber;
203
+ height: z.ZodNumber;
204
+ dpr: z.ZodOptional<z.ZodNumber>;
205
+ }, "strip", z.ZodTypeAny, {
206
+ width: number;
207
+ height: number;
208
+ dpr?: number | undefined;
209
+ }, {
210
+ width: number;
211
+ height: number;
212
+ dpr?: number | undefined;
213
+ }>>, z.ZodObject<{
214
+ zoom: z.ZodOptional<z.ZodNumber>;
215
+ }, "strip", z.ZodTypeAny, {
216
+ zoom?: number | undefined;
217
+ }, {
218
+ zoom?: number | undefined;
219
+ }>>;
220
+ }, z.ZodTypeAny, "passthrough">>;
221
+ }, "strip", z.ZodTypeAny, {
222
+ locate: {
223
+ prompt: string | ({
224
+ prompt: string;
225
+ } & {
226
+ images?: {
227
+ name: string;
228
+ url: string;
229
+ }[] | undefined;
230
+ convertHttpImage2Base64?: boolean | undefined;
231
+ });
232
+ midscene_location_field_flag: true;
233
+ center: [number, number];
234
+ rect: {
235
+ left: number;
236
+ top: number;
237
+ } & {
238
+ width: number;
239
+ height: number;
240
+ dpr?: number | undefined;
241
+ } & {
242
+ zoom?: number | undefined;
243
+ };
244
+ cacheable?: boolean | undefined;
245
+ deepThink?: boolean | undefined;
246
+ xpath?: boolean | undefined;
247
+ } & {
248
+ [k: string]: unknown;
249
+ };
250
+ }, {
251
+ locate: {
252
+ prompt: string | ({
253
+ prompt: string;
254
+ } & {
255
+ images?: {
256
+ name: string;
257
+ url: string;
258
+ }[] | undefined;
259
+ convertHttpImage2Base64?: boolean | undefined;
260
+ });
261
+ midscene_location_field_flag: true;
262
+ center: [number, number];
263
+ rect: {
264
+ left: number;
265
+ top: number;
266
+ } & {
267
+ width: number;
268
+ height: number;
269
+ dpr?: number | undefined;
270
+ } & {
271
+ zoom?: number | undefined;
272
+ };
273
+ cacheable?: boolean | undefined;
274
+ deepThink?: boolean | undefined;
275
+ xpath?: boolean | undefined;
276
+ } & {
277
+ [k: string]: unknown;
278
+ };
279
+ }>;
280
+ export type ActionTapParam = z.infer<typeof actionTapParamSchema>;
281
+ export declare const defineActionTap: (call: (param: ActionTapParam) => Promise<void>) => DeviceAction<ActionTapParam>;
282
+ export declare const actionRightClickParamSchema: z.ZodObject<{
283
+ locate: z.ZodObject<{
284
+ midscene_location_field_flag: z.ZodLiteral<true>;
285
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
286
+ prompt: z.ZodString;
287
+ }, "strip", z.ZodTypeAny, {
288
+ prompt: string;
289
+ }, {
290
+ prompt: string;
291
+ }>, z.ZodObject<{
292
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
293
+ name: z.ZodString;
294
+ url: z.ZodString;
295
+ }, "strip", z.ZodTypeAny, {
296
+ name: string;
297
+ url: string;
298
+ }, {
299
+ name: string;
300
+ url: string;
301
+ }>, "many">>>;
302
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
303
+ }, "strip", z.ZodTypeAny, {
304
+ images?: {
305
+ name: string;
306
+ url: string;
307
+ }[] | undefined;
308
+ convertHttpImage2Base64?: boolean | undefined;
309
+ }, {
310
+ images?: {
311
+ name: string;
312
+ url: string;
313
+ }[] | undefined;
314
+ convertHttpImage2Base64?: boolean | undefined;
315
+ }>>]>;
316
+ deepThink: z.ZodOptional<z.ZodBoolean>;
317
+ cacheable: z.ZodOptional<z.ZodBoolean>;
318
+ xpath: z.ZodOptional<z.ZodBoolean>;
319
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
320
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
321
+ left: z.ZodNumber;
322
+ top: z.ZodNumber;
323
+ }, "strip", z.ZodTypeAny, {
324
+ left: number;
325
+ top: number;
326
+ }, {
327
+ left: number;
328
+ top: number;
329
+ }>, z.ZodObject<{
330
+ width: z.ZodNumber;
331
+ height: z.ZodNumber;
332
+ dpr: z.ZodOptional<z.ZodNumber>;
333
+ }, "strip", z.ZodTypeAny, {
334
+ width: number;
335
+ height: number;
336
+ dpr?: number | undefined;
337
+ }, {
338
+ width: number;
339
+ height: number;
340
+ dpr?: number | undefined;
341
+ }>>, z.ZodObject<{
342
+ zoom: z.ZodOptional<z.ZodNumber>;
343
+ }, "strip", z.ZodTypeAny, {
344
+ zoom?: number | undefined;
345
+ }, {
346
+ zoom?: number | undefined;
347
+ }>>;
348
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
349
+ midscene_location_field_flag: z.ZodLiteral<true>;
350
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
351
+ prompt: z.ZodString;
352
+ }, "strip", z.ZodTypeAny, {
353
+ prompt: string;
354
+ }, {
355
+ prompt: string;
356
+ }>, z.ZodObject<{
357
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
358
+ name: z.ZodString;
359
+ url: z.ZodString;
360
+ }, "strip", z.ZodTypeAny, {
361
+ name: string;
362
+ url: string;
363
+ }, {
364
+ name: string;
365
+ url: string;
366
+ }>, "many">>>;
367
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
368
+ }, "strip", z.ZodTypeAny, {
369
+ images?: {
370
+ name: string;
371
+ url: string;
372
+ }[] | undefined;
373
+ convertHttpImage2Base64?: boolean | undefined;
374
+ }, {
375
+ images?: {
376
+ name: string;
377
+ url: string;
378
+ }[] | undefined;
379
+ convertHttpImage2Base64?: boolean | undefined;
380
+ }>>]>;
381
+ deepThink: z.ZodOptional<z.ZodBoolean>;
382
+ cacheable: z.ZodOptional<z.ZodBoolean>;
383
+ xpath: z.ZodOptional<z.ZodBoolean>;
384
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
385
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
386
+ left: z.ZodNumber;
387
+ top: z.ZodNumber;
388
+ }, "strip", z.ZodTypeAny, {
389
+ left: number;
390
+ top: number;
391
+ }, {
392
+ left: number;
393
+ top: number;
394
+ }>, z.ZodObject<{
395
+ width: z.ZodNumber;
396
+ height: z.ZodNumber;
397
+ dpr: z.ZodOptional<z.ZodNumber>;
398
+ }, "strip", z.ZodTypeAny, {
399
+ width: number;
400
+ height: number;
401
+ dpr?: number | undefined;
402
+ }, {
403
+ width: number;
404
+ height: number;
405
+ dpr?: number | undefined;
406
+ }>>, z.ZodObject<{
407
+ zoom: z.ZodOptional<z.ZodNumber>;
408
+ }, "strip", z.ZodTypeAny, {
409
+ zoom?: number | undefined;
410
+ }, {
411
+ zoom?: number | undefined;
412
+ }>>;
413
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
414
+ midscene_location_field_flag: z.ZodLiteral<true>;
415
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
416
+ prompt: z.ZodString;
417
+ }, "strip", z.ZodTypeAny, {
418
+ prompt: string;
419
+ }, {
420
+ prompt: string;
421
+ }>, z.ZodObject<{
422
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
423
+ name: z.ZodString;
424
+ url: z.ZodString;
425
+ }, "strip", z.ZodTypeAny, {
426
+ name: string;
427
+ url: string;
428
+ }, {
429
+ name: string;
430
+ url: string;
431
+ }>, "many">>>;
432
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
433
+ }, "strip", z.ZodTypeAny, {
434
+ images?: {
435
+ name: string;
436
+ url: string;
437
+ }[] | undefined;
438
+ convertHttpImage2Base64?: boolean | undefined;
439
+ }, {
440
+ images?: {
441
+ name: string;
442
+ url: string;
443
+ }[] | undefined;
444
+ convertHttpImage2Base64?: boolean | undefined;
445
+ }>>]>;
446
+ deepThink: z.ZodOptional<z.ZodBoolean>;
447
+ cacheable: z.ZodOptional<z.ZodBoolean>;
448
+ xpath: z.ZodOptional<z.ZodBoolean>;
449
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
450
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
451
+ left: z.ZodNumber;
452
+ top: z.ZodNumber;
453
+ }, "strip", z.ZodTypeAny, {
454
+ left: number;
455
+ top: number;
456
+ }, {
457
+ left: number;
458
+ top: number;
459
+ }>, z.ZodObject<{
460
+ width: z.ZodNumber;
461
+ height: z.ZodNumber;
462
+ dpr: z.ZodOptional<z.ZodNumber>;
463
+ }, "strip", z.ZodTypeAny, {
464
+ width: number;
465
+ height: number;
466
+ dpr?: number | undefined;
467
+ }, {
468
+ width: number;
469
+ height: number;
470
+ dpr?: number | undefined;
471
+ }>>, z.ZodObject<{
472
+ zoom: z.ZodOptional<z.ZodNumber>;
473
+ }, "strip", z.ZodTypeAny, {
474
+ zoom?: number | undefined;
475
+ }, {
476
+ zoom?: number | undefined;
477
+ }>>;
478
+ }, z.ZodTypeAny, "passthrough">>;
479
+ }, "strip", z.ZodTypeAny, {
480
+ locate: {
481
+ prompt: string | ({
482
+ prompt: string;
483
+ } & {
484
+ images?: {
485
+ name: string;
486
+ url: string;
487
+ }[] | undefined;
488
+ convertHttpImage2Base64?: boolean | undefined;
489
+ });
490
+ midscene_location_field_flag: true;
491
+ center: [number, number];
492
+ rect: {
493
+ left: number;
494
+ top: number;
495
+ } & {
496
+ width: number;
497
+ height: number;
498
+ dpr?: number | undefined;
499
+ } & {
500
+ zoom?: number | undefined;
501
+ };
502
+ cacheable?: boolean | undefined;
503
+ deepThink?: boolean | undefined;
504
+ xpath?: boolean | undefined;
505
+ } & {
506
+ [k: string]: unknown;
507
+ };
508
+ }, {
509
+ locate: {
510
+ prompt: string | ({
511
+ prompt: string;
512
+ } & {
513
+ images?: {
514
+ name: string;
515
+ url: string;
516
+ }[] | undefined;
517
+ convertHttpImage2Base64?: boolean | undefined;
518
+ });
519
+ midscene_location_field_flag: true;
520
+ center: [number, number];
521
+ rect: {
522
+ left: number;
523
+ top: number;
524
+ } & {
525
+ width: number;
526
+ height: number;
527
+ dpr?: number | undefined;
528
+ } & {
529
+ zoom?: number | undefined;
530
+ };
531
+ cacheable?: boolean | undefined;
532
+ deepThink?: boolean | undefined;
533
+ xpath?: boolean | undefined;
534
+ } & {
535
+ [k: string]: unknown;
536
+ };
537
+ }>;
538
+ export type ActionRightClickParam = z.infer<typeof actionRightClickParamSchema>;
539
+ export declare const defineActionRightClick: (call: (param: ActionRightClickParam) => Promise<void>) => DeviceAction<ActionRightClickParam>;
540
+ export declare const actionHoverParamSchema: z.ZodObject<{
541
+ locate: z.ZodObject<{
542
+ midscene_location_field_flag: z.ZodLiteral<true>;
543
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
544
+ prompt: z.ZodString;
545
+ }, "strip", z.ZodTypeAny, {
546
+ prompt: string;
547
+ }, {
548
+ prompt: string;
549
+ }>, z.ZodObject<{
550
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
551
+ name: z.ZodString;
552
+ url: z.ZodString;
553
+ }, "strip", z.ZodTypeAny, {
554
+ name: string;
555
+ url: string;
556
+ }, {
557
+ name: string;
558
+ url: string;
559
+ }>, "many">>>;
560
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
561
+ }, "strip", z.ZodTypeAny, {
562
+ images?: {
563
+ name: string;
564
+ url: string;
565
+ }[] | undefined;
566
+ convertHttpImage2Base64?: boolean | undefined;
567
+ }, {
568
+ images?: {
569
+ name: string;
570
+ url: string;
571
+ }[] | undefined;
572
+ convertHttpImage2Base64?: boolean | undefined;
573
+ }>>]>;
574
+ deepThink: z.ZodOptional<z.ZodBoolean>;
575
+ cacheable: z.ZodOptional<z.ZodBoolean>;
576
+ xpath: z.ZodOptional<z.ZodBoolean>;
577
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
578
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
579
+ left: z.ZodNumber;
580
+ top: z.ZodNumber;
581
+ }, "strip", z.ZodTypeAny, {
582
+ left: number;
583
+ top: number;
584
+ }, {
585
+ left: number;
586
+ top: number;
587
+ }>, z.ZodObject<{
588
+ width: z.ZodNumber;
589
+ height: z.ZodNumber;
590
+ dpr: z.ZodOptional<z.ZodNumber>;
591
+ }, "strip", z.ZodTypeAny, {
592
+ width: number;
593
+ height: number;
594
+ dpr?: number | undefined;
595
+ }, {
596
+ width: number;
597
+ height: number;
598
+ dpr?: number | undefined;
599
+ }>>, z.ZodObject<{
600
+ zoom: z.ZodOptional<z.ZodNumber>;
601
+ }, "strip", z.ZodTypeAny, {
602
+ zoom?: number | undefined;
603
+ }, {
604
+ zoom?: number | undefined;
605
+ }>>;
606
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
607
+ midscene_location_field_flag: z.ZodLiteral<true>;
608
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
609
+ prompt: z.ZodString;
610
+ }, "strip", z.ZodTypeAny, {
611
+ prompt: string;
612
+ }, {
613
+ prompt: string;
614
+ }>, z.ZodObject<{
615
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
616
+ name: z.ZodString;
617
+ url: z.ZodString;
618
+ }, "strip", z.ZodTypeAny, {
619
+ name: string;
620
+ url: string;
621
+ }, {
622
+ name: string;
623
+ url: string;
624
+ }>, "many">>>;
625
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
626
+ }, "strip", z.ZodTypeAny, {
627
+ images?: {
628
+ name: string;
629
+ url: string;
630
+ }[] | undefined;
631
+ convertHttpImage2Base64?: boolean | undefined;
632
+ }, {
633
+ images?: {
634
+ name: string;
635
+ url: string;
636
+ }[] | undefined;
637
+ convertHttpImage2Base64?: boolean | undefined;
638
+ }>>]>;
639
+ deepThink: z.ZodOptional<z.ZodBoolean>;
640
+ cacheable: z.ZodOptional<z.ZodBoolean>;
641
+ xpath: z.ZodOptional<z.ZodBoolean>;
642
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
643
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
644
+ left: z.ZodNumber;
645
+ top: z.ZodNumber;
646
+ }, "strip", z.ZodTypeAny, {
647
+ left: number;
648
+ top: number;
649
+ }, {
650
+ left: number;
651
+ top: number;
652
+ }>, z.ZodObject<{
653
+ width: z.ZodNumber;
654
+ height: z.ZodNumber;
655
+ dpr: z.ZodOptional<z.ZodNumber>;
656
+ }, "strip", z.ZodTypeAny, {
657
+ width: number;
658
+ height: number;
659
+ dpr?: number | undefined;
660
+ }, {
661
+ width: number;
662
+ height: number;
663
+ dpr?: number | undefined;
664
+ }>>, z.ZodObject<{
665
+ zoom: z.ZodOptional<z.ZodNumber>;
666
+ }, "strip", z.ZodTypeAny, {
667
+ zoom?: number | undefined;
668
+ }, {
669
+ zoom?: number | undefined;
670
+ }>>;
671
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
672
+ midscene_location_field_flag: z.ZodLiteral<true>;
673
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
674
+ prompt: z.ZodString;
675
+ }, "strip", z.ZodTypeAny, {
676
+ prompt: string;
677
+ }, {
678
+ prompt: string;
679
+ }>, z.ZodObject<{
680
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
681
+ name: z.ZodString;
682
+ url: z.ZodString;
683
+ }, "strip", z.ZodTypeAny, {
684
+ name: string;
685
+ url: string;
686
+ }, {
687
+ name: string;
688
+ url: string;
689
+ }>, "many">>>;
690
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
691
+ }, "strip", z.ZodTypeAny, {
692
+ images?: {
693
+ name: string;
694
+ url: string;
695
+ }[] | undefined;
696
+ convertHttpImage2Base64?: boolean | undefined;
697
+ }, {
698
+ images?: {
699
+ name: string;
700
+ url: string;
701
+ }[] | undefined;
702
+ convertHttpImage2Base64?: boolean | undefined;
703
+ }>>]>;
704
+ deepThink: z.ZodOptional<z.ZodBoolean>;
705
+ cacheable: z.ZodOptional<z.ZodBoolean>;
706
+ xpath: z.ZodOptional<z.ZodBoolean>;
707
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
708
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
709
+ left: z.ZodNumber;
710
+ top: z.ZodNumber;
711
+ }, "strip", z.ZodTypeAny, {
712
+ left: number;
713
+ top: number;
714
+ }, {
715
+ left: number;
716
+ top: number;
717
+ }>, z.ZodObject<{
718
+ width: z.ZodNumber;
719
+ height: z.ZodNumber;
720
+ dpr: z.ZodOptional<z.ZodNumber>;
721
+ }, "strip", z.ZodTypeAny, {
722
+ width: number;
723
+ height: number;
724
+ dpr?: number | undefined;
725
+ }, {
726
+ width: number;
727
+ height: number;
728
+ dpr?: number | undefined;
729
+ }>>, z.ZodObject<{
730
+ zoom: z.ZodOptional<z.ZodNumber>;
731
+ }, "strip", z.ZodTypeAny, {
732
+ zoom?: number | undefined;
733
+ }, {
734
+ zoom?: number | undefined;
735
+ }>>;
736
+ }, z.ZodTypeAny, "passthrough">>;
737
+ }, "strip", z.ZodTypeAny, {
738
+ locate: {
739
+ prompt: string | ({
740
+ prompt: string;
741
+ } & {
742
+ images?: {
743
+ name: string;
744
+ url: string;
745
+ }[] | undefined;
746
+ convertHttpImage2Base64?: boolean | undefined;
747
+ });
748
+ midscene_location_field_flag: true;
749
+ center: [number, number];
750
+ rect: {
751
+ left: number;
752
+ top: number;
753
+ } & {
754
+ width: number;
755
+ height: number;
756
+ dpr?: number | undefined;
757
+ } & {
758
+ zoom?: number | undefined;
759
+ };
760
+ cacheable?: boolean | undefined;
761
+ deepThink?: boolean | undefined;
762
+ xpath?: boolean | undefined;
763
+ } & {
764
+ [k: string]: unknown;
765
+ };
766
+ }, {
767
+ locate: {
768
+ prompt: string | ({
769
+ prompt: string;
770
+ } & {
771
+ images?: {
772
+ name: string;
773
+ url: string;
774
+ }[] | undefined;
775
+ convertHttpImage2Base64?: boolean | undefined;
776
+ });
777
+ midscene_location_field_flag: true;
778
+ center: [number, number];
779
+ rect: {
780
+ left: number;
781
+ top: number;
782
+ } & {
783
+ width: number;
784
+ height: number;
785
+ dpr?: number | undefined;
786
+ } & {
787
+ zoom?: number | undefined;
788
+ };
789
+ cacheable?: boolean | undefined;
790
+ deepThink?: boolean | undefined;
791
+ xpath?: boolean | undefined;
792
+ } & {
793
+ [k: string]: unknown;
794
+ };
795
+ }>;
796
+ export type ActionHoverParam = z.infer<typeof actionHoverParamSchema>;
797
+ export declare const defineActionHover: (call: (param: ActionHoverParam) => Promise<void>) => DeviceAction<ActionHoverParam>;
798
+ export declare const actionInputParamSchema: z.ZodObject<{
799
+ value: z.ZodString;
800
+ locate: z.ZodObject<{
801
+ midscene_location_field_flag: z.ZodLiteral<true>;
802
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
803
+ prompt: z.ZodString;
804
+ }, "strip", z.ZodTypeAny, {
805
+ prompt: string;
806
+ }, {
807
+ prompt: string;
808
+ }>, z.ZodObject<{
809
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
810
+ name: z.ZodString;
811
+ url: z.ZodString;
812
+ }, "strip", z.ZodTypeAny, {
813
+ name: string;
814
+ url: string;
815
+ }, {
816
+ name: string;
817
+ url: string;
818
+ }>, "many">>>;
819
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
820
+ }, "strip", z.ZodTypeAny, {
821
+ images?: {
822
+ name: string;
823
+ url: string;
824
+ }[] | undefined;
825
+ convertHttpImage2Base64?: boolean | undefined;
826
+ }, {
827
+ images?: {
828
+ name: string;
829
+ url: string;
830
+ }[] | undefined;
831
+ convertHttpImage2Base64?: boolean | undefined;
832
+ }>>]>;
833
+ deepThink: z.ZodOptional<z.ZodBoolean>;
834
+ cacheable: z.ZodOptional<z.ZodBoolean>;
835
+ xpath: z.ZodOptional<z.ZodBoolean>;
836
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
837
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
838
+ left: z.ZodNumber;
839
+ top: z.ZodNumber;
840
+ }, "strip", z.ZodTypeAny, {
841
+ left: number;
842
+ top: number;
843
+ }, {
844
+ left: number;
845
+ top: number;
846
+ }>, z.ZodObject<{
847
+ width: z.ZodNumber;
848
+ height: z.ZodNumber;
849
+ dpr: z.ZodOptional<z.ZodNumber>;
850
+ }, "strip", z.ZodTypeAny, {
851
+ width: number;
852
+ height: number;
853
+ dpr?: number | undefined;
854
+ }, {
855
+ width: number;
856
+ height: number;
857
+ dpr?: number | undefined;
858
+ }>>, z.ZodObject<{
859
+ zoom: z.ZodOptional<z.ZodNumber>;
860
+ }, "strip", z.ZodTypeAny, {
861
+ zoom?: number | undefined;
862
+ }, {
863
+ zoom?: number | undefined;
864
+ }>>;
865
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
866
+ midscene_location_field_flag: z.ZodLiteral<true>;
867
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
868
+ prompt: z.ZodString;
869
+ }, "strip", z.ZodTypeAny, {
870
+ prompt: string;
871
+ }, {
872
+ prompt: string;
873
+ }>, z.ZodObject<{
874
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
875
+ name: z.ZodString;
876
+ url: z.ZodString;
877
+ }, "strip", z.ZodTypeAny, {
878
+ name: string;
879
+ url: string;
880
+ }, {
881
+ name: string;
882
+ url: string;
883
+ }>, "many">>>;
884
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
885
+ }, "strip", z.ZodTypeAny, {
886
+ images?: {
887
+ name: string;
888
+ url: string;
889
+ }[] | undefined;
890
+ convertHttpImage2Base64?: boolean | undefined;
891
+ }, {
892
+ images?: {
893
+ name: string;
894
+ url: string;
895
+ }[] | undefined;
896
+ convertHttpImage2Base64?: boolean | undefined;
897
+ }>>]>;
898
+ deepThink: z.ZodOptional<z.ZodBoolean>;
899
+ cacheable: z.ZodOptional<z.ZodBoolean>;
900
+ xpath: z.ZodOptional<z.ZodBoolean>;
901
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
902
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
903
+ left: z.ZodNumber;
904
+ top: z.ZodNumber;
905
+ }, "strip", z.ZodTypeAny, {
906
+ left: number;
907
+ top: number;
908
+ }, {
909
+ left: number;
910
+ top: number;
911
+ }>, z.ZodObject<{
912
+ width: z.ZodNumber;
913
+ height: z.ZodNumber;
914
+ dpr: z.ZodOptional<z.ZodNumber>;
915
+ }, "strip", z.ZodTypeAny, {
916
+ width: number;
917
+ height: number;
918
+ dpr?: number | undefined;
919
+ }, {
920
+ width: number;
921
+ height: number;
922
+ dpr?: number | undefined;
923
+ }>>, z.ZodObject<{
924
+ zoom: z.ZodOptional<z.ZodNumber>;
925
+ }, "strip", z.ZodTypeAny, {
926
+ zoom?: number | undefined;
927
+ }, {
928
+ zoom?: number | undefined;
929
+ }>>;
930
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
931
+ midscene_location_field_flag: z.ZodLiteral<true>;
932
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
933
+ prompt: z.ZodString;
934
+ }, "strip", z.ZodTypeAny, {
935
+ prompt: string;
936
+ }, {
937
+ prompt: string;
938
+ }>, z.ZodObject<{
939
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
940
+ name: z.ZodString;
941
+ url: z.ZodString;
942
+ }, "strip", z.ZodTypeAny, {
943
+ name: string;
944
+ url: string;
945
+ }, {
946
+ name: string;
947
+ url: string;
948
+ }>, "many">>>;
949
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
950
+ }, "strip", z.ZodTypeAny, {
951
+ images?: {
952
+ name: string;
953
+ url: string;
954
+ }[] | undefined;
955
+ convertHttpImage2Base64?: boolean | undefined;
956
+ }, {
957
+ images?: {
958
+ name: string;
959
+ url: string;
960
+ }[] | undefined;
961
+ convertHttpImage2Base64?: boolean | undefined;
962
+ }>>]>;
963
+ deepThink: z.ZodOptional<z.ZodBoolean>;
964
+ cacheable: z.ZodOptional<z.ZodBoolean>;
965
+ xpath: z.ZodOptional<z.ZodBoolean>;
966
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
967
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
968
+ left: z.ZodNumber;
969
+ top: z.ZodNumber;
970
+ }, "strip", z.ZodTypeAny, {
971
+ left: number;
972
+ top: number;
973
+ }, {
974
+ left: number;
975
+ top: number;
976
+ }>, z.ZodObject<{
977
+ width: z.ZodNumber;
978
+ height: z.ZodNumber;
979
+ dpr: z.ZodOptional<z.ZodNumber>;
980
+ }, "strip", z.ZodTypeAny, {
981
+ width: number;
982
+ height: number;
983
+ dpr?: number | undefined;
984
+ }, {
985
+ width: number;
986
+ height: number;
987
+ dpr?: number | undefined;
988
+ }>>, z.ZodObject<{
989
+ zoom: z.ZodOptional<z.ZodNumber>;
990
+ }, "strip", z.ZodTypeAny, {
991
+ zoom?: number | undefined;
992
+ }, {
993
+ zoom?: number | undefined;
994
+ }>>;
995
+ }, z.ZodTypeAny, "passthrough">>;
996
+ }, "strip", z.ZodTypeAny, {
997
+ locate: {
998
+ prompt: string | ({
999
+ prompt: string;
1000
+ } & {
1001
+ images?: {
1002
+ name: string;
1003
+ url: string;
1004
+ }[] | undefined;
1005
+ convertHttpImage2Base64?: boolean | undefined;
1006
+ });
1007
+ midscene_location_field_flag: true;
1008
+ center: [number, number];
1009
+ rect: {
1010
+ left: number;
1011
+ top: number;
1012
+ } & {
1013
+ width: number;
1014
+ height: number;
1015
+ dpr?: number | undefined;
1016
+ } & {
1017
+ zoom?: number | undefined;
1018
+ };
1019
+ cacheable?: boolean | undefined;
1020
+ deepThink?: boolean | undefined;
1021
+ xpath?: boolean | undefined;
1022
+ } & {
1023
+ [k: string]: unknown;
1024
+ };
1025
+ value: string;
1026
+ }, {
1027
+ locate: {
1028
+ prompt: string | ({
1029
+ prompt: string;
1030
+ } & {
1031
+ images?: {
1032
+ name: string;
1033
+ url: string;
1034
+ }[] | undefined;
1035
+ convertHttpImage2Base64?: boolean | undefined;
1036
+ });
1037
+ midscene_location_field_flag: true;
1038
+ center: [number, number];
1039
+ rect: {
1040
+ left: number;
1041
+ top: number;
1042
+ } & {
1043
+ width: number;
1044
+ height: number;
1045
+ dpr?: number | undefined;
1046
+ } & {
1047
+ zoom?: number | undefined;
1048
+ };
1049
+ cacheable?: boolean | undefined;
1050
+ deepThink?: boolean | undefined;
1051
+ xpath?: boolean | undefined;
1052
+ } & {
1053
+ [k: string]: unknown;
1054
+ };
1055
+ value: string;
1056
+ }>;
1057
+ export type ActionInputParam = z.infer<typeof actionInputParamSchema>;
1058
+ export declare const defineActionInput: (call: (param: ActionInputParam) => Promise<void>) => DeviceAction<ActionInputParam>;
1059
+ export declare const actionKeyboardPressParamSchema: z.ZodObject<{
1060
+ locate: z.ZodOptional<z.ZodObject<{
1061
+ midscene_location_field_flag: z.ZodLiteral<true>;
1062
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1063
+ prompt: z.ZodString;
1064
+ }, "strip", z.ZodTypeAny, {
1065
+ prompt: string;
1066
+ }, {
1067
+ prompt: string;
1068
+ }>, z.ZodObject<{
1069
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1070
+ name: z.ZodString;
1071
+ url: z.ZodString;
1072
+ }, "strip", z.ZodTypeAny, {
1073
+ name: string;
1074
+ url: string;
1075
+ }, {
1076
+ name: string;
1077
+ url: string;
1078
+ }>, "many">>>;
1079
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1080
+ }, "strip", z.ZodTypeAny, {
1081
+ images?: {
1082
+ name: string;
1083
+ url: string;
1084
+ }[] | undefined;
1085
+ convertHttpImage2Base64?: boolean | undefined;
1086
+ }, {
1087
+ images?: {
1088
+ name: string;
1089
+ url: string;
1090
+ }[] | undefined;
1091
+ convertHttpImage2Base64?: boolean | undefined;
1092
+ }>>]>;
1093
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1094
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1095
+ xpath: z.ZodOptional<z.ZodBoolean>;
1096
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1097
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1098
+ left: z.ZodNumber;
1099
+ top: z.ZodNumber;
1100
+ }, "strip", z.ZodTypeAny, {
1101
+ left: number;
1102
+ top: number;
1103
+ }, {
1104
+ left: number;
1105
+ top: number;
1106
+ }>, z.ZodObject<{
1107
+ width: z.ZodNumber;
1108
+ height: z.ZodNumber;
1109
+ dpr: z.ZodOptional<z.ZodNumber>;
1110
+ }, "strip", z.ZodTypeAny, {
1111
+ width: number;
1112
+ height: number;
1113
+ dpr?: number | undefined;
1114
+ }, {
1115
+ width: number;
1116
+ height: number;
1117
+ dpr?: number | undefined;
1118
+ }>>, z.ZodObject<{
1119
+ zoom: z.ZodOptional<z.ZodNumber>;
1120
+ }, "strip", z.ZodTypeAny, {
1121
+ zoom?: number | undefined;
1122
+ }, {
1123
+ zoom?: number | undefined;
1124
+ }>>;
1125
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1126
+ midscene_location_field_flag: z.ZodLiteral<true>;
1127
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1128
+ prompt: z.ZodString;
1129
+ }, "strip", z.ZodTypeAny, {
1130
+ prompt: string;
1131
+ }, {
1132
+ prompt: string;
1133
+ }>, z.ZodObject<{
1134
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1135
+ name: z.ZodString;
1136
+ url: z.ZodString;
1137
+ }, "strip", z.ZodTypeAny, {
1138
+ name: string;
1139
+ url: string;
1140
+ }, {
1141
+ name: string;
1142
+ url: string;
1143
+ }>, "many">>>;
1144
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1145
+ }, "strip", z.ZodTypeAny, {
1146
+ images?: {
1147
+ name: string;
1148
+ url: string;
1149
+ }[] | undefined;
1150
+ convertHttpImage2Base64?: boolean | undefined;
1151
+ }, {
1152
+ images?: {
1153
+ name: string;
1154
+ url: string;
1155
+ }[] | undefined;
1156
+ convertHttpImage2Base64?: boolean | undefined;
1157
+ }>>]>;
1158
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1159
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1160
+ xpath: z.ZodOptional<z.ZodBoolean>;
1161
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1162
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1163
+ left: z.ZodNumber;
1164
+ top: z.ZodNumber;
1165
+ }, "strip", z.ZodTypeAny, {
1166
+ left: number;
1167
+ top: number;
1168
+ }, {
1169
+ left: number;
1170
+ top: number;
1171
+ }>, z.ZodObject<{
1172
+ width: z.ZodNumber;
1173
+ height: z.ZodNumber;
1174
+ dpr: z.ZodOptional<z.ZodNumber>;
1175
+ }, "strip", z.ZodTypeAny, {
1176
+ width: number;
1177
+ height: number;
1178
+ dpr?: number | undefined;
1179
+ }, {
1180
+ width: number;
1181
+ height: number;
1182
+ dpr?: number | undefined;
1183
+ }>>, z.ZodObject<{
1184
+ zoom: z.ZodOptional<z.ZodNumber>;
1185
+ }, "strip", z.ZodTypeAny, {
1186
+ zoom?: number | undefined;
1187
+ }, {
1188
+ zoom?: number | undefined;
1189
+ }>>;
1190
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1191
+ midscene_location_field_flag: z.ZodLiteral<true>;
1192
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1193
+ prompt: z.ZodString;
1194
+ }, "strip", z.ZodTypeAny, {
1195
+ prompt: string;
1196
+ }, {
1197
+ prompt: string;
1198
+ }>, z.ZodObject<{
1199
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1200
+ name: z.ZodString;
1201
+ url: z.ZodString;
1202
+ }, "strip", z.ZodTypeAny, {
1203
+ name: string;
1204
+ url: string;
1205
+ }, {
1206
+ name: string;
1207
+ url: string;
1208
+ }>, "many">>>;
1209
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1210
+ }, "strip", z.ZodTypeAny, {
1211
+ images?: {
1212
+ name: string;
1213
+ url: string;
1214
+ }[] | undefined;
1215
+ convertHttpImage2Base64?: boolean | undefined;
1216
+ }, {
1217
+ images?: {
1218
+ name: string;
1219
+ url: string;
1220
+ }[] | undefined;
1221
+ convertHttpImage2Base64?: boolean | undefined;
1222
+ }>>]>;
1223
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1224
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1225
+ xpath: z.ZodOptional<z.ZodBoolean>;
1226
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1227
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1228
+ left: z.ZodNumber;
1229
+ top: z.ZodNumber;
1230
+ }, "strip", z.ZodTypeAny, {
1231
+ left: number;
1232
+ top: number;
1233
+ }, {
1234
+ left: number;
1235
+ top: number;
1236
+ }>, z.ZodObject<{
1237
+ width: z.ZodNumber;
1238
+ height: z.ZodNumber;
1239
+ dpr: z.ZodOptional<z.ZodNumber>;
1240
+ }, "strip", z.ZodTypeAny, {
1241
+ width: number;
1242
+ height: number;
1243
+ dpr?: number | undefined;
1244
+ }, {
1245
+ width: number;
1246
+ height: number;
1247
+ dpr?: number | undefined;
1248
+ }>>, z.ZodObject<{
1249
+ zoom: z.ZodOptional<z.ZodNumber>;
1250
+ }, "strip", z.ZodTypeAny, {
1251
+ zoom?: number | undefined;
1252
+ }, {
1253
+ zoom?: number | undefined;
1254
+ }>>;
1255
+ }, z.ZodTypeAny, "passthrough">>>;
1256
+ keyName: z.ZodString;
1257
+ }, "strip", z.ZodTypeAny, {
1258
+ keyName: string;
1259
+ locate?: z.objectOutputType<{
1260
+ midscene_location_field_flag: z.ZodLiteral<true>;
1261
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1262
+ prompt: z.ZodString;
1263
+ }, "strip", z.ZodTypeAny, {
1264
+ prompt: string;
1265
+ }, {
1266
+ prompt: string;
1267
+ }>, z.ZodObject<{
1268
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1269
+ name: z.ZodString;
1270
+ url: z.ZodString;
1271
+ }, "strip", z.ZodTypeAny, {
1272
+ name: string;
1273
+ url: string;
1274
+ }, {
1275
+ name: string;
1276
+ url: string;
1277
+ }>, "many">>>;
1278
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1279
+ }, "strip", z.ZodTypeAny, {
1280
+ images?: {
1281
+ name: string;
1282
+ url: string;
1283
+ }[] | undefined;
1284
+ convertHttpImage2Base64?: boolean | undefined;
1285
+ }, {
1286
+ images?: {
1287
+ name: string;
1288
+ url: string;
1289
+ }[] | undefined;
1290
+ convertHttpImage2Base64?: boolean | undefined;
1291
+ }>>]>;
1292
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1293
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1294
+ xpath: z.ZodOptional<z.ZodBoolean>;
1295
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1296
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1297
+ left: z.ZodNumber;
1298
+ top: z.ZodNumber;
1299
+ }, "strip", z.ZodTypeAny, {
1300
+ left: number;
1301
+ top: number;
1302
+ }, {
1303
+ left: number;
1304
+ top: number;
1305
+ }>, z.ZodObject<{
1306
+ width: z.ZodNumber;
1307
+ height: z.ZodNumber;
1308
+ dpr: z.ZodOptional<z.ZodNumber>;
1309
+ }, "strip", z.ZodTypeAny, {
1310
+ width: number;
1311
+ height: number;
1312
+ dpr?: number | undefined;
1313
+ }, {
1314
+ width: number;
1315
+ height: number;
1316
+ dpr?: number | undefined;
1317
+ }>>, z.ZodObject<{
1318
+ zoom: z.ZodOptional<z.ZodNumber>;
1319
+ }, "strip", z.ZodTypeAny, {
1320
+ zoom?: number | undefined;
1321
+ }, {
1322
+ zoom?: number | undefined;
1323
+ }>>;
1324
+ }, z.ZodTypeAny, "passthrough"> | undefined;
1325
+ }, {
1326
+ keyName: string;
1327
+ locate?: z.objectInputType<{
1328
+ midscene_location_field_flag: z.ZodLiteral<true>;
1329
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1330
+ prompt: z.ZodString;
1331
+ }, "strip", z.ZodTypeAny, {
1332
+ prompt: string;
1333
+ }, {
1334
+ prompt: string;
1335
+ }>, z.ZodObject<{
1336
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1337
+ name: z.ZodString;
1338
+ url: z.ZodString;
1339
+ }, "strip", z.ZodTypeAny, {
1340
+ name: string;
1341
+ url: string;
1342
+ }, {
1343
+ name: string;
1344
+ url: string;
1345
+ }>, "many">>>;
1346
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1347
+ }, "strip", z.ZodTypeAny, {
1348
+ images?: {
1349
+ name: string;
1350
+ url: string;
1351
+ }[] | undefined;
1352
+ convertHttpImage2Base64?: boolean | undefined;
1353
+ }, {
1354
+ images?: {
1355
+ name: string;
1356
+ url: string;
1357
+ }[] | undefined;
1358
+ convertHttpImage2Base64?: boolean | undefined;
1359
+ }>>]>;
1360
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1361
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1362
+ xpath: z.ZodOptional<z.ZodBoolean>;
1363
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1364
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1365
+ left: z.ZodNumber;
1366
+ top: z.ZodNumber;
1367
+ }, "strip", z.ZodTypeAny, {
1368
+ left: number;
1369
+ top: number;
1370
+ }, {
1371
+ left: number;
1372
+ top: number;
1373
+ }>, z.ZodObject<{
1374
+ width: z.ZodNumber;
1375
+ height: z.ZodNumber;
1376
+ dpr: z.ZodOptional<z.ZodNumber>;
1377
+ }, "strip", z.ZodTypeAny, {
1378
+ width: number;
1379
+ height: number;
1380
+ dpr?: number | undefined;
1381
+ }, {
1382
+ width: number;
1383
+ height: number;
1384
+ dpr?: number | undefined;
1385
+ }>>, z.ZodObject<{
1386
+ zoom: z.ZodOptional<z.ZodNumber>;
1387
+ }, "strip", z.ZodTypeAny, {
1388
+ zoom?: number | undefined;
1389
+ }, {
1390
+ zoom?: number | undefined;
1391
+ }>>;
1392
+ }, z.ZodTypeAny, "passthrough"> | undefined;
1393
+ }>;
1394
+ export type ActionKeyboardPressParam = z.infer<typeof actionKeyboardPressParamSchema>;
1395
+ export declare const defineActionKeyboardPress: (call: (param: ActionKeyboardPressParam) => Promise<void>) => DeviceAction<ActionKeyboardPressParam>;
1396
+ export declare const actionScrollParamSchema: z.ZodObject<{
1397
+ direction: z.ZodDefault<z.ZodEnum<["down", "up", "right", "left"]>>;
1398
+ scrollType: z.ZodDefault<z.ZodEnum<["once", "untilBottom", "untilTop", "untilRight", "untilLeft"]>>;
1399
+ distance: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1400
+ locate: z.ZodOptional<z.ZodObject<{
1401
+ midscene_location_field_flag: z.ZodLiteral<true>;
1402
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1403
+ prompt: z.ZodString;
1404
+ }, "strip", z.ZodTypeAny, {
1405
+ prompt: string;
1406
+ }, {
1407
+ prompt: string;
1408
+ }>, z.ZodObject<{
1409
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1410
+ name: z.ZodString;
1411
+ url: z.ZodString;
1412
+ }, "strip", z.ZodTypeAny, {
1413
+ name: string;
1414
+ url: string;
1415
+ }, {
1416
+ name: string;
1417
+ url: string;
1418
+ }>, "many">>>;
1419
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1420
+ }, "strip", z.ZodTypeAny, {
1421
+ images?: {
1422
+ name: string;
1423
+ url: string;
1424
+ }[] | undefined;
1425
+ convertHttpImage2Base64?: boolean | undefined;
1426
+ }, {
1427
+ images?: {
1428
+ name: string;
1429
+ url: string;
1430
+ }[] | undefined;
1431
+ convertHttpImage2Base64?: boolean | undefined;
1432
+ }>>]>;
1433
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1434
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1435
+ xpath: z.ZodOptional<z.ZodBoolean>;
1436
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1437
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1438
+ left: z.ZodNumber;
1439
+ top: z.ZodNumber;
1440
+ }, "strip", z.ZodTypeAny, {
1441
+ left: number;
1442
+ top: number;
1443
+ }, {
1444
+ left: number;
1445
+ top: number;
1446
+ }>, z.ZodObject<{
1447
+ width: z.ZodNumber;
1448
+ height: z.ZodNumber;
1449
+ dpr: z.ZodOptional<z.ZodNumber>;
1450
+ }, "strip", z.ZodTypeAny, {
1451
+ width: number;
1452
+ height: number;
1453
+ dpr?: number | undefined;
1454
+ }, {
1455
+ width: number;
1456
+ height: number;
1457
+ dpr?: number | undefined;
1458
+ }>>, z.ZodObject<{
1459
+ zoom: z.ZodOptional<z.ZodNumber>;
1460
+ }, "strip", z.ZodTypeAny, {
1461
+ zoom?: number | undefined;
1462
+ }, {
1463
+ zoom?: number | undefined;
1464
+ }>>;
1465
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1466
+ midscene_location_field_flag: z.ZodLiteral<true>;
1467
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1468
+ prompt: z.ZodString;
1469
+ }, "strip", z.ZodTypeAny, {
1470
+ prompt: string;
1471
+ }, {
1472
+ prompt: string;
1473
+ }>, z.ZodObject<{
1474
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1475
+ name: z.ZodString;
1476
+ url: z.ZodString;
1477
+ }, "strip", z.ZodTypeAny, {
1478
+ name: string;
1479
+ url: string;
1480
+ }, {
1481
+ name: string;
1482
+ url: string;
1483
+ }>, "many">>>;
1484
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1485
+ }, "strip", z.ZodTypeAny, {
1486
+ images?: {
1487
+ name: string;
1488
+ url: string;
1489
+ }[] | undefined;
1490
+ convertHttpImage2Base64?: boolean | undefined;
1491
+ }, {
1492
+ images?: {
1493
+ name: string;
1494
+ url: string;
1495
+ }[] | undefined;
1496
+ convertHttpImage2Base64?: boolean | undefined;
1497
+ }>>]>;
1498
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1499
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1500
+ xpath: z.ZodOptional<z.ZodBoolean>;
1501
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1502
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1503
+ left: z.ZodNumber;
1504
+ top: z.ZodNumber;
1505
+ }, "strip", z.ZodTypeAny, {
1506
+ left: number;
1507
+ top: number;
1508
+ }, {
1509
+ left: number;
1510
+ top: number;
1511
+ }>, z.ZodObject<{
1512
+ width: z.ZodNumber;
1513
+ height: z.ZodNumber;
1514
+ dpr: z.ZodOptional<z.ZodNumber>;
1515
+ }, "strip", z.ZodTypeAny, {
1516
+ width: number;
1517
+ height: number;
1518
+ dpr?: number | undefined;
1519
+ }, {
1520
+ width: number;
1521
+ height: number;
1522
+ dpr?: number | undefined;
1523
+ }>>, z.ZodObject<{
1524
+ zoom: z.ZodOptional<z.ZodNumber>;
1525
+ }, "strip", z.ZodTypeAny, {
1526
+ zoom?: number | undefined;
1527
+ }, {
1528
+ zoom?: number | undefined;
1529
+ }>>;
1530
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1531
+ midscene_location_field_flag: z.ZodLiteral<true>;
1532
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1533
+ prompt: z.ZodString;
1534
+ }, "strip", z.ZodTypeAny, {
1535
+ prompt: string;
1536
+ }, {
1537
+ prompt: string;
1538
+ }>, z.ZodObject<{
1539
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1540
+ name: z.ZodString;
1541
+ url: z.ZodString;
1542
+ }, "strip", z.ZodTypeAny, {
1543
+ name: string;
1544
+ url: string;
1545
+ }, {
1546
+ name: string;
1547
+ url: string;
1548
+ }>, "many">>>;
1549
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1550
+ }, "strip", z.ZodTypeAny, {
1551
+ images?: {
1552
+ name: string;
1553
+ url: string;
1554
+ }[] | undefined;
1555
+ convertHttpImage2Base64?: boolean | undefined;
1556
+ }, {
1557
+ images?: {
1558
+ name: string;
1559
+ url: string;
1560
+ }[] | undefined;
1561
+ convertHttpImage2Base64?: boolean | undefined;
1562
+ }>>]>;
1563
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1564
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1565
+ xpath: z.ZodOptional<z.ZodBoolean>;
1566
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1567
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1568
+ left: z.ZodNumber;
1569
+ top: z.ZodNumber;
1570
+ }, "strip", z.ZodTypeAny, {
1571
+ left: number;
1572
+ top: number;
1573
+ }, {
1574
+ left: number;
1575
+ top: number;
1576
+ }>, z.ZodObject<{
1577
+ width: z.ZodNumber;
1578
+ height: z.ZodNumber;
1579
+ dpr: z.ZodOptional<z.ZodNumber>;
1580
+ }, "strip", z.ZodTypeAny, {
1581
+ width: number;
1582
+ height: number;
1583
+ dpr?: number | undefined;
1584
+ }, {
1585
+ width: number;
1586
+ height: number;
1587
+ dpr?: number | undefined;
1588
+ }>>, z.ZodObject<{
1589
+ zoom: z.ZodOptional<z.ZodNumber>;
1590
+ }, "strip", z.ZodTypeAny, {
1591
+ zoom?: number | undefined;
1592
+ }, {
1593
+ zoom?: number | undefined;
1594
+ }>>;
1595
+ }, z.ZodTypeAny, "passthrough">>>;
1596
+ }, "strip", z.ZodTypeAny, {
1597
+ direction: "left" | "right" | "down" | "up";
1598
+ scrollType: "once" | "untilBottom" | "untilTop" | "untilRight" | "untilLeft";
1599
+ locate?: z.objectOutputType<{
1600
+ midscene_location_field_flag: z.ZodLiteral<true>;
1601
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1602
+ prompt: z.ZodString;
1603
+ }, "strip", z.ZodTypeAny, {
1604
+ prompt: string;
1605
+ }, {
1606
+ prompt: string;
1607
+ }>, z.ZodObject<{
1608
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1609
+ name: z.ZodString;
1610
+ url: z.ZodString;
1611
+ }, "strip", z.ZodTypeAny, {
1612
+ name: string;
1613
+ url: string;
1614
+ }, {
1615
+ name: string;
1616
+ url: string;
1617
+ }>, "many">>>;
1618
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1619
+ }, "strip", z.ZodTypeAny, {
1620
+ images?: {
1621
+ name: string;
1622
+ url: string;
1623
+ }[] | undefined;
1624
+ convertHttpImage2Base64?: boolean | undefined;
1625
+ }, {
1626
+ images?: {
1627
+ name: string;
1628
+ url: string;
1629
+ }[] | undefined;
1630
+ convertHttpImage2Base64?: boolean | undefined;
1631
+ }>>]>;
1632
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1633
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1634
+ xpath: z.ZodOptional<z.ZodBoolean>;
1635
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1636
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1637
+ left: z.ZodNumber;
1638
+ top: z.ZodNumber;
1639
+ }, "strip", z.ZodTypeAny, {
1640
+ left: number;
1641
+ top: number;
1642
+ }, {
1643
+ left: number;
1644
+ top: number;
1645
+ }>, z.ZodObject<{
1646
+ width: z.ZodNumber;
1647
+ height: z.ZodNumber;
1648
+ dpr: z.ZodOptional<z.ZodNumber>;
1649
+ }, "strip", z.ZodTypeAny, {
1650
+ width: number;
1651
+ height: number;
1652
+ dpr?: number | undefined;
1653
+ }, {
1654
+ width: number;
1655
+ height: number;
1656
+ dpr?: number | undefined;
1657
+ }>>, z.ZodObject<{
1658
+ zoom: z.ZodOptional<z.ZodNumber>;
1659
+ }, "strip", z.ZodTypeAny, {
1660
+ zoom?: number | undefined;
1661
+ }, {
1662
+ zoom?: number | undefined;
1663
+ }>>;
1664
+ }, z.ZodTypeAny, "passthrough"> | undefined;
1665
+ distance?: number | null | undefined;
1666
+ }, {
1667
+ locate?: z.objectInputType<{
1668
+ midscene_location_field_flag: z.ZodLiteral<true>;
1669
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1670
+ prompt: z.ZodString;
1671
+ }, "strip", z.ZodTypeAny, {
1672
+ prompt: string;
1673
+ }, {
1674
+ prompt: string;
1675
+ }>, z.ZodObject<{
1676
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1677
+ name: z.ZodString;
1678
+ url: z.ZodString;
1679
+ }, "strip", z.ZodTypeAny, {
1680
+ name: string;
1681
+ url: string;
1682
+ }, {
1683
+ name: string;
1684
+ url: string;
1685
+ }>, "many">>>;
1686
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1687
+ }, "strip", z.ZodTypeAny, {
1688
+ images?: {
1689
+ name: string;
1690
+ url: string;
1691
+ }[] | undefined;
1692
+ convertHttpImage2Base64?: boolean | undefined;
1693
+ }, {
1694
+ images?: {
1695
+ name: string;
1696
+ url: string;
1697
+ }[] | undefined;
1698
+ convertHttpImage2Base64?: boolean | undefined;
1699
+ }>>]>;
1700
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1701
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1702
+ xpath: z.ZodOptional<z.ZodBoolean>;
1703
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1704
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1705
+ left: z.ZodNumber;
1706
+ top: z.ZodNumber;
1707
+ }, "strip", z.ZodTypeAny, {
1708
+ left: number;
1709
+ top: number;
1710
+ }, {
1711
+ left: number;
1712
+ top: number;
1713
+ }>, z.ZodObject<{
1714
+ width: z.ZodNumber;
1715
+ height: z.ZodNumber;
1716
+ dpr: z.ZodOptional<z.ZodNumber>;
1717
+ }, "strip", z.ZodTypeAny, {
1718
+ width: number;
1719
+ height: number;
1720
+ dpr?: number | undefined;
1721
+ }, {
1722
+ width: number;
1723
+ height: number;
1724
+ dpr?: number | undefined;
1725
+ }>>, z.ZodObject<{
1726
+ zoom: z.ZodOptional<z.ZodNumber>;
1727
+ }, "strip", z.ZodTypeAny, {
1728
+ zoom?: number | undefined;
1729
+ }, {
1730
+ zoom?: number | undefined;
1731
+ }>>;
1732
+ }, z.ZodTypeAny, "passthrough"> | undefined;
1733
+ direction?: "left" | "right" | "down" | "up" | undefined;
1734
+ scrollType?: "once" | "untilBottom" | "untilTop" | "untilRight" | "untilLeft" | undefined;
1735
+ distance?: number | null | undefined;
1736
+ }>;
1737
+ export type ActionScrollParam = z.infer<typeof actionScrollParamSchema>;
1738
+ export declare const defineActionScroll: (call: (param: ActionScrollParam) => Promise<void>) => DeviceAction<ActionScrollParam>;
1739
+ export declare const actionDragAndDropParamSchema: z.ZodObject<{
1740
+ from: z.ZodObject<{
1741
+ midscene_location_field_flag: z.ZodLiteral<true>;
1742
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1743
+ prompt: z.ZodString;
1744
+ }, "strip", z.ZodTypeAny, {
1745
+ prompt: string;
1746
+ }, {
1747
+ prompt: string;
1748
+ }>, z.ZodObject<{
1749
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1750
+ name: z.ZodString;
1751
+ url: z.ZodString;
1752
+ }, "strip", z.ZodTypeAny, {
1753
+ name: string;
1754
+ url: string;
1755
+ }, {
1756
+ name: string;
1757
+ url: string;
1758
+ }>, "many">>>;
1759
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1760
+ }, "strip", z.ZodTypeAny, {
1761
+ images?: {
1762
+ name: string;
1763
+ url: string;
1764
+ }[] | undefined;
1765
+ convertHttpImage2Base64?: boolean | undefined;
1766
+ }, {
1767
+ images?: {
1768
+ name: string;
1769
+ url: string;
1770
+ }[] | undefined;
1771
+ convertHttpImage2Base64?: boolean | undefined;
1772
+ }>>]>;
1773
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1774
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1775
+ xpath: z.ZodOptional<z.ZodBoolean>;
1776
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1777
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1778
+ left: z.ZodNumber;
1779
+ top: z.ZodNumber;
1780
+ }, "strip", z.ZodTypeAny, {
1781
+ left: number;
1782
+ top: number;
1783
+ }, {
1784
+ left: number;
1785
+ top: number;
1786
+ }>, z.ZodObject<{
1787
+ width: z.ZodNumber;
1788
+ height: z.ZodNumber;
1789
+ dpr: z.ZodOptional<z.ZodNumber>;
1790
+ }, "strip", z.ZodTypeAny, {
1791
+ width: number;
1792
+ height: number;
1793
+ dpr?: number | undefined;
1794
+ }, {
1795
+ width: number;
1796
+ height: number;
1797
+ dpr?: number | undefined;
1798
+ }>>, z.ZodObject<{
1799
+ zoom: z.ZodOptional<z.ZodNumber>;
1800
+ }, "strip", z.ZodTypeAny, {
1801
+ zoom?: number | undefined;
1802
+ }, {
1803
+ zoom?: number | undefined;
1804
+ }>>;
1805
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1806
+ midscene_location_field_flag: z.ZodLiteral<true>;
1807
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1808
+ prompt: z.ZodString;
1809
+ }, "strip", z.ZodTypeAny, {
1810
+ prompt: string;
1811
+ }, {
1812
+ prompt: string;
1813
+ }>, z.ZodObject<{
1814
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1815
+ name: z.ZodString;
1816
+ url: z.ZodString;
1817
+ }, "strip", z.ZodTypeAny, {
1818
+ name: string;
1819
+ url: string;
1820
+ }, {
1821
+ name: string;
1822
+ url: string;
1823
+ }>, "many">>>;
1824
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1825
+ }, "strip", z.ZodTypeAny, {
1826
+ images?: {
1827
+ name: string;
1828
+ url: string;
1829
+ }[] | undefined;
1830
+ convertHttpImage2Base64?: boolean | undefined;
1831
+ }, {
1832
+ images?: {
1833
+ name: string;
1834
+ url: string;
1835
+ }[] | undefined;
1836
+ convertHttpImage2Base64?: boolean | undefined;
1837
+ }>>]>;
1838
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1839
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1840
+ xpath: z.ZodOptional<z.ZodBoolean>;
1841
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1842
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1843
+ left: z.ZodNumber;
1844
+ top: z.ZodNumber;
1845
+ }, "strip", z.ZodTypeAny, {
1846
+ left: number;
1847
+ top: number;
1848
+ }, {
1849
+ left: number;
1850
+ top: number;
1851
+ }>, z.ZodObject<{
1852
+ width: z.ZodNumber;
1853
+ height: z.ZodNumber;
1854
+ dpr: z.ZodOptional<z.ZodNumber>;
1855
+ }, "strip", z.ZodTypeAny, {
1856
+ width: number;
1857
+ height: number;
1858
+ dpr?: number | undefined;
1859
+ }, {
1860
+ width: number;
1861
+ height: number;
1862
+ dpr?: number | undefined;
1863
+ }>>, z.ZodObject<{
1864
+ zoom: z.ZodOptional<z.ZodNumber>;
1865
+ }, "strip", z.ZodTypeAny, {
1866
+ zoom?: number | undefined;
1867
+ }, {
1868
+ zoom?: number | undefined;
1869
+ }>>;
1870
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1871
+ midscene_location_field_flag: z.ZodLiteral<true>;
1872
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1873
+ prompt: z.ZodString;
1874
+ }, "strip", z.ZodTypeAny, {
1875
+ prompt: string;
1876
+ }, {
1877
+ prompt: string;
1878
+ }>, z.ZodObject<{
1879
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1880
+ name: z.ZodString;
1881
+ url: z.ZodString;
1882
+ }, "strip", z.ZodTypeAny, {
1883
+ name: string;
1884
+ url: string;
1885
+ }, {
1886
+ name: string;
1887
+ url: string;
1888
+ }>, "many">>>;
1889
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1890
+ }, "strip", z.ZodTypeAny, {
1891
+ images?: {
1892
+ name: string;
1893
+ url: string;
1894
+ }[] | undefined;
1895
+ convertHttpImage2Base64?: boolean | undefined;
1896
+ }, {
1897
+ images?: {
1898
+ name: string;
1899
+ url: string;
1900
+ }[] | undefined;
1901
+ convertHttpImage2Base64?: boolean | undefined;
1902
+ }>>]>;
1903
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1904
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1905
+ xpath: z.ZodOptional<z.ZodBoolean>;
1906
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1907
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1908
+ left: z.ZodNumber;
1909
+ top: z.ZodNumber;
1910
+ }, "strip", z.ZodTypeAny, {
1911
+ left: number;
1912
+ top: number;
1913
+ }, {
1914
+ left: number;
1915
+ top: number;
1916
+ }>, z.ZodObject<{
1917
+ width: z.ZodNumber;
1918
+ height: z.ZodNumber;
1919
+ dpr: z.ZodOptional<z.ZodNumber>;
1920
+ }, "strip", z.ZodTypeAny, {
1921
+ width: number;
1922
+ height: number;
1923
+ dpr?: number | undefined;
1924
+ }, {
1925
+ width: number;
1926
+ height: number;
1927
+ dpr?: number | undefined;
1928
+ }>>, z.ZodObject<{
1929
+ zoom: z.ZodOptional<z.ZodNumber>;
1930
+ }, "strip", z.ZodTypeAny, {
1931
+ zoom?: number | undefined;
1932
+ }, {
1933
+ zoom?: number | undefined;
1934
+ }>>;
1935
+ }, z.ZodTypeAny, "passthrough">>;
1936
+ to: z.ZodObject<{
1937
+ midscene_location_field_flag: z.ZodLiteral<true>;
1938
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
1939
+ prompt: z.ZodString;
1940
+ }, "strip", z.ZodTypeAny, {
1941
+ prompt: string;
1942
+ }, {
1943
+ prompt: string;
1944
+ }>, z.ZodObject<{
1945
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
1946
+ name: z.ZodString;
1947
+ url: z.ZodString;
1948
+ }, "strip", z.ZodTypeAny, {
1949
+ name: string;
1950
+ url: string;
1951
+ }, {
1952
+ name: string;
1953
+ url: string;
1954
+ }>, "many">>>;
1955
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1956
+ }, "strip", z.ZodTypeAny, {
1957
+ images?: {
1958
+ name: string;
1959
+ url: string;
1960
+ }[] | undefined;
1961
+ convertHttpImage2Base64?: boolean | undefined;
1962
+ }, {
1963
+ images?: {
1964
+ name: string;
1965
+ url: string;
1966
+ }[] | undefined;
1967
+ convertHttpImage2Base64?: boolean | undefined;
1968
+ }>>]>;
1969
+ deepThink: z.ZodOptional<z.ZodBoolean>;
1970
+ cacheable: z.ZodOptional<z.ZodBoolean>;
1971
+ xpath: z.ZodOptional<z.ZodBoolean>;
1972
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1973
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
1974
+ left: z.ZodNumber;
1975
+ top: z.ZodNumber;
1976
+ }, "strip", z.ZodTypeAny, {
1977
+ left: number;
1978
+ top: number;
1979
+ }, {
1980
+ left: number;
1981
+ top: number;
1982
+ }>, z.ZodObject<{
1983
+ width: z.ZodNumber;
1984
+ height: z.ZodNumber;
1985
+ dpr: z.ZodOptional<z.ZodNumber>;
1986
+ }, "strip", z.ZodTypeAny, {
1987
+ width: number;
1988
+ height: number;
1989
+ dpr?: number | undefined;
1990
+ }, {
1991
+ width: number;
1992
+ height: number;
1993
+ dpr?: number | undefined;
1994
+ }>>, z.ZodObject<{
1995
+ zoom: z.ZodOptional<z.ZodNumber>;
1996
+ }, "strip", z.ZodTypeAny, {
1997
+ zoom?: number | undefined;
1998
+ }, {
1999
+ zoom?: number | undefined;
2000
+ }>>;
2001
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
2002
+ midscene_location_field_flag: z.ZodLiteral<true>;
2003
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
2004
+ prompt: z.ZodString;
2005
+ }, "strip", z.ZodTypeAny, {
2006
+ prompt: string;
2007
+ }, {
2008
+ prompt: string;
2009
+ }>, z.ZodObject<{
2010
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
2011
+ name: z.ZodString;
2012
+ url: z.ZodString;
2013
+ }, "strip", z.ZodTypeAny, {
2014
+ name: string;
2015
+ url: string;
2016
+ }, {
2017
+ name: string;
2018
+ url: string;
2019
+ }>, "many">>>;
2020
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2021
+ }, "strip", z.ZodTypeAny, {
2022
+ images?: {
2023
+ name: string;
2024
+ url: string;
2025
+ }[] | undefined;
2026
+ convertHttpImage2Base64?: boolean | undefined;
2027
+ }, {
2028
+ images?: {
2029
+ name: string;
2030
+ url: string;
2031
+ }[] | undefined;
2032
+ convertHttpImage2Base64?: boolean | undefined;
2033
+ }>>]>;
2034
+ deepThink: z.ZodOptional<z.ZodBoolean>;
2035
+ cacheable: z.ZodOptional<z.ZodBoolean>;
2036
+ xpath: z.ZodOptional<z.ZodBoolean>;
2037
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
2038
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
2039
+ left: z.ZodNumber;
2040
+ top: z.ZodNumber;
2041
+ }, "strip", z.ZodTypeAny, {
2042
+ left: number;
2043
+ top: number;
2044
+ }, {
2045
+ left: number;
2046
+ top: number;
2047
+ }>, z.ZodObject<{
2048
+ width: z.ZodNumber;
2049
+ height: z.ZodNumber;
2050
+ dpr: z.ZodOptional<z.ZodNumber>;
2051
+ }, "strip", z.ZodTypeAny, {
2052
+ width: number;
2053
+ height: number;
2054
+ dpr?: number | undefined;
2055
+ }, {
2056
+ width: number;
2057
+ height: number;
2058
+ dpr?: number | undefined;
2059
+ }>>, z.ZodObject<{
2060
+ zoom: z.ZodOptional<z.ZodNumber>;
2061
+ }, "strip", z.ZodTypeAny, {
2062
+ zoom?: number | undefined;
2063
+ }, {
2064
+ zoom?: number | undefined;
2065
+ }>>;
2066
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
2067
+ midscene_location_field_flag: z.ZodLiteral<true>;
2068
+ prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
2069
+ prompt: z.ZodString;
2070
+ }, "strip", z.ZodTypeAny, {
2071
+ prompt: string;
2072
+ }, {
2073
+ prompt: string;
2074
+ }>, z.ZodObject<{
2075
+ images: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
2076
+ name: z.ZodString;
2077
+ url: z.ZodString;
2078
+ }, "strip", z.ZodTypeAny, {
2079
+ name: string;
2080
+ url: string;
2081
+ }, {
2082
+ name: string;
2083
+ url: string;
2084
+ }>, "many">>>;
2085
+ convertHttpImage2Base64: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
2086
+ }, "strip", z.ZodTypeAny, {
2087
+ images?: {
2088
+ name: string;
2089
+ url: string;
2090
+ }[] | undefined;
2091
+ convertHttpImage2Base64?: boolean | undefined;
2092
+ }, {
2093
+ images?: {
2094
+ name: string;
2095
+ url: string;
2096
+ }[] | undefined;
2097
+ convertHttpImage2Base64?: boolean | undefined;
2098
+ }>>]>;
2099
+ deepThink: z.ZodOptional<z.ZodBoolean>;
2100
+ cacheable: z.ZodOptional<z.ZodBoolean>;
2101
+ xpath: z.ZodOptional<z.ZodBoolean>;
2102
+ center: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
2103
+ rect: z.ZodIntersection<z.ZodIntersection<z.ZodObject<{
2104
+ left: z.ZodNumber;
2105
+ top: z.ZodNumber;
2106
+ }, "strip", z.ZodTypeAny, {
2107
+ left: number;
2108
+ top: number;
2109
+ }, {
2110
+ left: number;
2111
+ top: number;
2112
+ }>, z.ZodObject<{
2113
+ width: z.ZodNumber;
2114
+ height: z.ZodNumber;
2115
+ dpr: z.ZodOptional<z.ZodNumber>;
2116
+ }, "strip", z.ZodTypeAny, {
2117
+ width: number;
2118
+ height: number;
2119
+ dpr?: number | undefined;
2120
+ }, {
2121
+ width: number;
2122
+ height: number;
2123
+ dpr?: number | undefined;
2124
+ }>>, z.ZodObject<{
2125
+ zoom: z.ZodOptional<z.ZodNumber>;
2126
+ }, "strip", z.ZodTypeAny, {
2127
+ zoom?: number | undefined;
2128
+ }, {
2129
+ zoom?: number | undefined;
2130
+ }>>;
2131
+ }, z.ZodTypeAny, "passthrough">>;
2132
+ }, "strip", z.ZodTypeAny, {
2133
+ from: {
2134
+ prompt: string | ({
2135
+ prompt: string;
2136
+ } & {
2137
+ images?: {
2138
+ name: string;
2139
+ url: string;
2140
+ }[] | undefined;
2141
+ convertHttpImage2Base64?: boolean | undefined;
2142
+ });
2143
+ midscene_location_field_flag: true;
2144
+ center: [number, number];
2145
+ rect: {
2146
+ left: number;
2147
+ top: number;
2148
+ } & {
2149
+ width: number;
2150
+ height: number;
2151
+ dpr?: number | undefined;
2152
+ } & {
2153
+ zoom?: number | undefined;
2154
+ };
2155
+ cacheable?: boolean | undefined;
2156
+ deepThink?: boolean | undefined;
2157
+ xpath?: boolean | undefined;
2158
+ } & {
2159
+ [k: string]: unknown;
2160
+ };
2161
+ to: {
2162
+ prompt: string | ({
2163
+ prompt: string;
2164
+ } & {
2165
+ images?: {
2166
+ name: string;
2167
+ url: string;
2168
+ }[] | undefined;
2169
+ convertHttpImage2Base64?: boolean | undefined;
2170
+ });
2171
+ midscene_location_field_flag: true;
2172
+ center: [number, number];
2173
+ rect: {
2174
+ left: number;
2175
+ top: number;
2176
+ } & {
2177
+ width: number;
2178
+ height: number;
2179
+ dpr?: number | undefined;
2180
+ } & {
2181
+ zoom?: number | undefined;
2182
+ };
2183
+ cacheable?: boolean | undefined;
2184
+ deepThink?: boolean | undefined;
2185
+ xpath?: boolean | undefined;
2186
+ } & {
2187
+ [k: string]: unknown;
2188
+ };
2189
+ }, {
2190
+ from: {
2191
+ prompt: string | ({
2192
+ prompt: string;
2193
+ } & {
2194
+ images?: {
2195
+ name: string;
2196
+ url: string;
2197
+ }[] | undefined;
2198
+ convertHttpImage2Base64?: boolean | undefined;
2199
+ });
2200
+ midscene_location_field_flag: true;
2201
+ center: [number, number];
2202
+ rect: {
2203
+ left: number;
2204
+ top: number;
2205
+ } & {
2206
+ width: number;
2207
+ height: number;
2208
+ dpr?: number | undefined;
2209
+ } & {
2210
+ zoom?: number | undefined;
2211
+ };
2212
+ cacheable?: boolean | undefined;
2213
+ deepThink?: boolean | undefined;
2214
+ xpath?: boolean | undefined;
2215
+ } & {
2216
+ [k: string]: unknown;
2217
+ };
2218
+ to: {
2219
+ prompt: string | ({
2220
+ prompt: string;
2221
+ } & {
2222
+ images?: {
2223
+ name: string;
2224
+ url: string;
2225
+ }[] | undefined;
2226
+ convertHttpImage2Base64?: boolean | undefined;
2227
+ });
2228
+ midscene_location_field_flag: true;
2229
+ center: [number, number];
2230
+ rect: {
2231
+ left: number;
2232
+ top: number;
2233
+ } & {
2234
+ width: number;
2235
+ height: number;
2236
+ dpr?: number | undefined;
2237
+ } & {
2238
+ zoom?: number | undefined;
2239
+ };
2240
+ cacheable?: boolean | undefined;
2241
+ deepThink?: boolean | undefined;
2242
+ xpath?: boolean | undefined;
2243
+ } & {
2244
+ [k: string]: unknown;
2245
+ };
2246
+ }>;
2247
+ export type ActionDragAndDropParam = z.infer<typeof actionDragAndDropParamSchema>;
2248
+ export declare const defineActionDragAndDrop: (call: (param: ActionDragAndDropParam) => Promise<void>) => DeviceAction<ActionDragAndDropParam>;
2249
+ export type { DeviceAction } from '../types';