appium_lib_core 11.0.1 → 11.1.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 (107) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/Gemfile +1 -1
  4. data/README.md +26 -6
  5. data/appium_lib_core.gemspec +1 -1
  6. data/lib/appium_lib_core/common/base/bidi_bridge.rb +96 -0
  7. data/lib/appium_lib_core/common/base/driver.rb +28 -2
  8. data/lib/appium_lib_core/common/base.rb +2 -1
  9. data/lib/appium_lib_core/common/device/app_management.rb +1 -1
  10. data/lib/appium_lib_core/common/device/keyboard.rb +1 -1
  11. data/lib/appium_lib_core/driver.rb +2 -2
  12. data/lib/appium_lib_core/version.rb +2 -2
  13. data/sig/gems/em.rbs +5 -0
  14. data/sig/gems/faye.rbs +10 -0
  15. data/sig/gems/selenium/atoms.rbs +16 -0
  16. data/sig/gems/selenium/bidi/browsing_context.rbs +27 -0
  17. data/sig/gems/selenium/bidi/browsing_context_info.rbs +25 -0
  18. data/sig/gems/selenium/bidi/log_inspector.rbs +33 -0
  19. data/sig/gems/selenium/bidi/navigate_result.rbs +17 -0
  20. data/sig/gems/selenium/bidi/session.rbs +19 -0
  21. data/sig/gems/selenium/bridge.rbs +275 -0
  22. data/sig/gems/selenium/chrome/features.rbs +16 -0
  23. data/sig/gems/selenium/chromium/features.rbs +42 -0
  24. data/sig/gems/selenium/common/element.rbs +65 -0
  25. data/sig/gems/selenium/edge/features.rbs +17 -0
  26. data/sig/gems/selenium/error.rbs +9 -0
  27. data/sig/gems/selenium/event_firing_bridge.rbs +47 -0
  28. data/sig/gems/selenium/firefox/driver.rbs +21 -0
  29. data/sig/gems/selenium/firefox/extension.rbs +31 -0
  30. data/sig/gems/selenium/firefox/features.rbs +25 -0
  31. data/sig/gems/selenium/firefox/options.rbs +8 -0
  32. data/sig/gems/selenium/firefox/profile.rbs +77 -0
  33. data/sig/gems/selenium/firefox/profiles_ini.rbs +23 -0
  34. data/sig/gems/selenium/firefox/service.rbs +6 -0
  35. data/sig/gems/selenium/firefox/util.rbs +12 -0
  36. data/sig/gems/selenium/ie/features.rbs +13 -0
  37. data/sig/gems/selenium/interactions.rbs +11 -0
  38. data/sig/gems/selenium/interfaces/commands.rbs +3 -0
  39. data/sig/gems/selenium/interfaces/commands_list.rbs +3 -0
  40. data/sig/gems/selenium/interfaces/devtools.rbs +3 -0
  41. data/sig/gems/selenium/interfaces/driver.rbs +17 -0
  42. data/sig/gems/selenium/interfaces/features.rbs +3 -0
  43. data/sig/gems/selenium/local_driver.rbs +11 -0
  44. data/sig/gems/selenium/platform.rbs +6 -0
  45. data/sig/gems/selenium/profile_helper.rbs +6 -0
  46. data/sig/gems/selenium/{default.rbs → remote/bridge/commands.rbs} +2 -3
  47. data/sig/gems/selenium/{capabilities.rbs → remote/capabilities.rbs} +2 -2
  48. data/sig/gems/selenium/remote/http/common.rbs +39 -0
  49. data/sig/gems/selenium/remote/http/default.rbs +48 -0
  50. data/sig/gems/selenium/{common.rbs → remote/response.rbs} +1 -3
  51. data/sig/gems/selenium/safari/features.rbs +23 -0
  52. data/sig/gems/selenium/search_context.rbs +17 -0
  53. data/sig/interfaces/bridge.rbs +5 -0
  54. data/sig/lib/appium_lib_core/android/device/auth_finger_print.rbs +13 -0
  55. data/sig/lib/appium_lib_core/android/device/clipboard.rbs +13 -0
  56. data/sig/lib/appium_lib_core/android/device/emulator.rbs +23 -0
  57. data/sig/lib/appium_lib_core/android/device/network.rbs +13 -0
  58. data/sig/lib/appium_lib_core/android/device/performance.rbs +13 -0
  59. data/sig/lib/appium_lib_core/android/device/screen.rbs +11 -0
  60. data/sig/lib/appium_lib_core/android/device.rbs +13 -0
  61. data/sig/lib/appium_lib_core/android/espresso/bridge.rbs +11 -0
  62. data/sig/lib/appium_lib_core/android/uiautomator1/bridge.rbs +11 -0
  63. data/sig/lib/appium_lib_core/android/uiautomator2/bridge.rbs +11 -0
  64. data/sig/lib/appium_lib_core/android/uiautomator2/device/battery.rbs +13 -0
  65. data/sig/lib/appium_lib_core/common/base/bidi_bridge.rbs +25 -0
  66. data/sig/lib/appium_lib_core/common/base/bridge.rbs +206 -0
  67. data/sig/lib/appium_lib_core/common/base/device_ime.rbs +25 -0
  68. data/sig/lib/appium_lib_core/common/base/remote_status.rbs +2 -0
  69. data/sig/lib/appium_lib_core/common/base/screenshot.rbs +2 -0
  70. data/sig/lib/appium_lib_core/common/base/search_context.rbs +9 -0
  71. data/sig/lib/appium_lib_core/common/command.rbs +13 -0
  72. data/sig/lib/appium_lib_core/common/device/app_management.rbs +29 -0
  73. data/sig/lib/appium_lib_core/common/device/app_state.rbs +15 -0
  74. data/sig/lib/appium_lib_core/common/device/clipboard_content_type.rbs +11 -0
  75. data/sig/lib/appium_lib_core/common/device/context.rbs +19 -0
  76. data/sig/lib/appium_lib_core/common/device/device.rbs +15 -0
  77. data/sig/lib/appium_lib_core/common/device/device_lock.rbs +17 -0
  78. data/sig/lib/appium_lib_core/common/device/execute_driver.rbs +25 -0
  79. data/sig/lib/appium_lib_core/common/device/file_management.rbs +17 -0
  80. data/sig/lib/appium_lib_core/common/device/image_comparison.rbs +27 -0
  81. data/sig/lib/appium_lib_core/common/device/ime_actions.rbs +21 -0
  82. data/sig/lib/appium_lib_core/common/device/keyboard.rbs +15 -0
  83. data/sig/lib/appium_lib_core/common/device/keyevent.rbs +17 -0
  84. data/sig/lib/appium_lib_core/common/device/orientation.rbs +15 -0
  85. data/sig/lib/appium_lib_core/common/device/screen_record.rbs +23 -0
  86. data/sig/lib/appium_lib_core/common/device/setting.rbs +15 -0
  87. data/sig/lib/appium_lib_core/common/error.rbs +26 -0
  88. data/sig/lib/appium_lib_core/common/log.rbs +19 -0
  89. data/sig/lib/appium_lib_core/common/logger.rbs +23 -0
  90. data/sig/lib/appium_lib_core/common/wait/timer.rbs +15 -0
  91. data/sig/lib/appium_lib_core/common/ws/websocket.rbs +103 -0
  92. data/sig/lib/appium_lib_core/driver.rbs +5 -5
  93. data/sig/lib/appium_lib_core/element.rbs +24 -0
  94. data/sig/lib/appium_lib_core/ios/clipboard.rbs +17 -0
  95. data/sig/lib/appium_lib_core/ios/device.rbs +12 -0
  96. data/sig/lib/appium_lib_core/ios/xcuitest/bridge.rbs +11 -0
  97. data/sig/lib/appium_lib_core/ios/xcuitest/device/performance.rbs +13 -0
  98. data/sig/lib/appium_lib_core/ios/xcuitest/device/screen.rbs +15 -0
  99. data/sig/lib/appium_lib_core/ios/xcuitest/device.rbs +14 -0
  100. data/sig/lib/appium_lib_core/mac2/bridge.rbs +9 -0
  101. data/sig/lib/appium_lib_core/mac2/device/screen.rbs +13 -0
  102. data/sig/lib/appium_lib_core/mac2/device.rbs +11 -0
  103. data/sig/lib/appium_lib_core/support/event_firing_bridge.rbs +21 -0
  104. data/sig/lib/appium_lib_core/windows/bridge.rbs +9 -0
  105. data/sig/lib/appium_lib_core/windows/device/screen.rbs +13 -0
  106. data/sig/lib/appium_lib_core/windows/device.rbs +11 -0
  107. metadata +105 -10
