• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2022-2024 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16/**
17 * @file
18 * @kit AbilityKit
19 */
20
21import { AsyncCallback } from './@ohos.base';
22import { Metadata as _Metadata } from './bundleManager/Metadata';
23import { ElementName as _ElementName } from './bundleManager/ElementName';
24import Want from './@ohos.app.ability.Want';
25/*** if arkts 1.1 */
26import type { ApplicationInfo as _ApplicationInfo, ModuleMetadata as _ModuleMetadata,
27  PreinstalledApplicationInfo as _PreinstalledApplicationInfo } from './bundleManager/ApplicationInfo';
28import { PermissionDef as _PermissionDef } from './bundleManager/PermissionDef';
29import { PluginBundleInfo as _PluginBundleInfo, PluginModuleInfo as _PluginModuleInfo} from './bundleManager/PluginBundleInfo';
30import { SharedBundleInfo as _SharedBundleInfo } from './bundleManager/SharedBundleInfo';
31import type { RecoverableApplicationInfo as _RecoverableApplicationInfo } from './bundleManager/RecoverableApplicationInfo';
32import * as _AbilityInfo from './bundleManager/AbilityInfo';
33import * as _AppProvisionInfo from './bundleManager/AppProvisionInfo';
34import * as _BundleInfo from './bundleManager/BundleInfo';
35import * as _HapModuleInfo from './bundleManager/HapModuleInfo';
36import * as _ExtensionAbilityInfo from './bundleManager/ExtensionAbilityInfo';
37import * as _Skill from './bundleManager/Skill';
38/*** endif */
39/*** if arkts 1.2 */
40import { ApplicationInfo as _ApplicationInfo, ModuleMetadata as _ModuleMetadata,
41  PreinstalledApplicationInfo as _PreinstalledApplicationInfo } from './bundleManager/ApplicationInfo';
42import { AbilityInfo as _AbilityInfo, WindowSize as _WindowSize } from './bundleManager/AbilityInfo';
43import { BundleInfo as _BundleInfo, UsedScene as _UsedScene, ReqPermissionDetail as _ReqPermissionDetail,
44  SignatureInfo as _SignatureInfo, AppCloneIdentity as _AppCloneIdentity } from './bundleManager/BundleInfo';
45import { HapModuleInfo as _HapModuleInfo, PreloadItem as _PreloadItem, Dependency as _Dependency,
46  RouterItem as _RouterItem, DataItem as _DataItem } from './bundleManager/HapModuleInfo';
47import { ExtensionAbilityInfo as _ExtensionAbilityInfo } from './bundleManager/ExtensionAbilityInfo';
48import { Skill as _Skill, SkillUri as _SkillUri } from './bundleManager/Skill';
49/*** endif */
50/**
51 * This module is used to obtain package information of various applications installed on the current device.
52 *
53 * @namespace bundleManager
54 * @syscap SystemCapability.BundleManager.BundleFramework.Core
55 * @since 9
56 */
57/**
58 * This module is used to obtain package information of various applications installed on the current device.
59 *
60 * @namespace bundleManager
61 * @syscap SystemCapability.BundleManager.BundleFramework.Core
62 * @atomicservice
63 * @since 11
64 */
65/**
66 * This module is used to obtain package information of various applications installed on the current device.
67 *
68 * @namespace bundleManager
69 * @syscap SystemCapability.BundleManager.BundleFramework.Core
70 * @crossplatform
71 * @atomicservice
72 * @since arkts {'1.1':'12', '1.2':'20'}
73 * @arkts 1.1&1.2
74 */
75declare namespace bundleManager {
76  /**
77   * Used to query the enumeration value of bundleInfo. Multiple values can be passed in the form.
78   *
79   * @enum { number }
80   * @syscap SystemCapability.BundleManager.BundleFramework.Core
81   * @since 9
82   */
83  /**
84   * Used to query the enumeration value of bundleInfo. Multiple values can be passed in the form.
85   * Multiple value input, such as GET_BUNDLE_INFO_DEFAULT | GET_BUNDLE_INFO_WITH_APPLICATION.
86   *
87   * @enum { number }
88   * @syscap SystemCapability.BundleManager.BundleFramework.Core
89   * @atomicservice
90   * @since 11
91   */
92  /**
93   * Used to query the enumeration value of bundleInfo. Multiple values can be passed in the form.
94   * Multiple value input, such as GET_BUNDLE_INFO_DEFAULT | GET_BUNDLE_INFO_WITH_APPLICATION.
95   *
96   * @enum { number }
97   * @syscap SystemCapability.BundleManager.BundleFramework.Core
98   * @crossplatform
99   * @atomicservice
100   * @since 20
101   * @arkts 1.1&1.2
102   */
103  enum BundleFlag {
104    /**
105     * Used to obtain the default bundleInfo. The obtained bundleInfo does not contain information of
106     * signatureInfo, applicationInfo, hapModuleInfo, ability, extensionAbility and permission.
107     *
108     * @syscap SystemCapability.BundleManager.BundleFramework.Core
109     * @since 9
110     */
111    /**
112     * Used to obtain the default bundleInfo. The obtained bundleInfo does not contain information of
113     * signatureInfo, applicationInfo, hapModuleInfo, ability, extensionAbility and permission.
114     *
115     * @syscap SystemCapability.BundleManager.BundleFramework.Core
116     * @atomicservice
117     * @since 11
118     */
119    /**
120     * Used to obtain the default bundleInfo. The obtained bundleInfo does not contain information of
121     * signatureInfo, applicationInfo, hapModuleInfo, ability, extensionAbility and permission.
122     *
123     * @syscap SystemCapability.BundleManager.BundleFramework.Core
124     * @crossplatform
125     * @atomicservice
126     * @since 20
127     * @arkts 1.1&1.2
128     */
129    GET_BUNDLE_INFO_DEFAULT = 0x00000000,
130    /**
131     * Used to obtain the bundleInfo containing applicationInfo. The obtained bundleInfo does not
132     * contain the information of signatureInfo, hapModuleInfo, ability, extensionAbility and permission.
133     *
134     * @syscap SystemCapability.BundleManager.BundleFramework.Core
135     * @since 9
136     */
137    /**
138     * Used to obtain the bundleInfo containing applicationInfo. The obtained bundleInfo does not
139     * contain the information of signatureInfo, hapModuleInfo, ability, extensionAbility and permission.
140     *
141     * @syscap SystemCapability.BundleManager.BundleFramework.Core
142     * @atomicservice
143     * @since 11
144     */
145    /**
146     * Used to obtain the bundleInfo containing applicationInfo. The obtained bundleInfo does not
147     * contain the information of signatureInfo, hapModuleInfo, ability, extensionAbility and permission.
148     *
149     * @syscap SystemCapability.BundleManager.BundleFramework.Core
150     * @crossplatform
151     * @atomicservice
152     * @since 20
153     * @arkts 1.1&1.2
154     */
155    GET_BUNDLE_INFO_WITH_APPLICATION = 0x00000001,
156    /**
157     * Used to obtain the bundleInfo containing hapModuleInfo. The obtained bundleInfo does not
158     * contain the information of signatureInfo, applicationInfo, ability, extensionAbility and permission.
159     *
160     * @syscap SystemCapability.BundleManager.BundleFramework.Core
161     * @since 9
162     */
163    /**
164     * Used to obtain the bundleInfo containing hapModuleInfo. The obtained bundleInfo does not
165     * contain the information of signatureInfo, applicationInfo, ability, extensionAbility and permission.
166     *
167     * @syscap SystemCapability.BundleManager.BundleFramework.Core
168     * @atomicservice
169     * @since 11
170     */
171    /**
172     * Used to obtain the bundleInfo containing hapModuleInfo. The obtained bundleInfo does not
173     * contain the information of signatureInfo, applicationInfo, ability, extensionAbility and permission.
174     *
175     * @syscap SystemCapability.BundleManager.BundleFramework.Core
176     * @crossplatform
177     * @atomicservice
178     * @since 20
179     * @arkts 1.1&1.2
180     */
181    GET_BUNDLE_INFO_WITH_HAP_MODULE = 0x00000002,
182    /**
183     * Used to obtain the bundleInfo containing ability. The obtained bundleInfo does not
184     * contain the information of signatureInfo, applicationInfo, extensionAbility and permission.
185     * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE,
186     * such as GET_BUNDLE_INFO_WITH_ABILITY | GET_BUNDLE_INFO_WITH_HAP_MODULE.
187     *
188     * @syscap SystemCapability.BundleManager.BundleFramework.Core
189     * @since 9
190     */
191    /**
192     * Used to obtain the bundleInfo containing ability. The obtained bundleInfo does not
193     * contain the information of signatureInfo, applicationInfo, extensionAbility and permission.
194     * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE,
195     * such as GET_BUNDLE_INFO_WITH_ABILITY | GET_BUNDLE_INFO_WITH_HAP_MODULE.
196     *
197     * @syscap SystemCapability.BundleManager.BundleFramework.Core
198     * @atomicservice
199     * @since 11
200     */
201    /**
202     * Used to obtain the bundleInfo containing ability. The obtained bundleInfo does not
203     * contain the information of signatureInfo, applicationInfo, extensionAbility and permission.
204     * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE.
205     * such as GET_BUNDLE_INFO_WITH_ABILITY | GET_BUNDLE_INFO_WITH_HAP_MODULE.
206     *
207     * @syscap SystemCapability.BundleManager.BundleFramework.Core
208     * @crossplatform
209     * @atomicservice
210     * @since 20
211     * @arkts 1.1&1.2
212     */
213    GET_BUNDLE_INFO_WITH_ABILITY = 0x00000004,
214    /**
215     * Used to obtain the bundleInfo containing extensionAbility. The obtained bundleInfo does not
216     * contain the information of signatureInfo, applicationInfo, ability and permission.
217     * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE,
218     * such as GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY | GET_BUNDLE_INFO_WITH_HAP_MODULE.
219     *
220     * @syscap SystemCapability.BundleManager.BundleFramework.Core
221     * @since 9
222     */
223    /**
224     * Used to obtain the bundleInfo containing extensionAbility. The obtained bundleInfo does not
225     * contain the information of signatureInfo, applicationInfo, ability and permission.
226     * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE,
227     * such as GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY | GET_BUNDLE_INFO_WITH_HAP_MODULE.
228     *
229     * @syscap SystemCapability.BundleManager.BundleFramework.Core
230     * @atomicservice
231     * @since arkts {'1.1':'11', '1.2':'20'}
232     * @arkts 1.1&1.2
233     */
234    GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY = 0x00000008,
235    /**
236     * Used to obtain the bundleInfo containing permission. The obtained bundleInfo does not
237     * contain the information of signatureInfo, applicationInfo, hapModuleInfo, extensionAbility and ability.
238     *
239     * @syscap SystemCapability.BundleManager.BundleFramework.Core
240     * @since 9
241     */
242    /**
243     * Used to obtain the bundleInfo containing permission. The obtained bundleInfo does not
244     * contain the information of signatureInfo, applicationInfo, hapModuleInfo, extensionAbility and ability.
245     *
246     * @syscap SystemCapability.BundleManager.BundleFramework.Core
247     * @atomicservice
248     * @since 11
249     */
250    /**
251     * Used to obtain the bundleInfo containing permission. The obtained bundleInfo does not
252     * contain the information of signatureInfo, applicationInfo, hapModuleInfo, extensionAbility and ability.
253     *
254     * @syscap SystemCapability.BundleManager.BundleFramework.Core
255     * @crossplatform
256     * @atomicservice
257     * @since 20
258     * @arkts 1.1&1.2
259     */
260    GET_BUNDLE_INFO_WITH_REQUESTED_PERMISSION = 0x00000010,
261    /**
262     * Used to obtain the metadata contained in applicationInfo, moduleInfo and abilityInfo.
263     * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_APPLICATION,
264     * GET_BUNDLE_INFO_WITH_HAP_MODULE, GET_BUNDLE_INFO_WITH_ABILITY, GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY.
265     *
266     * @syscap SystemCapability.BundleManager.BundleFramework.Core
267     * @since 9
268     */
269    /**
270     * Used to obtain the metadata contained in applicationInfo, moduleInfo, abilityInfo and extensionAbility.
271     * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_APPLICATION,
272     * GET_BUNDLE_INFO_WITH_HAP_MODULE, GET_BUNDLE_INFO_WITH_ABILITY, GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY,
273     * such as GET_BUNDLE_INFO_WITH_APPLICATION | GET_BUNDLE_INFO_WITH_METADATA
274     * or GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_ABILITY | GET_BUNDLE_INFO_WITH_METADATA
275     * or GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY | GET_BUNDLE_INFO_WITH_METADATA.
276     *
277     * @syscap SystemCapability.BundleManager.BundleFramework.Core
278     * @atomicservice
279     * @since 11
280     */
281    /**
282     * Used to obtain the metadata contained in applicationInfo, moduleInfo and abilityInfo.
283     * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_APPLICATION,
284     * GET_BUNDLE_INFO_WITH_HAP_MODULE, GET_BUNDLE_INFO_WITH_ABILITY, GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY,
285     * such as GET_BUNDLE_INFO_WITH_APPLICATION | GET_BUNDLE_INFO_WITH_METADATA
286     * or GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_ABILITY | GET_BUNDLE_INFO_WITH_METADATA
287     * or GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY | GET_BUNDLE_INFO_WITH_METADATA.
288     *
289     * @syscap SystemCapability.BundleManager.BundleFramework.Core
290     * @crossplatform
291     * @atomicservice
292     * @since 20
293     * @arkts 1.1&1.2
294     */
295    GET_BUNDLE_INFO_WITH_METADATA = 0x00000020,
296    /**
297     * Used to obtain the default bundleInfo containing disabled application and ability.
298     * The obtained bundleInfo does not contain information of signatureInfo, applicationInfo,
299     * hapModuleInfo, ability, extensionAbility and permission.
300     *
301     * @syscap SystemCapability.BundleManager.BundleFramework.Core
302     * @since 9
303     */
304    /**
305     * Used to obtain the default bundleInfo containing disabled application and ability.
306     * The obtained bundleInfo does not contain information of signatureInfo, applicationInfo,
307     * hapModuleInfo, ability, extensionAbility and permission.
308     *
309     * @syscap SystemCapability.BundleManager.BundleFramework.Core
310     * @atomicservice
311     * @since 11
312     */
313    /**
314     * Used to obtain the default bundleInfo containing disabled application and ability.
315     * The obtained bundleInfo does not contain information of signatureInfo, applicationInfo,
316     * hapModuleInfo, ability, extensionAbility and permission.
317     *
318     * @syscap SystemCapability.BundleManager.BundleFramework.Core
319     * @crossplatform
320     * @atomicservice
321     * @since 20
322     * @arkts 1.1&1.2
323     */
324    GET_BUNDLE_INFO_WITH_DISABLE = 0x00000040,
325    /**
326     * Used to obtain the bundleInfo containing signatureInfo. The obtained bundleInfo does not
327     * contain the information of applicationInfo, hapModuleInfo, extensionAbility, ability and permission.
328     *
329     * @syscap SystemCapability.BundleManager.BundleFramework.Core
330     * @since 9
331     */
332    /**
333     * Used to obtain the bundleInfo containing signatureInfo. The obtained bundleInfo does not
334     * contain the information of applicationInfo, hapModuleInfo, extensionAbility, ability and permission.
335     *
336     * @syscap SystemCapability.BundleManager.BundleFramework.Core
337     * @atomicservice
338     * @since 11
339     */
340    /**
341     * Used to obtain the bundleInfo containing signatureInfo. The obtained bundleInfo does not
342     * contain the information of applicationInfo, hapModuleInfo, extensionAbility, ability and permission.
343     *
344     * @syscap SystemCapability.BundleManager.BundleFramework.Core
345     * @crossplatform
346     * @atomicservice
347     * @since 20
348     * @arkts 1.1&1.2
349     */
350    GET_BUNDLE_INFO_WITH_SIGNATURE_INFO = 0x00000080,
351    /**
352     * Used to obtain the bundleInfo containing menu configuration in hapModuleInfo.
353     * The obtained bundleInfo does not contain the information of applicationInfo, extensionAbility, ability and permission.
354     * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE,
355     * such as GET_BUNDLE_INFO_WITH_MENU | GET_BUNDLE_INFO_WITH_HAP_MODULE
356     *
357     * @syscap SystemCapability.BundleManager.BundleFramework.Core
358     * @atomicservice
359     * @since arkts {'1.1':'11', '1.2':'20'}
360     * @arkts 1.1&1.2
361     */
362    GET_BUNDLE_INFO_WITH_MENU = 0x00000100,
363    /**
364     * Used to obtain the bundleInfo containing router map configuration in hapModuleInfo.
365     * The obtained bundleInfo does not contain the information of applicationInfo, extensionAbility, ability and permission.
366     * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE,
367     * such as GET_BUNDLE_INFO_WITH_ROUTER_MAP | GET_BUNDLE_INFO_WITH_HAP_MODULE
368     *
369     * @syscap SystemCapability.BundleManager.BundleFramework.Core
370     * @atomicservice
371     * @since arkts {'1.1':'12', '1.2':'20'}
372     * @arkts 1.1&1.2
373     */
374    GET_BUNDLE_INFO_WITH_ROUTER_MAP = 0x00000200,
375    /**
376     * Used to obtain the skillInfo contained in abilityInfo and extensionInfo.
377     * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE,
378     * GET_BUNDLE_INFO_WITH_ABILITY, GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY,
379     * such as GET_BUNDLE_INFO_WITH_SKILL | GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_ABILITY
380     * or GET_BUNDLE_INFO_WITH_SKILL | GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY
381     *
382     * @syscap SystemCapability.BundleManager.BundleFramework.Core
383     * @atomicservice
384     * @since arkts {'1.1':'12', '1.2':'20'}
385     * @arkts 1.1&1.2
386     */
387    GET_BUNDLE_INFO_WITH_SKILL = 0x00000800,
388    /**
389     * Used to return only the applications that have an icon displayed on the homescreen.
390     * Only effective on {@link getAllBundleInfo}
391     *
392     * @syscap SystemCapability.BundleManager.BundleFramework.Core
393     * @systemapi
394     * @since arkts {'1.1':'12', '1.2':'20'}
395     * @arkts 1.1&1.2
396     */
397    GET_BUNDLE_INFO_ONLY_WITH_LAUNCHER_ABILITY = 0x00001000,
398    /**
399     * Used to obtain the bundle information of an application installed by any user.
400     * It must be used together with GET_BUNDLE_INFO_WITH_APPLICATION.
401     * It is valid only in the {@link getBundleInfo} and {@link getAllBundleInfo} APIs.
402     *
403     * @syscap SystemCapability.BundleManager.BundleFramework.Core
404     * @systemapi
405     * @since arkts {'1.1':'12', '1.2':'20'}
406     * @arkts 1.1&1.2
407     */
408    GET_BUNDLE_INFO_OF_ANY_USER = 0x00002000,
409    /**
410     * Used to return all applications that exclude app clone information.
411     * Only effective on {@link getAllBundleInfo}
412     *
413     * @syscap SystemCapability.BundleManager.BundleFramework.Core
414     * @systemapi
415     * @since arkts {'1.1':'12', '1.2':'20'}
416     * @arkts 1.1&1.2
417     */
418    GET_BUNDLE_INFO_EXCLUDE_CLONE = 0x00004000,
419    /**
420     * Used to return applications that enable cloud file sync or cloud structured data sync.
421     * Only effective on {@link getAllBundleInfo}
422     *
423     * @syscap SystemCapability.BundleManager.BundleFramework.Core
424     * @systemapi
425     * @since 20
426     * @arkts 1.1&1.2
427     */
428    GET_BUNDLE_INFO_WITH_CLOUD_KIT = 0x00008000,
429  }
430
431  /**
432   * Used to query the enumeration value of applicationInfo. Multiple values can be passed in the form.
433   * Multiple value input, such as GET_APPLICATION_INFO_DEFAULT | GET_APPLICATION_INFO_WITH_PERMISSION.
434   *
435   * @enum { number }
436   * @syscap SystemCapability.BundleManager.BundleFramework.Core
437   * @systemapi
438   * @since arkts {'1.1':'9', '1.2':'20'}
439   * @arkts 1.1&1.2
440   */
441  enum ApplicationFlag {
442    /**
443     * Used to obtain the default applicationInfo. The obtained applicationInfo does not contain the information of
444     * permission and metadata.
445     *
446     * @syscap SystemCapability.BundleManager.BundleFramework.Core
447     * @systemapi
448     * @since arkts {'1.1':'9', '1.2':'20'}
449     * @arkts 1.1&1.2
450     */
451    GET_APPLICATION_INFO_DEFAULT = 0x00000000,
452    /**
453     * Used to obtain the applicationInfo containing permission.
454     *
455     * @syscap SystemCapability.BundleManager.BundleFramework.Core
456     * @systemapi
457     * @since arkts {'1.1':'9', '1.2':'20'}
458     * @arkts 1.1&1.2
459     */
460    GET_APPLICATION_INFO_WITH_PERMISSION = 0x00000001,
461    /**
462     * Used to obtain the applicationInfo containing metadata.
463     *
464     * @syscap SystemCapability.BundleManager.BundleFramework.Core
465     * @systemapi
466     * @since arkts {'1.1':'9', '1.2':'20'}
467     * @arkts 1.1&1.2
468     */
469    GET_APPLICATION_INFO_WITH_METADATA = 0x00000002,
470    /**
471     * Used to obtain the applicationInfo containing disabled application.
472     *
473     * @syscap SystemCapability.BundleManager.BundleFramework.Core
474     * @systemapi
475     * @since arkts {'1.1':'9', '1.2':'20'}
476     * @arkts 1.1&1.2
477     */
478    GET_APPLICATION_INFO_WITH_DISABLE = 0x00000004
479  }
480
481  /**
482   * Used to query the enumeration value of abilityInfo. Multiple values can be passed in the form.
483   *
484   * @enum { number }
485   * @syscap SystemCapability.BundleManager.BundleFramework.Core
486   * @systemapi
487   * @since 9
488   */
489  /**
490   * Used to query the enumeration value of abilityInfo. Multiple values can be passed in the form.
491   *
492   * @enum { number }
493   * @syscap SystemCapability.BundleManager.BundleFramework.Core
494   * @atomicservice
495   * @since 20
496   * @arkts 1.1&1.2
497   */
498  enum AbilityFlag {
499    /**
500     * Used to obtain the default abilityInfo. The obtained abilityInfo does not contain the information of
501     * permission, metadata and disabled abilityInfo.
502     *
503     * @syscap SystemCapability.BundleManager.BundleFramework.Core
504     * @systemapi
505     * @since 9
506     */
507    /**
508     * Used to obtain the default abilityInfo. The obtained abilityInfo does not contain the information of
509     * permission, metadata and disabled abilityInfo.
510     *
511     * @syscap SystemCapability.BundleManager.BundleFramework.Core
512     * @atomicservice
513     * @since 20
514     * @arkts 1.1&1.2
515     */
516    GET_ABILITY_INFO_DEFAULT = 0x00000000,
517    /**
518     * Used to obtain the abilityInfo containing permission.
519     *
520     * @syscap SystemCapability.BundleManager.BundleFramework.Core
521     * @systemapi
522     * @since 9
523     */
524    /**
525     * Used to obtain the abilityInfo containing permission.
526     *
527     * @syscap SystemCapability.BundleManager.BundleFramework.Core
528     * @atomicservice
529     * @since 20
530     * @arkts 1.1&1.2
531     */
532    GET_ABILITY_INFO_WITH_PERMISSION = 0x00000001,
533    /**
534     * Used to obtain the abilityInfo containing applicationInfo.
535     *
536     * @syscap SystemCapability.BundleManager.BundleFramework.Core
537     * @systemapi
538     * @since 9
539     */
540    /**
541     * Used to obtain the abilityInfo containing applicationInfo.
542     *
543     * @syscap SystemCapability.BundleManager.BundleFramework.Core
544     * @atomicservice
545     * @since 20
546     * @arkts 1.1&1.2
547     */
548    GET_ABILITY_INFO_WITH_APPLICATION = 0x00000002,
549    /**
550     * Used to obtain the abilityInfo containing metadata.
551     *
552     * @syscap SystemCapability.BundleManager.BundleFramework.Core
553     * @systemapi
554     * @since 9
555     */
556    /**
557     * Used to obtain the abilityInfo containing metadata.
558     *
559     * @syscap SystemCapability.BundleManager.BundleFramework.Core
560     * @atomicservice
561     * @since 20
562     * @arkts 1.1&1.2
563     */
564    GET_ABILITY_INFO_WITH_METADATA = 0x00000004,
565    /**
566     * Used to obtain the abilityInfo containing disabled abilityInfo.
567     *
568     * @syscap SystemCapability.BundleManager.BundleFramework.Core
569     * @systemapi
570     * @since 9
571     */
572    /**
573     * Used to obtain the abilityInfo containing disabled abilityInfo.
574     *
575     * @syscap SystemCapability.BundleManager.BundleFramework.Core
576     * @atomicservice
577     * @since 20
578     * @arkts 1.1&1.2
579     */
580    GET_ABILITY_INFO_WITH_DISABLE = 0x00000008,
581    /**
582     * Used to obtain the abilityInfo only for system app.
583     *
584     * @syscap SystemCapability.BundleManager.BundleFramework.Core
585     * @systemapi
586     * @since 9
587     */
588    /**
589     * Used to obtain the abilityInfo only for system app.
590     *
591     * @syscap SystemCapability.BundleManager.BundleFramework.Core
592     * @systemapi
593     * @since 11
594     */
595    /**
596     * Used to obtain the abilityInfo only for system app.
597     *
598     * @syscap SystemCapability.BundleManager.BundleFramework.Core
599     * @atomicservice
600     * @since 20
601     * @arkts 1.1&1.2
602     */
603    GET_ABILITY_INFO_ONLY_SYSTEM_APP = 0x00000010,
604    /**
605     * Used to obtain the abilityInfo with domain verification.
606     *
607     * @syscap SystemCapability.BundleManager.BundleFramework.Core
608     * @systemapi
609     * @since 12
610     */
611    /**
612     * Used to obtain the abilityInfo with domain verification.
613     *
614     * @syscap SystemCapability.BundleManager.BundleFramework.Core
615     * @atomicservice
616     * @since 20
617     * @arkts 1.1&1.2
618     */
619    GET_ABILITY_INFO_WITH_APP_LINKING = 0x00000040,
620    /**
621     * Used to obtain the abilityInfo with Skill
622     *
623     * @syscap SystemCapability.BundleManager.BundleFramework.Core
624     * @systemapi
625     * @since 12
626     */
627    /**
628     * Used to obtain the abilityInfo with Skill
629     *
630     * @syscap SystemCapability.BundleManager.BundleFramework.Core
631     * @atomicservice
632     * @since 20
633     * @arkts 1.1&1.2
634     */
635    GET_ABILITY_INFO_WITH_SKILL = 0x00000080,
636  }
637
638  /**
639   * Used to query the enumeration value of ExtensionAbilityInfo. Multiple values can be passed in the form.
640   *
641   * @enum { number }
642   * @syscap SystemCapability.BundleManager.BundleFramework.Core
643   * @systemapi
644   * @since arkts {'1.1':'9', '1.2':'20'}
645   * @arkts 1.1&1.2
646   */
647  enum ExtensionAbilityFlag {
648    /**
649     * Used to obtain the default extensionAbilityInfo. The obtained extensionAbilityInfo does not contain the information of
650     * permission, metadata and disabled abilityInfo.
651     *
652     * @syscap SystemCapability.BundleManager.BundleFramework.Core
653     * @systemapi
654     * @since arkts {'1.1':'9', '1.2':'20'}
655     * @arkts 1.1&1.2
656     */
657    GET_EXTENSION_ABILITY_INFO_DEFAULT = 0x00000000,
658    /**
659     * Used to obtain the extensionAbilityInfo containing permission.
660     *
661     * @syscap SystemCapability.BundleManager.BundleFramework.Core
662     * @systemapi
663     * @since arkts {'1.1':'9', '1.2':'20'}
664     * @arkts 1.1&1.2
665     */
666    GET_EXTENSION_ABILITY_INFO_WITH_PERMISSION = 0x00000001,
667    /**
668     * Used to obtain the extensionAbilityInfo containing applicationInfo.
669     *
670     * @syscap SystemCapability.BundleManager.BundleFramework.Core
671     * @systemapi
672     * @since arkts {'1.1':'9', '1.2':'20'}
673     * @arkts 1.1&1.2
674     */
675    GET_EXTENSION_ABILITY_INFO_WITH_APPLICATION = 0x00000002,
676    /**
677     * Used to obtain the extensionAbilityInfo containing metadata.
678     *
679     * @syscap SystemCapability.BundleManager.BundleFramework.Core
680     * @systemapi
681     * @since arkts {'1.1':'9', '1.2':'20'}
682     * @arkts 1.1&1.2
683     */
684    GET_EXTENSION_ABILITY_INFO_WITH_METADATA = 0x00000004,
685    /**
686     * Used to obtain the extensionAbilityInfo with Skill
687     *
688     * @syscap SystemCapability.BundleManager.BundleFramework.Core
689     * @systemapi
690     * @since arkts {'1.1':'12', '1.2':'20'}
691     * @arkts 1.1&1.2
692     */
693    GET_EXTENSION_ABILITY_INFO_WITH_SKILL = 0x00000010,
694  }
695
696  /**
697   * This enumeration value is used to identify various types of extension ability
698   *
699   * @enum { number }
700   * @syscap SystemCapability.BundleManager.BundleFramework.Core
701   * @since 9
702   */
703  /**
704   * This enumeration value is used to identify various types of extension ability
705   *
706   * @enum { number }
707   * @syscap SystemCapability.BundleManager.BundleFramework.Core
708   * @atomicservice
709   * @since arkts {'1.1':'11', '1.2':'20'}
710   * @arkts 1.1&1.2
711   */
712  export enum ExtensionAbilityType {
713    /**
714     * Indicates extension info with type of form
715     *
716     * @syscap SystemCapability.BundleManager.BundleFramework.Core
717     * @since 9
718     */
719    /**
720     * Indicates extension info with type of form
721     *
722     * @syscap SystemCapability.BundleManager.BundleFramework.Core
723     * @atomicservice
724     * @since arkts {'1.1':'11', '1.2':'20'}
725     * @arkts 1.1&1.2
726     */
727    FORM = 0,
728
729    /**
730     * Indicates extension info with type of work schedule
731     *
732     * @syscap SystemCapability.BundleManager.BundleFramework.Core
733     * @since arkts {'1.1':'9', '1.2':'20'}
734     * @arkts 1.1&1.2
735     */
736    WORK_SCHEDULER = 1,
737
738    /**
739     * Indicates extension info with type of input method
740     *
741     * @syscap SystemCapability.BundleManager.BundleFramework.Core
742     * @since arkts {'1.1':'9', '1.2':'20'}
743     * @arkts 1.1&1.2
744     */
745    INPUT_METHOD = 2,
746
747    /**
748     * Indicates extension info with type of service
749     *
750     * @syscap SystemCapability.BundleManager.BundleFramework.Core
751     * @since arkts {'1.1':'9', '1.2':'20'}
752     * @arkts 1.1&1.2
753     */
754    SERVICE = 3,
755
756    /**
757     * Indicates extension info with type of accessibility
758     *
759     * @syscap SystemCapability.BundleManager.BundleFramework.Core
760     * @since arkts {'1.1':'9', '1.2':'20'}
761     * @arkts 1.1&1.2
762     */
763    ACCESSIBILITY = 4,
764
765    /**
766     * Indicates extension info with type of dataShare
767     *
768     * @syscap SystemCapability.BundleManager.BundleFramework.Core
769     * @since arkts {'1.1':'9', '1.2':'20'}
770     * @arkts 1.1&1.2
771     */
772    DATA_SHARE = 5,
773
774    /**
775     * Indicates extension info with type of filesShare
776     *
777     * @syscap SystemCapability.BundleManager.BundleFramework.Core
778     * @since arkts {'1.1':'9', '1.2':'20'}
779     * @arkts 1.1&1.2
780     */
781    FILE_SHARE = 6,
782
783    /**
784     * Indicates extension info with type of staticSubscriber
785     *
786     * @syscap SystemCapability.BundleManager.BundleFramework.Core
787     * @since arkts {'1.1':'9', '1.2':'20'}
788     * @arkts 1.1&1.2
789     */
790    STATIC_SUBSCRIBER = 7,
791
792    /**
793     * Indicates extension info with type of wallpaper
794     *
795     * @syscap SystemCapability.BundleManager.BundleFramework.Core
796     * @since arkts {'1.1':'9', '1.2':'20'}
797     * @arkts 1.1&1.2
798     */
799    WALLPAPER = 8,
800
801    /**
802     * Indicates extension info with type of backup
803     *
804     * @syscap SystemCapability.BundleManager.BundleFramework.Core
805     * @since arkts {'1.1':'9', '1.2':'20'}
806     * @arkts 1.1&1.2
807     */
808    BACKUP = 9,
809
810    /**
811     * Indicates extension info with type of window
812     *
813     * @syscap SystemCapability.BundleManager.BundleFramework.Core
814     * @since arkts {'1.1':'9', '1.2':'20'}
815     * @arkts 1.1&1.2
816     */
817    WINDOW = 10,
818
819    /**
820     * Indicates extension info with type of enterprise admin
821     *
822     * @syscap SystemCapability.BundleManager.BundleFramework.Core
823     * @since arkts {'1.1':'9', '1.2':'20'}
824     * @arkts 1.1&1.2
825     */
826    ENTERPRISE_ADMIN = 11,
827
828    /**
829     * Indicates extension info with type of thumbnail
830     *
831     * @syscap SystemCapability.BundleManager.BundleFramework.Core
832     * @since arkts {'1.1':'9', '1.2':'20'}
833     * @arkts 1.1&1.2
834     */
835    THUMBNAIL = 13,
836
837    /**
838     * Indicates extension info with type of preview
839     *
840     * @syscap SystemCapability.BundleManager.BundleFramework.Core
841     * @since arkts {'1.1':'9', '1.2':'20'}
842     * @arkts 1.1&1.2
843     */
844    PREVIEW = 14,
845
846    /**
847     * Indicates extension info with type of print
848     *
849     * @syscap SystemCapability.BundleManager.BundleFramework.Core
850     * @since arkts {'1.1':'10', '1.2':'20'}
851     * @arkts 1.1&1.2
852     */
853    PRINT = 15,
854
855    /**
856     * Indicates extension info with type of share
857     *
858     * @syscap SystemCapability.BundleManager.BundleFramework.Core
859     * @since arkts {'1.1':'10', '1.2':'20'}
860     * @arkts 1.1&1.2
861     */
862    SHARE = 16,
863
864    /**
865     * Indicates extension info with type of push
866     *
867     * @syscap SystemCapability.BundleManager.BundleFramework.Core
868     * @since arkts {'1.1':'10', '1.2':'20'}
869     * @arkts 1.1&1.2
870     */
871    PUSH = 17,
872
873    /**
874     * Indicates extension info with type of driver
875     *
876     * @syscap SystemCapability.BundleManager.BundleFramework.Core
877     * @since arkts {'1.1':'10', '1.2':'20'}
878     * @arkts 1.1&1.2
879     */
880    DRIVER = 18,
881
882    /**
883     * Indicates extension info with type of action
884     *
885     * @syscap SystemCapability.BundleManager.BundleFramework.Core
886     * @since arkts {'1.1':'10', '1.2':'20'}
887     * @arkts 1.1&1.2
888     */
889    ACTION = 19,
890
891    /**
892     * Indicates extension info with type of ads service
893     *
894     * @syscap SystemCapability.BundleManager.BundleFramework.Core
895     * @since arkts {'1.1':'11', '1.2':'20'}
896     * @arkts 1.1&1.2
897     */
898    ADS_SERVICE = 20,
899
900    /**
901     * Indicates extension info with type of embedded UI
902     *
903     * @syscap SystemCapability.BundleManager.BundleFramework.Core
904     * @since arkts {'1.1':'12', '1.2':'20'}
905     * @arkts 1.1&1.2
906     */
907    EMBEDDED_UI = 21,
908
909    /**
910     * Indicates extension info with type of insight intent UI
911     *
912     * @syscap SystemCapability.BundleManager.BundleFramework.Core
913     * @since arkts {'1.1':'12', '1.2':'20'}
914     * @arkts 1.1&1.2
915     */
916    INSIGHT_INTENT_UI = 22,
917
918    /**
919     * Indicates extension info with type of FENCE
920     *
921     * @syscap SystemCapability.BundleManager.BundleFramework.Core
922     * @since arkts {'1.1':'18', '1.2':'20'}
923     * @arkts 1.1&1.2
924     */
925    FENCE = 24,
926
927    /**
928     * Indicates extension info with type of CALLER_INFO_QUERY
929     *
930     * @syscap SystemCapability.BundleManager.BundleFramework.Core
931     * @since arkts {'1.1':'19', '1.2':'20'}
932     * @arkts 1.1&1.2
933     */
934    CALLER_INFO_QUERY = 25,
935
936    /**
937     * Indicates extension info with type of asset acceleration
938     *
939     * @syscap SystemCapability.BundleManager.BundleFramework.Core
940     * @since arkts {'1.1':'18', '1.2':'20'}
941     * @arkts 1.1&1.2
942     */
943    ASSET_ACCELERATION = 26,
944
945    /**
946     * Indicates extension info with type of form edit
947     *
948     * @syscap SystemCapability.BundleManager.BundleFramework.Core
949     * @since arkts {'1.1':'18', '1.2':'20'}
950     * @arkts 1.1&1.2
951     */
952    FORM_EDIT = 27,
953
954    /**
955     * Indicates extension info with type of distributed
956     *
957     * @syscap SystemCapability.BundleManager.BundleFramework.Core
958     * @since 20
959     * @arkts 1.1&1.2
960     */
961    DISTRIBUTED = 28,
962
963    /**
964     * Indicates extension info with type of app service
965     *
966     * @syscap SystemCapability.BundleManager.BundleFramework.Core
967     * @since 20
968     * @arkts 1.1&1.2
969     */
970    APP_SERVICE = 29,
971
972    /**
973     * Indicates extension info with type of the live form
974     *
975     * @syscap SystemCapability.BundleManager.BundleFramework.Core
976     * @atomicservice
977     * @since 20
978     * @arkts 1.1&1.2
979     */
980    LIVE_FORM = 30,
981
982    /**
983     * Indicates extension info with type of unspecified
984     *
985     * @syscap SystemCapability.BundleManager.BundleFramework.Core
986     * @since arkts {'1.1':'9', '1.2':'20'}
987     * @arkts 1.1&1.2
988     */
989    UNSPECIFIED = 255
990  }
991
992  /**
993   * PermissionGrantState
994   *
995   * @enum { number }
996   * @syscap SystemCapability.BundleManager.BundleFramework.Core
997   * @since 9
998   */
999  /**
1000   * PermissionGrantState
1001   *
1002   * @enum { number }
1003   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1004   * @atomicservice
1005   * @since 11
1006   */
1007  /**
1008   * PermissionGrantState
1009   *
1010   * @enum { number }
1011   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1012   * @crossplatform
1013   * @atomicservice
1014   * @since 20
1015   * @arkts 1.1&1.2
1016   */
1017  export enum PermissionGrantState {
1018    /**
1019     * PERMISSION_DENIED
1020     *
1021     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1022     * @since 9
1023     */
1024    /**
1025     * PERMISSION_DENIED
1026     *
1027     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1028     * @atomicservice
1029     * @since 11
1030     */
1031    /**
1032     * PERMISSION_DENIED
1033     *
1034     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1035     * @crossplatform
1036     * @atomicservice
1037     * @since 20
1038     * @arkts 1.1&1.2
1039     */
1040    PERMISSION_DENIED = -1,
1041
1042    /**
1043     * PERMISSION_GRANTED
1044     *
1045     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1046     * @since 9
1047     */
1048    /**
1049     * PERMISSION_GRANTED
1050     *
1051     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1052     * @atomicservice
1053     * @since 11
1054     */
1055    /**
1056     * PERMISSION_GRANTED
1057     *
1058     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1059     * @crossplatform
1060     * @atomicservice
1061     * @since 20
1062     * @arkts 1.1&1.2
1063     */
1064    PERMISSION_GRANTED = 0
1065  }
1066
1067  /**
1068   * Support window mode
1069   *
1070   * @enum { number }
1071   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1072   * @since 9
1073   */
1074  /**
1075   * Support window mode
1076   *
1077   * @enum { number }
1078   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1079   * @atomicservice
1080   * @since 11
1081   */
1082  /**
1083   * Support window mode
1084   *
1085   * @enum { number }
1086   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1087   * @crossplatform
1088   * @atomicservice
1089   * @since 20
1090   * @arkts 1.1&1.2
1091   */
1092  export enum SupportWindowMode {
1093    /**
1094     * Indicates supported window mode of full screen mode
1095     *
1096     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1097     * @since 9
1098     */
1099    /**
1100     * Indicates supported window mode of full screen mode
1101     *
1102     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1103     * @atomicservice
1104     * @since 11
1105     */
1106    /**
1107     * Indicates supported window mode of full screen mode
1108     *
1109     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1110     * @crossplatform
1111     * @atomicservice
1112     * @since 20
1113     * @arkts 1.1&1.2
1114     */
1115    FULL_SCREEN = 0,
1116    /**
1117     * Indicates supported window mode of split mode
1118     *
1119     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1120     * @since 9
1121     */
1122    /**
1123     * Indicates supported window mode of split mode
1124     *
1125     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1126     * @atomicservice
1127     * @since 11
1128     */
1129    /**
1130     * Indicates supported window mode of split mode
1131     *
1132     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1133     * @crossplatform
1134     * @atomicservice
1135     * @since 20
1136     * @arkts 1.1&1.2
1137     */
1138    SPLIT = 1,
1139    /**
1140     * Indicates supported window mode of floating mode
1141     *
1142     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1143     * @since 9
1144     */
1145    /**
1146     * Indicates supported window mode of floating mode
1147     *
1148     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1149     * @atomicservice
1150     * @since 11
1151     */
1152    /**
1153     * Indicates supported window mode of floating mode
1154     *
1155     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1156     * @crossplatform
1157     * @atomicservice
1158     * @since 20
1159     * @arkts 1.1&1.2
1160     */
1161    FLOATING = 2
1162  }
1163
1164  /**
1165   * Launch type
1166   *
1167   * @enum { number }
1168   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1169   * @since 9
1170   */
1171  /**
1172   * Launch type
1173   *
1174   * @enum { number }
1175   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1176   * @crossplatform
1177   * @since 10
1178   */
1179  /**
1180   * Launch type
1181   *
1182   * @enum { number }
1183   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1184   * @crossplatform
1185   * @atomicservice
1186   * @since arkts {'1.1':'11', '1.2':'20'}
1187   * @arkts 1.1&1.2
1188   */
1189  export enum LaunchType {
1190    /**
1191     * Indicates that the ability has only one instance
1192     *
1193     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1194     * @since 9
1195     */
1196    /**
1197     * Indicates that the ability has only one instance
1198     *
1199     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1200     * @crossplatform
1201     * @since 10
1202     */
1203    /**
1204     * Indicates that the ability has only one instance
1205     *
1206     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1207     * @crossplatform
1208     * @atomicservice
1209     * @since arkts {'1.1':'11', '1.2':'20'}
1210     * @arkts 1.1&1.2
1211     */
1212    SINGLETON = 0,
1213
1214    /**
1215     * Indicates that the ability can have multiple instances
1216     *
1217     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1218     * @since 9
1219     */
1220    /**
1221     * Indicates that the ability can have multiple instances
1222     *
1223     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1224     * @crossplatform
1225     * @since 10
1226     */
1227    /**
1228     * Indicates that the ability can have multiple instances
1229     *
1230     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1231     * @crossplatform
1232     * @atomicservice
1233     * @since arkts {'1.1':'11', '1.2':'20'}
1234     * @arkts 1.1&1.2
1235     */
1236    MULTITON = 1,
1237
1238    /**
1239     * Indicates that the ability can have specified instances
1240     *
1241     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1242     * @since 9
1243     */
1244    /**
1245     * Indicates that the ability can have specified instances
1246     *
1247     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1248     * @atomicservice
1249     * @since 11
1250     */
1251    /**
1252     * Indicates that the ability can have specified instances
1253     *
1254     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1255     * @crossplatform
1256     * @atomicservice
1257     * @since 20
1258     * @arkts 1.1&1.2
1259     */
1260    SPECIFIED = 2
1261  }
1262
1263  /**
1264   * Indicates ability type
1265   *
1266   * @enum { number }
1267   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1268   * @FAModelOnly
1269   * @since 9
1270   */
1271  export enum AbilityType {
1272    /**
1273     * Indicates that the ability has a UI
1274     *
1275     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1276     * @FAModelOnly
1277     * @since 9
1278     */
1279    PAGE = 1,
1280
1281    /**
1282     * Indicates that the ability does not have a UI
1283     *
1284     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1285     * @FAModelOnly
1286     * @since 9
1287     */
1288    SERVICE = 2,
1289
1290    /**
1291     * Indicates that the ability is used to provide data access services
1292     *
1293     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1294     * @FAModelOnly
1295     * @since 9
1296     */
1297    DATA = 3
1298  }
1299
1300  /**
1301   * Display orientation
1302   *
1303   * @enum { number }
1304   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1305   * @since 9
1306   */
1307  /**
1308   * Display orientation
1309   *
1310   * @enum { number }
1311   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1312   * @atomicservice
1313   * @since 11
1314   */
1315  /**
1316   * Display orientation
1317   *
1318   * @enum { number }
1319   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1320   * @crossplatform
1321   * @atomicservice
1322   * @since 20
1323   * @arkts 1.1&1.2
1324   */
1325  export enum DisplayOrientation {
1326    /**
1327     * Indicates that the system automatically determines the display orientation
1328     *
1329     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1330     * @since 9
1331     */
1332    /**
1333     * Indicates that the system automatically determines the display orientation
1334     *
1335     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1336     * @atomicservice
1337     * @since 11
1338     */
1339    /**
1340     * Indicates that the system automatically determines the display orientation
1341     *
1342     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1343     * @crossplatform
1344     * @atomicservice
1345     * @since 20
1346     * @arkts 1.1&1.2
1347     */
1348    UNSPECIFIED,
1349
1350    /**
1351     * Indicates the landscape orientation
1352     *
1353     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1354     * @since 9
1355     */
1356    /**
1357     * Indicates the landscape orientation
1358     *
1359     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1360     * @atomicservice
1361     * @since 11
1362     */
1363    /**
1364     * Indicates the landscape orientation
1365     *
1366     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1367     * @crossplatform
1368     * @atomicservice
1369     * @since 20
1370     * @arkts 1.1&1.2
1371     */
1372    LANDSCAPE,
1373
1374    /**
1375     * Indicates the portrait orientation
1376     *
1377     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1378     * @since 9
1379     */
1380    /**
1381     * Indicates the portrait orientation
1382     *
1383     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1384     * @atomicservice
1385     * @since 11
1386     */
1387    /**
1388     * Indicates the portrait orientation
1389     *
1390     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1391     * @crossplatform
1392     * @atomicservice
1393     * @since 20
1394     * @arkts 1.1&1.2
1395     */
1396    PORTRAIT,
1397
1398    /**
1399     * Indicates the page ability orientation is the same as that of the nearest ability in the stack
1400     *
1401     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1402     * @since 9
1403     */
1404    /**
1405     * Indicates the page ability orientation is the same as that of the nearest ability in the stack
1406     *
1407     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1408     * @atomicservice
1409     * @since 11
1410     */
1411    /**
1412     * Indicates the page ability orientation is the same as that of the nearest ability in the stack
1413     *
1414     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1415     * @crossplatform
1416     * @atomicservice
1417     * @since 20
1418     * @arkts 1.1&1.2
1419     */
1420    FOLLOW_RECENT,
1421
1422    /**
1423     * Indicates the inverted landscape orientation
1424     *
1425     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1426     * @since 9
1427     */
1428    /**
1429     * Indicates the inverted landscape orientation
1430     *
1431     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1432     * @atomicservice
1433     * @since 11
1434     */
1435    /**
1436     * Indicates the inverted landscape orientation
1437     *
1438     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1439     * @crossplatform
1440     * @atomicservice
1441     * @since 20
1442     * @arkts 1.1&1.2
1443     */
1444    LANDSCAPE_INVERTED,
1445
1446    /**
1447     * Indicates the inverted portrait orientation
1448     *
1449     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1450     * @since 9
1451     */
1452    /**
1453     * Indicates the inverted portrait orientation
1454     *
1455     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1456     * @atomicservice
1457     * @since 11
1458     */
1459    /**
1460     * Indicates the inverted portrait orientation
1461     *
1462     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1463     * @crossplatform
1464     * @atomicservice
1465     * @since 20
1466     * @arkts 1.1&1.2
1467     */
1468    PORTRAIT_INVERTED,
1469
1470    /**
1471     * Indicates the orientation can be auto-rotated
1472     *
1473     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1474     * @since 9
1475     */
1476    /**
1477     * Indicates the orientation can be auto-rotated
1478     *
1479     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1480     * @atomicservice
1481     * @since 11
1482     */
1483    /**
1484     * Indicates the orientation can be auto-rotated
1485     *
1486     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1487     * @crossplatform
1488     * @atomicservice
1489     * @since 20
1490     * @arkts 1.1&1.2
1491     */
1492    AUTO_ROTATION,
1493
1494    /**
1495     * Indicates the landscape orientation rotated with sensor
1496     *
1497     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1498     * @since 9
1499     */
1500    /**
1501     * Indicates the landscape orientation rotated with sensor
1502     *
1503     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1504     * @atomicservice
1505     * @since 11
1506     */
1507    /**
1508     * Indicates the landscape orientation rotated with sensor
1509     *
1510     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1511     * @crossplatform
1512     * @atomicservice
1513     * @since 20
1514     * @arkts 1.1&1.2
1515     */
1516    AUTO_ROTATION_LANDSCAPE,
1517
1518    /**
1519     * Indicates the portrait orientation rotated with sensor
1520     *
1521     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1522     * @since 9
1523     */
1524    /**
1525     * Indicates the portrait orientation rotated with sensor
1526     *
1527     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1528     * @atomicservice
1529     * @since 11
1530     */
1531    /**
1532     * Indicates the portrait orientation rotated with sensor
1533     *
1534     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1535     * @crossplatform
1536     * @atomicservice
1537     * @since 20
1538     * @arkts 1.1&1.2
1539     */
1540    AUTO_ROTATION_PORTRAIT,
1541
1542    /**
1543     * Indicates the sensor restricted mode
1544     *
1545     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1546     * @since 9
1547     */
1548    /**
1549     * Indicates the sensor restricted mode
1550     *
1551     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1552     * @atomicservice
1553     * @since 11
1554     */
1555    /**
1556     * Indicates the sensor restricted mode
1557     *
1558     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1559     * @crossplatform
1560     * @atomicservice
1561     * @since 20
1562     * @arkts 1.1&1.2
1563     */
1564    AUTO_ROTATION_RESTRICTED,
1565
1566    /**
1567     * Indicates the sensor landscape restricted mode
1568     *
1569     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1570     * @since 9
1571     */
1572    /**
1573     * Indicates the sensor landscape restricted mode
1574     *
1575     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1576     * @atomicservice
1577     * @since 11
1578     */
1579    /**
1580     * Indicates the sensor landscape restricted mode
1581     *
1582     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1583     * @crossplatform
1584     * @atomicservice
1585     * @since 20
1586     * @arkts 1.1&1.2
1587     */
1588    AUTO_ROTATION_LANDSCAPE_RESTRICTED,
1589
1590    /**
1591     * Indicates the sensor portrait restricted mode
1592     *
1593     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1594     * @since 9
1595     */
1596    /**
1597     * Indicates the sensor portrait restricted mode
1598     *
1599     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1600     * @atomicservice
1601     * @since 11
1602     */
1603    /**
1604     * Indicates the sensor portrait restricted mode
1605     *
1606     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1607     * @crossplatform
1608     * @atomicservice
1609     * @since 20
1610     * @arkts 1.1&1.2
1611     */
1612    AUTO_ROTATION_PORTRAIT_RESTRICTED,
1613
1614    /**
1615     * Indicates the locked orientation mode
1616     *
1617     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1618     * @since 9
1619     */
1620    /**
1621     * Indicates the locked orientation mode
1622     *
1623     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1624     * @atomicservice
1625     * @since 11
1626     */
1627    /**
1628     * Indicates the locked orientation mode
1629     *
1630     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1631     * @crossplatform
1632     * @atomicservice
1633     * @since 20
1634     * @arkts 1.1&1.2
1635     */
1636    LOCKED,
1637
1638    /**
1639     * Indicates the system automatically determines the sensor restricted mode
1640     *
1641     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1642     * @atomicservice
1643     * @since arkts {'1.1':'12', '1.2':'20'}
1644     * @arkts 1.1&1.2
1645     */
1646    AUTO_ROTATION_UNSPECIFIED,
1647
1648    /**
1649     * Indicates the orientation follow the desktop rotate mode
1650     *
1651     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1652     * @atomicservice
1653     * @since arkts {'1.1':'12', '1.2':'20'}
1654     * @arkts 1.1&1.2
1655     */
1656    FOLLOW_DESKTOP
1657  }
1658
1659  /**
1660   * Indicates module type
1661   *
1662   * @enum { number }
1663   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1664   * @since 9
1665   */
1666  /**
1667   * Indicates module type
1668   *
1669   * @enum { number }
1670   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1671   * @atomicservice
1672   * @since 11
1673   */
1674  /**
1675   * Indicates module type
1676   *
1677   * @enum { number }
1678   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1679   * @crossplatform
1680   * @atomicservice
1681   * @since 20
1682   * @arkts 1.1&1.2
1683   */
1684  export enum ModuleType {
1685    /**
1686     * Indicates entry type
1687     *
1688     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1689     * @since 9
1690     */
1691    /**
1692     * Indicates entry type
1693     *
1694     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1695     * @atomicservice
1696     * @since 11
1697     */
1698    /**
1699     * Indicates entry type
1700     *
1701     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1702     * @crossplatform
1703     * @atomicservice
1704     * @since 20
1705     * @arkts 1.1&1.2
1706     */
1707    ENTRY = 1,
1708    /**
1709     * Indicates feature type
1710     *
1711     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1712     * @since 9
1713     */
1714    /**
1715     * Indicates feature type
1716     *
1717     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1718     * @atomicservice
1719     * @since 11
1720     */
1721    /**
1722     * Indicates feature type
1723     *
1724     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1725     * @crossplatform
1726     * @atomicservice
1727     * @since 20
1728     * @arkts 1.1&1.2
1729     */
1730    FEATURE = 2,
1731    /**
1732     * Indicates shared type
1733     *
1734     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1735     * @since 9
1736     */
1737    /**
1738     * Indicates shared type
1739     *
1740     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1741     * @atomicservice
1742     * @since 11
1743     */
1744    /**
1745     * Indicates shared type
1746     *
1747     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1748     * @crossplatform
1749     * @atomicservice
1750     * @since 20
1751     * @arkts 1.1&1.2
1752     */
1753    SHARED = 3
1754  }
1755
1756  /**
1757   * Indicates bundle type
1758   *
1759   * @enum { number }
1760   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1761   * @since 9
1762   */
1763  /**
1764   * Indicates bundle type
1765   *
1766   * @enum { number }
1767   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1768   * @atomicservice
1769   * @since arkts {'1.1':'11', '1.2':'20'}
1770   * @arkts 1.1&1.2
1771   */
1772  export enum BundleType {
1773    /**
1774     * Indicates app
1775     *
1776     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1777     * @since 9
1778     */
1779    /**
1780     * Indicates app
1781     *
1782     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1783     * @atomicservice
1784     * @since arkts {'1.1':'11', '1.2':'20'}
1785     * @arkts 1.1&1.2
1786     */
1787    APP = 0,
1788    /**
1789     * Indicates atomic service
1790     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1791     * @since 9
1792     */
1793    /**
1794     * Indicates atomic service
1795     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1796     * @atomicservice
1797     * @since arkts {'1.1':'11', '1.2':'20'}
1798     * @arkts 1.1&1.2
1799     */
1800    ATOMIC_SERVICE = 1
1801  }
1802
1803  /**
1804   * Shared bundle compatible policy
1805   *
1806   * @enum { number }
1807   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1808   * @since 10
1809   */
1810  /**
1811   * Shared bundle compatible policy
1812   *
1813   * @enum { number }
1814   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1815   * @atomicservice
1816   * @since arkts {'1.1':'11', '1.2':'20'}
1817   * @arkts 1.1&1.2
1818   */
1819  export enum CompatiblePolicy {
1820    /**
1821     * Indicates that the app is a shared bundle and the shared bundle type is backward compatibility
1822     *
1823     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1824     * @since 10
1825     */
1826    /**
1827     * Indicates that the app is a shared bundle and the shared bundle type is backward compatibility
1828     *
1829     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1830     * @atomicservice
1831     * @since arkts {'1.1':'11', '1.2':'20'}
1832     * @arkts 1.1&1.2
1833     */
1834    BACKWARD_COMPATIBILITY = 1
1835  }
1836
1837  /**
1838   * This enumeration value is used to identify various types of JSON profile.
1839   *
1840   * @enum { number }
1841   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1842   * @systemapi
1843   * @since arkts {'1.1':'11', '1.2':'20'}
1844   * @arkts 1.1&1.2
1845   */
1846  export enum ProfileType {
1847    /**
1848     * Indicates JSON profile about intent framework.
1849     *
1850     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1851     * @systemapi
1852     * @since arkts {'1.1':'11', '1.2':'20'}
1853     * @arkts 1.1&1.2
1854     */
1855    INTENT_PROFILE = 1
1856  }
1857
1858  /**
1859   * This enumeration value is used to identify the distribution type of application.
1860   *
1861   * @enum { number }
1862   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1863   * @systemapi
1864   * @since arkts {'1.1':'12', '1.2':'20'}
1865   * @arkts 1.1&1.2
1866   */
1867  export enum AppDistributionType {
1868    /**
1869     * Indicates the application is distributed by the App Gallery.
1870     *
1871     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1872     * @systemapi
1873     * @since arkts {'1.1':'12', '1.2':'20'}
1874     * @arkts 1.1&1.2
1875     */
1876    APP_GALLERY = 1,
1877
1878    /**
1879     * Indicates the enterprise application, which can be installed in personal devices.
1880     *
1881     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1882     * @systemapi
1883     * @since arkts {'1.1':'12', '1.2':'20'}
1884     * @arkts 1.1&1.2
1885     */
1886    ENTERPRISE = 2,
1887
1888    /**
1889     * Indicates the normal enterprise application.
1890     * This kind of application can only be installed on enterprise devices through the enterprise MDM application and does not require device management privileges.
1891     *
1892     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1893     * @systemapi
1894     * @since arkts {'1.1':'12', '1.2':'20'}
1895     * @arkts 1.1&1.2
1896     */
1897    ENTERPRISE_NORMAL = 3,
1898
1899    /**
1900     * Indicates the enterprise MDM application, which can only be installed on enterprise devices.
1901     * This kind of application requires device management privileges, such as remote locking, which can install normal enterprise applications, etc.
1902     *
1903     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1904     * @systemapi
1905     * @since arkts {'1.1':'12', '1.2':'20'}
1906     * @arkts 1.1&1.2
1907     */
1908    ENTERPRISE_MDM = 4,
1909
1910    /**
1911     * Indicates the system preinstalled application.
1912     *
1913     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1914     * @systemapi
1915     * @since arkts {'1.1':'12', '1.2':'20'}
1916     * @arkts 1.1&1.2
1917     */
1918    OS_INTEGRATION = 5,
1919
1920    /**
1921     * Indicates the crowdtesting application.
1922     *
1923     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1924     * @systemapi
1925     * @since arkts {'1.1':'12', '1.2':'20'}
1926     * @arkts 1.1&1.2
1927     */
1928    CROWDTESTING = 6,
1929
1930    /**
1931     * Indicates other types of application.
1932     *
1933     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1934     * @systemapi
1935     * @since arkts {'1.1':'12', '1.2':'20'}
1936     * @arkts 1.1&1.2
1937     */
1938    NONE = 7
1939  }
1940
1941  /**
1942   * This enumeration value is used to identify various types of extension ability
1943   *
1944   * @enum { number }
1945   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1946   * @since arkts {'1.1':'12', '1.2':'20'}
1947   * @arkts 1.1&1.2
1948  */
1949  export enum MultiAppModeType {
1950    /**
1951     * Indicates multi app mode with type of unspecified
1952     *
1953     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1954     * @since arkts {'1.1':'12', '1.2':'20'}
1955     * @arkts 1.1&1.2
1956     */
1957    UNSPECIFIED = 0,
1958    /**
1959     * Indicates multi app mode with type of multiInstance
1960     *
1961     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1962     * @since arkts {'1.1':'12', '1.2':'20'}
1963     * @arkts 1.1&1.2
1964     */
1965    MULTI_INSTANCE = 1,
1966    /**
1967     * Indicates multi app mode with type of appClone
1968     *
1969     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1970     * @since arkts {'1.1':'12', '1.2':'20'}
1971     * @arkts 1.1&1.2
1972    */
1973    APP_CLONE = 2,
1974  }
1975
1976  /**
1977   * This enumeration value is used to identify various flags of application
1978   *
1979   * @enum { number }
1980   * @syscap SystemCapability.BundleManager.BundleFramework.Core
1981   * @systemapi
1982   * @since arkts {'1.1':'12', '1.2':'20'}
1983   * @arkts 1.1&1.2
1984  */
1985  export enum ApplicationInfoFlag {
1986    /**
1987     * Indicates the application is currently installed for the calling user.
1988     *
1989     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1990     * @systemapi
1991     * @since arkts {'1.1':'12', '1.2':'20'}
1992     * @arkts 1.1&1.2
1993     */
1994    FLAG_INSTALLED = 0x00000001,
1995    /**
1996     * Indicates the application is currently installed for the other user.
1997     *
1998     * @syscap SystemCapability.BundleManager.BundleFramework.Core
1999     * @systemapi
2000     * @since arkts {'1.1':'15', '1.2':'20'}
2001     * @arkts 1.1&1.2
2002     */
2003    FLAG_OTHER_INSTALLED = 0x00000010,
2004    /**
2005     * Indicates the application is a preinstall app.
2006     *
2007     * @syscap SystemCapability.BundleManager.BundleFramework.Core
2008     * @systemapi
2009     * @since arkts {'1.1':'15', '1.2':'20'}
2010     * @arkts 1.1&1.2
2011     */
2012    FLAG_PREINSTALLED_APP = 0x00000020,
2013    /**
2014     * Indicates the application is an updated preinstall app.
2015     *
2016     * @syscap SystemCapability.BundleManager.BundleFramework.Core
2017     * @systemapi
2018     * @since arkts {'1.1':'15', '1.2':'20'}
2019     * @arkts 1.1&1.2
2020     */
2021    FLAG_PREINSTALLED_APP_UPDATE = 0x00000040,
2022  }
2023
2024  /**
2025   * Obtains own bundleInfo.
2026   *
2027   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2028   * @returns { Promise<BundleInfo> } The result of getting the bundle info.
2029   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2030   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2031   * @since 9
2032   */
2033  /**
2034   * Obtains own bundleInfo.
2035   *
2036   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2037   * @returns { Promise<BundleInfo> } The result of getting the bundle info.
2038   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2039   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2040   * @atomicservice
2041   * @since 11
2042   */
2043  /**
2044   * Obtains own bundleInfo.
2045   *
2046   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2047   * @returns { Promise<BundleInfo> } The result of getting the bundle info.
2048   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2049   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2050   * @crossplatform
2051   * @atomicservice
2052   * @since 20
2053   * @arkts 1.1&1.2
2054   */
2055  function getBundleInfoForSelf(bundleFlags: number): Promise<BundleInfo>;
2056
2057  /**
2058   * Obtains own bundleInfo.
2059   *
2060   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2061   * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle info result.
2062   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2063   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2064   * @since 9
2065   */
2066  /**
2067   * Obtains own bundleInfo.
2068   *
2069   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2070   * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle info result.
2071   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2072   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2073   * @atomicservice
2074   * @since 11
2075   */
2076  /**
2077   * Obtains own bundleInfo.
2078   *
2079   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2080   * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle info result.
2081   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2082   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2083   * @crossplatform
2084   * @atomicservice
2085   * @since 20
2086   * @arkts 1.1&1.2
2087   */
2088  function getBundleInfoForSelf(bundleFlags: number, callback: AsyncCallback<BundleInfo>): void;
2089
2090  /**
2091   * Obtains own bundleInfo.
2092   *
2093   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2094   * @returns { BundleInfo } The result of getting the bundle info.
2095   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2096   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2097   * @since 10
2098   */
2099  /**
2100   * Obtains own bundleInfo.
2101   *
2102   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2103   * @returns { BundleInfo } The result of getting the bundle info.
2104   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2105   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2106   * @atomicservice
2107   * @since 11
2108   */
2109  /**
2110   * Obtains own bundleInfo.
2111   *
2112   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2113   * @returns { BundleInfo } The result of getting the bundle info.
2114   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2115   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2116   * @crossplatform
2117   * @atomicservice
2118   * @since 20
2119   * @arkts 1.1&1.2
2120   */
2121  function getBundleInfoForSelfSync(bundleFlags: number): BundleInfo;
2122
2123  /**
2124   * Obtains bundleInfo based on bundleName, bundleFlags. The application requires to be a system application when requesting the permission of ohos.permission.GET_BUNDLE_INFO.
2125   *
2126   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2127   * @param { string } bundleName - Indicates the application bundle name to be queried.
2128   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2129   * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle info result.
2130   * @throws { BusinessError } 201 - Permission denied.
2131   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2132   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2133   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2134   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2135   * @since arkts {'1.1':'14', '1.2':'20'}
2136   * @arkts 1.1&1.2
2137   */
2138  function getBundleInfo(bundleName: string, bundleFlags: number, callback: AsyncCallback<BundleInfo>): void;
2139
2140  /**
2141   * Obtains bundleInfo based on bundleName, bundleFlags and userId. The application requires to be a system application when requesting the permission of ohos.permission.GET_BUNDLE_INFO.
2142   *
2143   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2144   * @param { string } bundleName - Indicates the application bundle name to be queried.
2145   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2146   * @param { number } userId - Indicates the user ID or do not pass user ID.
2147   * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle info result.
2148   * @throws { BusinessError } 201 - Permission denied.
2149   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2150   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2151   * @throws { BusinessError } 17700004 - The specified user ID is not found.
2152   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2153   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2154   * @since arkts {'1.1':'14', '1.2':'20'}
2155   * @arkts 1.1&1.2
2156   */
2157  function getBundleInfo(bundleName: string,
2158    bundleFlags: number, userId: number, callback: AsyncCallback<BundleInfo>): void;
2159
2160  /**
2161   * Obtains bundleInfo based on bundleName, bundleFlags and userId. The application requires to be a system application when requesting the permission of ohos.permission.GET_BUNDLE_INFO.
2162   *
2163   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2164   * @param { string } bundleName - Indicates the application bundle name to be queried.
2165   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
2166   * @param { number } userId - Indicates the user ID or do not pass user ID.
2167   * @returns { Promise<BundleInfo> } The result of getting the bundle info.
2168   * @throws { BusinessError } 201 - Permission denied.
2169   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2170   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2171   * @throws { BusinessError } 17700004 - The specified user ID is not found.
2172   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2173   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2174   * @since arkts {'1.1':'14', '1.2':'20'}
2175   * @arkts 1.1&1.2
2176   */
2177  function getBundleInfo(bundleName: string, bundleFlags: number, userId?: number): Promise<BundleInfo>;
2178
2179  /**
2180   * Obtains application info based on a given bundle name.
2181   *
2182   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2183   * @param { string } bundleName - Indicates the application bundle name to be queried.
2184   * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned.
2185   * @param { AsyncCallback<ApplicationInfo> } callback - The callback of getting application info result.
2186   * @throws { BusinessError } 201 - Permission denied.
2187   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2188   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2189   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2190   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2191   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2192   * @systemapi
2193   * @since arkts {'1.1':'9', '1.2':'20'}
2194   * @arkts 1.1&1.2
2195   */
2196  function getApplicationInfo(bundleName: string, appFlags: number, callback: AsyncCallback<ApplicationInfo>): void;
2197
2198  /**
2199   * Obtains application info based on a given bundle name.
2200   *
2201   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2202   * @param { string } bundleName - Indicates the application bundle name to be queried.
2203   * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned.
2204   * @param { number } userId - Indicates the user ID or do not pass user ID.
2205   * @param { AsyncCallback<ApplicationInfo> } callback - The callback of getting application info result.
2206   * @throws { BusinessError } 201 - Permission denied.
2207   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2208   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2209   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2210   * @throws { BusinessError } 17700004 - The specified user ID is not found.
2211   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2212   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2213   * @systemapi
2214   * @since arkts {'1.1':'9', '1.2':'20'}
2215   * @arkts 1.1&1.2
2216   */
2217  function getApplicationInfo(bundleName: string,
2218    appFlags: number, userId: number, callback: AsyncCallback<ApplicationInfo>): void;
2219
2220  /**
2221   * Obtains application info based on a given bundle name.
2222   *
2223   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2224   * @param { string } bundleName - Indicates the application bundle name to be queried.
2225   * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned.
2226   * @param { number } userId - Indicates the user ID or do not pass user ID.
2227   * @returns { Promise<ApplicationInfo> } The result of getting the application info.
2228   * @throws { BusinessError } 201 - Permission denied.
2229   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2230   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2231   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2232   * @throws { BusinessError } 17700004 - The specified user ID is not found.
2233   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2234   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2235   * @systemapi
2236   * @since arkts {'1.1':'9', '1.2':'20'}
2237   * @arkts 1.1&1.2
2238   */
2239  function getApplicationInfo(bundleName: string, appFlags: number, userId?: number): Promise<ApplicationInfo>;
2240
2241  /**
2242   * Obtains BundleInfo of all bundles available in the system.
2243   *
2244   * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST
2245   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo that will be returned.
2246   * @param { AsyncCallback<Array<BundleInfo>> } callback - The callback of getting a list of BundleInfo objects.
2247   * @throws { BusinessError } 201 - Permission denied.
2248   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2249   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2250   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2251   * @systemapi
2252   * @since arkts {'1.1':'9', '1.2':'20'}
2253   * @arkts 1.1&1.2
2254   */
2255  function getAllBundleInfo(bundleFlags: number, callback: AsyncCallback<Array<BundleInfo>>): void;
2256
2257  /**
2258   * Obtains BundleInfo of all bundles available in the system.
2259   *
2260   * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST
2261   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo that will be returned.
2262   * @param { number } userId - Indicates the user id.
2263   * @param { AsyncCallback<Array<BundleInfo>> } callback - The callback of getting a list of BundleInfo objects.
2264   * @throws { BusinessError } 201 - Permission denied.
2265   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2266   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2267   * @throws { BusinessError } 17700004 - The specified user ID is not found.
2268   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2269   * @systemapi
2270   * @since arkts {'1.1':'9', '1.2':'20'}
2271   * @arkts 1.1&1.2
2272   */
2273  function getAllBundleInfo(bundleFlags: number, userId: number, callback: AsyncCallback<Array<BundleInfo>>): void;
2274
2275  /**
2276   * Obtains BundleInfo of all bundles available in the system.
2277   *
2278   * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST
2279   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo that will be returned.
2280   * @param { number } userId - Indicates the user id.
2281   * @returns { Promise<Array<BundleInfo>> } Returns a list of BundleInfo objects.
2282   * @throws { BusinessError } 201 - Permission denied.
2283   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2284   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2285   * @throws { BusinessError } 17700004 - The specified user ID is not found.
2286   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2287   * @systemapi
2288   * @since arkts {'1.1':'9', '1.2':'20'}
2289   * @arkts 1.1&1.2
2290   */
2291  function getAllBundleInfo(bundleFlags: number, userId?: number): Promise<Array<BundleInfo>>;
2292
2293  /**
2294   * Obtains information about all installed applications of a specified user.
2295   *
2296   * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST
2297   * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned.
2298   * @param { AsyncCallback<Array<ApplicationInfo>> } callback - The callback of getting a list of ApplicationInfo objects.
2299   * @throws { BusinessError } 201 - Permission denied.
2300   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2301   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2302   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2303   * @systemapi
2304   * @since arkts {'1.1':'9', '1.2':'20'}
2305   * @arkts 1.1&1.2
2306   */
2307  function getAllApplicationInfo(appFlags: number, callback: AsyncCallback<Array<ApplicationInfo>>): void;
2308
2309  /**
2310   * Obtains information about all installed applications of a specified user.
2311   *
2312   * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST
2313   * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned.
2314   * @param { number } userId - Indicates the user ID or do not pass user ID.
2315   * @param { AsyncCallback<Array<ApplicationInfo>> } callback - The callback of getting a list of ApplicationInfo objects.
2316   * @throws { BusinessError } 201 - Permission denied.
2317   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2318   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2319   * @throws { BusinessError } 17700004 - The specified user ID is not found.
2320   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2321   * @systemapi
2322   * @since arkts {'1.1':'9', '1.2':'20'}
2323   * @arkts 1.1&1.2
2324   */
2325  function getAllApplicationInfo(appFlags: number,
2326    userId: number, callback: AsyncCallback<Array<ApplicationInfo>>): void;
2327
2328  /**
2329   * Obtains information about all installed applications of a specified user.
2330   *
2331   * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST
2332   * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned.
2333   * @param { number } userId - Indicates the user ID or do not pass user ID.
2334   * @returns { Promise<Array<ApplicationInfo>> } Returns a list of ApplicationInfo objects.
2335   * @throws { BusinessError } 201 - Permission denied.
2336   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2337   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2338   * @throws { BusinessError } 17700004 - The specified user ID is not found.
2339   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2340   * @systemapi
2341   * @since arkts {'1.1':'9', '1.2':'20'}
2342   * @arkts 1.1&1.2
2343   */
2344  function getAllApplicationInfo(appFlags: number, userId?: number): Promise<Array<ApplicationInfo>>;
2345
2346  /**
2347   * Query the AbilityInfo by the given Want.
2348   *
2349   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2350   * @param { Want } want - Indicates the Want containing the application bundle name to be queried.
2351   * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned.
2352   * @param { AsyncCallback<Array<AbilityInfo>> } callback - The callback of querying ability info result.
2353   * @throws { BusinessError } 201 - Permission denied.
2354   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2355   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
2356   * 2. Incorrect parameter types; 3. At least one parameter(action, entity, uri or type) is required for implicit query.
2357   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2358   * @throws { BusinessError } 17700003 - The specified ability is not found.
2359   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2360   * @throws { BusinessError } 17700029 - The specified ability is disabled.
2361   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2362   * @systemapi
2363   * @since arkts {'1.1':'9', '1.2':'20'}
2364   * @arkts 1.1&1.2
2365   */
2366  function queryAbilityInfo(want: Want, abilityFlags: number, callback: AsyncCallback<Array<AbilityInfo>>): void;
2367
2368  /**
2369   * Query the AbilityInfo by the given Want.
2370   *
2371   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2372   * @param { Want } want - Indicates the Want containing the application bundle name to be queried.
2373   * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned.
2374   * @param { number } userId - userId Indicates the user ID.
2375   * @param { AsyncCallback<Array<AbilityInfo>> } callback - The callback of querying ability info result.
2376   * @throws { BusinessError } 201 - Permission denied.
2377   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2378   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
2379   * 2. Incorrect parameter types; 3. At least one parameter(action, entity, uri or type) is required for implicit query.
2380   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2381   * @throws { BusinessError } 17700003 - The specified ability is not found.
2382   * @throws { BusinessError } 17700004 - The specified userId is invalid.
2383   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2384   * @throws { BusinessError } 17700029 - The specified ability is disabled.
2385   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2386   * @systemapi
2387   * @since arkts {'1.1':'9', '1.2':'20'}
2388   * @arkts 1.1&1.2
2389   */
2390  function queryAbilityInfo(want: Want,
2391    abilityFlags: number, userId: number, callback: AsyncCallback<Array<AbilityInfo>>): void;
2392
2393  /**
2394   * Query the AbilityInfo by the given Want.
2395   *
2396   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2397   * @param { Want } want - Indicates the Want containing the application bundle name to be queried.
2398   * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned.
2399   * @param { number } userId - userId Indicates the user ID.
2400   * @returns { Promise<Array<AbilityInfo>> } Returns a list of AbilityInfo objects.
2401   * @throws { BusinessError } 201 - Permission denied.
2402   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2403   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
2404   * 2. Incorrect parameter types; 3. At least one parameter(action, entity, uri or type) is required for implicit query.
2405   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2406   * @throws { BusinessError } 17700003 - The specified ability is not found.
2407   * @throws { BusinessError } 17700004 - The specified userId is invalid.
2408   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2409   * @throws { BusinessError } 17700029 - The specified ability is disabled.
2410   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2411   * @systemapi
2412   * @since arkts {'1.1':'9', '1.2':'20'}
2413   * @arkts 1.1&1.2
2414   */
2415  function queryAbilityInfo(want: Want, abilityFlags: number, userId?: number): Promise<Array<AbilityInfo>>;
2416
2417  /**
2418   * Query the AbilityInfo by the given Want Array.
2419   *
2420   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2421   * @param { Array<Want> } wants - Indicates the Want Array containing the application bundle name to be queried.
2422   * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned.
2423   * @param { number } [userId] - userId Indicates the user ID.
2424   * @returns { Promise<Array<AbilityInfo>> } Returns a list of AbilityInfo objects.
2425   * @throws { BusinessError } 201 - Permission denied.
2426   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2427   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
2428   * 2. Incorrect parameter types; 3. At least one parameter(action, entity, uri or type) is required for implicit query.
2429   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2430   * @throws { BusinessError } 17700003 - The specified ability is not found.
2431   * @throws { BusinessError } 17700004 - The specified userId is invalid.
2432   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2433   * @throws { BusinessError } 17700029 - The specified ability is disabled.
2434   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2435   * @systemapi
2436   * @since arkts {'1.1':'12', '1.2':'20'}
2437   * @arkts 1.1&1.2
2438   */
2439  function queryAbilityInfo(wants: Array<Want>, abilityFlags: number, userId?: number): Promise<Array<AbilityInfo>>;
2440
2441  /**
2442   * Query the AbilityInfo by the given Want.
2443   *
2444   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2445   * @param { Want } want - Indicates the Want containing the application bundle name to be queried.
2446   * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned.
2447   * @param { number } userId - userId Indicates the user ID.
2448   * @returns { Array<AbilityInfo> } Returns a list of AbilityInfo objects.
2449   * @throws { BusinessError } 201 - Permission denied.
2450   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2451   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
2452   * 2. Incorrect parameter types; 3. At least one parameter(action, entity, uri or type) is required for implicit query.
2453   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2454   * @throws { BusinessError } 17700003 - The specified ability is not found.
2455   * @throws { BusinessError } 17700004 - The specified userId is invalid.
2456   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2457   * @throws { BusinessError } 17700029 - The specified ability is disabled.
2458   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2459   * @systemapi
2460   * @since arkts {'1.1':'10', '1.2':'20'}
2461   * @arkts 1.1&1.2
2462   */
2463  function queryAbilityInfoSync(want: Want, abilityFlags: number, userId?: number): Array<AbilityInfo>;
2464
2465  /**
2466   * Get AbilityInfo by the given uri.
2467   *
2468   * @permission ohos.permission.GET_ABILITY_INFO
2469   * @param { string } uri - Indicates the uri used for matching ability. The value is the same as that of the uris field under skills in the module.json5 file.
2470   * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned.
2471   * @returns { Promise<Array<AbilityInfo>> } Returns a list of AbilityInfo objects.
2472   * @throws { BusinessError } 201 - Permission denied.
2473   * @throws { BusinessError } 17700003 - The ability is not found.
2474   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2475   * @atomicservice
2476   * @since 20
2477   */
2478  function getAbilityInfo(uri: string, abilityFlags: number): Promise<Array<AbilityInfo>>;
2479
2480  /**
2481   * Query extension info of by utilizing a Want.
2482   *
2483   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2484   * @param { Want } want - Indicates the Want containing the application bundle name to be queried.
2485   * @param { ExtensionAbilityType } extensionAbilityType - Indicates ExtensionAbilityType.
2486   * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the
2487   *  ExtensionAbilityInfo objects that will be returned.
2488   * @param { AsyncCallback<Array<ExtensionAbilityInfo>> } callback - The callback of querying extension ability info result.
2489   * @throws { BusinessError } 201 - Permission denied.
2490   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2491   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
2492   * 2. Incorrect parameter types; 3. At least one parameter(action, entity, uri or type) is required for implicit query.
2493   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2494   * @throws { BusinessError } 17700003 - The specified extensionAbility is not found.
2495   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2496   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2497   * @systemapi
2498   * @since arkts {'1.1':'9', '1.2':'20'}
2499   * @arkts 1.1&1.2
2500   */
2501  function queryExtensionAbilityInfo(want: Want, extensionAbilityType: ExtensionAbilityType,
2502    extensionAbilityFlags: number, callback: AsyncCallback<Array<ExtensionAbilityInfo>>): void;
2503
2504  /**
2505   * Query extension info of by utilizing a Want.
2506   *
2507   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2508   * @param { Want } want - Indicates the Want containing the application bundle name to be queried.
2509   * @param { ExtensionAbilityType } extensionAbilityType - Indicates ExtensionAbilityType.
2510   * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the
2511   *  ExtensionAbilityInfo objects that will be returned.
2512   * @param { number } userId - Indicates the user ID.
2513   * @param { AsyncCallback<Array<ExtensionAbilityInfo>> } callback - The callback of querying extension ability info result.
2514   * @throws { BusinessError } 201 - Permission denied.
2515   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2516   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
2517   * 2. Incorrect parameter types; 3. At least one parameter(action, entity, uri or type) is required for implicit query.
2518   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2519   * @throws { BusinessError } 17700003 - The specified extensionAbility is not found.
2520   * @throws { BusinessError } 17700004 - The specified userId is invalid.
2521   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2522   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2523   * @systemapi
2524   * @since arkts {'1.1':'9', '1.2':'20'}
2525   * @arkts 1.1&1.2
2526   */
2527  function queryExtensionAbilityInfo(want: Want, extensionAbilityType: ExtensionAbilityType,
2528    extensionAbilityFlags: number, userId: number, callback: AsyncCallback<Array<ExtensionAbilityInfo>>): void;
2529
2530  /**
2531   * Query the ExtensionAbilityInfo by the given Want.
2532   *
2533   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2534   * @param { Want } want - Indicates the Want containing the application bundle name to be queried.
2535   * @param { ExtensionAbilityType } extensionAbilityType - Indicates ExtensionAbilityType.
2536   * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the
2537   *  ExtensionAbilityInfo objects that will be returned.
2538   * @param { number } userId - Indicates the user ID.
2539   * @returns { Promise<Array<ExtensionAbilityInfo>> } Returns a list of ExtensionAbilityInfo objects.
2540   * @throws { BusinessError } 201 - Permission denied.
2541   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2542   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
2543   * 2. Incorrect parameter types; 3. At least one parameter(action, entity, uri or type) is required for implicit query.
2544   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2545   * @throws { BusinessError } 17700003 - The specified extensionAbility is not found.
2546   * @throws { BusinessError } 17700004 - The specified userId is invalid.
2547   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2548   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2549   * @systemapi
2550   * @since arkts {'1.1':'9', '1.2':'20'}
2551   * @arkts 1.1&1.2
2552   */
2553  function queryExtensionAbilityInfo(want: Want, extensionAbilityType: ExtensionAbilityType,
2554    extensionAbilityFlags: number, userId?: number): Promise<Array<ExtensionAbilityInfo>>;
2555
2556  /**
2557   * Query the ExtensionAbilityInfo by the given Want.
2558   *
2559   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2560   * @param { Want } want - Indicates the Want containing the application bundle name to be queried.
2561   * @param { ExtensionAbilityType } extensionAbilityType - Indicates ExtensionAbilityType.
2562   * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the
2563   *  ExtensionAbilityInfo objects that will be returned.
2564   * @param { number } userId - Indicates the user ID.
2565   * @returns { Array<ExtensionAbilityInfo> } Returns a list of ExtensionAbilityInfo objects.
2566   * @throws { BusinessError } 201 - Permission denied.
2567   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2568   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
2569   * 2. Incorrect parameter types; 3. At least one parameter(action, entity, uri or type) is required for implicit query.
2570   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2571   * @throws { BusinessError } 17700003 - The specified extensionAbility is not found.
2572   * @throws { BusinessError } 17700004 - The specified userId is invalid.
2573   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2574   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2575   * @systemapi
2576   * @since arkts {'1.1':'10', '1.2':'20'}
2577   * @arkts 1.1&1.2
2578   */
2579  function queryExtensionAbilityInfoSync(want: Want, extensionAbilityType: ExtensionAbilityType,
2580    extensionAbilityFlags: number, userId?: number): Array<ExtensionAbilityInfo>;
2581
2582  /**
2583   * Query the ExtensionAbilityInfo by the given Want.
2584   *
2585   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2586   * @param { Want } want - Indicates the Want containing the application bundle name to be queried.
2587   * @param { string } extensionAbilityType - Indicates extensionAbilityType.
2588   * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the
2589   *  ExtensionAbilityInfo objects that will be returned.
2590   * @param { number } userId - Indicates the user ID.
2591   * @returns { Array<ExtensionAbilityInfo> } Returns a list of ExtensionAbilityInfo objects.
2592   * @throws { BusinessError } 201 - Permission denied.
2593   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2594   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
2595   * 2. Incorrect parameter types; 3. At least one parameter(action, entity, uri or type) is required for implicit query.
2596   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2597   * @throws { BusinessError } 17700003 - The specified extensionAbility is not found.
2598   * @throws { BusinessError } 17700004 - The specified userId is invalid.
2599   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
2600   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2601   * @systemapi
2602   * @since arkts {'1.1':'11', '1.2':'20'}
2603   * @arkts 1.1&1.2
2604   */
2605  function queryExtensionAbilityInfoSync(want: Want, extensionAbilityType: string,
2606    extensionAbilityFlags: number, userId?: number): Array<ExtensionAbilityInfo>;
2607
2608  /**
2609   * Query the ExtensionAbilityInfo by extension ability type.
2610   *
2611   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2612   * @param { string } extensionAbilityType - Indicates ExtensionAbilityType.
2613   * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the
2614   *  ExtensionAbilityInfo objects that will be returned.
2615   * @param { number } userId - Indicates the user ID.
2616   * @returns { Array<ExtensionAbilityInfo> } Returns a list of ExtensionAbilityInfo objects.
2617   * @throws { BusinessError } 201 - Permission denied.
2618   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2619   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
2620   * 2. Incorrect parameter types; 3. Parameter extensionAbilityType is empty.
2621   * @throws { BusinessError } 17700003 - The specified extensionAbility is not found.
2622   * @throws { BusinessError } 17700004 - The specified userId is invalid.
2623   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2624   * @systemapi
2625   * @since arkts {'1.1':'11', '1.2':'20'}
2626   * @arkts 1.1&1.2
2627   */
2628  function queryExtensionAbilityInfoSync(extensionAbilityType: string, extensionAbilityFlags: number,
2629    userId?: number): Array<ExtensionAbilityInfo>;
2630
2631  /**
2632   * Obtains bundle name by the given uid. The application requires to be a system application when requesting the permission of ohos.permission.GET_BUNDLE_INFO.
2633   *
2634   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2635   * @param { number } uid - Indicates the UID of an application.
2636   * @param { AsyncCallback<string> } callback - The callback of getting bundle name.
2637   * @throws { BusinessError } 201 - Permission denied.
2638   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2639   * @throws { BusinessError } 17700021 - The uid is not found.
2640   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2641   * @since arkts {'1.1':'14', '1.2':'20'}
2642   * @arkts 1.1&1.2
2643   */
2644  function getBundleNameByUid(uid: number, callback: AsyncCallback<string>): void;
2645
2646  /**
2647   * Obtains bundle name by the given uid. The application requires to be a system application when requesting the permission of ohos.permission.GET_BUNDLE_INFO.
2648   *
2649   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2650   * @param { number } uid - Indicates the UID of an application.
2651   * @returns { Promise<string> } Returns the bundle name.
2652   * @throws { BusinessError } 201 - Permission denied.
2653   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2654   * @throws { BusinessError } 17700021 - The uid is not found.
2655   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2656   * @since arkts {'1.1':'14', '1.2':'20'}
2657   * @arkts 1.1&1.2
2658   */
2659  function getBundleNameByUid(uid: number): Promise<string>;
2660
2661  /**
2662   * Obtains bundle name by the given uid. The application requires to be a system application when requesting the permission of ohos.permission.GET_BUNDLE_INFO.
2663   *
2664   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
2665   * @param { number } uid - Indicates the UID of an application.
2666   * @returns { string } Returns the bundle name.
2667   * @throws { BusinessError } 201 - Permission denied.
2668   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2669   * @throws { BusinessError } 17700021 - The uid is not found.
2670   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2671   * @since arkts {'1.1':'14', '1.2':'20'}
2672   * @arkts 1.1&1.2
2673   */
2674  function getBundleNameByUidSync(uid: number): string;
2675
2676  /**
2677   * Obtains information about an application bundle contained in an ohos Ability Package (HAP).
2678   *
2679   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
2680   * @param { string } hapFilePath - Indicates the path storing the HAP.
2681   *  The path should be the relative path to the data directory of the current application.
2682   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo object to be returned.
2683   * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle archive info result.
2684   * @throws { BusinessError } 201 - Permission denied.
2685   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2686   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2687   * @throws { BusinessError } 17700022 - The hapFilePath is invalid.
2688   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2689   * @systemapi
2690   * @since 9
2691   */
2692  function getBundleArchiveInfo(hapFilePath: string, bundleFlags: number, callback: AsyncCallback<BundleInfo>): void;
2693
2694  /**
2695   * Obtains information about an application bundle contained in an ohos Ability Package (HAP).
2696   *
2697   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
2698   * @param { string } hapFilePath - Indicates the path storing the HAP.
2699   *  The path should be the relative path to the data directory of the current application.
2700   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo object to be returned.
2701   * @returns { Promise<BundleInfo> } Returns the BundleInfo object.
2702   * @throws { BusinessError } 201 - Permission denied.
2703   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2704   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2705   * @throws { BusinessError } 17700022 - The hapFilePath is invalid.
2706   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2707   * @systemapi
2708   * @since 9
2709   */
2710  function getBundleArchiveInfo(hapFilePath: string, bundleFlags: number): Promise<BundleInfo>;
2711
2712  /**
2713   * Obtains information about an application bundle contained in an ohos Ability Package (HAP).
2714   *
2715   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
2716   * @param { string } hapFilePath - Indicates the path storing the HAP.
2717   *  The path should be the relative path to the data directory of the current application.
2718   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo object to be returned.
2719   * @returns { BundleInfo } Returns the BundleInfo object.
2720   * @throws { BusinessError } 201 - Permission denied.
2721   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2722   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2723   * @throws { BusinessError } 17700022 - The hapFilePath is invalid.
2724   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2725   * @systemapi
2726   * @since 10
2727   */
2728  function getBundleArchiveInfoSync(hapFilePath: string, bundleFlags: number): BundleInfo;
2729
2730  /**
2731   * Clears cache data of a specified application.
2732   *
2733   * @permission ohos.permission.REMOVE_CACHE_FILES
2734   * @param { string } bundleName - Indicates the bundle name of the application whose cache data is to be cleaned.
2735   * @param { AsyncCallback<void> } callback - The callback of cleaning bundle cache files result.
2736   * @throws { BusinessError } 201 - Permission denied.
2737   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2738   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2739   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2740   * @throws { BusinessError } 17700030 - The specified bundle does not support clearing of cache files.
2741   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2742   * @systemapi
2743   * @since 9
2744   */
2745  function cleanBundleCacheFiles(bundleName: string, callback: AsyncCallback<void>): void;
2746
2747  /**
2748   * Clears cache data of a specified application.
2749   *
2750   * @permission ohos.permission.REMOVE_CACHE_FILES
2751   * @param { string } bundleName - Indicates the bundle name of the application whose cache data is to be cleaned.
2752   * @returns { Promise<void> } Clean bundle cache files result
2753   * @throws { BusinessError } 201 - Permission denied.
2754   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2755   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2756   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2757   * @throws { BusinessError } 17700030 - The specified bundle does not support clearing of cache files.
2758   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2759   * @systemapi
2760   * @since 9
2761   */
2762  function cleanBundleCacheFiles(bundleName: string): Promise<void>;
2763
2764  /**
2765   * Clears cache data of a specified application.
2766   *
2767   * @permission ohos.permission.REMOVE_CACHE_FILES
2768   * @param { string } bundleName - Indicates the bundle name of the application whose cache data is to be cleaned.
2769   * @param { number } appIndex - Indicates the index of clone app.
2770   * @returns { Promise<void> } Clean bundle cache files result
2771   * @throws { BusinessError } 201 - Permission denied.
2772   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2773   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2774   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2775   * @throws { BusinessError } 17700030 - The specified bundle does not support clearing of cache files.
2776   * @throws { BusinessError } 17700061 - AppIndex not in valid range.
2777   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2778   * @systemapi
2779   * @since 15
2780   */
2781  function cleanBundleCacheFiles(bundleName: string, appIndex: number): Promise<void>;
2782
2783  /**
2784   * Get the all bundle cache size of the current user.
2785   *
2786   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
2787   * @returns { Promise<number> } Returns all bundle cache size.
2788   * @throws { BusinessError } 201 - Permission denied.
2789   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2790   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2791   * @systemapi
2792   * @since 15
2793   */
2794  function getAllBundleCacheSize(): Promise<number>;
2795
2796  /**
2797   * Clean all bundle cache files of the current user, does not include the currently running program.
2798   *
2799   * @permission ohos.permission.REMOVE_CACHE_FILES
2800   * @returns { Promise<void> } Clear all bundle cache results.
2801   * @throws { BusinessError } 201 - Permission denied.
2802   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2803   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2804   * @systemapi
2805   * @since 15
2806   */
2807  function cleanAllBundleCache(): Promise<void>;
2808
2809  /**
2810   * Sets whether to enable a specified application.
2811   *
2812   * @permission ohos.permission.CHANGE_ABILITY_ENABLED_STATE
2813   * @param { string } bundleName - Indicates the bundle name of the application.
2814   * @param { number } appIndex - Indicates the index of clone app.
2815   * @param { boolean } isEnabled - The value true means to enable it, and the value false means to disable it.
2816   * @returns { Promise<void> } set app enabled result.
2817   * @throws { BusinessError } 201 - Permission denied.
2818   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2819   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2820   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2821   * @throws { BusinessError } 17700061 - AppIndex not in valid range.
2822   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2823   * @systemapi
2824   * @since arkts {'1.1':'12', '1.2':'20'}
2825   * @arkts 1.1&1.2
2826   */
2827  function setApplicationEnabled(bundleName: string, appIndex: number, isEnabled: boolean): Promise<void>;
2828
2829  /**
2830   * Sets whether to enable a specified application.
2831   *
2832   * @permission ohos.permission.CHANGE_ABILITY_ENABLED_STATE
2833   * @param { string } bundleName - Indicates the bundle name of the application.
2834   * @param { boolean } isEnabled - The value true means to enable it, and the value false means to disable it.
2835   * @param { AsyncCallback<void> } callback - The callback of setting app enabled result.
2836   * @throws { BusinessError } 201 - Permission denied.
2837   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2838   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2839   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2840   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2841   * @systemapi
2842   * @since arkts {'1.1':'9', '1.2':'20'}
2843   * @arkts 1.1&1.2
2844   */
2845  function setApplicationEnabled(bundleName: string, isEnabled: boolean, callback: AsyncCallback<void>): void;
2846
2847  /**
2848   * Sets whether to enable a specified application.
2849   *
2850   * @permission ohos.permission.CHANGE_ABILITY_ENABLED_STATE
2851   * @param { string } bundleName - Indicates the bundle name of the application.
2852   * @param { boolean } isEnabled - The value true means to enable it, and the value false means to disable it.
2853   * @returns { Promise<void> } set app enabled result.
2854   * @throws { BusinessError } 201 - Permission denied.
2855   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2856   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2857   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2858   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2859   * @systemapi
2860   * @since arkts {'1.1':'9', '1.2':'20'}
2861   * @arkts 1.1&1.2
2862   */
2863  function setApplicationEnabled(bundleName: string, isEnabled: boolean): Promise<void>;
2864
2865  /**
2866   * Sets whether to enable a specified application.
2867   *
2868   * @permission ohos.permission.CHANGE_ABILITY_ENABLED_STATE
2869   * @param { string } bundleName - Indicates the bundle name of the application.
2870   * @param { boolean } isEnabled - The value true means to enable it, and the value false means to disable it.
2871   * @throws { BusinessError } 201 - Permission denied.
2872   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2873   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2874   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2875   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2876   * @systemapi
2877   * @since arkts {'1.1':'10', '1.2':'20'}
2878   * @arkts 1.1&1.2
2879   */
2880  function setApplicationEnabledSync(bundleName: string, isEnabled: boolean): void;
2881
2882  /**
2883   * Sets whether to enable a specified ability.
2884   *
2885   * @permission ohos.permission.CHANGE_ABILITY_ENABLED_STATE
2886   * @param { AbilityInfo } info - Indicates information about the ability to set.
2887   * @param { number } appIndex - Indicates the index of clone app.
2888   * @param { boolean } isEnabled - The value true means to enable it, and the value false means to disable it.
2889   * @returns { Promise<void> } set ability enabled result.
2890   * @throws { BusinessError } 201 - Permission denied.
2891   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2892   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2893   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2894   * @throws { BusinessError } 17700003 - The specified abilityInfo is not found.
2895   * @throws { BusinessError } 17700061 - AppIndex not in valid range.
2896   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2897   * @systemapi
2898   * @since arkts {'1.1':'12', '1.2':'20'}
2899   * @arkts 1.1&1.2
2900   */
2901  function setAbilityEnabled(info: AbilityInfo, appIndex: number, isEnabled: boolean): Promise<void>;
2902
2903  /**
2904   * Sets whether to enable a specified ability.
2905   *
2906   * @permission ohos.permission.CHANGE_ABILITY_ENABLED_STATE
2907   * @param { AbilityInfo } info - Indicates information about the ability to set.
2908   * @param { boolean } isEnabled - The value true means to enable it, and the value false means to disable it.
2909   * @param { AsyncCallback<void> } callback - The callback of setting ability enabled result.
2910   * @throws { BusinessError } 201 - Permission denied.
2911   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2912   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2913   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2914   * @throws { BusinessError } 17700003 - The specified abilityInfo is not found.
2915   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2916   * @systemapi
2917   * @since arkts {'1.1':'9', '1.2':'20'}
2918   * @arkts 1.1&1.2
2919   */
2920  function setAbilityEnabled(info: AbilityInfo, isEnabled: boolean, callback: AsyncCallback<void>): void;
2921
2922  /**
2923   * Sets whether to enable a specified ability.
2924   *
2925   * @permission ohos.permission.CHANGE_ABILITY_ENABLED_STATE
2926   * @param { AbilityInfo } info - Indicates information about the ability to set.
2927   * @param { boolean } isEnabled - The value true means to enable it, and the value false means to disable it.
2928   * @returns { Promise<void> } set ability enabled result.
2929   * @throws { BusinessError } 201 - Permission denied.
2930   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2931   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2932   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2933   * @throws { BusinessError } 17700003 - The specified abilityInfo is not found.
2934   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2935   * @systemapi
2936   * @since arkts {'1.1':'9', '1.2':'20'}
2937   * @arkts 1.1&1.2
2938   */
2939  function setAbilityEnabled(info: AbilityInfo, isEnabled: boolean): Promise<void>;
2940
2941  /**
2942   * Sets whether to enable a specified ability.
2943   *
2944   * @permission ohos.permission.CHANGE_ABILITY_ENABLED_STATE
2945   * @param { AbilityInfo } info - Indicates information about the ability to set.
2946   * @param { boolean } isEnabled - The value true means to enable it, and the value false means to disable it.
2947   * @throws { BusinessError } 201 - Permission denied.
2948   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2949   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2950   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2951   * @throws { BusinessError } 17700003 - The specified abilityInfo is not found.
2952   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2953   * @systemapi
2954   * @since arkts {'1.1':'10', '1.2':'20'}
2955   * @arkts 1.1&1.2
2956   */
2957  function setAbilityEnabledSync(info: AbilityInfo, isEnabled: boolean): void;
2958
2959  /**
2960   * Checks whether a specified application is enabled.
2961   *
2962   * @param { string } bundleName - Indicates the bundle name of the application.
2963   * @param { number } appIndex - Indicates the index of clone app.
2964   * @returns { Promise<boolean> } Returns true if the application is enabled; returns false otherwise.
2965   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2966   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2967   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2968   * @throws { BusinessError } 17700061 - AppIndex not in valid range.
2969   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2970   * @systemapi
2971   * @since arkts {'1.1':'12', '1.2':'20'}
2972   * @arkts 1.1&1.2
2973   */
2974  function isApplicationEnabled(bundleName: string, appIndex: number): Promise<boolean>;
2975
2976  /**
2977   * Checks whether a specified application is enabled.
2978   *
2979   * @param { string } bundleName - Indicates the bundle name of the application.
2980   * @param { AsyncCallback<boolean> } callback - The callback of checking application enabled result. The result is true if enabled, false otherwise.
2981   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2982   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2983   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2984   * @syscap SystemCapability.BundleManager.BundleFramework.Core
2985   * @systemapi
2986   * @since arkts {'1.1':'9', '1.2':'20'}
2987   * @arkts 1.1&1.2
2988   */
2989  function isApplicationEnabled(bundleName: string, callback: AsyncCallback<boolean>): void;
2990
2991  /**
2992   * Checks whether a specified application is enabled.
2993   *
2994   * @param { string } bundleName - Indicates the bundle name of the application.
2995   * @returns { Promise<boolean> } Returns true if the application is enabled; returns false otherwise.
2996   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
2997   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
2998   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
2999   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3000   * @systemapi
3001   * @since arkts {'1.1':'9', '1.2':'20'}
3002   * @arkts 1.1&1.2
3003   */
3004  function isApplicationEnabled(bundleName: string): Promise<boolean>;
3005
3006  /**
3007   * Checks whether a specified application is enabled.
3008   *
3009   * @param { string } bundleName - Indicates the bundle name of the application.
3010   * @returns { boolean } Returns true if the application is enabled; returns false otherwise.
3011   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3012   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3013   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3014   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3015   * @systemapi
3016   * @since arkts {'1.1':'10', '1.2':'20'}
3017   * @arkts 1.1&1.2
3018   */
3019  function isApplicationEnabledSync(bundleName: string): boolean;
3020
3021  /**
3022   * Checks whether a specified ability is enabled.
3023   *
3024   * @param { AbilityInfo } info - Indicates information about the ability to check.
3025   * @param { number } appIndex - Indicates the index of clone app.
3026   * @returns { Promise<boolean> } Returns true if the ability is enabled; returns false otherwise.
3027   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3028   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3029   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3030   * @throws { BusinessError } 17700003 - The specified abilityName is not found.
3031   * @throws { BusinessError } 17700061 - AppIndex not in valid range.
3032   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3033   * @systemapi
3034   * @since arkts {'1.1':'12', '1.2':'20'}
3035   * @arkts 1.1&1.2
3036   */
3037  function isAbilityEnabled(info: AbilityInfo, appIndex: number): Promise<boolean>;
3038
3039  /**
3040   * Checks whether a specified ability is enabled.
3041   *
3042   * @param { AbilityInfo } info - Indicates information about the ability to check.
3043   * @param { AsyncCallback<boolean> } callback - The callback of checking ability enabled result. The result is true if enabled, false otherwise.
3044   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3045   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3046   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3047   * @throws { BusinessError } 17700003 - The specified abilityName is not found.
3048   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3049   * @systemapi
3050   * @since arkts {'1.1':'9', '1.2':'20'}
3051   * @arkts 1.1&1.2
3052   */
3053  function isAbilityEnabled(info: AbilityInfo, callback: AsyncCallback<boolean>): void;
3054
3055  /**
3056   * Checks whether a specified ability is enabled.
3057   *
3058   * @param { AbilityInfo } info - Indicates information about the ability to check.
3059   * @returns { Promise<boolean> } Returns true if the ability is enabled; returns false otherwise.
3060   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3061   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3062   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3063   * @throws { BusinessError } 17700003 - The specified abilityName is not found.
3064   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3065   * @systemapi
3066   * @since arkts {'1.1':'9', '1.2':'20'}
3067   * @arkts 1.1&1.2
3068   */
3069  function isAbilityEnabled(info: AbilityInfo): Promise<boolean>;
3070
3071  /**
3072   * Checks whether a specified ability is enabled.
3073   *
3074   * @param { AbilityInfo } info - Indicates information about the ability to check.
3075   * @returns { boolean } Returns true if the ability is enabled; returns false otherwise.
3076   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3077   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3078   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3079   * @throws { BusinessError } 17700003 - The specified abilityName is not found.
3080   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3081   * @systemapi
3082   * @since arkts {'1.1':'10', '1.2':'20'}
3083   * @arkts 1.1&1.2
3084   */
3085  function isAbilityEnabledSync(info: AbilityInfo): boolean;
3086
3087  /**
3088   * Obtains the Want for starting the main ability of an application based on the
3089   * given bundle name. The main ability of an application is the ability that has the
3090   * #ACTION_HOME and #ENTITY_HOME Want filters set in the application's <b>config.json</b> or <b>module.json</b> file.
3091   *
3092   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3093   * @param { string } bundleName - Indicates the bundle name of the application.
3094   * @param { number } userId - Indicates the user ID or do not pass user ID.
3095   * @param { AsyncCallback<Want> } callback - The callback for starting the application's main ability.
3096   * @throws { BusinessError } 201 - Calling interface without permission 'ohos.permission.GET_BUNDLE_INFO_PRIVILEGED'.
3097   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3098   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3099   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3100   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3101   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3102   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3103   * @systemapi
3104   * @since arkts {'1.1':'9', '1.2':'20'}
3105   * @arkts 1.1&1.2
3106   */
3107  function getLaunchWantForBundle(bundleName: string, userId: number, callback: AsyncCallback<Want>): void;
3108
3109  /**
3110   * Obtains the Want for starting the main ability of an application based on the
3111   * given bundle name. The main ability of an application is the ability that has the
3112   * #ACTION_HOME and #ENTITY_HOME Want filters set in the application's <b>config.json</b> or <b>module.json</b> file.
3113   *
3114   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3115   * @param { string } bundleName - Indicates the bundle name of the application.
3116   * @param { AsyncCallback<Want> } callback - The callback for starting the application's main ability.
3117   * @throws { BusinessError } 201 - Calling interface without permission 'ohos.permission.GET_BUNDLE_INFO_PRIVILEGED'.
3118   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3119   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3120   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3121   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3122   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3123   * @systemapi
3124   * @since arkts {'1.1':'9', '1.2':'20'}
3125   * @arkts 1.1&1.2
3126   */
3127  function getLaunchWantForBundle(bundleName: string, callback: AsyncCallback<Want>): void;
3128
3129  /**
3130   * Obtains the Want for starting the main ability of an application based on the
3131   * given bundle name. The main ability of an application is the ability that has the
3132   * #ACTION_HOME and #ENTITY_HOME Want filters set in the application's <b>config.json</b> or <b>module.json</b> file.
3133   *
3134   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3135   * @param { string } bundleName - Indicates the bundle name of the application.
3136   * @param { number } userId - Indicates the user ID or do not pass user ID.
3137   * @returns { Promise<Want> } the Want for starting the application's main ability.
3138   * @throws { BusinessError } 201 - Calling interface without permission 'ohos.permission.GET_BUNDLE_INFO_PRIVILEGED'.
3139   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3140   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3141   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3142   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3143   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3144   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3145   * @systemapi
3146   * @since arkts {'1.1':'9', '1.2':'20'}
3147   * @arkts 1.1&1.2
3148   */
3149  function getLaunchWantForBundle(bundleName: string, userId?: number): Promise<Want>;
3150
3151  /**
3152   * Obtains the Want for starting the main ability of an application based on the
3153   * given bundle name. The main ability of an application is the ability that has the
3154   * #ACTION_HOME and #ENTITY_HOME Want filters set in the application's <b>config.json</b> or <b>module.json</b> file.
3155   *
3156   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3157   * @param { string } bundleName - Indicates the bundle name of the application.
3158   * @param { number } userId - Indicates the user ID or do not pass user ID.
3159   * @returns { Want } the Want for starting the application's main ability.
3160   * @throws { BusinessError } 201 - Calling interface without permission 'ohos.permission.GET_BUNDLE_INFO_PRIVILEGED'.
3161   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3162   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3163   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3164   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3165   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3166   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3167   * @systemapi
3168   * @since arkts {'1.1':'10', '1.2':'20'}
3169   * @arkts 1.1&1.2
3170   */
3171  function getLaunchWantForBundleSync(bundleName: string, userId?: number): Want;
3172
3173  /**
3174   * Obtains the Want for starting the main ability of own application.
3175   * The main ability of an application is the ability that has the
3176   * #ACTION_HOME and #ENTITY_HOME Want filters set in the application's <b>config.json</b> or <b>module.json</b> file.
3177   *
3178   * @returns { Want } the Want for starting the application's main ability.
3179   * @throws { BusinessError } 17700072 - The launch want is not found.
3180   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3181   * @atomicservice
3182   * @since 13
3183   */
3184  function getLaunchWant(): Want;
3185
3186  /**
3187   * Obtains the profile designated by metadata name, abilityName and moduleName from the current application.
3188   *
3189   * @param { string } moduleName - Indicates the moduleName of the application.
3190   * @param { string } abilityName - Indicates the abilityName of the application.
3191   * @param { string } metadataName - Indicates the name of metadata in ability.
3192   * @param { AsyncCallback<Array<string>> } callback - The callback of returning string in json-format of the corresponding config file.
3193   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3194   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3195   * @throws { BusinessError } 17700003 - The specified abilityName is not existed.
3196   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3197   * @throws { BusinessError } 17700029 - The specified ability is disabled.
3198   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3199   * @since 9
3200   */
3201  /**
3202   * Obtains the profile designated by metadata name, abilityName and moduleName from the current application.
3203   *
3204   * @param { string } moduleName - Indicates the moduleName of the application.
3205   * @param { string } abilityName - Indicates the abilityName of the application.
3206   * @param { string } metadataName - Indicates the name of metadata in ability.
3207   * @param { AsyncCallback<Array<string>> } callback - The callback of returning string in json-format of the corresponding config file.
3208   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3209   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3210   * @throws { BusinessError } 17700003 - The specified abilityName is not existed.
3211   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3212   * @throws { BusinessError } 17700029 - The specified ability is disabled.
3213   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3214   * @atomicservice
3215   * @since 11
3216   */
3217  function getProfileByAbility(moduleName: string, abilityName: string, metadataName: string, callback: AsyncCallback<Array<string>>): void;
3218
3219  /**
3220   * Obtains the profile designated by metadata name, abilityName and moduleName from the current application.
3221   *
3222   * @param { string } moduleName - Indicates the moduleName of the application.
3223   * @param { string } abilityName - Indicates the abilityName of the application.
3224   * @param { string } metadataName - Indicates the name of metadata in ability.
3225   * @returns { Promise<Array<string>> } Returns string in json-format of the corresponding config file.
3226   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3227   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3228   * @throws { BusinessError } 17700003 - The specified abilityName is not existed.
3229   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3230   * @throws { BusinessError } 17700029 - The specified ability is disabled.
3231   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3232   * @since 9
3233   */
3234  /**
3235   * Obtains the profile designated by metadata name, abilityName and moduleName from the current application.
3236   *
3237   * @param { string } moduleName - Indicates the moduleName of the application.
3238   * @param { string } abilityName - Indicates the abilityName of the application.
3239   * @param { string } metadataName - Indicates the name of metadata in ability.
3240   * @returns { Promise<Array<string>> } Returns string in json-format of the corresponding config file.
3241   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3242   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3243   * @throws { BusinessError } 17700003 - The specified abilityName is not existed.
3244   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3245   * @throws { BusinessError } 17700029 - The specified ability is disabled.
3246   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3247   * @atomicservice
3248   * @since 11
3249   */
3250  function getProfileByAbility(moduleName: string, abilityName: string, metadataName?: string): Promise<Array<string>>;
3251
3252  /**
3253   * Obtains the profile designated by metadata name, abilityName and moduleName from the current application.
3254   *
3255   * @param { string } moduleName - Indicates the moduleName of the application.
3256   * @param { string } abilityName - Indicates the abilityName of the application.
3257   * @param { string } metadataName - Indicates the name of metadata in ability.
3258   * @returns { Array<string> } Returns string in json-format of the corresponding config file.
3259   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3260   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3261   * @throws { BusinessError } 17700003 - The specified abilityName is not existed.
3262   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3263   * @throws { BusinessError } 17700029 - The specified ability is disabled.
3264   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3265   * @since 10
3266   */
3267  /**
3268   * Obtains the profile designated by metadata name, abilityName and moduleName from the current application.
3269   *
3270   * @param { string } moduleName - Indicates the moduleName of the application.
3271   * @param { string } abilityName - Indicates the abilityName of the application.
3272   * @param { string } metadataName - Indicates the name of metadata in ability.
3273   * @returns { Array<string> } Returns string in json-format of the corresponding config file.
3274   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3275   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3276   * @throws { BusinessError } 17700003 - The specified abilityName is not existed.
3277   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3278   * @throws { BusinessError } 17700029 - The specified ability is disabled.
3279   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3280   * @atomicservice
3281   * @since 11
3282   */
3283  function getProfileByAbilitySync(moduleName: string, abilityName: string, metadataName?: string): Array<string>;
3284
3285  /**
3286   * Obtains the profile designated by metadata name, extensionAbilityName and moduleName from the current application.
3287   *
3288   * @param { string } moduleName - Indicates the moduleName of the application.
3289   * @param { string } extensionAbilityName - Indicates the extensionAbilityName of the application.
3290   * @param { string } metadataName - Indicates the name of metadata in ability.
3291   * @param { AsyncCallback<Array<string>> } callback - The callback of returning string in json-format of the corresponding config file.
3292   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3293   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3294   * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed.
3295   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3296   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3297   * @since 9
3298   */
3299  /**
3300   * Obtains the profile designated by metadata name, extensionAbilityName and moduleName from the current application.
3301   *
3302   * @param { string } moduleName - Indicates the moduleName of the application.
3303   * @param { string } extensionAbilityName - Indicates the extensionAbilityName of the application.
3304   * @param { string } metadataName - Indicates the name of metadata in ability.
3305   * @param { AsyncCallback<Array<string>> } callback - The callback of returning string in json-format of the corresponding config file.
3306   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3307   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3308   * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed.
3309   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3310   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3311   * @atomicservice
3312   * @since 11
3313   */
3314  function getProfileByExtensionAbility(moduleName: string, extensionAbilityName: string, metadataName: string, callback: AsyncCallback<Array<string>>): void;
3315
3316  /**
3317   * Obtains the profile designated by metadata name, extensionAbilityName and moduleName from the current application.
3318   *
3319   * @param { string } moduleName - Indicates the moduleName of the application.
3320   * @param { string } extensionAbilityName - Indicates the extensionAbilityName of the application.
3321   * @param { string } metadataName - Indicates the name of metadata in ability.
3322   * @returns { Promise<Array<string>> } Returns string in json-format of the corresponding config file.
3323   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3324   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3325   * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed.
3326   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3327   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3328   * @since 9
3329   */
3330  /**
3331   * Obtains the profile designated by metadata name, extensionAbilityName and moduleName from the current application.
3332   *
3333   * @param { string } moduleName - Indicates the moduleName of the application.
3334   * @param { string } extensionAbilityName - Indicates the extensionAbilityName of the application.
3335   * @param { string } metadataName - Indicates the name of metadata in ability.
3336   * @returns { Promise<Array<string>> } Returns string in json-format of the corresponding config file.
3337   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3338   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3339   * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed.
3340   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3341   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3342   * @atomicservice
3343   * @since 11
3344   */
3345  function getProfileByExtensionAbility(moduleName: string, extensionAbilityName: string, metadataName?: string): Promise<Array<string>>;
3346
3347  /**
3348   * Obtains the profile designated by metadata name, extensionAbilityName and moduleName from the current application.
3349   *
3350   * @param { string } moduleName - Indicates the moduleName of the application.
3351   * @param { string } extensionAbilityName - Indicates the extensionAbilityName of the application.
3352   * @param { string } metadataName - Indicates the name of metadata in ability.
3353   * @returns { Array<string> } Returns string in json-format of the corresponding config file.
3354   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3355   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3356   * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed.
3357   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3358   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3359   * @since 10
3360   */
3361  /**
3362   * Obtains the profile designated by metadata name, extensionAbilityName and moduleName from the current application.
3363   *
3364   * @param { string } moduleName - Indicates the moduleName of the application.
3365   * @param { string } extensionAbilityName - Indicates the extensionAbilityName of the application.
3366   * @param { string } metadataName - Indicates the name of metadata in ability.
3367   * @returns { Array<string> } Returns string in json-format of the corresponding config file.
3368   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3369   * @throws { BusinessError } 17700002 - The specified moduleName is not existed.
3370   * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed.
3371   * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP.
3372   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3373   * @atomicservice
3374   * @since 11
3375   */
3376  function getProfileByExtensionAbilitySync(moduleName: string, extensionAbilityName: string, metadataName?: string): Array<string>;
3377
3378  /**
3379   * Get the permission details by permission name.
3380   *
3381   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3382   * @param { string } permissionName - Indicates permission name.
3383   * @param { AsyncCallback<PermissionDef> } callback - The callback of get permissionDef object result.
3384   * @throws { BusinessError } 201 - Permission denied.
3385   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3386   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3387   * @throws { BusinessError } 17700006 - The specified permission is not found.
3388   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3389   * @systemapi
3390   * @since 9
3391   */
3392  function getPermissionDef(permissionName: string, callback: AsyncCallback<PermissionDef>): void;
3393
3394  /**
3395   * Get the permission details by permission name.
3396   *
3397   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3398   * @param { string } permissionName - Indicates permission name.
3399   * @returns { Promise<PermissionDef> } Returns permissionDef object.
3400   * @throws { BusinessError } 201 - Permission denied.
3401   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3402   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3403   * @throws { BusinessError } 17700006 - The specified permission is not found.
3404   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3405   * @systemapi
3406   * @since 9
3407   */
3408  function getPermissionDef(permissionName: string): Promise<PermissionDef>;
3409
3410  /**
3411   * Get the permission details by permission name.
3412   *
3413   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3414   * @param { string } permissionName - Indicates permission name.
3415   * @returns { PermissionDef } Returns permissionDef object.
3416   * @throws { BusinessError } 201 - Permission denied.
3417   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3418   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3419   * @throws { BusinessError } 17700006 - The specified permission is not found.
3420   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3421   * @systemapi
3422   * @since 10
3423   */
3424  function getPermissionDefSync(permissionName: string): PermissionDef;
3425
3426  /**
3427   * Obtains the label of a specified ability.
3428   *
3429   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
3430   * @param { string } bundleName - Indicates the bundle name of the application to which the ability belongs.
3431   * @param { string } moduleName - Indicates the module name.
3432   * @param { string } abilityName - Indicates the ability name.
3433   * @param { AsyncCallback<string> } callback - The callback of getting ability label result.
3434   * @throws { BusinessError } 201 - Permission denied.
3435   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3436   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3437   * @throws { BusinessError } 801 - Capability not supported.
3438   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3439   * @throws { BusinessError } 17700002 - The specified moduleName is not found.
3440   * @throws { BusinessError } 17700003 - The specified abilityName is not found.
3441   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3442   * @throws { BusinessError } 17700029 - The specified ability is disabled.
3443   * @syscap SystemCapability.BundleManager.BundleFramework.Resource
3444   * @systemapi
3445   * @since arkts {'1.1':'9', '1.2':'20'}
3446   * @arkts 1.1&1.2
3447   */
3448  function getAbilityLabel(bundleName: string, moduleName: string, abilityName: string, callback: AsyncCallback<string>): void;
3449
3450  /**
3451   * Obtains the label of a specified ability.
3452   *
3453   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
3454   * @param { string } bundleName - Indicates the bundle name of the application to which the ability belongs.
3455   * @param { string } moduleName - Indicates the module name.
3456   * @param { string } abilityName - Indicates the ability name.
3457   * @returns { Promise<string> } Returns the label representing the label of the specified ability.
3458   * @throws { BusinessError } 201 - Permission denied.
3459   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3460   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3461   * @throws { BusinessError } 801 - Capability not supported.
3462   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3463   * @throws { BusinessError } 17700002 - The specified moduleName is not found.
3464   * @throws { BusinessError } 17700003 - The specified abilityName is not found.
3465   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3466   * @throws { BusinessError } 17700029 - The specified ability is disabled.
3467   * @syscap SystemCapability.BundleManager.BundleFramework.Resource
3468   * @systemapi
3469   * @since arkts {'1.1':'9', '1.2':'20'}
3470   * @arkts 1.1&1.2
3471   */
3472  function getAbilityLabel(bundleName: string, moduleName: string, abilityName: string): Promise<string>;
3473
3474  /**
3475   * Obtains the label of a specified ability.
3476   *
3477   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
3478   * @param { string } bundleName - Indicates the bundle name of the application to which the ability belongs.
3479   * @param { string } moduleName - Indicates the module name.
3480   * @param { string } abilityName - Indicates the ability name.
3481   * @returns { string } Returns the label representing the label of the specified ability.
3482   * @throws { BusinessError } 201 - Permission denied.
3483   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3484   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3485   * @throws { BusinessError } 801 - Capability not supported.
3486   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3487   * @throws { BusinessError } 17700002 - The specified moduleName is not found.
3488   * @throws { BusinessError } 17700003 - The specified abilityName is not found.
3489   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3490   * @throws { BusinessError } 17700029 - The specified ability is disabled.
3491   * @syscap SystemCapability.BundleManager.BundleFramework.Resource
3492   * @systemapi
3493   * @since arkts {'1.1':'10', '1.2':'20'}
3494   * @arkts 1.1&1.2
3495   */
3496  function getAbilityLabelSync(bundleName: string, moduleName: string, abilityName: string): string;
3497
3498  /**
3499   * Obtains applicationInfo based on a given bundleName and bundleFlags.
3500   *
3501   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
3502   * @param { string } bundleName - Indicates the application bundle name to be queried.
3503   * @param { number } applicationFlags - Indicates the flag used to specify information contained in the ApplicationInfo object that will be returned.
3504   * @param { number } userId - Indicates the user ID or do not pass user ID.
3505   * @returns { ApplicationInfo } - Returns the ApplicationInfo object.
3506   * @throws { BusinessError } 201 - Permission denied.
3507   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3508   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3509   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3510   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3511   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3512   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3513   * @systemapi
3514   * @since arkts {'1.1':'9', '1.2':'20'}
3515   * @arkts 1.1&1.2
3516   */
3517  function getApplicationInfoSync(bundleName: string, applicationFlags: number, userId: number): ApplicationInfo;
3518
3519  /**
3520   * Obtains applicationInfo based on a given bundleName and bundleFlags.
3521   *
3522   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
3523   * @param { string } bundleName - Indicates the application bundle name to be queried.
3524   * @param { number } applicationFlags - Indicates the flag used to specify information contained in the ApplicationInfo object that will be returned.
3525   * @returns { ApplicationInfo } - Returns the ApplicationInfo object.
3526   * @throws { BusinessError } 201 - Permission denied.
3527   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3528   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3529   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3530   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3531   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3532   * @systemapi
3533   * @since arkts {'1.1':'9', '1.2':'20'}
3534   * @arkts 1.1&1.2
3535   */
3536  function getApplicationInfoSync(bundleName: string, applicationFlags: number): ApplicationInfo;
3537
3538  /**
3539   * Obtains bundleInfo based on bundleName, bundleFlags and userId. The application requires to be a system application when requesting the permission of ohos.permission.GET_BUNDLE_INFO.
3540   *
3541   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
3542   * @param { string } bundleName - Indicates the application bundle name to be queried.
3543   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo object that will be returned.
3544   * @param { number } userId - Indicates the user ID or do not pass user ID.
3545   * @returns { BundleInfo } - Returns the BundleInfo object.
3546   * @throws { BusinessError } 201 - Permission denied.
3547   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3548   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3549   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3550   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3551   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3552   * @since arkts {'1.1':'14', '1.2':'20'}
3553   * @arkts 1.1&1.2
3554   */
3555  function getBundleInfoSync(bundleName: string, bundleFlags: number, userId: number): BundleInfo;
3556
3557  /**
3558   * Obtains bundleInfo based on bundleName, bundleFlags. The application requires to be a system application when requesting the permission of ohos.permission.GET_BUNDLE_INFO.
3559   *
3560   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
3561   * @param { string } bundleName - Indicates the application bundle name to be queried.
3562   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo object that will be returned.
3563   * @returns { BundleInfo } - Returns the BundleInfo object.
3564   * @throws { BusinessError } 201 - Permission denied.
3565   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3566   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3567   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3568   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3569   * @since arkts {'1.1':'14', '1.2':'20'}
3570   * @arkts 1.1&1.2
3571   */
3572  function getBundleInfoSync(bundleName: string, bundleFlags: number): BundleInfo;
3573
3574  /**
3575   * Obtains SharedBundleInfo of all shared bundle available in the system.
3576   *
3577   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3578   * @param { AsyncCallback<Array<SharedBundleInfo>> } callback - The callback of getting a list of SharedBundleInfo objects.
3579   * @throws { BusinessError } 201 - Permission denied.
3580   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3581   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3582   * @systemapi
3583   * @since 10
3584   */
3585  function getAllSharedBundleInfo(callback: AsyncCallback<Array<SharedBundleInfo>>): void;
3586
3587  /**
3588   * Obtains SharedBundleInfo of all shared bundle available in the system.
3589   *
3590   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3591   * @returns { Promise<Array<SharedBundleInfo>> } Returns a list of SharedBundleInfo objects.
3592   * @throws { BusinessError } 201 - Permission denied.
3593   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3594   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3595   * @systemapi
3596   * @since 10
3597   */
3598  function getAllSharedBundleInfo(): Promise<Array<SharedBundleInfo>>;
3599
3600  /**
3601   * Obtains SharedBundleInfo of shared bundle by bundle name and module name.
3602   *
3603   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3604   * @param { string } bundleName - Indicates the bundleName of the application.
3605   * @param { string } moduleName - Indicates the moduleName of the application.
3606   * @param { AsyncCallback<Array<SharedBundleInfo>> } callback - The callback of getting a list of SharedBundleInfo objects.
3607   * @throws { BusinessError } 201 - Permission denied.
3608   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3609   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3610   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3611   * @throws { BusinessError } 17700002 - The specified moduleName is not found.
3612   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3613   * @systemapi
3614   * @since 10
3615   */
3616  function getSharedBundleInfo(bundleName: string, moduleName: string, callback: AsyncCallback<Array<SharedBundleInfo>>): void;
3617
3618  /**
3619   * Obtains SharedBundleInfo of shared bundle by bundle name and module name.
3620   *
3621   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3622   * @param { string } bundleName - Indicates the bundleName of the application.
3623   * @param { string } moduleName - Indicates the moduleName of the application.
3624   * @returns { Promise<Array<SharedBundleInfo>> } Returns a list of SharedBundleInfo objects.
3625   * @throws { BusinessError } 201 - Permission denied.
3626   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3627   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3628   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3629   * @throws { BusinessError } 17700002 - The specified moduleName is not found.
3630   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3631   * @systemapi
3632   * @since 10
3633   */
3634  function getSharedBundleInfo(bundleName: string, moduleName: string): Promise<Array<SharedBundleInfo>>;
3635
3636  /**
3637   * Obtains the profile file information of a specified bundle.
3638   *
3639   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3640   * @param { string } bundleName - Indicates the bundle name of the application to which the ability belongs.
3641   * @param { AsyncCallback<AppProvisionInfo> } callback - Indicates the callback of getting AppProvisionInfo result.
3642   * @throws { BusinessError } 201 - Permission denied.
3643   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3644   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
3645   * 2. Incorrect parameter types; 3. Parameter bundleName is empty.
3646   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3647   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3648   * @systemapi
3649   * @since 10
3650   */
3651  function getAppProvisionInfo(bundleName: string, callback: AsyncCallback<AppProvisionInfo>): void;
3652
3653  /**
3654   * Obtains the profile file information of a specified bundle.
3655   *
3656   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3657   * @param { string } bundleName - Indicates the bundle name of the application to which the ability belongs.
3658   * @param { number } userId - Indicates the user ID or do not pass user ID.
3659   * @param { AsyncCallback<AppProvisionInfo> } callback - Indicates the callback of getting AppProvisionInfo result.
3660   * @throws { BusinessError } 201 - Permission denied.
3661   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3662   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
3663   * 2. Incorrect parameter types; 3. Parameter bundleName is empty.
3664   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3665   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3666   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3667   * @systemapi
3668   * @since 10
3669   */
3670  function getAppProvisionInfo(bundleName: string, userId: number, callback: AsyncCallback<AppProvisionInfo>): void;
3671
3672  /**
3673   * Obtains the profile file information of a specified bundle.
3674   *
3675   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3676   * @param { string } bundleName - Indicates the bundle name of the application to which the ability belongs.
3677   * @param { number } userId - Indicates the user ID or do not pass user ID.
3678   * @returns { Promise<AppProvisionInfo> } Returns the AppProvisionInfo object.
3679   * @throws { BusinessError } 201 - Permission denied.
3680   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3681   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
3682   * 2. Incorrect parameter types; 3. Parameter bundleName is empty.
3683   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3684   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3685   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3686   * @systemapi
3687   * @since 10
3688   */
3689  function getAppProvisionInfo(bundleName: string, userId?: number): Promise<AppProvisionInfo>;
3690
3691  /**
3692   * Obtains the profile file information of a specified bundle.
3693   *
3694   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3695   * @param { string } bundleName - Indicates the bundle name of the application to which the ability belongs.
3696   * @param { number } userId - Indicates the user ID or do not pass user ID.
3697   * @returns { AppProvisionInfo } Returns the AppProvisionInfo object.
3698   * @throws { BusinessError } 201 - Permission denied.
3699   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3700   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
3701   *  2. Incorrect parameter types; 3. Parameter bundleName is empty.
3702   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3703   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3704   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3705   * @systemapi
3706   * @since 10
3707   */
3708  function getAppProvisionInfoSync(bundleName: string, userId?: number): AppProvisionInfo;
3709
3710  /**
3711   * Obtains the distribution type specified during bundle installation.
3712   *
3713   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3714   * @param { string } bundleName - Indicates the application bundle name to be queried.
3715   * @returns { string } The specified distribution type.
3716   * @throws { BusinessError } 201 - Permission denied.
3717   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3718   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3719   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3720   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3721   * @systemapi
3722   * @since arkts {'1.1':'10', '1.2':'20'}
3723   * @arkts 1.1&1.2
3724   */
3725  function getSpecifiedDistributionType(bundleName: string): string;
3726
3727  /**
3728   * Obtains the additional information during bundle installation.
3729   *
3730   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3731   * @param { string } bundleName - Indicates the application bundle name to be queried.
3732   * @returns { string } The additional information.
3733   * @throws { BusinessError } 201 - Permission denied.
3734   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3735   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
3736   * 2. Incorrect parameter types; 3. Parameter bundleName is empty.
3737   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3738   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3739   * @systemapi
3740   * @since 10
3741   */
3742  function getAdditionalInfo(bundleName: string): string;
3743
3744  /**
3745   * Obtains the JSON profile designated by profileType, bundleName and moduleName.
3746   *
3747   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
3748   * @param { ProfileType } profileType - Indicates the type of profile to be obtained.
3749   * @param { string } bundleName - Indicates the name of the bundle to which the profile belongs.
3750   * @param { string } moduleName - Indicates the name of the module to which the profile belongs.
3751   * @returns { string } Returns string in json-format of the designated profile.
3752   * @throws { BusinessError } 201 - Permission denied.
3753   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3754   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3755   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3756   * @throws { BusinessError } 17700002 - The specified moduleName is not found.
3757   * @throws { BusinessError } 17700024 - Failed to get the profile because the specified profile is not found in the HAP.
3758   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3759   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3760   * @systemapi
3761   * @since 11
3762   */
3763  /**
3764   * Obtains the JSON profile designated by profileType, bundleName, moduleName and userId.
3765   *
3766   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
3767   * @param { ProfileType } profileType - Indicates the type of profile to be obtained.
3768   * @param { string } bundleName - Indicates the name of the bundle to which the profile belongs.
3769   * @param { string } moduleName - Indicates the name of the module to which the profile belongs.
3770   * @param { number } userId - Indicates the user ID or do not pass user ID.
3771   * @returns { string } Returns string in json-format of the designated profile.
3772   * @throws { BusinessError } 201 - Permission denied.
3773   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3774   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3775   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3776   * @throws { BusinessError } 17700002 - The specified moduleName is not found.
3777   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3778   * @throws { BusinessError } 17700024 - Failed to get the profile because the specified profile is not found in the HAP.
3779   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
3780   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3781   * @systemapi
3782   * @since 12
3783   */
3784  function getJsonProfile(profileType: ProfileType, bundleName: string, moduleName?: string, userId?: number): string;
3785
3786   /**
3787   * Get extend resources.
3788   *
3789   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
3790   * @param { string } bundleName - Indicates the bundleName.
3791   * @returns { Promise<Array<string>> } Returns getExtResource result.
3792   * @throws { BusinessError } 201 - Permission denied.
3793   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3794   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3795   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3796   * @throws { BusinessError } 17700303 - Failed to obtain extended resources.
3797   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3798   * @systemapi
3799   * @since 12
3800   */
3801  function getExtResource(bundleName: string): Promise<Array<string>>;
3802
3803  /**
3804   * Enable dynamic icon.
3805   *
3806   * @permission ohos.permission.ACCESS_DYNAMIC_ICON
3807   * @param { string } bundleName - Indicates the bundleName.
3808   * @param { string } moduleName - Indicates the moduleName for extend resource.
3809   * @returns { Promise<void> } Returns enableDynamicIcon result.
3810   * @throws { BusinessError } 201 - Permission denied.
3811   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3812   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3813   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3814   * @throws { BusinessError } 17700002 - The specified moduleName is not found.
3815   * @throws { BusinessError } 17700304 - Failed to enable the dynamic icon.
3816   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3817   * @systemapi
3818   * @since 12
3819   */
3820  /**
3821   * Enable dynamic icon.
3822   *
3823   * @permission ohos.permission.ACCESS_DYNAMIC_ICON
3824   * @param { string } bundleName - Indicates the bundleName.
3825   * @param { string } moduleName - Indicates the moduleName for extend resource.
3826   * @returns { Promise<void> } Returns enableDynamicIcon result.
3827   * @throws { BusinessError } 201 - Permission denied.
3828   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3829   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3830   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3831   * @throws { BusinessError } 17700002 - The specified moduleName is not found.
3832   * @throws { BusinessError } 17700304 - Failed to enable the dynamic icon.
3833   * @throws { BusinessError } 17700307 - Dynamic icons cannot take effect due to existing custom themes.
3834   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3835   * @systemapi
3836   * @since 20
3837   * @arkts 1.1&1.2
3838   */
3839  function enableDynamicIcon(bundleName: string, moduleName: string): Promise<void>;
3840
3841  /**
3842   * Enable dynamic icon.
3843   * If you need to enable dynamic icon under the current user, ohos.permission.ACCESS_DYNAMIC_ICON
3844   * needs to be applied for.
3845   * If you need to enable dynamic icon under other users, ohos.permission.ACCESS_DYNAMIC_ICON and
3846   * ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS need to be applied for.
3847   *
3848   * @permission ohos.permission.ACCESS_DYNAMIC_ICON or (ohos.permission.ACCESS_DYNAMIC_ICON and ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS)
3849   * @param { string } bundleName - Indicates the bundleName.
3850   * @param { string } moduleName - Indicates the moduleName for extend resource.
3851   * @param { BundleOptions } [option] - Indicates the bundle option.
3852   * @returns { Promise<void> } Returns enableDynamicIcon result.
3853   * @throws { BusinessError } 201 - Permission denied.
3854   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3855   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3856   * @throws { BusinessError } 17700002 - The specified moduleName is not found.
3857   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3858   * @throws { BusinessError } 17700061 - AppIndex not in valid range.
3859   * @throws { BusinessError } 17700304 - Failed to enable the dynamic icon.
3860   * @throws { BusinessError } 17700307 - Dynamic icons cannot take effect due to existing custom themes.
3861   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3862   * @systemapi
3863   * @since 20
3864   */
3865  function enableDynamicIcon(bundleName: string, moduleName: string, option?: BundleOptions): Promise<void>;
3866
3867  /**
3868   * Disable dynamic icon.
3869   *
3870   * @permission ohos.permission.ACCESS_DYNAMIC_ICON
3871   * @param { string } bundleName - Indicates the bundleName.
3872   * @returns { Promise<void> } Returns disableDynamicIcon result.
3873   * @throws { BusinessError } 201 - Permission denied.
3874   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3875   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3876   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3877   * @throws { BusinessError } 17700305 - Failed to disable the dynamic icon.
3878   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3879   * @systemapi
3880   * @since 12
3881   */
3882  function disableDynamicIcon(bundleName: string): Promise<void>;
3883
3884  /**
3885   * Disable dynamic icon.
3886   * If you need to disable dynamic icon under the current user, ohos.permission.ACCESS_DYNAMIC_ICON
3887   * needs to be applied for.
3888   * If you need to disable dynamic icon under other users, ohos.permission.ACCESS_DYNAMIC_ICON and
3889   * ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS need to be applied for.
3890   *
3891   * @permission ohos.permission.ACCESS_DYNAMIC_ICON or (ohos.permission.ACCESS_DYNAMIC_ICON and ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS)
3892   * @param { string } bundleName - Indicates the bundleName.
3893   * @param { BundleOptions } [option] - Indicates the bundle option.
3894   * @returns { Promise<void> } Returns disableDynamicIcon result.
3895   * @throws { BusinessError } 201 - Permission denied.
3896   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3897   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3898   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3899   * @throws { BusinessError } 17700061 - AppIndex not in valid range.
3900   * @throws { BusinessError } 17700305 - Failed to disable the dynamic icon.
3901   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3902   * @systemapi
3903   * @since 20
3904   */
3905  function disableDynamicIcon(bundleName: string, option?: BundleOptions): Promise<void>;
3906
3907  /**
3908   * Get dynamic icon.
3909   *
3910   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
3911   * @param { string } bundleName - Indicates the bundleName.
3912   * @returns { Promise<string> } Returns dynamic icon key.
3913   * @throws { BusinessError } 201 - Permission denied.
3914   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3915   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3916   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3917   * @throws { BusinessError } 17700306 - Failed to obtain the dynamic icon.
3918   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3919   * @systemapi
3920   * @since arkts {'1.1':'12', '1.2':'20'}
3921   * @arkts 1.1&1.2
3922   */
3923  function getDynamicIcon(bundleName: string): Promise<string>;
3924
3925  /**
3926   * Get dynamic icon info.
3927   *
3928   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED and ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
3929   * @param { string } bundleName - Indicates the bundleName.
3930   * @returns { Promise<Array<DynamicIconInfo>> } Returns a list of DynamicIconInfo objects.
3931   * @throws { BusinessError } 201 - Permission denied.
3932   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3933   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
3934   * @throws { BusinessError } 17700306 - Failed to obtain the dynamic icon.
3935   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3936   * @systemapi
3937   * @since 20
3938   */
3939  function getDynamicIconInfo(bundleName: string): Promise<Array<DynamicIconInfo>>;
3940
3941  /**
3942   * Get all dynamic icon info.
3943   * If you need to query dynamic icon information under the current user, ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
3944   * needs to be applied for.
3945   * If you need to query dynamic icon information under other users, ohos.permission.GET_BUNDLE_INFO_PRIVILEGED and
3946   * ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS need to be applied for.
3947   *
3948   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED and ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
3949   * @param { number } [userId] - Indicates the user id, default value is to query all users.
3950   * @returns { Promise<Array<DynamicIconInfo>> } Returns a list of DynamicIconInfo objects.
3951   * @throws { BusinessError } 201 - Permission denied.
3952   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3953   * @throws { BusinessError } 17700004 - The specified user ID is not found.
3954   * @throws { BusinessError } 17700306 - Failed to obtain the dynamic icon.
3955   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3956   * @systemapi
3957   * @since 20
3958   */
3959  function getAllDynamicIconInfo(userId?: number): Promise<Array<DynamicIconInfo>>;
3960
3961  /**
3962   * Verifies the validity of .abc files. Only .abc files passed the verification can run on the restricted VM.
3963   *
3964   * @permission ohos.permission.RUN_DYN_CODE
3965   * @param { Array<string> } abcPaths - The abc path.
3966   * @param { boolean } deleteOriginalFiles - Used to decide whether to delete the original files.
3967   * @param { AsyncCallback<void> } callback - Indicates the callback of verifyAbc result.
3968   * @throws { BusinessError } 201 - Permission denied.
3969   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3970   * @throws { BusinessError } 17700201 - Failed to verify the abc file.
3971   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3972   * @since 11
3973   */
3974  /**
3975   * Verifies the validity of .abc files. Only .abc files passed the verification can run on the restricted VM.
3976   *
3977   * @permission ohos.permission.RUN_DYN_CODE
3978   * @param { Array<string> } abcPaths - The abc path.
3979   * @param { boolean } deleteOriginalFiles - Used to decide whether to delete the original files.
3980   * @param { AsyncCallback<void> } callback - Indicates the callback of verifyAbc result.
3981   * @throws { BusinessError } 201 - Permission denied.
3982   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
3983   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
3984   * @throws { BusinessError } 17700201 - Failed to verify the abc file.
3985   * @syscap SystemCapability.BundleManager.BundleFramework.Core
3986   * @systemapi
3987   * @since 12
3988   */
3989  function verifyAbc(abcPaths: Array<string>, deleteOriginalFiles: boolean, callback: AsyncCallback<void>): void;
3990
3991  /**
3992   * Verifies the validity of .abc files. Only .abc files passed the verification can run on the restricted VM.
3993   *
3994   * @permission ohos.permission.RUN_DYN_CODE
3995   * @param { Array<string> } abcPaths - The abc path.
3996   * @param { boolean } deleteOriginalFiles - Used to decide whether to delete the original files.
3997   * @returns { Promise<void> } Returns verifyAbc result.
3998   * @throws { BusinessError } 201 - Permission denied.
3999   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
4000   * @throws { BusinessError } 17700201 - Failed to verify the abc file.
4001   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4002   * @since 11
4003   */
4004  /**
4005   * Verifies the validity of .abc files. Only .abc files passed the verification can run on the restricted VM.
4006   *
4007   * @permission ohos.permission.RUN_DYN_CODE
4008   * @param { Array<string> } abcPaths - The abc path.
4009   * @param { boolean } deleteOriginalFiles - Used to decide whether to delete the original files.
4010   * @returns { Promise<void> } Returns verifyAbc result.
4011   * @throws { BusinessError } 201 - Permission denied.
4012   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4013   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
4014   * @throws { BusinessError } 17700201 - Failed to verify the abc file.
4015   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4016   * @systemapi
4017   * @since 12
4018   */
4019  function verifyAbc(abcPaths: Array<string>, deleteOriginalFiles: boolean): Promise<void>;
4020
4021  /**
4022   * Obtains recoverable preinstalled applications.
4023   *
4024   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
4025   * @param { AsyncCallback<Array<RecoverableApplicationInfo>> } callback - The callback of getting a list of RecoverableApplicationInfo objects.
4026   * @throws { BusinessError } 201 - Permission denied.
4027   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4028   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4029   * @systemapi
4030   * @since 11
4031   */
4032  function getRecoverableApplicationInfo(callback: AsyncCallback<Array<RecoverableApplicationInfo>>): void;
4033
4034  /**
4035   * Obtains recoverable preinstalled applications.
4036   *
4037   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
4038   * @returns { Promise<Array<RecoverableApplicationInfo>> } Returns a list of RecoverableApplicationInfo objects.
4039   * @throws { BusinessError } 201 - Permission denied.
4040   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4041   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4042   * @systemapi
4043   * @since 11
4044   */
4045  function getRecoverableApplicationInfo(): Promise<Array<RecoverableApplicationInfo>>;
4046
4047  /**
4048   * Set additional information to the specified application.
4049   *
4050   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
4051   * @param { string } bundleName - Indicates the bundle name of the application.
4052   * @param { string } additionalInfo - The additional information.
4053   * @throws { BusinessError } 201 - Permission denied.
4054   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4055   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
4056   * 2. Incorrect parameter types; 3. Parameter bundleName is empty.
4057   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
4058   * @throws { BusinessError } 17700053 - The caller is not AppGallery.
4059   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4060   * @systemapi
4061   * @since 11
4062   */
4063  function setAdditionalInfo(bundleName: string, additionalInfo: string): void;
4064
4065  /**
4066   * Delete the verified .abc file.
4067   *
4068   * @permission ohos.permission.RUN_DYN_CODE
4069   * @param { string } abcPath - The abc path.
4070   * @returns { Promise<void> } Returns deleteAbc result.
4071   * @throws { BusinessError } 201 - Permission denied.
4072   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
4073   * @throws { BusinessError } 17700202 - Failed to delete the abc file.
4074   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4075   * @since 11
4076   */
4077  /**
4078   * Delete the verified .abc file.
4079   *
4080   * @permission ohos.permission.RUN_DYN_CODE
4081   * @param { string } abcPath - The abc path.
4082   * @returns { Promise<void> } Returns deleteAbc result.
4083   * @throws { BusinessError } 201 - Permission denied.
4084   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4085   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
4086   * @throws { BusinessError } 17700202 - Failed to delete the abc file.
4087   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4088   * @systemapi
4089   * @since 12
4090   */
4091  function deleteAbc(abcPath: string): Promise<void>;
4092
4093  /**
4094   * Check whether the link can be opened.
4095   *
4096   * @param { string } link - Indicates the link to be opened.
4097   * @returns { boolean } Returns true if the link can be opened; returns false otherwise.
4098   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
4099   * @throws { BusinessError } 17700055 - The specified link is invalid.
4100   * @throws { BusinessError } 17700056 - The scheme of the specified link is not in the querySchemes.
4101   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4102   * @atomicservice
4103   * @since 12
4104   */
4105  function canOpenLink(link: string): boolean;
4106
4107  /**
4108   * Obtains PreinstalledApplicationInfo of all applications preinstalled in the system.
4109   *
4110   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
4111   * @returns { Promise<Array<PreinstalledApplicationInfo>> } Returns a list of PreinstalledApplicationInfo objects.
4112   * @throws { BusinessError } 201 - Permission denied.
4113   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4114   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4115   * @systemapi
4116   * @since 12
4117   */
4118  function getAllPreinstalledApplicationInfo(): Promise<Array<PreinstalledApplicationInfo>>;
4119
4120  /**
4121   * Get a list of BundleInfo objects by developerId.
4122   *
4123   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
4124   * @param { string } developerId - Indicates the developerId of the application.
4125   * @returns { Array<BundleInfo> } Returns a list of BundleInfo objects.
4126   * @throws { BusinessError } 201 - Permission denied.
4127   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4128   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
4129   * 2. Incorrect parameter types; 3. Parameter developerId is empty.
4130   * @throws { BusinessError } 17700059 - The specified developerId is invalid.
4131   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4132   * @systemapi
4133   * @since 12
4134   */
4135  function getAllBundleInfoByDeveloperId(developerId: string): Array<BundleInfo>;
4136
4137  /**
4138   * Get a list of developedId by distribution type.
4139   *
4140   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
4141   * @param { number } appDistributionType - Indicates the distribution type of the application, and if not passed in, it gets all the developerId.
4142   * @returns { Array<string> } Returns a list of developerId.
4143   * @throws { BusinessError } 201 - Permission denied.
4144   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4145   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
4146   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4147   * @systemapi
4148   * @since 12
4149   */
4150  function getDeveloperIds(appDistributionType?: number): Array<string>;
4151
4152  /**
4153   * Switch uninstall state of a specified application.
4154   *
4155   * @permission ohos.permission.CHANGE_BUNDLE_UNINSTALL_STATE
4156   * @param { string } bundleName - Indicates the bundle name of the application.
4157   * @param { boolean } state - Indicates whether the specified application can be uninstalled.
4158   * @throws { BusinessError } 201 - Permission denied.
4159   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4160   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
4161   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
4162   * @throws { BusinessError } 17700060 - The specified application cannot be uninstalled.
4163   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4164   * @systemapi
4165   * @since 12
4166   */
4167  function switchUninstallState(bundleName: string, state: boolean): void;
4168
4169  /**
4170   * Get the SignatureInfo of the application through UID.
4171   *
4172   * @permission ohos.permission.GET_SIGNATURE_INFO
4173   * @param { number } uid - Indicates the UID of an application.
4174   * @returns { SignatureInfo } The result of getting the signature info.
4175   * @throws { BusinessError } 201 - Permission denied.
4176   * @throws { BusinessError } 17700021 - The uid is not found.
4177   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4178   * @since 18
4179   */
4180  function getSignatureInfo(uid: number): SignatureInfo;
4181
4182  /**
4183   * Get the BundleInfo of the specified MultiIsolation App.
4184   *
4185   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
4186   * @param { string } bundleName - Indicates the application bundle name to be queried.
4187   * @param { number } appIndex - Indicates the index of clone app.
4188   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
4189   * @param { number } [userId] - Indicates the user ID, If the user id is not specified, the current user id is used by default.
4190   * @returns { Promise<BundleInfo> } Returns A BundleInfo Of MultiApp Mode.
4191   * @throws { BusinessError } 201 - Permission denied.
4192   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4193   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
4194   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
4195   * @throws { BusinessError } 17700004 - The specified user ID is not found.
4196   * @throws { BusinessError } 17700026 - The specified bundle is disabled.
4197   * @throws { BusinessError } 17700061 - AppIndex not in valid range.
4198   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4199   * @systemapi
4200   * @since arkts {'1.1':'12', '1.2':'20'}
4201   * @arkts 1.1&1.2
4202   */
4203  function getAppCloneBundleInfo(bundleName: string, appIndex: number, bundleFlags: number, userId?: number): Promise<BundleInfo>;
4204
4205  /**
4206   * Get all BundleInfo of clone app.
4207   *
4208   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
4209   * @param { string } bundleName - Indicates the application bundle name to be queried.
4210   * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned.
4211   * @param { number } [userId] - Indicates the user ID, If the user id is not specified, the current user id is used by default.
4212   * @returns { Promise<Array<BundleInfo>> } Returns BundleInfo Arrays Of MultiApp Mode.
4213   * @throws { BusinessError } 201 - Permission denied.
4214   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4215   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
4216   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
4217   * @throws { BusinessError } 17700004 - The specified user ID is not found.
4218   * @throws { BusinessError } 17700026 - The specified bundle and clone apps are all disabled.
4219   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4220   * @systemapi
4221   * @since 12
4222   */
4223  function getAllAppCloneBundleInfo(bundleName: string, bundleFlags: number, userId?: number): Promise<Array<BundleInfo>>;
4224
4225  /**
4226   * Obtains AppCloneIdentity contains bundleName and appIndex by the given uid. The application requires to be a system application when requesting the permission of ohos.permission.GET_BUNDLE_INFO.
4227   *
4228   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO
4229   * @param { number } uid - Indicates the UID of an application.
4230   * @returns { Promise<AppCloneIdentity> } Returns the clone Identity contains bundleName and appIndex.
4231   * @throws { BusinessError } 201 - Permission denied.
4232   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
4233   * @throws { BusinessError } 17700021 - The uid is not found.
4234   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4235   * @since arkts {'1.1':'14', '1.2':'20'}
4236   * @arkts 1.1&1.2
4237   */
4238  function getAppCloneIdentity(uid: number): Promise<AppCloneIdentity>;
4239
4240  /**
4241   * Get all plugin info of host application.
4242   *
4243   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
4244   * @param { string } hostBundleName - Indicates the host application bundle name to be queried.
4245   * @param { number } [userId] - Indicates the user ID or do not pass user ID.
4246   * @returns { Promise<Array<PluginBundleInfo>> } Returns PluginBundleInfo Arrays.
4247   * @throws { BusinessError } 201 - Permission denied.
4248   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4249   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
4250   * @throws { BusinessError } 17700004 - The specified user ID is not found.
4251   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4252   * @systemapi
4253   * @since 19
4254   */
4255  function getAllPluginInfo(hostBundleName: string, userId?: number): Promise<Array<PluginBundleInfo>>;
4256
4257  /**
4258   * Migrate files from the source paths to the destination path.
4259   *
4260   * @permission ohos.permission.MIGRATE_DATA
4261   * @param { Array<string> } sourcePaths - Indicates the source paths to be migrated.
4262   * @param { string } destinationPath - Target path for data migration.
4263   * @returns { Promise<void> } The result of migrating data.
4264   * @throws { BusinessError } 201 - Permission denied.
4265   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4266   * @throws { BusinessError } 17700080 - The source paths are invalid.
4267   * @throws { BusinessError } 17700081 - The destination path is invalid.
4268   * @throws { BusinessError } 17700082 - User authentication failed.
4269   * @throws { BusinessError } 17700083 - Waiting for user authentication timeout.
4270   * @throws { BusinessError } 17700084 - There are inaccessible path in the source paths.
4271   * @throws { BusinessError } 17700085 - The destination path cannot be accessed.
4272   * @throws { BusinessError } 17700086 - System error occurred during copy execution.
4273   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4274   * @systemapi
4275   * @since 18
4276   */
4277  function migrateData(sourcePaths: Array<string>, destinationPath: string): Promise<void>;
4278
4279  /**
4280   * Obtains sandbox data directory by bundleName and appIndex.
4281   *
4282   * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
4283   * @param { string } bundleName - Indicates the application bundle name to be queried.
4284   * @param { number } appIndex - Indicates the index of clone app.
4285   * @returns { string } Returns the sandbox data directory.
4286   * @throws { BusinessError } 201 - Permission denied.
4287   * @throws { BusinessError } 202 - Permission denied, non-system app called system api.
4288   * @throws { BusinessError } 17700001 - The specified bundleName is not found.
4289   * @throws { BusinessError } 17700061 - AppIndex not in valid range.
4290   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4291   * @systemapi
4292   * @since 20
4293   */
4294  function getSandboxDataDir(bundleName: string, appIndex: number): string;
4295
4296  /**
4297   * Obtains AppCloneIdentity contains bundleName and appIndex by the sandbox data directory.
4298   *
4299   * @param { string } sandboxDataDir - Indicates the sandbox data directory.
4300   * @returns { AppCloneIdentity } Returns the clone Identity contains bundleName and appIndex.
4301   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4302   * @systemapi
4303   * @since 20
4304   */
4305  function getAppCloneIdentityBySandboxDataDir(sandboxDataDir: string): AppCloneIdentity;
4306
4307  /**
4308   * Obtains configuration information about an application.
4309   *
4310   * @typedef { _ApplicationInfo }
4311   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4312   * @since 9
4313   */
4314  /**
4315   * Obtains configuration information about an application.
4316   *
4317   * @typedef { _ApplicationInfo }
4318   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4319   * @atomicservice
4320   * @since 11
4321   */
4322  /**
4323   * Obtains configuration information about an application.
4324   *
4325   * @typedef { _ApplicationInfo }
4326   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4327   * @crossplatform
4328   * @atomicservice
4329   * @since 20
4330   * @arkts 1.1&1.2
4331   */
4332  export type ApplicationInfo = _ApplicationInfo;
4333
4334  /**
4335   * Indicates the metadata information about a module.
4336   *
4337   * @typedef { _ModuleMetadata }
4338   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4339   * @since 10
4340   */
4341  /**
4342   * Indicates the metadata information about a module.
4343   *
4344   * @typedef { _ModuleMetadata }
4345   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4346   * @atomicservice
4347   * @since 11
4348   */
4349  /**
4350   * Indicates the metadata information about a module.
4351   *
4352   * @typedef { _ModuleMetadata }
4353   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4354   * @crossplatform
4355   * @atomicservice
4356   * @since 20
4357   * @arkts 1.1&1.2
4358   */
4359  export type ModuleMetadata = _ModuleMetadata;
4360
4361  /**
4362   * Indicates the Metadata.
4363   *
4364   * @typedef { _Metadata }
4365   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4366   * @since 9
4367   */
4368  /**
4369   * Indicates the Metadata.
4370   *
4371   * @typedef { _Metadata }
4372   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4373   * @atomicservice
4374   * @since 11
4375   */
4376  /**
4377   * Indicates the Metadata.
4378   *
4379   * @typedef { _Metadata }
4380   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4381   * @crossplatform
4382   * @atomicservice
4383   * @since 20
4384   * @arkts 1.1&1.2
4385   */
4386  export type Metadata = _Metadata;
4387
4388  /**
4389   * Obtains configuration information about a bundle.
4390   *
4391   * @typedef { _BundleInfo.BundleInfo }
4392   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4393   * @since 9
4394   */
4395  /**
4396   * Obtains configuration information about a bundle.
4397   *
4398   * @typedef { _BundleInfo.BundleInfo }
4399   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4400   * @atomicservice
4401   * @since 11
4402   */
4403  /**
4404   * Obtains configuration information about a bundle.
4405   *
4406   * @typedef { _BundleInfo.BundleInfo }
4407   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4408   * @crossplatform
4409   * @atomicservice
4410   * @since 20
4411   */
4412  export type BundleInfo = _BundleInfo.BundleInfo;
4413
4414  /**
4415   * Obtains configuration information about a bundle.
4416   *
4417   * @typedef { _BundleInfo }
4418   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4419   * @crossplatform
4420   * @since 20
4421   * @arkts 1.2
4422   */
4423  export type BundleInfo = _BundleInfo;
4424
4425  /**
4426   * The scene which is used.
4427   *
4428   * @typedef { _BundleInfo.UsedScene }
4429   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4430   * @since 9
4431   */
4432  /**
4433   * The scene which is used.
4434   *
4435   * @typedef { _BundleInfo.UsedScene }
4436   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4437   * @atomicservice
4438   * @since 11
4439   */
4440  /**
4441   * The scene which is used.
4442   *
4443   * @typedef { _BundleInfo.UsedScene }
4444   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4445   * @crossplatform
4446   * @atomicservice
4447   * @since 20
4448   */
4449  export type UsedScene = _BundleInfo.UsedScene;
4450
4451  /**
4452   * The scene which is used.
4453   *
4454   * @typedef { _UsedScene }
4455   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4456   * @crossplatform
4457   * @since 20
4458   * @arkts 1.2
4459   */
4460  export type UsedScene = _UsedScene;
4461
4462  /**
4463   * Indicates the required permissions details defined in file config.json.
4464   *
4465   * @typedef { _BundleInfo.ReqPermissionDetail }
4466   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4467   * @since 9
4468   */
4469  /**
4470   * Indicates the required permissions details defined in file config.json.
4471   *
4472   * @typedef { _BundleInfo.ReqPermissionDetail }
4473   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4474   * @atomicservice
4475   * @since 11
4476   */
4477  /**
4478   * Indicates the required permissions details defined in file config.json.
4479   *
4480   * @typedef { _BundleInfo.ReqPermissionDetail }
4481   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4482   * @crossplatform
4483   * @atomicservice
4484   * @since 20
4485   */
4486  export type ReqPermissionDetail = _BundleInfo.ReqPermissionDetail;
4487
4488  /**
4489   * Indicates the required permissions details defined in file config.json.
4490   *
4491   * @typedef { _ReqPermissionDetail }
4492   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4493   * @crossplatform
4494   * @since 20
4495   * @arkts 1.2
4496   */
4497  export type ReqPermissionDetail = _ReqPermissionDetail;
4498
4499  /**
4500   * Indicates the SignatureInfo.
4501   *
4502   * @typedef { _BundleInfo.SignatureInfo }
4503   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4504   * @since 9
4505   */
4506  /**
4507   * Indicates the SignatureInfo.
4508   *
4509   * @typedef { _BundleInfo.SignatureInfo }
4510   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4511   * @atomicservice
4512   * @since 11
4513   */
4514  /**
4515   * Indicates the SignatureInfo.
4516   *
4517   * @typedef { _BundleInfo.SignatureInfo }
4518   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4519   * @crossplatform
4520   * @atomicservice
4521   * @since 20
4522   */
4523  export type SignatureInfo = _BundleInfo.SignatureInfo;
4524
4525  /**
4526   * Indicates the SignatureInfo.
4527   *
4528   * @typedef { _SignatureInfo }
4529   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4530   * @crossplatform
4531   * @since 20
4532   * @arkts 1.2
4533   */
4534  export type SignatureInfo = _SignatureInfo;
4535
4536  /**
4537   * AppCloneIdentity Contain BundleName and appIndex.
4538   *
4539   * @typedef { _BundleInfo.AppCloneIdentity }
4540   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4541   * @since 15
4542   */
4543  export type AppCloneIdentity = _BundleInfo.AppCloneIdentity;
4544
4545  /**
4546   * AppCloneIdentity Contain BundleName and appIndex.
4547   *
4548   * @typedef { _AppCloneIdentity }
4549   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4550   * @since 20
4551   * @arkts 1.2
4552   */
4553  export type AppCloneIdentity = _AppCloneIdentity;
4554
4555  /**
4556   * Obtains configuration information about a module.
4557   *
4558   * @typedef { _HapModuleInfo.HapModuleInfo }
4559   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4560   * @since 9
4561   */
4562  /**
4563   * Obtains configuration information about a module.
4564   *
4565   * @typedef { _HapModuleInfo.HapModuleInfo }
4566   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4567   * @atomicservice
4568   * @since 11
4569   */
4570  /**
4571   * Obtains configuration information about a module.
4572   *
4573   * @typedef { _HapModuleInfo.HapModuleInfo }
4574   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4575   * @crossplatform
4576   * @atomicservice
4577   * @since 20
4578   */
4579  export type HapModuleInfo = _HapModuleInfo.HapModuleInfo;
4580
4581  /**
4582   * Obtains configuration information about a module.
4583   *
4584   * @typedef { _HapModuleInfo }
4585   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4586   * @crossplatform
4587   * @atomicservice
4588   * @since 20
4589   * @arkts 1.2
4590   */
4591  export type HapModuleInfo = _HapModuleInfo;
4592
4593  /**
4594   * Obtains preload information about a module.
4595   *
4596   * @typedef { _HapModuleInfo.PreloadItem }
4597   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4598   * @since 9
4599   */
4600  /**
4601   * Obtains preload information about a module.
4602   *
4603   * @typedef { _HapModuleInfo.PreloadItem }
4604   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4605   * @atomicservice
4606   * @since 11
4607   */
4608  export type PreloadItem = _HapModuleInfo.PreloadItem;
4609
4610  /**
4611   * Obtains preload information about a module.
4612   *
4613   * @typedef { _PreloadItem }
4614   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4615   * @atomicservice
4616   * @since 20
4617   * @arkts 1.2
4618   */
4619  export type PreloadItem = _PreloadItem;
4620
4621  /**
4622   * Obtains dependency information about a module.
4623   *
4624   * @typedef { _HapModuleInfo.Dependency }
4625   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4626   * @since 9
4627   */
4628  /**
4629   * Obtains dependency information about a module.
4630   *
4631   * @typedef { _HapModuleInfo.Dependency }
4632   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4633   * @atomicservice
4634   * @since 11
4635   */
4636  export type Dependency = _HapModuleInfo.Dependency;
4637
4638  /**
4639   * Obtains dependency information about a module.
4640   *
4641   * @typedef { _Dependency }
4642   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4643   * @atomicservice
4644   * @since 20
4645   * @arkts 1.2
4646   */
4647  export type Dependency = _Dependency;
4648
4649  /**
4650   * Obtains the router item about a module.
4651   *
4652   * @typedef { _HapModuleInfo.RouterItem}
4653   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4654   * @atomicservice
4655   * @since 12
4656   */
4657  export type RouterItem = _HapModuleInfo.RouterItem;
4658
4659  /**
4660   * Obtains the router item about a module.
4661   *
4662   * @typedef { _RouterItem}
4663   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4664   * @since 20
4665   * @arkts 1.2
4666   */
4667  export type RouterItem = _RouterItem;
4668
4669  /**
4670   * Obtains the data item within router item.
4671   *
4672   * @typedef { _HapModuleInfo.DataItem }
4673   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4674   * @atomicservice
4675   * @since 12
4676   */
4677  export type DataItem = _HapModuleInfo.DataItem;
4678
4679  /**
4680   * Obtains the data item within router item.
4681   *
4682   * @typedef { _DataItem }
4683   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4684   * @atomicservice
4685   * @since 20
4686   * @arkts 1.2
4687   */
4688  export type DataItem = _DataItem;
4689
4690  /**
4691   * Obtains configuration information about an ability.
4692   *
4693   * @typedef { _AbilityInfo.AbilityInfo }
4694   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4695   * @since 9
4696   */
4697  /**
4698   * Obtains configuration information about an ability.
4699   *
4700   * @typedef { _AbilityInfo.AbilityInfo }
4701   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4702   * @atomicservice
4703   * @since 11
4704   */
4705  /**
4706   * Obtains configuration information about an ability.
4707   *
4708   * @typedef { _AbilityInfo.AbilityInfo }
4709   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4710   * @crossplatform
4711   * @atomicservice
4712   * @since 20
4713   */
4714  export type AbilityInfo = _AbilityInfo.AbilityInfo;
4715
4716  /**
4717   * Obtains configuration information about an ability.
4718   *
4719   * @typedef { _AbilityInfo }
4720   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4721   * @crossplatform
4722   * @atomicservice
4723   * @since 20
4724   * @arkts 1.2
4725   */
4726  export type AbilityInfo = _AbilityInfo;
4727
4728  /**
4729   * Contains basic Ability information. Indicates the window size.
4730   *
4731   * @typedef { _AbilityInfo.WindowSize }
4732   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4733   * @since 9
4734   */
4735  /**
4736   * Contains basic Ability information. Indicates the window size.
4737   *
4738   * @typedef { _AbilityInfo.WindowSize }
4739   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4740   * @atomicservice
4741   * @since 11
4742   */
4743  /**
4744   * Contains basic Ability information. Indicates the window size.
4745   *
4746   * @typedef { _AbilityInfo.WindowSize }
4747   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4748   * @crossplatform
4749   * @atomicservice
4750   * @since 20
4751   */
4752  export type WindowSize = _AbilityInfo.WindowSize;
4753
4754  /**
4755   * Contains basic Ability information. Indicates the window size.
4756   *
4757   * @typedef { _WindowSize }
4758   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4759   * @crossplatform
4760   * @atomicservice
4761   * @since 20
4762   * @arkts 1.2
4763   */
4764  export type WindowSize = _WindowSize;
4765
4766  /**
4767   * Obtains extension information about a bundle.
4768   *
4769   * @typedef { _ExtensionAbilityInfo.ExtensionAbilityInfo }
4770   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4771   * @since 9
4772   */
4773  /**
4774   * Obtains extension information about a bundle.
4775   *
4776   * @typedef { _ExtensionAbilityInfo.ExtensionAbilityInfo }
4777   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4778   * @atomicservice
4779   * @since 11
4780   */
4781  export type ExtensionAbilityInfo = _ExtensionAbilityInfo.ExtensionAbilityInfo;
4782
4783  /**
4784   * Obtains extension information about a bundle.
4785   *
4786   * @typedef { _ExtensionAbilityInfo }
4787   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4788   * @atomicservice
4789   * @since 20
4790   * @arkts 1.2
4791   */
4792  export type ExtensionAbilityInfo = _ExtensionAbilityInfo;
4793
4794  /**
4795   * Indicates the defined permission details in file config.json.
4796   *
4797   * @typedef { _PermissionDef }
4798   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4799   * @systemapi
4800   * @since 9
4801   */
4802  export type PermissionDef = _PermissionDef;
4803
4804  /**
4805   * Contains basic Ability information, which uniquely identifies an ability.
4806   *
4807   * @typedef { _ElementName }
4808   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4809   * @since 9
4810   */
4811  /**
4812   * Contains basic Ability information, which uniquely identifies an ability.
4813   *
4814   * @typedef { _ElementName }
4815   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4816   * @atomicservice
4817   * @since arkts {'1.1':'11', '1.2':'20'}
4818   * @arkts 1.1&1.2
4819   */
4820  export type ElementName = _ElementName;
4821
4822  /**
4823   * Contains shared bundle info.
4824   *
4825   * @typedef { _SharedBundleInfo }
4826   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4827   * @systemapi
4828   * @since 10
4829   */
4830  export type SharedBundleInfo = _SharedBundleInfo;
4831
4832  /**
4833   * Obtains profile file information about a bundle.
4834   *
4835   * @typedef { _AppProvisionInfo.AppProvisionInfo }
4836   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4837   * @systemapi
4838   * @since 10
4839   */
4840  export type AppProvisionInfo = _AppProvisionInfo.AppProvisionInfo;
4841
4842  /**
4843   * Obtains profile file validity about a bundle.
4844   *
4845   * @typedef { _AppProvisionInfo.Validity }
4846   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4847   * @systemapi
4848   * @since 10
4849   */
4850  export type Validity = _AppProvisionInfo.Validity;
4851
4852  /**
4853   * Obtains information about a recoverable preinstalled application.
4854   *
4855   * @typedef { _RecoverableApplicationInfo }
4856   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4857   * @systemapi
4858   * @since 11
4859   */
4860  export type RecoverableApplicationInfo = _RecoverableApplicationInfo;
4861
4862  /**
4863   * Obtains configuration information about an skill
4864   *
4865   * @typedef { _Skill.Skill }
4866   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4867   * @atomicservice
4868   * @since 12
4869   */
4870  export type Skill = _Skill.Skill;
4871
4872  /**
4873   * Obtains configuration information about an skill
4874   *
4875   * @typedef { _Skill }
4876   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4877   * @atomicservice
4878   * @since 20
4879   * @arkts 1.2
4880   */
4881  export type Skill = _Skill;
4882
4883  /**
4884   * Obtains configuration information about an skillUri
4885   *
4886   * @typedef { _Skill.SkillUri }
4887   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4888   * @atomicservice
4889   * @since 12
4890   */
4891  export type SkillUrl = _Skill.SkillUri;
4892
4893  /**
4894   * Obtains configuration information about an skillUri
4895   *
4896   * @typedef { _SkillUri }
4897   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4898   * @atomicservice
4899   * @since 20
4900   * @arkts 1.2
4901   */
4902  export type SkillUrl = _SkillUri;
4903
4904  /**
4905   * Indicates the information of preinstalled application.
4906   *
4907   * @typedef { _PreinstalledApplicationInfo  }
4908   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4909   * @systemapi
4910   * @since arkts {'1.1':'12', '1.2':'20'}
4911   * @arkts 1.1&1.2
4912   */
4913  export type PreinstalledApplicationInfo = _PreinstalledApplicationInfo;
4914
4915  /**
4916   * Indicates the information about a plugin.
4917   *
4918   * @typedef { _PluginBundleInfo  }
4919   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4920   * @systemapi
4921   * @since 19
4922   */
4923  export type PluginBundleInfo = _PluginBundleInfo;
4924
4925  /**
4926   * Indicates the plugin module info.
4927   *
4928   * @typedef { _PluginModuleInfo  }
4929   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4930   * @systemapi
4931   * @since 19
4932   */
4933  export type PluginModuleInfo = _PluginModuleInfo;
4934
4935  /**
4936   * Contains dynamic icon.
4937   *
4938   * @typedef { _BundleInfo.DynamicIconInfo }
4939   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4940   * @systemapi
4941   * @since 20
4942   */
4943  export type DynamicIconInfo = _BundleInfo.DynamicIconInfo;
4944
4945  /**
4946   * Contains bundle options.
4947   *
4948   * @typedef { _BundleInfo.BundleOptions }
4949   * @syscap SystemCapability.BundleManager.BundleFramework.Core
4950   * @systemapi
4951   * @since 20
4952   */
4953  export type BundleOptions = _BundleInfo.BundleOptions;
4954}
4955
4956export default bundleManager;
4957