17777dab0Sopenharmony_ci/*
27777dab0Sopenharmony_ci * Copyright (c) 2024 Huawei Device Co., Ltd.
37777dab0Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
47777dab0Sopenharmony_ci * you may not use this file except in compliance with the License.
57777dab0Sopenharmony_ci * You may obtain a copy of the License at
67777dab0Sopenharmony_ci *
77777dab0Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
87777dab0Sopenharmony_ci *
97777dab0Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
107777dab0Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
117777dab0Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
127777dab0Sopenharmony_ci * See the License for the specific language governing permissions and
137777dab0Sopenharmony_ci * limitations under the License.
147777dab0Sopenharmony_ci */
157777dab0Sopenharmony_ci
167777dab0Sopenharmony_ci/**
177777dab0Sopenharmony_ci * @addtogroup ArkUI_Accessibility
187777dab0Sopenharmony_ci * @{
197777dab0Sopenharmony_ci *
207777dab0Sopenharmony_ci * @brief Describes the native capabilities supported by ArkUI Accessibility, such as querying accessibility nodes and
217777dab0Sopenharmony_ci * reporting accessibility events.
227777dab0Sopenharmony_ci *
237777dab0Sopenharmony_ci * @since 13
247777dab0Sopenharmony_ci */
257777dab0Sopenharmony_ci
267777dab0Sopenharmony_ci/**
277777dab0Sopenharmony_ci * @file native_interface_accessibility.h
287777dab0Sopenharmony_ci *
297777dab0Sopenharmony_ci * @brief Declares the APIs used to access the native Accessibility.
307777dab0Sopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
317777dab0Sopenharmony_ci * @kit ArkUI
327777dab0Sopenharmony_ci * @since 13
337777dab0Sopenharmony_ci */
347777dab0Sopenharmony_ci#ifndef _NATIVE_INTERFACE_ACCESSIBILITY_H
357777dab0Sopenharmony_ci#define _NATIVE_INTERFACE_ACCESSIBILITY_H
367777dab0Sopenharmony_ci
377777dab0Sopenharmony_ci#include <cstdint>
387777dab0Sopenharmony_ci
397777dab0Sopenharmony_ci#ifdef __cplusplus
407777dab0Sopenharmony_ciextern "C"{
417777dab0Sopenharmony_ci#endif
427777dab0Sopenharmony_ci
437777dab0Sopenharmony_ci/**
447777dab0Sopenharmony_ci * @brief Defines a struct for accessibility element information.
457777dab0Sopenharmony_ci *
467777dab0Sopenharmony_ci * @since 13
477777dab0Sopenharmony_ci */
487777dab0Sopenharmony_citypedef struct ArkUI_AccessibilityElementInfo ArkUI_AccessibilityElementInfo;
497777dab0Sopenharmony_ci
507777dab0Sopenharmony_ci/**
517777dab0Sopenharmony_ci * @brief Defines a struct for accessibility event information.
527777dab0Sopenharmony_ci *
537777dab0Sopenharmony_ci * @since 13
547777dab0Sopenharmony_ci */
557777dab0Sopenharmony_citypedef struct ArkUI_AccessibilityEventInfo ArkUI_AccessibilityEventInfo;
567777dab0Sopenharmony_ci
577777dab0Sopenharmony_ci/**
587777dab0Sopenharmony_ci * @brief Defines a struct for the local provider of accessibility.
597777dab0Sopenharmony_ci *
607777dab0Sopenharmony_ci * @since 13
617777dab0Sopenharmony_ci */
627777dab0Sopenharmony_citypedef struct ArkUI_AccessibilityProvider ArkUI_AccessibilityProvider;
637777dab0Sopenharmony_ci
647777dab0Sopenharmony_ci/**
657777dab0Sopenharmony_ci * @brief Defines a struct for accessibility action arguments.
667777dab0Sopenharmony_ci *
677777dab0Sopenharmony_ci * @since 13
687777dab0Sopenharmony_ci */
697777dab0Sopenharmony_citypedef struct ArkUI_AccessibilityActionArguments ArkUI_AccessibilityActionArguments;
707777dab0Sopenharmony_ci
717777dab0Sopenharmony_ci/**
727777dab0Sopenharmony_ci * @brief Defines an enum for accessibility action types.
737777dab0Sopenharmony_ci *
747777dab0Sopenharmony_ci * @since 13
757777dab0Sopenharmony_ci */
767777dab0Sopenharmony_citypedef enum {
777777dab0Sopenharmony_ci    /** Invalid action. */
787777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_INVALID = 0,
797777dab0Sopenharmony_ci    /** Response to a click. */
807777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_CLICK = 0x00000010,
817777dab0Sopenharmony_ci    /** Response to a long click. */
827777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_LONG_CLICK = 0x00000020,
837777dab0Sopenharmony_ci    /** Accessibility focus acquisition. */
847777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_GAIN_ACCESSIBILITY_FOCUS = 0x00000040,
857777dab0Sopenharmony_ci    /** Accessibility focus clearance. */
867777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_CLEAR_ACCESSIBILITY_FOCUS = 0x00000080,
877777dab0Sopenharmony_ci    /** Forward scroll action. */
887777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_SCROLL_FORWARD = 0x00000100,
897777dab0Sopenharmony_ci    /** Backward scroll action. */
907777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_SCROLL_BACKWARD = 0x00000200,
917777dab0Sopenharmony_ci    /** Copy action for text content. */
927777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_COPY = 0x00000400,
937777dab0Sopenharmony_ci    /** Paste action for text content. */
947777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_PASTE = 0x00000800,
957777dab0Sopenharmony_ci    /** Cut action for text content. */
967777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_CUT = 0x00001000,
977777dab0Sopenharmony_ci    /** Text selection action, requiring the setting of <b>selectTextBegin</b>, <b>TextEnd</b>, and <b>TextInForward</b>
987777dab0Sopenharmony_ci     *  parameters to select a text segment in the text box. */
997777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_SELECT_TEXT = 0x00002000,
1007777dab0Sopenharmony_ci    /** Text content setting action. */
1017777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_SET_TEXT = 0x00004000,
1027777dab0Sopenharmony_ci    /** Cursor position setting action. */
1037777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_ACTION_TYPE_SET_CURSOR_POSITION = 0x00100000,
1047777dab0Sopenharmony_ci} ArkUI_Accessibility_ActionType;
1057777dab0Sopenharmony_ci
1067777dab0Sopenharmony_ci/**
1077777dab0Sopenharmony_ci * @brief Defines an enum for accessibility event types.
1087777dab0Sopenharmony_ci *
1097777dab0Sopenharmony_ci * @since 13
1107777dab0Sopenharmony_ci */
1117777dab0Sopenharmony_citypedef enum {
1127777dab0Sopenharmony_ci    /** Invalid event. */
1137777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_INVALID = 0,
1147777dab0Sopenharmony_ci    /** Click event, sent after the UI component responds. */
1157777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_CLICKED = 0x00000001,
1167777dab0Sopenharmony_ci    /** Long click event, sent after the UI component responds. */
1177777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_LONG_CLICKED = 0x00000002,
1187777dab0Sopenharmony_ci    /** Selection event, sent after the UI component responds. */
1197777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_SELECTED = 0x00000004,
1207777dab0Sopenharmony_ci    /** Text update event, sent when text is updated. */
1217777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_TEXT_UPDATE = 0x00000010,
1227777dab0Sopenharmony_ci    /** Page state update event, sent when the page transitions, switches, resizes, or moves. */
1237777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_PAGE_STATE_UPDATE = 0x00000020,
1247777dab0Sopenharmony_ci    /** Page content update event, sent when the page content changes. */
1257777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_PAGE_CONTENT_UPDATE = 0x00000800,
1267777dab0Sopenharmony_ci    /** Scrolled event, sent when a scrollable component experiences a scroll event. */
1277777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_SCROLLED = 0x000001000,
1287777dab0Sopenharmony_ci    /** Accessibility focus event, sent after the UI component responds. */
1297777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_ACCESSIBILITY_FOCUSED = 0x00008000,
1307777dab0Sopenharmony_ci    /** Accessibility focus cleared event, sent after the UI component responds. */
1317777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_ACCESSIBILITY_FOCUS_CLEARED = 0x00010000,
1327777dab0Sopenharmony_ci    /** FOcus request for a specific node. */
1337777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_REQUEST_ACCESSIBILITY_FOCUS = 0x02000000,
1347777dab0Sopenharmony_ci    /** Page open event reported by the UI component. */
1357777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_PAGE_OPEN = 0x20000000,
1367777dab0Sopenharmony_ci    /** Page close event reported by the UI component. */
1377777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_PAGE_CLOSE = 0x08000000,
1387777dab0Sopenharmony_ci    /** Announcement event, indicating a request to proactively announce specified content. */
1397777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_ANNOUNCE_FOR_ACCESSIBILITY = 0x10000000,
1407777dab0Sopenharmony_ci    /** Focus update event, used for focus update scenarios. */
1417777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_EVENT_TYPE_FOCUS_NODE_UPDATE = 0x10000001,
1427777dab0Sopenharmony_ci} ArkUI_AccessibilityEventType;
1437777dab0Sopenharmony_ci
1447777dab0Sopenharmony_ci/**
1457777dab0Sopenharmony_ci * @brief Defines a struct for the accessible action.
1467777dab0Sopenharmony_ci *
1477777dab0Sopenharmony_ci * @since 13
1487777dab0Sopenharmony_ci */
1497777dab0Sopenharmony_citypedef struct {
1507777dab0Sopenharmony_ci    /** Action type. */
1517777dab0Sopenharmony_ci    ArkUI_Accessibility_ActionType actionType;
1527777dab0Sopenharmony_ci    /** Action description. */
1537777dab0Sopenharmony_ci    const char* description;
1547777dab0Sopenharmony_ci} ArkUI_AccessibleAction;
1557777dab0Sopenharmony_ci
1567777dab0Sopenharmony_ci/**
1577777dab0Sopenharmony_ci * @brief Defines a struct for the accessible rectangle.
1587777dab0Sopenharmony_ci *
1597777dab0Sopenharmony_ci * @since 13
1607777dab0Sopenharmony_ci */
1617777dab0Sopenharmony_citypedef struct {
1627777dab0Sopenharmony_ci    /** X coordinate of the upper left corner. */
1637777dab0Sopenharmony_ci    int32_t leftTopX;
1647777dab0Sopenharmony_ci    /** Y coordinate of the upper left corner. */
1657777dab0Sopenharmony_ci    int32_t leftTopY;
1667777dab0Sopenharmony_ci    /** X coordinate of the lower right corner. */
1677777dab0Sopenharmony_ci    int32_t rightBottomX;
1687777dab0Sopenharmony_ci    /** Y coordinate of the lower right corner. */
1697777dab0Sopenharmony_ci    int32_t rightBottomY;
1707777dab0Sopenharmony_ci} ArkUI_AccessibleRect;
1717777dab0Sopenharmony_ci
1727777dab0Sopenharmony_ci/**
1737777dab0Sopenharmony_ci * @brief Define a struct for the accessible range information.
1747777dab0Sopenharmony_ci *
1757777dab0Sopenharmony_ci * @since 13
1767777dab0Sopenharmony_ci */
1777777dab0Sopenharmony_citypedef struct {
1787777dab0Sopenharmony_ci    /** Minimum value. */
1797777dab0Sopenharmony_ci    double min;
1807777dab0Sopenharmony_ci    /** Maximum value. */
1817777dab0Sopenharmony_ci    double max;
1827777dab0Sopenharmony_ci    /** Current value. */
1837777dab0Sopenharmony_ci    double current;
1847777dab0Sopenharmony_ci} ArkUI_AccessibleRangeInfo;
1857777dab0Sopenharmony_ci
1867777dab0Sopenharmony_ci/**
1877777dab0Sopenharmony_ci * @brief Defines a struct for the accessible grid information.
1887777dab0Sopenharmony_ci *
1897777dab0Sopenharmony_ci * @since 13
1907777dab0Sopenharmony_ci */
1917777dab0Sopenharmony_citypedef struct {
1927777dab0Sopenharmony_ci    /** Number of rows. */
1937777dab0Sopenharmony_ci    int32_t rowCount;
1947777dab0Sopenharmony_ci    /** Number of columns. */
1957777dab0Sopenharmony_ci    int32_t columnCount;
1967777dab0Sopenharmony_ci    /** Selection mode. The value <b>0</b> indicates that only one row can be selected. */
1977777dab0Sopenharmony_ci    int32_t selectionMode;
1987777dab0Sopenharmony_ci} ArkUI_AccessibleGridInfo;
1997777dab0Sopenharmony_ci
2007777dab0Sopenharmony_ci/**
2017777dab0Sopenharmony_ci * @brief Defines a struct for the accessible grid item information.
2027777dab0Sopenharmony_ci *
2037777dab0Sopenharmony_ci * @since 13
2047777dab0Sopenharmony_ci */
2057777dab0Sopenharmony_citypedef struct {
2067777dab0Sopenharmony_ci    /** Whether it is a header. */
2077777dab0Sopenharmony_ci    bool heading;
2087777dab0Sopenharmony_ci    /** Whether it is selected. */
2097777dab0Sopenharmony_ci    bool selected;
2107777dab0Sopenharmony_ci    /** Column index. */
2117777dab0Sopenharmony_ci    int32_t columnIndex;
2127777dab0Sopenharmony_ci    /** Row index. */
2137777dab0Sopenharmony_ci    int32_t rowIndex;
2147777dab0Sopenharmony_ci    /** Column span. */
2157777dab0Sopenharmony_ci    int32_t columnSpan;
2167777dab0Sopenharmony_ci    /** Row span. */
2177777dab0Sopenharmony_ci    int32_t rowSpan;
2187777dab0Sopenharmony_ci} ArkUI_AccessibleGridItemInfo;
2197777dab0Sopenharmony_ci
2207777dab0Sopenharmony_ci/**
2217777dab0Sopenharmony_ci * @brief Enumerates the accessibility error codes.
2227777dab0Sopenharmony_ci *
2237777dab0Sopenharmony_ci * @since 13
2247777dab0Sopenharmony_ci */
2257777dab0Sopenharmony_citypedef enum {
2267777dab0Sopenharmony_ci    /**
2277777dab0Sopenharmony_ci     * @error Success.
2287777dab0Sopenharmony_ci     */
2297777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL = 0,
2307777dab0Sopenharmony_ci    /**
2317777dab0Sopenharmony_ci     * @error Failure.
2327777dab0Sopenharmony_ci     */
2337777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_RESULT_FAILED = -1,
2347777dab0Sopenharmony_ci    /**
2357777dab0Sopenharmony_ci     * @error Invalid parameter.
2367777dab0Sopenharmony_ci     */
2377777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER = -2,
2387777dab0Sopenharmony_ci    /**
2397777dab0Sopenharmony_ci     * @error Out of memory.
2407777dab0Sopenharmony_ci     */
2417777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_RESULT_OUT_OF_MEMORY = -3,
2427777dab0Sopenharmony_ci} ArkUI_AcessbilityErrorCode;
2437777dab0Sopenharmony_ci
2447777dab0Sopenharmony_ci/**
2457777dab0Sopenharmony_ci * @brief Defines an enum for the accessibility search modes.
2467777dab0Sopenharmony_ci *
2477777dab0Sopenharmony_ci * @since 13
2487777dab0Sopenharmony_ci */
2497777dab0Sopenharmony_citypedef enum {
2507777dab0Sopenharmony_ci    /** Search for current nodes. */
2517777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_SEARCH_MODE_PREFETCH_CURRENT = 0,
2527777dab0Sopenharmony_ci    /** Search for parent nodes. */
2537777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_SEARCH_MODE_PREFETCH_PREDECESSORS = 1 << 0,
2547777dab0Sopenharmony_ci    /** Search for sibling nodes. */
2557777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_SEARCH_MODE_PREFETCH_SIBLINGS = 1 << 1,
2567777dab0Sopenharmony_ci    /** Search for child nodes at the next level. */
2577777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_SEARCH_MODE_PREFETCH_CHILDREN = 1 << 2,
2587777dab0Sopenharmony_ci    /** Search for all child nodes. */
2597777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_SEARCH_MODE_PREFETCH_RECURSIVE_CHILDREN = 1 << 3,
2607777dab0Sopenharmony_ci} ArkUI_AccessibilitySearchMode;
2617777dab0Sopenharmony_ci
2627777dab0Sopenharmony_ci/**
2637777dab0Sopenharmony_ci * @brief Defines an enum for the accessibility focus types.
2647777dab0Sopenharmony_ci *
2657777dab0Sopenharmony_ci * @since 13
2667777dab0Sopenharmony_ci */
2677777dab0Sopenharmony_citypedef enum {
2687777dab0Sopenharmony_ci    /** Invalid type. */
2697777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_FOCUS_TYPE_INVALID = -1,
2707777dab0Sopenharmony_ci    /** Input focus type. */
2717777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_FOCUS_TYPE_INPUT = 1 << 0,
2727777dab0Sopenharmony_ci    /** Accessibility focus type. */
2737777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_FOCUS_TYPE_ACCESSIBILITY = 1 << 1,
2747777dab0Sopenharmony_ci} ArkUI_AccessibilityFocusType;
2757777dab0Sopenharmony_ci
2767777dab0Sopenharmony_ci/**
2777777dab0Sopenharmony_ci * @brief Enumerates the directions for moving the accessibility focus.
2787777dab0Sopenharmony_ci *
2797777dab0Sopenharmony_ci * @since 13
2807777dab0Sopenharmony_ci */
2817777dab0Sopenharmony_citypedef enum {
2827777dab0Sopenharmony_ci    /** Invalid direction. */
2837777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_DIRECTION_INVALID = 0,
2847777dab0Sopenharmony_ci    /** Up. */
2857777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_DIRECTION_UP = 0x00000001,
2867777dab0Sopenharmony_ci    /** Down. */
2877777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_DIRECTION_DOWN = 0x00000002,
2887777dab0Sopenharmony_ci    /** Left. */
2897777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_DIRECTION_LEFT = 0x00000004,
2907777dab0Sopenharmony_ci    /** Right. */
2917777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_DIRECTION_RIGHT = 0x00000008,
2927777dab0Sopenharmony_ci    /** Forward. */
2937777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_DIRECTION_FORWARD = 0x00000010,
2947777dab0Sopenharmony_ci    /** Backward. */
2957777dab0Sopenharmony_ci    ARKUI_ACCESSIBILITY_NATIVE_DIRECTION_BACKWARD = 0x00000020,
2967777dab0Sopenharmony_ci} ArkUI_AccessibilityFocusMoveDirection;
2977777dab0Sopenharmony_ci
2987777dab0Sopenharmony_ci/**
2997777dab0Sopenharmony_ci * @brief Defines a struct for the accessibility element information list.
3007777dab0Sopenharmony_ci *
3017777dab0Sopenharmony_ci * @since 13
3027777dab0Sopenharmony_ci */
3037777dab0Sopenharmony_citypedef struct ArkUI_AccessibilityElementInfoList ArkUI_AccessibilityElementInfoList;
3047777dab0Sopenharmony_ci
3057777dab0Sopenharmony_ci/**
3067777dab0Sopenharmony_ci * @brief Registers callbacks for the accessibility provider.
3077777dab0Sopenharmony_ci *
3087777dab0Sopenharmony_ci * @since 13
3097777dab0Sopenharmony_ci */
3107777dab0Sopenharmony_citypedef struct ArkUI_AccessibilityProviderCallbacks {
3117777dab0Sopenharmony_ci    /**
3127777dab0Sopenharmony_ci    * @brief Called to obtain element information based on a specified node.
3137777dab0Sopenharmony_ci    *
3147777dab0Sopenharmony_ci    * @param elementId Indicates the element ID.
3157777dab0Sopenharmony_ci    * @param mode Indicates accessibility search mode.
3167777dab0Sopenharmony_ci    * @param requestId Indicates the request ID.
3177777dab0Sopenharmony_ci    * @param elementList Indicates accessibility elementInfo list.
3187777dab0Sopenharmony_ci    * @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
3197777dab0Sopenharmony_ci    *         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
3207777dab0Sopenharmony_ci    */
3217777dab0Sopenharmony_ci    int32_t (*findAccessibilityNodeInfosById)(int64_t elementId, ArkUI_AccessibilitySearchMode mode,
3227777dab0Sopenharmony_ci        int32_t requestId, ArkUI_AccessibilityElementInfoList* elementList);
3237777dab0Sopenharmony_ci    /**
3247777dab0Sopenharmony_ci    * @brief Called to obtain element information based on a specified node and text content.
3257777dab0Sopenharmony_ci    *
3267777dab0Sopenharmony_ci    * @param elementId Indicates the element ID.
3277777dab0Sopenharmony_ci    * @param text Indicates accessibility text.
3287777dab0Sopenharmony_ci    * @param requestId Indicates the request ID.
3297777dab0Sopenharmony_ci    * @param elementList Indicates accessibility elementInfo list.
3307777dab0Sopenharmony_ci    * @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
3317777dab0Sopenharmony_ci    *         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
3327777dab0Sopenharmony_ci    */
3337777dab0Sopenharmony_ci    int32_t (*findAccessibilityNodeInfosByText)(int64_t elementId, const char* text, int32_t requestId,
3347777dab0Sopenharmony_ci        ArkUI_AccessibilityElementInfoList* elementList);
3357777dab0Sopenharmony_ci    /**
3367777dab0Sopenharmony_ci    * @brief Called to obtain focused element information based on a specified node.
3377777dab0Sopenharmony_ci    *
3387777dab0Sopenharmony_ci    * @param elementId Indicates the element ID.
3397777dab0Sopenharmony_ci    * @param focusType Indicates focus type.
3407777dab0Sopenharmony_ci    * @param requestId Indicates the request ID.
3417777dab0Sopenharmony_ci    * @param elementInfo Indicates accessibility elementInfo.
3427777dab0Sopenharmony_ci    * @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
3437777dab0Sopenharmony_ci    *         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
3447777dab0Sopenharmony_ci    */
3457777dab0Sopenharmony_ci    int32_t (*findFocusedAccessibilityNode)(int64_t elementId, ArkUI_AccessibilityFocusType focusType,
3467777dab0Sopenharmony_ci        int32_t requestId, ArkUI_AccessibilityElementInfo* elementInfo);
3477777dab0Sopenharmony_ci    /**
3487777dab0Sopenharmony_ci    * @brief Called to find the next focusable node based on the reference node.
3497777dab0Sopenharmony_ci    *
3507777dab0Sopenharmony_ci    * @param elementId Indicates the element ID.
3517777dab0Sopenharmony_ci    * @param direction Indicates direction.
3527777dab0Sopenharmony_ci    * @param requestId Indicates the request ID.
3537777dab0Sopenharmony_ci    * @param elementInfo Indicates accessibility elementInfo.
3547777dab0Sopenharmony_ci    * @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
3557777dab0Sopenharmony_ci    *         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
3567777dab0Sopenharmony_ci    */
3577777dab0Sopenharmony_ci    int32_t (*findNextFocusAccessibilityNode)(
3587777dab0Sopenharmony_ci        int64_t elementId, ArkUI_AccessibilityFocusMoveDirection direction,
3597777dab0Sopenharmony_ci        int32_t requestId, ArkUI_AccessibilityElementInfo* elementInfo);
3607777dab0Sopenharmony_ci    /**
3617777dab0Sopenharmony_ci    * @brief Called to execute a specified action on a specified node.
3627777dab0Sopenharmony_ci    *
3637777dab0Sopenharmony_ci    * @param elementId Indicates the element ID.
3647777dab0Sopenharmony_ci    * @param action Indicates action.
3657777dab0Sopenharmony_ci    * @param actionArguments Indicates action arguments.
3667777dab0Sopenharmony_ci    * @param requestId Indicates the request ID.
3677777dab0Sopenharmony_ci    * @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
3687777dab0Sopenharmony_ci    *         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
3697777dab0Sopenharmony_ci    */
3707777dab0Sopenharmony_ci    int32_t (*executeAccessibilityAction)(int64_t elementId, ArkUI_Accessibility_ActionType action,
3717777dab0Sopenharmony_ci        ArkUI_AccessibilityActionArguments *actionArguments, int32_t requestId);
3727777dab0Sopenharmony_ci    /**
3737777dab0Sopenharmony_ci    * @brief Called to clear the focus state of the current focused node.
3747777dab0Sopenharmony_ci    *
3757777dab0Sopenharmony_ci    * @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
3767777dab0Sopenharmony_ci    *         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_FAILED} if the operation is failed.
3777777dab0Sopenharmony_ci    */
3787777dab0Sopenharmony_ci    int32_t (*clearFocusedFocusAccessibilityNode)();
3797777dab0Sopenharmony_ci    /**
3807777dab0Sopenharmony_ci    * @brief Called to query the current cursor position of the specified node.
3817777dab0Sopenharmony_ci    *
3827777dab0Sopenharmony_ci    * @param elementId Indicates the element ID.
3837777dab0Sopenharmony_ci    * @param requestId Indicates the request ID.
3847777dab0Sopenharmony_ci    * @param index Indicates index.
3857777dab0Sopenharmony_ci    * @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
3867777dab0Sopenharmony_ci    *         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
3877777dab0Sopenharmony_ci    */
3887777dab0Sopenharmony_ci    int32_t (*getAccessibilityNodeCursorPosition)(int64_t elementId, int32_t requestId, int32_t* index);
3897777dab0Sopenharmony_ci} ArkUI_AccessibilityProviderCallbacks;
3907777dab0Sopenharmony_ci
3917777dab0Sopenharmony_ci/**
3927777dab0Sopenharmony_ci * @brief Registers a callback for this <b>ArkUI_AccessibilityProvider</b> instance.
3937777dab0Sopenharmony_ci *
3947777dab0Sopenharmony_ci * @param provider Indicates the pointer to the <b>ArkUI_AccessibilityProvider</b> instance.
3957777dab0Sopenharmony_ci * @param callbacks Indicates the pointer to the <b>GetAccessibilityNodeCursorPosition</b> callback.
3967777dab0Sopenharmony_ci * @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
3977777dab0Sopenharmony_ci *         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
3987777dab0Sopenharmony_ci * @since 13
3997777dab0Sopenharmony_ci */
4007777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityProviderRegisterCallback(
4017777dab0Sopenharmony_ci    ArkUI_AccessibilityProvider* provider, ArkUI_AccessibilityProviderCallbacks* callbacks);
4027777dab0Sopenharmony_ci
4037777dab0Sopenharmony_ci/**
4047777dab0Sopenharmony_ci * @brief Sends accessibility event information.
4057777dab0Sopenharmony_ci *
4067777dab0Sopenharmony_ci * @param provider Indicates the pointer to the <b>ArkUI_AccessibilityProvider</b> instance.
4077777dab0Sopenharmony_ci * @param eventInfo Indicates the pointer to the accessibility event information.
4087777dab0Sopenharmony_ci * @param callback Indicates the pointer to the callback that is called after the event is sent.
4097777dab0Sopenharmony_ci * @since 13
4107777dab0Sopenharmony_ci */
4117777dab0Sopenharmony_civoid OH_ArkUI_SendAccessibilityAsyncEvent(
4127777dab0Sopenharmony_ci    ArkUI_AccessibilityProvider* provider, ArkUI_AccessibilityEventInfo* eventInfo,
4137777dab0Sopenharmony_ci    void (*callback)(int32_t errorCode));
4147777dab0Sopenharmony_ci
4157777dab0Sopenharmony_ci/**
4167777dab0Sopenharmony_ci * @brief Adds and obtains the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
4177777dab0Sopenharmony_ci *
4187777dab0Sopenharmony_ci * @param list Indicates the pointer to an <b>ArkUI_AccessibilityElementInfoList</b> object.
4197777dab0Sopenharmony_ci * @return Returns the pointer to the <b>ArkUI_AccessibilityElementInfo</b> object.
4207777dab0Sopenharmony_ci * @since 13
4217777dab0Sopenharmony_ci */
4227777dab0Sopenharmony_ciArkUI_AccessibilityElementInfo* OH_ArkUI_AddAndGetAccessibilityElementInfo(
4237777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfoList* list);
4247777dab0Sopenharmony_ci
4257777dab0Sopenharmony_ci/**
4267777dab0Sopenharmony_ci* @brief Sets the element ID for an <b>ArkUI_AccessibilityElementInfo</b> object.
4277777dab0Sopenharmony_ci*
4287777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
4297777dab0Sopenharmony_ci* @param elementId Indicates the element ID.
4307777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
4317777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
4327777dab0Sopenharmony_ci* @since 13
4337777dab0Sopenharmony_ci*/
4347777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetElementId(
4357777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, int32_t elementId);
4367777dab0Sopenharmony_ci
4377777dab0Sopenharmony_ci/**
4387777dab0Sopenharmony_ci* @brief Sets the parent ID for an <b>ArkUI_AccessibilityElementInfo</b> object.
4397777dab0Sopenharmony_ci*
4407777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
4417777dab0Sopenharmony_ci* @param parentId Indicates the parent ID.
4427777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
4437777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
4447777dab0Sopenharmony_ci* @since 13
4457777dab0Sopenharmony_ci*/
4467777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetParentId(
4477777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, int32_t parentId);
4487777dab0Sopenharmony_ci
4497777dab0Sopenharmony_ci/**
4507777dab0Sopenharmony_ci* @brief Sets the component type for an <b>ArkUI_AccessibilityElementInfo</b> object.
4517777dab0Sopenharmony_ci*
4527777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
4537777dab0Sopenharmony_ci* @param componentType Indicates the component type.
4547777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
4557777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
4567777dab0Sopenharmony_ci* @since 13
4577777dab0Sopenharmony_ci*/
4587777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetComponentType(
4597777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, const char* componentType);
4607777dab0Sopenharmony_ci
4617777dab0Sopenharmony_ci/**
4627777dab0Sopenharmony_ci* @brief Sets the component content for an <b>ArkUI_AccessibilityElementInfo</b> object.
4637777dab0Sopenharmony_ci*
4647777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
4657777dab0Sopenharmony_ci* @param contents Indicates the component content.
4667777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
4677777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
4687777dab0Sopenharmony_ci* @since 13
4697777dab0Sopenharmony_ci*/
4707777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetContents(
4717777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, const char* contents);
4727777dab0Sopenharmony_ci
4737777dab0Sopenharmony_ci/**
4747777dab0Sopenharmony_ci* @brief Sets the hint text for an <b>ArkUI_AccessibilityElementInfo</b> object.
4757777dab0Sopenharmony_ci*
4767777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
4777777dab0Sopenharmony_ci* @param hintText Indicates the hint text.
4787777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
4797777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
4807777dab0Sopenharmony_ci* @since 13
4817777dab0Sopenharmony_ci*/
4827777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetHintText(
4837777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, const char* hintText);
4847777dab0Sopenharmony_ci
4857777dab0Sopenharmony_ci/**
4867777dab0Sopenharmony_ci* @brief Sets the accessibility text for an <b>ArkUI_AccessibilityElementInfo</b> object.
4877777dab0Sopenharmony_ci*
4887777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
4897777dab0Sopenharmony_ci* @param accessibilityText Indicates the accessibility text.
4907777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
4917777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
4927777dab0Sopenharmony_ci* @since 13
4937777dab0Sopenharmony_ci*/
4947777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetAccessibilityText(
4957777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, const char* accessibilityText);
4967777dab0Sopenharmony_ci
4977777dab0Sopenharmony_ci/**
4987777dab0Sopenharmony_ci* @brief Sets the accessibility description for an <b>ArkUI_AccessibilityElementInfo</b> object.
4997777dab0Sopenharmony_ci*
5007777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
5017777dab0Sopenharmony_ci* @param accessibilityDescription Indicates the accessibility description.
5027777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
5037777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
5047777dab0Sopenharmony_ci* @since 13
5057777dab0Sopenharmony_ci*/
5067777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetAccessibilityDescription(
5077777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, const char* accessibilityDescription);
5087777dab0Sopenharmony_ci
5097777dab0Sopenharmony_ci/**
5107777dab0Sopenharmony_ci* @brief Set the number of child nodes and child node IDs for an <b>ArkUI_AccessibilityElementInfo</b> object.
5117777dab0Sopenharmony_ci*
5127777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
5137777dab0Sopenharmony_ci* @param childCount Indicates the number of child nodes.
5147777dab0Sopenharmony_ci* @param childNodeIds Indicates an array of child node IDs.
5157777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
5167777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
5177777dab0Sopenharmony_ci* @since 13
5187777dab0Sopenharmony_ci*/
5197777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetChildNodeIds(
5207777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, int32_t childCount, int64_t* childNodeIds);
5217777dab0Sopenharmony_ci
5227777dab0Sopenharmony_ci/**
5237777dab0Sopenharmony_ci* @brief Sets the operation actions for an <b>ArkUI_AccessibilityElementInfo</b> object.
5247777dab0Sopenharmony_ci*
5257777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
5267777dab0Sopenharmony_ci* @param operationCount Indicates the operation count.
5277777dab0Sopenharmony_ci* @param operationActions Indicates the operation actions.
5287777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
5297777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
5307777dab0Sopenharmony_ci* @since 13
5317777dab0Sopenharmony_ci*/
5327777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetOperationActions(ArkUI_AccessibilityElementInfo* elementInfo,
5337777dab0Sopenharmony_ci    int32_t operationCount, ArkUI_AccessibleAction* operationActions);
5347777dab0Sopenharmony_ci
5357777dab0Sopenharmony_ci/**
5367777dab0Sopenharmony_ci* @brief Sets the screen area for an <b>ArkUI_AccessibilityElementInfo</b> object.
5377777dab0Sopenharmony_ci*
5387777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
5397777dab0Sopenharmony_ci* @param screenRect Indicates the screen area.
5407777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
5417777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
5427777dab0Sopenharmony_ci* @since 13
5437777dab0Sopenharmony_ci*/
5447777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetScreenRect(
5457777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, ArkUI_AccessibleRect* screenRect);
5467777dab0Sopenharmony_ci
5477777dab0Sopenharmony_ci/**
5487777dab0Sopenharmony_ci* @brief Sets whether the element is checkable for an <b>ArkUI_AccessibilityElementInfo</b> object.
5497777dab0Sopenharmony_ci*
5507777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
5517777dab0Sopenharmony_ci* @param checkable Indicates whether the element is checkable.
5527777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
5537777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
5547777dab0Sopenharmony_ci* @since 13
5557777dab0Sopenharmony_ci*/
5567777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetCheckable(
5577777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool checkable);
5587777dab0Sopenharmony_ci
5597777dab0Sopenharmony_ci/**
5607777dab0Sopenharmony_ci* @brief Sets whether the element is checked for an <b>ArkUI_AccessibilityElementInfo</b> object.
5617777dab0Sopenharmony_ci*
5627777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
5637777dab0Sopenharmony_ci* @param checked Indicates whether the element is checked.
5647777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
5657777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
5667777dab0Sopenharmony_ci* @since 13
5677777dab0Sopenharmony_ci*/
5687777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetChecked(
5697777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool checked);
5707777dab0Sopenharmony_ci
5717777dab0Sopenharmony_ci/**
5727777dab0Sopenharmony_ci* @brief Sets whether the element is focusable for an <b>ArkUI_AccessibilityElementInfo</b> object.
5737777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
5747777dab0Sopenharmony_ci* @param focusable Indicates whether the element is focusable.
5757777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
5767777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
5777777dab0Sopenharmony_ci* @since 13
5787777dab0Sopenharmony_ci*/
5797777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetFocusable(
5807777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool focusable);
5817777dab0Sopenharmony_ci
5827777dab0Sopenharmony_ci/**
5837777dab0Sopenharmony_ci* @brief Sets whether the element is focused for an <b>ArkUI_AccessibilityElementInfo</b> object.
5847777dab0Sopenharmony_ci*
5857777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
5867777dab0Sopenharmony_ci* @param isFocused Indicates whether the element is focused.
5877777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
5887777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
5897777dab0Sopenharmony_ci* @since 13
5907777dab0Sopenharmony_ci*/
5917777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetFocused(
5927777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool isFocused);
5937777dab0Sopenharmony_ci
5947777dab0Sopenharmony_ci/**
5957777dab0Sopenharmony_ci* @brief Sets whether the element is visible for an <b>ArkUI_AccessibilityElementInfo</b> object.
5967777dab0Sopenharmony_ci*
5977777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
5987777dab0Sopenharmony_ci* @param isVisible Indicates whether the element is visible.
5997777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
6007777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
6017777dab0Sopenharmony_ci* @since 13
6027777dab0Sopenharmony_ci*/
6037777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetVisible(
6047777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool isVisible);
6057777dab0Sopenharmony_ci
6067777dab0Sopenharmony_ci/**
6077777dab0Sopenharmony_ci* @brief Sets the accessibility focus state for an <b>ArkUI_AccessibilityElementInfo</b> object.
6087777dab0Sopenharmony_ci*
6097777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
6107777dab0Sopenharmony_ci* @param accessibilityFocused Indicates whether the element has accessibility focus.
6117777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
6127777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
6137777dab0Sopenharmony_ci* @since 13
6147777dab0Sopenharmony_ci*/
6157777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetAccessibilityFocused(
6167777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool accessibilityFocused);
6177777dab0Sopenharmony_ci
6187777dab0Sopenharmony_ci/**
6197777dab0Sopenharmony_ci* @brief Sets whether the element is selected for an <b>ArkUI_AccessibilityElementInfo</b> object.
6207777dab0Sopenharmony_ci*
6217777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
6227777dab0Sopenharmony_ci* @param selected Indicates whether the element is selected.
6237777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
6247777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
6257777dab0Sopenharmony_ci* @since 13
6267777dab0Sopenharmony_ci*/
6277777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetSelected(
6287777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool selected);
6297777dab0Sopenharmony_ci
6307777dab0Sopenharmony_ci/**
6317777dab0Sopenharmony_ci* @brief Sets whether the element is clickable for an <b>ArkUI_AccessibilityElementInfo</b> object.
6327777dab0Sopenharmony_ci*
6337777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
6347777dab0Sopenharmony_ci* @param clickable Indicates whether the element is clickable.
6357777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
6367777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
6377777dab0Sopenharmony_ci* @since 13
6387777dab0Sopenharmony_ci*/
6397777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetClickable(
6407777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool clickable);
6417777dab0Sopenharmony_ci
6427777dab0Sopenharmony_ci/**
6437777dab0Sopenharmony_ci* @brief Sets whether the element is long clickable for an <b>ArkUI_AccessibilityElementInfo</b> object.
6447777dab0Sopenharmony_ci*
6457777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
6467777dab0Sopenharmony_ci* @param longClickable Indicates whether the element is long clickable.
6477777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
6487777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
6497777dab0Sopenharmony_ci* @since 13
6507777dab0Sopenharmony_ci*/
6517777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetLongClickable(
6527777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool longClickable);
6537777dab0Sopenharmony_ci
6547777dab0Sopenharmony_ci/**
6557777dab0Sopenharmony_ci* @brief Sets whether the element is enabled for an <b>ArkUI_AccessibilityElementInfo</b> object.
6567777dab0Sopenharmony_ci*
6577777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
6587777dab0Sopenharmony_ci* @param isEnabled Indicates whether the element is enabled.
6597777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
6607777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
6617777dab0Sopenharmony_ci* @since 13
6627777dab0Sopenharmony_ci*/
6637777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetEnabled(
6647777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool isEnabled);
6657777dab0Sopenharmony_ci
6667777dab0Sopenharmony_ci/**
6677777dab0Sopenharmony_ci* @brief Sets whether the element is a password for an <b>ArkUI_AccessibilityElementInfo</b> object.
6687777dab0Sopenharmony_ci*
6697777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
6707777dab0Sopenharmony_ci* @param isPassword Indicates whether the element is a password.
6717777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
6727777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
6737777dab0Sopenharmony_ci* @since 13
6747777dab0Sopenharmony_ci*/
6757777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetIsPassword(
6767777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool isPassword);
6777777dab0Sopenharmony_ci
6787777dab0Sopenharmony_ci/**
6797777dab0Sopenharmony_ci* @brief Sets whether the element is scrollable for an <b>ArkUI_AccessibilityElementInfo</b> object.
6807777dab0Sopenharmony_ci*
6817777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
6827777dab0Sopenharmony_ci* @param scrollable Indicates whether the element is scrollable.
6837777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
6847777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
6857777dab0Sopenharmony_ci* @since 13
6867777dab0Sopenharmony_ci*/
6877777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetScrollable(
6887777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool scrollable);
6897777dab0Sopenharmony_ci
6907777dab0Sopenharmony_ci/**
6917777dab0Sopenharmony_ci* @brief Sets whether the element is editable for an <b>ArkUI_AccessibilityElementInfo</b> object.
6927777dab0Sopenharmony_ci*
6937777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
6947777dab0Sopenharmony_ci* @param editable Indicates whether the element is editable.
6957777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
6967777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
6977777dab0Sopenharmony_ci* @since 13
6987777dab0Sopenharmony_ci*/
6997777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetEditable(
7007777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool editable);
7017777dab0Sopenharmony_ci
7027777dab0Sopenharmony_ci/**
7037777dab0Sopenharmony_ci* @brief Sets whether the element is a hint for an <b>ArkUI_AccessibilityElementInfo</b> object.
7047777dab0Sopenharmony_ci*
7057777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
7067777dab0Sopenharmony_ci* @param isHint Indicates whether the element is a hint.
7077777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
7087777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
7097777dab0Sopenharmony_ci* @since 13
7107777dab0Sopenharmony_ci*/
7117777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetIsHint(
7127777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool isHint);
7137777dab0Sopenharmony_ci
7147777dab0Sopenharmony_ci/**
7157777dab0Sopenharmony_ci* @brief Sets the range information for an <b>ArkUI_AccessibilityElementInfo</b> object.
7167777dab0Sopenharmony_ci*
7177777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
7187777dab0Sopenharmony_ci* @param rangeInfo Indicates the range information.
7197777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
7207777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
7217777dab0Sopenharmony_ci* @since 13
7227777dab0Sopenharmony_ci*/
7237777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetRangeInfo(
7247777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, ArkUI_AccessibleRangeInfo* rangeInfo);
7257777dab0Sopenharmony_ci
7267777dab0Sopenharmony_ci/**
7277777dab0Sopenharmony_ci* @brief Sets the grid information for an <b>ArkUI_AccessibilityElementInfo</b> object.
7287777dab0Sopenharmony_ci*
7297777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
7307777dab0Sopenharmony_ci* @param gridInfo Indicates the grid information.
7317777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
7327777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
7337777dab0Sopenharmony_ci* @since 13
7347777dab0Sopenharmony_ci*/
7357777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetGridInfo(
7367777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, ArkUI_AccessibleGridInfo* gridInfo);
7377777dab0Sopenharmony_ci
7387777dab0Sopenharmony_ci/**
7397777dab0Sopenharmony_ci* @brief Sets the grid item for an <b>ArkUI_AccessibilityElementInfo</b> object.
7407777dab0Sopenharmony_ci*
7417777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
7427777dab0Sopenharmony_ci* @param gridItem Indicates the grid item.
7437777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
7447777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
7457777dab0Sopenharmony_ci* @since 13
7467777dab0Sopenharmony_ci*/
7477777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetGridItemInfo(
7487777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, ArkUI_AccessibleGridItemInfo* gridItem);
7497777dab0Sopenharmony_ci
7507777dab0Sopenharmony_ci/**
7517777dab0Sopenharmony_ci* @brief Sets the starting index of the selected text for an <b>ArkUI_AccessibilityElementInfo</b> object.
7527777dab0Sopenharmony_ci*
7537777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
7547777dab0Sopenharmony_ci* @param selectedTextStart Indicates the starting index of the selected text
7557777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
7567777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
7577777dab0Sopenharmony_ci* @since 13
7587777dab0Sopenharmony_ci*/
7597777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetSelectedTextStart(
7607777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, int32_t selectedTextStart);
7617777dab0Sopenharmony_ci
7627777dab0Sopenharmony_ci/**
7637777dab0Sopenharmony_ci* @brief Sets the end index of the selected text for an <b>ArkUI_AccessibilityElementInfo</b> object.
7647777dab0Sopenharmony_ci*
7657777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
7667777dab0Sopenharmony_ci* @param selectedTextEnd Indicates the end index of the selected text
7677777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
7687777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
7697777dab0Sopenharmony_ci* @since 13
7707777dab0Sopenharmony_ci*/
7717777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetSelectedTextEnd(
7727777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, int32_t selectedTextEnd);
7737777dab0Sopenharmony_ci
7747777dab0Sopenharmony_ci/**
7757777dab0Sopenharmony_ci* @brief Sets the index of the currently selected item for an <b>ArkUI_AccessibilityElementInfo</b> object.
7767777dab0Sopenharmony_ci*
7777777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
7787777dab0Sopenharmony_ci* @param currentItemIndex Indicates the index of the currently selected item.
7797777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
7807777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
7817777dab0Sopenharmony_ci* @since 13
7827777dab0Sopenharmony_ci*/
7837777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetCurrentItemIndex(
7847777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, int32_t currentItemIndex);
7857777dab0Sopenharmony_ci
7867777dab0Sopenharmony_ci/**
7877777dab0Sopenharmony_ci* @brief Sets the index of the first item for an <b>ArkUI_AccessibilityElementInfo</b> object.
7887777dab0Sopenharmony_ci*
7897777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
7907777dab0Sopenharmony_ci* @param startItemIndex Indicates the index of the first item.
7917777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
7927777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
7937777dab0Sopenharmony_ci* @since 13
7947777dab0Sopenharmony_ci*/
7957777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetStartItemIndex(
7967777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, int32_t startItemIndex);
7977777dab0Sopenharmony_ci
7987777dab0Sopenharmony_ci/**
7997777dab0Sopenharmony_ci* @brief Sets the index of the last item for an <b>ArkUI_AccessibilityElementInfo</b> object.
8007777dab0Sopenharmony_ci*
8017777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
8027777dab0Sopenharmony_ci* @param endItemIndex Indicates the index of the last item.
8037777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
8047777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
8057777dab0Sopenharmony_ci* @since 13
8067777dab0Sopenharmony_ci*/
8077777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetEndItemIndex(
8087777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, int32_t endItemIndex);
8097777dab0Sopenharmony_ci
8107777dab0Sopenharmony_ci/**
8117777dab0Sopenharmony_ci* @brief Sets the number of items for an <b>ArkUI_AccessibilityElementInfo</b> object.
8127777dab0Sopenharmony_ci*
8137777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
8147777dab0Sopenharmony_ci* @param itemCount Indicates the number of items.
8157777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
8167777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
8177777dab0Sopenharmony_ci* @since 13
8187777dab0Sopenharmony_ci*/
8197777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetItemCount(
8207777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, int32_t itemCount);
8217777dab0Sopenharmony_ci
8227777dab0Sopenharmony_ci/**
8237777dab0Sopenharmony_ci* @brief Sets the offset for an <b>ArkUI_AccessibilityElementInfo</b> object.
8247777dab0Sopenharmony_ci*
8257777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
8267777dab0Sopenharmony_ci* @param offset Indicates the scroll pixel offset relative to the top of the element.
8277777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
8287777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
8297777dab0Sopenharmony_ci* @since 13
8307777dab0Sopenharmony_ci*/
8317777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetAccessibilityOffset(
8327777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, int32_t offset);
8337777dab0Sopenharmony_ci
8347777dab0Sopenharmony_ci/**
8357777dab0Sopenharmony_ci* @brief Sets the accessibility group for an <b>ArkUI_AccessibilityElementInfo</b> object.
8367777dab0Sopenharmony_ci*
8377777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
8387777dab0Sopenharmony_ci* @param accessibilityGroup Indicates the accessibility group.
8397777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
8407777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
8417777dab0Sopenharmony_ci* @since 13
8427777dab0Sopenharmony_ci*/
8437777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetAccessibilityGroup(
8447777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, bool accessibilityGroup);
8457777dab0Sopenharmony_ci
8467777dab0Sopenharmony_ci/**
8477777dab0Sopenharmony_ci* @brief Sets the accessibility level for an <b>ArkUI_AccessibilityElementInfo</b> object.
8487777dab0Sopenharmony_ci*
8497777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
8507777dab0Sopenharmony_ci* @param accessibilityLevel Indicates the accessibility level.
8517777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
8527777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
8537777dab0Sopenharmony_ci* @since 13
8547777dab0Sopenharmony_ci*/
8557777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetAccessibilityLevel(
8567777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, const char* accessibilityLevel);
8577777dab0Sopenharmony_ci
8587777dab0Sopenharmony_ci/**
8597777dab0Sopenharmony_ci* @brief Sets the z-index for an <b>ArkUI_AccessibilityElementInfo</b> object.
8607777dab0Sopenharmony_ci*
8617777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
8627777dab0Sopenharmony_ci* @param zIndex Indicates the z-index value.
8637777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
8647777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
8657777dab0Sopenharmony_ci* @since 13
8667777dab0Sopenharmony_ci*/
8677777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetZIndex(
8687777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, int32_t zIndex);
8697777dab0Sopenharmony_ci
8707777dab0Sopenharmony_ci/**
8717777dab0Sopenharmony_ci* @brief Sets the opacity for an <b>ArkUI_AccessibilityElementInfo</b> object.
8727777dab0Sopenharmony_ci*
8737777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
8747777dab0Sopenharmony_ci* @param opacity Indicates the opacity.
8757777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
8767777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
8777777dab0Sopenharmony_ci* @since 13
8787777dab0Sopenharmony_ci*/
8797777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetAccessibilityOpacity(
8807777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, float opacity);
8817777dab0Sopenharmony_ci
8827777dab0Sopenharmony_ci/**
8837777dab0Sopenharmony_ci* @brief Sets the background color for an <b>ArkUI_AccessibilityElementInfo</b> object.
8847777dab0Sopenharmony_ci*
8857777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
8867777dab0Sopenharmony_ci* @param backgroundColor Indicates the background color.
8877777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
8887777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
8897777dab0Sopenharmony_ci* @since 13
8907777dab0Sopenharmony_ci*/
8917777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetBackgroundColor(
8927777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, const char* backgroundColor);
8937777dab0Sopenharmony_ci
8947777dab0Sopenharmony_ci/**
8957777dab0Sopenharmony_ci* @brief Sets the background image for an <b>ArkUI_AccessibilityElementInfo</b> object.
8967777dab0Sopenharmony_ci*
8977777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
8987777dab0Sopenharmony_ci* @param backgroundImage Indicates the backgroundImage.
8997777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
9007777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
9017777dab0Sopenharmony_ci* @since 13
9027777dab0Sopenharmony_ci*/
9037777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetBackgroundImage(
9047777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, const char* backgroundImage);
9057777dab0Sopenharmony_ci
9067777dab0Sopenharmony_ci/**
9077777dab0Sopenharmony_ci* @brief Sets the blur effect for an <b>ArkUI_AccessibilityElementInfo</b> object.
9087777dab0Sopenharmony_ci*
9097777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
9107777dab0Sopenharmony_ci* @param blur Indicates the blur effect.
9117777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
9127777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
9137777dab0Sopenharmony_ci* @since 13
9147777dab0Sopenharmony_ci*/
9157777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetBlur(
9167777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, const char* blur);
9177777dab0Sopenharmony_ci
9187777dab0Sopenharmony_ci/**
9197777dab0Sopenharmony_ci* @brief Sets the hit test behavior for an <b>ArkUI_AccessibilityElementInfo</b> object.
9207777dab0Sopenharmony_ci*
9217777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
9227777dab0Sopenharmony_ci* @param hitTestBehavior Indicates the hit test behavior.
9237777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
9247777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
9257777dab0Sopenharmony_ci* @since 13
9267777dab0Sopenharmony_ci*/
9277777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityElementInfoSetHitTestBehavior(
9287777dab0Sopenharmony_ci    ArkUI_AccessibilityElementInfo* elementInfo, const char* hitTestBehavior);
9297777dab0Sopenharmony_ci
9307777dab0Sopenharmony_ci/**
9317777dab0Sopenharmony_ci * @brief Creates an <b>ArkUI_AccessibilityElementInfo</b> object.
9327777dab0Sopenharmony_ci *
9337777dab0Sopenharmony_ci * @return Returns the <b>ArkUI_AccessibilityElementInfo</b> object, or NULL if it fails to create.
9347777dab0Sopenharmony_ci *         The possible reason for failure is that the memory error occurred during object creation.
9357777dab0Sopenharmony_ci * @since 13
9367777dab0Sopenharmony_ci * @version 1.0
9377777dab0Sopenharmony_ci */
9387777dab0Sopenharmony_ciArkUI_AccessibilityElementInfo* OH_ArkUI_CreateAccessibilityElementInfo(void);
9397777dab0Sopenharmony_ci
9407777dab0Sopenharmony_ci/**
9417777dab0Sopenharmony_ci * @brief Destroys an <b>ArkUI_AccessibilityElementInfo</b> object.
9427777dab0Sopenharmony_ci *
9437777dab0Sopenharmony_ci * @param elementInfo Indicates the pointer to the <b>ArkUI_AccessibilityElementInfo</b> object to destroy.
9447777dab0Sopenharmony_ci * @since 13
9457777dab0Sopenharmony_ci * @version 1.0
9467777dab0Sopenharmony_ci */
9477777dab0Sopenharmony_civoid OH_ArkUI_DestoryAccessibilityElementInfo(ArkUI_AccessibilityElementInfo* elementInfo);
9487777dab0Sopenharmony_ci
9497777dab0Sopenharmony_ci/**
9507777dab0Sopenharmony_ci * @brief Creates an <b>ArkUI_AccessibilityEventInfo</b> object.
9517777dab0Sopenharmony_ci *
9527777dab0Sopenharmony_ci * @return Returns the <b>ArkUI_AccessibilityEventInfo</b> object, or NULL if it fails to create.
9537777dab0Sopenharmony_ci *         The possible reason for failure is that the memory error occurred during object creation.
9547777dab0Sopenharmony_ci * @since 13
9557777dab0Sopenharmony_ci */
9567777dab0Sopenharmony_ciArkUI_AccessibilityEventInfo* OH_ArkUI_CreateAccessibilityEventInfo(void);
9577777dab0Sopenharmony_ci
9587777dab0Sopenharmony_ci/**
9597777dab0Sopenharmony_ci * @brief Destroys an <b>ArkUI_AccessibilityEventInfo</b> object.
9607777dab0Sopenharmony_ci *
9617777dab0Sopenharmony_ci * @param eventInfo Indicates the pointer to the <b>ArkUI_AccessibilityEventInfo</b> object to destroy.
9627777dab0Sopenharmony_ci * @since 13
9637777dab0Sopenharmony_ci */
9647777dab0Sopenharmony_civoid OH_ArkUI_DestoryAccessibilityEventInfo(ArkUI_AccessibilityEventInfo* eventInfo);
9657777dab0Sopenharmony_ci
9667777dab0Sopenharmony_ci/**
9677777dab0Sopenharmony_ci* @brief Sets the event type for an <b>ArkUI_AccessibilityEventInfo</b> object.
9687777dab0Sopenharmony_ci*
9697777dab0Sopenharmony_ci* @param eventInfo Indicates the pointer to an <b>ArkUI_AccessibilityEventInfo</b> object.
9707777dab0Sopenharmony_ci* @param eventType Indicates the event type.
9717777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
9727777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
9737777dab0Sopenharmony_ci* @since 13
9747777dab0Sopenharmony_ci*/
9757777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityEventSetEventType(
9767777dab0Sopenharmony_ci    ArkUI_AccessibilityEventInfo* eventInfo,  ArkUI_AccessibilityEventType eventType);
9777777dab0Sopenharmony_ci
9787777dab0Sopenharmony_ci/**
9797777dab0Sopenharmony_ci* @brief Sets the text announced for accessibility for an <b>ArkUI_AccessibilityEventInfo</b> object.
9807777dab0Sopenharmony_ci*
9817777dab0Sopenharmony_ci* @param eventInfo Indicates the pointer to an <b>ArkUI_AccessibilityEventInfo</b> object.
9827777dab0Sopenharmony_ci* @param textAnnouncedForAccessibility Indicates the text announced for accessibility.
9837777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
9847777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
9857777dab0Sopenharmony_ci* @since 13
9867777dab0Sopenharmony_ci*/
9877777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityEventSetTextAnnouncedForAccessibility(
9887777dab0Sopenharmony_ci    ArkUI_AccessibilityEventInfo* eventInfo,  const char* textAnnouncedForAccessibility);
9897777dab0Sopenharmony_ci
9907777dab0Sopenharmony_ci/**
9917777dab0Sopenharmony_ci* @brief Sets the request focus ID for an <b>ArkUI_AccessibilityEventInfo</b> object.
9927777dab0Sopenharmony_ci*
9937777dab0Sopenharmony_ci* @param eventInfo Indicates the pointer to an <b>ArkUI_AccessibilityEventInfo</b> object.
9947777dab0Sopenharmony_ci* @param requestFocusId Indicates the request focus ID.
9957777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
9967777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
9977777dab0Sopenharmony_ci* @since 13
9987777dab0Sopenharmony_ci*/
9997777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityEventSetRequestFocusId(
10007777dab0Sopenharmony_ci    ArkUI_AccessibilityEventInfo* eventInfo,  int32_t requestFocusId);
10017777dab0Sopenharmony_ci
10027777dab0Sopenharmony_ci/**
10037777dab0Sopenharmony_ci* @brief Sets the element information for an <b>ArkUI_AccessibilityEventInfo</b> object.
10047777dab0Sopenharmony_ci*
10057777dab0Sopenharmony_ci* @param eventInfo Indicates the pointer to an <b>ArkUI_AccessibilityEventInfo</b> object.
10067777dab0Sopenharmony_ci* @param elementInfo Indicates the pointer to an <b>ArkUI_AccessibilityElementInfo</b> object.
10077777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
10087777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
10097777dab0Sopenharmony_ci* @since 13
10107777dab0Sopenharmony_ci*/
10117777dab0Sopenharmony_ciint32_t OH_ArkUI_AccessibilityEventSetElementInfo(
10127777dab0Sopenharmony_ci    ArkUI_AccessibilityEventInfo* eventInfo,  ArkUI_AccessibilityElementInfo* elementInfo);
10137777dab0Sopenharmony_ci
10147777dab0Sopenharmony_ci/**
10157777dab0Sopenharmony_ci* @brief Obtains the value of a key from an <b>ArkUI_AccessibilityActionArguments</b> object.
10167777dab0Sopenharmony_ci*
10177777dab0Sopenharmony_ci* @param arguments Indicates the pointer to an <b>ArkUI_AccessibilityActionArguments</b> object.
10187777dab0Sopenharmony_ci* @param key Indicates the key.
10197777dab0Sopenharmony_ci* @param value Indicates the value.
10207777dab0Sopenharmony_ci* @return Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL} if the operation is successful.
10217777dab0Sopenharmony_ci*         Returns {@link ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER} if a parameter is incorrect.
10227777dab0Sopenharmony_ci* @since 13
10237777dab0Sopenharmony_ci*/
10247777dab0Sopenharmony_ciint32_t OH_ArkUI_FindAccessibilityActionArgumentByKey(
10257777dab0Sopenharmony_ci    ArkUI_AccessibilityActionArguments* arguments, const char* key, char** value);
10267777dab0Sopenharmony_ci#ifdef __cplusplus
10277777dab0Sopenharmony_ci};
10287777dab0Sopenharmony_ci#endif
10297777dab0Sopenharmony_ci#endif // _NATIVE_INTERFACE_ACCESSIBILITY_H
1030