UNPKG

appium-remote-debugger

Version:
93 lines 4.39 kB
import type { RawRemoteCommand, RemoteCommandOpts, ProtocolCommandOpts, AppIdKey, PageIdKey, RemoteCommandId } from '../types'; /** * Generates remote commands for communicating with the Web Inspector. * Provides methods for creating various types of commands including connection * setup, application management, and protocol commands. */ export declare class RemoteMessages { /** * Creates a command to set the connection key for the Web Inspector session. * * @param connId - The connection identifier. * @returns A RawRemoteCommand for setting the connection key. */ setConnectionKey(connId: string): RawRemoteCommand; /** * Creates a command to connect to a specific application. * * @param connId - The connection identifier. * @param appIdKey - The application identifier key. * @returns A RawRemoteCommand for connecting to the application. */ connectToApp(connId: string, appIdKey: AppIdKey): RawRemoteCommand; /** * Creates a command to set the sender key for message routing. * * @param connId - The connection identifier. * @param senderId - The sender identifier. * @param appIdKey - The application identifier key. * @param pageIdKey - Optional page identifier key. * @returns A RawRemoteCommand for setting the sender key. */ setSenderKey(connId: string, senderId: string, appIdKey: AppIdKey, pageIdKey?: PageIdKey): RawRemoteCommand; /** * Creates a command to indicate web view status. * * @param connId - The connection identifier. * @param appIdKey - The application identifier key. * @param pageIdKey - Optional page identifier key. * @param enabled - Whether the web view indication is enabled. Defaults to true if not provided. * @returns A RawRemoteCommand for indicating web view status. */ indicateWebView(connId: string, appIdKey: AppIdKey, pageIdKey?: PageIdKey, enabled?: boolean): RawRemoteCommand; /** * Creates a command to launch an application. * * @param bundleId - The bundle identifier of the application to launch. * @returns A RawRemoteCommand for launching the application. */ launchApplication(bundleId: string): RawRemoteCommand; /** * Creates a full command with all default parameters included. * This includes objectGroup, includeCommandLineAPI, and other runtime options. * * @param opts - Options combining RemoteCommandOpts and ProtocolCommandOpts. * @returns A RawRemoteCommand with full parameter set. */ getFullCommand(opts: RemoteCommandOpts & ProtocolCommandOpts): RawRemoteCommand; /** * Creates a minimal command with only the essential parameters. * This is the default command type for most operations. * * @param opts - Options combining RemoteCommandOpts and ProtocolCommandOpts. * @returns A RawRemoteCommand with minimal parameter set. */ getMinimalCommand(opts: RemoteCommandOpts & ProtocolCommandOpts): RawRemoteCommand; /** * Creates a direct command that bypasses the Target.sendMessageToTarget wrapper. * Used for certain Target domain commands. * * @param opts - Options combining RemoteCommandOpts and ProtocolCommandOpts. * @returns A RawRemoteCommand for direct protocol communication. */ getDirectCommand(opts: RemoteCommandOpts & ProtocolCommandOpts): RawRemoteCommand; /** * Gets a remote command based on the command name and options. * Handles both Safari Web Inspector commands and WebKit protocol commands. * * @param command - The command name (e.g., 'setConnectionKey', 'Runtime.evaluate'). * @param opts - Options for the command. * @returns A RawRemoteCommand appropriate for the given command. * @throws Error if required parameters are missing for specific commands. */ getRemoteCommand(command: string, opts: RemoteCommandOpts & RemoteCommandId): RawRemoteCommand; } /** * Checks if a command should use the direct command format. * Direct commands bypass the Target.sendMessageToTarget wrapper. * * @param command - The command name to check. * @returns True if the command should use direct format, false otherwise. */ export declare function isDirectCommand(command: string): boolean; //# sourceMappingURL=remote-messages.d.ts.map