@@ -0,0 +1,11 @@
1
+ module Selenium
2
+ module WebDriver
3
+ class Interactions
4
+ def key: (String key) -> untyped
5
+ end
6
+
7
+ class Point
8
+ def initialize: (Integer x, Integer y) -> untyped
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,3 @@
1
+ interface _Commands
2
+ def commands: (untyped command) -> untyped
3
+ end
@@ -0,0 +1,3 @@
1
+ interface _CommandList
2
+ def command_list: () -> untyped
3
+ end
@@ -0,0 +1,3 @@
1
+ interface _ExecuteScript
2
+ def execute_script: (untyped, *untyped) -> untyped
3
+ end
@@ -0,0 +1,17 @@
1
+ interface _Driver
2
+ def capabilities: () -> untyped
3
+
4
+ def devtools_url: () -> untyped
5
+
6
+ def devtools_version: () -> untyped
7
+
8
+ def devtools_address: () -> untyped
9
+
10
+ def ref: () -> untyped
11
+
12
+ def bridge: () -> untyped
13
+
14
+ def browser: () -> untyped
15
+
16
+ def service_url: (untyped service) -> untyped
17
+ end
@@ -0,0 +1,3 @@
1
+ interface _Features
2
+ def upload_if_necessary: (untyped keys) -> untyped
3
+ end
@@ -0,0 +1,11 @@
1
+ module Selenium
2
+ module WebDriver
3
+ module LocalDriver
4
+ include _Driver
5
+
6
+ def initialize_local_driver: (untyped options, untyped service, untyped url) -> Array[untyped]
7
+
8
+ def process_options: (untyped options, untyped service) -> untyped
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,6 @@
1
+ module Selenium
2
+ module WebDriver
3
+ module Platform
4
+ end
5
+ end
6
+ end
@@ -0,0 +1,6 @@
1
+ module Selenium
2
+ module WebDriver
3
+ module ProfileHelper
4
+ end
5
+ end
6
+ end
@@ -1,9 +1,8 @@
1
1
  module Selenium
