* Copyright (c) 2022-2025 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
* @file Mouse Pointer
* @kit InputKit
*/
import type { AsyncCallback } from './@ohos.base';
import type image from './@ohos.multimedia.image';
* The **pointer** module provides APIs related to pointer attribute management, such as querying and setting pointer
* attributes.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @atomicservice [since 12]
* @since 9 dynamic
* @since 23 static
*/
declare namespace pointer {
* Mouse pointer style types.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @atomicservice [since 12]
* @since 9 dynamic
* @since 23 static
*/
enum PointerStyle {
* Default
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
DEFAULT = 0,
* East arrow
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
EAST = 1,
* West arrow
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
WEST = 2,
* South arrow
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
SOUTH = 3,
* North arrow
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
NORTH = 4,
* West-east arrow
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
WEST_EAST = 5,
* North-south arrow
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
NORTH_SOUTH = 6,
* North-east arrow
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
NORTH_EAST = 7,
* North-west arrow
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
NORTH_WEST = 8,
* South-east arrow
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
SOUTH_EAST = 9,
* South-west arrow
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
SOUTH_WEST = 10,
* North-east and south-west adjustment
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
NORTH_EAST_SOUTH_WEST = 11,
* North-west and south-east adjustment
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
NORTH_WEST_SOUTH_EAST = 12,
* Cross (accurate selection)
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
CROSS = 13,
* Copy
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
CURSOR_COPY = 14,
* Forbid
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
CURSOR_FORBID = 15,
* Color picker
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
COLOR_SUCKER = 16,
* Grabbing hand
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
HAND_GRABBING = 17,
* Opening hand
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
HAND_OPEN = 18,
* Hand-shaped pointer
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
HAND_POINTING = 19,
* Help
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
HELP = 20,
* Move
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
MOVE = 21,
* Left and right resizing
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
RESIZE_LEFT_RIGHT = 22,
* Up and down resizing
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
RESIZE_UP_DOWN = 23,
* Screenshot crosshair
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
SCREENSHOT_CHOOSE = 24,
* Screenshot
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
SCREENSHOT_CURSOR = 25,
* Text selection
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
TEXT_CURSOR = 26,
* Zoom in
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
ZOOM_IN = 27,
* Zoom out
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
ZOOM_OUT = 28,
* Scrolling east
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
MIDDLE_BTN_EAST = 29,
* Scrolling west
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
MIDDLE_BTN_WEST = 30,
* Scrolling south
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
MIDDLE_BTN_SOUTH = 31,
* Scrolling north
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
MIDDLE_BTN_NORTH = 32,
* Scrolling north-south
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
MIDDLE_BTN_NORTH_SOUTH = 33,
* Scrolling north-east
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
MIDDLE_BTN_NORTH_EAST = 34,
* Scrolling north-west
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
MIDDLE_BTN_NORTH_WEST = 35,
* Scrolling south-east
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
MIDDLE_BTN_SOUTH_EAST = 36,
* Scrolling south-west
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
MIDDLE_BTN_SOUTH_WEST = 37,
* Moving as a cone in four directions
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
MIDDLE_BTN_NORTH_SOUTH_WEST_EAST = 38,
* Horizontal text selection
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
HORIZONTAL_TEXT_CURSOR = 39,
* Cross
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
CURSOR_CROSS = 40,
* Circle
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
CURSOR_CIRCLE = 41,
* Animation loading
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @atomicservice [since 12]
* @since 10 dynamic
* @since 23 static
*/
LOADING = 42,
* Animation running in the background
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @atomicservice [since 12]
* @since 10 dynamic
* @since 23 static
*/
RUNNING = 43,
* Scrolling east-west
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 18 dynamic
* @since 23 static
*/
MIDDLE_BTN_EAST_WEST = 44,
* Running in the background (extension 1)
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 22 dynamic
* @since 23 static
*/
RUNNING_LEFT = 45,
* Running in the background (extension 2)
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 22 dynamic
* @since 23 static
*/
RUNNING_RIGHT = 46,
* Custom circular pointer
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 22 dynamic
* @since 23 static
*/
AECH_DEVELOPER_DEFINED_ICON = 47,
* Screen recording
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 20 dynamic
* @since 23 static
*/
SCREENRECORDER_CURSOR = 48,
* Floating This pointer can be used only when the stylus enters the air mouse mode and cannot be directly set.
*
* In air mouse mode, you can rotate the stylus in the air to control the movement of the virtual pointer on the
* screen and press the button on the stylus to turn pages up or down. This mode is used for PPT presentation and
* air gesture control.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 22 dynamic
* @since 23 static
*/
LASER_CURSOR = 49,
* Click This pointer can be used only when the stylus enters the air mouse mode and cannot be directly set.
*
* In air mouse mode, you can rotate the stylus in the air to control the movement of the virtual pointer on the
* screen and press the button on the stylus to turn pages up or down. This mode is used for PPT presentation and
* air gesture control.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 22 dynamic
* @since 23 static
*/
LASER_CURSOR_DOT = 50,
* Laser pointer This pointer can be used only when the stylus enters the air mouse mode and cannot be directly set.
*
* In air mouse mode, you can rotate the stylus in the air to control the movement of the virtual pointer on the
* screen and press the button on the stylus to turn pages up or down. This mode is used for PPT presentation and
* air gesture control.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 22 dynamic
* @since 23 static
*/
LASER_CURSOR_DOT_RED = 51,
* Custom pointer. You can use [setCustomCursor]{@link pointer.setCustomCursor} to set a custom pointer. The custom
* pointer cannot be directly set using [setPointerStyle]{@link pointer.setPointerStyle}.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 22 dynamic
* @since 23 static
*/
DEVELOPER_DEFINED_ICON = -100
}
* Type of the primary mouse button.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
enum PrimaryButton {
* Left button.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
LEFT = 0,
* Right button.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
RIGHT = 1
}
* Enumerates shortcut menu triggering modes.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
enum RightClickType {
* Tapping the right-button area of the touchpad.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
TOUCHPAD_RIGHT_BUTTON = 1,
* Tapping the left-button area of the touchpad.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
TOUCHPAD_LEFT_BUTTON = 2,
* Tapping or pressing the touchpad with two fingers.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
TOUCHPAD_TWO_FINGER_TAP = 3,
* Tapping or pressing the touchpad with two fingers, or tapping the right-button area of the touchpad.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 20 dynamic
* @since 23 static
*/
TOUCHPAD_TWO_FINGER_TAP_OR_RIGHT_BUTTON = 4,
* Tapping or pressing the touchpad with two fingers, or tapping the left-button area of the touchpad.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 20 dynamic
* @since 23 static
*/
TOUCHPAD_TWO_FINGER_TAP_OR_LEFT_BUTTON = 5
}
* Defines custom cursor resources.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 15 dynamic
* @since 23 static
*/
interface CustomCursor {
* Pixel map. The minimum size is subject to the minimum limit of the image. The maximum size is 256 x 256 px.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 15 dynamic
* @since 23 static
*/
pixelMap: image.PixelMap;
* Horizontal coordinate of the custom pointer focus, in px. This coordinate is limited by the custom pointer size.
* The minimum value is 0, and the maximum value is the maximum width of the resource image. The default value is
* **0** when this parameter is omitted.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 15 dynamic
* @since 23 static
*/
focusX?: int;
* Vertical coordinate of the custom pointer focus, in px. This coordinate is limited by the custom pointer size.
* The minimum value is 0, and the maximum value is the maximum width of the resource image. The default value is
* **0** when this parameter is omitted.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 15 dynamic
* @since 23 static
*/
focusY?: int;
}
* Defines custom cursor configuration.
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 15 dynamic
* @since 23 static
*/
interface CursorConfig {
* Whether to adjust the cursor size based on system settings. The value **true** means to adjust the cursor size
* based on system settings, and the value **false** means to use the custom cursor size. The adjustment range is
* [size of the cursor image, 256 x 256].
*
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 15 dynamic
* @since 23 static
*/
followSystem : boolean;
}
* Sets the mouse pointer speed. This API uses an asynchronous callback to return the result.
*
* @param { int } speed - Mouse pointer speed. The value ranges from **1** to **20**. The default value is **10**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 202 - Permission denied, non-system app called system api. [since 12]
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use
* @since 9 dynamic
* @since 23 static
*/
function setPointerSpeed(speed: int, callback: AsyncCallback<void>): void;
* Sets the mouse pointer speed. This API uses a promise to return the result.
*
* @param { int } speed - Mouse pointer speed. The value ranges from **1** to **20**. The default value is **10**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 202 - Permission denied, non-system app called system api. [since 12]
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use
* @since 9 dynamic
* @since 23 static
*/
function setPointerSpeed(speed: int): Promise<void>;
* Sets the mouse pointer speed. This API returns the result synchronously.
*
* @param { int } speed - Mouse pointer speed. The value ranges from **1** to **20**. The default value is **10**.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use
* @since 10 dynamic
* @since 23 static
*/
function setPointerSpeedSync(speed: int): void;
* Obtains the mouse pointer speed. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<int> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **number** is the mouse pointer speed. Otherwise, **err** is an error object.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 202 - Permission denied, non-system app called system api. [since 12]
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use
* @since 9 dynamic
* @since 23 static
*/
function getPointerSpeed(callback: AsyncCallback<int>): void;
* Obtains the mouse pointer speed. This API uses a promise to return the result.
*
* @returns { Promise<int> } Promise used to return the mouse pointer speed.
* @throws { BusinessError } 202 - Permission denied, non-system app called system api. [since 12]
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use
* @since 9 dynamic
* @since 23 static
*/
function getPointerSpeed(): Promise<int>;
* Obtains the mouse pointer speed. This API returns the result synchronously.
*
* @returns { int } Mouse pointer speed. The value ranges from 1 to 20.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use
* @since 10 dynamic
* @since 23 static
*/
function getPointerSpeedSync(): int;
* Sets the mouse pointer style type for a specified window. This API can set only the mouse pointer style type of
* windows within the current application process. For details about how to set the mouse pointer style type of the
* host window through the **UIExtensionAbility** process, see
* [setCursor]{@link @ohos.arkui.UIContext:CursorController.setCursor}. This API uses an asynchronous callback to
* return the result.
*
* @param { int } windowId - Window ID. The value is an integer greater than or equal to 0.
* <br>If the window ID is valid and the corresponding window exists, the mouse pointer style of the window can be
* set properly.
* <br>If the window ID is valid but the window does not exist, the mouse pointer style can also be set properly.
* <br>The result can be obtained through [getPointerStyle]{@link pointer.getPointerStyle}.
* @param { PointerStyle } pointerStyle - Pointer style. Do not pass **DEVELOPER_DEFINED_ICON**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 202 - Permission denied, non-system app called system api. [staticonly]
* <br> When the windowId value is -1, the system permission is required to set the global style. [staticonly]
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
function setPointerStyle(windowId: int, pointerStyle: PointerStyle, callback: AsyncCallback<void>): void;
* Sets the mouse pointer style type for a specified window. This API can set only the mouse pointer style type of
* windows within the current application process. For details about how to set the mouse pointer style type of the
* host window through the **UIExtensionAbility** process, see
* [setCursor]{@link @ohos.arkui.UIContext:CursorController.setCursor}. This uses a promise to return the result.
*
* @param { int } windowId - Window ID. The value is an integer greater than or equal to 0.
* <br>If the window ID is valid and the corresponding window exists, the mouse pointer style of the window can be
* set properly.
* <br>If the window ID is valid but the window does not exist, the mouse pointer style can also be set properly.
* <br>The result can be obtained through [getPointerStyle]{@link pointer.getPointerStyle}.
* @param { PointerStyle } pointerStyle - Pointer style.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 202 - Permission denied, non-system app called system api. [staticonly]
* <br> When the windowId value is -1, the system permission is required to set the global style. [staticonly]
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
function setPointerStyle(windowId: int, pointerStyle: PointerStyle): Promise<void>;
* Sets the mouse pointer style type for a specified window and returns the result synchronously. This API can set
* only the mouse pointer style type of windows within the current application process. For details about how to set
* the mouse pointer style type of the host window through the **UIExtensionAbility** process, see
* [setCursor]{@link @ohos.arkui.UIContext:CursorController.setCursor}.
*
* @param { int } windowId - Window ID. The value is an integer greater than or equal to 0.
* <br>If the window ID is valid and the corresponding window exists, the mouse pointer style of the window can be
* set properly.
* <br>If the window ID is valid but the window does not exist, the mouse pointer style can also be set properly.
* <br>The result can be obtained through [getPointerStyleSync]{@link pointer.getPointerStyleSync}.
* @param { PointerStyle } pointerStyle - Pointer style.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 202 - Permission denied, non-system app called system api. [staticonly]
* <br> When the windowId value is -1, the system permission is required to set the global style. [staticonly]
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
function setPointerStyleSync(windowId: int, pointerStyle: PointerStyle): void;
* Obtains the mouse pointer style type of a specified window. This API can obtain only the mouse pointer style type
* of windows within the current application process. This API uses an asynchronous callback to return the result.
*
* @param { int } windowId - Window ID. The value is an integer greater than or equal to **-1**. The value **-1**
* indicates the global window.
* <br>If the window ID is valid and the corresponding window exists, the mouse pointer style of the window is
* returned.
* <br>If the window ID is valid but the window does not exist, the global mouse pointer style is returned by
* default.
* <br>If the mouse pointer style is set for a non-existent window through
* [setPointerStyle]{@link pointer.setPointerStyle}, this API can obtain the mouse pointer style properly.
* @param { AsyncCallback<PointerStyle> } callback - Callback used to return the result. If the operation is
* successful, **err** is **undefined**, and **data** is the mouse pointer style type. Otherwise, **err** is an
* error object. In specific scenarios (obtaining the style on a window with a custom pointer style),
* **DEVELOPER_DEFINED_ICON** is returned.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
function getPointerStyle(windowId: int, callback: AsyncCallback<PointerStyle>): void;
* Obtains the mouse pointer style type. This API can obtain only the mouse pointer style type of windows within the
* current application process. This API uses a promise to return the result.
*
* @param { int } windowId - Window ID. The value is an integer greater than or equal to **-1**. The value **-1**
* indicates the global window.
* <br>If the window ID is valid and the corresponding window exists, the mouse pointer style of the window is
* returned.
* <br>If the window ID is valid but the window does not exist, the global mouse pointer style is returned by
* default.
* <br>If the mouse pointer style is set for a non-existent window through
* [setPointerStyle]{@link pointer.setPointerStyle}, this API can obtain the mouse pointer style properly.
* @returns { Promise<PointerStyle> } Promise object, which is used to return the mouse pointer style.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
function getPointerStyle(windowId: int): Promise<PointerStyle>;
* Queries the mouse pointer style type of a specified window, such as east arrow, west arrow, south arrow, and north
* arrow. This API can obtain only the mouse pointer style type of windows within the current application process.
*
* @param { int } windowId - Window ID. The value is an integer greater than or equal to **-1**. The value **-1**
* indicates the global window.
* <br>If the window ID is valid and the corresponding window exists, the mouse pointer style of the window is
* returned.
* <br>If the window ID is valid but the window does not exist, the global mouse pointer style is returned by
* default.
* <br>If the mouse pointer style is set for a non-existent window through
* [setPointerStyleSync]{@link pointer.setPointerStyleSync}, this API can obtain the mouse pointer style properly.
* @returns { PointerStyle } Mouse pointer style.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
function getPointerStyleSync(windowId: int): PointerStyle;
* Sets whether the mouse pointer is visible in the current window. This API uses an asynchronous callback to return
* the result.
*
* @param { boolean } visible - Whether the mouse pointer is visible in the current window. The value **true**
* indicates that the mouse pointer is visible, and the value **false** indicates the opposite.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* 2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - Capability not supported; [since 18]
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
function setPointerVisible(visible: boolean, callback: AsyncCallback<void>): void;
* Sets whether the mouse pointer is visible in the current window. This API uses a promise to return the result.
*
* @param { boolean } visible - Whether the mouse pointer is visible in the current window. The value **true**
* indicates that the mouse pointer is visible, and the value **false** indicates the opposite.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* 2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - Capability not supported; [since 18]
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
function setPointerVisible(visible: boolean): Promise<void>;
* Sets whether the mouse pointer is visible in the current window. This API returns the result synchronously.
*
* @param { boolean } visible - Whether the mouse pointer is visible in the current window. The value **true**
* indicates that the mouse pointer is visible, and the value **false** indicates the opposite.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
function setPointerVisibleSync(visible: boolean): void;
* Obtains the visible status of the mouse pointer. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<boolean> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **data** is the visible status of the mouse pointer (**true** if visible and
* **false** if invisible). Otherwise, **err** is an error object.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
function isPointerVisible(callback: AsyncCallback<boolean>): void;
* Obtains the visible status of the mouse pointer. This API uses a promise to return the result.
*
* @returns { Promise<boolean> } Promise used to return the result. **true** is returned if the mouse pointer is
* visible; **false** is returned if the mouse pointer is hidden.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 9 dynamic
* @since 23 static
*/
function isPointerVisible(): Promise<boolean>;
* Checks whether the mouse pointer is visible in the current window. This API returns the result synchronously.
*
* @returns { boolean } Visible status of the mouse pointer. The value **true** indicates that the mouse pointer is
* visible, and the value **false** indicates the opposite.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 10 dynamic
* @since 23 static
*/
function isPointerVisibleSync(): boolean;
* Sets the mouse pointer color. This API uses an asynchronous callback to return the result.
*
* > **NOTE**
* >
* > When performing this operation, you need to connect an external device, such as a mouse or Bluetooth device.
*
* @param { int } color - Pointer color. The default value is **black** (0x000000).
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setPointerColor(color: int, callback: AsyncCallback<void>): void;
* Sets the mouse pointer color. This API uses a promise to return the result.
*
* > **NOTE**
* >
* > When performing this operation, you need to connect an external device, such as a mouse or Bluetooth device.
*
* @param { int } color - Pointer color. The default value is **black** (0x000000).
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setPointerColor(color: int): Promise<void>;
* Sets the pointer color. This API returns the result synchronously.
*
* > **NOTE**
* >
* > When performing this operation, you need to connect an external device, such as a mouse or Bluetooth device.
*
* @param { int } color - Pointer color. The default value is **black** (0x000000).
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setPointerColorSync(color: int): void;
* Obtains the mouse pointer color. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<int> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **number** is the obtained mouse pointer color. Otherwise, **err** is an error
* object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getPointerColor(callback: AsyncCallback<int>): void;
* Obtains the current mouse pointer color. This API uses a promise to return the result.
*
* @returns { Promise<int> } Promise used to return the mouse pointer color.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getPointerColor(): Promise<int>;
* Obtains the pointer color. This API returns the result synchronously.
*
* @returns { int } Pointer color.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getPointerColorSync(): int;
* Sets the mouse pointer size. This API uses an asynchronous callback to return the result.
*
* @param { int } size - Pointer size. The value ranges from **1** to **7**. The default value is **1**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setPointerSize(size: int, callback: AsyncCallback<void>): void;
* Sets the mouse pointer size. This API uses a promise to return the result.
*
* @param { int } size - Pointer size. The value ranges from **1** to **7**. The default value is **1**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setPointerSize(size: int): Promise<void>;
* Sets the pointer size. This API returns the result synchronously.
*
* @param { int } size - Pointer size. The value ranges from **1** to **7**. The default value is **1**.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setPointerSizeSync(size: int): void;
* Obtains the current mouse pointer size. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<int> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **number** is the obtained mouse pointer size (value range: [1-7]). Otherwise,
* **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getPointerSize(callback: AsyncCallback<int>): void;
* Obtains the current mouse pointer size. This API uses a promise to return the result.
*
* @returns { Promise<int> } Promise used to return the mouse pointer size. The value ranges from 1 to 7.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getPointerSize(): Promise<int>;
* Obtains the pointer size. This API returns the result synchronously.
*
* @returns { int } Mouse pointer size. The value ranges from **1** to **7**.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getPointerSizeSync(): int;
* Sets the primary mouse button. This API uses an asynchronous callback to return the result.
*
* @param { PrimaryButton } primary - Type of the primary mouse button.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setMousePrimaryButton(primary: PrimaryButton, callback: AsyncCallback<void>): void;
* Sets the primary mouse button. This API uses a promise to return the result.
*
* @param { PrimaryButton } primary - Type of the primary mouse button.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setMousePrimaryButton(primary: PrimaryButton): Promise<void>;
* Obtains the current primary mouse button. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<PrimaryButton> } callback - Callback used to return the result. If the operation is
* successful, **err** is **undefined**, and **PrimaryButton** is the obtained key value. Otherwise, **err** is an
* error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getMousePrimaryButton(callback: AsyncCallback<PrimaryButton>): void;
* Obtains the current primary mouse button. This API uses a promise to return the result.
*
* @returns { Promise<PrimaryButton> } Promise used to return the primary mouse button.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getMousePrimaryButton(): Promise<PrimaryButton>;
* Sets the mouse hover scrolling switch state. This API uses an asynchronous callback to return the result.
*
* @param { boolean } state - Status of the mouse hover scroll switch. The value **true** indicates that the switch is
* enabled, and the value **false** indicates the opposite. The default value is **true**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setHoverScrollState(state: boolean, callback: AsyncCallback<void>): void;
* Sets the status of the mouse hover scroll switch. This API uses a promise to return the result.
*
* @param { boolean } state - Status of the mouse hover scroll switch. The value **true** indicates that the switch is
* enabled, and the value **false** indicates the opposite. The default value is **true**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setHoverScrollState(state: boolean): Promise<void>;
* Obtains the mouse hover scrolling switch state. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<boolean> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **true** (default) will be returned if the switch is enabled while false will be
* returned if the switch is disabled. If the operation fails, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getHoverScrollState(callback: AsyncCallback<boolean>): void;
* Obtains the status of the mouse hover scroll switch. This API uses a promise to return the result.
*
* @returns { Promise<boolean> } Promise used to return the result. The value **true** indicates that the mouse hover
* scrolling switch is enabled, and the value **false** indicates that the switch is disabled. The default value
* is **true**.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getHoverScrollState(): Promise<boolean>;
* Sets the number of mouse scroll lines. This API uses an asynchronous callback to return the result.
*
* @param { int } rows - Number of mouse scroll lines. The value ranges from 1 to 100. The default value is **3**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setMouseScrollRows(rows: int, callback: AsyncCallback<void>): void;
* Sets the number of mouse scroll lines. This API uses a promise to return the result.
*
* @param { int } rows - Number of mouse scroll lines. The value ranges from 1 to 100. The default value is **3**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setMouseScrollRows(rows: int): Promise<void>;
* Obtains the number of mouse scroll lines. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<int> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **number** is the number of mouse scroll lines. Otherwise, **err** is an error
* object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getMouseScrollRows(callback: AsyncCallback<int>): void;
* Obtains the number of mouse scroll lines. This API uses a promise to return the result.
*
* @returns { Promise<int> } Promise used to return the number of mouse scroll lines.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getMouseScrollRows(): Promise<int>;
* Sets the touchpad scroll switch. This API uses an asynchronous callback to return the result.
*
* @param { boolean } state - Scroll switch status. The value **true** indicates that the switch is enabled, and the
* value **false** indicates the opposite. The default value is **true**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadScrollSwitch(state: boolean, callback: AsyncCallback<void>): void;
* Sets the touchpad scroll switch. This API uses a promise to return the result.
*
* @param { boolean } state - Scroll switch status. The value **true** indicates that the switch is enabled, and the
* value **false** indicates the opposite. The default value is **true**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadScrollSwitch(state: boolean): Promise<void>;
* Obtains the touchpad scroll switch state. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<boolean> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **state** indicates whether the scroll switch state (**true** indicates yes and
* **false** indicates no; default value: **true**). Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadScrollSwitch(callback: AsyncCallback<boolean>): void;
* Obtains the touchpad scroll switch state. This API uses a promise to return the result.
*
* @returns { Promise<boolean> } Promise used to return the result. The value **true** indicates that the touchpad
* scroll switch is enabled, and the value **false** indicates that the touchpad scroll is disabled. The default
* value is **true**.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadScrollSwitch(): Promise<boolean>;
* Sets the touchpad scroll direction. This API uses an asynchronous callback to return the result.
*
* @param { boolean } state - Touchpad scroll direction.
* <br>The value **true** indicates that the scroll direction is the same as the finger moving direction, and the
* value **false** indicates the opposite.
* <br>The default value is **true**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadScrollDirection(state: boolean, callback: AsyncCallback<void>): void;
* Sets the touchpad scroll direction. This API uses a promise to return the result.
*
* @param { boolean } state - Touchpad scroll direction.
* <br>The value **true** indicates that the scroll direction is the same as the finger moving direction, and the
* value **false** indicates the opposite.
* <br>The default value is **true**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadScrollDirection(state: boolean): Promise<void>;
* Obtains the touchpad scroll direction. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<boolean> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **state** indicates whether the touchpad scroll direction matches the direction
* of finger movement (**true** indicates yes). Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadScrollDirection(callback: AsyncCallback<boolean>): void;
* Obtains the scroll direction of the touchpad. This API uses a promise to return the result.
*
* @returns { Promise<boolean> } Promise used to return the result. The value **true** indicates that the touchpad
* scroll direction matches the direction of finger movement, and the value **false** indicates the opposite. The
* default value is **true**.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadScrollDirection(): Promise<boolean>;
* Sets the touchpad tap switch. This API uses an asynchronous callback to return the result.
*
* @param { boolean } state - Tap switch status of the touchpad The value **true** indicates that the switch is
* enabled, and the value **false** indicates the opposite. The default value is **true**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadTapSwitch(state: boolean, callback: AsyncCallback<void>): void;
* Sets the touchpad tap switch. This API uses a promise to return the result.
*
* @param { boolean } state - State of the touchpad tap switch. The value **true** indicates that the switch is
* enabled, and the value **false** indicates the opposite. The default value is **true**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadTapSwitch(state: boolean): Promise<void>;
* Obtains the touchpad tap switch state. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<boolean> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **state** indicates whether the touchpad tap switch is enabled (**true**
* indicates yes and **false** indicates no; default value: **true**). Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadTapSwitch(callback: AsyncCallback<boolean>): void;
* Obtains the touchpad tap switch state. This API uses a promise to return the result.
*
* @returns { Promise<boolean> } Promise used to return the result. The value **true** indicates that the touchpad tap
* switch is enabled, and the value **false** indicates that the touchpad tap switch is disabled. The default
* value is **true**.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadTapSwitch(): Promise<boolean>;
* Sets the touchpad pointer speed. This API uses an asynchronous callback to return the result.
*
* @param { int } speed - Touchpad pointer speed The value range is [1,11]. The default value is **6**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadPointerSpeed(speed: int, callback: AsyncCallback<void>): void;
* Sets the touchpad pointer speed. This API uses a promise to return the result.
*
* @param { int } speed - Touchpad pointer speed The value range is [1,11]. The default value is **6**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadPointerSpeed(speed: int): Promise<void>;
* Obtains the touchpad pointer speed. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<int> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **number** is the obtained touchpad pointer speed. Otherwise, **err** is an error
* object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadPointerSpeed(callback: AsyncCallback<int>): void;
* Obtains the touchpad pointer speed. This API uses a promise to return the result.
*
* @returns { Promise<int> } Promise used to return the touchpad pointer speed. The value range is [1,11].
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadPointerSpeed(): Promise<int>;
* Sets the touchpad pinch switch. This API uses an asynchronous callback to return the result.
*
* @param { boolean } state - Touchpad pinch switch state. The value **true** indicates that the switch is enabled,
* and the value **false** indicates the opposite. The default value is **true**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadPinchSwitch(state: boolean, callback: AsyncCallback<void>): void;
* Sets the touchpad pinch switch. This API uses a promise to return the result.
*
* @param { boolean } state - Touchpad pinch switch state. The value **true** indicates that the switch is enabled,
* and the value **false** indicates the opposite. The default value is **true**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadPinchSwitch(state: boolean): Promise<void>;
* Obtains the touchpad pinch switch state. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<boolean> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **state** indicates whether the touchpad pinch switch is enabled (**true**
* indicates yes and **false** indicates no; default value: **true**). Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadPinchSwitch(callback: AsyncCallback<boolean>): void;
* Obtains the touchpad pinch switch state. This API uses a promise to return the result.
*
* @returns { Promise<boolean> } Promise used to return the result. The value **true** indicates that the touchpad
* pinch switch is enabled, and the value **false** indicates that the touchpad pinch switch is disabled. The
* default value is **true**.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadPinchSwitch(): Promise<boolean>;
* Sets the touchpad multi-finger swipe switch. This API uses an asynchronous callback to return the result.
*
* @param { boolean } state - Touchpad multi-finger swipe switch state. The value **true** indicates that the switch
* is enabled, and the value **false** indicates the opposite. The default value is **true**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadSwipeSwitch(state: boolean, callback: AsyncCallback<void>): void;
* Sets the touchpad multi-finger swipe switch. This API uses a promise to return the result.
*
* @param { boolean } state - Touchpad multi-finger swipe switch state. The value **true** indicates that the switch
* is enabled, and the value **false** indicates the opposite. The default value is **true**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadSwipeSwitch(state: boolean): Promise<void>;
* Obtains the touchpad multi-finger swipe switch state. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<boolean> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **state** indicates whether the touchpad multi-finger swipe switch is enabled (
* **true** indicates yes and **false** indicates no; default value: **true**). Otherwise, **err** is an error
* object
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadSwipeSwitch(callback: AsyncCallback<boolean>): void;
* Obtains the touchpad multi-finger swipe switch state. This API uses a promise to return the result.
*
* @returns { Promise<boolean> } Promise used to return the result. The value **true** indicates that the touchpad
* multi-finger swipe switch is enabled, and **false** indicates that the touchpad multi-finger swipe switch is
* disabled. The default value is **true**.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadSwipeSwitch(): Promise<boolean>;
* Sets the touchpad right-click menu type. This API uses an asynchronous callback to return the result.
*
* @param { RightClickType } type - Touchpad right-click menu type.
* <br>- TOUCHPAD_RIGHT_BUTTON: Tapping the right-button area of the touchpad.
* <br>- TOUCHPAD_LEFT_BUTTON: Tapping the left-button area of the touchpad.
* <br>- TOUCHPAD_TWO_FINGER_TAP: Tapping or pressing the touchpad with two fingers.
* <br>- TOUCHPAD_TWO_FINGER_TAP_OR_RIGHT_BUTTON<sup>20+</sup>: Tapping or pressing the touchpad with two fingers,
* or tapping the right-button area of the touchpad.
* <br>- TOUCHPAD_TWO_FINGER_TAP_OR_LEFT_BUTTON<sup>20+</sup>: Tapping or pressing the touchpad with two fingers,
* or tapping the left-button area of the touchpad.
* <br>The default value is **TOUCHPAD_TWO_FINGER_TAP_OR_RIGHT_BUTTON**.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadRightClickType(type: RightClickType, callback: AsyncCallback<void>): void;
* Sets the touchpad right-click menu type. This API uses a promise to return the result.
*
* @param { RightClickType } type - Touchpad right-click menu type.
* <br>- TOUCHPAD_RIGHT_BUTTON: Tapping the right-button area of the touchpad.
* <br>- TOUCHPAD_LEFT_BUTTON: Tapping the left-button area of the touchpad.
* <br>- TOUCHPAD_TWO_FINGER_TAP: Tapping or pressing the touchpad with two fingers.
* <br>- TOUCHPAD_TWO_FINGER_TAP_OR_RIGHT_BUTTON<sup>20+</sup>: Tapping or pressing the touchpad with two fingers,
* or tapping the right-button area of the touchpad.
* <br>- TOUCHPAD_TWO_FINGER_TAP_OR_LEFT_BUTTON<sup>20+</sup>: Tapping or pressing the touchpad with two fingers,
* or tapping the left-button area of the touchpad.
* <br>The default value is **TOUCHPAD_TWO_FINGER_TAP_OR_RIGHT_BUTTON**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function setTouchpadRightClickType(type: RightClickType): Promise<void>;
* Obtains the touchpad right-click menu type. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<RightClickType> } callback - Callback used to return the result. If the operation is
* successful, **err** is **undefined**, and the object is the touchpad right-click menu type. Otherwise, **err**
* is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadRightClickType(callback: AsyncCallback<RightClickType>): void;
* Obtains the touchpad right-click menu type. This API uses a promise to return the result.
*
* @returns { Promise<RightClickType> } Promise used to return the touchpad right-click menu type.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 10 dynamic
* @since 23 static
*/
function getTouchpadRightClickType(): Promise<RightClickType>;
* Sets a custom pointer style for a specified window. This API can set only the custom pointer style of windows
* within the current application process. For details about how to set the custom pointer style of the host window
* through the **UIExtensionAbility** process, see
* [setCustomCursor]{@link @ohos.arkui.UIContext:CursorController.setCustomCursor}. This API uses a promise to return
* the result.
*
* @param { int } windowId - Window ID.
* @param { image.PixelMap } pixelMap - Custom cursor resource.
* @param { int } [focusX] - Custom cursor focus X, in px. The value must be greater than or equal to 0. The default
* value is **0**.
* @param { int } [focusY] - Custom cursor focus Y, in px. The value must be greater than or equal to 0. The default
* value is **0**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 11 dynamic
* @since 23 static
*/
function setCustomCursor(windowId: int, pixelMap: image.PixelMap, focusX?: int, focusY?: int): Promise<void>;
* Sets a custom pointer style for a specified window synchronously. This API can set only the custom pointer style of
* windows within the current application process. For details about how to set the custom pointer style of the host
* window through the **UIExtensionAbility** process, see
* [setCustomCursor]{@link @ohos.arkui.UIContext:CursorController.setCustomCursor}.
*
* @param { int } windowId - Window ID. The value must be an integer greater than 0.
* @param { image.PixelMap } pixelMap - Custom cursor resource.
* @param { int } [focusX] - Custom pointer focus X, in px. The value must be greater than or equal to 0. The default
* value is **0**.
* @param { int } [focusY] - Custom pointer focus Y, in px. The value must be greater than or equal to 0. The default
* value is **0**.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 11 dynamic
* @since 23 static
*/
function setCustomCursorSync(windowId: int, pixelMap: image.PixelMap, focusX?: int, focusY?: int): void;
* Sets a custom pointer style for a specified window. This API can set only the custom pointer style of windows
* within the current application process. For details about how to set the custom pointer style of the host window
* through the **UIExtensionAbility** process, see
* [setCustomCursor]{@link @ohos.arkui.UIContext:CursorController.setCustomCursor}. This API uses a promise to return
* the result.
*
* The cursor may be switched back to the system style in the following cases: application window layout change, hot
* zone switching, page redirection, moving of the cursor out of the window and then back to the window, or moving of
* the cursor in different areas of the window. In this case, you need to reset the cursor style.
*
* @param { int } windowId - Window ID.
* @param { CustomCursor } cursor - Custom cursor resource.
* @param { CursorConfig } config - Custom cursor configuration, which specifies whether to adjust the cursor size
* based on system settings. If **followSystem** in **CursorConfig** is set to **true**, the supported adjustment
* range is [size of the cursor image, 256 x 256].
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Abnormal windowId parameter passed in;
* <br>2. Abnormal pixelMap parameter passed in; 3. Abnormal focusX parameter passed in;
* <br>4. Abnormal focusY parameter passed in.
* @throws { BusinessError } 26500001 - Invalid windowId. Possible causes: The window id does not belong to the
* current process.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @since 15 dynamic
* @since 23 static
*/
function setCustomCursor(windowId: int, cursor: CustomCursor, config: CursorConfig): Promise<void>;
* Sets the touchpad double-tap and drag switch state. This API uses an asynchronous callback to return the result.
*
* @param { boolean } isOpen - State of the double-tap and drag switch. The value **true** indicates that the switch
* is enabled, and the value **false** indicates the opposite.
* @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 14 dynamic
* @since 23 static
*/
function setTouchpadDoubleTapAndDragState(isOpen: boolean, callback: AsyncCallback<void>): void;
* Sets the touchpad double-tap and drag switch state. This API uses a promise to return the result.
*
* @param { boolean } isOpen - State of the double-tap and drag switch. The value **true** indicates that the switch
* is enabled, and the value **false** indicates the opposite.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 14 dynamic
* @since 23 static
*/
function setTouchpadDoubleTapAndDragState(isOpen: boolean): Promise<void>;
* Obtains the touchpad double-tap and drag switch state. This API uses an asynchronous callback to return the result.
*
* @param { AsyncCallback<boolean> } callback - Callback used to return the result. If the operation is successful,
* **err** is **undefined**, and **true** is returned if the switch is enabled while **false** is returned if the
* switch is disabled. Otherwise, **err** is an error object.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 14 dynamic
* @since 23 static
*/
function getTouchpadDoubleTapAndDragState(callback: AsyncCallback<boolean>): void;
* Obtains the touchpad double-tap and drag switch state. This API uses a promise to return the result.
*
* @returns { Promise<boolean> } Promise used to return the result. The value **true** indicates that the touchpad
* double-tap and drag switch is enabled, and the value **false** indicates that the touchpad double-tap and drag
* switch is disabled.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 14 dynamic
* @since 23 static
*/
function getTouchpadDoubleTapAndDragState(): Promise<boolean>;
* Sets the scroll direction of the mouse wheel. This API uses a promise to return the result asynchronously.
*
* @permission ohos.permission.INPUT_DEVICE_CONTROLLER
* @param { boolean } inverted - Scroll direction of the mouse wheel.
* <br>The value **true** indicates that scroll direction matches the finger movement on the wheel, and the value
* **false** indicates that the scroll direction is opposite to the finger movement.
* <br>The default value is **true**.
* @returns { Promise<void> } Promise that returns no value.
* @throws { BusinessError } 201 - permission denied.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 3800001 - Input service exception.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 24 dynamic&static
*/
function setMouseScrollDirection(inverted: boolean): Promise<void>;
* Obtains the scroll direction of the mouse wheel. This API uses a promise to return the result asynchronously.
*
* @permission ohos.permission.INPUT_DEVICE_CONTROLLER
* @returns { Promise<boolean> } Promise used to return the result. The value **true** indicates that the mouse wheel
* scroll direction is the same as the finger direction, and the value **false** indicates that the mouse wheel
* scroll direction is opposite to the finger direction. The default value is **true**.
* @throws { BusinessError } 201 - permission denied.
* @throws { BusinessError } 202 - SystemAPI permission error.
* @throws { BusinessError } 3800001 - Input service exception.
* @syscap SystemCapability.MultimodalInput.Input.Pointer
* @systemapi hide for inner use.
* @since 24 dynamic&static
*/
function getMouseScrollDirection(): Promise<boolean>;
}
export default pointer;