@appium/base-plugin
Version:
The base plugin used to create Appium plugins
26 lines • 1.37 kB
TypeScript
import { ExtensionCore } from '@appium/base-driver';
import type { AppiumLogger, Constraints, Driver, ExecuteMethodMap, MethodMap, NextPluginCallback, Plugin, PluginCommand, StringRecord } from '@appium/types';
type BasePluginMapType = Plugin & Record<string, PluginCommand>;
/**
* Base plugin class for Appium plugins.
* Subclasses should use type `import('@appium/types').MethodMap<SubclassName>` for
* `newMethodMap` and `ExecuteMethodMap<SubclassName>` for `executeMethodMap`.
*/
export declare class BasePlugin extends ExtensionCore implements Plugin {
static newMethodMap: MethodMap<BasePluginMapType>;
static executeMethodMap: ExecuteMethodMap<BasePluginMapType>;
name: string;
cliArgs: Record<string, unknown>;
/**
* @deprecated Use this.log instead of this.logger
*/
logger: AppiumLogger;
constructor(name: string, cliArgs?: Record<string, unknown>, driverId?: string | null);
/**
* A convenience method for plugins that implement their own `executeMethodMap`.
* Pass through to the driver's execute method if the plugin does not handle the script.
*/
executeMethod<C extends Constraints>(next: NextPluginCallback, driver: Driver<C>, script: string, protoArgs: readonly [StringRecord<unknown>] | readonly unknown[]): Promise<unknown>;
}
export default BasePlugin;
//# sourceMappingURL=plugin.d.ts.map