161847f8eSopenharmony_ci/*
261847f8eSopenharmony_ci * Copyright (c) 2023-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 Want from './@ohos.app.ability.Want';
2261847f8eSopenharmony_ciimport type image from './@ohos.multimedia.image';
2361847f8eSopenharmony_ci
2461847f8eSopenharmony_ci/**
2561847f8eSopenharmony_ci * This module provides the capability to manage the security of the enterprise devices.
2661847f8eSopenharmony_ci *
2761847f8eSopenharmony_ci * @namespace securityManager
2861847f8eSopenharmony_ci * @syscap SystemCapability.Customization.EnterpriseDeviceManager
2961847f8eSopenharmony_ci * @stagemodelonly
3061847f8eSopenharmony_ci * @since 11
3161847f8eSopenharmony_ci */
3261847f8eSopenharmony_cideclare namespace securityManager {
3361847f8eSopenharmony_ci  /**
3461847f8eSopenharmony_ci   * The device encryption status.
3561847f8eSopenharmony_ci   *
3661847f8eSopenharmony_ci   * @typedef DeviceEncryptionStatus
3761847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
3861847f8eSopenharmony_ci   * @systemapi
3961847f8eSopenharmony_ci   * @stagemodelonly
4061847f8eSopenharmony_ci   * @since 11
4161847f8eSopenharmony_ci   */
4261847f8eSopenharmony_ci  export interface DeviceEncryptionStatus {
4361847f8eSopenharmony_ci    /**
4461847f8eSopenharmony_ci     * True indicates device is encrypted.
4561847f8eSopenharmony_ci     *
4661847f8eSopenharmony_ci     * @type { boolean }
4761847f8eSopenharmony_ci     * @syscap SystemCapability.Customization.EnterpriseDeviceManager
4861847f8eSopenharmony_ci     * @systemapi
4961847f8eSopenharmony_ci     * @stagemodelonly
5061847f8eSopenharmony_ci     * @since 11
5161847f8eSopenharmony_ci     */
5261847f8eSopenharmony_ci    isEncrypted: boolean;
5361847f8eSopenharmony_ci  }
5461847f8eSopenharmony_ci
5561847f8eSopenharmony_ci  /**
5661847f8eSopenharmony_ci   * User certificate data.
5761847f8eSopenharmony_ci   *
5861847f8eSopenharmony_ci   * @typedef CertBlob
5961847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
6061847f8eSopenharmony_ci   * @stagemodelonly
6161847f8eSopenharmony_ci   * @since 12
6261847f8eSopenharmony_ci   */
6361847f8eSopenharmony_ci  export interface CertBlob {
6461847f8eSopenharmony_ci    /**
6561847f8eSopenharmony_ci     * The certificate content
6661847f8eSopenharmony_ci     *
6761847f8eSopenharmony_ci     * @type { Uint8Array }
6861847f8eSopenharmony_ci     * @syscap SystemCapability.Customization.EnterpriseDeviceManager
6961847f8eSopenharmony_ci     * @stagemodelonly
7061847f8eSopenharmony_ci     * @since 12
7161847f8eSopenharmony_ci     */
7261847f8eSopenharmony_ci    inData: Uint8Array;
7361847f8eSopenharmony_ci
7461847f8eSopenharmony_ci    /**
7561847f8eSopenharmony_ci     * The certificate alias
7661847f8eSopenharmony_ci     *
7761847f8eSopenharmony_ci     * @type { string }
7861847f8eSopenharmony_ci     * @syscap SystemCapability.Customization.EnterpriseDeviceManager
7961847f8eSopenharmony_ci     * @stagemodelonly
8061847f8eSopenharmony_ci     * @since 12
8161847f8eSopenharmony_ci     */
8261847f8eSopenharmony_ci    alias: string;
8361847f8eSopenharmony_ci  }
8461847f8eSopenharmony_ci
8561847f8eSopenharmony_ci  /**
8661847f8eSopenharmony_ci   * Gets device security patch tag.
8761847f8eSopenharmony_ci   * This function can be called by a super administrator.
8861847f8eSopenharmony_ci   *
8961847f8eSopenharmony_ci   * @permission ohos.permission.ENTERPRISE_MANAGE_SECURITY
9061847f8eSopenharmony_ci   * @param { Want } admin - admin indicates the enterprise admin extension ability information.
9161847f8eSopenharmony_ci   *                         The admin must have the corresponding permission.
9261847f8eSopenharmony_ci   * @returns { string } the security patch tag of the device.
9361847f8eSopenharmony_ci   * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.
9461847f8eSopenharmony_ci   * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device.
9561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API.
9661847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API.
9761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
9861847f8eSopenharmony_ci   *                                 2. Incorrect parameter types; 3. Parameter verification failed.
9961847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
10061847f8eSopenharmony_ci   * @systemapi
10161847f8eSopenharmony_ci   * @stagemodelonly
10261847f8eSopenharmony_ci   * @since 11
10361847f8eSopenharmony_ci   */
10461847f8eSopenharmony_ci  function getSecurityPatchTag(admin: Want): string;
10561847f8eSopenharmony_ci
10661847f8eSopenharmony_ci  /**
10761847f8eSopenharmony_ci   * Gets device encryption status.
10861847f8eSopenharmony_ci   * This function can be called by a super administrator.
10961847f8eSopenharmony_ci   *
11061847f8eSopenharmony_ci   * @permission ohos.permission.ENTERPRISE_MANAGE_SECURITY
11161847f8eSopenharmony_ci   * @param { Want } admin - admin indicates the enterprise admin extension ability information.
11261847f8eSopenharmony_ci   *                         The admin must have the corresponding permission.
11361847f8eSopenharmony_ci   * @returns { DeviceEncryptionStatus } device encryption status.
11461847f8eSopenharmony_ci   * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.
11561847f8eSopenharmony_ci   * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device.
11661847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API.
11761847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API.
11861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
11961847f8eSopenharmony_ci   *                                 2. Incorrect parameter types; 3. Parameter verification failed.
12061847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
12161847f8eSopenharmony_ci   * @systemapi
12261847f8eSopenharmony_ci   * @stagemodelonly
12361847f8eSopenharmony_ci   * @since 11
12461847f8eSopenharmony_ci   */
12561847f8eSopenharmony_ci  function getDeviceEncryptionStatus(admin: Want): DeviceEncryptionStatus;
12661847f8eSopenharmony_ci
12761847f8eSopenharmony_ci  /**
12861847f8eSopenharmony_ci   * Gets device security policy of the specific type.
12961847f8eSopenharmony_ci   * This function can be called by a super administrator.
13061847f8eSopenharmony_ci   *
13161847f8eSopenharmony_ci   * @permission ohos.permission.ENTERPRISE_MANAGE_SECURITY
13261847f8eSopenharmony_ci   * @param { Want } admin - admin indicates the enterprise admin extension ability information.
13361847f8eSopenharmony_ci   *                         The admin must have the corresponding permission.
13461847f8eSopenharmony_ci   * @param { string } item - item indicates the specified security policy that needs to be obtained, including patch and encryption.
13561847f8eSopenharmony_ci   *                          patch means the device security patch tag, and encryption means the device encryption status.
13661847f8eSopenharmony_ci   * @returns { string } security policy of the specific type.
13761847f8eSopenharmony_ci   * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.
13861847f8eSopenharmony_ci   * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device.
13961847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API.
14061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
14161847f8eSopenharmony_ci   *                                 2. Incorrect parameter types; 3. Parameter verification failed.
14261847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
14361847f8eSopenharmony_ci   * @stagemodelonly
14461847f8eSopenharmony_ci   * @since 12
14561847f8eSopenharmony_ci   */
14661847f8eSopenharmony_ci  function getSecurityStatus(admin: Want, item: string): string;
14761847f8eSopenharmony_ci
14861847f8eSopenharmony_ci  /**
14961847f8eSopenharmony_ci   * Install user certificate.
15061847f8eSopenharmony_ci   * This function can be called by a super administrator.
15161847f8eSopenharmony_ci   *
15261847f8eSopenharmony_ci   * @permission ohos.permission.ENTERPRISE_MANAGE_CERTIFICATE
15361847f8eSopenharmony_ci   * @param { Want } admin - admin indicates the enterprise admin extension ability information.
15461847f8eSopenharmony_ci   *                         The admin must have the corresponding permission.
15561847f8eSopenharmony_ci   * @param { CertBlob } certificate - certificate file content and alias. It cannot be empty or more than 40 characters.
15661847f8eSopenharmony_ci   * @returns { Promise<string> } the promise carries the uri of the certificate used to uninstall
15761847f8eSopenharmony_ci   * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.
15861847f8eSopenharmony_ci   * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device.
15961847f8eSopenharmony_ci   * @throws { BusinessError } 9201001 - Failed to manage the certificate.
16061847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API.
16161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
16261847f8eSopenharmony_ci   *                                 2. Incorrect parameter types; 3. Parameter verification failed.
16361847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
16461847f8eSopenharmony_ci   * @stagemodelonly
16561847f8eSopenharmony_ci   * @since 12
16661847f8eSopenharmony_ci   */
16761847f8eSopenharmony_ci  function installUserCertificate(admin: Want, certificate: CertBlob): Promise<string>;
16861847f8eSopenharmony_ci
16961847f8eSopenharmony_ci  /**
17061847f8eSopenharmony_ci   * Uninstall user certificate.
17161847f8eSopenharmony_ci   * This function can be called by a super administrator.
17261847f8eSopenharmony_ci   *
17361847f8eSopenharmony_ci   * @permission ohos.permission.ENTERPRISE_MANAGE_CERTIFICATE
17461847f8eSopenharmony_ci   * @param { Want } admin - admin indicates the enterprise admin extension ability information.
17561847f8eSopenharmony_ci   *                         The admin must have the corresponding permission.
17661847f8eSopenharmony_ci   * @param { string } certUri - uri of the certificate. It cannot be empty or more than 64 characters.
17761847f8eSopenharmony_ci   * @returns { Promise<void> } the promise returned by the uninstallUserCertificate.
17861847f8eSopenharmony_ci   * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.
17961847f8eSopenharmony_ci   * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device.
18061847f8eSopenharmony_ci   * @throws { BusinessError } 9201001 - Failed to manage the certificate.
18161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API.
18261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
18361847f8eSopenharmony_ci   *                                 2. Incorrect parameter types; 3. Parameter verification failed.
18461847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
18561847f8eSopenharmony_ci   * @stagemodelonly
18661847f8eSopenharmony_ci   * @since 12
18761847f8eSopenharmony_ci   */
18861847f8eSopenharmony_ci  function uninstallUserCertificate(admin: Want, certUri: string): Promise<void>;
18961847f8eSopenharmony_ci
19061847f8eSopenharmony_ci  /**
19161847f8eSopenharmony_ci   * Sets the password policy of the device.
19261847f8eSopenharmony_ci   * 
19361847f8eSopenharmony_ci   * @permission ohos.permission.ENTERPRISE_MANAGE_SECURITY
19461847f8eSopenharmony_ci   * @param { Want } admin - admin indicates the enterprise admin extension ability information.
19561847f8eSopenharmony_ci   *                         The admin must have the corresponding permission.
19661847f8eSopenharmony_ci   * @param { PasswordPolicy } policy - password policy to be set.
19761847f8eSopenharmony_ci   * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.
19861847f8eSopenharmony_ci   * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device.
19961847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API.
20061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
20161847f8eSopenharmony_ci   *                                 2. Incorrect parameter types; 3. Parameter verification failed.
20261847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
20361847f8eSopenharmony_ci   * @stagemodelonly
20461847f8eSopenharmony_ci   * @since 12
20561847f8eSopenharmony_ci   */
20661847f8eSopenharmony_ci  function setPasswordPolicy(admin: Want, policy: PasswordPolicy): void;
20761847f8eSopenharmony_ci
20861847f8eSopenharmony_ci  /**
20961847f8eSopenharmony_ci   * Gets the password policy of the device.
21061847f8eSopenharmony_ci   * 
21161847f8eSopenharmony_ci   * @permission ohos.permission.ENTERPRISE_MANAGE_SECURITY
21261847f8eSopenharmony_ci   * @param { Want } admin - admin indicates the enterprise admin extension ability information.
21361847f8eSopenharmony_ci   *                         The admin must have the corresponding permission.
21461847f8eSopenharmony_ci   * @returns { PasswordPolicy } the password policy of the device.
21561847f8eSopenharmony_ci   * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.
21661847f8eSopenharmony_ci   * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device.
21761847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API.
21861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
21961847f8eSopenharmony_ci   *                                 2. Incorrect parameter types; 3. Parameter verification failed.
22061847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
22161847f8eSopenharmony_ci   * @stagemodelonly
22261847f8eSopenharmony_ci   * @since 12
22361847f8eSopenharmony_ci   */
22461847f8eSopenharmony_ci  function getPasswordPolicy(admin: Want): PasswordPolicy;
22561847f8eSopenharmony_ci
22661847f8eSopenharmony_ci  /**
22761847f8eSopenharmony_ci   * Gets the password policy of the device.
22861847f8eSopenharmony_ci   * 
22961847f8eSopenharmony_ci   * @returns { PasswordPolicy } the password policy of the device.
23061847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API.
23161847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
23261847f8eSopenharmony_ci   * @systemapi
23361847f8eSopenharmony_ci   * @stagemodelonly
23461847f8eSopenharmony_ci   * @since 12
23561847f8eSopenharmony_ci   */
23661847f8eSopenharmony_ci  function getPasswordPolicy(): PasswordPolicy;
23761847f8eSopenharmony_ci
23861847f8eSopenharmony_ci  /**
23961847f8eSopenharmony_ci   * Sets the application's clipboard policy of the device.
24061847f8eSopenharmony_ci   * 
24161847f8eSopenharmony_ci   * @permission ohos.permission.ENTERPRISE_MANAGE_SECURITY
24261847f8eSopenharmony_ci   * @param { Want } admin - admin indicates the administrator ability information.
24361847f8eSopenharmony_ci   * @param { number } tokenId - tokenId indicates the token id of the application.
24461847f8eSopenharmony_ci   * @param { ClipboardPolicy } policy - clipboard policy to be set.
24561847f8eSopenharmony_ci   * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.
24661847f8eSopenharmony_ci   * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device.
24761847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API.
24861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
24961847f8eSopenharmony_ci   *     2. Incorrect parameter types; 3. Parameter verification failed.
25061847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
25161847f8eSopenharmony_ci   * @stagemodelonly
25261847f8eSopenharmony_ci   * @since 12
25361847f8eSopenharmony_ci   */
25461847f8eSopenharmony_ci  function setAppClipboardPolicy(admin: Want, tokenId: number, policy: ClipboardPolicy): void;
25561847f8eSopenharmony_ci
25661847f8eSopenharmony_ci  /**
25761847f8eSopenharmony_ci   * Gets the application's clipboard policy of the device.
25861847f8eSopenharmony_ci   * 
25961847f8eSopenharmony_ci   * @permission ohos.permission.ENTERPRISE_MANAGE_SECURITY
26061847f8eSopenharmony_ci   * @param { Want } admin - admin indicates the administrator ability information.
26161847f8eSopenharmony_ci   * @param { number } [tokenId] - tokenId indicates the token id of the application.
26261847f8eSopenharmony_ci   * @returns { string } the json string of clipboard policy for each application of the device.
26361847f8eSopenharmony_ci   * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.
26461847f8eSopenharmony_ci   * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device.
26561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API.
26661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
26761847f8eSopenharmony_ci   *     2. Incorrect parameter types; 3. Parameter verification failed.
26861847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
26961847f8eSopenharmony_ci   * @stagemodelonly
27061847f8eSopenharmony_ci   * @since 12
27161847f8eSopenharmony_ci   */
27261847f8eSopenharmony_ci  function getAppClipboardPolicy(admin: Want, tokenId?: number): string;
27361847f8eSopenharmony_ci
27461847f8eSopenharmony_ci  /**
27561847f8eSopenharmony_ci   * Sets the watermark image displayed during the application running.
27661847f8eSopenharmony_ci   * 
27761847f8eSopenharmony_ci   * @permission ohos.permission.ENTERPRISE_MANAGE_SECURITY
27861847f8eSopenharmony_ci   * @param { Want } admin - admin indicates the administrator ability information.
27961847f8eSopenharmony_ci   * @param { string } bundleName - the bundle name of the application to be set watermark.
28061847f8eSopenharmony_ci   * @param { string | image.PixelMap } source - watermark's pixelMap or its url.
28161847f8eSopenharmony_ci   * @param { number } accountId - indicates the accountID.
28261847f8eSopenharmony_ci   * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.
28361847f8eSopenharmony_ci   * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device.
28461847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API.
28561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
28661847f8eSopenharmony_ci   *     2. Incorrect parameter types; 3. Parameter verification failed.
28761847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
28861847f8eSopenharmony_ci   * @stagemodelonly
28961847f8eSopenharmony_ci   * @since 14
29061847f8eSopenharmony_ci   */
29161847f8eSopenharmony_ci  function setWatermarkImage(admin: Want, bundleName: string, source: string | image.PixelMap, accountId: number): void;
29261847f8eSopenharmony_ci
29361847f8eSopenharmony_ci  /**
29461847f8eSopenharmony_ci   * Cancels the watermark image displayed during the application running.
29561847f8eSopenharmony_ci   * 
29661847f8eSopenharmony_ci   * @permission ohos.permission.ENTERPRISE_MANAGE_SECURITY
29761847f8eSopenharmony_ci   * @param { Want } admin - admin indicates the administrator ability information.
29861847f8eSopenharmony_ci   * @param { string } bundleName - the bundle name of the application to be set watermark.
29961847f8eSopenharmony_ci   * @param { number } accountId - indicates the accountID.
30061847f8eSopenharmony_ci   * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.
30161847f8eSopenharmony_ci   * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device.
30261847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API.
30361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
30461847f8eSopenharmony_ci   *     2. Incorrect parameter types; 3. Parameter verification failed.
30561847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
30661847f8eSopenharmony_ci   * @stagemodelonly
30761847f8eSopenharmony_ci   * @since 14
30861847f8eSopenharmony_ci   */
30961847f8eSopenharmony_ci  function cancelWatermarkImage(admin: Want, bundleName: string, accountId: number): void;
31061847f8eSopenharmony_ci
31161847f8eSopenharmony_ci  /**
31261847f8eSopenharmony_ci   * Password policy.
31361847f8eSopenharmony_ci   * 
31461847f8eSopenharmony_ci   * @typedef PasswordPolicy
31561847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
31661847f8eSopenharmony_ci   * @stagemodelonly
31761847f8eSopenharmony_ci   * @since 12
31861847f8eSopenharmony_ci   */
31961847f8eSopenharmony_ci  export interface PasswordPolicy {
32061847f8eSopenharmony_ci    /**
32161847f8eSopenharmony_ci     * The regex of complexity
32261847f8eSopenharmony_ci     * 
32361847f8eSopenharmony_ci     * @type { ?string }
32461847f8eSopenharmony_ci     * @syscap SystemCapability.Customization.EnterpriseDeviceManager
32561847f8eSopenharmony_ci     * @stagemodelonly
32661847f8eSopenharmony_ci     * @since 12
32761847f8eSopenharmony_ci     */
32861847f8eSopenharmony_ci    complexityRegex?: string;
32961847f8eSopenharmony_ci
33061847f8eSopenharmony_ci    /**
33161847f8eSopenharmony_ci     * Period of validity
33261847f8eSopenharmony_ci     * 
33361847f8eSopenharmony_ci     * @type { ?number }
33461847f8eSopenharmony_ci     * @syscap SystemCapability.Customization.EnterpriseDeviceManager
33561847f8eSopenharmony_ci     * @stagemodelonly
33661847f8eSopenharmony_ci     * @since 12
33761847f8eSopenharmony_ci     */
33861847f8eSopenharmony_ci    validityPeriod?: number;
33961847f8eSopenharmony_ci
34061847f8eSopenharmony_ci    /**
34161847f8eSopenharmony_ci     * Other supplementary description
34261847f8eSopenharmony_ci     * 
34361847f8eSopenharmony_ci     * @type { ?string }
34461847f8eSopenharmony_ci     * @syscap SystemCapability.Customization.EnterpriseDeviceManager
34561847f8eSopenharmony_ci     * @stagemodelonly
34661847f8eSopenharmony_ci     * @since 12
34761847f8eSopenharmony_ci     */
34861847f8eSopenharmony_ci    additionalDescription?: string;
34961847f8eSopenharmony_ci  }
35061847f8eSopenharmony_ci
35161847f8eSopenharmony_ci  /**
35261847f8eSopenharmony_ci   * Clipboard policy.
35361847f8eSopenharmony_ci   * 
35461847f8eSopenharmony_ci   * @enum { number } ClipboardPolicy
35561847f8eSopenharmony_ci   * @syscap SystemCapability.Customization.EnterpriseDeviceManager
35661847f8eSopenharmony_ci   * @stagemodelonly
35761847f8eSopenharmony_ci   * @since 12
35861847f8eSopenharmony_ci   */
35961847f8eSopenharmony_ci  export enum ClipboardPolicy {
36061847f8eSopenharmony_ci    /**
36161847f8eSopenharmony_ci     * Policy default
36261847f8eSopenharmony_ci     * 
36361847f8eSopenharmony_ci     * @syscap SystemCapability.Customization.EnterpriseDeviceManager
36461847f8eSopenharmony_ci     * @stagemodelonly
36561847f8eSopenharmony_ci     * @since 12
36661847f8eSopenharmony_ci     */
36761847f8eSopenharmony_ci    DEFAULT = 0,
36861847f8eSopenharmony_ci
36961847f8eSopenharmony_ci    /**
37061847f8eSopenharmony_ci     * Policy indicates that the clipboard can be used on the same application
37161847f8eSopenharmony_ci     * 
37261847f8eSopenharmony_ci     * @syscap SystemCapability.Customization.EnterpriseDeviceManager
37361847f8eSopenharmony_ci     * @stagemodelonly
37461847f8eSopenharmony_ci     * @since 12
37561847f8eSopenharmony_ci     */
37661847f8eSopenharmony_ci    IN_APP = 1,
37761847f8eSopenharmony_ci
37861847f8eSopenharmony_ci    /**
37961847f8eSopenharmony_ci     * Policy indicates that the clipboard can be used on the same device
38061847f8eSopenharmony_ci     * 
38161847f8eSopenharmony_ci     * @syscap SystemCapability.Customization.EnterpriseDeviceManager
38261847f8eSopenharmony_ci     * @stagemodelonly
38361847f8eSopenharmony_ci     * @since 12
38461847f8eSopenharmony_ci     */
38561847f8eSopenharmony_ci    LOCAL_DEVICE = 2,
38661847f8eSopenharmony_ci
38761847f8eSopenharmony_ci    /**
38861847f8eSopenharmony_ci     * Policy indicates that the clipboard can be used across device
38961847f8eSopenharmony_ci     * 
39061847f8eSopenharmony_ci     * @syscap SystemCapability.Customization.EnterpriseDeviceManager
39161847f8eSopenharmony_ci     * @stagemodelonly
39261847f8eSopenharmony_ci     * @since 12
39361847f8eSopenharmony_ci     */
39461847f8eSopenharmony_ci    CROSS_DEVICE = 3,
39561847f8eSopenharmony_ci  }
39661847f8eSopenharmony_ci}
39761847f8eSopenharmony_ci
39861847f8eSopenharmony_ciexport default securityManager;