17c804472Sopenharmony_ci/* 27c804472Sopenharmony_ci * Copyright (c) 2021-2024 Huawei Device Co., Ltd. 37c804472Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 47c804472Sopenharmony_ci * you may not use this file except in compliance with the License. 57c804472Sopenharmony_ci * You may obtain a copy of the License at 67c804472Sopenharmony_ci * 77c804472Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 87c804472Sopenharmony_ci * 97c804472Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 107c804472Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 117c804472Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 127c804472Sopenharmony_ci * See the License for the specific language governing permissions and 137c804472Sopenharmony_ci * limitations under the License. 147c804472Sopenharmony_ci */ 157c804472Sopenharmony_ci 167c804472Sopenharmony_ci/** 177c804472Sopenharmony_ci * @file 187c804472Sopenharmony_ci * @kit AbilityKit 197c804472Sopenharmony_ci */ 207c804472Sopenharmony_ci 217c804472Sopenharmony_ciimport { AsyncCallback, Callback } from './@ohos.base'; 227c804472Sopenharmony_ciimport { Permissions } from './permissions'; 237c804472Sopenharmony_ciimport type _Context from './application/Context'; 247c804472Sopenharmony_ciimport type _PermissionRequestResult from './security/PermissionRequestResult'; 257c804472Sopenharmony_ci 267c804472Sopenharmony_ci/** 277c804472Sopenharmony_ci * @namespace abilityAccessCtrl 287c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 297c804472Sopenharmony_ci * @since 8 307c804472Sopenharmony_ci */ 317c804472Sopenharmony_ci/** 327c804472Sopenharmony_ci * @namespace abilityAccessCtrl 337c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 347c804472Sopenharmony_ci * @atomicservice 357c804472Sopenharmony_ci * @since 11 367c804472Sopenharmony_ci */ 377c804472Sopenharmony_cideclare namespace abilityAccessCtrl { 387c804472Sopenharmony_ci /** 397c804472Sopenharmony_ci * Obtains the AtManager instance. 407c804472Sopenharmony_ci * 417c804472Sopenharmony_ci * @returns { AtManager } Returns the instance of the AtManager. 427c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 437c804472Sopenharmony_ci * @since 8 447c804472Sopenharmony_ci */ 457c804472Sopenharmony_ci /** 467c804472Sopenharmony_ci * Obtains the AtManager instance. 477c804472Sopenharmony_ci * 487c804472Sopenharmony_ci * @returns { AtManager } returns the instance of the AtManager. 497c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 507c804472Sopenharmony_ci * @crossplatform 517c804472Sopenharmony_ci * @since 10 527c804472Sopenharmony_ci */ 537c804472Sopenharmony_ci /** 547c804472Sopenharmony_ci * Obtains the AtManager instance. 557c804472Sopenharmony_ci * 567c804472Sopenharmony_ci * @returns { AtManager } returns the instance of the AtManager. 577c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 587c804472Sopenharmony_ci * @crossplatform 597c804472Sopenharmony_ci * @atomicservice 607c804472Sopenharmony_ci * @since 11 617c804472Sopenharmony_ci */ 627c804472Sopenharmony_ci function createAtManager(): AtManager; 637c804472Sopenharmony_ci 647c804472Sopenharmony_ci /** 657c804472Sopenharmony_ci * Provides methods for managing access_token. 667c804472Sopenharmony_ci * 677c804472Sopenharmony_ci * @interface AtManager 687c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 697c804472Sopenharmony_ci * @since 8 707c804472Sopenharmony_ci */ 717c804472Sopenharmony_ci /** 727c804472Sopenharmony_ci * Provides methods for managing access_token. 737c804472Sopenharmony_ci * 747c804472Sopenharmony_ci * @interface AtManager 757c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 767c804472Sopenharmony_ci * @atomicservice 777c804472Sopenharmony_ci * @since 11 787c804472Sopenharmony_ci */ 797c804472Sopenharmony_ci interface AtManager { 807c804472Sopenharmony_ci /** 817c804472Sopenharmony_ci * Checks whether a specified application has been granted the given permission. 827c804472Sopenharmony_ci * 837c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 847c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be verified. The Permissions type supports only valid permission names. 857c804472Sopenharmony_ci * @returns { Promise<GrantStatus> } Returns permission verify result. 867c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 877c804472Sopenharmony_ci * @since 9 887c804472Sopenharmony_ci */ 897c804472Sopenharmony_ci verifyAccessToken(tokenID: number, permissionName: Permissions): Promise<GrantStatus>; 907c804472Sopenharmony_ci 917c804472Sopenharmony_ci /** 927c804472Sopenharmony_ci * Checks whether a specified application has been granted the given permission. 937c804472Sopenharmony_ci * 947c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 957c804472Sopenharmony_ci * @param { string } permissionName - Name of the permission to be verified. 967c804472Sopenharmony_ci * @returns { Promise<GrantStatus> } Returns permission verify result. 977c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 987c804472Sopenharmony_ci * @since 8 997c804472Sopenharmony_ci * @deprecated since 9 1007c804472Sopenharmony_ci * @useinstead ohos.abilityAccessCtrl.AtManager#checkAccessToken 1017c804472Sopenharmony_ci */ 1027c804472Sopenharmony_ci verifyAccessToken(tokenID: number, permissionName: string): Promise<GrantStatus>; 1037c804472Sopenharmony_ci 1047c804472Sopenharmony_ci /** 1057c804472Sopenharmony_ci * Checks whether a specified application has been granted the given permission synchronously. 1067c804472Sopenharmony_ci * 1077c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 1087c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be verified. 1097c804472Sopenharmony_ci * @returns { GrantStatus } Returns permission verify result. 1107c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 1117c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256. 1127c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 1137c804472Sopenharmony_ci * @since 9 1147c804472Sopenharmony_ci */ 1157c804472Sopenharmony_ci verifyAccessTokenSync(tokenID: number, permissionName: Permissions): GrantStatus; 1167c804472Sopenharmony_ci 1177c804472Sopenharmony_ci /** 1187c804472Sopenharmony_ci * Checks whether a specified application has been granted the given permission. 1197c804472Sopenharmony_ci * 1207c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 1217c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be verified. 1227c804472Sopenharmony_ci * @returns { Promise<GrantStatus> } Returns permission verify result. 1237c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 1247c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256. 1257c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 1267c804472Sopenharmony_ci * @since 9 1277c804472Sopenharmony_ci */ 1287c804472Sopenharmony_ci /** 1297c804472Sopenharmony_ci * Checks whether a specified application has been granted the given permission. 1307c804472Sopenharmony_ci * On the cross-platform, this function can be used to check the permission grant status for the current application only. 1317c804472Sopenharmony_ci * 1327c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 1337c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be verified. 1347c804472Sopenharmony_ci * @returns { Promise<GrantStatus> } Returns permission verify result. 1357c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 1367c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256. 1377c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 1387c804472Sopenharmony_ci * @crossplatform 1397c804472Sopenharmony_ci * @since 10 1407c804472Sopenharmony_ci */ 1417c804472Sopenharmony_ci /** 1427c804472Sopenharmony_ci * Checks whether a specified application has been granted the given permission. 1437c804472Sopenharmony_ci * On the cross-platform, this function can be used to check the permission grant status for the current application only. 1447c804472Sopenharmony_ci * 1457c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 1467c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be verified. 1477c804472Sopenharmony_ci * @returns { Promise<GrantStatus> } Returns permission verify result. 1487c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 1497c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256. 1507c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 1517c804472Sopenharmony_ci * @crossplatform 1527c804472Sopenharmony_ci * @atomicservice 1537c804472Sopenharmony_ci * @since 11 1547c804472Sopenharmony_ci */ 1557c804472Sopenharmony_ci checkAccessToken(tokenID: number, permissionName: Permissions): Promise<GrantStatus>; 1567c804472Sopenharmony_ci 1577c804472Sopenharmony_ci /** 1587c804472Sopenharmony_ci * Checks whether a specified application has been granted the given permission. 1597c804472Sopenharmony_ci * On the cross-platform, this function can be used to check the permission grant status for the current application only. 1607c804472Sopenharmony_ci * 1617c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 1627c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be verified. 1637c804472Sopenharmony_ci * @returns { GrantStatus } Returns permission verify result. 1647c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 1657c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256. 1667c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 1677c804472Sopenharmony_ci * @crossplatform 1687c804472Sopenharmony_ci * @since 10 1697c804472Sopenharmony_ci */ 1707c804472Sopenharmony_ci /** 1717c804472Sopenharmony_ci * Checks whether a specified application has been granted the given permission. 1727c804472Sopenharmony_ci * On the cross-platform, this function can be used to check the permission grant status for the current application only. 1737c804472Sopenharmony_ci * 1747c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 1757c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be verified. 1767c804472Sopenharmony_ci * @returns { GrantStatus } Returns permission verify result. 1777c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 1787c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256. 1797c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 1807c804472Sopenharmony_ci * @crossplatform 1817c804472Sopenharmony_ci * @atomicservice 1827c804472Sopenharmony_ci * @since 11 1837c804472Sopenharmony_ci */ 1847c804472Sopenharmony_ci checkAccessTokenSync(tokenID: number, permissionName: Permissions): GrantStatus; 1857c804472Sopenharmony_ci 1867c804472Sopenharmony_ci /** 1877c804472Sopenharmony_ci * Requests certain permissions from the user. 1887c804472Sopenharmony_ci * 1897c804472Sopenharmony_ci * @param { Context } context - The context that initiates the permission request. 1907c804472Sopenharmony_ci * @param { Array<Permissions> } permissionList - Indicates the list of permissions to be requested. This parameter cannot be null or empty. 1917c804472Sopenharmony_ci * @param { AsyncCallback<PermissionRequestResult> } requestCallback Callback for the result from requesting permissions. 1927c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 1937c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The context is invalid when it does not belong to the application itself. 1947c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 1957c804472Sopenharmony_ci * @stagemodelonly 1967c804472Sopenharmony_ci * @since 9 1977c804472Sopenharmony_ci */ 1987c804472Sopenharmony_ci /** 1997c804472Sopenharmony_ci * Requests certain permissions from the user. 2007c804472Sopenharmony_ci * 2017c804472Sopenharmony_ci * @param { Context } context - The context that initiates the permission request. 2027c804472Sopenharmony_ci * @param { Array<Permissions> } permissionList - Indicates the list of permissions to be requested. This parameter cannot be null or empty. 2037c804472Sopenharmony_ci * @param { AsyncCallback<PermissionRequestResult> } requestCallback Callback for the result from requesting permissions. 2047c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 2057c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The context is invalid when it does not belong to the application itself. 2067c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 2077c804472Sopenharmony_ci * @stagemodelonly 2087c804472Sopenharmony_ci * @crossplatform 2097c804472Sopenharmony_ci * @since 10 2107c804472Sopenharmony_ci */ 2117c804472Sopenharmony_ci requestPermissionsFromUser( 2127c804472Sopenharmony_ci context: Context, 2137c804472Sopenharmony_ci permissionList: Array<Permissions>, 2147c804472Sopenharmony_ci requestCallback: AsyncCallback<PermissionRequestResult> 2157c804472Sopenharmony_ci ): void; 2167c804472Sopenharmony_ci 2177c804472Sopenharmony_ci /** 2187c804472Sopenharmony_ci * Requests certain permissions from the user. 2197c804472Sopenharmony_ci * 2207c804472Sopenharmony_ci * @param { Context } context - The context that initiates the permission request. 2217c804472Sopenharmony_ci * @param { Array<Permissions> } permissionList - Indicates the list of permissions to be requested. This parameter cannot be null or empty. 2227c804472Sopenharmony_ci * @returns { Promise<PermissionRequestResult> } Returns result of requesting permissions. 2237c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 2247c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The context is invalid when it does not belong to the application itself. 2257c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 2267c804472Sopenharmony_ci * @stagemodelonly 2277c804472Sopenharmony_ci * @since 9 2287c804472Sopenharmony_ci */ 2297c804472Sopenharmony_ci /** 2307c804472Sopenharmony_ci * Requests certain permissions from the user. 2317c804472Sopenharmony_ci * 2327c804472Sopenharmony_ci * @param { Context } context - The context that initiates the permission request. 2337c804472Sopenharmony_ci * @param { Array<Permissions> } permissionList - Indicates the list of permissions to be requested. This parameter cannot be null or empty. 2347c804472Sopenharmony_ci * @returns { Promise<PermissionRequestResult> } Returns result of requesting permissions. 2357c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 2367c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The context is invalid when it does not belong to the application itself. 2377c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 2387c804472Sopenharmony_ci * @stagemodelonly 2397c804472Sopenharmony_ci * @crossplatform 2407c804472Sopenharmony_ci * @since 10 2417c804472Sopenharmony_ci */ 2427c804472Sopenharmony_ci /** 2437c804472Sopenharmony_ci * Requests certain permissions from the user. 2447c804472Sopenharmony_ci * 2457c804472Sopenharmony_ci * @param { Context } context - The context that initiates the permission request. 2467c804472Sopenharmony_ci * @param { Array<Permissions> } permissionList - Indicates the list of permissions to be requested. This parameter cannot be null or empty. 2477c804472Sopenharmony_ci * @returns { Promise<PermissionRequestResult> } Returns result of requesting permissions. 2487c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 2497c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The context is invalid when it does not belong to the application itself. 2507c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 2517c804472Sopenharmony_ci * @stagemodelonly 2527c804472Sopenharmony_ci * @crossplatform 2537c804472Sopenharmony_ci * @atomicservice 2547c804472Sopenharmony_ci * @since 11 2557c804472Sopenharmony_ci */ 2567c804472Sopenharmony_ci requestPermissionsFromUser(context: Context, permissionList: Array<Permissions>): Promise<PermissionRequestResult>; 2577c804472Sopenharmony_ci 2587c804472Sopenharmony_ci /** 2597c804472Sopenharmony_ci * Grants a specified user_grant permission to the given application. 2607c804472Sopenharmony_ci * 2617c804472Sopenharmony_ci * @permission ohos.permission.GRANT_SENSITIVE_PERMISSIONS 2627c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 2637c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be granted. 2647c804472Sopenharmony_ci * @param { number } permissionFlags - Flags of permission state. 2657c804472Sopenharmony_ci * @returns { Promise<void> } The promise returned by the function. 2667c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 2677c804472Sopenharmony_ci * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.GRANT_SENSITIVE_PERMISSIONS". 2687c804472Sopenharmony_ci * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. 2697c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256, 2707c804472Sopenharmony_ci * or the flags value is invalid. 2717c804472Sopenharmony_ci * @throws { BusinessError } 12100002 - The specified tokenID does not exist. 2727c804472Sopenharmony_ci * @throws { BusinessError } 12100003 - The specified permission does not exist. 2737c804472Sopenharmony_ci * @throws { BusinessError } 12100006 - The application specified by the tokenID is not allowed to be granted with the specified permission. 2747c804472Sopenharmony_ci * Either the application is a sandbox or the tokenID is from a remote device. 2757c804472Sopenharmony_ci * @throws { BusinessError } 12100007 - Service is abnormal. 2767c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 2777c804472Sopenharmony_ci * @systemapi 2787c804472Sopenharmony_ci * @since 8 2797c804472Sopenharmony_ci */ 2807c804472Sopenharmony_ci grantUserGrantedPermission(tokenID: number, permissionName: Permissions, permissionFlags: number): Promise<void>; 2817c804472Sopenharmony_ci 2827c804472Sopenharmony_ci /** 2837c804472Sopenharmony_ci * Grants a specified user_grant permission to the given application. 2847c804472Sopenharmony_ci * 2857c804472Sopenharmony_ci * @permission ohos.permission.GRANT_SENSITIVE_PERMISSIONS 2867c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 2877c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be granted. 2887c804472Sopenharmony_ci * @param { number } permissionFlags - Flags of permission state. 2897c804472Sopenharmony_ci * @param { AsyncCallback<void> } callback - Asynchronous callback interface. 2907c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 2917c804472Sopenharmony_ci * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.GRANT_SENSITIVE_PERMISSIONS". 2927c804472Sopenharmony_ci * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. 2937c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256, 2947c804472Sopenharmony_ci * or the flags value is invalid. 2957c804472Sopenharmony_ci * @throws { BusinessError } 12100002 - The specified tokenID does not exist. 2967c804472Sopenharmony_ci * @throws { BusinessError } 12100003 - The specified permission does not exist. 2977c804472Sopenharmony_ci * @throws { BusinessError } 12100006 - The application specified by the tokenID is not allowed to be granted with the specified permission. 2987c804472Sopenharmony_ci * Either the application is a sandbox or the tokenID is from a remote device. 2997c804472Sopenharmony_ci * @throws { BusinessError } 12100007 - Service is abnormal. 3007c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 3017c804472Sopenharmony_ci * @systemapi 3027c804472Sopenharmony_ci * @since 8 3037c804472Sopenharmony_ci */ 3047c804472Sopenharmony_ci grantUserGrantedPermission( 3057c804472Sopenharmony_ci tokenID: number, 3067c804472Sopenharmony_ci permissionName: Permissions, 3077c804472Sopenharmony_ci permissionFlags: number, 3087c804472Sopenharmony_ci callback: AsyncCallback<void> 3097c804472Sopenharmony_ci ): void; 3107c804472Sopenharmony_ci 3117c804472Sopenharmony_ci /** 3127c804472Sopenharmony_ci * Revoke a specified user_grant permission to the given application. 3137c804472Sopenharmony_ci * 3147c804472Sopenharmony_ci * @permission ohos.permission.REVOKE_SENSITIVE_PERMISSIONS 3157c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 3167c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be revoked. 3177c804472Sopenharmony_ci * @param { number } permissionFlags - Flags of permission state. 3187c804472Sopenharmony_ci * @returns { Promise<void> } The promise returned by the function. 3197c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 3207c804472Sopenharmony_ci * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.REVOKE_SENSITIVE_PERMISSIONS". 3217c804472Sopenharmony_ci * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. 3227c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256, 3237c804472Sopenharmony_ci * or the flags value is invalid. 3247c804472Sopenharmony_ci * @throws { BusinessError } 12100002 - The specified tokenID does not exist. 3257c804472Sopenharmony_ci * @throws { BusinessError } 12100003 - The specified permission does not exist. 3267c804472Sopenharmony_ci * @throws { BusinessError } 12100006 - The application specified by the tokenID is not allowed to be revoked with the specified permission. 3277c804472Sopenharmony_ci * Either the application is a sandbox or the tokenID is from a remote device. 3287c804472Sopenharmony_ci * @throws { BusinessError } 12100007 - Service is abnormal. 3297c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 3307c804472Sopenharmony_ci * @systemapi 3317c804472Sopenharmony_ci * @since 8 3327c804472Sopenharmony_ci */ 3337c804472Sopenharmony_ci revokeUserGrantedPermission(tokenID: number, permissionName: Permissions, permissionFlags: number): Promise<void>; 3347c804472Sopenharmony_ci 3357c804472Sopenharmony_ci /** 3367c804472Sopenharmony_ci * Revoke a specified user_grant permission to the given application. 3377c804472Sopenharmony_ci * 3387c804472Sopenharmony_ci * @permission ohos.permission.REVOKE_SENSITIVE_PERMISSIONS 3397c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 3407c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be revoked. 3417c804472Sopenharmony_ci * @param { number } permissionFlags - Flags of permission state. 3427c804472Sopenharmony_ci * @param { AsyncCallback<void> } callback - Asynchronous callback interface. 3437c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 3447c804472Sopenharmony_ci * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.REVOKE_SENSITIVE_PERMISSIONS". 3457c804472Sopenharmony_ci * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. 3467c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256, 3477c804472Sopenharmony_ci * or the flags value is invalid. 3487c804472Sopenharmony_ci * @throws { BusinessError } 12100002 - The specified tokenID does not exist. 3497c804472Sopenharmony_ci * @throws { BusinessError } 12100003 - The specified permission does not exist. 3507c804472Sopenharmony_ci * @throws { BusinessError } 12100006 - The application specified by the tokenID is not allowed to be revoked with the specified permission. 3517c804472Sopenharmony_ci * Either the application is a sandbox or the tokenID is from a remote device. 3527c804472Sopenharmony_ci * @throws { BusinessError } 12100007 - Service is abnormal. 3537c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 3547c804472Sopenharmony_ci * @systemapi 3557c804472Sopenharmony_ci * @since 8 3567c804472Sopenharmony_ci */ 3577c804472Sopenharmony_ci revokeUserGrantedPermission( 3587c804472Sopenharmony_ci tokenID: number, 3597c804472Sopenharmony_ci permissionName: Permissions, 3607c804472Sopenharmony_ci permissionFlags: number, 3617c804472Sopenharmony_ci callback: AsyncCallback<void> 3627c804472Sopenharmony_ci ): void; 3637c804472Sopenharmony_ci 3647c804472Sopenharmony_ci /** 3657c804472Sopenharmony_ci * Queries specified permission flags of the given application. 3667c804472Sopenharmony_ci * 3677c804472Sopenharmony_ci * @permission ohos.permission.GET_SENSITIVE_PERMISSIONS or ohos.permission.GRANT_SENSITIVE_PERMISSIONS or ohos.permission.REVOKE_SENSITIVE_PERMISSIONS 3687c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 3697c804472Sopenharmony_ci * @param { Permissions } permissionName - Name of the permission to be get. 3707c804472Sopenharmony_ci * @returns { Promise<number> } Return permission flags. 3717c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 3727c804472Sopenharmony_ci * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission specified below. 3737c804472Sopenharmony_ci * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. 3747c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256. 3757c804472Sopenharmony_ci * @throws { BusinessError } 12100002 - The specified tokenID does not exist. 3767c804472Sopenharmony_ci * @throws { BusinessError } 12100003 - The specified permission does not exist. 3777c804472Sopenharmony_ci * @throws { BusinessError } 12100006 - The operation is not allowed. Either the application is a sandbox or the tokenID is from a remote device. 3787c804472Sopenharmony_ci * @throws { BusinessError } 12100007 - Service is abnormal. 3797c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 3807c804472Sopenharmony_ci * @systemapi 3817c804472Sopenharmony_ci * @since 8 3827c804472Sopenharmony_ci */ 3837c804472Sopenharmony_ci getPermissionFlags(tokenID: number, permissionName: Permissions): Promise<number>; 3847c804472Sopenharmony_ci 3857c804472Sopenharmony_ci /** 3867c804472Sopenharmony_ci * Queries permission management version. 3877c804472Sopenharmony_ci * 3887c804472Sopenharmony_ci * @returns { Promise<number> } Return permission version. 3897c804472Sopenharmony_ci * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. 3907c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 3917c804472Sopenharmony_ci * @systemapi 3927c804472Sopenharmony_ci * @since 9 3937c804472Sopenharmony_ci */ 3947c804472Sopenharmony_ci getVersion(): Promise<number>; 3957c804472Sopenharmony_ci 3967c804472Sopenharmony_ci /** 3977c804472Sopenharmony_ci * Queries permissions status of the given application. 3987c804472Sopenharmony_ci * 3997c804472Sopenharmony_ci * @permission ohos.permission.GET_SENSITIVE_PERMISSIONS 4007c804472Sopenharmony_ci * @param { number } tokenID - Token ID of the application. 4017c804472Sopenharmony_ci * @param { Array<Permissions> } permissionList - Indicates the list of permissions to be queried. This parameter cannot be null or empty. 4027c804472Sopenharmony_ci * @returns { Promise<Array<PermissionStatus>> } Return permission status. 4037c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 4047c804472Sopenharmony_ci * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.GET_SENSITIVE_PERMISSIONS". 4057c804472Sopenharmony_ci * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. 4067c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the permissionList is empty. 4077c804472Sopenharmony_ci * @throws { BusinessError } 12100002 - The specified tokenID does not exist. 4087c804472Sopenharmony_ci * @throws { BusinessError } 12100007 - Service is abnormal. 4097c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 4107c804472Sopenharmony_ci * @systemapi 4117c804472Sopenharmony_ci * @since 12 4127c804472Sopenharmony_ci */ 4137c804472Sopenharmony_ci getPermissionsStatus(tokenID: number, permissionList: Array<Permissions>): Promise<Array<PermissionStatus>>; 4147c804472Sopenharmony_ci 4157c804472Sopenharmony_ci /** 4167c804472Sopenharmony_ci * Registers a permission state callback so that the application can be notified upon specified permission state of specified applications changes. 4177c804472Sopenharmony_ci * 4187c804472Sopenharmony_ci * @permission ohos.permission.GET_SENSITIVE_PERMISSIONS 4197c804472Sopenharmony_ci * @param { 'permissionStateChange' } type - Event type. 4207c804472Sopenharmony_ci * @param { Array<number> } tokenIDList - A list of permissions that specify the permissions to be listened on. The value in the list can be: 4217c804472Sopenharmony_ci * <ul> 4227c804472Sopenharmony_ci * <li>{@code empty} - Indicates that the application can be notified if the specified permission state of any applications changes. 4237c804472Sopenharmony_ci * </li> 4247c804472Sopenharmony_ci * <li>{@code non-empty} - Indicates that the application can only be notified if the specified 4257c804472Sopenharmony_ci * permission state of the specified applications change. 4267c804472Sopenharmony_ci * </li> 4277c804472Sopenharmony_ci * </ul> 4287c804472Sopenharmony_ci * @param { Array<Permissions> } permissionList - A list of permissions that specify the permissions to be listened on. The value in the list can be: 4297c804472Sopenharmony_ci * <ul> 4307c804472Sopenharmony_ci * <li>{@code empty} - Indicates that the application can be notified if any permission state of the specified applications changes. 4317c804472Sopenharmony_ci * </li> 4327c804472Sopenharmony_ci * <li>{@code non-empty} - Indicates that the application can only be notified if the specified 4337c804472Sopenharmony_ci * permission state of the specified applications changes. 4347c804472Sopenharmony_ci * </li> 4357c804472Sopenharmony_ci * </ul> 4367c804472Sopenharmony_ci * @param { Callback<PermissionStateChangeInfo> } callback - Callback for the result from registering permissions. 4377c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 4387c804472Sopenharmony_ci * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.GET_SENSITIVE_PERMISSIONS". 4397c804472Sopenharmony_ci * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. 4407c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenID is 0, or the string size of permissionName is larger than 256. 4417c804472Sopenharmony_ci * @throws { BusinessError } 12100004 - The interface is called repeatedly with the same input. 4427c804472Sopenharmony_ci * @throws { BusinessError } 12100005 - The registration time has exceeded the limitation. 4437c804472Sopenharmony_ci * @throws { BusinessError } 12100007 - Service is abnormal. 4447c804472Sopenharmony_ci * @throws { BusinessError } 12100008 - Out of memory. 4457c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 4467c804472Sopenharmony_ci * @systemapi 4477c804472Sopenharmony_ci * @since 9 4487c804472Sopenharmony_ci */ 4497c804472Sopenharmony_ci on( 4507c804472Sopenharmony_ci type: 'permissionStateChange', 4517c804472Sopenharmony_ci tokenIDList: Array<number>, 4527c804472Sopenharmony_ci permissionList: Array<Permissions>, 4537c804472Sopenharmony_ci callback: Callback<PermissionStateChangeInfo> 4547c804472Sopenharmony_ci ): void; 4557c804472Sopenharmony_ci 4567c804472Sopenharmony_ci /** 4577c804472Sopenharmony_ci * Unregisters a permission state callback so that the specified applications cannot be notified upon specified permissions state changes anymore. 4587c804472Sopenharmony_ci * 4597c804472Sopenharmony_ci * @permission ohos.permission.GET_SENSITIVE_PERMISSIONS 4607c804472Sopenharmony_ci * @param { 'permissionStateChange' } type - Event type. 4617c804472Sopenharmony_ci * @param { Array<number> } tokenIDList - A list of permissions that specify the permissions to be listened on. 4627c804472Sopenharmony_ci * It should correspond to the value registered by function of "on", whose type is "permissionStateChange". 4637c804472Sopenharmony_ci * @param { Array<Permissions> } permissionList - A list of permissions that specify the permissions to be listened on. 4647c804472Sopenharmony_ci * It should correspond to the value registered by function of "on", whose type is "permissionStateChange". 4657c804472Sopenharmony_ci * @param { Callback<PermissionStateChangeInfo> } callback - Callback for the result from unregistering permissions. 4667c804472Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 4677c804472Sopenharmony_ci * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.GET_SENSITIVE_PERMISSIONS". 4687c804472Sopenharmony_ci * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. 4697c804472Sopenharmony_ci * @throws { BusinessError } 12100001 - The parameter is invalid. The tokenIDs or permissionNames in the list are all invalid. 4707c804472Sopenharmony_ci * @throws { BusinessError } 12100004 - The interface is not used together with "on". 4717c804472Sopenharmony_ci * @throws { BusinessError } 12100007 - Service is abnormal. 4727c804472Sopenharmony_ci * @throws { BusinessError } 12100008 - Out of memory. 4737c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 4747c804472Sopenharmony_ci * @systemapi 4757c804472Sopenharmony_ci * @since 9 4767c804472Sopenharmony_ci */ 4777c804472Sopenharmony_ci off( 4787c804472Sopenharmony_ci type: 'permissionStateChange', 4797c804472Sopenharmony_ci tokenIDList: Array<number>, 4807c804472Sopenharmony_ci permissionList: Array<Permissions>, 4817c804472Sopenharmony_ci callback?: Callback<PermissionStateChangeInfo> 4827c804472Sopenharmony_ci ): void; 4837c804472Sopenharmony_ci } 4847c804472Sopenharmony_ci 4857c804472Sopenharmony_ci /** 4867c804472Sopenharmony_ci * GrantStatus. 4877c804472Sopenharmony_ci * 4887c804472Sopenharmony_ci * @enum { number } 4897c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 4907c804472Sopenharmony_ci * @since 8 4917c804472Sopenharmony_ci */ 4927c804472Sopenharmony_ci /** 4937c804472Sopenharmony_ci * GrantStatus. 4947c804472Sopenharmony_ci * 4957c804472Sopenharmony_ci * @enum { number } 4967c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 4977c804472Sopenharmony_ci * @crossplatform 4987c804472Sopenharmony_ci * @since 10 4997c804472Sopenharmony_ci */ 5007c804472Sopenharmony_ci /** 5017c804472Sopenharmony_ci * GrantStatus. 5027c804472Sopenharmony_ci * 5037c804472Sopenharmony_ci * @enum { number } 5047c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5057c804472Sopenharmony_ci * @crossplatform 5067c804472Sopenharmony_ci * @atomicservice 5077c804472Sopenharmony_ci * @since 11 5087c804472Sopenharmony_ci */ 5097c804472Sopenharmony_ci export enum GrantStatus { 5107c804472Sopenharmony_ci /** 5117c804472Sopenharmony_ci * access_token permission check fail 5127c804472Sopenharmony_ci * 5137c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5147c804472Sopenharmony_ci * @since 8 5157c804472Sopenharmony_ci */ 5167c804472Sopenharmony_ci /** 5177c804472Sopenharmony_ci * access_token permission check fail 5187c804472Sopenharmony_ci * 5197c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5207c804472Sopenharmony_ci * @crossplatform 5217c804472Sopenharmony_ci * @since 10 5227c804472Sopenharmony_ci */ 5237c804472Sopenharmony_ci /** 5247c804472Sopenharmony_ci * access_token permission check fail 5257c804472Sopenharmony_ci * 5267c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5277c804472Sopenharmony_ci * @crossplatform 5287c804472Sopenharmony_ci * @atomicservice 5297c804472Sopenharmony_ci * @since 11 5307c804472Sopenharmony_ci */ 5317c804472Sopenharmony_ci PERMISSION_DENIED = -1, 5327c804472Sopenharmony_ci /** 5337c804472Sopenharmony_ci * access_token permission check success 5347c804472Sopenharmony_ci * 5357c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5367c804472Sopenharmony_ci * @since 8 5377c804472Sopenharmony_ci */ 5387c804472Sopenharmony_ci /** 5397c804472Sopenharmony_ci * access_token permission check success 5407c804472Sopenharmony_ci * 5417c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5427c804472Sopenharmony_ci * @crossplatform 5437c804472Sopenharmony_ci * @since 10 5447c804472Sopenharmony_ci */ 5457c804472Sopenharmony_ci /** 5467c804472Sopenharmony_ci * access_token permission check success 5477c804472Sopenharmony_ci * 5487c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5497c804472Sopenharmony_ci * @crossplatform 5507c804472Sopenharmony_ci * @atomicservice 5517c804472Sopenharmony_ci * @since 11 5527c804472Sopenharmony_ci */ 5537c804472Sopenharmony_ci PERMISSION_GRANTED = 0 5547c804472Sopenharmony_ci } 5557c804472Sopenharmony_ci 5567c804472Sopenharmony_ci /** 5577c804472Sopenharmony_ci * Enum for permission state change type. 5587c804472Sopenharmony_ci * 5597c804472Sopenharmony_ci * @enum { number } 5607c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5617c804472Sopenharmony_ci * @systemapi 5627c804472Sopenharmony_ci * @since 9 5637c804472Sopenharmony_ci */ 5647c804472Sopenharmony_ci export enum PermissionStateChangeType { 5657c804472Sopenharmony_ci /** 5667c804472Sopenharmony_ci * A granted user_grant permission is revoked. 5677c804472Sopenharmony_ci * 5687c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5697c804472Sopenharmony_ci * @systemapi 5707c804472Sopenharmony_ci * @since 9 5717c804472Sopenharmony_ci */ 5727c804472Sopenharmony_ci PERMISSION_REVOKED_OPER = 0, 5737c804472Sopenharmony_ci /** 5747c804472Sopenharmony_ci * A user_grant permission is granted. 5757c804472Sopenharmony_ci * 5767c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5777c804472Sopenharmony_ci * @systemapi 5787c804472Sopenharmony_ci * @since 9 5797c804472Sopenharmony_ci */ 5807c804472Sopenharmony_ci PERMISSION_GRANTED_OPER = 1 5817c804472Sopenharmony_ci } 5827c804472Sopenharmony_ci 5837c804472Sopenharmony_ci /** 5847c804472Sopenharmony_ci * Indicates the information of permission state change. 5857c804472Sopenharmony_ci * 5867c804472Sopenharmony_ci * @interface PermissionStateChangeInfo 5877c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5887c804472Sopenharmony_ci * @systemapi 5897c804472Sopenharmony_ci * @since 9 5907c804472Sopenharmony_ci * @name PermissionStateChangeInfo 5917c804472Sopenharmony_ci */ 5927c804472Sopenharmony_ci interface PermissionStateChangeInfo { 5937c804472Sopenharmony_ci /** 5947c804472Sopenharmony_ci * Indicates the permission state change type. 5957c804472Sopenharmony_ci * 5967c804472Sopenharmony_ci * @type { PermissionStateChangeType } 5977c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 5987c804472Sopenharmony_ci * @systemapi 5997c804472Sopenharmony_ci * @since 9 6007c804472Sopenharmony_ci */ 6017c804472Sopenharmony_ci change: PermissionStateChangeType; 6027c804472Sopenharmony_ci 6037c804472Sopenharmony_ci /** 6047c804472Sopenharmony_ci * Indicates the application whose permission state has been changed. 6057c804472Sopenharmony_ci * 6067c804472Sopenharmony_ci * @type { number } 6077c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 6087c804472Sopenharmony_ci * @systemapi 6097c804472Sopenharmony_ci * @since 9 6107c804472Sopenharmony_ci */ 6117c804472Sopenharmony_ci tokenID: number; 6127c804472Sopenharmony_ci 6137c804472Sopenharmony_ci /** 6147c804472Sopenharmony_ci * Indicates the permission whose state has been changed. 6157c804472Sopenharmony_ci * 6167c804472Sopenharmony_ci * @type { Permissions } 6177c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 6187c804472Sopenharmony_ci * @systemapi 6197c804472Sopenharmony_ci * @since 9 6207c804472Sopenharmony_ci */ 6217c804472Sopenharmony_ci permissionName: Permissions; 6227c804472Sopenharmony_ci } 6237c804472Sopenharmony_ci 6247c804472Sopenharmony_ci /** 6257c804472Sopenharmony_ci * PermissionStatus. 6267c804472Sopenharmony_ci * 6277c804472Sopenharmony_ci * @enum { number } 6287c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 6297c804472Sopenharmony_ci * @systemapi 6307c804472Sopenharmony_ci * @since 12 6317c804472Sopenharmony_ci */ 6327c804472Sopenharmony_ci export enum PermissionStatus { 6337c804472Sopenharmony_ci /** 6347c804472Sopenharmony_ci * permission has been denied, only can change it in settings 6357c804472Sopenharmony_ci * 6367c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 6377c804472Sopenharmony_ci * @systemapi 6387c804472Sopenharmony_ci * @since 12 6397c804472Sopenharmony_ci */ 6407c804472Sopenharmony_ci DENIED = -1, 6417c804472Sopenharmony_ci /** 6427c804472Sopenharmony_ci * permission has been granted 6437c804472Sopenharmony_ci * 6447c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 6457c804472Sopenharmony_ci * @systemapi 6467c804472Sopenharmony_ci * @since 12 6477c804472Sopenharmony_ci */ 6487c804472Sopenharmony_ci GRANTED = 0, 6497c804472Sopenharmony_ci /** 6507c804472Sopenharmony_ci * permission is not determined 6517c804472Sopenharmony_ci * 6527c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 6537c804472Sopenharmony_ci * @systemapi 6547c804472Sopenharmony_ci * @since 12 6557c804472Sopenharmony_ci */ 6567c804472Sopenharmony_ci NOT_DETERMINED = 1, 6577c804472Sopenharmony_ci /** 6587c804472Sopenharmony_ci * permission is invalid 6597c804472Sopenharmony_ci * 6607c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 6617c804472Sopenharmony_ci * @systemapi 6627c804472Sopenharmony_ci * @since 12 6637c804472Sopenharmony_ci */ 6647c804472Sopenharmony_ci INVALID = 2, 6657c804472Sopenharmony_ci /** 6667c804472Sopenharmony_ci * permission has been restricted 6677c804472Sopenharmony_ci * 6687c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 6697c804472Sopenharmony_ci * @systemapi 6707c804472Sopenharmony_ci * @since 12 6717c804472Sopenharmony_ci */ 6727c804472Sopenharmony_ci RESTRICTED = 3 6737c804472Sopenharmony_ci } 6747c804472Sopenharmony_ci} 6757c804472Sopenharmony_ci 6767c804472Sopenharmony_ciexport default abilityAccessCtrl; 6777c804472Sopenharmony_ciexport { Permissions }; 6787c804472Sopenharmony_ci/** 6797c804472Sopenharmony_ci * PermissionRequestResult interface. 6807c804472Sopenharmony_ci * 6817c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 6827c804472Sopenharmony_ci * @stagemodelonly 6837c804472Sopenharmony_ci * @crossplatform 6847c804472Sopenharmony_ci * @since 10 6857c804472Sopenharmony_ci */ 6867c804472Sopenharmony_ci/** 6877c804472Sopenharmony_ci * PermissionRequestResult interface. 6887c804472Sopenharmony_ci * 6897c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 6907c804472Sopenharmony_ci * @stagemodelonly 6917c804472Sopenharmony_ci * @crossplatform 6927c804472Sopenharmony_ci * @atomicservice 6937c804472Sopenharmony_ci * @since 11 6947c804472Sopenharmony_ci */ 6957c804472Sopenharmony_ciexport type PermissionRequestResult = _PermissionRequestResult; 6967c804472Sopenharmony_ci/** 6977c804472Sopenharmony_ci * Context interface. 6987c804472Sopenharmony_ci * 6997c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 7007c804472Sopenharmony_ci * @stagemodelonly 7017c804472Sopenharmony_ci * @crossplatform 7027c804472Sopenharmony_ci * @since 10 7037c804472Sopenharmony_ci */ 7047c804472Sopenharmony_ci/** 7057c804472Sopenharmony_ci * Context interface. 7067c804472Sopenharmony_ci * 7077c804472Sopenharmony_ci * @syscap SystemCapability.Security.AccessToken 7087c804472Sopenharmony_ci * @stagemodelonly 7097c804472Sopenharmony_ci * @crossplatform 7107c804472Sopenharmony_ci * @atomicservice 7117c804472Sopenharmony_ci * @since 11 7127c804472Sopenharmony_ci */ 7137c804472Sopenharmony_ciexport type Context = _Context; 714