2
2
  module WebDriver
3
3
  module Remote
4
- module Http
5
- class Default
6
- end
4
+ class Bridge
5
+ COMMANDS: Hash[Symbol, Array[Symbol | String]]
7
6
  end
8
7
  end
9
8
  end
@@ -1,8 +1,8 @@
1
1
  module Selenium
2
2
  module WebDriver
3
3
  module Remote
4
- class Capabilities
5
- end
4
+ class Capabilities
5
+ end
6
6
  end
7
7
  end
8
8
  end
@@ -0,0 +1,39 @@
1
+ module Selenium
2
+ module WebDriver
3
+ module Remote
4
+ module Http
5
+ class Common
6
+ MAX_REDIRECTS: Integer
7
+
8
+ CONTENT_TYPE: String
9
+
10
+ DEFAULT_HEADERS: Hash[String, untyped]
11
+
12
+ attr_writer server_url: untyped
13
+
14
+ def quit_errors: () -> Array[untyped]
15
+
16
+ def close: () -> untyped
17
+
18
+ def call: (untyped verb, untyped url, untyped command_hash) -> untyped
19
+
20
+ def self.extra_headers: () -> untyped
21
+
22
+ def self.extra_headers=: (Hash[String, untyped]) -> untyped
23
+
24
+ def self.user_agent: () -> untyped
25
+
26
+ def self.user_agent=: (String) -> untyped
27
+
28
+ private
29
+
30
+ def server_url: () -> untyped
31
+
32
+ def request: (*untyped) -> untyped
33
+
34
+ def create_response: (untyped code, untyped body, untyped content_type) -> untyped
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,48 @@
1
+ module Selenium
2
+ module WebDriver
3
+ module Remote
4
+ module Http
5
+ # @api private
6
+ class Default < Common
7
+ @open_timeout: untyped
8
+
9
+ @read_timeout: untyped
10
+
11
+ @http: untyped
12
+
13
+ @proxy: untyped
14
+
15
+ attr_writer proxy: untyped
16
+
17
+ attr_accessor open_timeout: untyped
18
+
19
+ attr_accessor read_timeout: untyped
20
+
21
+ def initialize: (?open_timeout: untyped?, ?read_timeout: untyped?) -> void
22
+
23
+ def close: () -> untyped
24
+
25
+ private
26
+
27
+ def http: () -> untyped
28
+
29
+ def start: (untyped http) -> untyped
30
+
31
+ MAX_RETRIES: Integer
32
+
33
+ def request: (untyped verb, untyped url, untyped headers, untyped payload, ?::Integer redirects) -> untyped
34
+
35
+ def new_request_for: (untyped verb, untyped url, untyped headers, untyped payload) -> untyped
36
+
37
+ def response_for: (untyped request) -> untyped
38
+
39
+ def new_http_client: () -> untyped
40
+
41
+ def proxy: () -> untyped
42
+
43
+ def use_proxy?: () -> untyped
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -1,9 +1,7 @@
1
1
  module Selenium
