@appium/types 0.2.2 → 0.2.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../lib/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,IAAI,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5D;;GAEG;AACH,aAAK,UAAU,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAExC;;GAEG;AACH,aAAK,gBAAgB,GAAG,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AAEhD;;GAEG;AACH,aAAK,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAExC;;;GAGG;AACH,aAAK,gBAAgB,CAAC,YAAY,SAAS,YAAY,GAAG,YAAY,IACpE,OAAO,CAAC,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC,CAAC;AAEhD;;;;GAIG;AACH,oBAAY,YAAY,CAAC,YAAY,SAAS,YAAY,GAAG,YAAY,IACvE,gBAAgB,CAAC,QAAQ,CAAC,kBAAkB,GAAG,YAAY,CAAC,CAAC;AAE/D;;GAEG;AACH,oBAAY,qBAAqB,CAC/B,sBAAsB,SAAS,gBAAgB,GAAG,gBAAgB,IAChE,gBAAgB,CAAC,QAAQ,CAAC,qBAAqB,GAAG,sBAAsB,CAAC,CAAC;AAE9E;;;GAGG;AACH,oBAAY,eAAe,CACzB,sBAAsB,SAAS,gBAAgB,GAAG,gBAAgB,IAChE;IACF,WAAW,EAAE,qBAAqB,CAAC,sBAAsB,CAAC,CAAC;IAC3D,UAAU,EAAE,qBAAqB,CAAC,sBAAsB,CAAC,EAAE,CAAC;CAC7D,CAAC;AAEF;;GAEG;AACH,oBAAY,yBAAyB,GAAG,QAAQ,CAAC,yBAAyB,CAAC;AAC3E,oBAAY,qBAAqB,GAAG,QAAQ,CAAC,qBAAqB,CAAC;AACnE,oBAAY,yBAAyB,GAAG,QAAQ,CAAC,yBAAyB,CAAC;AAC3E,oBAAY,0BAA0B,GAAG,QAAQ,CAAC,0BAA0B,CAAC;AAC7E,oBAAY,iCAAiC,GAC3C,QAAQ,CAAC,iCAAiC,CAAC;AAC7C,oBAAY,0BAA0B,GAAG,QAAQ,CAAC,0BAA0B,CAAC"}
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../lib/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,IAAI,QAAQ,EAAC,MAAM,aAAa,CAAC;AAE1D;;GAEG;AACH,aAAK,UAAU,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAExC;;GAEG;AACH,aAAK,gBAAgB,GAAG,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AAEhD;;GAEG;AACH,aAAK,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAExC;;;GAGG;AACH,aAAK,gBAAgB,CAAC,YAAY,SAAS,YAAY,GAAG,YAAY,IAAI,OAAO,CAC/E,QAAQ,CAAC,YAAY,GAAG,YAAY,CACrC,CAAC;AAEF;;;;GAIG;AACH,oBAAY,YAAY,CAAC,YAAY,SAAS,YAAY,GAAG,YAAY,IAAI,gBAAgB,CAC3F,QAAQ,CAAC,kBAAkB,GAAG,YAAY,CAC3C,CAAC;AAEF;;GAEG;AACH,oBAAY,qBAAqB,CAC/B,sBAAsB,SAAS,gBAAgB,GAAG,gBAAgB,IAChE,gBAAgB,CAAC,QAAQ,CAAC,qBAAqB,GAAG,sBAAsB,CAAC,CAAC;AAE9E;;;GAGG;AACH,oBAAY,eAAe,CAAC,sBAAsB,SAAS,gBAAgB,GAAG,gBAAgB,IAAI;IAChG,WAAW,EAAE,qBAAqB,CAAC,sBAAsB,CAAC,CAAC;IAC3D,UAAU,EAAE,qBAAqB,CAAC,sBAAsB,CAAC,EAAE,CAAC;CAC7D,CAAC;AAEF;;GAEG;AACH,oBAAY,yBAAyB,GAAG,QAAQ,CAAC,yBAAyB,CAAC;AAC3E,oBAAY,qBAAqB,GAAG,QAAQ,CAAC,qBAAqB,CAAC;AACnE,oBAAY,yBAAyB,GAAG,QAAQ,CAAC,yBAAyB,CAAC;AAC3E,oBAAY,0BAA0B,GAAG,QAAQ,CAAC,0BAA0B,CAAC;AAC7E,oBAAY,iCAAiC,GAAG,QAAQ,CAAC,iCAAiC,CAAC;AAC3F,oBAAY,0BAA0B,GAAG,QAAQ,CAAC,0BAA0B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../lib/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpE;;GAEG;AACH,oBAAY,YAAY,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAExD;;GAEG;AACF,aAAK,sBAAsB,GAC3B,OAAO,sBAAsB,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC;AAErE;;;GAGG;AACH,aAAK,mBAAmB,GAAG,UAAU,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC;AAE5E;;GAEG;AACH,oBAAY,sBAAsB,GAAG;KAClC,IAAI,IAAI,MAAM,mBAAmB,IAAI,sBAAsB,CAAC,IAAI,CAAC,SAAS,QAAQ,GAC/E,sBAAsB,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,GAC7C,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC;CAC5C,CAAC;AAEF;;GAEG;AACH,oBAAY,sBAAsB,GAAG;IACnC,MAAM,EAAE,sBAAsB,CAAC;CAChC,CAAC;AAEF;;;;GAIG;AACH,aAAK,aAAa,CAAC,IAAI,SAAS,MAAM,mBAAmB,IACvD,sBAAsB,CAAC,IAAI,CAAC,SAAS,QAAQ,GACzC,sBAAsB,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,GAC7C,YAAY,CAAC,IAAI,CAAC,CAAC;AAEzB;;;;GAIG;AACH,aAAK,mBAAmB,CAAC,IAAI,SAAS,MAAM,mBAAmB,IAC7D,sBAAsB,CAAC,IAAI,CAAC,SAAS,WAAW,GAC5C,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,GAC/B,YAAY,CAAC,IAAI,CAAC,CAAC;AAEzB;;;;GAIG;AACH,oBAAY,UAAU,GAAG;KACtB,IAAI,IAAI,MAAM,mBAAmB,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC;CACtF,CAAC;AAGF;;GAEG;AACF,aAAK,YAAY,CAAC,CAAC,SAAS,MAAM,IAClC,CAAC,SAAS,GAAG,MAAM,EAAE,IAAI,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,GAC1C,GAAG,SAAS,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,EAAE,GACrD,SAAS,CAAC,CAAC,CAAC,CAAC;AAoBlB;;GAEG;AACH,aAAK,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS;KAAG,GAAG,IAAI,MAAM,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO;CAAE,IAAI;KACpF,IAAI,IAAI,MAAM,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;CACrC,CAAA;AAQD;;;;;GAKG;AACF,UAAU,QAAQ;IACjB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;GAMG;AACH,UAAU,WAAW,CAAC,CAAC,GAAG,GAAG;IAC3B,OAAO,EAAE,CAAC,CAAC;CACZ"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../lib/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,sBAAsB,EAAC,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAC,mBAAmB,EAAE,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAElE;;GAEG;AACH,oBAAY,YAAY,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAExD;;GAEG;AACH,aAAK,sBAAsB,GAAG,OAAO,sBAAsB,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC;AAElG;;;GAGG;AACH,aAAK,mBAAmB,GAAG,UAAU,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC;AAE5E;;GAEG;AACH,oBAAY,sBAAsB,GAAG;KAClC,IAAI,IAAI,MAAM,mBAAmB,IAAI,sBAAsB,CAAC,IAAI,CAAC,SAAS,QAAQ,GAC/E,sBAAsB,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,GAC7C,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC;CAC5C,CAAC;AAEF;;GAEG;AACH,oBAAY,sBAAsB,GAAG;IACnC,MAAM,EAAE,sBAAsB,CAAC;CAChC,CAAC;AAEF;;;;GAIG;AACH,aAAK,aAAa,CAAC,IAAI,SAAS,MAAM,mBAAmB,IACvD,sBAAsB,CAAC,IAAI,CAAC,SAAS,QAAQ,GACzC,sBAAsB,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,GAC7C,YAAY,CAAC,IAAI,CAAC,CAAC;AAEzB;;;;GAIG;AACH,aAAK,mBAAmB,CAAC,IAAI,SAAS,MAAM,mBAAmB,IAC7D,sBAAsB,CAAC,IAAI,CAAC,SAAS,WAAW,GAC5C,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,GAC/B,YAAY,CAAC,IAAI,CAAC,CAAC;AAEzB;;;;GAIG;AACH,oBAAY,UAAU,GAAG;KACtB,IAAI,IAAI,MAAM,mBAAmB,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC;CACtF,CAAC;AAGF;;GAEG;AACH,aAAK,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,GAAG,MAAM,EAAE,IAAI,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,GAChF,GAAG,SAAS,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,EAAE,GACrD,SAAS,CAAC,CAAC,CAAC,CAAC;AAoBjB;;GAEG;AACH,aAAK,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS;KAAE,GAAG,IAAI,MAAM,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO;CAAC,IAAI;KAClF,IAAI,IAAI,MAAM,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;CACrC,CAAC;AAQF;;;;;GAKG;AACH,UAAU,QAAQ;IAChB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;GAMG;AACH,UAAU,WAAW,CAAC,CAAC,GAAG,GAAG;IAC3B,OAAO,EAAE,CAAC,CAAC;CACZ"}
@@ -0,0 +1,440 @@
1
+ /// <reference types="node" />
2
+ import type { EventEmitter } from 'events';
3
+ import { HTTPMethod, Capabilities, AppiumServer, UpdateServerCallback, Class, MethodMap, AppiumLogger } from '.';
4
+ import { W3CCapabilities } from './capabilities';
5
+ import { ServerArgs } from './config';
6
+ export interface TimeoutCommands {
7
+ timeouts(type: string, ms: number | string, script?: number, pageLoad?: number, implicit?: number | string): Promise<void>;
8
+ setNewCommandTimeout(ms: number): void;
9
+ implicitWait(ms: number | string): Promise<void>;
10
+ setImplicitWait(ms: number): void;
11
+ implicitWaitForCondition(condition: () => Promise<any>): Promise<unknown>;
12
+ getTimeouts(): Promise<Record<string, number>>;
13
+ implicitWaitW3C(ms: number): Promise<void>;
14
+ implicitWaitMJSONWP(ms: number): Promise<void>;
15
+ pageLoadTimeoutW3C(ms: number): Promise<void>;
16
+ pageLoadTimeoutMJSONWP(ms: number): Promise<void>;
17
+ scriptTimeoutW3C(ms: number): Promise<void>;
18
+ scriptTimeoutMJSONWP(ms: number): Promise<void>;
19
+ newCommandTimeout(ms: number): Promise<void>;
20
+ parseTimeoutArgument(ms: number | string): number;
21
+ }
22
+ export interface EventCommands {
23
+ logCustomEvent(vendor: string, event: string): Promise<void>;
24
+ getLogEvents(type?: string | string[]): Promise<EventHistory | Record<string, number>>;
25
+ }
26
+ export interface SessionCommands {
27
+ getSessions(): Promise<MultiSessionData[]>;
28
+ getSession(): Promise<SingularSessionData>;
29
+ }
30
+ export interface MultiSessionData {
31
+ id: string;
32
+ capabilities: Capabilities;
33
+ }
34
+ export declare type SingularSessionData = Capabilities & {
35
+ events?: EventHistory;
36
+ };
37
+ export interface FindCommands {
38
+ findElement(strategy: string, selector: string): Promise<Element>;
39
+ findElements(strategy: string, selector: string): Promise<Element[]>;
40
+ findElementFromElement(strategy: string, selector: string, elementId: string): Promise<Element>;
41
+ findElementsFromElement(strategy: string, selector: string, elementId: string): Promise<Element[]>;
42
+ findElOrEls<Mult extends boolean>(strategy: string, selector: string, mult: Mult, context?: string): Promise<Mult extends true ? Element[] : Element>;
43
+ findElOrElsWithProcessing<Mult extends boolean>(strategy: string, selector: string, mult: Mult, context?: string): Promise<Mult extends true ? Element[] : Element>;
44
+ getPageSource(): Promise<string>;
45
+ }
46
+ export interface LogCommands {
47
+ supportedLogTypes: Record<string, LogType<Driver>>;
48
+ getLogTypes(): Promise<string[]>;
49
+ /**
50
+ * Gets logs
51
+ *
52
+ * TODO: `logType` should be a key in `supportedLogTypes`, and the return value of this function
53
+ * should be the associated `LogType` object's `LogEntry` parameterized type.
54
+ * @param logType - Name/key of log type as defined in {@linkcode LogCommands.supportedLogTypes}.
55
+ */
56
+ getLog(logType: string): Promise<any[]>;
57
+ }
58
+ export interface SettingsCommands {
59
+ updateSettings: (settings: Record<string, any>) => Promise<void>;
60
+ getSettings(): Promise<Record<string, any>>;
61
+ }
62
+ export interface SessionHandler<CreateResult, DeleteResult> {
63
+ createSession(w3cCaps1: W3CCapabilities, w3cCaps2?: W3CCapabilities, w3cCaps?: W3CCapabilities, driverData?: DriverData[]): Promise<CreateResult>;
64
+ deleteSession(sessionId?: string, driverData?: DriverData[]): Promise<DeleteResult>;
65
+ }
66
+ /**
67
+ * Custom session data for a driver.
68
+ */
69
+ export declare type DriverData = Record<string, unknown>;
70
+ /**
71
+ * Extensions can define new methods for the Appium server to map to command names, of the same
72
+ * format as used in Appium's `routes.js`.
73
+ *
74
+ *
75
+ * @example
76
+ * {
77
+ * '/session/:sessionId/new_method': {
78
+ * GET: {command: 'getNewThing'},
79
+ * POST: {command: 'setNewThing', payloadParams: {required: ['someParam']}}
80
+ * }
81
+ * }
82
+ */
83
+ export interface Constraint {
84
+ presence?: boolean | {
85
+ allowEmpty: boolean;
86
+ };
87
+ isString?: boolean;
88
+ isNumber?: boolean;
89
+ isBoolean?: boolean;
90
+ isObject?: boolean;
91
+ isArray?: boolean;
92
+ deprecated?: boolean;
93
+ inclusion?: any[];
94
+ }
95
+ export declare type Constraints = Record<string, Constraint>;
96
+ export interface Element {
97
+ 'element-6066-11e4-a52e-4f735466cecf': string;
98
+ }
99
+ export interface DriverHelpers {
100
+ configureApp: (app: string, supportedAppExtensions: string[]) => Promise<string>;
101
+ isPackageOrBundle: (app: string) => boolean;
102
+ duplicateKeys: <T>(input: T, firstKey: string, secondKey: string) => T;
103
+ parseCapsArray: (cap: string | string[]) => string[];
104
+ generateDriverLogPrefix: (obj: Core, sessionId?: string) => string;
105
+ }
106
+ export declare type SettingsUpdateListener<T extends Record<string, unknown> = Record<string, unknown>> = (prop: keyof T, newValue: unknown, curValue: unknown) => Promise<void>;
107
+ export interface DeviceSettings<T = any> {
108
+ update(newSettings: Record<string, T>): Promise<void>;
109
+ getSettings(): Record<string, T>;
110
+ }
111
+ export interface LogType<TDriver, LogEntry = string> {
112
+ description: string;
113
+ getter: (driver: TDriver) => Promise<LogEntry[]>;
114
+ }
115
+ export interface Rect {
116
+ x: number;
117
+ y: number;
118
+ width: number;
119
+ height: number;
120
+ }
121
+ export declare type NewWindowType = 'tab' | 'window';
122
+ export interface NewWindow {
123
+ handle: string;
124
+ type: NewWindowType;
125
+ }
126
+ export interface Cookie {
127
+ name: string;
128
+ value: string;
129
+ path?: string;
130
+ domain?: string;
131
+ secure?: boolean;
132
+ httpOnly?: boolean;
133
+ expiry?: number;
134
+ sameSite?: 'Lax' | 'Strict';
135
+ }
136
+ export interface Actions {
137
+ type?: string;
138
+ actions: Action[];
139
+ parameters?: {
140
+ pointerType?: string;
141
+ };
142
+ }
143
+ export interface Action {
144
+ duration?: number;
145
+ type: string;
146
+ value?: string;
147
+ x?: number;
148
+ y?: number;
149
+ button?: number;
150
+ origin?: string;
151
+ }
152
+ export interface ScreenRecordOptions {
153
+ remotePath?: string;
154
+ username?: string;
155
+ password?: string;
156
+ method?: string;
157
+ forceRestart?: boolean;
158
+ timeLimit?: string;
159
+ videoType?: string;
160
+ videoQuality?: string;
161
+ videoFps?: string;
162
+ videoScale?: string;
163
+ bitRate?: string;
164
+ videoSize?: string;
165
+ bugReport?: string;
166
+ }
167
+ export declare type Size = Pick<Rect, 'width' | 'height'>;
168
+ export declare type Position = Pick<Rect, 'x' | 'y'>;
169
+ export interface Location {
170
+ latitude: number;
171
+ longitude: number;
172
+ altitude: number;
173
+ }
174
+ export interface Rotation {
175
+ x: number;
176
+ y: number;
177
+ z: number;
178
+ }
179
+ export interface Credential {
180
+ credentialId: string;
181
+ isResidentCredential: boolean;
182
+ rpId: string;
183
+ privateKey: string;
184
+ userHandle?: string;
185
+ signCount: number;
186
+ largeBlob?: string;
187
+ }
188
+ export interface EventHistory {
189
+ commands: EventHistoryCommand[];
190
+ [key: string]: any;
191
+ }
192
+ export interface EventHistoryCommand {
193
+ cmd: string;
194
+ startTime: number;
195
+ endTime: number;
196
+ }
197
+ /**
198
+ * Methods and properties which both `AppiumDriver` and `BaseDriver` inherit.
199
+ *
200
+ * This should not be used directly by external code.
201
+ */
202
+ export interface Core {
203
+ shouldValidateCaps: boolean;
204
+ sessionId: string | null;
205
+ opts: DriverOpts;
206
+ initialOpts: ServerArgs;
207
+ caps?: Capabilities;
208
+ originalCaps?: W3CCapabilities;
209
+ protocol?: string;
210
+ helpers: DriverHelpers;
211
+ basePath: string;
212
+ relaxedSecurityEnabled: boolean;
213
+ allowInsecure: string[];
214
+ denyInsecure: string[];
215
+ newCommandTimeoutMs: number;
216
+ implicitWaitMs: number;
217
+ locatorStrategies: string[];
218
+ webLocatorStrategies: string[];
219
+ eventEmitter: EventEmitter;
220
+ settings: DeviceSettings;
221
+ log: AppiumLogger;
222
+ driverData?: DriverData;
223
+ isCommandsQueueEnabled: boolean;
224
+ eventHistory: EventHistory;
225
+ onUnexpectedShutdown(handler: () => any): void;
226
+ getStatus(): Promise<any>;
227
+ sessionExists(sessionId: string): boolean;
228
+ isW3CProtocol(): boolean;
229
+ isMjsonwpProtocol(): boolean;
230
+ isFeatureEnabled(name: string): boolean;
231
+ ensureFeatureEnabled(name: string): void;
232
+ validateLocatorStrategy(strategy: string, webContext?: boolean): void;
233
+ proxyActive(sessionId?: string): boolean;
234
+ getProxyAvoidList(sessionId?: string): [string, RegExp][];
235
+ canProxy(sessionId?: string): boolean;
236
+ proxyRouteIsAvoided(sessionId: string, method: string, url: string): boolean;
237
+ addManagedDriver(driver: Driver): void;
238
+ getManagedDrivers(): Driver[];
239
+ clearNewCommandTimeout(): Promise<void>;
240
+ logEvent(eventName: string): void;
241
+ driverForSession(sessionId: string): Core | null;
242
+ }
243
+ /**
244
+ * `BaseDriver` implements this. It contains default behavior;
245
+ * external drivers are expected to implement {@linkcode ExternalDriver} instead.
246
+ */
247
+ export interface Driver extends SessionCommands, LogCommands, FindCommands, SettingsCommands, TimeoutCommands, EventCommands, SessionHandler<[string, any], void>, Core {
248
+ cliArgs?: Record<string, any>;
249
+ executeCommand(cmd: string, ...args: any[]): Promise<any>;
250
+ startUnexpectedShutdown(err?: Error): Promise<void>;
251
+ startNewCommandTimeout(): Promise<void>;
252
+ reset(): Promise<void>;
253
+ desiredCapConstraints: Constraints;
254
+ validateDesiredCaps(caps: Capabilities): boolean;
255
+ logExtraCaps(caps: Capabilities): void;
256
+ assignServer?(server: AppiumServer, host: string, port: number, path: string): void;
257
+ }
258
+ /**
259
+ * External drivers must subclass `BaseDriver`, and can implement any of these methods.
260
+ * None of these are implemented within Appium itself.
261
+ */
262
+ export interface ExternalDriver extends Driver {
263
+ server: AppiumServer;
264
+ serverHost: string;
265
+ serverPort: number;
266
+ serverPath: string;
267
+ setUrl?(url: string): Promise<void>;
268
+ getUrl?(): Promise<string>;
269
+ back?(): Promise<void>;
270
+ forward?(): Promise<void>;
271
+ refresh?(): Promise<void>;
272
+ title?(): Promise<string>;
273
+ getWindowHandle?(): Promise<string>;
274
+ closeWindow?(): Promise<string[]>;
275
+ setWindow?(handle: string): Promise<void>;
276
+ getWindowHandles?(): Promise<string[]>;
277
+ setFrame?(id: null | number | string): Promise<void>;
278
+ getWindowRect?(): Promise<Rect>;
279
+ setWindowRect?(x: number, y: number, width: number, height: number): Promise<Rect>;
280
+ maximizeWindow?(): Promise<Rect>;
281
+ minimizeWindow?(): Promise<Rect>;
282
+ fullScreenWindow?(): Promise<Rect>;
283
+ createNewWindow?(type?: NewWindowType): Promise<NewWindow>;
284
+ active?(): Promise<Element>;
285
+ elementSelected?(elementId: string): Promise<boolean>;
286
+ getAttribute?(name: string, elementId: string): Promise<string | null>;
287
+ getProperty?(name: string, elementId: string): Promise<string | null>;
288
+ getCssProperty?(name: string, elementId: string): Promise<string>;
289
+ getText?(elementId: string): Promise<string>;
290
+ getName?(elementId: string): Promise<string>;
291
+ getElementRect?(elementId: string): Promise<Rect>;
292
+ elementEnabled?(elementId: string): Promise<boolean>;
293
+ elementDisplayed?(elementId: string): Promise<boolean>;
294
+ click?(elementId: string): Promise<void>;
295
+ clear?(elementId: string): Promise<void>;
296
+ setValue?(text: string, elementId: string): Promise<void>;
297
+ execute?(script: string, args: unknown[]): Promise<unknown>;
298
+ executeAsync?(script: string, args: unknown[]): Promise<unknown>;
299
+ getCookies?(): Promise<Cookie[]>;
300
+ getCookie?(name: string): Promise<Cookie>;
301
+ setCookie?(cookie: Cookie): Promise<void>;
302
+ deleteCookie?(name: string): Promise<void>;
303
+ deleteCookies?(): Promise<void>;
304
+ performActions?(actions: Actions[]): Promise<void>;
305
+ releaseActions?(): Promise<void>;
306
+ postDismissAlert?(): Promise<void>;
307
+ postAcceptAlert?(): Promise<void>;
308
+ getAlertText?(): Promise<string | null>;
309
+ setAlertText?(text: string): Promise<void>;
310
+ getScreenshot?(): Promise<string>;
311
+ getElementScreenshot?(elementId: string): Promise<string>;
312
+ mobileShake?(): Promise<void>;
313
+ getDeviceTime?(format?: string): Promise<string>;
314
+ lock?(seconds?: number): Promise<void>;
315
+ unlock?(): Promise<void>;
316
+ isLocked?(): Promise<boolean>;
317
+ startRecordingScreen?(options?: ScreenRecordOptions): Promise<void>;
318
+ stopRecordingScreen?(options?: ScreenRecordOptions): Promise<string>;
319
+ getPerformanceDataTypes?(): Promise<string[]>;
320
+ getPerformanceData?(packageName: string, dataType: string, dataReadTimeout?: number): Promise<string[]>;
321
+ pressKeyCode?(keycode: number, metastate?: number, flags?: number): Promise<void>;
322
+ longPressKeyCode?(keycode: number, metastate?: number, flags?: number): Promise<void>;
323
+ fingerprint?(fingerprintId: number): Promise<void>;
324
+ sendSMS?(phoneNumber: string, message: string): Promise<void>;
325
+ gsmCall?(phoneNumber: string, action: string): Promise<void>;
326
+ gsmSignal?(signalStrength: string): Promise<void>;
327
+ gsmVoice?(state: string): Promise<void>;
328
+ powerCapacity?(percent: number): Promise<void>;
329
+ powerAC?(state: string): Promise<void>;
330
+ networkSpeed?(netspeed: string): Promise<void>;
331
+ keyevent?(keycode: string, metastate?: string): Promise<void>;
332
+ mobileRotation?(x: number, y: number, radius: number, rotation: number, touchCount: number, duration: string, elementId?: string): Promise<void>;
333
+ getCurrentActivity?(): Promise<string>;
334
+ getCurrentPackage?(): Promise<string>;
335
+ installApp?(appPath: string, options?: unknown): Promise<void>;
336
+ activateApp?(appId: string, options?: unknown): Promise<void>;
337
+ removeApp?(appId: string, options?: unknown): Promise<void>;
338
+ terminateApp?(appId: string, options?: unknown): Promise<void>;
339
+ isAppInstalled?(appId: string): Promise<boolean>;
340
+ queryAppState?(appId: string): Promise<number>;
341
+ hideKeyboard?(strategy?: string, key?: string, keyCode?: string, keyName?: string): Promise<void>;
342
+ isKeyboardShown?(): Promise<boolean>;
343
+ pushFile?(path: string, data: string): Promise<void>;
344
+ pullFile?(path: string): Promise<string>;
345
+ pullFolder?(path: string): Promise<string>;
346
+ toggleFlightMode?(): Promise<void>;
347
+ toggleData?(): Promise<void>;
348
+ toggleWiFi?(): Promise<void>;
349
+ toggleLocationServices?(): Promise<void>;
350
+ openNotifications?(): Promise<void>;
351
+ startActivity?(appPackage: string, appActivity: string, appWaitPackage?: string, appWaitActivity?: string, intentAction?: string, intentCategory?: string, intentFlags?: string, optionalIntentArguments?: string, dontStopAppOnReset?: boolean): Promise<void>;
352
+ getSystemBars?(): Promise<unknown[]>;
353
+ getDisplayDensity?(): Promise<number>;
354
+ touchId?(match: boolean): Promise<void>;
355
+ toggleEnrollTouchId?(enabled: boolean): Promise<void>;
356
+ launchApp?(): Promise<void>;
357
+ closeApp?(): Promise<void>;
358
+ background?(seconds: null | number): Promise<void>;
359
+ endCoverage?(intent: string, path: string): Promise<void>;
360
+ getStrings?(language?: string, stringFile?: string): Promise<Record<string, unknown>>;
361
+ setValueImmediate?(value: string, elementId: string): Promise<void>;
362
+ replaceValue?(value: string, elementId: string): Promise<void>;
363
+ receiveAsyncResponse?(response: unknown): Promise<void>;
364
+ setClipboard?(content: string, contentType?: string, label?: string): Promise<void>;
365
+ getClipboard?(contentType?: string): Promise<string>;
366
+ asyncScriptTimeout?(ms: number): Promise<void>;
367
+ getWindowSize?(): Promise<Size>;
368
+ getLocation?(elementId: string): Promise<Position>;
369
+ getLocationInView?(elementId: string): Promise<Position>;
370
+ getSize?(elementId: string): Promise<Size>;
371
+ elementShadowRoot?(elementId: string): Promise<Element>;
372
+ findElementFromShadowRoot?(strategy: string, selector: string, shadowId: string): Promise<Element>;
373
+ findElementsFromShadowRoot?(strategy: string, selector: string, shadowId: string): Promise<Element[]>;
374
+ equalsElement?(elementId: string, otherElementId: string): Promise<boolean>;
375
+ submit?(elementId: string): Promise<void>;
376
+ keys?(value: string[]): Promise<void>;
377
+ availableIMEEngines?(): Promise<string[]>;
378
+ getActiveIMEEngine?(): Promise<string>;
379
+ isIMEActivated?(): Promise<boolean>;
380
+ deactivateIMEEngine?(): Promise<void>;
381
+ activateIMEEngine?(engine: string): Promise<void>;
382
+ getOrientation?(): Promise<string>;
383
+ setOrientation?(orientation: string): Promise<void>;
384
+ moveTo?(element?: null | string, xOffset?: number, yOffset?: number): Promise<void>;
385
+ buttonDown?(button?: number): Promise<void>;
386
+ buttonUp?(button?: number): Promise<void>;
387
+ clickCurrent?(button?: number): Promise<void>;
388
+ doubleClick?(): Promise<void>;
389
+ touchDown?(x: number, y: number): Promise<void>;
390
+ touchUp?(x: number, y: number): Promise<void>;
391
+ touchMove?(x: number, y: number): Promise<void>;
392
+ touchLongClick?(elementId: string): Promise<void>;
393
+ flick?(element?: string, xSpeed?: number, ySpeed?: number, xOffset?: number, yOffset?: number, speed?: number): Promise<void>;
394
+ getGeoLocation?(): Promise<Location>;
395
+ setGeoLocation?(location: Partial<Location>): Promise<void>;
396
+ getCurrentContext?(): Promise<string | null>;
397
+ setContext?(name: string): Promise<void>;
398
+ getContexts?(): Promise<string[]>;
399
+ getPageIndex?(elementId: string): Promise<string>;
400
+ getNetworkConnection?(): Promise<number>;
401
+ setNetworkConnection?(type: number): Promise<void>;
402
+ performTouch?(actions: unknown): Promise<void>;
403
+ performMultiAction?(actions: unknown, elementId: string): Promise<void>;
404
+ getRotation?(): Promise<Rotation>;
405
+ setRotation?(x: number, y: number, z: number): Promise<void>;
406
+ executeCdp?(cmd: string, params: unknown): Promise<unknown>;
407
+ addVirtualAuthenticator?(protocol: string, transport: string, hasResidentKey?: boolean, hasUserVerification?: boolean, isUserConsenting?: boolean, isUserVerified?: boolean): Promise<void>;
408
+ removeVirtualAuthenticator?(): Promise<void>;
409
+ addAuthCredential?(credentialId: string, isResidentCredential: boolean, rpId: string, privateKey: string, userHandle?: string, signCount?: number): Promise<void>;
410
+ getAuthCredential?(): Promise<Credential[]>;
411
+ removeAllAuthCredentials?(): Promise<void>;
412
+ removeAuthCredential?(): Promise<void>;
413
+ setUserAuthVerified?(isUserVerified: boolean): Promise<void>;
414
+ proxyCommand?(url: string, method: HTTPMethod, body?: string): Promise<unknown>;
415
+ }
416
+ /**
417
+ * Static members of a {@linkcode DriverClass}.
418
+ *
419
+ * This is likely unusable by external consumers, but YMMV!
420
+ */
421
+ export interface DriverStatic {
422
+ baseVersion: string;
423
+ updateServer?: UpdateServerCallback;
424
+ newMethodMap?: MethodMap<ExternalDriver>;
425
+ }
426
+ /**
427
+ * Represents a driver class, which is used internally by Appium.
428
+ *
429
+ * This is likely unusable by external consumers, but YMMV!
430
+ */
431
+ export declare type DriverClass<D extends Driver = ExternalDriver, S extends DriverStatic = DriverStatic> = Class<D, S, [] | [Partial<ServerArgs>] | [Partial<ServerArgs>, boolean]>;
432
+ /**
433
+ * Options as passed into a driver constructor, which is just a union of {@linkcode ServerArgs} and {@linkcode Capabilities}.
434
+ *
435
+ * The combination happens within Appium prior to calling the constructor.
436
+ */
437
+ export declare type DriverOpts = ServerArgs & Capabilities;
438
+ export declare type DriverCommand<TArgs = any, TReturn = unknown> = (...args: TArgs[]) => Promise<TReturn>;
439
+ export declare type DriverCommands<TArgs = any, TReturn = unknown> = Record<string, DriverCommand<TArgs, TReturn>>;
440
+ //# sourceMappingURL=driver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../lib/driver.ts"],"names":[],"mappings":"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"}