161847f8eSopenharmony_ci/*
261847f8eSopenharmony_ci * Copyright (c) 2022-2024 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 MDMKit
1961847f8eSopenharmony_ci */
2061847f8eSopenharmony_ci
2161847f8eSopenharmony_ciimport type systemManager from './@ohos.enterprise.systemManager';
2261847f8eSopenharmony_ci
2361847f8eSopenharmony_ci/**
2461847f8eSopenharmony_ci * Class of the enterprise admin extension ability.
2561847f8eSopenharmony_ci *
2661847f8eSopenharmony_ci * @syscap SystemCapability.Customization.EnterpriseDeviceManager
2761847f8eSopenharmony_ci * @stagemodelonly
2861847f8eSopenharmony_ci * @since 12
2961847f8eSopenharmony_ci */
3061847f8eSopenharmony_ciexport default class EnterpriseAdminExtensionAbility {
3161847f8eSopenharmony_ci  /**
3261847f8eSopenharmony_ci   * Called back when an application is enabled.
3361847f8eSopenharmony_ci   *
3461847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
3561847f8eSopenharmony_ci   * @stagemodelonly
3661847f8eSopenharmony_ci   * @since 12
3761847f8eSopenharmony_ci   */
3861847f8eSopenharmony_ci  onAdminEnabled(): void;
3961847f8eSopenharmony_ci
4061847f8eSopenharmony_ci  /**
4161847f8eSopenharmony_ci   * Called back when an application is disabled.
4261847f8eSopenharmony_ci   *
4361847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
4461847f8eSopenharmony_ci   * @stagemodelonly
4561847f8eSopenharmony_ci   * @since 12
4661847f8eSopenharmony_ci   */
4761847f8eSopenharmony_ci  onAdminDisabled(): void;
4861847f8eSopenharmony_ci
4961847f8eSopenharmony_ci  /**
5061847f8eSopenharmony_ci   * Called back when a bundle is installed.
5161847f8eSopenharmony_ci   *
5261847f8eSopenharmony_ci   * @param { string } bundleName - bundleName indicates the name of the bundle installed.
5361847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
5461847f8eSopenharmony_ci   * @stagemodelonly
5561847f8eSopenharmony_ci   * @since 12
5661847f8eSopenharmony_ci   */
5761847f8eSopenharmony_ci  onBundleAdded(bundleName: string): void;
5861847f8eSopenharmony_ci
5961847f8eSopenharmony_ci  /**
6061847f8eSopenharmony_ci   * Called back when a bundle is uninstalled.
6161847f8eSopenharmony_ci   *
6261847f8eSopenharmony_ci   * @param { string } bundleName - bundleName indicates the name of the bundle uninstalled.
6361847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
6461847f8eSopenharmony_ci   * @stagemodelonly
6561847f8eSopenharmony_ci   * @since 12
6661847f8eSopenharmony_ci   */
6761847f8eSopenharmony_ci  onBundleRemoved(bundleName: string): void;
6861847f8eSopenharmony_ci
6961847f8eSopenharmony_ci  /**
7061847f8eSopenharmony_ci   * Called back when an app is started.
7161847f8eSopenharmony_ci   *
7261847f8eSopenharmony_ci   * @param { string } bundleName - bundleName indicates the name of the app started.
7361847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
7461847f8eSopenharmony_ci   * @stagemodelonly
7561847f8eSopenharmony_ci   * @since 12
7661847f8eSopenharmony_ci   */
7761847f8eSopenharmony_ci  onAppStart(bundleName: string): void;
7861847f8eSopenharmony_ci
7961847f8eSopenharmony_ci  /**
8061847f8eSopenharmony_ci   * Called back when an app is stopped.
8161847f8eSopenharmony_ci   *
8261847f8eSopenharmony_ci   * @param { string } bundleName - bundleName indicates the name of the app stopped.
8361847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
8461847f8eSopenharmony_ci   * @stagemodelonly
8561847f8eSopenharmony_ci   * @since 12
8661847f8eSopenharmony_ci   */
8761847f8eSopenharmony_ci  onAppStop(bundleName: string): void;
8861847f8eSopenharmony_ci
8961847f8eSopenharmony_ci  /**
9061847f8eSopenharmony_ci   * Called back when a system version need to update. 
9161847f8eSopenharmony_ci   *
9261847f8eSopenharmony_ci   * @param { systemManager.SystemUpdateInfo } systemUpdateInfo - the information of the system version.
9361847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
9461847f8eSopenharmony_ci   * @stagemodelonly
9561847f8eSopenharmony_ci   * @since 12
9661847f8eSopenharmony_ci   */
9761847f8eSopenharmony_ci  onSystemUpdate(systemUpdateInfo: systemManager.SystemUpdateInfo): void;
9861847f8eSopenharmony_ci
9961847f8eSopenharmony_ci  /**
10061847f8eSopenharmony_ci   * Called back when the enterprise admin extension is started.
10161847f8eSopenharmony_ci   *
10261847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
10361847f8eSopenharmony_ci   * @stagemodelonly
10461847f8eSopenharmony_ci   * @since 12
10561847f8eSopenharmony_ci   */
10661847f8eSopenharmony_ci  onStart(): void;
10761847f8eSopenharmony_ci}
108