1885b47fbSopenharmony_ci/* 2885b47fbSopenharmony_ci * Copyright (C) 2021-2022 Huawei Device Co., Ltd. 3885b47fbSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4885b47fbSopenharmony_ci * you may not use this file except in compliance with the License. 5885b47fbSopenharmony_ci * You may obtain a copy of the License at 6885b47fbSopenharmony_ci * 7885b47fbSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8885b47fbSopenharmony_ci * 9885b47fbSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10885b47fbSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11885b47fbSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12885b47fbSopenharmony_ci * See the License for the specific language governing permissions and 13885b47fbSopenharmony_ci * limitations under the License. 14885b47fbSopenharmony_ci */ 15885b47fbSopenharmony_ci 16885b47fbSopenharmony_ciimport type { AsyncCallback } from './basic'; 17885b47fbSopenharmony_ciimport type { Callback } from './basic'; 18885b47fbSopenharmony_ci 19885b47fbSopenharmony_ci/** 20885b47fbSopenharmony_ci * Accessibility 21885b47fbSopenharmony_ci * 22885b47fbSopenharmony_ci * @namespace accessibility 23885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 24885b47fbSopenharmony_ci * @since 7 25885b47fbSopenharmony_ci */ 26885b47fbSopenharmony_cideclare namespace accessibility { 27885b47fbSopenharmony_ci /** 28885b47fbSopenharmony_ci * The type of the Ability app. 29885b47fbSopenharmony_ci * 30885b47fbSopenharmony_ci * @type { 'audible' | 'generic' | 'haptic' | 'spoken' | 'visual' } 31885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 32885b47fbSopenharmony_ci * @since 7 33885b47fbSopenharmony_ci */ 34885b47fbSopenharmony_ci /** 35885b47fbSopenharmony_ci * The type of the Ability app. 36885b47fbSopenharmony_ci * 37885b47fbSopenharmony_ci * @type { 'audible' | 'generic' | 'haptic' | 'spoken' | 'visual' | 'all' } 38885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 39885b47fbSopenharmony_ci * @since 9 40885b47fbSopenharmony_ci */ 41885b47fbSopenharmony_ci type AbilityType = 'audible' | 'generic' | 'haptic' | 'spoken' | 'visual' | 'all'; 42885b47fbSopenharmony_ci 43885b47fbSopenharmony_ci /** 44885b47fbSopenharmony_ci * The action that the ability can execute. 45885b47fbSopenharmony_ci * 46885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 47885b47fbSopenharmony_ci * @since 7 48885b47fbSopenharmony_ci */ 49885b47fbSopenharmony_ci type Action = 'accessibilityFocus' | 'clearAccessibilityFocus' | 'focus' | 'clearFocus' | 'clearSelection' | 50885b47fbSopenharmony_ci 'click' | 'longClick' | 'cut' | 'copy' | 'paste' | 'select' | 'setText' | 'delete' | 51885b47fbSopenharmony_ci 'scrollForward' | 'scrollBackward' | 'setSelection' | 'setCursorPosition' | 'common'; 52885b47fbSopenharmony_ci 53885b47fbSopenharmony_ci /** 54885b47fbSopenharmony_ci * The type of the accessibility event. 55885b47fbSopenharmony_ci * windowsChange/windowContentChange/windowStateChange/announcement/notificationChange/textTraversedAtMove 56885b47fbSopenharmony_ci * 57885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 58885b47fbSopenharmony_ci * @since 7 59885b47fbSopenharmony_ci */ 60885b47fbSopenharmony_ci type EventType = 'accessibilityFocus' | 'accessibilityFocusClear' | 61885b47fbSopenharmony_ci 'click' | 'longClick' | 'focus' | 'select' | 'hoverEnter' | 'hoverExit' | 62885b47fbSopenharmony_ci 'textUpdate' | 'textSelectionUpdate' | 'scroll' | 'requestFocusForAccessibility' | 'announceForAccessibility'; 63885b47fbSopenharmony_ci 64885b47fbSopenharmony_ci /** 65885b47fbSopenharmony_ci * The change type of the windowsChange event. 66885b47fbSopenharmony_ci * It's used when received the {@code windowsChange} event. 67885b47fbSopenharmony_ci * 68885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 69885b47fbSopenharmony_ci * @since 7 70885b47fbSopenharmony_ci */ 71885b47fbSopenharmony_ci type WindowUpdateType = 'add' | 'remove' | 'bounds' | 'active' | 'focus'; 72885b47fbSopenharmony_ci 73885b47fbSopenharmony_ci /** 74885b47fbSopenharmony_ci * The type of the ability state. 75885b47fbSopenharmony_ci * 76885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 77885b47fbSopenharmony_ci * @since 7 78885b47fbSopenharmony_ci */ 79885b47fbSopenharmony_ci type AbilityState = 'enable' | 'disable' | 'install'; 80885b47fbSopenharmony_ci 81885b47fbSopenharmony_ci /** 82885b47fbSopenharmony_ci * The ability that accessibility subsystem support. 83885b47fbSopenharmony_ci * touchExplorer: Describes the capability to talkback. 84885b47fbSopenharmony_ci * magnification: Describes the capability to request to control the display magnification. 85885b47fbSopenharmony_ci * gesturesSimulation: Describes the capability to request to simulate the gesture. 86885b47fbSopenharmony_ci * windowContent: Describes the capability to search for the content of the active window. 87885b47fbSopenharmony_ci * filterKeyEvents: Describes the capability to request to filter key events. 88885b47fbSopenharmony_ci * fingerprintGesture: Describes the capability to request to fingerprint gesture. 89885b47fbSopenharmony_ci * 90885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 91885b47fbSopenharmony_ci * @since 7 92885b47fbSopenharmony_ci */ 93885b47fbSopenharmony_ci type Capability = 'retrieve' | 'touchGuide' | 'keyEventObserver' | 'zoom' | 'gesture'; 94885b47fbSopenharmony_ci 95885b47fbSopenharmony_ci /** 96885b47fbSopenharmony_ci * The granularity of text move. 97885b47fbSopenharmony_ci * 98885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 99885b47fbSopenharmony_ci * @since 7 100885b47fbSopenharmony_ci */ 101885b47fbSopenharmony_ci type TextMoveUnit = 'char' | 'word' | 'line' | 'page' | 'paragraph'; 102885b47fbSopenharmony_ci 103885b47fbSopenharmony_ci /** 104885b47fbSopenharmony_ci * Checks whether accessibility ability is enabled. 105885b47fbSopenharmony_ci * 106885b47fbSopenharmony_ci * @param { AsyncCallback<boolean> } callback Asynchronous callback interface. 107885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 108885b47fbSopenharmony_ci * @since 7 109885b47fbSopenharmony_ci * @deprecated since 10 110885b47fbSopenharmony_ci * @useinstead ohos.accessibility#isOpenAccessibilitySync 111885b47fbSopenharmony_ci */ 112885b47fbSopenharmony_ci function isOpenAccessibility(callback: AsyncCallback<boolean>): void; 113885b47fbSopenharmony_ci 114885b47fbSopenharmony_ci /** 115885b47fbSopenharmony_ci * Checks whether accessibility ability is enabled. 116885b47fbSopenharmony_ci * 117885b47fbSopenharmony_ci * @returns { Promise<boolean> } Returns {@code true} if the accessibility is enabled; returns {@code false} otherwise. 118885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 119885b47fbSopenharmony_ci * @since 7 120885b47fbSopenharmony_ci * @deprecated since 10 121885b47fbSopenharmony_ci * @useinstead ohos.accessibility#isOpenAccessibilitySync 122885b47fbSopenharmony_ci */ 123885b47fbSopenharmony_ci function isOpenAccessibility(): Promise<boolean>; 124885b47fbSopenharmony_ci 125885b47fbSopenharmony_ci /** 126885b47fbSopenharmony_ci * Checks whether accessibility ability is enabled. 127885b47fbSopenharmony_ci * 128885b47fbSopenharmony_ci * @returns { boolean } Returns true if the accessibility is enabled; returns false otherwise. 129885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 130885b47fbSopenharmony_ci * @since 10 131885b47fbSopenharmony_ci */ 132885b47fbSopenharmony_ci function isOpenAccessibilitySync(): boolean; 133885b47fbSopenharmony_ci 134885b47fbSopenharmony_ci /** 135885b47fbSopenharmony_ci * Checks touch browser ability (which is used by talkback) is enabled. 136885b47fbSopenharmony_ci * 137885b47fbSopenharmony_ci * @param { AsyncCallback<boolean> } callback Asynchronous callback interface. 138885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Vision 139885b47fbSopenharmony_ci * @since 7 140885b47fbSopenharmony_ci * @deprecated since 10 141885b47fbSopenharmony_ci * @useinstead ohos.accessibility#isOpenTouchGuideSync 142885b47fbSopenharmony_ci */ 143885b47fbSopenharmony_ci function isOpenTouchGuide(callback: AsyncCallback<boolean>): void; 144885b47fbSopenharmony_ci 145885b47fbSopenharmony_ci /** 146885b47fbSopenharmony_ci * Checks touch browser ability (which is used by talkback) is enabled. 147885b47fbSopenharmony_ci * 148885b47fbSopenharmony_ci * @returns { Promise<boolean> } Returns {@code true} if the touch browser is enabled; returns {@code false} otherwise. 149885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Vision 150885b47fbSopenharmony_ci * @since 7 151885b47fbSopenharmony_ci * @deprecated since 10 152885b47fbSopenharmony_ci * @useinstead ohos.accessibility#isOpenTouchGuideSync 153885b47fbSopenharmony_ci */ 154885b47fbSopenharmony_ci function isOpenTouchGuide(): Promise<boolean>; 155885b47fbSopenharmony_ci 156885b47fbSopenharmony_ci /** 157885b47fbSopenharmony_ci * Checks touch browser ability (which is used by talkback) is enabled. 158885b47fbSopenharmony_ci * 159885b47fbSopenharmony_ci * @returns { boolean } Returns true if the touch browser is enabled; returns false otherwise. 160885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Vision 161885b47fbSopenharmony_ci * @since 10 162885b47fbSopenharmony_ci */ 163885b47fbSopenharmony_ci function isOpenTouchGuideSync(): boolean; 164885b47fbSopenharmony_ci 165885b47fbSopenharmony_ci /** 166885b47fbSopenharmony_ci * Queries the list of accessibility abilities. 167885b47fbSopenharmony_ci * 168885b47fbSopenharmony_ci * @param { AbilityType } abilityType The type of the accessibility ability. {@code AbilityType} eg.spoken 169885b47fbSopenharmony_ci * @param { AbilityState } stateType The state of the accessibility ability. {@code AbilityState} eg.installed 170885b47fbSopenharmony_ci * @param { AsyncCallback<Array<AccessibilityAbilityInfo>> } callback 171885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 172885b47fbSopenharmony_ci * @since 7 173885b47fbSopenharmony_ci * @deprecated since 9 174885b47fbSopenharmony_ci */ 175885b47fbSopenharmony_ci function getAbilityLists( 176885b47fbSopenharmony_ci abilityType: AbilityType, 177885b47fbSopenharmony_ci stateType: AbilityState, 178885b47fbSopenharmony_ci callback: AsyncCallback<Array<AccessibilityAbilityInfo>> 179885b47fbSopenharmony_ci ): void; 180885b47fbSopenharmony_ci 181885b47fbSopenharmony_ci /** 182885b47fbSopenharmony_ci * Queries the list of accessibility abilities. 183885b47fbSopenharmony_ci * 184885b47fbSopenharmony_ci * @param { AbilityType } abilityType The type of the accessibility ability. {@code AbilityType} eg.spoken 185885b47fbSopenharmony_ci * @param { AbilityState } stateType The state of the accessibility ability. {@code AbilityState} eg.installed 186885b47fbSopenharmony_ci * @returns { Promise<Array<AccessibilityAbilityInfo>> } Returns the list of abilityInfos. 187885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 188885b47fbSopenharmony_ci * @since 7 189885b47fbSopenharmony_ci * @deprecated since 9 190885b47fbSopenharmony_ci */ 191885b47fbSopenharmony_ci function getAbilityLists(abilityType: AbilityType, stateType: AbilityState): Promise<Array<AccessibilityAbilityInfo>>; 192885b47fbSopenharmony_ci 193885b47fbSopenharmony_ci /** 194885b47fbSopenharmony_ci * Queries the list of accessibility abilities. 195885b47fbSopenharmony_ci * 196885b47fbSopenharmony_ci * @param { AbilityType } abilityType The type of the accessibility ability. {@code AbilityType} eg.spoken 197885b47fbSopenharmony_ci * @param { AbilityState } stateType The state of the accessibility ability. {@code AbilityState} eg.installed 198885b47fbSopenharmony_ci * @returns { Promise<Array<AccessibilityAbilityInfo>> } Returns the list of abilityInfos. 199885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 200885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 201885b47fbSopenharmony_ci * 2. Incorrect parameter types; 202885b47fbSopenharmony_ci * 3. Parameter verification failed. 203885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 204885b47fbSopenharmony_ci * @since 9 205885b47fbSopenharmony_ci */ 206885b47fbSopenharmony_ci function getAccessibilityExtensionList( 207885b47fbSopenharmony_ci abilityType: AbilityType, 208885b47fbSopenharmony_ci stateType: AbilityState 209885b47fbSopenharmony_ci ): Promise<Array<AccessibilityAbilityInfo>>; 210885b47fbSopenharmony_ci 211885b47fbSopenharmony_ci /** 212885b47fbSopenharmony_ci * Queries the list of accessibility abilities. 213885b47fbSopenharmony_ci * 214885b47fbSopenharmony_ci * @param { AbilityType } abilityType The type of the accessibility ability. {@code AbilityType} eg.spoken 215885b47fbSopenharmony_ci * @param { AbilityState } stateType The state of the accessibility ability. {@code AbilityState} eg.installed 216885b47fbSopenharmony_ci * @param { AsyncCallback<Array<AccessibilityAbilityInfo>> } callback 217885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 218885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 219885b47fbSopenharmony_ci * 2. Incorrect parameter types; 220885b47fbSopenharmony_ci * 3. Parameter verification failed. 221885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 222885b47fbSopenharmony_ci * @since 9 223885b47fbSopenharmony_ci */ 224885b47fbSopenharmony_ci function getAccessibilityExtensionList( 225885b47fbSopenharmony_ci abilityType: AbilityType, 226885b47fbSopenharmony_ci stateType: AbilityState, 227885b47fbSopenharmony_ci callback: AsyncCallback<Array<AccessibilityAbilityInfo>> 228885b47fbSopenharmony_ci ): void; 229885b47fbSopenharmony_ci 230885b47fbSopenharmony_ci /** 231885b47fbSopenharmony_ci * Queries the list of accessibility abilities. 232885b47fbSopenharmony_ci * 233885b47fbSopenharmony_ci * @param { AbilityType } abilityType The type of the accessibility ability. {@code AbilityType} eg.spoken 234885b47fbSopenharmony_ci * @param { AbilityState } stateType The state of the accessibility ability. {@code AbilityState} eg.installed 235885b47fbSopenharmony_ci * @returns { Array<AccessibilityAbilityInfo> } Returns the list of abilityInfos. 236885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 237885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 238885b47fbSopenharmony_ci * 2. Incorrect parameter types; 239885b47fbSopenharmony_ci * 3. Parameter verification failed. 240885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 241885b47fbSopenharmony_ci * @since 12 242885b47fbSopenharmony_ci */ 243885b47fbSopenharmony_ci function getAccessibilityExtensionListSync( 244885b47fbSopenharmony_ci abilityType: AbilityType, 245885b47fbSopenharmony_ci stateType: AbilityState 246885b47fbSopenharmony_ci ): Array<AccessibilityAbilityInfo>; 247885b47fbSopenharmony_ci 248885b47fbSopenharmony_ci /** 249885b47fbSopenharmony_ci * Send accessibility Event. 250885b47fbSopenharmony_ci * 251885b47fbSopenharmony_ci * @param { EventInfo } event The object of the accessibility {@code EventInfo} . 252885b47fbSopenharmony_ci * @param { AsyncCallback<void> } callback Asynchronous callback interface. 253885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 254885b47fbSopenharmony_ci * @since 7 255885b47fbSopenharmony_ci * @deprecated since 9 256885b47fbSopenharmony_ci */ 257885b47fbSopenharmony_ci function sendEvent(event: EventInfo, callback: AsyncCallback<void>): void; 258885b47fbSopenharmony_ci 259885b47fbSopenharmony_ci /** 260885b47fbSopenharmony_ci * Send accessibility Event. 261885b47fbSopenharmony_ci * 262885b47fbSopenharmony_ci * @param { EventInfo } event The object of the accessibility {@code EventInfo} . 263885b47fbSopenharmony_ci * @returns { Promise<void> } Returns {@code true} if success ; returns {@code false} otherwise. 264885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 265885b47fbSopenharmony_ci * @since 7 266885b47fbSopenharmony_ci * @deprecated since 9 267885b47fbSopenharmony_ci */ 268885b47fbSopenharmony_ci function sendEvent(event: EventInfo): Promise<void>; 269885b47fbSopenharmony_ci 270885b47fbSopenharmony_ci /** 271885b47fbSopenharmony_ci * Send accessibility event. 272885b47fbSopenharmony_ci * 273885b47fbSopenharmony_ci * @param { EventInfo } event The object of the accessibility {@code EventInfo} . 274885b47fbSopenharmony_ci * @param { AsyncCallback<void> } callback Asynchronous callback interface. 275885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 276885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 277885b47fbSopenharmony_ci * 2. Incorrect parameter types; 278885b47fbSopenharmony_ci * 3. Parameter verification failed. 279885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 280885b47fbSopenharmony_ci * @since 9 281885b47fbSopenharmony_ci */ 282885b47fbSopenharmony_ci function sendAccessibilityEvent(event: EventInfo, callback: AsyncCallback<void>): void; 283885b47fbSopenharmony_ci 284885b47fbSopenharmony_ci /** 285885b47fbSopenharmony_ci * Send accessibility event. 286885b47fbSopenharmony_ci * 287885b47fbSopenharmony_ci * @param { EventInfo } event The object of the accessibility {@code EventInfo} . 288885b47fbSopenharmony_ci * @returns { Promise<void> } Returns {@code true} if success ; returns {@code false} otherwise. 289885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 290885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 291885b47fbSopenharmony_ci * 2. Incorrect parameter types; 292885b47fbSopenharmony_ci * 3. Parameter verification failed. 293885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 294885b47fbSopenharmony_ci * @since 9 295885b47fbSopenharmony_ci */ 296885b47fbSopenharmony_ci function sendAccessibilityEvent(event: EventInfo): Promise<void>; 297885b47fbSopenharmony_ci 298885b47fbSopenharmony_ci /** 299885b47fbSopenharmony_ci * Register the observe of the accessibility state changed. 300885b47fbSopenharmony_ci * 301885b47fbSopenharmony_ci * @param { 'accessibilityStateChange' } type state event type. 302885b47fbSopenharmony_ci * @param { Callback<boolean> } callback Asynchronous callback interface. 303885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 304885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 305885b47fbSopenharmony_ci * 2. Incorrect parameter types; 306885b47fbSopenharmony_ci * 3. Parameter verification failed. 307885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 308885b47fbSopenharmony_ci * @since 7 309885b47fbSopenharmony_ci */ 310885b47fbSopenharmony_ci function on(type: 'accessibilityStateChange', callback: Callback<boolean>): void; 311885b47fbSopenharmony_ci 312885b47fbSopenharmony_ci /** 313885b47fbSopenharmony_ci * Register the observe of the touchGuide state changed. 314885b47fbSopenharmony_ci * 315885b47fbSopenharmony_ci * @param { 'touchGuideStateChange' } type state event type. 316885b47fbSopenharmony_ci * @param { Callback<boolean> } callback Asynchronous callback interface. 317885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 318885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 319885b47fbSopenharmony_ci * 2. Incorrect parameter types; 320885b47fbSopenharmony_ci * 3. Parameter verification failed. 321885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Vision 322885b47fbSopenharmony_ci * @since 7 323885b47fbSopenharmony_ci */ 324885b47fbSopenharmony_ci function on(type: 'touchGuideStateChange', callback: Callback<boolean>): void; 325885b47fbSopenharmony_ci 326885b47fbSopenharmony_ci /** 327885b47fbSopenharmony_ci * Deregister the observe of the accessibility state changed. 328885b47fbSopenharmony_ci * 329885b47fbSopenharmony_ci * @param { 'accessibilityStateChange' } type state event type 330885b47fbSopenharmony_ci * @param { Callback<boolean> } callback Asynchronous callback interface. 331885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 332885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 333885b47fbSopenharmony_ci * 2. Incorrect parameter types; 334885b47fbSopenharmony_ci * 3. Parameter verification failed. 335885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 336885b47fbSopenharmony_ci * @since 7 337885b47fbSopenharmony_ci */ 338885b47fbSopenharmony_ci function off(type: 'accessibilityStateChange', callback?: Callback<boolean>): void; 339885b47fbSopenharmony_ci 340885b47fbSopenharmony_ci /** 341885b47fbSopenharmony_ci * Deregister the observe of the touchGuide state changed. 342885b47fbSopenharmony_ci * 343885b47fbSopenharmony_ci * @param { 'touchGuideStateChange' } type state event type 344885b47fbSopenharmony_ci * @param { Callback<boolean> } callback Asynchronous callback interface. 345885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 346885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 347885b47fbSopenharmony_ci * 2. Incorrect parameter types; 348885b47fbSopenharmony_ci * 3. Parameter verification failed. 349885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 350885b47fbSopenharmony_ci * @since 7 351885b47fbSopenharmony_ci */ 352885b47fbSopenharmony_ci function off(type: 'touchGuideStateChange', callback?: Callback<boolean>): void; 353885b47fbSopenharmony_ci 354885b47fbSopenharmony_ci /** 355885b47fbSopenharmony_ci * Get the captions manager. 356885b47fbSopenharmony_ci * 357885b47fbSopenharmony_ci * @returns { CaptionsManager } Returns the captions manager. 358885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 359885b47fbSopenharmony_ci * @since 8 360885b47fbSopenharmony_ci */ 361885b47fbSopenharmony_ci function getCaptionsManager(): CaptionsManager; 362885b47fbSopenharmony_ci 363885b47fbSopenharmony_ci /** 364885b47fbSopenharmony_ci * Indicates the captions manager. 365885b47fbSopenharmony_ci * 366885b47fbSopenharmony_ci * @typedef CaptionsManager 367885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 368885b47fbSopenharmony_ci * @since 8 369885b47fbSopenharmony_ci */ 370885b47fbSopenharmony_ci interface CaptionsManager { 371885b47fbSopenharmony_ci /** 372885b47fbSopenharmony_ci * Indicates whether captions are enabled. 373885b47fbSopenharmony_ci * 374885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 375885b47fbSopenharmony_ci * @since 8 376885b47fbSopenharmony_ci */ 377885b47fbSopenharmony_ci enabled: boolean; 378885b47fbSopenharmony_ci /** 379885b47fbSopenharmony_ci * Indicates the style of captions. 380885b47fbSopenharmony_ci * 381885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 382885b47fbSopenharmony_ci * @since 8 383885b47fbSopenharmony_ci */ 384885b47fbSopenharmony_ci style: CaptionsStyle; 385885b47fbSopenharmony_ci 386885b47fbSopenharmony_ci /** 387885b47fbSopenharmony_ci * Register the observe of the enable state. 388885b47fbSopenharmony_ci * 389885b47fbSopenharmony_ci * @param { 'enableChange' } type 390885b47fbSopenharmony_ci * @param { Callback<boolean> } callback 391885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 392885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 393885b47fbSopenharmony_ci * 2. Incorrect parameter types; 394885b47fbSopenharmony_ci * 3. Parameter verification failed. 395885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 396885b47fbSopenharmony_ci * @since 8 397885b47fbSopenharmony_ci */ 398885b47fbSopenharmony_ci on(type: 'enableChange', callback: Callback<boolean>): void; 399885b47fbSopenharmony_ci 400885b47fbSopenharmony_ci /** 401885b47fbSopenharmony_ci * Register the observer of the style. 402885b47fbSopenharmony_ci * 403885b47fbSopenharmony_ci * @param { 'styleChange' } type 404885b47fbSopenharmony_ci * @param { Callback<CaptionsStyle> } callback 405885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 406885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 407885b47fbSopenharmony_ci * 2. Incorrect parameter types; 408885b47fbSopenharmony_ci * 3. Parameter verification failed. 409885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 410885b47fbSopenharmony_ci * @since 8 411885b47fbSopenharmony_ci */ 412885b47fbSopenharmony_ci on(type: 'styleChange', callback: Callback<CaptionsStyle>): void; 413885b47fbSopenharmony_ci 414885b47fbSopenharmony_ci /** 415885b47fbSopenharmony_ci * Deregister the observe of the enable state. 416885b47fbSopenharmony_ci * 417885b47fbSopenharmony_ci * @param { 'enableChange' } type 418885b47fbSopenharmony_ci * @param { Callback<boolean> } callback 419885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 420885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 421885b47fbSopenharmony_ci * 2. Incorrect parameter types; 422885b47fbSopenharmony_ci * 3. Parameter verification failed. 423885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 424885b47fbSopenharmony_ci * @since 8 425885b47fbSopenharmony_ci */ 426885b47fbSopenharmony_ci off(type: 'enableChange', callback?: Callback<boolean>): void; 427885b47fbSopenharmony_ci 428885b47fbSopenharmony_ci /** 429885b47fbSopenharmony_ci * Deregister the observer of the style. 430885b47fbSopenharmony_ci * 431885b47fbSopenharmony_ci * @param { 'styleChange' } type 432885b47fbSopenharmony_ci * @param { Callback<CaptionsStyle> } callback 433885b47fbSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 434885b47fbSopenharmony_ci * 1. Mandatory parameters are left unspecified; 435885b47fbSopenharmony_ci * 2. Incorrect parameter types; 436885b47fbSopenharmony_ci * 3. Parameter verification failed. 437885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 438885b47fbSopenharmony_ci * @since 8 439885b47fbSopenharmony_ci */ 440885b47fbSopenharmony_ci off(type: 'styleChange', callback?: Callback<CaptionsStyle>): void; 441885b47fbSopenharmony_ci } 442885b47fbSopenharmony_ci 443885b47fbSopenharmony_ci /** 444885b47fbSopenharmony_ci * Indicates the edge type of the captions font. 445885b47fbSopenharmony_ci * 446885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 447885b47fbSopenharmony_ci * @since 8 448885b47fbSopenharmony_ci */ 449885b47fbSopenharmony_ci type CaptionsFontEdgeType = 'none' | 'raised' | 'depressed' | 'uniform' | 'dropShadow'; 450885b47fbSopenharmony_ci /** 451885b47fbSopenharmony_ci * Indicates the font family of captions. 452885b47fbSopenharmony_ci * 453885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 454885b47fbSopenharmony_ci * @since 8 455885b47fbSopenharmony_ci */ 456885b47fbSopenharmony_ci type CaptionsFontFamily = 'default' | 'monospacedSerif' | 'serif' | 457885b47fbSopenharmony_ci 'monospacedSansSerif' | 'sansSerif' | 'casual' | 'cursive' | 'smallCapitals'; 458885b47fbSopenharmony_ci /** 459885b47fbSopenharmony_ci * Indicates the style of captions. 460885b47fbSopenharmony_ci * 461885b47fbSopenharmony_ci * @typedef CaptionsStyle 462885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 463885b47fbSopenharmony_ci * @since 8 464885b47fbSopenharmony_ci */ 465885b47fbSopenharmony_ci interface CaptionsStyle { 466885b47fbSopenharmony_ci /** 467885b47fbSopenharmony_ci * Indicates the font family of captions. 468885b47fbSopenharmony_ci * 469885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 470885b47fbSopenharmony_ci * @since 8 471885b47fbSopenharmony_ci */ 472885b47fbSopenharmony_ci fontFamily: CaptionsFontFamily; 473885b47fbSopenharmony_ci /** 474885b47fbSopenharmony_ci * Indicates the font scaling of captions. 475885b47fbSopenharmony_ci * 476885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 477885b47fbSopenharmony_ci * @since 8 478885b47fbSopenharmony_ci */ 479885b47fbSopenharmony_ci fontScale: number; 480885b47fbSopenharmony_ci /** 481885b47fbSopenharmony_ci * Indicates the font color of captions. 482885b47fbSopenharmony_ci * 483885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 484885b47fbSopenharmony_ci * @since 8 485885b47fbSopenharmony_ci */ 486885b47fbSopenharmony_ci fontColor: number | string; 487885b47fbSopenharmony_ci /** 488885b47fbSopenharmony_ci * Indicates the edge type of the captions font. 489885b47fbSopenharmony_ci * 490885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 491885b47fbSopenharmony_ci * @since 8 492885b47fbSopenharmony_ci */ 493885b47fbSopenharmony_ci fontEdgeType: CaptionsFontEdgeType; 494885b47fbSopenharmony_ci /** 495885b47fbSopenharmony_ci * Indicates the background color of captions. 496885b47fbSopenharmony_ci * 497885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 498885b47fbSopenharmony_ci * @since 8 499885b47fbSopenharmony_ci */ 500885b47fbSopenharmony_ci backgroundColor: number | string; 501885b47fbSopenharmony_ci /** 502885b47fbSopenharmony_ci * Indicates the window color of captions. 503885b47fbSopenharmony_ci * 504885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Hearing 505885b47fbSopenharmony_ci * @since 8 506885b47fbSopenharmony_ci */ 507885b47fbSopenharmony_ci windowColor: number | string; 508885b47fbSopenharmony_ci } 509885b47fbSopenharmony_ci 510885b47fbSopenharmony_ci /** 511885b47fbSopenharmony_ci * Indicates the info of accessibility. 512885b47fbSopenharmony_ci * 513885b47fbSopenharmony_ci * @typedef AccessibilityAbilityInfo 514885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 515885b47fbSopenharmony_ci * @since 7 516885b47fbSopenharmony_ci */ 517885b47fbSopenharmony_ci interface AccessibilityAbilityInfo { 518885b47fbSopenharmony_ci /** 519885b47fbSopenharmony_ci * The ability id. 520885b47fbSopenharmony_ci * 521885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 522885b47fbSopenharmony_ci * @since 7 523885b47fbSopenharmony_ci */ 524885b47fbSopenharmony_ci readonly id: string; 525885b47fbSopenharmony_ci 526885b47fbSopenharmony_ci /* The ability name. 527885b47fbSopenharmony_ci * @since 7 528885b47fbSopenharmony_ci */ 529885b47fbSopenharmony_ci readonly name: string; 530885b47fbSopenharmony_ci 531885b47fbSopenharmony_ci /* The bundle name of the ability. 532885b47fbSopenharmony_ci * @since 7 533885b47fbSopenharmony_ci */ 534885b47fbSopenharmony_ci readonly bundleName: string; 535885b47fbSopenharmony_ci 536885b47fbSopenharmony_ci /* The target bundle name for the observation. 537885b47fbSopenharmony_ci * @since 9 538885b47fbSopenharmony_ci */ 539885b47fbSopenharmony_ci readonly targetBundleNames: Array<string>; 540885b47fbSopenharmony_ci 541885b47fbSopenharmony_ci /** 542885b47fbSopenharmony_ci * The type of the ability. 543885b47fbSopenharmony_ci * 544885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 545885b47fbSopenharmony_ci * @since 7 546885b47fbSopenharmony_ci */ 547885b47fbSopenharmony_ci readonly abilityTypes: Array<AbilityType>; 548885b47fbSopenharmony_ci 549885b47fbSopenharmony_ci /** 550885b47fbSopenharmony_ci * The capabilities of the ability. 551885b47fbSopenharmony_ci * 552885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 553885b47fbSopenharmony_ci * @since 7 554885b47fbSopenharmony_ci */ 555885b47fbSopenharmony_ci readonly capabilities: Array<Capability>; 556885b47fbSopenharmony_ci 557885b47fbSopenharmony_ci /** 558885b47fbSopenharmony_ci * The description of the ability. 559885b47fbSopenharmony_ci * 560885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 561885b47fbSopenharmony_ci * @since 7 562885b47fbSopenharmony_ci */ 563885b47fbSopenharmony_ci readonly description: string; 564885b47fbSopenharmony_ci 565885b47fbSopenharmony_ci /** 566885b47fbSopenharmony_ci * The events which the accessibility ability wants to observe. 567885b47fbSopenharmony_ci * 568885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 569885b47fbSopenharmony_ci * @since 7 570885b47fbSopenharmony_ci */ 571885b47fbSopenharmony_ci readonly eventTypes: Array<EventType>; 572885b47fbSopenharmony_ci 573885b47fbSopenharmony_ci /** 574885b47fbSopenharmony_ci * The whether the extended service needs to be hidden. 575885b47fbSopenharmony_ci * 576885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 577885b47fbSopenharmony_ci * @since 12 578885b47fbSopenharmony_ci */ 579885b47fbSopenharmony_ci readonly needHide: boolean; 580885b47fbSopenharmony_ci } 581885b47fbSopenharmony_ci 582885b47fbSopenharmony_ci /** 583885b47fbSopenharmony_ci * Indicates the info of events. 584885b47fbSopenharmony_ci * 585885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 586885b47fbSopenharmony_ci * @since 7 587885b47fbSopenharmony_ci */ 588885b47fbSopenharmony_ci class EventInfo { 589885b47fbSopenharmony_ci constructor(jsonObject); 590885b47fbSopenharmony_ci /** 591885b47fbSopenharmony_ci * The type of an accessibility event. 592885b47fbSopenharmony_ci * 593885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 594885b47fbSopenharmony_ci * @since 7 595885b47fbSopenharmony_ci */ 596885b47fbSopenharmony_ci type: EventType; 597885b47fbSopenharmony_ci 598885b47fbSopenharmony_ci /** 599885b47fbSopenharmony_ci * The type of the window change event. 600885b47fbSopenharmony_ci * 601885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 602885b47fbSopenharmony_ci * @since 7 603885b47fbSopenharmony_ci */ 604885b47fbSopenharmony_ci windowUpdateType?: WindowUpdateType; 605885b47fbSopenharmony_ci 606885b47fbSopenharmony_ci /** 607885b47fbSopenharmony_ci * The bundle name of the target application. 608885b47fbSopenharmony_ci * 609885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 610885b47fbSopenharmony_ci * @since 7 611885b47fbSopenharmony_ci */ 612885b47fbSopenharmony_ci bundleName: string; 613885b47fbSopenharmony_ci 614885b47fbSopenharmony_ci /** 615885b47fbSopenharmony_ci * The type of the event source component,such as button, chart. 616885b47fbSopenharmony_ci * 617885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 618885b47fbSopenharmony_ci * @since 7 619885b47fbSopenharmony_ci */ 620885b47fbSopenharmony_ci componentType?: string; 621885b47fbSopenharmony_ci 622885b47fbSopenharmony_ci /** 623885b47fbSopenharmony_ci * The page id of the event source. 624885b47fbSopenharmony_ci * 625885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 626885b47fbSopenharmony_ci * @since 7 627885b47fbSopenharmony_ci */ 628885b47fbSopenharmony_ci pageId?: number; 629885b47fbSopenharmony_ci 630885b47fbSopenharmony_ci /** 631885b47fbSopenharmony_ci * The accessibility event description. 632885b47fbSopenharmony_ci * 633885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 634885b47fbSopenharmony_ci * @since 7 635885b47fbSopenharmony_ci */ 636885b47fbSopenharmony_ci description?: string; 637885b47fbSopenharmony_ci 638885b47fbSopenharmony_ci /** 639885b47fbSopenharmony_ci * The action that triggers the accessibility event, for example, clicking or focusing a view. 640885b47fbSopenharmony_ci * 641885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 642885b47fbSopenharmony_ci * @since 7 643885b47fbSopenharmony_ci */ 644885b47fbSopenharmony_ci triggerAction: Action; 645885b47fbSopenharmony_ci 646885b47fbSopenharmony_ci /** 647885b47fbSopenharmony_ci * The movement step used for reading texts. 648885b47fbSopenharmony_ci * 649885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 650885b47fbSopenharmony_ci * @since 7 651885b47fbSopenharmony_ci */ 652885b47fbSopenharmony_ci textMoveUnit?: TextMoveUnit; 653885b47fbSopenharmony_ci 654885b47fbSopenharmony_ci /** 655885b47fbSopenharmony_ci * The content list. 656885b47fbSopenharmony_ci * 657885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 658885b47fbSopenharmony_ci * @since 7 659885b47fbSopenharmony_ci */ 660885b47fbSopenharmony_ci contents?: Array<string>; 661885b47fbSopenharmony_ci 662885b47fbSopenharmony_ci /** 663885b47fbSopenharmony_ci * The content changed before. 664885b47fbSopenharmony_ci * 665885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 666885b47fbSopenharmony_ci * @since 7 667885b47fbSopenharmony_ci */ 668885b47fbSopenharmony_ci lastContent?: string; 669885b47fbSopenharmony_ci 670885b47fbSopenharmony_ci /** 671885b47fbSopenharmony_ci * The start index of listed items on the screen. 672885b47fbSopenharmony_ci * 673885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 674885b47fbSopenharmony_ci * @since 7 675885b47fbSopenharmony_ci */ 676885b47fbSopenharmony_ci beginIndex?: number; 677885b47fbSopenharmony_ci 678885b47fbSopenharmony_ci /** 679885b47fbSopenharmony_ci * The index of the current item on the screen. 680885b47fbSopenharmony_ci * 681885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 682885b47fbSopenharmony_ci * @since 7 683885b47fbSopenharmony_ci */ 684885b47fbSopenharmony_ci currentIndex?: number; 685885b47fbSopenharmony_ci 686885b47fbSopenharmony_ci /** 687885b47fbSopenharmony_ci * The end index of listed items on the screen. 688885b47fbSopenharmony_ci * 689885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 690885b47fbSopenharmony_ci * @since 7 691885b47fbSopenharmony_ci */ 692885b47fbSopenharmony_ci endIndex?: number; 693885b47fbSopenharmony_ci 694885b47fbSopenharmony_ci /** 695885b47fbSopenharmony_ci * The total of the items, talkback used it when scroll. 696885b47fbSopenharmony_ci * 697885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 698885b47fbSopenharmony_ci * @since 7 699885b47fbSopenharmony_ci */ 700885b47fbSopenharmony_ci itemCount?: number; 701885b47fbSopenharmony_ci 702885b47fbSopenharmony_ci /** 703885b47fbSopenharmony_ci * The id of element. 704885b47fbSopenharmony_ci * 705885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 706885b47fbSopenharmony_ci * @since 12 707885b47fbSopenharmony_ci */ 708885b47fbSopenharmony_ci elementId?: number; 709885b47fbSopenharmony_ci 710885b47fbSopenharmony_ci /** 711885b47fbSopenharmony_ci * The context of announce accessibility text. 712885b47fbSopenharmony_ci * 713885b47fbSopenharmony_ci * @syscap SystemCapability.BarrierFree.Accessibility.Core 714885b47fbSopenharmony_ci * @since 12 715885b47fbSopenharmony_ci */ 716885b47fbSopenharmony_ci textAnnouncedForAccessibility?: string; 717885b47fbSopenharmony_ci } 718885b47fbSopenharmony_ci} 719885b47fbSopenharmony_ciexport default accessibility; 720