• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2022-2023 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16/**
17 * @file
18 * @kit InputKit
19 */
20
21import type { AsyncCallback } from './@ohos.base';
22import type image from './@ohos.multimedia.image';
23
24/**
25 * Declares interfaces related to mouse pointer attributes.
26 *
27 * @namespace pointer
28 * @syscap SystemCapability.MultimodalInput.Input.Pointer
29 * @since 9
30 */
31/**
32 * Declares interfaces related to mouse pointer attributes.
33 *
34 * @namespace pointer
35 * @syscap SystemCapability.MultimodalInput.Input.Pointer
36 * @atomicservice
37 * @since 12
38 */
39declare namespace pointer {
40  /**
41   * Pointer style.
42   *
43   * @enum { number }
44   * @syscap SystemCapability.MultimodalInput.Input.Pointer
45   * @since 9
46   */
47  /**
48   * Pointer style.
49   *
50   * @enum { number }
51   * @syscap SystemCapability.MultimodalInput.Input.Pointer
52   * @atomicservice
53   * @since 12
54   */
55  enum PointerStyle {
56    /**
57     * Default
58     *
59     * @syscap SystemCapability.MultimodalInput.Input.Pointer
60     * @since 9
61     */
62    DEFAULT,
63
64    /**
65     * East arrow
66     *
67     * @syscap SystemCapability.MultimodalInput.Input.Pointer
68     * @since 9
69     */
70    EAST,
71
72    /**
73     * West arrow
74     *
75     * @syscap SystemCapability.MultimodalInput.Input.Pointer
76     * @since 9
77     */
78    WEST,
79
80    /**
81     * South arrow
82     *
83     * @syscap SystemCapability.MultimodalInput.Input.Pointer
84     * @since 9
85     */
86    SOUTH,
87
88    /**
89     * North arrow
90     *
91     * @syscap SystemCapability.MultimodalInput.Input.Pointer
92     * @since 9
93     */
94    NORTH,
95
96    /**
97     * East-west arrow
98     *
99     * @syscap SystemCapability.MultimodalInput.Input.Pointer
100     * @since 9
101     */
102    WEST_EAST,
103
104    /**
105     * North-south arrow
106     *
107     * @syscap SystemCapability.MultimodalInput.Input.Pointer
108     * @since 9
109     */
110    NORTH_SOUTH,
111
112    /**
113     * North-east arrow
114     *
115     * @syscap SystemCapability.MultimodalInput.Input.Pointer
116     * @since 9
117     */
118    NORTH_EAST,
119
120    /**
121     * North-west arrow
122     *
123     * @syscap SystemCapability.MultimodalInput.Input.Pointer
124     * @since 9
125     */
126    NORTH_WEST,
127
128    /**
129     * South-east arrow
130     *
131     * @syscap SystemCapability.MultimodalInput.Input.Pointer
132     * @since 9
133     */
134    SOUTH_EAST,
135
136    /**
137     * South-west arrow
138     *
139     * @syscap SystemCapability.MultimodalInput.Input.Pointer
140     * @since 9
141     */
142    SOUTH_WEST,
143
144    /**
145     * Northeast and southwest adjustment
146     *
147     * @syscap SystemCapability.MultimodalInput.Input.Pointer
148     * @since 9
149     */
150    NORTH_EAST_SOUTH_WEST,
151
152    /**
153     * Northwest and southeast adjustment
154     *
155     * @syscap SystemCapability.MultimodalInput.Input.Pointer
156     * @since 9
157     */
158    NORTH_WEST_SOUTH_EAST,
159
160    /**
161     * Cross (accurate selection)
162     *
163     * @syscap SystemCapability.MultimodalInput.Input.Pointer
164     * @since 9
165     */
166    CROSS,
167
168    /**
169     * Copy
170     *
171     * @syscap SystemCapability.MultimodalInput.Input.Pointer
172     * @since 9
173     */
174    CURSOR_COPY,
175
176    /**
177     * Forbid
178     *
179     * @syscap SystemCapability.MultimodalInput.Input.Pointer
180     * @since 9
181     */
182    CURSOR_FORBID,
183
184    /**
185     * Sucker
186     *
187     * @syscap SystemCapability.MultimodalInput.Input.Pointer
188     * @since 9
189     */
190    COLOR_SUCKER,
191
192    /**
193     * Grabbing hand
194     *
195     * @syscap SystemCapability.MultimodalInput.Input.Pointer
196     * @since 9
197     */
198    HAND_GRABBING,
199
200    /**
201     * Opening hand
202     *
203     * @syscap SystemCapability.MultimodalInput.Input.Pointer
204     * @since 9
205     */
206    HAND_OPEN,
207
208    /**
209     * Hand-shaped pointer
210     *
211     * @syscap SystemCapability.MultimodalInput.Input.Pointer
212     * @since 9
213     */
214    HAND_POINTING,
215
216    /**
217     * Help
218     *
219     * @syscap SystemCapability.MultimodalInput.Input.Pointer
220     * @since 9
221     */
222    HELP,
223
224    /**
225     * Move
226     *
227     * @syscap SystemCapability.MultimodalInput.Input.Pointer
228     * @since 9
229     */
230    MOVE,
231
232    /**
233     * Left and right resizing
234     *
235     * @syscap SystemCapability.MultimodalInput.Input.Pointer
236     * @since 9
237     */
238    RESIZE_LEFT_RIGHT,
239
240    /**
241     * Up and down resizing
242     *
243     * @syscap SystemCapability.MultimodalInput.Input.Pointer
244     * @since 9
245     */
246    RESIZE_UP_DOWN,
247
248    /**
249     * Screenshot crosshair
250     *
251     * @syscap SystemCapability.MultimodalInput.Input.Pointer
252     * @since 9
253     */
254    SCREENSHOT_CHOOSE,
255
256    /**
257     * Screenshot
258     *
259     * @syscap SystemCapability.MultimodalInput.Input.Pointer
260     * @since 9
261     */
262    SCREENSHOT_CURSOR,
263
264    /**
265     * Text selection
266     *
267     * @syscap SystemCapability.MultimodalInput.Input.Pointer
268     * @since 9
269     */
270    TEXT_CURSOR,
271
272    /**
273     * Zoom in
274     *
275     * @syscap SystemCapability.MultimodalInput.Input.Pointer
276     * @since 9
277     */
278    ZOOM_IN,
279
280    /**
281     * Zoom out
282     *
283     * @syscap SystemCapability.MultimodalInput.Input.Pointer
284     * @since 9
285     */
286    ZOOM_OUT,
287
288    /**
289     * Scrolling east
290     *
291     * @syscap SystemCapability.MultimodalInput.Input.Pointer
292     * @since 9
293     */
294    MIDDLE_BTN_EAST,
295
296    /**
297     * Scrolling west
298     *
299     * @syscap SystemCapability.MultimodalInput.Input.Pointer
300     * @since 9
301     */
302    MIDDLE_BTN_WEST,
303
304    /**
305     * Scrolling south
306     *
307     * @syscap SystemCapability.MultimodalInput.Input.Pointer
308     * @since 9
309     */
310    MIDDLE_BTN_SOUTH,
311
312    /**
313     * Scrolling north
314     *
315     * @syscap SystemCapability.MultimodalInput.Input.Pointer
316     * @since 9
317     */
318    MIDDLE_BTN_NORTH,
319
320    /**
321     * Scrolling north and south
322     *
323     * @syscap SystemCapability.MultimodalInput.Input.Pointer
324     * @since 9
325     */
326    MIDDLE_BTN_NORTH_SOUTH,
327
328    /**
329     * Scrolling northeast
330     *
331     * @syscap SystemCapability.MultimodalInput.Input.Pointer
332     * @since 9
333     */
334    MIDDLE_BTN_NORTH_EAST,
335
336    /**
337     * Scrolling northwest
338     *
339     * @syscap SystemCapability.MultimodalInput.Input.Pointer
340     * @since 9
341     */
342    MIDDLE_BTN_NORTH_WEST,
343
344    /**
345     * Scrolling southeast
346     *
347     * @syscap SystemCapability.MultimodalInput.Input.Pointer
348     * @since 9
349     */
350    MIDDLE_BTN_SOUTH_EAST,
351
352    /**
353     * Scrolling southwest
354     *
355     * @syscap SystemCapability.MultimodalInput.Input.Pointer
356     * @since 9
357     */
358    MIDDLE_BTN_SOUTH_WEST,
359
360    /**
361     * Moving as a cone in four directions
362     *
363     * @syscap SystemCapability.MultimodalInput.Input.Pointer
364     * @since 9
365     */
366    MIDDLE_BTN_NORTH_SOUTH_WEST_EAST,
367
368    /**
369     * Horizontal text selection
370     *
371     * @syscap SystemCapability.MultimodalInput.Input.Pointer
372     * @since 10
373     */
374    HORIZONTAL_TEXT_CURSOR,
375
376    /**
377     * Precise selection
378     *
379     * @syscap SystemCapability.MultimodalInput.Input.Pointer
380     * @since 10
381     */
382    CURSOR_CROSS,
383
384    /**
385     * Cursor with circle style
386     *
387     * @syscap SystemCapability.MultimodalInput.Input.Pointer
388     * @since 10
389     */
390    CURSOR_CIRCLE,
391
392    /**
393     * Loading state with dynamic cursor
394     *
395     * @syscap SystemCapability.MultimodalInput.Input.Pointer
396     * @since 10
397     */
398    /**
399     * Loading state with dynamic cursor
400     *
401     * @syscap SystemCapability.MultimodalInput.Input.Pointer
402     * @atomicservice
403     * @since 12
404     */
405    LOADING,
406
407    /**
408     * Running state with dynamic cursor
409     *
410     * @syscap SystemCapability.MultimodalInput.Input.Pointer
411     * @since 10
412     */
413    /**
414     * Running state with dynamic cursor
415     *
416     * @syscap SystemCapability.MultimodalInput.Input.Pointer
417     * @atomicservice
418     * @since 12
419     */
420    RUNNING
421  }
422
423  /**
424   * Mouse button.
425   *
426   * @enum { number }
427   * @syscap SystemCapability.MultimodalInput.Input.Pointer
428   * @since 10
429   */
430  enum PrimaryButton {
431    /**
432     * Left mouse button
433     *
434     * @syscap SystemCapability.MultimodalInput.Input.Pointer
435     * @since 10
436     */
437    LEFT = 0,
438    /**
439     * Right mouse button
440     *
441     * @syscap SystemCapability.MultimodalInput.Input.Pointer
442     * @since 10
443     */
444    RIGHT = 1
445  }
446
447  /**
448   * Device right menu type.
449   *
450   * @enum { number }
451   * @syscap SystemCapability.MultimodalInput.Input.Pointer
452   * @since 10
453   */
454  enum RightClickType {
455    /**
456     * Touchpad right button
457     *
458     * @syscap SystemCapability.MultimodalInput.Input.Pointer
459     * @since 10
460     */
461    TOUCHPAD_RIGHT_BUTTON = 1,
462    /**
463     * Touchpad left button
464     *
465     * @syscap SystemCapability.MultimodalInput.Input.Pointer
466     * @since 10
467     */
468    TOUCHPAD_LEFT_BUTTON = 2,
469    /**
470     * Touchpad two fingers tap
471     *
472     * @syscap SystemCapability.MultimodalInput.Input.Pointer
473     * @since 10
474     */
475    TOUCHPAD_TWO_FINGER_TAP = 3,
476  }
477
478    /**
479   * Defines a custom cursor.
480   *
481   * @interface CustomCursor
482   * @syscap SystemCapability.MultimodalInput.Input.Pointer
483   * @since 15
484   */
485  interface CustomCursor {
486    /**
487     * pixelMap - Custom cursor. The size limit is 256 x 256.
488     * @type { image.PixelMap }
489     * @syscap SystemCapability.MultimodalInput.Input.Pointer
490     * @since 15
491     */
492    pixelMap: image.PixelMap;
493    /**
494     * focusX - Horizontal coordinate of the focus of the custom cursor. It is subject to the size of the custom cursor.
495     * @type { number }
496     * @syscap SystemCapability.MultimodalInput.Input.Pointer
497     * @since 15
498     */
499    focusX?: number;
500    /**
501     * focusY - Vertical coordinate of the focus of the custom cursor. It is subject to the size of the custom cursor.
502     * @type { number }
503     * @syscap SystemCapability.MultimodalInput.Input.Pointer
504     * @since 15
505     */
506    focusY?: number;
507  }
508
509  /**
510   * Specifies custom cursor config.
511   *
512   * @interface CursorConfig
513   * @syscap SystemCapability.MultimodalInput.Input.Pointer
514   * @since 15
515   */
516  interface CursorConfig {
517    /**
518     * followSystem - Whether to adjust the cursor size based on the system settings.
519     * @type { boolean }
520     * @syscap SystemCapability.MultimodalInput.Input.Pointer
521     * @since 15
522     */
523    followSystem : boolean;
524  }
525
526  /**
527   * Sets the pointer moving speed.
528   *
529   * @param { number } speed - Pointer moving speed, which is any number.
530   * @param { AsyncCallback<void> } callback - Callback used to return the result.
531   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
532   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
533   * @syscap SystemCapability.MultimodalInput.Input.Pointer
534   * @systemapi hide for inner use
535   * @since 9
536   */
537  /**
538   * Sets the pointer moving speed.
539   *
540   * @param { number } speed - Pointer moving speed, which is any number.
541   * @param { AsyncCallback<void> } callback - Callback used to return the result.
542   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
543   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
544   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
545   * @syscap SystemCapability.MultimodalInput.Input.Pointer
546   * @systemapi hide for inner use
547   * @since 12
548   */
549  function setPointerSpeed(speed: number, callback: AsyncCallback<void>): void;
550
551  /**
552   * Sets the pointer moving speed.
553   *
554   * @param { number } speed - Pointer moving speed, which is any number.
555   * @returns { Promise<void> } Returns the result through a promise.
556   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
557   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
558   * @syscap SystemCapability.MultimodalInput.Input.Pointer
559   * @systemapi hide for inner use
560   * @since 9
561   */
562  /**
563   * Sets the pointer moving speed.
564   *
565   * @param { number } speed - Pointer moving speed, which is any number.
566   * @returns { Promise<void> } Returns the result through a promise.
567   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
568   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
569   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
570   * @syscap SystemCapability.MultimodalInput.Input.Pointer
571   * @systemapi hide for inner use
572   * @since 12
573   */
574  function setPointerSpeed(speed: number): Promise<void>;
575
576  /**
577   * Sets the pointer moving speed through sync mode.
578   *
579   * @param { number } speed - Pointer moving speed, which is any number.
580   * @throws { BusinessError } 202 - SystemAPI permission error.
581   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
582   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
583   * @syscap SystemCapability.MultimodalInput.Input.Pointer
584   * @systemapi hide for inner use
585   * @since 10
586   */
587  function setPointerSpeedSync(speed: number): void;
588
589  /**
590   * Queries the pointer moving speed.
591   *
592   * @param { AsyncCallback<number> } callback - Callback used to return the result.
593   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
594   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
595   * @syscap SystemCapability.MultimodalInput.Input.Pointer
596   * @systemapi hide for inner use
597   * @since 9
598   */
599  /**
600   * Queries the pointer moving speed.
601   *
602   * @param { AsyncCallback<number> } callback - Callback used to return the result.
603   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
604   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
605   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
606   * @syscap SystemCapability.MultimodalInput.Input.Pointer
607   * @systemapi hide for inner use
608   * @since 12
609   */
610  function getPointerSpeed(callback: AsyncCallback<number>): void;
611
612  /**
613   * Queries the pointer moving speed.
614   *
615   * @returns { Promise<number> } Returns the result through a promise.
616   * @syscap SystemCapability.MultimodalInput.Input.Pointer
617   * @systemapi hide for inner use
618   * @since 9
619   */
620  /**
621   * Queries the pointer moving speed.
622   *
623   * @returns { Promise<number> } Returns the result through a promise.
624   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
625   * @syscap SystemCapability.MultimodalInput.Input.Pointer
626   * @systemapi hide for inner use
627   * @since 12
628   */
629  function getPointerSpeed(): Promise<number>;
630
631  /**
632   * Queries the pointer moving speed through sync mode.
633   * @returns { number } Returns the pointer speed through sync mode.
634   * @throws { BusinessError } 202 - SystemAPI permission error.
635   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
636   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
637   * @syscap SystemCapability.MultimodalInput.Input.Pointer
638   * @systemapi hide for inner use
639   * @since 10
640   */
641  function getPointerSpeedSync(): number;
642
643  /**
644   * Sets the pointer style.
645   *
646   * @param { number } windowId - Window ID.
647   * @param { PointerStyle } pointerStyle - Pointer style.
648   * @param { AsyncCallback<void> } callback - Callback used to return the result.
649   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
650   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
651   * @syscap SystemCapability.MultimodalInput.Input.Pointer
652   * @since 9
653   */
654  function setPointerStyle(windowId: number, pointerStyle: PointerStyle, callback: AsyncCallback<void>): void;
655
656  /**
657   * Sets the pointer style.
658   *
659   * @param { number } windowId - Window ID.
660   * @param { PointerStyle } pointerStyle - Pointer style.
661   * @returns { Promise<void> } Returns the result through a promise.
662   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
663   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
664   * @syscap SystemCapability.MultimodalInput.Input.Pointer
665   * @since 9
666   */
667  function setPointerStyle(windowId: number, pointerStyle: PointerStyle): Promise<void>;
668
669  /**
670   * Sets the pointer style through sync mode.
671   *
672   * @param { number } windowId - Window ID.
673   * @param { PointerStyle } pointerStyle - Pointer style.
674   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
675   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
676   * @syscap SystemCapability.MultimodalInput.Input.Pointer
677   * @since 10
678   */
679  function setPointerStyleSync(windowId: number, pointerStyle: PointerStyle): void;
680
681  /**
682   * Queries the pointer style.
683   *
684   * @param { number } windowId - Window ID.
685   * @param { AsyncCallback<PointerStyle> } callback - Callback used to return the result.
686   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
687   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
688   * @syscap SystemCapability.MultimodalInput.Input.Pointer
689   * @since 9
690   */
691  function getPointerStyle(windowId: number, callback: AsyncCallback<PointerStyle>): void;
692
693  /**
694   * Queries the pointer style.
695   *
696   * @param { number } windowId - Window ID.
697   * @returns { Promise<PointerStyle> } Returns the result through a promise.
698   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
699   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
700   * @syscap SystemCapability.MultimodalInput.Input.Pointer
701   * @since 9
702   */
703  function getPointerStyle(windowId: number): Promise<PointerStyle>;
704
705  /**
706   * Queries the pointer style through sync mode.
707   *
708   * @param { number } windowId - Window ID.
709   * @returns { PointerStyle } Returns the pointerStyle.
710   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
711   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
712   * @syscap SystemCapability.MultimodalInput.Input.Pointer
713   * @since 10
714   */
715  function getPointerStyleSync(windowId: number): PointerStyle;
716
717  /**
718   * Sets whether the pointer icon is visible.
719   *
720   * @param { boolean } visible Whether the pointer icon is visible. The value true indicates that the pointer
721   * icon is visible, and the value false indicates the opposite.
722   * @param { AsyncCallback<void> } callback - Callback for the input device event.
723   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
724   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
725   * @syscap SystemCapability.MultimodalInput.Input.Pointer
726   * @since 9
727   */
728  function setPointerVisible(visible: boolean, callback: AsyncCallback<void>): void;
729
730  /**
731   * Sets whether the pointer icon is visible.
732   *
733   * @param { boolean } visible Whether the pointer icon is visible. The value true indicates that the pointer
734   * icon is visible, and the value false indicates the opposite.
735   * @returns { Promise<void> } Returns the result through a promise.
736   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
737   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
738   * @syscap SystemCapability.MultimodalInput.Input.Pointer
739   * @since 9
740   */
741  function setPointerVisible(visible: boolean): Promise<void>;
742
743  /**
744   * Sets whether the pointer icon is visible through sync mode.
745   *
746   * @param { boolean } visible Whether the pointer icon is visible. The value true indicates that the pointer
747   * icon is visible, and the value false indicates the opposite.
748   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
749   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
750   * @syscap SystemCapability.MultimodalInput.Input.Pointer
751   * @since 10
752   */
753  function setPointerVisibleSync(visible: boolean): void;
754
755  /**
756   * Checks whether the pointer icon is visible.
757   *
758   * @param { AsyncCallback<boolean> } callback - Returns <b>true</b> if the pointer icon is visible,
759   * returns <b>false</b> otherwise.
760   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
761   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
762   * @syscap SystemCapability.MultimodalInput.Input.Pointer
763   * @since 9
764   */
765  function isPointerVisible(callback: AsyncCallback<boolean>): void;
766
767  /**
768   * Checks whether the pointer icon is visible.
769   *
770   * @returns { Promise<boolean> } Returns <b>true</b> if the pointer icon is visible; returns <b>false</b> otherwise.
771   * @syscap SystemCapability.MultimodalInput.Input.Pointer
772   * @since 9
773   */
774  function isPointerVisible(): Promise<boolean>;
775
776  /**
777   * Checks whether the pointer icon is visible through sync mode.
778   *
779   * @returns { boolean } Returns true if the pointer icon is visible, returns false otherwise.
780   * @syscap SystemCapability.MultimodalInput.Input.Pointer
781   * @since 10
782   */
783  function isPointerVisibleSync(): boolean;
784
785  /**
786   * Set the color of pointer.
787   *
788   * @param { number } color - Indicates the color of pointer.
789   * @param { AsyncCallback<void> } callback - Callback used to return the result.
790   * @throws { BusinessError } 202 - SystemAPI permission error.
791   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
792   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
793   * @syscap SystemCapability.MultimodalInput.Input.Pointer
794   * @systemapi hide for inner use.
795   * @since 10
796   */
797  function setPointerColor(color: number, callback: AsyncCallback<void>): void;
798
799  /**
800   * Set the color of pointer.
801   *
802   * @param { number } color - Indicates the color of pointer.
803   * @returns { Promise<void> } Returns the result through a promise.
804   * @throws { BusinessError } 202 - SystemAPI permission error.
805   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
806   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
807   * @syscap SystemCapability.MultimodalInput.Input.Pointer
808   * @systemapi hide for inner use.
809   * @since 10
810   */
811  function setPointerColor(color: number): Promise<void>;
812
813  /**
814   * Set the color of pointer.
815   *
816   * @param { number } color - Indicates the color of pointer.
817   * @throws { BusinessError } 202 - SystemAPI permission error.
818   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
819   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
820   * @syscap SystemCapability.MultimodalInput.Input.Pointer
821   * @systemapi hide for inner use.
822   * @since 10
823   */
824  function setPointerColorSync(color: number): void;
825
826  /**
827   * Get the color of pointer.
828   *
829   * @param { AsyncCallback<number> } callback - Callback used to return the result.
830   * @throws { BusinessError } 202 - SystemAPI permission error.
831   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
832   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
833   * @syscap SystemCapability.MultimodalInput.Input.Pointer
834   * @systemapi hide for inner use.
835   * @since 10
836   */
837  function getPointerColor(callback: AsyncCallback<number>): void;
838
839  /**
840   * Get the color of pointer.
841   *
842   * @returns { Promise<number> } Returns the result through a promise.
843   * @throws { BusinessError } 202 - SystemAPI permission error.
844   * @syscap SystemCapability.MultimodalInput.Input.Pointer
845   * @systemapi hide for inner use.
846   * @since 10
847   */
848  function getPointerColor(): Promise<number>;
849
850  /**
851   * Get the color of pointer.
852   *
853   * @returns { number } Returns the pointer color through sync mode.
854   * @throws { BusinessError } 202 - SystemAPI permission error.
855   * @syscap SystemCapability.MultimodalInput.Input.Pointer
856   * @systemapi hide for inner use.
857   * @since 10
858   */
859  function getPointerColorSync(): number;
860
861  /**
862   * Set the size of pointer.
863   *
864   * @param { number } size - Indicates the size of pointer.
865   * @param { AsyncCallback<void> } callback - Callback used to return the result.
866   * @throws { BusinessError } 202 - SystemAPI permission error.
867   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
868   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
869   * @syscap SystemCapability.MultimodalInput.Input.Pointer
870   * @systemapi hide for inner use.
871   * @since 10
872   */
873  function setPointerSize(size: number, callback: AsyncCallback<void>): void;
874
875  /**
876   * Set the size of pointer.
877   *
878   * @param { number } size - Indicates the size of pointer.
879   * @returns { Promise<void> } Returns the result through a promise.
880   * @throws { BusinessError } 202 - SystemAPI permission error.
881   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
882   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
883   * @syscap SystemCapability.MultimodalInput.Input.Pointer
884   * @systemapi hide for inner use.
885   * @since 10
886   */
887  function setPointerSize(size: number): Promise<void>;
888
889  /**
890   * Set the size of pointer.
891   *
892   * @param { number } size - Indicates the size of pointer.
893   * @throws { BusinessError } 202 - SystemAPI permission error.
894   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
895   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
896   * @syscap SystemCapability.MultimodalInput.Input.Pointer
897   * @systemapi hide for inner use.
898   * @since 10
899   */
900  function setPointerSizeSync(size: number): void;
901
902  /**
903   * Get the size of pointer.
904   *
905   * @param { AsyncCallback<number> } callback - Callback used to return the result.
906   * @throws { BusinessError } 202 - SystemAPI permission error.
907   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
908   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
909   * @syscap SystemCapability.MultimodalInput.Input.Pointer
910   * @systemapi hide for inner use.
911   * @since 10
912   */
913  function getPointerSize(callback: AsyncCallback<number>): void;
914
915  /**
916   * Get the size of pointer.
917   *
918   * @returns { Promise<number> } Returns the result through a promise.
919   * @throws { BusinessError } 202 - SystemAPI permission error.
920   * @syscap SystemCapability.MultimodalInput.Input.Pointer
921   * @systemapi hide for inner use.
922   * @since 10
923   */
924  function getPointerSize(): Promise<number>;
925
926  /**
927   * Get the size of pointer.
928   *
929   * @returns { number } Returns the pointer size through sync mode.
930   * @throws { BusinessError } 202 - SystemAPI permission error.
931   * @syscap SystemCapability.MultimodalInput.Input.Pointer
932   * @systemapi hide for inner use.
933   * @since 10
934   */
935  function getPointerSizeSync(): number;
936
937  /**
938   * Sets mouse primary button.
939   *
940   * @param { PrimaryButton } primary - Indicates mouse primary button. The value LEFT indicates that mouse primary
941   * button is left button, and the value RIGHT indicates that mouse primary button is right button.
942   * @param { AsyncCallback<void> } callback - Callback used to return the result.
943   * @throws { BusinessError } 202 - SystemAPI permission error.
944   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
945   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
946   * @syscap SystemCapability.MultimodalInput.Input.Pointer
947   * @systemapi hide for inner use.
948   * @since 10
949   */
950  function setMousePrimaryButton(primary: PrimaryButton, callback: AsyncCallback<void>): void;
951
952  /**
953   * Sets mouse primary button.
954   *
955   * @param { PrimaryButton } primary - Indicates mouse primary button. The value LEFT indicates that mouse primary
956   * button is left button, and the value RIGHT indicates that mouse primary button is right button.
957   * @returns { Promise<void> } Returns the result through a promise.
958   * @throws { BusinessError } 202 - SystemAPI permission error.
959   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
960   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
961   * @syscap SystemCapability.MultimodalInput.Input.Pointer
962   * @systemapi hide for inner use.
963   * @since 10
964   */
965  function setMousePrimaryButton(primary: PrimaryButton): Promise<void>;
966
967  /**
968   * Gets mouse primary button.
969   *
970   * @param { AsyncCallback<PrimaryButton> } callback - Callback used to return the result.
971   * @throws { BusinessError } 202 - SystemAPI permission error.
972   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
973   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
974   * @syscap SystemCapability.MultimodalInput.Input.Pointer
975   * @systemapi hide for inner use.
976   * @since 10
977   */
978  function getMousePrimaryButton(callback: AsyncCallback<PrimaryButton>): void;
979
980  /**
981   * Gets mouse primary button.
982   *
983   * @returns { Promise<PrimaryButton> } Returns the result through a promise.
984   * @throws { BusinessError } 202 - SystemAPI permission error.
985   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
986   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
987   * @syscap SystemCapability.MultimodalInput.Input.Pointer
988   * @systemapi hide for inner use.
989   * @since 10
990   */
991  function getMousePrimaryButton(): Promise<PrimaryButton>;
992
993  /**
994   * Sets whether the mouse hover scroll is enabled in inactive window.
995   *
996   * @param { boolean } state - Indicates whether the mouse hover scroll is enabled in inactive window. The value true
997   * indicates that the mouse hover scroll is enabled, and the value false indicates the opposite.
998   * @param { AsyncCallback<void> } callback - Callback used to return the result.
999   * @throws { BusinessError } 202 - SystemAPI permission error.
1000   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1001   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1002   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1003   * @systemapi hide for inner use.
1004   * @since 10
1005   */
1006  function setHoverScrollState(state: boolean, callback: AsyncCallback<void>): void;
1007
1008  /**
1009   * Sets whether mouse hover scroll is enabled in inactive window.
1010   *
1011   * @param { boolean } state - Indicates whether the mouse hover scroll is enabled in inactive window. The value true
1012   * indicates that the mouse hover scroll is enabled, and the value false indicates the opposite.
1013   * @returns { Promise<void> } Returns the result through a promise.
1014   * @throws { BusinessError } 202 - SystemAPI permission error.
1015   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1016   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1017   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1018   * @systemapi hide for inner use.
1019   * @since 10
1020   */
1021  function setHoverScrollState(state: boolean): Promise<void>;
1022
1023  /**
1024   * Gets a status whether the mouse hover scroll is enabled in inactive window.
1025   *
1026   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1027   * @throws { BusinessError } 202 - SystemAPI permission error.
1028   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1029   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1030   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1031   * @systemapi hide for inner use.
1032   * @since 10
1033   */
1034  function getHoverScrollState(callback: AsyncCallback<boolean>): void;
1035
1036  /**
1037   * Gets a status whether mouse hover scroll is enabled in inactive window.
1038   *
1039   * @returns { Promise<boolean> } Returns the result through a promise.
1040   * @throws { BusinessError } 202 - SystemAPI permission error.
1041   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1042   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1043   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1044   * @systemapi hide for inner use.
1045   * @since 10
1046   */
1047  function getHoverScrollState(): Promise<boolean>;
1048
1049  /**
1050   * Set the number of mouse scrolling rows.
1051   *
1052   * @param { number } rows - Indicates the number of mouse scrolling rows.
1053   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1054   * @throws { BusinessError } 202 - SystemAPI permission error.
1055   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1056   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1057   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1058   * @systemapi hide for inner use.
1059   * @since 10
1060   */
1061  function setMouseScrollRows(rows: number, callback: AsyncCallback<void>): void;
1062
1063  /**
1064   * Set the number of mouse scrolling rows.
1065   *
1066   * @param { number } rows - Indicates the number of mouse scrolling rows.
1067   * @returns { Promise<void> } Returns the result through a promise.
1068   * @throws { BusinessError } 202 - SystemAPI permission error.
1069   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1070   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1071   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1072   * @systemapi hide for inner use.
1073   * @since 10
1074   */
1075  function setMouseScrollRows(rows: number): Promise<void>;
1076
1077  /**
1078   * Get the number of mouse scrolling rows.
1079   *
1080   * @param { AsyncCallback<number> } callback - Callback used to return the result.
1081   * @throws { BusinessError } 202 - SystemAPI permission error.
1082   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1083   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1084   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1085   * @systemapi hide for inner use.
1086   * @since 10
1087   */
1088  function getMouseScrollRows(callback: AsyncCallback<number>): void;
1089
1090  /**
1091   * Get the number of mouse scrolling rows.
1092   *
1093   * @returns { Promise<number> } Returns the result through a promise.
1094   * @throws { BusinessError } 202 - SystemAPI permission error.
1095   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1096   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1097   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1098   * @systemapi hide for inner use.
1099   * @since 10
1100   */
1101  function getMouseScrollRows(): Promise<number>;
1102
1103  /**
1104   * Set touchpad scroll switch.
1105   *
1106   * @param { boolean } state - Indicates whether the touchpad scroll switch is enabled
1107   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1108   * @throws { BusinessError } 202 - SystemAPI permission error.
1109   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1110   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1111   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1112   * @systemapi hide for inner use.
1113   * @since 10
1114   */
1115  function setTouchpadScrollSwitch(state: boolean, callback: AsyncCallback<void>): void;
1116
1117  /**
1118   * Set touchpad scroll switch.
1119   *
1120   * @param { boolean } state - Indicates whether the touchpad scroll switch is enabled
1121   * @returns { Promise<void> } Returns the result through a promise.
1122   * @throws { BusinessError } 202 - SystemAPI permission error.
1123   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1124   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1125   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1126   * @systemapi hide for inner use.
1127   * @since 10
1128   */
1129  function setTouchpadScrollSwitch(state: boolean): Promise<void>;
1130
1131  /**
1132   * Get touchpad scroll switch state.
1133   *
1134   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1135   * @throws { BusinessError } 202 - SystemAPI permission error.
1136   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1137   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1138   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1139   * @systemapi hide for inner use.
1140   * @since 10
1141   */
1142  function getTouchpadScrollSwitch(callback: AsyncCallback<boolean>): void;
1143
1144  /**
1145   * Get touchpad scroll switch state.
1146   *
1147   * @returns { Promise<boolean> } Returns the result through a promise.
1148   * @throws { BusinessError } 202 - SystemAPI permission error.
1149   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1150   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1151   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1152   * @systemapi hide for inner use.
1153   * @since 10
1154   */
1155  function getTouchpadScrollSwitch(): Promise<boolean>;
1156
1157  /**
1158   * Set touchpad scroll direction.
1159   *
1160   * @param { boolean } state - Indicates whether the touchpad scroll direction is forward or reverse
1161   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1162   * @throws { BusinessError } 202 - SystemAPI permission error.
1163   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1164   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1165   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1166   * @systemapi hide for inner use.
1167   * @since 10
1168   */
1169  function setTouchpadScrollDirection(state: boolean, callback: AsyncCallback<void>): void;
1170
1171  /**
1172   * Set touchpad scroll direction.
1173   *
1174   * @param { boolean } state - Indicates whether the touchpad scroll direction is forward or reverse
1175   * @returns { Promise<void> } Returns the result through a promise.
1176   * @throws { BusinessError } 202 - SystemAPI permission error.
1177   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1178   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1179   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1180   * @systemapi hide for inner use.
1181   * @since 10
1182   */
1183  function setTouchpadScrollDirection(state: boolean): Promise<void>;
1184
1185  /**
1186   * Get touchpad scroll direction.
1187   *
1188   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1189   * @throws { BusinessError } 202 - SystemAPI permission error.
1190   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1191   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1192   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1193   * @systemapi hide for inner use.
1194   * @since 10
1195   */
1196  function getTouchpadScrollDirection(callback: AsyncCallback<boolean>): void;
1197
1198  /**
1199   * Get touchpad scroll direction.
1200   *
1201   * @returns { Promise<boolean> } Returns the result through a promise.
1202   * @throws { BusinessError } 202 - SystemAPI permission error.
1203   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1204   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1205   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1206   * @systemapi hide for inner use.
1207   * @since 10
1208   */
1209  function getTouchpadScrollDirection(): Promise<boolean>;
1210
1211  /**
1212   * Set touchpad tap switch.
1213   *
1214   * @param { boolean } state - Indicates whether the touchpad tap switch is enabled
1215   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1216   * @throws { BusinessError } 202 - SystemAPI permission error.
1217   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1218   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1219   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1220   * @systemapi hide for inner use.
1221   * @since 10
1222   */
1223  function setTouchpadTapSwitch(state: boolean, callback: AsyncCallback<void>): void;
1224
1225  /**
1226   * Set touchpad tap switch.
1227   *
1228   * @param { boolean } state - Indicates whether the touchpad tap switch is enabled
1229   * @returns { Promise<void> } Returns the result through a promise.
1230   * @throws { BusinessError } 202 - SystemAPI permission error.
1231   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1232   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1233   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1234   * @systemapi hide for inner use.
1235   * @since 10
1236   */
1237  function setTouchpadTapSwitch(state: boolean): Promise<void>;
1238
1239  /**
1240   * Get touchpad tap switch state.
1241   *
1242   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1243   * @throws { BusinessError } 202 - SystemAPI permission error.
1244   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1245   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1246   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1247   * @systemapi hide for inner use.
1248   * @since 10
1249   */
1250  function getTouchpadTapSwitch(callback: AsyncCallback<boolean>): void;
1251
1252  /**
1253   * Get touchpad tap switch state.
1254   *
1255   * @returns { Promise<boolean> } Returns the result through a promise.
1256   * @throws { BusinessError } 202 - SystemAPI permission error.
1257   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1258   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1259   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1260   * @systemapi hide for inner use.
1261   * @since 10
1262   */
1263  function getTouchpadTapSwitch(): Promise<boolean>;
1264
1265  /**
1266   * Set touchpad pointer speed.
1267   *
1268   * @param { number } speed - Indicates the number of touchpad pointer speed.
1269   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1270   * @throws { BusinessError } 202 - SystemAPI permission error.
1271   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1272   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1273   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1274   * @systemapi hide for inner use.
1275   * @since 10
1276   */
1277  function setTouchpadPointerSpeed(speed: number, callback: AsyncCallback<void>): void;
1278
1279  /**
1280   * Set touchpad pointer speed.
1281   *
1282   * @param { number } speed - Indicates the number of touchpad pointer speed.
1283   * @returns { Promise<void> } Returns the result through a promise.
1284   * @throws { BusinessError } 202 - SystemAPI permission error.
1285   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1286   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1287   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1288   * @systemapi hide for inner use.
1289   * @since 10
1290   */
1291  function setTouchpadPointerSpeed(speed: number): Promise<void>;
1292
1293  /**
1294   * Get touchpad pointer speed.
1295   *
1296   * @param { AsyncCallback<number> } callback - Callback used to return the result.
1297   * @throws { BusinessError } 202 - SystemAPI permission error.
1298   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1299   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1300   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1301   * @systemapi hide for inner use.
1302   * @since 10
1303   */
1304  function getTouchpadPointerSpeed(callback: AsyncCallback<number>): void;
1305
1306  /**
1307   * Get touchpad pointer speed.
1308   *
1309   * @returns { Promise<number> } Returns the result through a promise.
1310   * @throws { BusinessError } 202 - SystemAPI permission error.
1311   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1312   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1313   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1314   * @systemapi hide for inner use.
1315   * @since 10
1316   */
1317  function getTouchpadPointerSpeed(): Promise<number>;
1318
1319  /**
1320   * Set touchpad pinch switch.
1321   *
1322   * @param { boolean } state - Indicates whether the touchpad pinch switch is enabled
1323   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1324   * @throws { BusinessError } 202 - SystemAPI permission error.
1325   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1326   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1327   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1328   * @systemapi hide for inner use.
1329   * @since 10
1330   */
1331  function setTouchpadPinchSwitch(state: boolean, callback: AsyncCallback<void>): void;
1332
1333  /**
1334   * Set touchpad pinch switch.
1335   *
1336   * @param { boolean } state - Indicates whether the touchpad pinch switch is enabled
1337   * @returns { Promise<void> } Returns the result through a promise.
1338   * @throws { BusinessError } 202 - SystemAPI permission error.
1339   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1340   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1341   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1342   * @systemapi hide for inner use.
1343   * @since 10
1344   */
1345  function setTouchpadPinchSwitch(state: boolean): Promise<void>;
1346
1347  /**
1348   * Get touchpad pinch switch state.
1349   *
1350   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1351   * @throws { BusinessError } 202 - SystemAPI permission error.
1352   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1353   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1354   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1355   * @systemapi hide for inner use.
1356   * @since 10
1357  */
1358  function getTouchpadPinchSwitch(callback: AsyncCallback<boolean>): void;
1359
1360  /**
1361   * Get touchpad pinch switch state.
1362   *
1363   * @returns { Promise<boolean> } Returns the result through a promise.
1364   * @throws { BusinessError } 202 - SystemAPI permission error.
1365   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1366   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1367   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1368   * @systemapi hide for inner use.
1369   * @since 10
1370   */
1371  function getTouchpadPinchSwitch(): Promise<boolean>;
1372
1373  /**
1374   * Set touchpad swipe switch.
1375   *
1376   * @param { boolean } state - Indicates whether the touchpad swipe switch is enabled
1377   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1378   * @throws { BusinessError } 202 - SystemAPI permission error.
1379   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1380   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1381   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1382   * @systemapi hide for inner use.
1383   * @since 10
1384   */
1385  function setTouchpadSwipeSwitch(state: boolean, callback: AsyncCallback<void>): void;
1386
1387  /**
1388   * Set touchpad swipe switch.
1389   *
1390   * @param { boolean } state - Indicates whether the touchpad swipe switch is enabled
1391   * @returns { Promise<void> } Returns the result through a promise.
1392   * @throws { BusinessError } 202 - SystemAPI permission error.
1393   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1394   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1395   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1396   * @systemapi hide for inner use.
1397   * @since 10
1398   */
1399  function setTouchpadSwipeSwitch(state: boolean): Promise<void>;
1400
1401  /**
1402   * Get touchpad swipe switch state.
1403   *
1404   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1405   * @throws { BusinessError } 202 - SystemAPI permission error.
1406   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1407   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1408   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1409   * @systemapi hide for inner use.
1410   * @since 10
1411   */
1412  function getTouchpadSwipeSwitch(callback: AsyncCallback<boolean>): void;
1413
1414  /**
1415   * Get touchpad swipe switch state.
1416   *
1417   * @returns { Promise<boolean> } Returns the result through a promise.
1418   * @throws { BusinessError } 202 - SystemAPI permission error.
1419   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1420   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1421   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1422   * @systemapi hide for inner use.
1423   * @since 10
1424   */
1425  function getTouchpadSwipeSwitch(): Promise<boolean>;
1426
1427  /**
1428   * Set touchpad right click type.
1429   *
1430   * @param { RightClickType } type - Indicates the type of touchpad right button menu.
1431   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1432   * @throws { BusinessError } 202 - SystemAPI permission error.
1433   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1434   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1435   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1436   * @systemapi hide for inner use.
1437   * @since 10
1438   */
1439  function setTouchpadRightClickType(type: RightClickType, callback: AsyncCallback<void>): void;
1440
1441  /**
1442   * Set touchpad right click type.
1443   *
1444   * @param { RightClickType } type - Indicates the type of touchpad right click.
1445   * @returns { Promise<void> } Returns the result through a promise.
1446   * @throws { BusinessError } 202 - SystemAPI permission error.
1447   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1448   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1449   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1450   * @systemapi hide for inner use.
1451   * @since 10
1452   */
1453  function setTouchpadRightClickType(type: RightClickType): Promise<void>;
1454
1455  /**
1456   * Get touchpad right click type.
1457   *
1458   * @param { AsyncCallback<RightClickType> } callback - Callback used to return the result of right click type.
1459   * @throws { BusinessError } 202 - SystemAPI permission error.
1460   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1461   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1462   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1463   * @systemapi hide for inner use.
1464   * @since 10
1465   */
1466  function getTouchpadRightClickType(callback: AsyncCallback<RightClickType>): void;
1467
1468  /**
1469   * Get touchpad right click type.
1470   *
1471   * @returns { Promise<RightClickType> } Returns the result of right click type through a promise.
1472   * @throws { BusinessError } 202 - SystemAPI permission error.
1473   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1474   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1475   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1476   * @systemapi hide for inner use.
1477   * @since 10
1478   */
1479  function getTouchpadRightClickType(): Promise<RightClickType>;
1480
1481  /**
1482   * Sets the custom cursor.
1483   *
1484   * @param { number } windowId - Window ID.
1485   * @param { image.PixelMap } pixelMap - the cursor of pixelMap.
1486   * @param { number } focusX - focus x.
1487   * @param { number } focusY - focus y.
1488   * @returns { Promise<void> } Returns the result through a promise.
1489   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1490   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1491   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1492   * @since 11
1493   */
1494  function setCustomCursor(windowId: number, pixelMap: image.PixelMap, focusX?: number, focusY?: number): Promise<void>;
1495
1496  /**
1497   * Sets the custom cursor through sync mode.
1498   *
1499   * @param { number } windowId - Window ID.
1500   * @param { image.PixelMap } pixelMap - the cursor of pixelMap.
1501   * @param { number } focusX - focus x.
1502   * @param { number } focusY - focus y.
1503   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1504   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1505   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1506   * @since 11
1507   */
1508  function setCustomCursorSync(windowId: number, pixelMap: image.PixelMap, focusX?: number, focusY?: number): void;
1509
1510  /**
1511   * Sets the custom cursor. You can set whether to adjust the cursor size based on the system settings.
1512   *
1513   * @param { number } windowId - Window ID.
1514   * @param { CustomCursor } cursor - Custom cursor, including the custom cursor resource and focus position.
1515   * @param { CursorConfig } config - Custom cursor config.
1516   * @returns { Promise<void> } Returns the result through a promise.
1517   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Abnormal windowId parameter passed in;
1518   * <br>2. Abnormal pixelMap parameter passed in; 3. Abnormal focusX parameter passed in;
1519   * <br>4. Abnormal focusY parameter passed in.
1520   * @throws { BusinessError } 26500001 - Invalid windowId.
1521   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1522   * @since 15
1523   */
1524  function setCustomCursor(windowId: number, cursor: CustomCursor, config: CursorConfig): Promise<void>;
1525
1526  /**
1527   * Set touchpad double tap and drag state.
1528   *
1529   * @param { boolean } isOpen - Indicates whether the touchpad double tap and drag is enabled
1530   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1531   * @throws { BusinessError } 202 - SystemAPI permission error.
1532   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1533   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1534   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1535   * @systemapi hide for inner use.
1536   * @since 14
1537   */
1538  function setTouchpadDoubleTapAndDragState(isOpen: boolean, callback: AsyncCallback<void>): void;
1539
1540  /**
1541   * Set touchpad double tap and drag state.
1542   *
1543   * @param { boolean } isOpen - Indicates whether the touchpad double tap and drag is enabled
1544   * @returns { Promise<void> } Returns the result through a promise.
1545   * @throws { BusinessError } 202 - SystemAPI permission error.
1546   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1547   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1548   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1549   * @systemapi hide for inner use.
1550   * @since 14
1551   */
1552  function setTouchpadDoubleTapAndDragState(isOpen: boolean): Promise<void>;
1553
1554  /**
1555   * Get touchpad double tap and drag state.
1556   *
1557   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1558   * @throws { BusinessError } 202 - SystemAPI permission error.
1559   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1560   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1561   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1562   * @systemapi hide for inner use.
1563   * @since 14
1564   */
1565  function getTouchpadDoubleTapAndDragState(callback: AsyncCallback<boolean>): void;
1566
1567  /**
1568   * Get touchpad double tap and drag state.
1569   *
1570   * @returns { Promise<boolean> } Returns the result through a promise.
1571   * @throws { BusinessError } 202 - SystemAPI permission error.
1572   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1573   * @systemapi hide for inner use.
1574   * @since 14
1575   */
1576  function getTouchpadDoubleTapAndDragState(): Promise<boolean>;
1577}
1578export default pointer;