• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (C) 2021-2025 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 AccessibilityKit
19 */
20
21import type { AsyncCallback } from './@ohos.base';
22import type { Callback } from './@ohos.base';
23import { Resource } from './global/resource';
24
25/**
26 * Accessibility action that the ability can execute.
27 *
28 * @enum { number }
29 * @syscap SystemCapability.BarrierFree.Accessibility.Core
30 * @systemapi
31 * @since 20
32 */
33export enum AccessibilityAction {
34  /**
35   * AccessibilityFocus
36   *
37   * @syscap SystemCapability.BarrierFree.Accessibility.Core
38   * @systemapi
39   * @since 20
40   */
41  ACCESSIBILITY_FOCUS = 0,
42
43  /**
44   * ClearAccessibilityFocus
45   *
46   * @syscap SystemCapability.BarrierFree.Accessibility.Core
47   * @systemapi
48   * @since 20
49   */
50  CLEAR_ACCESSIBILITY_FOCUS = 1,
51
52  /**
53   * Focus
54   *
55   * @syscap SystemCapability.BarrierFree.Accessibility.Core
56   * @systemapi
57   * @since 20
58   */
59  FOCUS = 2,
60
61  /**
62   * ClearFocus
63   *
64   * @syscap SystemCapability.BarrierFree.Accessibility.Core
65   * @systemapi
66   * @since 20
67   */
68  CLEAR_FOCUS = 3,
69
70  /**
71   * Click
72   *
73   * @syscap SystemCapability.BarrierFree.Accessibility.Core
74   * @systemapi
75   * @since 20
76   */
77  CLICK = 4,
78
79  /**
80   * LongClick
81   *
82   * @syscap SystemCapability.BarrierFree.Accessibility.Core
83   * @systemapi
84   * @since 20
85   */
86  LONG_CLICK = 5,
87
88  /**
89   * Cut
90   *
91   * @syscap SystemCapability.BarrierFree.Accessibility.Core
92   * @systemapi
93   * @since 20
94   */
95  CUT = 6,
96
97  /**
98   * Copy
99   *
100   * @syscap SystemCapability.BarrierFree.Accessibility.Core
101   * @systemapi
102   * @since 20
103   */
104  COPY = 7,
105
106  /**
107   * Paste
108   *
109   * @syscap SystemCapability.BarrierFree.Accessibility.Core
110   * @systemapi
111   * @since 20
112   */
113  PASTE = 8,
114
115  /**
116   * Select
117   *
118   * @syscap SystemCapability.BarrierFree.Accessibility.Core
119   * @systemapi
120   * @since 20
121   */
122  SELECT = 9,
123
124  /**
125   * SetText
126   *
127   * @syscap SystemCapability.BarrierFree.Accessibility.Core
128   * @systemapi
129   * @since 20
130   */
131  SET_TEXT = 10,
132
133  /**
134   * ScrollForward
135   *
136   * @syscap SystemCapability.BarrierFree.Accessibility.Core
137   * @systemapi
138   * @since 20
139   */
140  SCROLL_FORWARD = 11,
141
142  /**
143   * ScrollBackward
144   *
145   * @syscap SystemCapability.BarrierFree.Accessibility.Core
146   * @systemapi
147   * @since 20
148   */
149  SCROLL_BACKWARD = 12,
150
151  /**
152   * SetSelection
153   *
154   * @syscap SystemCapability.BarrierFree.Accessibility.Core
155   * @systemapi
156   * @since 20
157   */
158  SET_SELECTION = 13,
159
160  /**
161   * SetCursorPosition
162   *
163   * @syscap SystemCapability.BarrierFree.Accessibility.Core
164   * @systemapi
165   * @since 20
166   */
167  SET_CURSOR_POSITION = 14,
168
169  /**
170   * Home
171   *
172   * @syscap SystemCapability.BarrierFree.Accessibility.Core
173   * @systemapi
174   * @since 20
175   */
176  HOME = 15,
177
178  /**
179   * Back
180   *
181   * @syscap SystemCapability.BarrierFree.Accessibility.Core
182   * @systemapi
183   * @since 20
184   */
185  BACK = 16,
186
187  /**
188   * RecentTask
189   *
190   * @syscap SystemCapability.BarrierFree.Accessibility.Core
191   * @systemapi
192   * @since 20
193   */
194  RECENT_TASK = 17,
195
196  /**
197   * NotificationCenter
198   *
199   * @syscap SystemCapability.BarrierFree.Accessibility.Core
200   * @systemapi
201   * @since 20
202   */
203  NOTIFICATION_CENTER = 18,
204
205  /**
206   * ControlCenter
207   *
208   * @syscap SystemCapability.BarrierFree.Accessibility.Core
209   * @systemapi
210   * @since 20
211   */
212  CONTROL_CENTER = 19,
213
214  /**
215   * SpanClick
216   *
217   * @syscap SystemCapability.BarrierFree.Accessibility.Core
218   * @systemapi
219   * @since 20
220   */
221  SPAN_CLICK = 20
222}
223
224
225/**
226 * AccessibilityEvent type
227 *
228 * @enum { number }
229 * @syscap SystemCapability.BarrierFree.Accessibility.Core
230 * @systemapi
231 * @since 20
232 */
233export enum AccessibilityEventType {
234  //EventType
235  /**
236   * AccessibilityFocus type
237   *
238   * @syscap SystemCapability.BarrierFree.Accessibility.Core
239   * @systemapi
240   * @since 20
241   */
242  TYPE_ACCESSIBILITY_FOCUS = 0,
243
244  /**
245   * AccessibilityFocusClear type
246   *
247   * @syscap SystemCapability.BarrierFree.Accessibility.Core
248   * @systemapi
249   * @since 20
250   */
251  TYPE_ACCESSIBILITY_FOCUS_CLEAR = 1,
252
253  /**
254   * Click type
255   *
256   * @syscap SystemCapability.BarrierFree.Accessibility.Core
257   * @systemapi
258   * @since 20
259   */
260  TYPE_CLICK = 2,
261
262  /**
263   * LongClick type
264   *
265   * @syscap SystemCapability.BarrierFree.Accessibility.Core
266   * @systemapi
267   * @since 20
268   */
269  TYPE_LONG_CLICK = 3,
270
271  /**
272   * Select type
273   *
274   * @syscap SystemCapability.BarrierFree.Accessibility.Core
275   * @systemapi
276   * @since 20
277   */
278  TYPE_SELECT = 4,
279
280  /**
281   * HoverEnter type
282   *
283   * @syscap SystemCapability.BarrierFree.Accessibility.Core
284   * @systemapi
285   * @since 20
286   */
287  TYPE_HOVER_ENTER = 5,
288
289  /**
290   * HoverExit type
291   *
292   * @syscap SystemCapability.BarrierFree.Accessibility.Core
293   * @systemapi
294   * @since 20
295   */
296  TYPE_HOVER_EXIT = 6,
297
298  /**
299   * Focus type
300   *
301   * @syscap SystemCapability.BarrierFree.Accessibility.Core
302   * @systemapi
303   * @since 20
304   */
305  TYPE_FOCUS = 7,
306
307  /**
308   * TextUpdate type
309   *
310   * @syscap SystemCapability.BarrierFree.Accessibility.Core
311   * @systemapi
312   * @since 20
313   */
314  TYPE_TEXT_UPDATE = 8,
315
316  /**
317   * TextSelectionUpdate type
318   *
319   * @syscap SystemCapability.BarrierFree.Accessibility.Core
320   * @systemapi
321   * @since 20
322   */
323  TYPE_TEXT_SELECTION_UPDATE = 9,
324
325  /**
326   * Scroll type
327   *
328   * @syscap SystemCapability.BarrierFree.Accessibility.Core
329   * @systemapi
330   * @since 20
331   */
332  TYPE_SCROLL = 10,
333
334  /**
335   * RequestFocusForAccessibility type
336   *
337   * @syscap SystemCapability.BarrierFree.Accessibility.Core
338   * @systemapi
339   * @since 20
340   */
341  TYPE_REQUEST_FOCUS_FOR_ACCESSIBILITY = 11,
342
343  /**
344   * AnnounceForAccessibility type
345   *
346   * @syscap SystemCapability.BarrierFree.Accessibility.Core
347   * @systemapi
348   * @since 20
349   */
350  TYPE_ANNOUNCE_FOR_ACCESSIBILITY = 12,
351
352  /**
353   * RequestFocusForAccessibilityNotInterrupt type
354   *
355   * @syscap SystemCapability.BarrierFree.Accessibility.Core
356   * @systemapi
357   * @since 20
358   */
359  TYPE_REQUEST_FOCUS_FOR_ACCESSIBILITY_NOT_INTERRUPT = 13,
360
361  /**
362   * AnnounceForAccessibilityNotInterrupt type
363   *
364   * @syscap SystemCapability.BarrierFree.Accessibility.Core
365   * @systemapi
366   * @since 20
367   */
368  TYPE_ANNOUNCE_FOR_ACCESSIBILITY_NOT_INTERRUPT = 14,
369
370  /**
371   * ElementInfoChange type
372   *
373   * @syscap SystemCapability.BarrierFree.Accessibility.Core
374   * @systemapi
375   * @since 20
376   */
377  TYPE_ELEMENT_INFO_CHANGE = 15,
378
379  /**
380   * Scrolling type
381   *
382   * @syscap SystemCapability.BarrierFree.Accessibility.Core
383   * @systemapi
384   * @since 20
385   */
386  TYPE_SCROLLING = 16,
387
388  // WindowUpdateType
389  /**
390   * Window add type
391   *
392   * @syscap SystemCapability.BarrierFree.Accessibility.Core
393   * @systemapi
394   * @since 20
395   */
396  TYPE_WINDOW_ADD = 17,
397
398  /**
399   * Window remove type
400   *
401   * @syscap SystemCapability.BarrierFree.Accessibility.Core
402   * @systemapi
403   * @since 20
404   */
405  TYPE_WINDOW_REMOVE = 18,
406
407  /**
408   * Window bounds type
409   *
410   * @syscap SystemCapability.BarrierFree.Accessibility.Core
411   * @systemapi
412   * @since 20
413   */
414  TYPE_WINDOW_BOUNDS = 19,
415
416  /**
417   * Window active type
418   *
419   * @syscap SystemCapability.BarrierFree.Accessibility.Core
420   * @systemapi
421   * @since 20
422   */
423  TYPE_WINDOW_ACTIVE = 20,
424
425  /**
426   * Window focus type
427   *
428   * @syscap SystemCapability.BarrierFree.Accessibility.Core
429   * @systemapi
430   * @since 20
431   */
432  TYPE_WINDOW_FOCUS = 21,
433
434  /**
435   * Window property type
436   *
437   * @syscap SystemCapability.BarrierFree.Accessibility.Core
438   * @systemapi
439   * @since 20
440   */
441  TYPE_WINDOW_PROPERTY = 22,
442
443  /**
444   * Window layer type
445   *
446   * @syscap SystemCapability.BarrierFree.Accessibility.Core
447   * @systemapi
448   * @since 20
449   */
450  TYPE_WINDOW_LAYER = 23,
451
452  //TouchGuideType
453  /**
454   * TouchBegin type
455   *
456   * @syscap SystemCapability.BarrierFree.Accessibility.Core
457   * @systemapi
458   * @since 20
459   */
460  TYPE_TOUCH_BEGIN = 24,
461
462  /**
463   * TouchEnd type
464   *
465   * @syscap SystemCapability.BarrierFree.Accessibility.Core
466   * @systemapi
467   * @since 20
468   */
469  TYPE_TOUCH_END = 25,
470
471  //PageUpdateType
472  /**
473   * PageContentUpdate type
474   *
475   * @syscap SystemCapability.BarrierFree.Accessibility.Core
476   * @systemapi
477   * @since 20
478   */
479  TYPE_PAGE_CONTENT_UPDATE = 26,
480
481  /**
482   * PageStateUpdate type
483   *
484   * @syscap SystemCapability.BarrierFree.Accessibility.Core
485   * @systemapi
486   * @since 20
487   */
488  TYPE_PAGE_STATE_UPDATE = 27,
489
490  /**
491   * PageOpen type
492   *
493   * @syscap SystemCapability.BarrierFree.Accessibility.Core
494   * @systemapi
495   * @since 20
496   */
497  TYPE_PAGE_OPEN = 28,
498
499  /**
500   * PageClose type
501   *
502   * @syscap SystemCapability.BarrierFree.Accessibility.Core
503   * @systemapi
504   * @since 20
505   */
506  TYPE_PAGE_CLOSE = 29,
507
508  //GestureType
509  /**
510   * left type
511   *
512   * @syscap SystemCapability.BarrierFree.Accessibility.Core
513   * @systemapi
514   * @since 20
515   */
516  TYPE_SWIPE_LEFT = 30,
517
518  /**
519   * leftThenRight type
520   *
521   * @syscap SystemCapability.BarrierFree.Accessibility.Core
522   * @systemapi
523   * @since 20
524   */
525  TYPE_SWIPE_LEFT_THEN_RIGHT = 31,
526
527  /**
528   * leftThenUp type
529   *
530   * @syscap SystemCapability.BarrierFree.Accessibility.Core
531   * @systemapi
532   * @since 20
533   */
534  TYPE_SWIPE_LEFT_THEN_UP = 32,
535
536  /**
537   * leftThenDown type
538   *
539   * @syscap SystemCapability.BarrierFree.Accessibility.Core
540   * @systemapi
541   * @since 20
542   */
543  TYPE_SWIPE_LEFT_THEN_DOWN = 33,
544
545  /**
546   * right type
547   *
548   * @syscap SystemCapability.BarrierFree.Accessibility.Core
549   * @systemapi
550   * @since 20
551   */
552  TYPE_SWIPE_RIGHT = 34,
553
554  /**
555   * rightThenLeft type
556   *
557   * @syscap SystemCapability.BarrierFree.Accessibility.Core
558   * @systemapi
559   * @since 20
560   */
561  TYPE_SWIPE_RIGHT_THEN_LEFT = 35,
562
563  /**
564   * rightThenUp type
565   *
566   * @syscap SystemCapability.BarrierFree.Accessibility.Core
567   * @systemapi
568   * @since 20
569   */
570  TYPE_SWIPE_RIGHT_THEN_UP = 36,
571
572  /**
573   * rightThenDown type
574   *
575   * @syscap SystemCapability.BarrierFree.Accessibility.Core
576   * @systemapi
577   * @since 20
578   */
579  TYPE_SWIPE_RIGHT_THEN_DOWN = 37,
580
581  /**
582   * up type
583   *
584   * @syscap SystemCapability.BarrierFree.Accessibility.Core
585   * @systemapi
586   * @since 20
587   */
588  TYPE_SWIPE_UP = 38,
589
590  /**
591   * upThenLeft type
592   *
593   * @syscap SystemCapability.BarrierFree.Accessibility.Core
594   * @systemapi
595   * @since 20
596   */
597  TYPE_SWIPE_UP_THEN_LEFT = 39,
598
599  /**
600   * upThenRight type
601   *
602   * @syscap SystemCapability.BarrierFree.Accessibility.Core
603   * @systemapi
604   * @since 20
605   */
606  TYPE_SWIPE_UP_THEN_RIGHT = 40,
607
608  /**
609   * upThenDown type
610   *
611   * @syscap SystemCapability.BarrierFree.Accessibility.Core
612   * @systemapi
613   * @since 20
614   */
615  TYPE_SWIPE_UP_THEN_DOWN = 41,
616
617  /**
618   * down type
619   *
620   * @syscap SystemCapability.BarrierFree.Accessibility.Core
621   * @systemapi
622   * @since 20
623   */
624  TYPE_SWIPE_DOWN = 42,
625
626  /**
627   * downThenLeft type
628   *
629   * @syscap SystemCapability.BarrierFree.Accessibility.Core
630   * @systemapi
631   * @since 20
632   */
633  TYPE_SWIPE_DOWN_THEN_LEFT = 43,
634
635  /**
636 * downThenRight type
637 *
638 * @syscap SystemCapability.BarrierFree.Accessibility.Core
639 * @systemapi
640 * @since 20
641 */
642  TYPE_SWIPE_DOWN_THEN_RIGHT = 44,
643
644  /**
645   * downThenUp type
646   *
647   * @syscap SystemCapability.BarrierFree.Accessibility.Core
648   * @systemapi
649   * @since 20
650   */
651  TYPE_SWIPE_DOWN_THEN_UP = 45,
652
653  /**
654   * twoFingerSingleTap type
655   *
656   * @syscap SystemCapability.BarrierFree.Accessibility.Core
657   * @systemapi
658   * @since 20
659   */
660  TYPE_TWO_FINGER_SINGLE_TAP = 46,
661
662  /**
663   * twoFingerDoubleTap type
664   *
665   * @syscap SystemCapability.BarrierFree.Accessibility.Core
666   * @systemapi
667   * @since 20
668   */
669  TYPE_TWO_FINGER_DOUBLE_TAP = 47,
670
671  /**
672   * twoFingerDoubleTapAndHold type
673   *
674   * @syscap SystemCapability.BarrierFree.Accessibility.Core
675   * @systemapi
676   * @since 20
677   */
678  TYPE_TWO_FINGER_DOUBLE_TAP_AND_HOLD = 48,
679
680  /**
681 * twoFingerTripleTap type
682 *
683 * @syscap SystemCapability.BarrierFree.Accessibility.Core
684 * @systemapi
685 * @since 20
686 */
687  TYPE_TWO_FINGER_TRIPLE_TAP = 49,
688
689  /**
690   * twoFingerTripleTapAndHold type
691   *
692   * @syscap SystemCapability.BarrierFree.Accessibility.Core
693   * @systemapi
694   * @since 20
695   */
696  TYPE_TWO_FINGER_TRIPLE_TAP_AND_HOLD = 50,
697
698  /**
699   * threeFingerSingleTap type
700   *
701   * @syscap SystemCapability.BarrierFree.Accessibility.Core
702   * @systemapi
703   * @since 20
704   */
705  TYPE_THREE_FINGER_SINGLE_TAP = 51,
706
707  /**
708   * threeFingerDoubleTap type
709   *
710   * @syscap SystemCapability.BarrierFree.Accessibility.Core
711   * @systemapi
712   * @since 20
713   */
714  TYPE_THREE_FINGER_DOUBLE_TAP = 52,
715
716  /**
717   * threeFingerDoubleTapAndHold type
718   *
719   * @syscap SystemCapability.BarrierFree.Accessibility.Core
720   * @systemapi
721   * @since 20
722   */
723  TYPE_THREE_FINGER_DOUBLE_TAP_AND_HOLD = 53,
724
725  /**
726 * threeFingerTripleTap type
727 *
728 * @syscap SystemCapability.BarrierFree.Accessibility.Core
729 * @systemapi
730 * @since 20
731 */
732  TYPE_THREE_FINGER_TRIPLE_TAP = 54,
733
734  /**
735   * threeFingerTripleTapAndHold type
736   *
737   * @syscap SystemCapability.BarrierFree.Accessibility.Core
738   * @systemapi
739   * @since 20
740   */
741  TYPE_THREE_FINGER_TRIPLE_TAP_AND_HOLD = 55,
742
743  /**
744   * fourFingerSingleTap type
745   *
746   * @syscap SystemCapability.BarrierFree.Accessibility.Core
747   * @systemapi
748   * @since 20
749   */
750  TYPE_FOUR_FINGER_SINGLE_TAP = 56,
751
752  /**
753   * fourFingerDoubleTap type
754   *
755   * @syscap SystemCapability.BarrierFree.Accessibility.Core
756   * @systemapi
757   * @since 20
758   */
759  TYPE_FOUR_FINGER_DOUBLE_TAP = 57,
760
761  /**
762   * fourFingerDoubleTapAndHold type
763   *
764   * @syscap SystemCapability.BarrierFree.Accessibility.Core
765   * @systemapi
766   * @since 20
767   */
768  TYPE_FOUR_FINGER_DOUBLE_TAP_AND_HOLD = 58,
769
770  /**
771 * fourFingerTripleTap type
772 *
773 * @syscap SystemCapability.BarrierFree.Accessibility.Core
774 * @systemapi
775 * @since 20
776 */
777  TYPE_FOUR_FINGER_TRIPLE_TAP = 59,
778
779  /**
780   * fourFingerTripleTapAndHold type
781   *
782   * @syscap SystemCapability.BarrierFree.Accessibility.Core
783   * @systemapi
784   * @since 20
785   */
786  TYPE_FOUR_FINGER_TRIPLE_TAP_AND_HOLD = 60,
787
788  /**
789   * threeFingerSwipeUp type
790   *
791   * @syscap SystemCapability.BarrierFree.Accessibility.Core
792   * @systemapi
793   * @since 20
794   */
795  TYPE_THREE_FINGER_SWIPE_UP = 61,
796
797  /**
798   * threeFingerSwipeDown type
799   *
800   * @syscap SystemCapability.BarrierFree.Accessibility.Core
801   * @systemapi
802   * @since 20
803   */
804  TYPE_THREE_FINGER_SWIPE_DOWN = 62,
805
806  /**
807   * threeFingerSwipeLeft type
808   *
809   * @syscap SystemCapability.BarrierFree.Accessibility.Core
810   * @systemapi
811   * @since 20
812   */
813  TYPE_THREE_FINGER_SWIPE_LEFT = 63,
814
815  /**
816   * threeFingerSwipeRight type
817   *
818   * @syscap SystemCapability.BarrierFree.Accessibility.Core
819   * @systemapi
820   * @since 20
821   */
822  TYPE_THREE_FINGER_SWIPE_RIGHT = 64,
823
824  /**
825   * fourFingerSwipeUp type
826   *
827   * @syscap SystemCapability.BarrierFree.Accessibility.Core
828   * @systemapi
829   * @since 20
830   */
831  TYPE_FOUR_FINGER_SWIPE_UP = 65,
832
833  /**
834   * fourFingerSwipeDown type
835   *
836   * @syscap SystemCapability.BarrierFree.Accessibility.Core
837   * @systemapi
838   * @since 20
839   */
840  TYPE_FOUR_FINGER_SWIPE_DOWN = 66,
841
842  /**
843 * fourFingerSwipeLeft type
844 *
845 * @syscap SystemCapability.BarrierFree.Accessibility.Core
846 * @systemapi
847 * @since 20
848 */
849  TYPE_FOUR_FINGER_SWIPE_LEFT = 67,
850
851  /**
852   * fourFingerSwipeRight type
853   *
854   * @syscap SystemCapability.BarrierFree.Accessibility.Core
855   * @systemapi
856   * @since 20
857   */
858  TYPE_FOUR_FINGER_SWIPE_RIGHT = 68
859}
860
861/**
862 * Accessibility
863 *
864 * @namespace accessibility
865 * @syscap SystemCapability.BarrierFree.Accessibility.Core
866 * @since 7
867 */
868/**
869 * Accessibility
870 *
871 * @namespace accessibility
872 * @syscap SystemCapability.BarrierFree.Accessibility.Core
873 * @atomicservice
874 * @since 11
875 */
876/**
877 * Accessibility
878 *
879 * @namespace accessibility
880 * @syscap SystemCapability.BarrierFree.Accessibility.Core
881 * @crossplatform
882 * @atomicservice
883 * @since 20
884 * @arkts 1.1&1.2
885 */
886declare namespace accessibility {
887  /**
888   * The type of the Ability app.
889   *
890   *{ 'audible' | 'generic' | 'haptic' | 'spoken' | 'visual' }
891   * @syscap SystemCapability.BarrierFree.Accessibility.Core
892   * @since 7
893   */
894  /**
895   * The type of the Ability app.
896   *
897   * { 'audible' | 'generic' | 'haptic' | 'spoken' | 'visual' | 'all' }
898   * @typedef {'audible' | 'generic' | 'haptic' | 'spoken' | 'visual' | 'all'}
899   * @syscap SystemCapability.BarrierFree.Accessibility.Core
900   * @since 9
901   */
902  type AbilityType = 'audible' | 'generic' | 'haptic' | 'spoken' | 'visual' | 'all';
903
904  /**
905   * The action that the ability can execute.
906   * value range: { 'accessibilityFocus' | 'clearAccessibilityFocus' | 'focus' | 'clearFocus' | 'clearSelection' |
907   * 'click' | 'longClick' | 'cut' | 'copy' | 'paste' | 'select' | 'setText' | 'delete' |
908   * 'scrollForward' | 'scrollBackward' | 'setSelection' }
909   *
910   * @syscap SystemCapability.BarrierFree.Accessibility.Core
911   * @since 7
912   */
913  /**
914   * The action that the ability can execute.
915   * value range: { 'accessibilityFocus' | 'clearAccessibilityFocus' | 'focus' | 'clearFocus' | 'clearSelection' |
916   * 'click' | 'longClick' | 'cut' | 'copy' | 'paste' | 'select' | 'setText' | 'delete' |
917   * 'scrollForward' | 'scrollBackward' | 'setSelection' | 'setCursorPosition' | 'home' |
918   * 'back' | 'recentTask' | 'notificationCenter' | 'controlCenter' | 'common' }
919   *
920   * @typedef {'accessibilityFocus' | 'clearAccessibilityFocus' | 'focus' | 'clearFocus' | 'clearSelection' | 'click' | 'longClick' | 'cut' | 'copy' | 'paste' | 'select' | 'setText' | 'delete' | 'scrollForward' | 'scrollBackward' | 'setSelection' | 'setCursorPosition' | 'home' | 'back' | 'recentTask' | 'notificationCenter' | 'controlCenter' | 'common'}
921   * @syscap SystemCapability.BarrierFree.Accessibility.Core
922   * @since arkts {'1.1':'12', '1.2':'20'}
923   * @arkts 1.1&1.2
924   */
925  type Action = 'accessibilityFocus' | 'clearAccessibilityFocus' | 'focus' | 'clearFocus' | 'clearSelection' |
926  'click' | 'longClick' | 'cut' | 'copy' | 'paste' | 'select' | 'setText' | 'delete' |
927  'scrollForward' | 'scrollBackward' | 'setSelection' | 'setCursorPosition' | 'home' |
928  'back' | 'recentTask' | 'notificationCenter' | 'controlCenter' | 'common';
929
930  /**
931   * The type of the accessibility event.
932   * windowsChange/windowContentChange/windowStateChange/announcement/notificationChange/textTraversedAtMove
933   * value range: { 'accessibilityFocus' | 'accessibilityFocusClear' |
934   * 'click' | 'longClick' | 'focus' | 'select' | 'hoverEnter' | 'hoverExit' |
935   * 'textUpdate' | 'textSelectionUpdate' | 'scroll' }
936   *
937   * @syscap SystemCapability.BarrierFree.Accessibility.Core
938   * @since 7
939   */
940  /**
941   * The type of the accessibility event.
942   * windowsChange/windowContentChange/windowStateChange/announcement/notificationChange/textTraversedAtMove
943   * value range: { 'accessibilityFocus' | 'accessibilityFocusClear' |
944   * 'click' | 'longClick' | 'focus' | 'select' | 'hoverEnter' | 'hoverExit' |
945   * 'textUpdate' | 'textSelectionUpdate' | 'scroll' | 'requestFocusForAccessibility' |
946   * 'announceForAccessibility' }
947   *
948   * @typedef {'accessibilityFocus' | 'accessibilityFocusClear' | 'click' | 'longClick' | 'focus' | 'select' | 'hoverEnter' | 'hoverExit' | 'textUpdate' | 'textSelectionUpdate' | 'scroll' | 'requestFocusForAccessibility' | 'announceForAccessibility'}
949   * @syscap SystemCapability.BarrierFree.Accessibility.Core
950   * @since 12
951   */
952  /**
953   * The type of the accessibility event.
954   * windowsChange/windowContentChange/windowStateChange/announcement/notificationChange/textTraversedAtMove
955   * value range: { 'accessibilityFocus' | 'accessibilityFocusClear' |
956   * 'click' | 'longClick' | 'focus' | 'select' | 'hoverEnter' | 'hoverExit' |
957   * 'textUpdate' | 'textSelectionUpdate' | 'scroll' | 'requestFocusForAccessibility' |
958   * 'announceForAccessibility' | 'requestFocusForAccessibilityNotInterrupt' |
959   * 'announceForAccessibilityNotInterrupt' | 'scrolling' }
960   *
961   * @typedef {'accessibilityFocus' | 'accessibilityFocusClear' | 'click' | 'longClick' | 'focus' | 'select' | 'hoverEnter' | 'hoverExit' | 'textUpdate' | 'textSelectionUpdate' | 'scroll' | 'requestFocusForAccessibility' | 'announceForAccessibility' | 'requestFocusForAccessibilityNotInterrupt' | 'announceForAccessibilityNotInterrupt' | 'scrolling'}
962   * @syscap SystemCapability.BarrierFree.Accessibility.Core
963   * @since arkts {'1.1':'18', '1.2':'20'}
964   * @arkts 1.1&1.2
965   */
966  type EventType = 'accessibilityFocus' | 'accessibilityFocusClear' |
967  'click' | 'longClick' | 'focus' | 'select' | 'hoverEnter' | 'hoverExit' |
968  'textUpdate' | 'textSelectionUpdate' | 'scroll' | 'requestFocusForAccessibility' |
969  'announceForAccessibility' | 'requestFocusForAccessibilityNotInterrupt' |
970  'announceForAccessibilityNotInterrupt' | 'scrolling';
971
972  /**
973   * The change type of the windowsChange event.
974   * It's used when received the {@code windowsChange} event.
975   *
976   * @typedef {'add' | 'remove' | 'bounds' | 'active' | 'focus'}
977   * @syscap SystemCapability.BarrierFree.Accessibility.Core
978   * @since arkts {'1.1':'7', '1.2':'20'}
979   * @arkts 1.1&1.2
980   */
981  type WindowUpdateType = 'add' | 'remove' | 'bounds' | 'active' | 'focus';
982
983  /**
984   * The type of the ability state.
985   *
986   * @typedef {'enable' | 'disable' | 'install'}
987   * @syscap SystemCapability.BarrierFree.Accessibility.Core
988   * @since 7
989   */
990  type AbilityState = 'enable' | 'disable' | 'install';
991
992  /**
993   * The ability that accessibility subsystem support.
994   * touchExplorer: Describes the capability to talkback.
995   * magnification: Describes the capability to request to control the display magnification.
996   * gesturesSimulation: Describes the capability to request to simulate the gesture.
997   * windowContent: Describes the capability to search for the content of the active window.
998   * filterKeyEvents: Describes the capability to request to filter key events.
999   * fingerprintGesture: Describes the capability to request to fingerprint gesture.
1000   *
1001   * @typedef {'retrieve' | 'touchGuide' | 'keyEventObserver' | 'zoom' | 'gesture'}
1002   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1003   * @since 7
1004   */
1005  type Capability = 'retrieve' | 'touchGuide' | 'keyEventObserver' | 'zoom' | 'gesture';
1006
1007  /**
1008   * The granularity of text move.
1009   *
1010   * @typedef {'char' | 'word' | 'line' | 'page' | 'paragraph'}
1011   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1012   * @since arkts {'1.1':'7', '1.2':'20'}
1013   * @arkts 1.1&1.2
1014   */
1015  type TextMoveUnit = 'char' | 'word' | 'line' | 'page' | 'paragraph';
1016
1017  /**
1018   * Checks whether accessibility ability is enabled.
1019   *
1020   * @param { AsyncCallback<boolean> } callback Asynchronous callback interface.
1021   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1022   * @since 7
1023   * @deprecated since 10
1024   * @useinstead ohos.accessibility#isOpenAccessibilitySync
1025   */
1026  function isOpenAccessibility(callback: AsyncCallback<boolean>): void;
1027
1028  /**
1029   * Checks whether accessibility ability is enabled.
1030   *
1031   * @returns { Promise<boolean> } Returns {@code true} if the accessibility is enabled; returns {@code false} otherwise.
1032   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1033   * @since 7
1034   * @deprecated since 10
1035   * @useinstead ohos.accessibility#isOpenAccessibilitySync
1036   */
1037  function isOpenAccessibility(): Promise<boolean>;
1038
1039  /**
1040   * Checks whether accessibility ability is enabled.
1041   *
1042   * @returns { boolean } Returns true if the accessibility is enabled; returns false otherwise.
1043   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1044   * @since 10
1045   */
1046  /**
1047   * Checks whether accessibility ability is enabled.
1048   *
1049   * @returns { boolean } Returns true if the accessibility is enabled; returns false otherwise.
1050   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1051   * @atomicservice
1052   * @since 11
1053   */
1054  /**
1055   * Checks whether accessibility ability is enabled.
1056   *
1057   * @returns { boolean } Returns true if the accessibility is enabled; returns false otherwise.
1058   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1059   * @crossplatform
1060   * @atomicservice
1061   * @since 20
1062   * @arkts 1.1&1.2
1063   */
1064  function isOpenAccessibilitySync(): boolean;
1065
1066  /**
1067   * Checks touch browser ability (which is used by talkback) is enabled.
1068   *
1069   * @param { AsyncCallback<boolean> } callback Asynchronous callback interface.
1070   * @syscap SystemCapability.BarrierFree.Accessibility.Vision
1071   * @since 7
1072   * @deprecated since 10
1073   * @useinstead ohos.accessibility#isOpenTouchGuideSync
1074   */
1075  function isOpenTouchGuide(callback: AsyncCallback<boolean>): void;
1076
1077  /**
1078   * Checks touch browser ability (which is used by talkback) is enabled.
1079   *
1080   * @returns { Promise<boolean> } Returns {@code true} if the touch browser is enabled; returns {@code false} otherwise.
1081   * @syscap SystemCapability.BarrierFree.Accessibility.Vision
1082   * @since 7
1083   * @deprecated since 10
1084   * @useinstead ohos.accessibility#isOpenTouchGuideSync
1085   */
1086  function isOpenTouchGuide(): Promise<boolean>;
1087
1088  /**
1089   * Checks touch browser ability (which is used by talkback) is enabled.
1090   *
1091   * @returns { boolean } Returns true if the touch browser is enabled; returns false otherwise.
1092   * @syscap SystemCapability.BarrierFree.Accessibility.Vision
1093   * @since 10
1094   */
1095  /**
1096   * Checks touch browser ability (which is used by talkback) is enabled.
1097   *
1098   * @returns { boolean } Returns true if the touch browser is enabled; returns false otherwise.
1099   * @syscap SystemCapability.BarrierFree.Accessibility.Vision
1100   * @atomicservice
1101   * @since arkts {'1.1':'11', '1.2':'20'}
1102   * @arkts 1.1&1.2
1103   */
1104  function isOpenTouchGuideSync(): boolean;
1105
1106  /**
1107   * Checks screen reader ability (which is used by talkback) is enabled.
1108   * @returns { boolean } Returns true if the screen reader is enabled; return false otherwise.
1109   * @syscap SystemCapability.BarrierFree.Accessibility.Vision
1110   * @since 18
1111   */
1112  function isScreenReaderOpenSync(): boolean;
1113
1114  /**
1115   * Queries the list of accessibility abilities.
1116   *
1117   * @param { AbilityType } abilityType The type of the accessibility ability. {@code AbilityType} eg.spoken
1118   * @param { AbilityState } stateType The state of the accessibility ability.  {@code AbilityState} eg.installed
1119   * @param { AsyncCallback<Array<AccessibilityAbilityInfo>> } callback
1120   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1121   * @since 7
1122   * @deprecated since 9
1123   * @useinstead ohos.accessibility#getAccessibilityExtensionList
1124   */
1125  function getAbilityLists(
1126    abilityType: AbilityType,
1127    stateType: AbilityState,
1128    callback: AsyncCallback<Array<AccessibilityAbilityInfo>>
1129  ): void;
1130
1131  /**
1132   * Queries the list of accessibility abilities.
1133   *
1134   * @param { AbilityType } abilityType The type of the accessibility ability. {@code AbilityType} eg.spoken
1135   * @param { AbilityState } stateType The state of the accessibility ability.  {@code AbilityState} eg.installed
1136   * @returns { Promise<Array<AccessibilityAbilityInfo>> } Returns the list of abilityInfos.
1137   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1138   * @since 7
1139   * @deprecated since 9
1140   * @useinstead ohos.accessibility#getAccessibilityExtensionList
1141   */
1142  function getAbilityLists(abilityType: AbilityType, stateType: AbilityState): Promise<Array<AccessibilityAbilityInfo>>;
1143
1144  /**
1145   * Queries the list of accessibility abilities.
1146   *
1147   * @param { AbilityType } abilityType The type of the accessibility ability. {@code AbilityType} eg.spoken
1148   * @param { AbilityState } stateType The state of the accessibility ability.  {@code AbilityState} eg.installed
1149   * @returns { Promise<Array<AccessibilityAbilityInfo>> } Returns the list of abilityInfos.
1150   * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1151   *     1. Mandatory parameters are left unspecified;
1152   *     2. Incorrect parameter types;
1153   *     3. Parameter verification failed.
1154   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1155   * @since 9
1156   */
1157  function getAccessibilityExtensionList(
1158    abilityType: AbilityType,
1159    stateType: AbilityState
1160  ): Promise<Array<AccessibilityAbilityInfo>>;
1161
1162  /**
1163   * Queries the list of accessibility abilities.
1164   *
1165   * @param { AbilityType } abilityType The type of the accessibility ability. {@code AbilityType} eg.spoken
1166   * @param { AbilityState } stateType The state of the accessibility ability.  {@code AbilityState} eg.installed
1167   * @param { AsyncCallback<Array<AccessibilityAbilityInfo>> } callback
1168   * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1169   *     1. Mandatory parameters are left unspecified;
1170   *     2. Incorrect parameter types;
1171   *     3. Parameter verification failed.
1172   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1173   * @since 9
1174   */
1175  function getAccessibilityExtensionList(
1176    abilityType: AbilityType,
1177    stateType: AbilityState,
1178    callback: AsyncCallback<Array<AccessibilityAbilityInfo>>
1179  ): void;
1180
1181  /**
1182   * Queries the list of accessibility abilities.
1183   *
1184   * @param { AbilityType } abilityType The type of the accessibility ability. {@code AbilityType} eg.spoken
1185   * @param { AbilityState } stateType The state of the accessibility ability.  {@code AbilityState} eg.installed
1186   * @returns { Array<AccessibilityAbilityInfo> } Returns the list of abilityInfos.
1187   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1188   * @since 12
1189   */
1190  function getAccessibilityExtensionListSync(
1191    abilityType: AbilityType,
1192    stateType: AbilityState
1193  ): Array<AccessibilityAbilityInfo>;
1194
1195  /**
1196   * Send accessibility Event.
1197   *
1198   * @param { EventInfo } event The object of the accessibility {@code EventInfo} .
1199   * @param { AsyncCallback<void> } callback Asynchronous callback interface.
1200   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1201   * @since 7
1202   * @deprecated since 9
1203   * @useinstead ohos.accessibility#sendAccessibilityEvent
1204   */
1205  function sendEvent(event: EventInfo, callback: AsyncCallback<void>): void;
1206
1207  /**
1208   * Send accessibility Event.
1209   *
1210   * @param { EventInfo } event The object of the accessibility {@code EventInfo} .
1211   * @returns { Promise<void> } Returns {@code true} if success ; returns {@code false} otherwise.
1212   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1213   * @since 7
1214   * @deprecated since 9
1215   * @useinstead ohos.accessibility#sendAccessibilityEvent
1216   */
1217  function sendEvent(event: EventInfo): Promise<void>;
1218
1219  /**
1220   * Send accessibility event.
1221   *
1222   * @param { EventInfo } event The object of the accessibility {@code EventInfo} .
1223   * @param { AsyncCallback<void> } callback Asynchronous callback interface.
1224   * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1225   *     1. Mandatory parameters are left unspecified;
1226   *     2. Incorrect parameter types;
1227   *     3. Parameter verification failed.
1228   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1229   * @since arkts {'1.1':'9', '1.2':'20'}
1230   * @arkts 1.1&1.2
1231   */
1232  function sendAccessibilityEvent(event: EventInfo, callback: AsyncCallback<void>): void;
1233
1234  /**
1235   * Send accessibility event.
1236   *
1237   * @param { EventInfo } event The object of the accessibility {@code EventInfo} .
1238   * @returns { Promise<void> } Returns {@code true} if success ; returns {@code false} otherwise.
1239   * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1240   *     1. Mandatory parameters are left unspecified;
1241   *     2. Incorrect parameter types;
1242   *     3. Parameter verification failed.
1243   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1244   * @since arkts {'1.1':'9', '1.2':'20'}
1245   * @arkts 1.1&1.2
1246   */
1247  function sendAccessibilityEvent(event: EventInfo): Promise<void>;
1248
1249  /**
1250   * Gets touch mode type.
1251   * @returns { string } Returns touch mode type, include 'singleTouchMode', 'doubleTouchMode', and 'none'.
1252   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1253   * @since 20
1254   */
1255  function getTouchModeSync(): string;
1256
1257  /**
1258   * Register the observe of the accessibility state changed.
1259   *
1260   * @param { 'accessibilityStateChange' } type state event type.
1261   * @param { Callback<boolean> } callback Asynchronous callback interface.
1262   * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1263   *     1. Mandatory parameters are left unspecified;
1264   *     2. Incorrect parameter types;
1265   *     3. Parameter verification failed.
1266   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1267   * @since 7
1268   */
1269  /**
1270   * Register the observe of the accessibility state changed.
1271   *
1272   * @param { 'accessibilityStateChange' } type state event type.
1273   * @param { Callback<boolean> } callback Asynchronous callback interface.
1274   * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1275   *     1. Mandatory parameters are left unspecified;
1276   *     2. Incorrect parameter types;
1277   *     3. Parameter verification failed.
1278   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1279   * @crossplatform
1280   * @since 20
1281   * @arkts 1.1&1.2
1282   */
1283  function on(type: 'accessibilityStateChange', callback: Callback<boolean>): void;
1284
1285  /**
1286   * Register the observe of the touchGuide state changed.
1287   *
1288   * @param { 'touchGuideStateChange' } type state event type.
1289   * @param { Callback<boolean> } callback Asynchronous callback interface.
1290   * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1291   *     1. Mandatory parameters are left unspecified;
1292   *     2. Incorrect parameter types;
1293   *     3. Parameter verification failed.
1294   * @syscap SystemCapability.BarrierFree.Accessibility.Vision
1295   * @since arkts {'1.1':'7', '1.2':'20'}
1296   * @arkts 1.1&1.2
1297   */
1298  function on(type: 'touchGuideStateChange', callback: Callback<boolean>): void;
1299
1300  /**
1301   * Register the observe of the screen reader state changed.
1302   * @param { 'screenReaderStateChange' } type state event type.
1303   * @param { Callback<boolean> } callback callback Asynchronous callback interface.
1304   * @throws { BusinessError } 401 Input parameter error. Possible causes:
1305   * 1. Mandatory parameters are left unspecified;
1306   * 2. Incorrect parameter types;
1307   * 3. Parameter verification failed.
1308   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1309   * @since arkts {'1.1':'18', '1.2':'20'}
1310   * @arkts 1.1&1.2
1311   */
1312  function on(type: 'screenReaderStateChange', callback: Callback<boolean>): void;
1313
1314  /**
1315   * Register the observe of the touch mode changed.
1316   * @param { 'touchModeChange' } type touch mode change.
1317   * @param { Callback<string> } callback callback Asynchronous callback interface.
1318   * @throws { BusinessError } 401 Parameter error. Possible causes:
1319   * 1. Mandatory parameters are left unspecified;
1320   * 2. Incorrect parameter types;
1321   * 3. Parameter verification failed.
1322   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1323   * @since 20
1324   */
1325  function on(type: 'touchModeChange', callback: Callback<string>): void;
1326
1327  /**
1328   * Unregister the observe of the accessibility state changed.
1329   *
1330   * @param { 'accessibilityStateChange' } type state event type
1331   * @param { Callback<boolean> } callback Asynchronous callback interface.
1332   * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1333   *     1. Mandatory parameters are left unspecified;
1334   *     2. Incorrect parameter types;
1335   *     3. Parameter verification failed.
1336   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1337   * @since 7
1338   */
1339  /**
1340   * Unregister the observe of the accessibility state changed.
1341   *
1342   * @param { 'accessibilityStateChange' } type state event type
1343   * @param { Callback<boolean> } callback Asynchronous callback interface.
1344   * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1345   *     1. Mandatory parameters are left unspecified;
1346   *     2. Incorrect parameter types;
1347   *     3. Parameter verification failed.
1348   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1349   * @crossplatform
1350   * @since 20
1351   * @arkts 1.1&1.2
1352   */
1353  function off(type: 'accessibilityStateChange', callback?: Callback<boolean>): void;
1354
1355  /**
1356   * Unregister the observe of the touchGuide state changed.
1357   *
1358   * @param { 'touchGuideStateChange' } type state event type
1359   * @param { Callback<boolean> } callback Asynchronous callback interface.
1360   * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1361   *     1. Mandatory parameters are left unspecified;
1362   *     2. Incorrect parameter types;
1363   *     3. Parameter verification failed.
1364   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1365   * @since arkts {'1.1':'7', '1.2':'20'}
1366   * @arkts 1.1&1.2
1367   */
1368  function off(type: 'touchGuideStateChange', callback?: Callback<boolean>): void;
1369
1370  /**
1371   * Unregister the observe of the screen reader state changed.
1372   * @param { 'screenReaderStateChange' } type state event type
1373   * @param { Callback<boolean> } callback callback Asynchronous callback interface.
1374   * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1375   * 1. Mandatory parameters are left unspecified;
1376   * 2. Incorrect parameter types;
1377   * 3. Parameter verification failed.
1378   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1379   * @since arkts {'1.1':'18', '1.2':'20'}
1380   * @arkts 1.1&1.2
1381   */
1382  function off(type: 'screenReaderStateChange', callback?: Callback<boolean>): void;
1383
1384  /**
1385   * Unregister the observe of the touch mode changed.
1386   * @param { 'touchModeChange' } type touch mode change.
1387   * @param { Callback<string> } callback callback Asynchronous callback interface.
1388   * @throws { BusinessError } 401 Parameter error. Possible causes:
1389   * 1. Mandatory parameters are left unspecified;
1390   * 2. Incorrect parameter types;
1391   * 3. Parameter verification failed.
1392   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1393   * @since 20
1394   */
1395  function off(type: 'touchModeChange', callback?: Callback<string>): void;
1396
1397  /**
1398   * Get the captions manager.
1399   *
1400   * @returns { CaptionsManager } Returns the captions manager.
1401   * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1402   * @since 8
1403   * @deprecated since 12
1404   */
1405  function getCaptionsManager(): CaptionsManager;
1406
1407  /**
1408   * Indicates the captions manager.
1409   *
1410   * @typedef CaptionsManager
1411   * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1412   * @since 8
1413   */
1414  interface CaptionsManager {
1415    /**
1416     * Indicates whether captions are enabled.
1417     *
1418     * @type {boolean}
1419     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1420     * @since 8
1421     */
1422    enabled: boolean;
1423    /**
1424     * Indicates the style of captions.
1425     *
1426     * @type {CaptionsStyle}
1427     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1428     * @since 8
1429     */
1430    style: CaptionsStyle;
1431
1432    /**
1433     * Register the observe of the enable state.
1434     *
1435     * @param { 'enableChange' } type
1436     * @param { Callback<boolean> } callback
1437     * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1438     *     1. Mandatory parameters are left unspecified;
1439     *     2. Incorrect parameter types;
1440     *     3. Parameter verification failed.
1441     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1442     * @since 8
1443     * @deprecated since 12
1444     */
1445    on(type: 'enableChange', callback: Callback<boolean>): void;
1446
1447    /**
1448     * Register the observer of the style.
1449     *
1450     * @param { 'styleChange' } type
1451     * @param { Callback<CaptionsStyle> } callback
1452     * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1453     *     1. Mandatory parameters are left unspecified;
1454     *     2. Incorrect parameter types;
1455     *     3. Parameter verification failed.
1456     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1457     * @since 8
1458     * @deprecated since 12
1459     */
1460    on(type: 'styleChange', callback: Callback<CaptionsStyle>): void;
1461
1462    /**
1463     * Unregister the observe of the enable state.
1464     *
1465     * @param { 'enableChange' } type
1466     * @param { Callback<boolean> } callback
1467     * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1468     *     1. Mandatory parameters are left unspecified;
1469     *     2. Incorrect parameter types;
1470     *     3. Parameter verification failed.
1471     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1472     * @since 8
1473     * @deprecated since 12
1474     */
1475    off(type: 'enableChange', callback?: Callback<boolean>): void;
1476
1477    /**
1478     * Unregister the observer of the style.
1479     *
1480     * @param { 'styleChange' } type
1481     * @param { Callback<CaptionsStyle> } callback
1482     * @throws { BusinessError } 401 - Input parameter error. Possible causes:
1483     *     1. Mandatory parameters are left unspecified;
1484     *     2. Incorrect parameter types;
1485     *     3. Parameter verification failed.
1486     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1487     * @since 8
1488     * @deprecated since 12
1489     */
1490    off(type: 'styleChange', callback?: Callback<CaptionsStyle>): void;
1491  }
1492
1493  /**
1494   * Indicates the edge type of the captions font.
1495   *
1496   * @typedef {'none' | 'raised' | 'depressed' | 'uniform' | 'dropShadow'}
1497   * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1498   * @since 8
1499   */
1500  type CaptionsFontEdgeType = 'none' | 'raised' | 'depressed' | 'uniform' | 'dropShadow';
1501  /**
1502   * Indicates the font family of captions.
1503   *
1504   * @typedef {'default' | 'monospacedSerif' | 'serif' | 'monospacedSansSerif' | 'sansSerif' | 'casual' | 'cursive' | 'smallCapitals'}
1505   * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1506   * @since 8
1507   */
1508  type CaptionsFontFamily = 'default' | 'monospacedSerif' | 'serif' |
1509  'monospacedSansSerif' | 'sansSerif' | 'casual' | 'cursive' | 'smallCapitals';
1510  /**
1511   * Indicates the style of captions.
1512   *
1513   * @typedef CaptionsStyle
1514   * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1515   * @since 8
1516   */
1517  interface CaptionsStyle {
1518    /**
1519     * Indicates the font family of captions.
1520     *
1521     * @type {CaptionsFontFamily}
1522     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1523     * @since 8
1524     */
1525    fontFamily: CaptionsFontFamily;
1526    /**
1527     * Indicates the font scaling of captions.
1528     * @type { number }
1529     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1530     * @since 8
1531     */
1532    fontScale: number;
1533    /**
1534     * Indicates the font color of captions.
1535     * @type { number | string }
1536     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1537     * @since 8
1538     */
1539    fontColor: number | string;
1540    /**
1541     * Indicates the edge type of the captions font.
1542     * @type { CaptionsFontEdgeType }
1543     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1544     * @since 8
1545     */
1546    fontEdgeType: CaptionsFontEdgeType;
1547    /**
1548     * Indicates the background color of captions.
1549     * @type { number | string }
1550     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1551     * @since 8
1552     */
1553    backgroundColor: number | string;
1554    /**
1555     * Indicates the window color of captions.
1556     * @type { number | string }
1557     * @syscap SystemCapability.BarrierFree.Accessibility.Hearing
1558     * @since 8
1559     */
1560    windowColor: number | string;
1561  }
1562
1563  /**
1564   * Indicates the info of accessibility.
1565   *
1566   * @typedef AccessibilityAbilityInfo
1567   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1568   * @since 7
1569   */
1570  interface AccessibilityAbilityInfo {
1571    /**
1572     * The ability id.
1573     * @type { string }
1574     * @readonly
1575     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1576     * @since 7
1577     */
1578    readonly id: string;
1579
1580    /**
1581     * The ability name.
1582     * @type { string }
1583     * @readonly
1584     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1585     * @since 7
1586     */
1587    readonly name: string;
1588
1589    /**
1590     * The bundle name of the ability.
1591     * @type { string }
1592     * @readonly
1593     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1594     * @since 7
1595     */
1596    readonly bundleName: string;
1597    /**
1598     * The target bundle name for the observation.
1599     * @type { Array<string> }
1600     * @readonly
1601     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1602     * @since 9
1603     */
1604    readonly targetBundleNames: Array<string>;
1605
1606    /**
1607     * The type of the ability.
1608     * @type { Array<AbilityType> }
1609     * @readonly
1610     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1611     * @since 7
1612     */
1613    readonly abilityTypes: Array<AbilityType>;
1614
1615    /**
1616     * The capabilities of the ability.
1617     * @type { Array<Capability> }
1618     * @readonly
1619     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1620     * @since 7
1621     */
1622    readonly capabilities: Array<Capability>;
1623
1624    /**
1625     * The description of the ability.
1626     * @type { string }
1627     * @readonly
1628     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1629     * @since 7
1630     */
1631    readonly description: string;
1632
1633    /**
1634     * The events which the accessibility ability wants to observe.
1635     * @type { Array<EventType> }
1636     * @readonly
1637     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1638     * @since 7
1639     */
1640    readonly eventTypes: Array<EventType>;
1641
1642    /**
1643     * Indicates whether the extended service needs to be hidden.
1644     * @type { boolean }
1645     * @readonly
1646     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1647     * @since 12
1648     */
1649    readonly needHide: boolean;
1650
1651    /**
1652     * The label of the ability.
1653     * @type { string }
1654     * @readonly
1655     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1656     * @since 12
1657     */
1658    readonly label: string;
1659  }
1660
1661  /**
1662   * Indicates the info of events.
1663   *
1664   * @syscap SystemCapability.BarrierFree.Accessibility.Core
1665   * @since arkts {'1.1':'7', '1.2':'20'}
1666   * @arkts 1.1&1.2
1667   */
1668  class EventInfo {
1669    /**
1670     * A constructor used to create a EventInfo object.
1671     *
1672     * @param { Object } jsonObject - Character string in JSON format required for creating an object.
1673     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1674     * @since 7
1675     */
1676    constructor(jsonObject: Object);
1677    /**
1678     * A constructor used to create a EventInfo object.
1679     *
1680     * @param { EventType } type - The type of the accessibility event.
1681     * @param { string } bundleName - The name of the bundle.
1682     * @param { Action } triggerAction - The action that the ability can execute.
1683     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1684     * @since arkts {'1.1':'11', '1.2':'20'}
1685     * @arkts 1.1&1.2
1686     */
1687    constructor(type: EventType, bundleName: string, triggerAction: Action);
1688    /**
1689     * The type of an accessibility event.
1690     * @type { EventType }
1691     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1692     * @since arkts {'1.1':'7', '1.2':'20'}
1693     * @arkts 1.1&1.2
1694     */
1695    type: EventType;
1696
1697    /**
1698     * The type of the window change event.
1699     * @type { ?WindowUpdateType }
1700     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1701     * @since arkts {'1.1':'7', '1.2':'20'}
1702     * @arkts 1.1&1.2
1703     */
1704    windowUpdateType?: WindowUpdateType;
1705
1706    /**
1707     * The bundle name of the target application.
1708     * @type { string }
1709     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1710     * @since arkts {'1.1':'7', '1.2':'20'}
1711     * @arkts 1.1&1.2
1712     */
1713    bundleName: string;
1714
1715    /**
1716     * The type of the event source component,such as button, chart.
1717     * @type { ?string }
1718     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1719     * @since arkts {'1.1':'7', '1.2':'20'}
1720     * @arkts 1.1&1.2
1721     */
1722    componentType?: string;
1723
1724    /**
1725     * The page id of the event source.
1726     * @type { ?number }
1727     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1728     * @since 7
1729     */
1730    pageId?: number;
1731
1732    /**
1733     * The accessibility event description.
1734     * @type { ?string }
1735     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1736     * @since arkts {'1.1':'7', '1.2':'20'}
1737     * @arkts 1.1&1.2
1738     */
1739    description?: string;
1740
1741    /**
1742     * The action that triggers the accessibility event, for example, clicking or focusing a view.
1743     * @type { Action }
1744     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1745     * @since arkts {'1.1':'7', '1.2':'20'}
1746     * @arkts 1.1&1.2
1747     */
1748    triggerAction: Action;
1749
1750    /**
1751     * The movement step used for reading texts.
1752     * @type { ?TextMoveUnit }
1753     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1754     * @since arkts {'1.1':'7', '1.2':'20'}
1755     * @arkts 1.1&1.2
1756     */
1757    textMoveUnit?: TextMoveUnit;
1758
1759    /**
1760     * The content list.
1761     * @type { ?Array<string> }
1762     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1763     * @since arkts {'1.1':'7', '1.2':'20'}
1764     * @arkts 1.1&1.2
1765     */
1766    contents?: Array<string>;
1767
1768    /**
1769     * The content changed before.
1770     * @type { ?string }
1771     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1772     * @since arkts {'1.1':'7', '1.2':'20'}
1773     * @arkts 1.1&1.2
1774     */
1775    lastContent?: string;
1776
1777    /**
1778     * The start index of listed items on the screen.
1779     * @type { ?number }
1780     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1781     * @since 7
1782     */
1783    beginIndex?: number;
1784
1785    /**
1786     * The index of the current item on the screen.
1787     * @type { ?number }
1788     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1789     * @since 7
1790     */
1791    currentIndex?: number;
1792
1793    /**
1794     * The end index of listed items on the screen.
1795     * @type { ?number }
1796     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1797     * @since 7
1798     */
1799    endIndex?: number;
1800
1801    /**
1802     * The total of the items, talkback used it when scroll.
1803     * @type { ?number }
1804     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1805     * @since 7
1806     */
1807    itemCount?: number;
1808
1809    /**
1810     * The id of element.
1811     * @type { ?number }
1812     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1813     * @since 12
1814     */
1815    elementId?: number;
1816
1817    /**
1818     * The content of announce accessibility text.
1819     * @type { ?string }
1820     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1821     * @since arkts {'1.1':'12', '1.2':'20'}
1822     * @arkts 1.1&1.2
1823     */
1824    textAnnouncedForAccessibility?: string;
1825
1826    /**
1827     * The content of announce accessibility text.
1828     * @type { ?Resource }
1829     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1830     * @since 18
1831     */
1832    textResourceAnnouncedForAccessibility?: Resource;
1833
1834    /**
1835     * The customized element id.
1836     * @type { ?string }
1837     * @syscap SystemCapability.BarrierFree.Accessibility.Core
1838     * @since arkts {'1.1':'12', '1.2':'20'}
1839     * @arkts 1.1&1.2
1840     */
1841    customId?: string;
1842  }
1843}
1844export default accessibility;
1845