2
2
  module WebDriver
3
3
  module Remote
4
- module Http
5
- class Common
6
- end
4
+ class Response
7
5
  end
8
6
  end
9
7
  end
@@ -0,0 +1,23 @@
1
+ module Selenium
2
+ module WebDriver
3
+ module Safari
4
+ module Features
5
+ include _Bridge
6
+
7
+ SAFARI_COMMANDS: Hash[Symbol, Array[Symbol | String]]
8
+
9
+ COMMANDS: untyped
10
+
11
+ def command_list: -> untyped
12
+
13
+ def commands: (untyped command) -> untyped
14
+
15
+ def permissions: () -> untyped
16
+
17
+ def permissions=: (untyped permissions) -> untyped
18
+
19
+ def attach_debugger: () -> untyped
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,17 @@
1
+ module Selenium
2
+ module WebDriver
3
+ module SearchContext
4
+ include _Driver
5
+
6
+ FINDERS: untyped
7
+
8
+ def find_element: (*untyped args) -> untyped
9
+
10
+ def find_elements: (*untyped args) -> untyped
11
+
12
+ private
13
+
14
+ def extract_args: (untyped args) -> untyped
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,5 @@
1
+ interface _Bridge
2
+ def bridge: -> untyped
3
+
4
+ def execute: (untyped command, ?Hash[untyped, untyped] opts, ?untyped? command_hash) -> untyped
5
+ end
@@ -0,0 +1,13 @@
1
+ module Appium
2
+ module Core
3
+ module Android
4
+ module Device
5
+ module Authentication
6
+ def execute: (Symbol command, ?Hash[untyped, untyped], ?Hash[untyped, untyped]) -> untyped
7
+
8
+ def self.add_methods: () -> untyped
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ module Appium
2
+ module Core
3
+ module Android
4
+ module Device
5
+ module Clipboard
6
+ def execute: (Symbol command, ?Hash[untyped, untyped], ?Hash[untyped, untyped]) -> untyped
7
+
8
+ def self.add_methods: () -> untyped
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,23 @@
1
+ module Appium
2
+ module Core
3
+ module Android
4
+ module Device
5
+ module Emulator
6
+ GSM_CALL_ACTIONS: ::Array[:call | :accept | :cancel | :hold]
7
+
8
+ GSM_VOICE_STATES: ::Array[:on | :off | :denied | :searching | :roaming | :home | :unregistered]
9
+
10
+ GSM_SIGNALS: { none_or_unknown: 0, poor: 1, moderate: 2, good: 3, great: 4 }
11
+
12
+ NET_SPEED: ::Array[:gsm | :scsd | :gprs | :edge | :umts | :hsdpa | :lte | :evdo | :full]
13
+
14
+ POWER_AC_STATE: ::Array[:on | :off]
15
+
16
+ def self.add_methods: () -> untyped
17
+
18
+ def execute: (Symbol command, ?Hash[untyped, untyped], ?Hash[untyped, untyped]) -> untyped
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,13 @@
1
+ module Appium
2
+ module Core
3
+ module Android
4
+ module Device
5
+ module Network
6
+ def execute: (Symbol command, ?Hash[untyped, untyped], ?Hash[untyped, untyped]) -> untyped
7
+
8
+ def self.add_methods: () -> untyped
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ module Appium
2
+ module Core
3
+ module Android
4
+ module Device
5
+ module Performance
6
+ def execute: (Symbol command, ?Hash[untyped, untyped], ?Hash[untyped, untyped]) -> untyped
7
+
8
+ def self.add_methods: () -> untyped
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,11 @@
1
+ module Appium
2
+ module Core
3
+ module Android
4
+ module Device
5
+ module Screen
6
+ def self.add_methods: () -> untyped
7
+ end
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,13 @@
1
+ module Appium
2
+ module Core
3
+ module Android
4
+ module Device
5
+ extend Forwardable
6
+
7
+ def self.execute: (Symbol command, ?Hash[untyped, untyped], ?Hash[untyped, untyped]) -> untyped
8
+
9
+ def self.extended: (untyped _mod) -> (nil | untyped)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,11 @@
1
+ module Appium
2
+ module Core
3
+ module Android
4
+ module Espresso
5
+ module Bridge
6
+ def self.for: (untyped target) -> untyped
7
+ end
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ module Appium
2
+ module Core
3
+ module Android
4
+ module Uiautomator1
5
+ module Bridge
6
+ def self.for: (untyped target) -> untyped
7
+ end
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ module Appium
2
+ module Core
3
+ module Android
4
+ module Uiautomator2
5
+ module Bridge
6
+ def self.for: (untyped target) -> untyped
7
+ end
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,13 @@
1
+ module Appium
2
+ module Core
3
+ module Android
4
+ module Uiautomator2
5
+ module Device
6
+ module Battery
7
+ def self.add_methods: () -> untyped
8
+ end
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,25 @@
1
+ module Appium
2
+ module Core
3
+ class Base
4
+ class BiDiBridge < ::Appium::Core::Base::Bridge
5
+ @bidi: ::Selenium::WebDriver::BiDi
6
+
7
+ def attach_to: (untyped session_id, untyped platform_name, untyped automation_name) -> untyped
8
+
9
+ def create_session: (untyped capabilities) -> ::Appium::Core::Base::Capabilities
10
+
11
+ def get: (string url) -> untyped
12
+
13
+ def go_back: () -> untyped
14
+
15
+ def go_forward: () -> untyped
16
+
17
+ def refresh: () -> untyped
18
+
19
+ def quit: () -> untyped
20
+
21
+ def close: () -> untyped
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,206 @@
1
+ module Appium
2
+ module Core
3
+ class Base
4
+ class LocatorConverter
5
+ def convert: (untyped how, untyped what) -> ::Array[untyped]
6
+ end
7
+
8
+ class Bridge < ::Selenium::WebDriver::Remote::Bridge
9
+ @browser: untyped
10
+
11
+ @available_commands: untyped
12
+
13
+ @session_id: untyped
14
+
15
+ # generate a dummy capabilities instance which only has the given platformName and automationName
16
+ @capabilities: untyped
17
+
18
+ include Device::DeviceLock
19
+
20
+ include Device::Keyboard
21
+
22
+ include Device::ImeActions
23
+
24
+ include Device::Setting
25
+
26
+ include Device::Context
27
+
28
+ include Device::FileManagement
29
+
30
+ include Device::KeyEvent
31
+
32
+ include Device::ImageComparison
33
+
34
+ include Device::AppManagement
35
+
36
+ include Device::AppState
37
+
38
+ include Device::ScreenRecord::Command
39
+
40
+ include Device::Device
41
+
42
+ include Device::ExecuteDriver
43
+
44
+ include Device::Orientation
45
+
46
+ # Prefix for extra capability defined by W3C
47
+ APPIUM_PREFIX: "appium:"
48
+
49
+ # No 'browserName' means the session is native appium connection
50
+ APPIUM_NATIVE_BROWSER_NAME: "appium"
51
+
52
+ attr_reader available_commands: untyped
53
+
54
+ def browser: () -> untyped
55
+
56
+ # Appium only.
57
+ # Attach to an existing session.
58
+ #
59
+ # @param [String] The session id to attach to.
60
+ # @param [String] platform_name The platform name to keep in the dummy capabilities
61
+ # @param [String] platform_name The automation name to keep in the dummy capabilities
62
+ # @return [::Appium::Core::Base::Capabilities]
63
+ #
64
+ # @example
65
+ #
66
+ # new_driver = ::Appium::Core::Driver.attach_to(
67
+ # driver.session_id,
68
+ # url: 'http://127.0.0.1:4723/wd/hub', automation_name: 'UiAutomator2', platform_name: 'Android'
69
+ # )
70
+ #
71
+ def attach_to: (untyped session_id, untyped platform_name, untyped automation_name) -> untyped
72
+
73
+ # Override
74
+ # Creates session handling.
75
+ #
76
+ # @param [::Appium::Core::Base::Capabilities, Hash] capabilities A capability
77
+ # @return [::Appium::Core::Base::Capabilities]
78
+ #
79
+ # @example
80
+ #
81
+ # opts = {
82
+ # caps: {
83
+ # platformName: :ios,
84
+ # automationName: 'XCUITest',
85
+ # app: 'test/functional/app/UICatalog.app.zip',
86
+ # platformVersion: '11.4',
87
+ # deviceName: 'iPhone Simulator',
88
+ # useNewWDA: true,
89
+ # },
90
+ # appium_lib: {
91
+ # wait: 30
92
+ # }
93
+ # }
94
+ # core = ::Appium::Core.for(caps)
95
+ # driver = core.start_driver
96
+ #
97
+ def create_session: (untyped capabilities) -> ::Appium::Core::Base::Capabilities
98
+
99
+ # Append +appium:+ prefix for Appium following W3C spec
100
+ # https://www.w3.org/TR/webdriver/#dfn-validate-capabilities
101
+ #
102
+ # @param [::Appium::Core::Base::Capabilities, Hash] capabilities A capability
103
+ # @return [::Appium::Core::Base::Capabilities]
104
+ def add_appium_prefix: (untyped capabilities) -> untyped
105
+
106
+ private
107
+
108
+ def camel_case: (untyped str_or_sym) -> untyped
109
+
110
+ def extension_prefix?: (untyped capability_name) -> untyped
111
+
112
+ def json_create: (untyped value) -> untyped
113
+
114
+ public
115
+
116
+ def add_command: (method: untyped, url: untyped, name: untyped) { (?) -> untyped } -> untyped
117
+
118
+ def commands: (untyped command) -> untyped
119
+
120
+ def status: () -> untyped
121
+
122
+ # Perform 'touch' actions for W3C module.
123
+ # Generate +touch+ pointer action here and users can use this via +driver.action+
124
+ # - https://www.selenium.dev/documentation/webdriver/actions_api/
125
+ # - https://www.selenium.dev/selenium/docs/api/rb/Selenium/WebDriver/ActionBuilder.html
126
+ # - https://www.selenium.dev/selenium/docs/api/rb/Selenium/WebDriver/PointerActions.html
127
+ # - https://www.selenium.dev/selenium/docs/api/rb/Selenium/WebDriver/KeyActions.html
128
+ #
129
+ # The pointer type is 'touch' by default in the Appium Ruby client.
130
+ #
131
+ # @example
132
+ #
133
+ # element = @driver.find_element(:id, "some id")
134
+ # @driver.action.click(element).perform # The 'click' is a part of 'PointerActions'
135
+ #
136
+ def action: (?untyped? _deprecated_async, ?async: bool, ?devices: untyped?) -> untyped
137
+
138
+ # Port from MJSONWP
139
+ def get_timeouts: () -> untyped
140
+
141
+ # For Appium
142
+ # override
143
+ def element_displayed?: (untyped element) -> untyped
144
+
145
+ # For Appium
146
+ # override
147
+ def element_attribute: (untyped element, untyped name) -> untyped
148
+
149
+ # For Appium
150
+ alias switch_to_active_element active_element
151
+
152
+ # For Appium
153
+ # @param [Hash] id The id which can get as a response from server
154
+ # @return [::Appium::Core::Element]
155
+ def convert_to_element: (untyped id) -> untyped
156
+
157
+ # For Appium
158
+ # override
159
+ # called in 'extend DriverExtensions::HasNetworkConnection'
160
+ def network_connection: () -> untyped
161
+
162
+ # For Appium
163
+ # override
164
+ # called in 'extend DriverExtensions::HasNetworkConnection'
165
+ def network_connection=: (untyped type) -> untyped
166
+
167
+ # For Appium
168
+ # No implementation for W3C webdriver module
169
+ # called in 'extend DriverExtensions::HasLocation'
170
+ def location: () -> untyped
171
+
172
+ # For Appium
173
+ # No implementation for W3C webdriver module
174
+ def set_location: (untyped lat, untyped lon, ?::Float alt, ?speed: untyped?, ?satellites: untyped?) -> untyped
175
+
176
+ #
177
+ # logs
178
+ #
179
+ # For Appium
180
+ # No implementation for W3C webdriver module
181
+ def available_log_types: () -> untyped
182
+
183
+ # For Appium
184
+ # No implementation for W3C webdriver module
185
+ def log: (untyped type) -> untyped
186
+
187
+ # For Appium
188
+ def log_event: (untyped vendor, untyped event) -> untyped
189
+
190
+ # For Appium
191
+ def log_events: (?untyped? type) -> untyped
192
+
193
+ def viewport_screenshot: () -> untyped
194
+
195
+ def element_screenshot: (untyped element_id) -> untyped
196
+
197
+ # for selenium-webdriver compatibility in chrome browser session.
198
+ # This may be needed in selenium-webdriver 4.8 or over? (around the version)
199
+ # when a session starts browserName: 'chrome' for bridge.
200
+ # This method is not only for Android, but also chrome desktop browser as well.
201
+ # So this bridge itself does not restrict the target module.
202
+ def send_command: (untyped command_params) -> untyped
203
+ end
204
+ end
205
+ end
206
+ end
@@ -0,0 +1,25 @@
1
+ module Appium
2
+ module Core
3
+ class Base
4
+ #
5
+ # @api private
6
+ #
7
+ class DeviceIME
8
+ @bridge: untyped
9
+
10
+ # @private this class is private
11
+ def initialize: (untyped bridge) -> void
12
+
13
+ def activate: (untyped ime_name) -> untyped
14
+
15
+ def available_engines: () -> untyped
16
+
17
+ def active_engine: () -> untyped
18
+
19
+ def activated?: () -> untyped
20
+
21
+ def deactivate: () -> untyped
22
+ end
23
+ end
24
+ end
25
+ end
@@ -2,6 +2,8 @@ module Appium
2
2
  module Core
3
3
  class Base
4
4
  module HasRemoteStatus
5
+ include _Bridge
6
+
5
7
  def remote_status: () -> untyped
6
8
  end
7
9
  end