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   * Sets the pointer moving speed.
480   *
481   * @param { number } speed - Pointer moving speed, which is any number.
482   * @param { AsyncCallback<void> } callback - Callback used to return the result.
483   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
484   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
485   * @syscap SystemCapability.MultimodalInput.Input.Pointer
486   * @systemapi hide for inner use
487   * @since 9
488   */
489  /**
490   * Sets the pointer moving speed.
491   *
492   * @param { number } speed - Pointer moving speed, which is any number.
493   * @param { AsyncCallback<void> } callback - Callback used to return the result.
494   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
495   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
496   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
497   * @syscap SystemCapability.MultimodalInput.Input.Pointer
498   * @systemapi hide for inner use
499   * @since 12
500   */
501  function setPointerSpeed(speed: number, callback: AsyncCallback<void>): void;
502
503  /**
504   * Sets the pointer moving speed.
505   *
506   * @param { number } speed - Pointer moving speed, which is any number.
507   * @returns { Promise<void> } Returns the result through a promise.
508   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
509   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
510   * @syscap SystemCapability.MultimodalInput.Input.Pointer
511   * @systemapi hide for inner use
512   * @since 9
513   */
514  /**
515   * Sets the pointer moving speed.
516   *
517   * @param { number } speed - Pointer moving speed, which is any number.
518   * @returns { Promise<void> } Returns the result through a promise.
519   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
520   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
521   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
522   * @syscap SystemCapability.MultimodalInput.Input.Pointer
523   * @systemapi hide for inner use
524   * @since 12
525   */
526  function setPointerSpeed(speed: number): Promise<void>;
527
528  /**
529   * Sets the pointer moving speed through sync mode.
530   *
531   * @param { number } speed - Pointer moving speed, which is any number.
532   * @throws { BusinessError } 202 - SystemAPI permission error.
533   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
534   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
535   * @syscap SystemCapability.MultimodalInput.Input.Pointer
536   * @systemapi hide for inner use
537   * @since 10
538   */
539  function setPointerSpeedSync(speed: number): void;
540
541  /**
542   * Queries the pointer moving speed.
543   *
544   * @param { AsyncCallback<number> } callback - Callback used to return the result.
545   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
546   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
547   * @syscap SystemCapability.MultimodalInput.Input.Pointer
548   * @systemapi hide for inner use
549   * @since 9
550   */
551  /**
552   * Queries the pointer moving speed.
553   *
554   * @param { AsyncCallback<number> } callback - Callback used to return the result.
555   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
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 12
561   */
562  function getPointerSpeed(callback: AsyncCallback<number>): void;
563
564  /**
565   * Queries the pointer moving speed.
566   *
567   * @returns { Promise<number> } Returns the result through a promise.
568   * @syscap SystemCapability.MultimodalInput.Input.Pointer
569   * @systemapi hide for inner use
570   * @since 9
571   */
572  /**
573   * Queries the pointer moving speed.
574   *
575   * @returns { Promise<number> } Returns the result through a promise.
576   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
577   * @syscap SystemCapability.MultimodalInput.Input.Pointer
578   * @systemapi hide for inner use
579   * @since 12
580   */
581  function getPointerSpeed(): Promise<number>;
582
583  /**
584   * Queries the pointer moving speed through sync mode.
585   * @returns { number } Returns the pointer speed through sync mode.
586   * @throws { BusinessError } 202 - SystemAPI permission error.
587   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
588   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
589   * @syscap SystemCapability.MultimodalInput.Input.Pointer
590   * @systemapi hide for inner use
591   * @since 10
592   */
593  function getPointerSpeedSync(): number;
594
595  /**
596   * Sets the pointer style.
597   *
598   * @param { number } windowId - Window ID.
599   * @param { PointerStyle } pointerStyle - Pointer style.
600   * @param { AsyncCallback<void> } callback - Callback used to return the result.
601   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
602   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
603   * @syscap SystemCapability.MultimodalInput.Input.Pointer
604   * @since 9
605   */
606  function setPointerStyle(windowId: number, pointerStyle: PointerStyle, callback: AsyncCallback<void>): void;
607
608  /**
609   * Sets the pointer style.
610   *
611   * @param { number } windowId - Window ID.
612   * @param { PointerStyle } pointerStyle - Pointer style.
613   * @returns { Promise<void> } Returns the result through a promise.
614   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
615   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
616   * @syscap SystemCapability.MultimodalInput.Input.Pointer
617   * @since 9
618   */
619  function setPointerStyle(windowId: number, pointerStyle: PointerStyle): Promise<void>;
620
621  /**
622   * Sets the pointer style through sync mode.
623   *
624   * @param { number } windowId - Window ID.
625   * @param { PointerStyle } pointerStyle - Pointer style.
626   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
627   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
628   * @syscap SystemCapability.MultimodalInput.Input.Pointer
629   * @since 10
630   */
631  function setPointerStyleSync(windowId: number, pointerStyle: PointerStyle): void;
632
633  /**
634   * Queries the pointer style.
635   *
636   * @param { number } windowId - Window ID.
637   * @param { AsyncCallback<PointerStyle> } callback - Callback used to return the result.
638   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
639   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
640   * @syscap SystemCapability.MultimodalInput.Input.Pointer
641   * @since 9
642   */
643  function getPointerStyle(windowId: number, callback: AsyncCallback<PointerStyle>): void;
644
645  /**
646   * Queries the pointer style.
647   *
648   * @param { number } windowId - Window ID.
649   * @returns { Promise<PointerStyle> } Returns the result through a promise.
650   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
651   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
652   * @syscap SystemCapability.MultimodalInput.Input.Pointer
653   * @since 9
654   */
655  function getPointerStyle(windowId: number): Promise<PointerStyle>;
656
657  /**
658   * Queries the pointer style through sync mode.
659   *
660   * @param { number } windowId - Window ID.
661   * @returns { PointerStyle } Returns the pointerStyle.
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 10
666   */
667  function getPointerStyleSync(windowId: number): PointerStyle;
668
669  /**
670   * Sets whether the pointer icon is visible.
671   *
672   * @param { boolean } visible Whether the pointer icon is visible. The value true indicates that the pointer
673   * icon is visible, and the value false indicates the opposite.
674   * @param { AsyncCallback<void> } callback - Callback for the input device event.
675   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
676   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
677   * @syscap SystemCapability.MultimodalInput.Input.Pointer
678   * @since 9
679   */
680  function setPointerVisible(visible: boolean, callback: AsyncCallback<void>): void;
681
682  /**
683   * Sets whether the pointer icon is visible.
684   *
685   * @param { boolean } visible Whether the pointer icon is visible. The value true indicates that the pointer
686   * icon is visible, and the value false indicates the opposite.
687   * @returns { Promise<void> } Returns the result through a promise.
688   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
689   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
690   * @syscap SystemCapability.MultimodalInput.Input.Pointer
691   * @since 9
692   */
693  function setPointerVisible(visible: boolean): Promise<void>;
694
695  /**
696   * Sets whether the pointer icon is visible through sync mode.
697   *
698   * @param { boolean } visible Whether the pointer icon is visible. The value true indicates that the pointer
699   * icon is visible, and the value false indicates the opposite.
700   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
701   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
702   * @syscap SystemCapability.MultimodalInput.Input.Pointer
703   * @since 10
704   */
705  function setPointerVisibleSync(visible: boolean): void;
706
707  /**
708   * Checks whether the pointer icon is visible.
709   *
710   * @param { AsyncCallback<boolean> } callback - Returns <b>true</b> if the pointer icon is visible,
711   * returns <b>false</b> otherwise.
712   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
713   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
714   * @syscap SystemCapability.MultimodalInput.Input.Pointer
715   * @since 9
716   */
717  function isPointerVisible(callback: AsyncCallback<boolean>): void;
718
719  /**
720   * Checks whether the pointer icon is visible.
721   *
722   * @returns { Promise<boolean> } Returns <b>true</b> if the pointer icon is visible; returns <b>false</b> otherwise.
723   * @syscap SystemCapability.MultimodalInput.Input.Pointer
724   * @since 9
725   */
726  function isPointerVisible(): Promise<boolean>;
727
728  /**
729   * Checks whether the pointer icon is visible through sync mode.
730   *
731   * @returns { boolean } Returns true if the pointer icon is visible, returns false otherwise.
732   * @syscap SystemCapability.MultimodalInput.Input.Pointer
733   * @since 10
734   */
735  function isPointerVisibleSync(): boolean;
736
737  /**
738   * Set the color of pointer.
739   *
740   * @param { number } color - Indicates the color of pointer.
741   * @param { AsyncCallback<void> } callback - Callback used to return the result.
742   * @throws { BusinessError } 202 - SystemAPI permission error.
743   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
744   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
745   * @syscap SystemCapability.MultimodalInput.Input.Pointer
746   * @systemapi hide for inner use.
747   * @since 10
748   */
749  function setPointerColor(color: number, callback: AsyncCallback<void>): void;
750
751  /**
752   * Set the color of pointer.
753   *
754   * @param { number } color - Indicates the color of pointer.
755   * @returns { Promise<void> } Returns the result through a promise.
756   * @throws { BusinessError } 202 - SystemAPI permission error.
757   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
758   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
759   * @syscap SystemCapability.MultimodalInput.Input.Pointer
760   * @systemapi hide for inner use.
761   * @since 10
762   */
763  function setPointerColor(color: number): Promise<void>;
764
765  /**
766   * Set the color of pointer.
767   *
768   * @param { number } color - Indicates the color of pointer.
769   * @throws { BusinessError } 202 - SystemAPI permission error.
770   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
771   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
772   * @syscap SystemCapability.MultimodalInput.Input.Pointer
773   * @systemapi hide for inner use.
774   * @since 10
775   */
776  function setPointerColorSync(color: number): void;
777
778  /**
779   * Get the color of pointer.
780   *
781   * @param { AsyncCallback<number> } callback - Callback used to return the result.
782   * @throws { BusinessError } 202 - SystemAPI permission error.
783   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
784   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
785   * @syscap SystemCapability.MultimodalInput.Input.Pointer
786   * @systemapi hide for inner use.
787   * @since 10
788   */
789  function getPointerColor(callback: AsyncCallback<number>): void;
790
791  /**
792   * Get the color of pointer.
793   *
794   * @returns { Promise<number> } Returns the result through a promise.
795   * @throws { BusinessError } 202 - SystemAPI permission error.
796   * @syscap SystemCapability.MultimodalInput.Input.Pointer
797   * @systemapi hide for inner use.
798   * @since 10
799   */
800  function getPointerColor(): Promise<number>;
801
802  /**
803   * Get the color of pointer.
804   *
805   * @returns { number } Returns the pointer color through sync mode.
806   * @throws { BusinessError } 202 - SystemAPI permission error.
807   * @syscap SystemCapability.MultimodalInput.Input.Pointer
808   * @systemapi hide for inner use.
809   * @since 10
810   */
811  function getPointerColorSync(): number;
812
813  /**
814   * Set the size of pointer.
815   *
816   * @param { number } size - Indicates the size of pointer.
817   * @param { AsyncCallback<void> } callback - Callback used to return the result.
818   * @throws { BusinessError } 202 - SystemAPI permission error.
819   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
820   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
821   * @syscap SystemCapability.MultimodalInput.Input.Pointer
822   * @systemapi hide for inner use.
823   * @since 10
824   */
825  function setPointerSize(size: number, callback: AsyncCallback<void>): void;
826
827  /**
828   * Set the size of pointer.
829   *
830   * @param { number } size - Indicates the size of pointer.
831   * @returns { Promise<void> } Returns the result through a promise.
832   * @throws { BusinessError } 202 - SystemAPI permission error.
833   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
834   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
835   * @syscap SystemCapability.MultimodalInput.Input.Pointer
836   * @systemapi hide for inner use.
837   * @since 10
838   */
839  function setPointerSize(size: number): Promise<void>;
840
841  /**
842   * Set the size of pointer.
843   *
844   * @param { number } size - Indicates the size of pointer.
845   * @throws { BusinessError } 202 - SystemAPI permission error.
846   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
847   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
848   * @syscap SystemCapability.MultimodalInput.Input.Pointer
849   * @systemapi hide for inner use.
850   * @since 10
851   */
852  function setPointerSizeSync(size: number): void;
853
854  /**
855   * Get the size of pointer.
856   *
857   * @param { AsyncCallback<number> } callback - Callback used to return the result.
858   * @throws { BusinessError } 202 - SystemAPI permission error.
859   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
860   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
861   * @syscap SystemCapability.MultimodalInput.Input.Pointer
862   * @systemapi hide for inner use.
863   * @since 10
864   */
865  function getPointerSize(callback: AsyncCallback<number>): void;
866
867  /**
868   * Get the size of pointer.
869   *
870   * @returns { Promise<number> } Returns the result through a promise.
871   * @throws { BusinessError } 202 - SystemAPI permission error.
872   * @syscap SystemCapability.MultimodalInput.Input.Pointer
873   * @systemapi hide for inner use.
874   * @since 10
875   */
876  function getPointerSize(): Promise<number>;
877
878  /**
879   * Get the size of pointer.
880   *
881   * @returns { number } Returns the pointer size through sync mode.
882   * @throws { BusinessError } 202 - SystemAPI permission error.
883   * @syscap SystemCapability.MultimodalInput.Input.Pointer
884   * @systemapi hide for inner use.
885   * @since 10
886   */
887  function getPointerSizeSync(): number;
888
889  /**
890   * Sets mouse primary button.
891   *
892   * @param { PrimaryButton } primary - Indicates mouse primary button. The value LEFT indicates that mouse primary
893   * button is left button, and the value RIGHT indicates that mouse primary button is right button.
894   * @param { AsyncCallback<void> } callback - Callback used to return the result.
895   * @throws { BusinessError } 202 - SystemAPI permission error.
896   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
897   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
898   * @syscap SystemCapability.MultimodalInput.Input.Pointer
899   * @systemapi hide for inner use.
900   * @since 10
901   */
902  function setMousePrimaryButton(primary: PrimaryButton, callback: AsyncCallback<void>): void;
903
904  /**
905   * Sets mouse primary button.
906   *
907   * @param { PrimaryButton } primary - Indicates mouse primary button. The value LEFT indicates that mouse primary
908   * button is left button, and the value RIGHT indicates that mouse primary button is right button.
909   * @returns { Promise<void> } Returns the result through a promise.
910   * @throws { BusinessError } 202 - SystemAPI permission error.
911   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
912   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
913   * @syscap SystemCapability.MultimodalInput.Input.Pointer
914   * @systemapi hide for inner use.
915   * @since 10
916   */
917  function setMousePrimaryButton(primary: PrimaryButton): Promise<void>;
918
919  /**
920   * Gets mouse primary button.
921   *
922   * @param { AsyncCallback<PrimaryButton> } callback - Callback used to return the result.
923   * @throws { BusinessError } 202 - SystemAPI permission error.
924   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
925   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
926   * @syscap SystemCapability.MultimodalInput.Input.Pointer
927   * @systemapi hide for inner use.
928   * @since 10
929   */
930  function getMousePrimaryButton(callback: AsyncCallback<PrimaryButton>): void;
931
932  /**
933   * Gets mouse primary button.
934   *
935   * @returns { Promise<PrimaryButton> } Returns the result through a promise.
936   * @throws { BusinessError } 202 - SystemAPI permission error.
937   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
938   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
939   * @syscap SystemCapability.MultimodalInput.Input.Pointer
940   * @systemapi hide for inner use.
941   * @since 10
942   */
943  function getMousePrimaryButton(): Promise<PrimaryButton>;
944
945  /**
946   * Sets whether the mouse hover scroll is enabled in inactive window.
947   *
948   * @param { boolean } state - Indicates whether the mouse hover scroll is enabled in inactive window. The value true
949   * indicates that the mouse hover scroll is enabled, and the value false indicates the opposite.
950   * @param { AsyncCallback<void> } callback - Callback used to return the result.
951   * @throws { BusinessError } 202 - SystemAPI permission error.
952   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
953   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
954   * @syscap SystemCapability.MultimodalInput.Input.Pointer
955   * @systemapi hide for inner use.
956   * @since 10
957   */
958  function setHoverScrollState(state: boolean, callback: AsyncCallback<void>): void;
959
960  /**
961   * Sets whether mouse hover scroll is enabled in inactive window.
962   *
963   * @param { boolean } state - Indicates whether the mouse hover scroll is enabled in inactive window. The value true
964   * indicates that the mouse hover scroll is enabled, and the value false indicates the opposite.
965   * @returns { Promise<void> } Returns the result through a promise.
966   * @throws { BusinessError } 202 - SystemAPI permission error.
967   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
968   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
969   * @syscap SystemCapability.MultimodalInput.Input.Pointer
970   * @systemapi hide for inner use.
971   * @since 10
972   */
973  function setHoverScrollState(state: boolean): Promise<void>;
974
975  /**
976   * Gets a status whether the mouse hover scroll is enabled in inactive window.
977   *
978   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
979   * @throws { BusinessError } 202 - SystemAPI permission error.
980   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
981   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
982   * @syscap SystemCapability.MultimodalInput.Input.Pointer
983   * @systemapi hide for inner use.
984   * @since 10
985   */
986  function getHoverScrollState(callback: AsyncCallback<boolean>): void;
987
988  /**
989   * Gets a status whether mouse hover scroll is enabled in inactive window.
990   *
991   * @returns { Promise<boolean> } Returns the result through a promise.
992   * @throws { BusinessError } 202 - SystemAPI permission error.
993   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
994   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
995   * @syscap SystemCapability.MultimodalInput.Input.Pointer
996   * @systemapi hide for inner use.
997   * @since 10
998   */
999  function getHoverScrollState(): Promise<boolean>;
1000
1001  /**
1002   * Set the number of mouse scrolling rows.
1003   *
1004   * @param { number } rows - Indicates the number of mouse scrolling rows.
1005   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1006   * @throws { BusinessError } 202 - SystemAPI permission error.
1007   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1008   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1009   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1010   * @systemapi hide for inner use.
1011   * @since 10
1012   */
1013  function setMouseScrollRows(rows: number, callback: AsyncCallback<void>): void;
1014
1015  /**
1016   * Set the number of mouse scrolling rows.
1017   *
1018   * @param { number } rows - Indicates the number of mouse scrolling rows.
1019   * @returns { Promise<void> } Returns the result through a promise.
1020   * @throws { BusinessError } 202 - SystemAPI permission error.
1021   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1022   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1023   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1024   * @systemapi hide for inner use.
1025   * @since 10
1026   */
1027  function setMouseScrollRows(rows: number): Promise<void>;
1028
1029  /**
1030   * Get the number of mouse scrolling rows.
1031   *
1032   * @param { AsyncCallback<number> } callback - Callback used to return the result.
1033   * @throws { BusinessError } 202 - SystemAPI permission error.
1034   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1035   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1036   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1037   * @systemapi hide for inner use.
1038   * @since 10
1039   */
1040  function getMouseScrollRows(callback: AsyncCallback<number>): void;
1041
1042  /**
1043   * Get the number of mouse scrolling rows.
1044   *
1045   * @returns { Promise<number> } Returns the result through a promise.
1046   * @throws { BusinessError } 202 - SystemAPI permission error.
1047   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1048   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1049   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1050   * @systemapi hide for inner use.
1051   * @since 10
1052   */
1053  function getMouseScrollRows(): Promise<number>;
1054
1055  /**
1056   * Set touchpad scroll switch.
1057   *
1058   * @param { boolean } state - Indicates whether the touchpad scroll switch is enabled
1059   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1060   * @throws { BusinessError } 202 - SystemAPI permission error.
1061   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1062   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1063   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1064   * @systemapi hide for inner use.
1065   * @since 10
1066   */
1067  function setTouchpadScrollSwitch(state: boolean, callback: AsyncCallback<void>): void;
1068
1069  /**
1070   * Set touchpad scroll switch.
1071   *
1072   * @param { boolean } state - Indicates whether the touchpad scroll switch is enabled
1073   * @returns { Promise<void> } Returns the result through a promise.
1074   * @throws { BusinessError } 202 - SystemAPI permission error.
1075   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1076   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1077   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1078   * @systemapi hide for inner use.
1079   * @since 10
1080   */
1081  function setTouchpadScrollSwitch(state: boolean): Promise<void>;
1082
1083  /**
1084   * Get touchpad scroll switch state.
1085   *
1086   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1087   * @throws { BusinessError } 202 - SystemAPI permission error.
1088   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1089   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1090   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1091   * @systemapi hide for inner use.
1092   * @since 10
1093   */
1094  function getTouchpadScrollSwitch(callback: AsyncCallback<boolean>): void;
1095
1096  /**
1097   * Get touchpad scroll switch state.
1098   *
1099   * @returns { Promise<boolean> } Returns the result through a promise.
1100   * @throws { BusinessError } 202 - SystemAPI permission error.
1101   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1102   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1103   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1104   * @systemapi hide for inner use.
1105   * @since 10
1106   */
1107  function getTouchpadScrollSwitch(): Promise<boolean>;
1108
1109  /**
1110   * Set touchpad scroll direction.
1111   *
1112   * @param { boolean } state - Indicates whether the touchpad scroll direction is forward or reverse
1113   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1114   * @throws { BusinessError } 202 - SystemAPI permission error.
1115   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1116   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1117   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1118   * @systemapi hide for inner use.
1119   * @since 10
1120   */
1121  function setTouchpadScrollDirection(state: boolean, callback: AsyncCallback<void>): void;
1122
1123  /**
1124   * Set touchpad scroll direction.
1125   *
1126   * @param { boolean } state - Indicates whether the touchpad scroll direction is forward or reverse
1127   * @returns { Promise<void> } Returns the result through a promise.
1128   * @throws { BusinessError } 202 - SystemAPI permission error.
1129   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1130   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1131   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1132   * @systemapi hide for inner use.
1133   * @since 10
1134   */
1135  function setTouchpadScrollDirection(state: boolean): Promise<void>;
1136
1137  /**
1138   * Get touchpad scroll direction.
1139   *
1140   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1141   * @throws { BusinessError } 202 - SystemAPI permission error.
1142   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1143   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1144   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1145   * @systemapi hide for inner use.
1146   * @since 10
1147   */
1148  function getTouchpadScrollDirection(callback: AsyncCallback<boolean>): void;
1149
1150  /**
1151   * Get touchpad scroll direction.
1152   *
1153   * @returns { Promise<boolean> } Returns the result through a promise.
1154   * @throws { BusinessError } 202 - SystemAPI permission error.
1155   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1156   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1157   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1158   * @systemapi hide for inner use.
1159   * @since 10
1160   */
1161  function getTouchpadScrollDirection(): Promise<boolean>;
1162
1163  /**
1164   * Set touchpad tap switch.
1165   *
1166   * @param { boolean } state - Indicates whether the touchpad tap switch is enabled
1167   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1168   * @throws { BusinessError } 202 - SystemAPI permission error.
1169   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1170   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1171   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1172   * @systemapi hide for inner use.
1173   * @since 10
1174   */
1175  function setTouchpadTapSwitch(state: boolean, callback: AsyncCallback<void>): void;
1176
1177  /**
1178   * Set touchpad tap switch.
1179   *
1180   * @param { boolean } state - Indicates whether the touchpad tap switch is enabled
1181   * @returns { Promise<void> } Returns the result through a promise.
1182   * @throws { BusinessError } 202 - SystemAPI permission error.
1183   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1184   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1185   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1186   * @systemapi hide for inner use.
1187   * @since 10
1188   */
1189  function setTouchpadTapSwitch(state: boolean): Promise<void>;
1190
1191  /**
1192   * Get touchpad tap switch state.
1193   *
1194   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1195   * @throws { BusinessError } 202 - SystemAPI permission error.
1196   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1197   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1198   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1199   * @systemapi hide for inner use.
1200   * @since 10
1201   */
1202  function getTouchpadTapSwitch(callback: AsyncCallback<boolean>): void;
1203
1204  /**
1205   * Get touchpad tap switch state.
1206   *
1207   * @returns { Promise<boolean> } Returns the result through a promise.
1208   * @throws { BusinessError } 202 - SystemAPI permission error.
1209   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1210   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1211   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1212   * @systemapi hide for inner use.
1213   * @since 10
1214   */
1215  function getTouchpadTapSwitch(): Promise<boolean>;
1216
1217  /**
1218   * Set touchpad pointer speed.
1219   *
1220   * @param { number } speed - Indicates the number of touchpad pointer speed.
1221   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1222   * @throws { BusinessError } 202 - SystemAPI permission error.
1223   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1224   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1225   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1226   * @systemapi hide for inner use.
1227   * @since 10
1228   */
1229  function setTouchpadPointerSpeed(speed: number, callback: AsyncCallback<void>): void;
1230
1231  /**
1232   * Set touchpad pointer speed.
1233   *
1234   * @param { number } speed - Indicates the number of touchpad pointer speed.
1235   * @returns { Promise<void> } Returns the result through a promise.
1236   * @throws { BusinessError } 202 - SystemAPI permission error.
1237   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1238   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1239   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1240   * @systemapi hide for inner use.
1241   * @since 10
1242   */
1243  function setTouchpadPointerSpeed(speed: number): Promise<void>;
1244
1245  /**
1246   * Get touchpad pointer speed.
1247   *
1248   * @param { AsyncCallback<number> } callback - Callback used to return the result.
1249   * @throws { BusinessError } 202 - SystemAPI permission error.
1250   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1251   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1252   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1253   * @systemapi hide for inner use.
1254   * @since 10
1255   */
1256  function getTouchpadPointerSpeed(callback: AsyncCallback<number>): void;
1257
1258  /**
1259   * Get touchpad pointer speed.
1260   *
1261   * @returns { Promise<number> } Returns the result through a promise.
1262   * @throws { BusinessError } 202 - SystemAPI permission error.
1263   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1264   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1265   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1266   * @systemapi hide for inner use.
1267   * @since 10
1268   */
1269  function getTouchpadPointerSpeed(): Promise<number>;
1270
1271  /**
1272   * Set touchpad pinch switch.
1273   *
1274   * @param { boolean } state - Indicates whether the touchpad pinch switch is enabled
1275   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1276   * @throws { BusinessError } 202 - SystemAPI permission error.
1277   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1278   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1279   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1280   * @systemapi hide for inner use.
1281   * @since 10
1282   */
1283  function setTouchpadPinchSwitch(state: boolean, callback: AsyncCallback<void>): void;
1284
1285  /**
1286   * Set touchpad pinch switch.
1287   *
1288   * @param { boolean } state - Indicates whether the touchpad pinch switch is enabled
1289   * @returns { Promise<void> } Returns the result through a promise.
1290   * @throws { BusinessError } 202 - SystemAPI permission error.
1291   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1292   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1293   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1294   * @systemapi hide for inner use.
1295   * @since 10
1296   */
1297  function setTouchpadPinchSwitch(state: boolean): Promise<void>;
1298
1299  /**
1300   * Get touchpad pinch switch state.
1301   *
1302   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1303   * @throws { BusinessError } 202 - SystemAPI permission error.
1304   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1305   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1306   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1307   * @systemapi hide for inner use.
1308   * @since 10
1309  */
1310  function getTouchpadPinchSwitch(callback: AsyncCallback<boolean>): void;
1311
1312  /**
1313   * Get touchpad pinch switch state.
1314   *
1315   * @returns { Promise<boolean> } Returns the result through a promise.
1316   * @throws { BusinessError } 202 - SystemAPI permission error.
1317   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1318   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1319   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1320   * @systemapi hide for inner use.
1321   * @since 10
1322   */
1323  function getTouchpadPinchSwitch(): Promise<boolean>;
1324
1325  /**
1326   * Set touchpad swipe switch.
1327   *
1328   * @param { boolean } state - Indicates whether the touchpad swipe switch is enabled
1329   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1330   * @throws { BusinessError } 202 - SystemAPI permission error.
1331   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1332   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1333   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1334   * @systemapi hide for inner use.
1335   * @since 10
1336   */
1337  function setTouchpadSwipeSwitch(state: boolean, callback: AsyncCallback<void>): void;
1338
1339  /**
1340   * Set touchpad swipe switch.
1341   *
1342   * @param { boolean } state - Indicates whether the touchpad swipe switch is enabled
1343   * @returns { Promise<void> } Returns the result through a promise.
1344   * @throws { BusinessError } 202 - SystemAPI permission error.
1345   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1346   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1347   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1348   * @systemapi hide for inner use.
1349   * @since 10
1350   */
1351  function setTouchpadSwipeSwitch(state: boolean): Promise<void>;
1352 
1353  /**
1354   * Get touchpad swipe switch state.
1355   *
1356   * @param { AsyncCallback<boolean> } callback - Callback used to return the result.
1357   * @throws { BusinessError } 202 - SystemAPI permission error.
1358   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1359   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1360   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1361   * @systemapi hide for inner use.
1362   * @since 10
1363   */
1364  function getTouchpadSwipeSwitch(callback: AsyncCallback<boolean>): void;
1365 
1366  /**
1367   * Get touchpad swipe switch state.
1368   *
1369   * @returns { Promise<boolean> } Returns the result through a promise.
1370   * @throws { BusinessError } 202 - SystemAPI permission error.
1371   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1372   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1373   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1374   * @systemapi hide for inner use.
1375   * @since 10
1376   */
1377  function getTouchpadSwipeSwitch(): Promise<boolean>;
1378
1379  /**
1380   * Set touchpad right click type.
1381   *
1382   * @param { RightClickType } type - Indicates the type of touchpad right button menu.
1383   * @param { AsyncCallback<void> } callback - Callback used to return the result.
1384   * @throws { BusinessError } 202 - SystemAPI permission error.
1385   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1386   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1387   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1388   * @systemapi hide for inner use.
1389   * @since 10
1390   */
1391  function setTouchpadRightClickType(type: RightClickType, callback: AsyncCallback<void>): void;
1392
1393  /**
1394   * Set touchpad right click type.
1395   *
1396   * @param { RightClickType } type - Indicates the type of touchpad right click.
1397   * @returns { Promise<void> } Returns the result through a promise.
1398   * @throws { BusinessError } 202 - SystemAPI permission error.
1399   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1400   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1401   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1402   * @systemapi hide for inner use.
1403   * @since 10
1404   */
1405  function setTouchpadRightClickType(type: RightClickType): Promise<void>;
1406
1407  /**
1408   * Get touchpad right click type.
1409   *
1410   * @param { AsyncCallback<RightClickType> } callback - Callback used to return the result of right click type.
1411   * @throws { BusinessError } 202 - SystemAPI permission error.
1412   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1413   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1414   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1415   * @systemapi hide for inner use.
1416   * @since 10
1417   */
1418  function getTouchpadRightClickType(callback: AsyncCallback<RightClickType>): void;
1419
1420  /**
1421   * Get touchpad right click type.
1422   *
1423   * @returns { Promise<RightClickType> } Returns the result of right click type through a promise.
1424   * @throws { BusinessError } 202 - SystemAPI permission error.
1425   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1426   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1427   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1428   * @systemapi hide for inner use.
1429   * @since 10
1430   */
1431  function getTouchpadRightClickType(): Promise<RightClickType>;
1432
1433  /**
1434   * Sets the custom cursor.
1435   *
1436   * @param { number } windowId - Window ID.
1437   * @param { image.PixelMap } pixelMap - the cursor of pixelMap.
1438   * @param { number } focusX - focus x.
1439   * @param { number } focusY - focus y.
1440   * @returns { Promise<void> } Returns the result through a promise.
1441   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1442   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1443   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1444   * @since 11
1445   */
1446  function setCustomCursor(windowId: number, pixelMap: image.PixelMap, focusX?: number, focusY?: number): Promise<void>;
1447
1448  /**
1449   * Sets the custom cursor through sync mode.
1450   *
1451   * @param { number } windowId - Window ID.
1452   * @param { image.PixelMap } pixelMap - the cursor of pixelMap.
1453   * @param { number } focusX - focus x.
1454   * @param { number } focusY - focus y.
1455   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
1456   * <br>2. Incorrect parameter types; 3. Parameter verification failed.
1457   * @syscap SystemCapability.MultimodalInput.Input.Pointer
1458   * @since 11
1459   */
1460  function setCustomCursorSync(windowId: number, pixelMap: image.PixelMap, focusX?: number, focusY?: number): void;
1461}
1462
1463export default pointer;