161847f8eSopenharmony_ci/*
261847f8eSopenharmony_ci * Copyright (c) 2022-2023 Huawei Device Co., Ltd.
361847f8eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"),
461847f8eSopenharmony_ci * you may not use this file except in compliance with the License.
561847f8eSopenharmony_ci * You may obtain a copy of the License at
661847f8eSopenharmony_ci *
761847f8eSopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
861847f8eSopenharmony_ci *
961847f8eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1061847f8eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1161847f8eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1261847f8eSopenharmony_ci * See the License for the specific language governing permissions and
1361847f8eSopenharmony_ci * limitations under the License.
1461847f8eSopenharmony_ci */
1561847f8eSopenharmony_ci
1661847f8eSopenharmony_ci/**
1761847f8eSopenharmony_ci * @file
1861847f8eSopenharmony_ci * @kit AbilityKit
1961847f8eSopenharmony_ci */
2061847f8eSopenharmony_ci
2161847f8eSopenharmony_ciimport { AsyncCallback } from './@ohos.base';
2261847f8eSopenharmony_ciimport { MissionInfo as _MissionInfo } from './application/MissionInfo';
2361847f8eSopenharmony_ciimport { MissionListener as _MissionListener } from './application/MissionListener';
2461847f8eSopenharmony_ciimport { MissionSnapshot as _MissionSnapshot } from './application/MissionSnapshot';
2561847f8eSopenharmony_ciimport StartOptions from './@ohos.app.ability.StartOptions';
2661847f8eSopenharmony_ci
2761847f8eSopenharmony_ci/**
2861847f8eSopenharmony_ci * This module provides the capability to manage abilities and obtaining system task information.
2961847f8eSopenharmony_ci *
3061847f8eSopenharmony_ci * @namespace missionManager
3161847f8eSopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Mission
3261847f8eSopenharmony_ci * @systemapi
3361847f8eSopenharmony_ci * @since 9
3461847f8eSopenharmony_ci */
3561847f8eSopenharmony_cideclare namespace missionManager {
3661847f8eSopenharmony_ci  /**
3761847f8eSopenharmony_ci   * Register the missionListener to ams.
3861847f8eSopenharmony_ci   *
3961847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
4061847f8eSopenharmony_ci   * @param { 'mission' } type - mission.
4161847f8eSopenharmony_ci   * @param { MissionListener } listener - Indicates the MissionListener to be registered.
4261847f8eSopenharmony_ci   * @returns { number } Returns the index number of the MissionListener.
4361847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
4461847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
4561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
4661847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
4761847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
4861847f8eSopenharmony_ci   * @systemapi
4961847f8eSopenharmony_ci   * @since 9
5061847f8eSopenharmony_ci   */
5161847f8eSopenharmony_ci  function on(type: 'mission', listener: MissionListener): number;
5261847f8eSopenharmony_ci
5361847f8eSopenharmony_ci  /**
5461847f8eSopenharmony_ci   * Unregister the missionListener to ams.
5561847f8eSopenharmony_ci   *
5661847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
5761847f8eSopenharmony_ci   * @param { 'mission' } type - mission.
5861847f8eSopenharmony_ci   * @param { number } listenerId - Indicates the listener id to be unregistered.
5961847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of off.
6061847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
6161847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
6261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
6361847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
6461847f8eSopenharmony_ci   * @throws { BusinessError } 16300002 - The specified mission listener does not exist.
6561847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
6661847f8eSopenharmony_ci   * @systemapi
6761847f8eSopenharmony_ci   * @since 9
6861847f8eSopenharmony_ci   */
6961847f8eSopenharmony_ci  function off(type: 'mission', listenerId: number, callback: AsyncCallback<void>): void;
7061847f8eSopenharmony_ci
7161847f8eSopenharmony_ci  /**
7261847f8eSopenharmony_ci   * Unregister the missionListener to ams.
7361847f8eSopenharmony_ci   *
7461847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
7561847f8eSopenharmony_ci   * @param { 'mission' } type - mission.
7661847f8eSopenharmony_ci   * @param { number } listenerId - Indicates the listener id to be unregistered.
7761847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
7861847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
7961847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
8061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
8161847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
8261847f8eSopenharmony_ci   * @throws { BusinessError } 16300002 - The specified mission listener does not exist.
8361847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
8461847f8eSopenharmony_ci   * @systemapi
8561847f8eSopenharmony_ci   * @since 9
8661847f8eSopenharmony_ci   */
8761847f8eSopenharmony_ci  function off(type: 'mission', listenerId: number): Promise<void>;
8861847f8eSopenharmony_ci
8961847f8eSopenharmony_ci  /**
9061847f8eSopenharmony_ci   * Get the missionInfo with the given missionId.
9161847f8eSopenharmony_ci   *
9261847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
9361847f8eSopenharmony_ci   * @param { string } deviceId - Indicates the device to be queried.
9461847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be queried.
9561847f8eSopenharmony_ci   * @param { AsyncCallback<MissionInfo> } callback - The callback is used to return the MissionInfo of the given id.
9661847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
9761847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
9861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
9961847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
10061847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
10161847f8eSopenharmony_ci   * @systemapi
10261847f8eSopenharmony_ci   * @since 9
10361847f8eSopenharmony_ci   */
10461847f8eSopenharmony_ci  function getMissionInfo(deviceId: string, missionId: number, callback: AsyncCallback<MissionInfo>): void;
10561847f8eSopenharmony_ci
10661847f8eSopenharmony_ci  /**
10761847f8eSopenharmony_ci   * Get the missionInfo with the given missionId.
10861847f8eSopenharmony_ci   *
10961847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
11061847f8eSopenharmony_ci   * @param { string } deviceId - Indicates the device to be queried.
11161847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be queried.
11261847f8eSopenharmony_ci   * @returns { Promise<MissionInfo> } Returns the MissionInfo of the given id.
11361847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
11461847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
11561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
11661847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
11761847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
11861847f8eSopenharmony_ci   * @systemapi
11961847f8eSopenharmony_ci   * @since 9
12061847f8eSopenharmony_ci   */
12161847f8eSopenharmony_ci  function getMissionInfo(deviceId: string, missionId: number): Promise<MissionInfo>;
12261847f8eSopenharmony_ci
12361847f8eSopenharmony_ci  /**
12461847f8eSopenharmony_ci   * Get missionInfos in the given deviceId with maximum number of numMax.
12561847f8eSopenharmony_ci   *
12661847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
12761847f8eSopenharmony_ci   * @param { string } deviceId - Indicates the device to be queried.
12861847f8eSopenharmony_ci   * @param { number } numMax - Indicates the maximum number of returned missions.
12961847f8eSopenharmony_ci   * @param { AsyncCallback<Array<MissionInfo>> } callback - The callback is used to return the array of the MissionInfo.
13061847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
13161847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
13261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
13361847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
13461847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
13561847f8eSopenharmony_ci   * @systemapi
13661847f8eSopenharmony_ci   * @since 9
13761847f8eSopenharmony_ci   */
13861847f8eSopenharmony_ci  function getMissionInfos(deviceId: string, numMax: number, callback: AsyncCallback<Array<MissionInfo>>): void;
13961847f8eSopenharmony_ci
14061847f8eSopenharmony_ci  /**
14161847f8eSopenharmony_ci   * Get missionInfos in the given deviceId with maximum number of numMax.
14261847f8eSopenharmony_ci   *
14361847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
14461847f8eSopenharmony_ci   * @param { string } deviceId - Indicates the device to be queried.
14561847f8eSopenharmony_ci   * @param { number } numMax - Indicates the maximum number of returned missions.
14661847f8eSopenharmony_ci   * @returns { Promise<Array<MissionInfo>> } Returns the array of the MissionInfo.
14761847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
14861847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
14961847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
15061847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
15161847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
15261847f8eSopenharmony_ci   * @systemapi
15361847f8eSopenharmony_ci   * @since 9
15461847f8eSopenharmony_ci   */
15561847f8eSopenharmony_ci  function getMissionInfos(deviceId: string, numMax: number): Promise<Array<MissionInfo>>;
15661847f8eSopenharmony_ci
15761847f8eSopenharmony_ci  /**
15861847f8eSopenharmony_ci   * Get the mission snapshot with the given missionId.
15961847f8eSopenharmony_ci   *
16061847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
16161847f8eSopenharmony_ci   * @param { string } deviceId - Indicates the device to be queried.
16261847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be queried.
16361847f8eSopenharmony_ci   * @param { AsyncCallback<MissionSnapshot> } callback - The callback is used to return the MissionSnapshot of
16461847f8eSopenharmony_ci   *                                                      the given id.
16561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
16661847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
16761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
16861847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
16961847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
17061847f8eSopenharmony_ci   * @systemapi
17161847f8eSopenharmony_ci   * @since 9
17261847f8eSopenharmony_ci   */
17361847f8eSopenharmony_ci  function getMissionSnapShot(deviceId: string, missionId: number, callback: AsyncCallback<MissionSnapshot>): void;
17461847f8eSopenharmony_ci
17561847f8eSopenharmony_ci  /**
17661847f8eSopenharmony_ci   * Get the mission snapshot with the given missionId.
17761847f8eSopenharmony_ci   *
17861847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
17961847f8eSopenharmony_ci   * @param { string } deviceId - Indicates the device to be queried.
18061847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be queried.
18161847f8eSopenharmony_ci   * @returns { Promise<MissionSnapshot> } Returns the MissionSnapshot of the given id.
18261847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
18361847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
18461847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
18561847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
18661847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
18761847f8eSopenharmony_ci   * @systemapi
18861847f8eSopenharmony_ci   * @since 9
18961847f8eSopenharmony_ci   */
19061847f8eSopenharmony_ci  function getMissionSnapShot(deviceId: string, missionId: number): Promise<MissionSnapshot>;
19161847f8eSopenharmony_ci
19261847f8eSopenharmony_ci  /**
19361847f8eSopenharmony_ci   * Get the mission low resolution snapshot with the given missionId.
19461847f8eSopenharmony_ci   *
19561847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
19661847f8eSopenharmony_ci   * @param { string } deviceId - Indicates the device to be queried.
19761847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be queried.
19861847f8eSopenharmony_ci   * @param { AsyncCallback<MissionSnapshot> } callback - The callback is used to return the MissionSnapshot of
19961847f8eSopenharmony_ci   *                                                      the given id.
20061847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
20161847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
20261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
20361847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
20461847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
20561847f8eSopenharmony_ci   * @systemapi
20661847f8eSopenharmony_ci   * @since 9
20761847f8eSopenharmony_ci   */
20861847f8eSopenharmony_ci  function getLowResolutionMissionSnapShot(
20961847f8eSopenharmony_ci    deviceId: string,
21061847f8eSopenharmony_ci    missionId: number,
21161847f8eSopenharmony_ci    callback: AsyncCallback<MissionSnapshot>
21261847f8eSopenharmony_ci  ): void;
21361847f8eSopenharmony_ci
21461847f8eSopenharmony_ci  /**
21561847f8eSopenharmony_ci   * Get the mission low resolution snapshot with the given missionId.
21661847f8eSopenharmony_ci   *
21761847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
21861847f8eSopenharmony_ci   * @param { string } deviceId - Indicates the device to be queried.
21961847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be queried.
22061847f8eSopenharmony_ci   * @returns { Promise<MissionSnapshot> } Returns the MissionSnapshot of the given id.
22161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
22261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
22361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
22461847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
22561847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
22661847f8eSopenharmony_ci   * @systemapi
22761847f8eSopenharmony_ci   * @since 9
22861847f8eSopenharmony_ci   */
22961847f8eSopenharmony_ci  function getLowResolutionMissionSnapShot(deviceId: string, missionId: number): Promise<MissionSnapshot>;
23061847f8eSopenharmony_ci
23161847f8eSopenharmony_ci  /**
23261847f8eSopenharmony_ci   * Lock the mission.
23361847f8eSopenharmony_ci   *
23461847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
23561847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be locked.
23661847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of lockMission.
23761847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
23861847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
23961847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
24061847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
24161847f8eSopenharmony_ci   * @throws { BusinessError } 16300001 - Mission not found.
24261847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
24361847f8eSopenharmony_ci   * @systemapi
24461847f8eSopenharmony_ci   * @since 9
24561847f8eSopenharmony_ci   */
24661847f8eSopenharmony_ci  function lockMission(missionId: number, callback: AsyncCallback<void>): void;
24761847f8eSopenharmony_ci
24861847f8eSopenharmony_ci  /**
24961847f8eSopenharmony_ci   * Lock the mission.
25061847f8eSopenharmony_ci   *
25161847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
25261847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be locked.
25361847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
25461847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
25561847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
25661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
25761847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
25861847f8eSopenharmony_ci   * @throws { BusinessError } 16300001 - Mission not found.
25961847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
26061847f8eSopenharmony_ci   * @systemapi
26161847f8eSopenharmony_ci   * @since 9
26261847f8eSopenharmony_ci   */
26361847f8eSopenharmony_ci  function lockMission(missionId: number): Promise<void>;
26461847f8eSopenharmony_ci
26561847f8eSopenharmony_ci  /**
26661847f8eSopenharmony_ci   * Unlock the mission.
26761847f8eSopenharmony_ci   *
26861847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
26961847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be unlocked.
27061847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of unlockMission.
27161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
27261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
27361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
27461847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
27561847f8eSopenharmony_ci   * @throws { BusinessError } 16300001 - Mission not found.
27661847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
27761847f8eSopenharmony_ci   * @systemapi
27861847f8eSopenharmony_ci   * @since 9
27961847f8eSopenharmony_ci   */
28061847f8eSopenharmony_ci  function unlockMission(missionId: number, callback: AsyncCallback<void>): void;
28161847f8eSopenharmony_ci
28261847f8eSopenharmony_ci  /**
28361847f8eSopenharmony_ci   * Unlock the mission.
28461847f8eSopenharmony_ci   *
28561847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
28661847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be unlocked.
28761847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
28861847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
28961847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
29061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
29161847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
29261847f8eSopenharmony_ci   * @throws { BusinessError } 16300001 - Mission not found.
29361847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
29461847f8eSopenharmony_ci   * @systemapi
29561847f8eSopenharmony_ci   * @since 9
29661847f8eSopenharmony_ci   */
29761847f8eSopenharmony_ci  function unlockMission(missionId: number): Promise<void>;
29861847f8eSopenharmony_ci
29961847f8eSopenharmony_ci  /**
30061847f8eSopenharmony_ci   * Clear the given mission in the ability manager service.
30161847f8eSopenharmony_ci   *
30261847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
30361847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be cleared.
30461847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of clearMission.
30561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
30661847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
30761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
30861847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
30961847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
31061847f8eSopenharmony_ci   * @systemapi
31161847f8eSopenharmony_ci   * @since 9
31261847f8eSopenharmony_ci   */
31361847f8eSopenharmony_ci  function clearMission(missionId: number, callback: AsyncCallback<void>): void;
31461847f8eSopenharmony_ci
31561847f8eSopenharmony_ci  /**
31661847f8eSopenharmony_ci   * Clear the given mission in the ability manager service.
31761847f8eSopenharmony_ci   *
31861847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
31961847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be cleared.
32061847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
32161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
32261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
32361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
32461847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
32561847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
32661847f8eSopenharmony_ci   * @systemapi
32761847f8eSopenharmony_ci   * @since 9
32861847f8eSopenharmony_ci   */
32961847f8eSopenharmony_ci  function clearMission(missionId: number): Promise<void>;
33061847f8eSopenharmony_ci
33161847f8eSopenharmony_ci  /**
33261847f8eSopenharmony_ci   * Clear all missions in the ability manager service.
33361847f8eSopenharmony_ci   *
33461847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
33561847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of clearAllMissions.
33661847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
33761847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
33861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
33961847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
34061847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
34161847f8eSopenharmony_ci   * @systemapi
34261847f8eSopenharmony_ci   * @since 9
34361847f8eSopenharmony_ci   */
34461847f8eSopenharmony_ci  function clearAllMissions(callback: AsyncCallback<void>): void;
34561847f8eSopenharmony_ci
34661847f8eSopenharmony_ci  /**
34761847f8eSopenharmony_ci   * Clear all missions in the ability manager service.
34861847f8eSopenharmony_ci   *
34961847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
35061847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
35161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
35261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
35361847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
35461847f8eSopenharmony_ci   * @systemapi
35561847f8eSopenharmony_ci   * @since 9
35661847f8eSopenharmony_ci   */
35761847f8eSopenharmony_ci  function clearAllMissions(): Promise<void>;
35861847f8eSopenharmony_ci
35961847f8eSopenharmony_ci  /**
36061847f8eSopenharmony_ci   * Schedule the given mission to foreground.
36161847f8eSopenharmony_ci   *
36261847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
36361847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be moved to foreground.
36461847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of moveMissionToFront.
36561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
36661847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
36761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
36861847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
36961847f8eSopenharmony_ci   * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.
37061847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
37161847f8eSopenharmony_ci   * @systemapi
37261847f8eSopenharmony_ci   * @since 9
37361847f8eSopenharmony_ci   */
37461847f8eSopenharmony_ci  function moveMissionToFront(missionId: number, callback: AsyncCallback<void>): void;
37561847f8eSopenharmony_ci
37661847f8eSopenharmony_ci  /**
37761847f8eSopenharmony_ci   * Schedule the given mission to foreground.
37861847f8eSopenharmony_ci   *
37961847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
38061847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be moved to foreground.
38161847f8eSopenharmony_ci   * @param { StartOptions } options - Indicates the start options.
38261847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of moveMissionToFront.
38361847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
38461847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
38561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
38661847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
38761847f8eSopenharmony_ci   * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.
38861847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
38961847f8eSopenharmony_ci   * @systemapi
39061847f8eSopenharmony_ci   * @since 9
39161847f8eSopenharmony_ci   */
39261847f8eSopenharmony_ci  function moveMissionToFront(missionId: number, options: StartOptions, callback: AsyncCallback<void>): void;
39361847f8eSopenharmony_ci
39461847f8eSopenharmony_ci  /**
39561847f8eSopenharmony_ci   * Schedule the given mission to foreground.
39661847f8eSopenharmony_ci   *
39761847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
39861847f8eSopenharmony_ci   * @param { number } missionId - Indicates mission id to be moved to foreground.
39961847f8eSopenharmony_ci   * @param { StartOptions } [options] - Indicates the start options.
40061847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
40161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
40261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
40361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
40461847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
40561847f8eSopenharmony_ci   * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.
40661847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
40761847f8eSopenharmony_ci   * @systemapi
40861847f8eSopenharmony_ci   * @since 9
40961847f8eSopenharmony_ci   */
41061847f8eSopenharmony_ci  function moveMissionToFront(missionId: number, options?: StartOptions): Promise<void>;
41161847f8eSopenharmony_ci
41261847f8eSopenharmony_ci  /**
41361847f8eSopenharmony_ci   * Schedule the given missions to foreground.
41461847f8eSopenharmony_ci   *
41561847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
41661847f8eSopenharmony_ci   * @param { Array<number> } missionIds - Indicates mission ids to be moved to foreground.
41761847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of moveMissionsToForeground.
41861847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
41961847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
42061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
42161847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
42261847f8eSopenharmony_ci   * @throws { BusinessError } 16000050 - Internal error.
42361847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
42461847f8eSopenharmony_ci   * @systemapi
42561847f8eSopenharmony_ci   * @since 10
42661847f8eSopenharmony_ci   */
42761847f8eSopenharmony_ci  function moveMissionsToForeground(missionIds: Array<number>, callback: AsyncCallback<void>): void;
42861847f8eSopenharmony_ci
42961847f8eSopenharmony_ci  /**
43061847f8eSopenharmony_ci   * Schedule the given missions to foreground.
43161847f8eSopenharmony_ci   *
43261847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
43361847f8eSopenharmony_ci   * @param { Array<number> } missionIds - Indicates mission ids to be moved to foreground.
43461847f8eSopenharmony_ci   * @param { number } topMission - Indicates mission id to be moved to top.
43561847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of moveMissionsToForeground.
43661847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
43761847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
43861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
43961847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
44061847f8eSopenharmony_ci   * @throws { BusinessError } 16000050 - Internal error.
44161847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
44261847f8eSopenharmony_ci   * @systemapi
44361847f8eSopenharmony_ci   * @since 10
44461847f8eSopenharmony_ci   */
44561847f8eSopenharmony_ci  function moveMissionsToForeground(missionIds: Array<number>, topMission: number, callback: AsyncCallback<void>): void;
44661847f8eSopenharmony_ci
44761847f8eSopenharmony_ci  /**
44861847f8eSopenharmony_ci   * Schedule the given missions to foreground.
44961847f8eSopenharmony_ci   *
45061847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
45161847f8eSopenharmony_ci   * @param { Array<number> } missionIds - Indicates mission ids to be moved to foreground.
45261847f8eSopenharmony_ci   * @param { number } topMission - Indicates mission id to be moved to top.
45361847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
45461847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
45561847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
45661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
45761847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
45861847f8eSopenharmony_ci   * @throws { BusinessError } 16000050 - Internal error.
45961847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
46061847f8eSopenharmony_ci   * @systemapi
46161847f8eSopenharmony_ci   * @since 10
46261847f8eSopenharmony_ci   */
46361847f8eSopenharmony_ci  function moveMissionsToForeground(missionIds: Array<number>, topMission?: number): Promise<void>;
46461847f8eSopenharmony_ci
46561847f8eSopenharmony_ci  /**
46661847f8eSopenharmony_ci   * Schedule the given missions to background.
46761847f8eSopenharmony_ci   *
46861847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
46961847f8eSopenharmony_ci   * @param { Array<number> } missionIds - Indicates mission ids will be moved to background
47061847f8eSopenharmony_ci   * @param { AsyncCallback<Array<number>> } callback - The callback of moveMissionsToForeground.
47161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
47261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
47361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
47461847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
47561847f8eSopenharmony_ci   * @throws { BusinessError } 16000050 - Internal error.
47661847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
47761847f8eSopenharmony_ci   * @systemapi
47861847f8eSopenharmony_ci   * @since 10
47961847f8eSopenharmony_ci   */
48061847f8eSopenharmony_ci  function moveMissionsToBackground(missionIds: Array<number>, callback: AsyncCallback<Array<number>>): void;
48161847f8eSopenharmony_ci
48261847f8eSopenharmony_ci  /**
48361847f8eSopenharmony_ci   * Schedule the given missions to background.
48461847f8eSopenharmony_ci   *
48561847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_MISSIONS
48661847f8eSopenharmony_ci   * @param { Array<number> } missionIds - Indicates mission ids will be moved to background
48761847f8eSopenharmony_ci   * @returns { Promise<Array<number>> } - The promise returned by the function.
48861847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
48961847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Not system application.
49061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
49161847f8eSopenharmony_ci   * 2. Incorrect parameter types; 3. Parameter verification failed.
49261847f8eSopenharmony_ci   * @throws { BusinessError } 16000050 - Internal error.
49361847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
49461847f8eSopenharmony_ci   * @systemapi
49561847f8eSopenharmony_ci   * @since 10
49661847f8eSopenharmony_ci   */
49761847f8eSopenharmony_ci  function moveMissionsToBackground(missionIds: Array<number>): Promise<Array<number>>;
49861847f8eSopenharmony_ci
49961847f8eSopenharmony_ci  /**
50061847f8eSopenharmony_ci   * Mission information corresponding to ability.
50161847f8eSopenharmony_ci   *
50261847f8eSopenharmony_ci   * @typedef { _MissionInfo }
50361847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
50461847f8eSopenharmony_ci   * @systemapi
50561847f8eSopenharmony_ci   * @since 9
50661847f8eSopenharmony_ci   */
50761847f8eSopenharmony_ci  export type MissionInfo = _MissionInfo;
50861847f8eSopenharmony_ci
50961847f8eSopenharmony_ci  /**
51061847f8eSopenharmony_ci   * MissionListener registered by app.
51161847f8eSopenharmony_ci   *
51261847f8eSopenharmony_ci   * @typedef { _MissionListener }
51361847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
51461847f8eSopenharmony_ci   * @systemapi
51561847f8eSopenharmony_ci   * @since 9
51661847f8eSopenharmony_ci   */
51761847f8eSopenharmony_ci  export type MissionListener = _MissionListener;
51861847f8eSopenharmony_ci
51961847f8eSopenharmony_ci  /**
52061847f8eSopenharmony_ci   * Mission snapshot corresponding to mission.
52161847f8eSopenharmony_ci   *
52261847f8eSopenharmony_ci   * @typedef { _MissionSnapshot }
52361847f8eSopenharmony_ci   * @syscap SystemCapability.Ability.AbilityRuntime.Mission
52461847f8eSopenharmony_ci   * @systemapi
52561847f8eSopenharmony_ci   * @since 9
52661847f8eSopenharmony_ci   */
52761847f8eSopenharmony_ci  export type MissionSnapshot = _MissionSnapshot;
52861847f8eSopenharmony_ci}
52961847f8eSopenharmony_ci
53061847f8eSopenharmony_ciexport default missionManager;
531