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 ConnectivityKit
1961847f8eSopenharmony_ci */
2061847f8eSopenharmony_ci
2161847f8eSopenharmony_ciimport { AsyncCallback, Callback } from './@ohos.base';
2261847f8eSopenharmony_ci
2361847f8eSopenharmony_ci/**
2461847f8eSopenharmony_ci * Provides methods to operate or manage Wi-Fi.
2561847f8eSopenharmony_ci * @namespace wifiManager
2661847f8eSopenharmony_ci * @since 9
2761847f8eSopenharmony_ci */
2861847f8eSopenharmony_ci/**
2961847f8eSopenharmony_ci * Provides methods to operate or manage Wi-Fi.
3061847f8eSopenharmony_ci * @namespace wifiManager
3161847f8eSopenharmony_ci * @atomicservice
3261847f8eSopenharmony_ci * @since 11
3361847f8eSopenharmony_ci */
3461847f8eSopenharmony_ci/**
3561847f8eSopenharmony_ci * Provides methods to operate or manage Wi-Fi.
3661847f8eSopenharmony_ci * @namespace wifiManager
3761847f8eSopenharmony_ci * @syscap SystemCapability.Communication.WiFi.STA
3861847f8eSopenharmony_ci * @crossplatform
3961847f8eSopenharmony_ci * @atomicservice
4061847f8eSopenharmony_ci * @since 12
4161847f8eSopenharmony_ci */
4261847f8eSopenharmony_cideclare namespace wifiManager {
4361847f8eSopenharmony_ci  /**
4461847f8eSopenharmony_ci   * Enable Wi-Fi.
4561847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
4661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
4761847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
4861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
4961847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
5061847f8eSopenharmony_ci   * @throws {BusinessError} 2501003 - Failed for wifi is closing.
5161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
5261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
5361847f8eSopenharmony_ci   * @since 9
5461847f8eSopenharmony_ci   */
5561847f8eSopenharmony_ci  function enableWifi(): void;
5661847f8eSopenharmony_ci
5761847f8eSopenharmony_ci  /**
5861847f8eSopenharmony_ci   * Disable Wi-Fi.
5961847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
6061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
6161847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
6261847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
6361847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
6461847f8eSopenharmony_ci   * @throws {BusinessError} 2501004 - Failed for wifi is opening.
6561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
6661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
6761847f8eSopenharmony_ci   * @since 9
6861847f8eSopenharmony_ci   */
6961847f8eSopenharmony_ci  function disableWifi(): void;
7061847f8eSopenharmony_ci
7161847f8eSopenharmony_ci  /**
7261847f8eSopenharmony_ci   * Enable semi - Wifi.
7361847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
7461847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
7561847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
7661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
7761847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
7861847f8eSopenharmony_ci   * @throws {BusinessError} 2501004 - Failed for wifi is opening.
7961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
8061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
8161847f8eSopenharmony_ci   * @since 12
8261847f8eSopenharmony_ci   */
8361847f8eSopenharmony_ci  function enableSemiWifi(): void;
8461847f8eSopenharmony_ci
8561847f8eSopenharmony_ci  /**
8661847f8eSopenharmony_ci   * Query the Wi-Fi status
8761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
8861847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if the Wi-Fi is active, returns {@code false} otherwise.
8961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
9061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
9161847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
9261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
9361847f8eSopenharmony_ci   * @since 9
9461847f8eSopenharmony_ci   */
9561847f8eSopenharmony_ci    /**
9661847f8eSopenharmony_ci   * Query the Wi-Fi status
9761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
9861847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if the Wi-Fi is active, returns {@code false} otherwise.
9961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
10061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
10161847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
10261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
10361847f8eSopenharmony_ci   * @atomicservice
10461847f8eSopenharmony_ci   * @since 11
10561847f8eSopenharmony_ci   */
10661847f8eSopenharmony_ci  /**
10761847f8eSopenharmony_ci   * Query the Wi-Fi status
10861847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
10961847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if the Wi-Fi is active, returns {@code false} otherwise.
11061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
11161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
11261847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
11361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
11461847f8eSopenharmony_ci   * @crossplatform
11561847f8eSopenharmony_ci   * @atomicservice
11661847f8eSopenharmony_ci   * @since 12
11761847f8eSopenharmony_ci   */
11861847f8eSopenharmony_ci  /**
11961847f8eSopenharmony_ci   * Query the Wi-Fi status
12061847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if the Wi-Fi is active, returns {@code false} otherwise.
12161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
12261847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
12361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
12461847f8eSopenharmony_ci   * @crossplatform
12561847f8eSopenharmony_ci   * @atomicservice
12661847f8eSopenharmony_ci   * @since 13
12761847f8eSopenharmony_ci   */
12861847f8eSopenharmony_ci  function isWifiActive(): boolean;
12961847f8eSopenharmony_ci
13061847f8eSopenharmony_ci  /**
13161847f8eSopenharmony_ci   * Scan Wi-Fi hotspot, This API works in asynchronous mode.
13261847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
13361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
13461847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
13561847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
13661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
13761847f8eSopenharmony_ci   * @since 9
13861847f8eSopenharmony_ci   * @deprecated since 10
13961847f8eSopenharmony_ci   * @useinstead wifiManager.startScan
14061847f8eSopenharmony_ci   */
14161847f8eSopenharmony_ci  function scan(): void;
14261847f8eSopenharmony_ci
14361847f8eSopenharmony_ci  /**
14461847f8eSopenharmony_ci   * Scan Wi-Fi hotspot.
14561847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
14661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
14761847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
14861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
14961847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
15061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
15161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
15261847f8eSopenharmony_ci   * @since 10
15361847f8eSopenharmony_ci   */
15461847f8eSopenharmony_ci  function startScan(): void;
15561847f8eSopenharmony_ci
15661847f8eSopenharmony_ci  /**
15761847f8eSopenharmony_ci   * Obtain the scanned sta list.
15861847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and (ohos.permission.GET_WIFI_PEERS_MAC or
15961847f8eSopenharmony_ci   * (ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION))
16061847f8eSopenharmony_ci   * @returns { Promise<Array<WifiScanInfo>> } Returns information about scanned Wi-Fi hotspot if any.
16161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
16261847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
16361847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
16461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
16561847f8eSopenharmony_ci   * @since 9
16661847f8eSopenharmony_ci   * @deprecated since 10
16761847f8eSopenharmony_ci   * @useinstead wifiManager.getScanInfoList
16861847f8eSopenharmony_ci   */
16961847f8eSopenharmony_ci  function getScanResults(): Promise<Array<WifiScanInfo>>;
17061847f8eSopenharmony_ci
17161847f8eSopenharmony_ci  /**
17261847f8eSopenharmony_ci   * Obtains information about a Wi-Fi detail state.
17361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
17461847f8eSopenharmony_ci   * @returns { WifiDetailState } Returns information about wifi state.
17561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
17661847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
17761847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
17861847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
17961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
18061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
18161847f8eSopenharmony_ci   * @since 12
18261847f8eSopenharmony_ci   */
18361847f8eSopenharmony_ci  function getWifiDetailState(): WifiDetailState;
18461847f8eSopenharmony_ci
18561847f8eSopenharmony_ci  /**
18661847f8eSopenharmony_ci   * Obtain the scanned sta list.
18761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and (ohos.permission.GET_WIFI_PEERS_MAC or
18861847f8eSopenharmony_ci   * (ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION))
18961847f8eSopenharmony_ci   * @param { AsyncCallback<Array<WifiScanInfo>> } callback - Returns information about scanned Wi-Fi hotspot if any.
19061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
19161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
19261847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
19361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
19461847f8eSopenharmony_ci   * @since 9
19561847f8eSopenharmony_ci   * @deprecated since 10
19661847f8eSopenharmony_ci   * @useinstead wifiManager.getScanInfoList
19761847f8eSopenharmony_ci   */
19861847f8eSopenharmony_ci  function getScanResults(callback: AsyncCallback<Array<WifiScanInfo>>): void;
19961847f8eSopenharmony_ci
20061847f8eSopenharmony_ci  /**
20161847f8eSopenharmony_ci   * Obtain the scanned sta list.
20261847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and (ohos.permission.GET_WIFI_PEERS_MAC or
20361847f8eSopenharmony_ci   * (ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION))
20461847f8eSopenharmony_ci   * @returns { Array<WifiScanInfo> } Returns information about scanned Wi-Fi hotspot if any.
20561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
20661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
20761847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
20861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
20961847f8eSopenharmony_ci   * @since 9
21061847f8eSopenharmony_ci   * @deprecated since 10
21161847f8eSopenharmony_ci   * @useinstead wifiManager.getScanInfoList
21261847f8eSopenharmony_ci   */
21361847f8eSopenharmony_ci  function getScanResultsSync(): Array<WifiScanInfo>;
21461847f8eSopenharmony_ci
21561847f8eSopenharmony_ci  /**
21661847f8eSopenharmony_ci   * Obtain the scanned station list. If does't have the permission of ohos.permission.GET_WIFI_PEERS_MAC, return random bssid.
21761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
21861847f8eSopenharmony_ci   * @returns { Array<WifiScanInfo> } Returns information about scanned Wi-Fi hotspot if any.
21961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
22061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
22161847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
22261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
22361847f8eSopenharmony_ci   * @since 10
22461847f8eSopenharmony_ci   */
22561847f8eSopenharmony_ci
22661847f8eSopenharmony_ci  /**
22761847f8eSopenharmony_ci   * Obtain the scanned station list. If does't have the permission of ohos.permission.GET_WIFI_PEERS_MAC, return random bssid.
22861847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
22961847f8eSopenharmony_ci   * @returns { Array<WifiScanInfo> } Returns information about scanned Wi-Fi hotspot if any.
23061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
23161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
23261847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
23361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
23461847f8eSopenharmony_ci   * @atomicservice
23561847f8eSopenharmony_ci   * @since 12
23661847f8eSopenharmony_ci   */
23761847f8eSopenharmony_ci  function getScanInfoList(): Array<WifiScanInfo>;
23861847f8eSopenharmony_ci
23961847f8eSopenharmony_ci  /**
24061847f8eSopenharmony_ci   * User can trigger scan even Wi-Fi is disabled.
24161847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.SET_WIFI_CONFIG
24261847f8eSopenharmony_ci   * @param { boolean } isScanAlwaysAllowed - true for allow trigger scan, otherwise don't allow trigger scan when Wi-Fi is disabled.
24361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
24461847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
24561847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
24661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
24761847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
24861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
24961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
25061847f8eSopenharmony_ci   * @since 10
25161847f8eSopenharmony_ci   */
25261847f8eSopenharmony_ci  function setScanAlwaysAllowed(isScanAlwaysAllowed: boolean): void;
25361847f8eSopenharmony_ci
25461847f8eSopenharmony_ci  /**
25561847f8eSopenharmony_ci   * Get scan always allowed flag.
25661847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_CONFIG
25761847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if scan running state is true, returns {@code false} otherwise.
25861847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
25961847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
26061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
26161847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
26261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
26361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
26461847f8eSopenharmony_ci   * @since 10
26561847f8eSopenharmony_ci   */
26661847f8eSopenharmony_ci  function getScanAlwaysAllowed(): boolean;
26761847f8eSopenharmony_ci
26861847f8eSopenharmony_ci  /**
26961847f8eSopenharmony_ci   * Add Wi-Fi connection configuration to the device. The configuration will be updated when the configuration is added.</p>
27061847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.SET_WIFI_CONFIG
27161847f8eSopenharmony_ci   * @param { WifiDeviceConfig } config - Indicates the device configuration for connection to the Wi-Fi network.
27261847f8eSopenharmony_ci   * @returns { Promise<number> } Returns {@code networkId} if the configuration is added; returns {@code -1} otherwise.
27361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
27461847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
27561847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
27661847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
27761847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
27861847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
27961847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
28061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
28161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
28261847f8eSopenharmony_ci   * @since 9
28361847f8eSopenharmony_ci   */
28461847f8eSopenharmony_ci  function addDeviceConfig(config: WifiDeviceConfig): Promise<number>;
28561847f8eSopenharmony_ci  
28661847f8eSopenharmony_ci  /**
28761847f8eSopenharmony_ci   * Add Wi-Fi connection configuration to the device. The configuration will be updated when the configuration is added.</p>
28861847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.SET_WIFI_CONFIG
28961847f8eSopenharmony_ci   * @param { WifiDeviceConfig } config - Indicates the device configuration for connection to the Wi-Fi network.
29061847f8eSopenharmony_ci   * @param { AsyncCallback<number> } callback - Indicates call back of addDeviceConfig.
29161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
29261847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
29361847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
29461847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
29561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
29661847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
29761847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
29861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
29961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
30061847f8eSopenharmony_ci   * @since 9
30161847f8eSopenharmony_ci   */
30261847f8eSopenharmony_ci  function addDeviceConfig(config: WifiDeviceConfig, callback: AsyncCallback<number>): void;
30361847f8eSopenharmony_ci
30461847f8eSopenharmony_ci  /**
30561847f8eSopenharmony_ci  * Add a specified candidate hotspot configuration and returns the networkId.
30661847f8eSopenharmony_ci  * This method adds one configuration at a time. After this configuration is added,
30761847f8eSopenharmony_ci  *     your device will determine whether to connect to the hotspot.
30861847f8eSopenharmony_ci  * The app must be in the foreground.
30961847f8eSopenharmony_ci  * @permission ohos.permission.SET_WIFI_INFO
31061847f8eSopenharmony_ci  * @param { WifiDeviceConfig } config - candidate config.
31161847f8eSopenharmony_ci  * @returns { Promise<number> } Returns {@code networkId} if the configuration is added; returns {@code -1} otherwise.
31261847f8eSopenharmony_ci  * @throws {BusinessError} 201 - Permission denied.
31361847f8eSopenharmony_ci  * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
31461847f8eSopenharmony_ci  *     2. Incorrect parameter types. 3.Parameter verification failed.
31561847f8eSopenharmony_ci  * @throws {BusinessError} 801 - Capability not supported.
31661847f8eSopenharmony_ci  * @throws {BusinessError} 2501000 - Operation failed.
31761847f8eSopenharmony_ci  * @syscap SystemCapability.Communication.WiFi.STA
31861847f8eSopenharmony_ci  * @since 9
31961847f8eSopenharmony_ci  */
32061847f8eSopenharmony_ci
32161847f8eSopenharmony_ci /**
32261847f8eSopenharmony_ci  * Add a specified candidate hotspot configuration and returns the networkId.
32361847f8eSopenharmony_ci  * This method adds one configuration at a time. After this configuration is added,
32461847f8eSopenharmony_ci  *     your device will determine whether to connect to the hotspot.
32561847f8eSopenharmony_ci  * The app must be in the foreground.
32661847f8eSopenharmony_ci  * @permission ohos.permission.SET_WIFI_INFO
32761847f8eSopenharmony_ci  * @param { WifiDeviceConfig } config - candidate config.
32861847f8eSopenharmony_ci  * @returns { Promise<number> } Returns {@code networkId} if the configuration is added; returns {@code -1} otherwise.
32961847f8eSopenharmony_ci  * @throws {BusinessError} 201 - Permission denied.
33061847f8eSopenharmony_ci  * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
33161847f8eSopenharmony_ci  *     2. Incorrect parameter types. 3.Parameter verification failed.
33261847f8eSopenharmony_ci  * @throws {BusinessError} 801 - Capability not supported.
33361847f8eSopenharmony_ci  * @throws {BusinessError} 2501000 - Operation failed.
33461847f8eSopenharmony_ci  * @syscap SystemCapability.Communication.WiFi.STA
33561847f8eSopenharmony_ci  * @atomicservice
33661847f8eSopenharmony_ci  * @since 12
33761847f8eSopenharmony_ci  */
33861847f8eSopenharmony_ci  function addCandidateConfig(config: WifiDeviceConfig): Promise<number>;
33961847f8eSopenharmony_ci  
34061847f8eSopenharmony_ci  /**
34161847f8eSopenharmony_ci  * Add a specified candidate hotspot configuration and returns the networkId.
34261847f8eSopenharmony_ci  * This method adds one configuration at a time. After this configuration is added,
34361847f8eSopenharmony_ci  *     your device will determine whether to connect to the hotspot.
34461847f8eSopenharmony_ci  * The app must be in the foreground.
34561847f8eSopenharmony_ci  * @permission ohos.permission.SET_WIFI_INFO
34661847f8eSopenharmony_ci  * @param { WifiDeviceConfig } config - candidate config.
34761847f8eSopenharmony_ci  * @param { AsyncCallback<number> } callback - Indicates call back of addCandidateConfig.
34861847f8eSopenharmony_ci  * @throws {BusinessError} 201 - Permission denied.
34961847f8eSopenharmony_ci  * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
35061847f8eSopenharmony_ci  *     2. Incorrect parameter types. 3.Parameter verification failed.
35161847f8eSopenharmony_ci  * @throws {BusinessError} 801 - Capability not supported.
35261847f8eSopenharmony_ci  * @throws {BusinessError} 2501000 - Operation failed.
35361847f8eSopenharmony_ci  * @syscap SystemCapability.Communication.WiFi.STA
35461847f8eSopenharmony_ci  * @since 9
35561847f8eSopenharmony_ci  */
35661847f8eSopenharmony_ci
35761847f8eSopenharmony_ci  /**
35861847f8eSopenharmony_ci  * Add a specified candidate hotspot configuration and returns the networkId.
35961847f8eSopenharmony_ci  * This method adds one configuration at a time. After this configuration is added,
36061847f8eSopenharmony_ci  *     your device will determine whether to connect to the hotspot.
36161847f8eSopenharmony_ci  * The app must be in the foreground.
36261847f8eSopenharmony_ci  * @permission ohos.permission.SET_WIFI_INFO
36361847f8eSopenharmony_ci  * @param { WifiDeviceConfig } config - candidate config.
36461847f8eSopenharmony_ci  * @param { AsyncCallback<number> } callback - Indicates call back of addCandidateConfig.
36561847f8eSopenharmony_ci  * @throws {BusinessError} 201 - Permission denied.
36661847f8eSopenharmony_ci  * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
36761847f8eSopenharmony_ci  *     2. Incorrect parameter types. 3.Parameter verification failed.
36861847f8eSopenharmony_ci  * @throws {BusinessError} 801 - Capability not supported.
36961847f8eSopenharmony_ci  * @throws {BusinessError} 2501000 - Operation failed.
37061847f8eSopenharmony_ci  * @syscap SystemCapability.Communication.WiFi.STA
37161847f8eSopenharmony_ci  * @atomicservice
37261847f8eSopenharmony_ci  * @since 12
37361847f8eSopenharmony_ci  */
37461847f8eSopenharmony_ci  function addCandidateConfig(config: WifiDeviceConfig, callback: AsyncCallback<number>): void;
37561847f8eSopenharmony_ci
37661847f8eSopenharmony_ci  /**
37761847f8eSopenharmony_ci   * Remove a specified candidate hotspot configuration, only the configuration which is added by ourself is allowed
37861847f8eSopenharmony_ci   * to be removed.
37961847f8eSopenharmony_ci   * The app must be in the foreground.
38061847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO
38161847f8eSopenharmony_ci   * @param { number } networkId - Network ID which will be removed.
38261847f8eSopenharmony_ci   * @returns { Promise<void> } Return results.
38361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
38461847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
38561847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
38661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
38761847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
38861847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
38961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
39061847f8eSopenharmony_ci   * @since 9
39161847f8eSopenharmony_ci   */
39261847f8eSopenharmony_ci
39361847f8eSopenharmony_ci  /**
39461847f8eSopenharmony_ci   * Remove a specified candidate hotspot configuration, only the configuration which is added by ourself is allowed
39561847f8eSopenharmony_ci   * to be removed.
39661847f8eSopenharmony_ci   * The app must be in the foreground.
39761847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO
39861847f8eSopenharmony_ci   * @param { number } networkId - Network ID which will be removed.
39961847f8eSopenharmony_ci   * @returns { Promise<void> } Return results.
40061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
40161847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
40261847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
40361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
40461847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
40561847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
40661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
40761847f8eSopenharmony_ci   * @atomicservice
40861847f8eSopenharmony_ci   * @since 12
40961847f8eSopenharmony_ci   */
41061847f8eSopenharmony_ci  function removeCandidateConfig(networkId: number): Promise<void>;
41161847f8eSopenharmony_ci
41261847f8eSopenharmony_ci  /**
41361847f8eSopenharmony_ci   * Remove a specified candidate hotspot configuration, only the configuration which is added by ourself is allowed
41461847f8eSopenharmony_ci   * to be removed.
41561847f8eSopenharmony_ci   * The app must be in the foreground
41661847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO
41761847f8eSopenharmony_ci   * @param { number } networkId - Network ID which will be removed.
41861847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - Indicates call back of removeCandidateConfig.
41961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
42061847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
42161847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
42261847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
42361847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
42461847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
42561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
42661847f8eSopenharmony_ci   * @since 9
42761847f8eSopenharmony_ci   */
42861847f8eSopenharmony_ci
42961847f8eSopenharmony_ci  /**
43061847f8eSopenharmony_ci   * Remove a specified candidate hotspot configuration, only the configuration which is added by ourself is allowed
43161847f8eSopenharmony_ci   * to be removed.
43261847f8eSopenharmony_ci   * The app must be in the foreground.
43361847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO
43461847f8eSopenharmony_ci   * @param { number } networkId - Network ID which will be removed.
43561847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - Indicates call back of removeCandidateConfig.
43661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
43761847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
43861847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
43961847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
44061847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
44161847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
44261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
44361847f8eSopenharmony_ci   * @atomicservice
44461847f8eSopenharmony_ci   * @since 12
44561847f8eSopenharmony_ci   */
44661847f8eSopenharmony_ci  function removeCandidateConfig(networkId: number, callback: AsyncCallback<void>): void;
44761847f8eSopenharmony_ci
44861847f8eSopenharmony_ci  /**
44961847f8eSopenharmony_ci   * Obtain the list of all existed candidate Wi-Fi configurations which added by ourself.
45061847f8eSopenharmony_ci   * You can obtain only the Wi-Fi configurations you created on your own application.
45161847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
45261847f8eSopenharmony_ci   * @returns { Array<WifiDeviceConfig> } Returns the list of all existed Wi-Fi configurations you created on your application.
45361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
45461847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
45561847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
45661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
45761847f8eSopenharmony_ci   * @since 9
45861847f8eSopenharmony_ci   */
45961847f8eSopenharmony_ci  /**
46061847f8eSopenharmony_ci   * Obtain the list of all existed candidate Wi-Fi configurations which added by ourself.
46161847f8eSopenharmony_ci   * You can obtain only the Wi-Fi configurations you created on your own application.
46261847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
46361847f8eSopenharmony_ci   * @returns { Array<WifiDeviceConfig> } Returns the list of all existed Wi-Fi configurations you created on your application.
46461847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
46561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
46661847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
46761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
46861847f8eSopenharmony_ci   * @since 10
46961847f8eSopenharmony_ci   */
47061847f8eSopenharmony_ci
47161847f8eSopenharmony_ci  /**
47261847f8eSopenharmony_ci   * Obtain the list of all existed candidate Wi-Fi configurations which added by ourself.
47361847f8eSopenharmony_ci   * You can obtain only the Wi-Fi configurations you created on your own application.
47461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
47561847f8eSopenharmony_ci   * @returns { Array<WifiDeviceConfig> } Returns the list of all existed Wi-Fi configurations you created on your application.
47661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
47761847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
47861847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
47961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
48061847f8eSopenharmony_ci   * @atomicservice
48161847f8eSopenharmony_ci   * @since 12
48261847f8eSopenharmony_ci   */
48361847f8eSopenharmony_ci  function getCandidateConfigs(): Array<WifiDeviceConfig>;
48461847f8eSopenharmony_ci
48561847f8eSopenharmony_ci  /**
48661847f8eSopenharmony_ci   * Connect to a specified candidate hotspot by networkId, only the configuration which is added by ourself
48761847f8eSopenharmony_ci   * is allowed to be connected. This method connect to a configuration at a time.
48861847f8eSopenharmony_ci   * The app must be in the foreground.
48961847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO
49061847f8eSopenharmony_ci   * @param { number } networkId - Network ID which will be connected. The value of networkId cannot be less than 0.
49161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
49261847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
49361847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
49461847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
49561847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
49661847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
49761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
49861847f8eSopenharmony_ci   * @since 9
49961847f8eSopenharmony_ci   */
50061847f8eSopenharmony_ci
50161847f8eSopenharmony_ci  /**
50261847f8eSopenharmony_ci   * Connect to a specified candidate hotspot by networkId, only the configuration which is added by ourself
50361847f8eSopenharmony_ci   * is allowed to be connected. This method connect to a configuration at a time.
50461847f8eSopenharmony_ci   * The app must be in the foreground.
50561847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO
50661847f8eSopenharmony_ci   * @param { number } networkId - Network ID which will be connected. The value of networkId cannot be less than 0.
50761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
50861847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
50961847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
51061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
51161847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
51261847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
51361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
51461847f8eSopenharmony_ci   * @atomicservice
51561847f8eSopenharmony_ci   * @since 12
51661847f8eSopenharmony_ci   */
51761847f8eSopenharmony_ci  function connectToCandidateConfig(networkId: number): void;
51861847f8eSopenharmony_ci
51961847f8eSopenharmony_ci  /**
52061847f8eSopenharmony_ci   * Connect to Wi-Fi hotspot by networkId.
52161847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_WIFI_CONNECTION
52261847f8eSopenharmony_ci   * @param { number } networkId - ID of the connected network. The value of networkId cannot be less than 0.
52361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
52461847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
52561847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
52661847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
52761847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
52861847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
52961847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
53061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
53161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
53261847f8eSopenharmony_ci   * @since 9
53361847f8eSopenharmony_ci   */
53461847f8eSopenharmony_ci  function connectToNetwork(networkId: number): void;
53561847f8eSopenharmony_ci
53661847f8eSopenharmony_ci  /**
53761847f8eSopenharmony_ci   * Connect to Wi-Fi hotspot by WifiDeviceConfig.
53861847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.SET_WIFI_CONFIG and
53961847f8eSopenharmony_ci   * ohos.permission.MANAGE_WIFI_CONNECTION
54061847f8eSopenharmony_ci   * @param { WifiDeviceConfig } config - Indicates the device configuration for connection to the Wi-Fi hotspot.
54161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
54261847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
54361847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
54461847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
54561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
54661847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
54761847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
54861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
54961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
55061847f8eSopenharmony_ci   * @since 9
55161847f8eSopenharmony_ci   */
55261847f8eSopenharmony_ci  function connectToDevice(config: WifiDeviceConfig): void;
55361847f8eSopenharmony_ci
55461847f8eSopenharmony_ci  /**
55561847f8eSopenharmony_ci   * Disconnect connection between sta and Wi-Fi hotspot.
55661847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
55761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
55861847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
55961847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
56061847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
56161847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
56261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
56361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
56461847f8eSopenharmony_ci   * @since 9
56561847f8eSopenharmony_ci   */
56661847f8eSopenharmony_ci  function disconnect(): void;
56761847f8eSopenharmony_ci
56861847f8eSopenharmony_ci  /**
56961847f8eSopenharmony_ci   * Calculate the Wi-Fi signal level based on the Wi-Fi RSSI and frequency band.
57061847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
57161847f8eSopenharmony_ci   * @param { number } rssi - Indicates the Wi-Fi RSSI.
57261847f8eSopenharmony_ci   * @param { number } band - Indicates the Wi-Fi frequency band.
57361847f8eSopenharmony_ci   * @returns { number } Returns Wi-Fi signal level ranging from 0 to 4.
57461847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
57561847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
57661847f8eSopenharmony_ci   *     2. Incorrect parameter types.
57761847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
57861847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
57961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
58061847f8eSopenharmony_ci   * @since 9
58161847f8eSopenharmony_ci   */
58261847f8eSopenharmony_ci  function getSignalLevel(rssi: number, band: number): number;
58361847f8eSopenharmony_ci
58461847f8eSopenharmony_ci  /**
58561847f8eSopenharmony_ci   * Obtain connection information about the Wi-Fi connection. If does't have the permission of ohos.permission.GET_WIFI_PEERS_MAC, return random bssid.
58661847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
58761847f8eSopenharmony_ci   * @returns { Promise<WifiLinkedInfo> } Returns Wi-Fi linked information.
58861847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
58961847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
59061847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
59161847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
59261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
59361847f8eSopenharmony_ci   * @since 9
59461847f8eSopenharmony_ci   */
59561847f8eSopenharmony_ci
59661847f8eSopenharmony_ci  /**
59761847f8eSopenharmony_ci   * Obtain connection information about the Wi-Fi connection. If does't have the permission of ohos.permission.GET_WIFI_PEERS_MAC, return random bssid.
59861847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
59961847f8eSopenharmony_ci   * @returns { Promise<WifiLinkedInfo> } Returns Wi-Fi linked information.
60061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
60161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
60261847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
60361847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
60461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
60561847f8eSopenharmony_ci   * @crossplatform
60661847f8eSopenharmony_ci   * @atomicservice
60761847f8eSopenharmony_ci   * @since 12
60861847f8eSopenharmony_ci   */
60961847f8eSopenharmony_ci  function getLinkedInfo(): Promise<WifiLinkedInfo>;
61061847f8eSopenharmony_ci  
61161847f8eSopenharmony_ci  /**
61261847f8eSopenharmony_ci   * Obtain connection information about the Wi-Fi connection.
61361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
61461847f8eSopenharmony_ci   * @param { AsyncCallback<WifiLinkedInfo> } callback - Indicates callback of function.
61561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
61661847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
61761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
61861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
61961847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
62061847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
62161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
62261847f8eSopenharmony_ci   * @since 9
62361847f8eSopenharmony_ci   */
62461847f8eSopenharmony_ci  /**
62561847f8eSopenharmony_ci   * Obtain connection information about the Wi-Fi connection.
62661847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
62761847f8eSopenharmony_ci   * @param { AsyncCallback<WifiLinkedInfo> } callback - Indicates callback of function.
62861847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
62961847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
63061847f8eSopenharmony_ci   *     2. Incorrect parameter types.
63161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
63261847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
63361847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
63461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
63561847f8eSopenharmony_ci   * @crossplatform
63661847f8eSopenharmony_ci   * @since 12
63761847f8eSopenharmony_ci   */
63861847f8eSopenharmony_ci  function getLinkedInfo(callback: AsyncCallback<WifiLinkedInfo>): void;
63961847f8eSopenharmony_ci
64061847f8eSopenharmony_ci  /**
64161847f8eSopenharmony_ci   * Check whether the Wi-Fi connection has been set up.
64261847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
64361847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if a Wi-Fi connection has been set up, returns {@code false} otherwise.
64461847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
64561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
64661847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
64761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
64861847f8eSopenharmony_ci   * @since 9
64961847f8eSopenharmony_ci   */
65061847f8eSopenharmony_ci
65161847f8eSopenharmony_ci  /**
65261847f8eSopenharmony_ci   * Check whether the Wi-Fi connection has been set up.
65361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
65461847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if a Wi-Fi connection has been set up, returns {@code false} otherwise.
65561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
65661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
65761847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
65861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
65961847f8eSopenharmony_ci   * @crossplatform
66061847f8eSopenharmony_ci   * @atomicservice
66161847f8eSopenharmony_ci   * @since 12
66261847f8eSopenharmony_ci   */
66361847f8eSopenharmony_ci  function isConnected(): boolean;
66461847f8eSopenharmony_ci
66561847f8eSopenharmony_ci  /**
66661847f8eSopenharmony_ci   * Obtain the features supported by the device.
66761847f8eSopenharmony_ci   * To check whether this device supports a specified feature.
66861847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
66961847f8eSopenharmony_ci   * @returns { number } Returns the features supported by this device.
67061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
67161847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
67261847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
67361847f8eSopenharmony_ci   * @throws {BusinessError} 2401000 - Operation failed.
67461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.Core
67561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
67661847f8eSopenharmony_ci   * @since 9
67761847f8eSopenharmony_ci   */
67861847f8eSopenharmony_ci  function getSupportedFeatures(): number;
67961847f8eSopenharmony_ci
68061847f8eSopenharmony_ci  /**
68161847f8eSopenharmony_ci   * Check whether the device supports a specified feature.
68261847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
68361847f8eSopenharmony_ci   * @param { number } featureId Indicates the ID of the feature.
68461847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if this device supports the specified feature, returns {@code false} otherwise.
68561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
68661847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
68761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
68861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
68961847f8eSopenharmony_ci   * @throws {BusinessError} 2401000 - Operation failed.
69061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.Core
69161847f8eSopenharmony_ci   * @since 9
69261847f8eSopenharmony_ci   */
69361847f8eSopenharmony_ci  function isFeatureSupported(featureId: number): boolean;
69461847f8eSopenharmony_ci
69561847f8eSopenharmony_ci  /**
69661847f8eSopenharmony_ci   * Obtain the MAC address of a Wi-Fi device. Wi-Fi must be enabled.
69761847f8eSopenharmony_ci   * The MAC address is unique and cannot be changed.
69861847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_LOCAL_MAC and ohos.permission.GET_WIFI_INFO
69961847f8eSopenharmony_ci   * @returns { string[] } Returns the MAC address of the Wi-Fi device.
70061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
70161847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
70261847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
70361847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
70461847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
70561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
70661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
70761847f8eSopenharmony_ci   * @since 9
70861847f8eSopenharmony_ci   */
70961847f8eSopenharmony_ci  function getDeviceMacAddress(): string[];
71061847f8eSopenharmony_ci
71161847f8eSopenharmony_ci  /**
71261847f8eSopenharmony_ci   * Obtain the IP information of the Wi-Fi connection.
71361847f8eSopenharmony_ci   * The IP information includes the host IP address, gateway address, and DNS information.
71461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
71561847f8eSopenharmony_ci   * @returns { IpInfo } Returns the IP information of the Wi-Fi connection.
71661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
71761847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
71861847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
71961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
72061847f8eSopenharmony_ci   * @since 9
72161847f8eSopenharmony_ci   */
72261847f8eSopenharmony_ci  function getIpInfo(): IpInfo;
72361847f8eSopenharmony_ci
72461847f8eSopenharmony_ci  /**
72561847f8eSopenharmony_ci   * Obtain the IPv6 information of the Wi-Fi connection.
72661847f8eSopenharmony_ci   * The IPv6 information includes the host IP address, gateway address, and DNS information.
72761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
72861847f8eSopenharmony_ci   * @returns { Ipv6Info } Returns the IPv6 information of the Wi-Fi connection.
72961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
73061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
73161847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
73261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
73361847f8eSopenharmony_ci   * @since 10
73461847f8eSopenharmony_ci   */
73561847f8eSopenharmony_ci  function getIpv6Info(): Ipv6Info;
73661847f8eSopenharmony_ci
73761847f8eSopenharmony_ci  /**
73861847f8eSopenharmony_ci   * Obtain the country code of the device.
73961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
74061847f8eSopenharmony_ci   * @returns { string } Returns the country code of this device.
74161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
74261847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
74361847f8eSopenharmony_ci   * @throws {BusinessError} 2401000 - Operation failed.
74461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.Core
74561847f8eSopenharmony_ci   * @since 9
74661847f8eSopenharmony_ci   */
74761847f8eSopenharmony_ci  function getCountryCode(): string;
74861847f8eSopenharmony_ci
74961847f8eSopenharmony_ci  /**
75061847f8eSopenharmony_ci   * Re-associate to current network.
75161847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
75261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
75361847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
75461847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
75561847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
75661847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
75761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
75861847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
75961847f8eSopenharmony_ci   * @since 9
76061847f8eSopenharmony_ci   */
76161847f8eSopenharmony_ci  function reassociate(): void;
76261847f8eSopenharmony_ci
76361847f8eSopenharmony_ci  /**
76461847f8eSopenharmony_ci   * Re-connect to current network.
76561847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
76661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
76761847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
76861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
76961847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
77061847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
77161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
77261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
77361847f8eSopenharmony_ci   * @since 9
77461847f8eSopenharmony_ci   */
77561847f8eSopenharmony_ci  function reconnect(): void;
77661847f8eSopenharmony_ci
77761847f8eSopenharmony_ci  /**
77861847f8eSopenharmony_ci   * Obtain the list of all existed Wi-Fi configurations.
77961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION and ohos.permission.GET_WIFI_CONFIG
78061847f8eSopenharmony_ci   * @returns { Array<WifiDeviceConfig> } Returns the list of all existing Wi-Fi configurations you created on your application.
78161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
78261847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
78361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
78461847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
78561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
78661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
78761847f8eSopenharmony_ci   * @since 9
78861847f8eSopenharmony_ci   */
78961847f8eSopenharmony_ci  /**
79061847f8eSopenharmony_ci   * Obtain the list of all existed Wi-Fi configurations.
79161847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_CONFIG
79261847f8eSopenharmony_ci   * @returns { Array<WifiDeviceConfig> } Returns the list of all existing Wi-Fi configurations you created on your application.
79361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
79461847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
79561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
79661847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
79761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
79861847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
79961847f8eSopenharmony_ci   * @since 10
80061847f8eSopenharmony_ci   */
80161847f8eSopenharmony_ci  function getDeviceConfigs(): Array<WifiDeviceConfig>;
80261847f8eSopenharmony_ci
80361847f8eSopenharmony_ci  /**
80461847f8eSopenharmony_ci   * Update the specified Wi-Fi configuration.
80561847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.SET_WIFI_CONFIG
80661847f8eSopenharmony_ci   * @param { WifiDeviceConfig } config Indicates the Wi-Fi configuration to update.
80761847f8eSopenharmony_ci   * @returns { number } Returns the network ID in the updated Wi-Fi configuration if the update is successful;
80861847f8eSopenharmony_ci   *     returns {@code -1} if the specified Wi-Fi configuration is not contained in the list.
80961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
81061847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
81161847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
81261847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
81361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
81461847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
81561847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
81661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
81761847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
81861847f8eSopenharmony_ci   * @since 9
81961847f8eSopenharmony_ci   */
82061847f8eSopenharmony_ci  function updateNetwork(config: WifiDeviceConfig): number;
82161847f8eSopenharmony_ci
82261847f8eSopenharmony_ci  /**
82361847f8eSopenharmony_ci   * Disable the specified DeviceConfig by networkId.
82461847f8eSopenharmony_ci   * The disabled DeviceConfig will not be associated with again.
82561847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
82661847f8eSopenharmony_ci   * @param { number } netId Identifies the network to disable. The value of networkId cannot be less than 0.
82761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
82861847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
82961847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
83061847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
83161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
83261847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
83361847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
83461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
83561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
83661847f8eSopenharmony_ci   * @since 9
83761847f8eSopenharmony_ci   */
83861847f8eSopenharmony_ci  function disableNetwork(netId: number): void;
83961847f8eSopenharmony_ci
84061847f8eSopenharmony_ci  /**
84161847f8eSopenharmony_ci   * Remove all the saved Wi-Fi configurations.
84261847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
84361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
84461847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
84561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
84661847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
84761847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
84861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
84961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
85061847f8eSopenharmony_ci   * @since 9
85161847f8eSopenharmony_ci   */
85261847f8eSopenharmony_ci  function removeAllNetwork(): void;
85361847f8eSopenharmony_ci
85461847f8eSopenharmony_ci  /**
85561847f8eSopenharmony_ci   * Remove a Wi-Fi DeviceConfig with networkId.
85661847f8eSopenharmony_ci   * After a Wi-Fi DeviceConfig is removed, its configuration will be deleted from the list of Wi-Fi configurations.
85761847f8eSopenharmony_ci   * If the Wi-Fi DeviceConfig is being connected, the connection will be interrupted.
85861847f8eSopenharmony_ci   * The application can only delete Wi-Fi DeviceConfig it has created.
85961847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
86061847f8eSopenharmony_ci   * @param { number } id - Indicate the ID of the Wi-Fi DeviceConfig. The value of networkId cannot be less than 0.
86161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
86261847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
86361847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
86461847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed. 
86561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
86661847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
86761847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
86861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
86961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
87061847f8eSopenharmony_ci   * @since 9
87161847f8eSopenharmony_ci   */
87261847f8eSopenharmony_ci  function removeDevice(id: number): void;
87361847f8eSopenharmony_ci
87461847f8eSopenharmony_ci  /**
87561847f8eSopenharmony_ci   * Check whether the current device supports the specified band.
87661847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
87761847f8eSopenharmony_ci   * @param { WifiBandType } bandType - Indicates the band type.
87861847f8eSopenharmony_ci   * @returns { boolean }Returns {@code true} if the specified band is supported, returns {@code false} otherwise.
87961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
88061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
88161847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
88261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
88361847f8eSopenharmony_ci   * @since 10
88461847f8eSopenharmony_ci   */
88561847f8eSopenharmony_ci  function isBandTypeSupported(bandType: WifiBandType): boolean;
88661847f8eSopenharmony_ci
88761847f8eSopenharmony_ci  /**
88861847f8eSopenharmony_ci   * Obtain the supported 5G channel list of the device.
88961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_CONFIG
89061847f8eSopenharmony_ci   * @returns { Array<number> } Returns 5G channel list.
89161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
89261847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
89361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
89461847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
89561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
89661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
89761847f8eSopenharmony_ci   * @since 10
89861847f8eSopenharmony_ci   */
89961847f8eSopenharmony_ci  function get5GChannelList(): Array<number>;
90061847f8eSopenharmony_ci
90161847f8eSopenharmony_ci  /**
90261847f8eSopenharmony_ci   * Obtain the latest disconnected reason.
90361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_CONFIG
90461847f8eSopenharmony_ci   * @returns { DisconnectedReason } Returns the latest disconnected reason.
90561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
90661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
90761847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
90861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
90961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
91061847f8eSopenharmony_ci   * @since 10
91161847f8eSopenharmony_ci   */
91261847f8eSopenharmony_ci  function getDisconnectedReason(): DisconnectedReason;
91361847f8eSopenharmony_ci
91461847f8eSopenharmony_ci  /**
91561847f8eSopenharmony_ci   * Start Portal certification.
91661847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
91761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
91861847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
91961847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
92061847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
92161847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
92261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
92361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
92461847f8eSopenharmony_ci   * @since 11
92561847f8eSopenharmony_ci   */
92661847f8eSopenharmony_ci  function startPortalCertification(): void;
92761847f8eSopenharmony_ci
92861847f8eSopenharmony_ci  /**
92961847f8eSopenharmony_ci   * Whether the hotspot is metered hotspot or not.
93061847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
93161847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if the hotspot is metered hotspot, returns {@code false} otherwise.
93261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
93361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
93461847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
93561847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
93661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
93761847f8eSopenharmony_ci   * @since 11
93861847f8eSopenharmony_ci   */
93961847f8eSopenharmony_ci  function isMeteredHotspot(): boolean;
94061847f8eSopenharmony_ci
94161847f8eSopenharmony_ci  /**
94261847f8eSopenharmony_ci   * Enable hiLink handshake.
94361847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
94461847f8eSopenharmony_ci   * @param { boolean } isHiLinkEnable - Indicates the HiLink enable or not.
94561847f8eSopenharmony_ci   * @param { string } bssid - Indicates the Wi-Fi bssid.
94661847f8eSopenharmony_ci   * @param { WifiDeviceConfig } config - Indicates the Wi-Fi device config.
94761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
94861847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
94961847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
95061847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
95161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
95261847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
95361847f8eSopenharmony_ci   * @throws {BusinessError} 2501001 - Wi-Fi STA disabled.
95461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
95561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
95661847f8eSopenharmony_ci   * @since 12
95761847f8eSopenharmony_ci   */
95861847f8eSopenharmony_ci  function enableHiLinkHandshake(isHiLinkEnable: boolean, bssid: string, config: WifiDeviceConfig): void;
95961847f8eSopenharmony_ci
96061847f8eSopenharmony_ci  /**
96161847f8eSopenharmony_ci   * Reset all saved device configure.
96261847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.SET_WIFI_CONFIG
96361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
96461847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
96561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
96661847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
96761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
96861847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
96961847f8eSopenharmony_ci   * @since 11
97061847f8eSopenharmony_ci   */
97161847f8eSopenharmony_ci  function factoryReset(): void;
97261847f8eSopenharmony_ci
97361847f8eSopenharmony_ci  /**
97461847f8eSopenharmony_ci   * Enable Wi-Fi hotspot function.
97561847f8eSopenharmony_ci   * This method is asynchronous. After the Wi-Fi hotspot is enabled, Wi-Fi may be disabled.
97661847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_WIFI_HOTSPOT
97761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
97861847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
97961847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
98061847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
98161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
98261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
98361847f8eSopenharmony_ci   * @since 9
98461847f8eSopenharmony_ci   */
98561847f8eSopenharmony_ci  function enableHotspot(): void;
98661847f8eSopenharmony_ci
98761847f8eSopenharmony_ci  /**
98861847f8eSopenharmony_ci   * Disable Wi-Fi hotspot function.
98961847f8eSopenharmony_ci   * This method is asynchronous. If Wi-Fi is enabled after the Wi-Fi hotspot is disabled, Wi-Fi may be re-enabled.
99061847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_WIFI_HOTSPOT
99161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
99261847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
99361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
99461847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
99561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
99661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
99761847f8eSopenharmony_ci   * @since 9
99861847f8eSopenharmony_ci   */
99961847f8eSopenharmony_ci  function disableHotspot(): void;
100061847f8eSopenharmony_ci
100161847f8eSopenharmony_ci  /**
100261847f8eSopenharmony_ci   * Check whether a device serving as a Wi-Fi hotspot supports both the 2.4 GHz and 5 GHz Wi-Fi.
100361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.MANAGE_WIFI_HOTSPOT
100461847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if the method is called successfully, returns {@code false} otherwise.
100561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
100661847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
100761847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
100861847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
100961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
101061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
101161847f8eSopenharmony_ci   * @since 9
101261847f8eSopenharmony_ci   */
101361847f8eSopenharmony_ci  function isHotspotDualBandSupported(): boolean;
101461847f8eSopenharmony_ci
101561847f8eSopenharmony_ci  /**
101661847f8eSopenharmony_ci   * Check whether Wi-Fi hotspot is active on a device.
101761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
101861847f8eSopenharmony_ci   * @returns { boolean } {@code true} if Wi-Fi hotspot is enabled, returns {@code false} otherwise.
101961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
102061847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
102161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
102261847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
102361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
102461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
102561847f8eSopenharmony_ci   * @since 9
102661847f8eSopenharmony_ci   */
102761847f8eSopenharmony_ci  function isHotspotActive(): boolean;
102861847f8eSopenharmony_ci
102961847f8eSopenharmony_ci  /**
103061847f8eSopenharmony_ci   * Set the hotspot configuration for the device.
103161847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.GET_WIFI_CONFIG
103261847f8eSopenharmony_ci   * @param { HotspotConfig } config - Indicates the Wi-Fi hotspot configuration.
103361847f8eSopenharmony_ci   *     The SSID and {@code securityType} must be available and correct.
103461847f8eSopenharmony_ci   *     If {@code securityType} is not {@code open}, {@code preSharedKey} must be available and correct.
103561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
103661847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
103761847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Incorrect parameter types.
103861847f8eSopenharmony_ci   *     2.Parameter verification failed.
103961847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
104061847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
104161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
104261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
104361847f8eSopenharmony_ci   * @since 9
104461847f8eSopenharmony_ci   */
104561847f8eSopenharmony_ci  function setHotspotConfig(config: HotspotConfig): void;
104661847f8eSopenharmony_ci
104761847f8eSopenharmony_ci  /**
104861847f8eSopenharmony_ci   * Obtain the Wi-Fi hotspot configuration.
104961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_CONFIG
105061847f8eSopenharmony_ci   * @returns { HotspotConfig } Returns the configuration of an existed or enabled Wi-Fi hotspot.
105161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
105261847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
105361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
105461847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
105561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
105661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
105761847f8eSopenharmony_ci   * @since 9
105861847f8eSopenharmony_ci   */
105961847f8eSopenharmony_ci  function getHotspotConfig(): HotspotConfig;
106061847f8eSopenharmony_ci
106161847f8eSopenharmony_ci  /**
106261847f8eSopenharmony_ci   * Obtain the list of stations that are connected to the Wi-Fi hotspot.
106361847f8eSopenharmony_ci   * This method can only be used on a device that serves as a Wi-Fi hotspot.
106461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION and ohos.permission.MANAGE_WIFI_HOTSPOT
106561847f8eSopenharmony_ci   * @returns { Array<StationInfo> } the list of clients that are connected to the Wi-Fi hotspot.
106661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
106761847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
106861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
106961847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
107061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
107161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
107261847f8eSopenharmony_ci   * @since 9
107361847f8eSopenharmony_ci   */
107461847f8eSopenharmony_ci  /**
107561847f8eSopenharmony_ci   * Obtain the list of stations that are connected to the Wi-Fi hotspot.
107661847f8eSopenharmony_ci   * This method can only be used on a device that serves as a Wi-Fi hotspot.
107761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.MANAGE_WIFI_HOTSPOT
107861847f8eSopenharmony_ci   * @returns { Array<StationInfo> } the list of clients that are connected to the Wi-Fi hotspot.
107961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
108061847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
108161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
108261847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
108361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
108461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
108561847f8eSopenharmony_ci   * @since 10
108661847f8eSopenharmony_ci   */
108761847f8eSopenharmony_ci  function getStations(): Array<StationInfo>;
108861847f8eSopenharmony_ci
108961847f8eSopenharmony_ci   /**
109061847f8eSopenharmony_ci   * Add the station into the block list, the station can NOT access the hotspot.
109161847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_HOTSPOT
109261847f8eSopenharmony_ci   * @param { StationInfo } stationInfo - station which will be added in the block list.
109361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
109461847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
109561847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1.Incorrect parameter types.
109661847f8eSopenharmony_ci   *     2.Parameter verification failed.
109761847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
109861847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
109961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
110061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
110161847f8eSopenharmony_ci   * @since 11
110261847f8eSopenharmony_ci   */
110361847f8eSopenharmony_ci  function addHotspotBlockList(stationInfo: StationInfo);
110461847f8eSopenharmony_ci
110561847f8eSopenharmony_ci  /**
110661847f8eSopenharmony_ci   * Delete the station from block list, the station can access the hotspot.
110761847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_HOTSPOT
110861847f8eSopenharmony_ci   * @param { StationInfo } stationInfo - station which will be deleted in the block list.
110961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
111061847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
111161847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1.Incorrect parameter types.
111261847f8eSopenharmony_ci   *     2.Parameter verification failed.
111361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
111461847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
111561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
111661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
111761847f8eSopenharmony_ci   * @since 11
111861847f8eSopenharmony_ci   */
111961847f8eSopenharmony_ci  function delHotspotBlockList(stationInfo: StationInfo);
112061847f8eSopenharmony_ci
112161847f8eSopenharmony_ci  /**
112261847f8eSopenharmony_ci   * Get all the stations in the block list. If does't have the permission of ohos.permission.GET_WIFI_PEERS_MAC, return random bssid.
112361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.MANAGE_WIFI_HOTSPOT
112461847f8eSopenharmony_ci   * @returns { Array<StationInfo> } stations in the block list.
112561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
112661847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
112761847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
112861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
112961847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Hotspot module error.
113061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
113161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
113261847f8eSopenharmony_ci   * @since 11
113361847f8eSopenharmony_ci   */
113461847f8eSopenharmony_ci  function getHotspotBlockList(): Array<StationInfo>;
113561847f8eSopenharmony_ci
113661847f8eSopenharmony_ci  /**
113761847f8eSopenharmony_ci   * Obtain information about the P2P connection.
113861847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
113961847f8eSopenharmony_ci   * @returns { Promise<WifiP2pLinkedInfo> } Returns p2p linked information.
114061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
114161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
114261847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
114361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
114461847f8eSopenharmony_ci   * @since 9
114561847f8eSopenharmony_ci   */
114661847f8eSopenharmony_ci  function getP2pLinkedInfo(): Promise<WifiP2pLinkedInfo>;
114761847f8eSopenharmony_ci  
114861847f8eSopenharmony_ci  /**
114961847f8eSopenharmony_ci   * Obtain information about the P2P connection.
115061847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
115161847f8eSopenharmony_ci   * @param { AsyncCallback<WifiP2pLinkedInfo> } callback - Indicates callback of function.
115261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
115361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
115461847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - P2P module error.
115561847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
115661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
115761847f8eSopenharmony_ci   * @since 9
115861847f8eSopenharmony_ci   */
115961847f8eSopenharmony_ci  function getP2pLinkedInfo(callback: AsyncCallback<WifiP2pLinkedInfo>): void;
116061847f8eSopenharmony_ci
116161847f8eSopenharmony_ci  /**
116261847f8eSopenharmony_ci   * Obtain information about the current p2p group.
116361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
116461847f8eSopenharmony_ci   * @returns { Promise<WifiP2pGroupInfo> } Returns p2p group information.
116561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
116661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
116761847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
116861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
116961847f8eSopenharmony_ci   * @since 9
117061847f8eSopenharmony_ci   */
117161847f8eSopenharmony_ci  /**
117261847f8eSopenharmony_ci   * Obtain information about the current p2p group.
117361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
117461847f8eSopenharmony_ci   * @returns { Promise<WifiP2pGroupInfo> } Returns p2p group information.
117561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
117661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
117761847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
117861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
117961847f8eSopenharmony_ci   * @since 10
118061847f8eSopenharmony_ci   */
118161847f8eSopenharmony_ci  function getCurrentGroup(): Promise<WifiP2pGroupInfo>;
118261847f8eSopenharmony_ci
118361847f8eSopenharmony_ci  /**
118461847f8eSopenharmony_ci   * Obtain information about the current p2p group.
118561847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
118661847f8eSopenharmony_ci   * @param { AsyncCallback<WifiP2pGroupInfo> } callback - Indicates callback of function.
118761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
118861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
118961847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - P2P module error.
119061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
119161847f8eSopenharmony_ci   * @since 9
119261847f8eSopenharmony_ci   */
119361847f8eSopenharmony_ci  /**
119461847f8eSopenharmony_ci   * Obtain information about the current p2p group.
119561847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
119661847f8eSopenharmony_ci   * @param { AsyncCallback<WifiP2pGroupInfo> } callback - Indicates callback of function.
119761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
119861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
119961847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - P2P module error.
120061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
120161847f8eSopenharmony_ci   * @since 10
120261847f8eSopenharmony_ci   */
120361847f8eSopenharmony_ci  function getCurrentGroup(callback: AsyncCallback<WifiP2pGroupInfo>): void;
120461847f8eSopenharmony_ci
120561847f8eSopenharmony_ci  /**
120661847f8eSopenharmony_ci   * Obtain the information about the found devices.
120761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
120861847f8eSopenharmony_ci   * @returns { Promise<WifiP2pDevice[]> } Returns p2p device information.
120961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
121061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
121161847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
121261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
121361847f8eSopenharmony_ci   * @since 9
121461847f8eSopenharmony_ci   */
121561847f8eSopenharmony_ci  /**
121661847f8eSopenharmony_ci   * Obtain the information about the found devices.
121761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
121861847f8eSopenharmony_ci   * @returns { Promise<WifiP2pDevice[]> } Returns p2p device information.
121961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
122061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
122161847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
122261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
122361847f8eSopenharmony_ci   * @since 10
122461847f8eSopenharmony_ci   */
122561847f8eSopenharmony_ci  function getP2pPeerDevices(): Promise<WifiP2pDevice[]>;
122661847f8eSopenharmony_ci  
122761847f8eSopenharmony_ci  /**
122861847f8eSopenharmony_ci   * Obtain the information about the found devices.
122961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
123061847f8eSopenharmony_ci   * @param { AsyncCallback<WifiP2pDevice[]> } callback - Indicates callback of function.
123161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
123261847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
123361847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - P2P module error.
123461847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
123561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
123661847f8eSopenharmony_ci   * @since 9
123761847f8eSopenharmony_ci   */
123861847f8eSopenharmony_ci  /**
123961847f8eSopenharmony_ci   * Obtain the information about the found devices.
124061847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
124161847f8eSopenharmony_ci   * @param { AsyncCallback<WifiP2pDevice[]> } callback - Indicates callback of function.
124261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
124361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
124461847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - P2P module error.
124561847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
124661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
124761847f8eSopenharmony_ci   * @since 10
124861847f8eSopenharmony_ci   */
124961847f8eSopenharmony_ci  function getP2pPeerDevices(callback: AsyncCallback<WifiP2pDevice[]>): void;
125061847f8eSopenharmony_ci
125161847f8eSopenharmony_ci  /**
125261847f8eSopenharmony_ci   * Obtain the information about own device information. 
125361847f8eSopenharmony_ci   * DeviceAddress in the returned WifiP2pDevice will be set "00:00:00:00:00:00",
125461847f8eSopenharmony_ci   * if ohos.permission.GET_WIFI_LOCAL_MAC is not granted.
125561847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_CONFIG
125661847f8eSopenharmony_ci   * @returns { Promise<WifiP2pDevice> } Returns the information about own device info.
125761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
125861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
125961847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
126061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
126161847f8eSopenharmony_ci   * @since 9
126261847f8eSopenharmony_ci   */
126361847f8eSopenharmony_ci  /**
126461847f8eSopenharmony_ci   * Obtain the information about own device information. 
126561847f8eSopenharmony_ci   * DeviceAddress in the returned WifiP2pDevice will be set "00:00:00:00:00:00",
126661847f8eSopenharmony_ci   * if ohos.permission.GET_WIFI_LOCAL_MAC is not granted.
126761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
126861847f8eSopenharmony_ci   * @returns { Promise<WifiP2pDevice> } Returns the information about own device info.
126961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
127061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
127161847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
127261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
127361847f8eSopenharmony_ci   * @since 11
127461847f8eSopenharmony_ci   */
127561847f8eSopenharmony_ci  function getP2pLocalDevice(): Promise<WifiP2pDevice>;
127661847f8eSopenharmony_ci  
127761847f8eSopenharmony_ci  /**
127861847f8eSopenharmony_ci   * Obtain the information about own device information. 
127961847f8eSopenharmony_ci   * DeviceAddress in the returned WifiP2pDevice will be set "00:00:00:00:00:00",
128061847f8eSopenharmony_ci   * if ohos.permission.GET_WIFI_LOCAL_MAC is not granted.
128161847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_CONFIG
128261847f8eSopenharmony_ci   * @param { AsyncCallback<WifiP2pDevice> } callback - Indicates callback of function.
128361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
128461847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
128561847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - P2P module error.
128661847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
128761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
128861847f8eSopenharmony_ci   * @since 9
128961847f8eSopenharmony_ci   */
129061847f8eSopenharmony_ci  /**
129161847f8eSopenharmony_ci   * Obtain the information about own device information. 
129261847f8eSopenharmony_ci   * DeviceAddress in the returned WifiP2pDevice will be set "00:00:00:00:00:00",
129361847f8eSopenharmony_ci   * if ohos.permission.GET_WIFI_LOCAL_MAC is not granted.
129461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
129561847f8eSopenharmony_ci   * @param { AsyncCallback<WifiP2pDevice> } callback - Indicates callback of function.
129661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
129761847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
129861847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - P2P module error.
129961847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
130061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
130161847f8eSopenharmony_ci   * @since 11
130261847f8eSopenharmony_ci   */
130361847f8eSopenharmony_ci  function getP2pLocalDevice(callback: AsyncCallback<WifiP2pDevice>): void;
130461847f8eSopenharmony_ci
130561847f8eSopenharmony_ci  /**
130661847f8eSopenharmony_ci   * Create a P2P group.
130761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
130861847f8eSopenharmony_ci   * @param { WifiP2PConfig } config - Indicates the configuration for a group.
130961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
131061847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1.Incorrect parameter types.
131161847f8eSopenharmony_ci   *     2.Parameter verification failed.
131261847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
131361847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
131461847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
131561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
131661847f8eSopenharmony_ci   * @since 9
131761847f8eSopenharmony_ci   */
131861847f8eSopenharmony_ci  function createGroup(config: WifiP2PConfig): void;
131961847f8eSopenharmony_ci
132061847f8eSopenharmony_ci  /**
132161847f8eSopenharmony_ci   * Remove a P2P group.
132261847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
132361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
132461847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
132561847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
132661847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
132761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
132861847f8eSopenharmony_ci   * @since 9
132961847f8eSopenharmony_ci   */
133061847f8eSopenharmony_ci  function removeGroup(): void;
133161847f8eSopenharmony_ci
133261847f8eSopenharmony_ci  /**
133361847f8eSopenharmony_ci   * Initiate a P2P connection to a device with the specified configuration.
133461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
133561847f8eSopenharmony_ci   * @param { WifiP2PConfig } config - Indicates the configuration for connecting to a specific group.
133661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
133761847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters.
133861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
133961847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
134061847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
134161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
134261847f8eSopenharmony_ci   * @since 9
134361847f8eSopenharmony_ci   */
134461847f8eSopenharmony_ci  /**
134561847f8eSopenharmony_ci   * Initiate a P2P connection to a device with the specified configuration.
134661847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
134761847f8eSopenharmony_ci   * @param { WifiP2PConfig } config - Indicates the configuration for connecting to a specific group.
134861847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
134961847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1.Incorrect parameter types.
135061847f8eSopenharmony_ci   *     2.Parameter verification failed.
135161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
135261847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
135361847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
135461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
135561847f8eSopenharmony_ci   * @since 10
135661847f8eSopenharmony_ci   */
135761847f8eSopenharmony_ci  function p2pConnect(config: WifiP2PConfig): void;
135861847f8eSopenharmony_ci
135961847f8eSopenharmony_ci  /**
136061847f8eSopenharmony_ci   * Stop an ongoing p2p connection that is being established.
136161847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
136261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
136361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
136461847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
136561847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
136661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
136761847f8eSopenharmony_ci   * @since 9
136861847f8eSopenharmony_ci   */
136961847f8eSopenharmony_ci  function p2pCancelConnect(): void;
137061847f8eSopenharmony_ci
137161847f8eSopenharmony_ci  /**
137261847f8eSopenharmony_ci   * Start discover Wi-Fi P2P devices.
137361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
137461847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
137561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
137661847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
137761847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
137861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
137961847f8eSopenharmony_ci   * @since 9
138061847f8eSopenharmony_ci   */
138161847f8eSopenharmony_ci  /**
138261847f8eSopenharmony_ci   * Start discover Wi-Fi P2P devices.
138361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
138461847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
138561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
138661847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
138761847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
138861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
138961847f8eSopenharmony_ci   * @since 10
139061847f8eSopenharmony_ci   */
139161847f8eSopenharmony_ci  function startDiscoverDevices(): void;
139261847f8eSopenharmony_ci
139361847f8eSopenharmony_ci  /**
139461847f8eSopenharmony_ci   * Stop discover Wi-Fi P2P devices.
139561847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
139661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
139761847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
139861847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
139961847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
140061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
140161847f8eSopenharmony_ci   * @since 9
140261847f8eSopenharmony_ci   */
140361847f8eSopenharmony_ci  function stopDiscoverDevices(): void;
140461847f8eSopenharmony_ci
140561847f8eSopenharmony_ci  /**
140661847f8eSopenharmony_ci   * Delete the persistent P2P group with the specified network ID.
140761847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
140861847f8eSopenharmony_ci   * @param { number } netId - Indicates the network ID of the group to be deleted.
140961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
141061847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
141161847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1.Incorrect parameter types.
141261847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
141361847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
141461847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
141561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
141661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
141761847f8eSopenharmony_ci   * @since 9
141861847f8eSopenharmony_ci   */
141961847f8eSopenharmony_ci  function deletePersistentGroup(netId: number): void;
142061847f8eSopenharmony_ci
142161847f8eSopenharmony_ci  /**
142261847f8eSopenharmony_ci   * Obtain information about the groups.
142361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
142461847f8eSopenharmony_ci   * @returns { Promise<Array<WifiP2pGroupInfo>> } Returns the information about own device info.
142561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
142661847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
142761847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
142861847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
142961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
143061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
143161847f8eSopenharmony_ci   * @since 9
143261847f8eSopenharmony_ci   */
143361847f8eSopenharmony_ci  /**
143461847f8eSopenharmony_ci   * Obtain information about the groups.
143561847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
143661847f8eSopenharmony_ci   * @returns { Promise<Array<WifiP2pGroupInfo>> } Returns the information about own device info.
143761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
143861847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
143961847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
144061847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
144161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
144261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
144361847f8eSopenharmony_ci   * @since 10
144461847f8eSopenharmony_ci   */
144561847f8eSopenharmony_ci  function getP2pGroups(): Promise<Array<WifiP2pGroupInfo>>;
144661847f8eSopenharmony_ci  
144761847f8eSopenharmony_ci  /**
144861847f8eSopenharmony_ci   * Obtain information about the groups.
144961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
145061847f8eSopenharmony_ci   * @param { AsyncCallback<Array<WifiP2pGroupInfo>> } callback - Indicates callback of function.
145161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
145261847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
145361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
145461847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - P2P module error.
145561847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
145661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
145761847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
145861847f8eSopenharmony_ci   * @since 9
145961847f8eSopenharmony_ci   */
146061847f8eSopenharmony_ci  /**
146161847f8eSopenharmony_ci   * Obtain information about the groups.
146261847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
146361847f8eSopenharmony_ci   * @param { AsyncCallback<Array<WifiP2pGroupInfo>> } callback - Indicates callback of function.
146461847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
146561847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
146661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
146761847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - P2P module error.
146861847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
146961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
147061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
147161847f8eSopenharmony_ci   * @since 10
147261847f8eSopenharmony_ci   */
147361847f8eSopenharmony_ci  function getP2pGroups(callback: AsyncCallback<Array<WifiP2pGroupInfo>>): void;
147461847f8eSopenharmony_ci
147561847f8eSopenharmony_ci  /**
147661847f8eSopenharmony_ci   * Set the name of the Wi-Fi P2P device.
147761847f8eSopenharmony_ci   * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION
147861847f8eSopenharmony_ci   * @param { string } devName - Indicate the name to be set.
147961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
148061847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
148161847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
148261847f8eSopenharmony_ci   *     2. Incorrect parameter types. 3.Parameter verification failed.
148361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
148461847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
148561847f8eSopenharmony_ci   * @throws {BusinessError} 2801001 - Wi-Fi STA disabled.
148661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
148761847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
148861847f8eSopenharmony_ci   * @since 9
148961847f8eSopenharmony_ci   */
149061847f8eSopenharmony_ci  function setDeviceName(devName: string): void;
149161847f8eSopenharmony_ci
149261847f8eSopenharmony_ci  /**
149361847f8eSopenharmony_ci   * Subscribe Wi-Fi status change events.
149461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
149561847f8eSopenharmony_ci   * @param { 'wifiStateChange' } type - event name.
149661847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on, 0: inactive, 1: active, 2: activating, 3: de-activating
149761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
149861847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
149961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
150061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
150161847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
150261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
150361847f8eSopenharmony_ci   * @since 9
150461847f8eSopenharmony_ci   */
150561847f8eSopenharmony_ci
150661847f8eSopenharmony_ci  /**
150761847f8eSopenharmony_ci   * Subscribe Wi-Fi status change events.
150861847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
150961847f8eSopenharmony_ci   * @param { 'wifiStateChange' } type - event name.
151061847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on, 0: inactive, 1: active, 2: activating, 3: de-activating
151161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
151261847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
151361847f8eSopenharmony_ci   *     2. Incorrect parameter types.
151461847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
151561847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
151661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
151761847f8eSopenharmony_ci   * @crossplatform
151861847f8eSopenharmony_ci   * @atomicservice
151961847f8eSopenharmony_ci   * @since 12
152061847f8eSopenharmony_ci   */
152161847f8eSopenharmony_ci  function on(type: 'wifiStateChange', callback: Callback<number>): void;
152261847f8eSopenharmony_ci
152361847f8eSopenharmony_ci  /**
152461847f8eSopenharmony_ci   * Unsubscribe Wi-Fi status change events.
152561847f8eSopenharmony_ci   *
152661847f8eSopenharmony_ci   * <p>All callback functions will be deregistered If there is no specific callback parameter.</p>
152761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
152861847f8eSopenharmony_ci   * @param { 'wifiStateChange' } type - event name.
152961847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off
153061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
153161847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
153261847f8eSopenharmony_ci   *     2. Incorrect parameter types.
153361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
153461847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
153561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
153661847f8eSopenharmony_ci   * @since 9
153761847f8eSopenharmony_ci   */
153861847f8eSopenharmony_ci
153961847f8eSopenharmony_ci  /**
154061847f8eSopenharmony_ci   * Unsubscribe Wi-Fi status change events.
154161847f8eSopenharmony_ci   *
154261847f8eSopenharmony_ci   * <p>All callback functions will be deregistered If there is no specific callback parameter.</p>
154361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
154461847f8eSopenharmony_ci   * @param { 'wifiStateChange' } type - event name.
154561847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off
154661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
154761847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
154861847f8eSopenharmony_ci   *     2. Incorrect parameter types.
154961847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
155061847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
155161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
155261847f8eSopenharmony_ci   * @crossplatform
155361847f8eSopenharmony_ci   * @atomicservice
155461847f8eSopenharmony_ci   * @since 12
155561847f8eSopenharmony_ci   */
155661847f8eSopenharmony_ci  function off(type: 'wifiStateChange', callback?: Callback<number>): void;
155761847f8eSopenharmony_ci
155861847f8eSopenharmony_ci  /**
155961847f8eSopenharmony_ci   * Subscribe Wi-Fi connection change events.
156061847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
156161847f8eSopenharmony_ci   * @param { 'wifiConnectionChange' } type - event name.
156261847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on, 0: disconnected, 1: connected
156361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
156461847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
156561847f8eSopenharmony_ci   *     2. Incorrect parameter types.
156661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
156761847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
156861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
156961847f8eSopenharmony_ci   * @since 9
157061847f8eSopenharmony_ci   */
157161847f8eSopenharmony_ci
157261847f8eSopenharmony_ci  /**
157361847f8eSopenharmony_ci   * Subscribe Wi-Fi connection change events.
157461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
157561847f8eSopenharmony_ci   * @param { 'wifiConnectionChange' } type - event name.
157661847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on, 0: disconnected, 1: connected
157761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
157861847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
157961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
158061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
158161847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
158261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
158361847f8eSopenharmony_ci   * @crossplatform
158461847f8eSopenharmony_ci   * @atomicservice
158561847f8eSopenharmony_ci   * @since 12
158661847f8eSopenharmony_ci   */
158761847f8eSopenharmony_ci  function on(type: 'wifiConnectionChange', callback: Callback<number>): void;
158861847f8eSopenharmony_ci
158961847f8eSopenharmony_ci  /**
159061847f8eSopenharmony_ci   * Unsubscribe Wi-Fi connection change events.
159161847f8eSopenharmony_ci   * All callback functions will be deregistered If there is no specific callback parameter.</p>
159261847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
159361847f8eSopenharmony_ci   * @param { 'wifiConnectionChange' } type - event name.
159461847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off
159561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
159661847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
159761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
159861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
159961847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
160061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
160161847f8eSopenharmony_ci   * @since 9
160261847f8eSopenharmony_ci   */
160361847f8eSopenharmony_ci
160461847f8eSopenharmony_ci  /**
160561847f8eSopenharmony_ci   * Unsubscribe Wi-Fi connection change events.
160661847f8eSopenharmony_ci   * All callback functions will be deregistered If there is no specific callback parameter.</p>
160761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
160861847f8eSopenharmony_ci   * @param { 'wifiConnectionChange' } type - event name.
160961847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off
161061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
161161847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
161261847f8eSopenharmony_ci   *     2. Incorrect parameter types.
161361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
161461847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
161561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
161661847f8eSopenharmony_ci   * @crossplatform
161761847f8eSopenharmony_ci   * @atomicservice
161861847f8eSopenharmony_ci   * @since 12
161961847f8eSopenharmony_ci   */
162061847f8eSopenharmony_ci  function off(type: 'wifiConnectionChange', callback?: Callback<number>): void;
162161847f8eSopenharmony_ci
162261847f8eSopenharmony_ci  /**
162361847f8eSopenharmony_ci   * Subscribe Wi-Fi scan status change events.
162461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
162561847f8eSopenharmony_ci   * @param { 'wifiScanStateChange' } type - event name.
162661847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on, 0: scan fail, 1: scan success
162761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
162861847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
162961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
163061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
163161847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
163261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
163361847f8eSopenharmony_ci   * @since 9
163461847f8eSopenharmony_ci   */
163561847f8eSopenharmony_ci
163661847f8eSopenharmony_ci  /**
163761847f8eSopenharmony_ci   * Subscribe Wi-Fi scan status change events.
163861847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
163961847f8eSopenharmony_ci   * @param { 'wifiScanStateChange' } type - event name.
164061847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on, 0: scan fail, 1: scan success
164161847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
164261847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
164361847f8eSopenharmony_ci   *     2. Incorrect parameter types.
164461847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
164561847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
164661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
164761847f8eSopenharmony_ci   * @atomicservice
164861847f8eSopenharmony_ci   * @since 12
164961847f8eSopenharmony_ci   */
165061847f8eSopenharmony_ci  function on(type: 'wifiScanStateChange', callback: Callback<number>): void;
165161847f8eSopenharmony_ci
165261847f8eSopenharmony_ci  /**
165361847f8eSopenharmony_ci   * Unsubscribe Wi-Fi scan status change events.
165461847f8eSopenharmony_ci   * All callback functions will be deregistered If there is no specific callback parameter.</p>
165561847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
165661847f8eSopenharmony_ci   * @param { 'wifiScanStateChange' } type - event name.
165761847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off
165861847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
165961847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
166061847f8eSopenharmony_ci   *     2. Incorrect parameter types.
166161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
166261847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
166361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
166461847f8eSopenharmony_ci   * @since 9
166561847f8eSopenharmony_ci   */
166661847f8eSopenharmony_ci
166761847f8eSopenharmony_ci  /**
166861847f8eSopenharmony_ci   * Unsubscribe Wi-Fi scan status change events.
166961847f8eSopenharmony_ci   * All callback functions will be deregistered If there is no specific callback parameter.</p>
167061847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
167161847f8eSopenharmony_ci   * @param { 'wifiScanStateChange' } type - event name.
167261847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off
167361847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
167461847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
167561847f8eSopenharmony_ci   *     2. Incorrect parameter types.
167661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
167761847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
167861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
167961847f8eSopenharmony_ci   * @atomicservice
168061847f8eSopenharmony_ci   * @since 12
168161847f8eSopenharmony_ci   */
168261847f8eSopenharmony_ci  function off(type: 'wifiScanStateChange', callback?: Callback<number>): void;
168361847f8eSopenharmony_ci
168461847f8eSopenharmony_ci  /**
168561847f8eSopenharmony_ci   * Subscribe Wi-Fi rssi change events.
168661847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
168761847f8eSopenharmony_ci   * @param { 'wifiRssiChange' } type - event name.
168861847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on
168961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
169061847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
169161847f8eSopenharmony_ci   *     2. Incorrect parameter types.
169261847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
169361847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
169461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
169561847f8eSopenharmony_ci   * @since 9
169661847f8eSopenharmony_ci   */
169761847f8eSopenharmony_ci  function on(type: 'wifiRssiChange', callback: Callback<number>): void;
169861847f8eSopenharmony_ci
169961847f8eSopenharmony_ci  /**
170061847f8eSopenharmony_ci   * Unsubscribe Wi-Fi rssi change events.
170161847f8eSopenharmony_ci   * All callback functions will be deregistered If there is no specific callback parameter.</p>
170261847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
170361847f8eSopenharmony_ci   * @param { 'wifiRssiChange' } type - event name.
170461847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off
170561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
170661847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
170761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
170861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
170961847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
171061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
171161847f8eSopenharmony_ci   * @since 9
171261847f8eSopenharmony_ci   */
171361847f8eSopenharmony_ci  function off(type: 'wifiRssiChange', callback?: Callback<number>): void;
171461847f8eSopenharmony_ci
171561847f8eSopenharmony_ci  /**
171661847f8eSopenharmony_ci   * Subscribe Wi-Fi stream change events.
171761847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_WIFI_CONNECTION
171861847f8eSopenharmony_ci   * @param { 'streamChange' } type - event name.
171961847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on, 1: stream down, 2: stream up, 3: stream bidirectional
172061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
172161847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
172261847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
172361847f8eSopenharmony_ci   *     2. Incorrect parameter types.
172461847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
172561847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
172661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
172761847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
172861847f8eSopenharmony_ci   * @since 9
172961847f8eSopenharmony_ci   */
173061847f8eSopenharmony_ci  function on(type: 'streamChange', callback: Callback<number>): void;
173161847f8eSopenharmony_ci
173261847f8eSopenharmony_ci  /**
173361847f8eSopenharmony_ci   * Unsubscribe Wi-Fi stream change events.
173461847f8eSopenharmony_ci   * All callback functions will be deregistered If there is no specific callback parameter.</p>
173561847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_WIFI_CONNECTION
173661847f8eSopenharmony_ci   * @param { 'streamChange' } type - event name.
173761847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off
173861847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
173961847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
174061847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
174161847f8eSopenharmony_ci   *     2. Incorrect parameter types.
174261847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
174361847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
174461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
174561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
174661847f8eSopenharmony_ci   * @since 9
174761847f8eSopenharmony_ci   */
174861847f8eSopenharmony_ci  function off(type: 'streamChange', callback?: Callback<number>): void;
174961847f8eSopenharmony_ci
175061847f8eSopenharmony_ci  /**
175161847f8eSopenharmony_ci   * Subscribe Wi-Fi device config change events.
175261847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
175361847f8eSopenharmony_ci   * @param { 'deviceConfigChange' } type - event name.
175461847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on, 0: config is added, 1: config is changed, 2: config is removed.
175561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
175661847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
175761847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
175861847f8eSopenharmony_ci   *     2. Incorrect parameter types.
175961847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
176061847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
176161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
176261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
176361847f8eSopenharmony_ci   * @since 9
176461847f8eSopenharmony_ci   */
176561847f8eSopenharmony_ci  function on(type: 'deviceConfigChange', callback: Callback<number>): void;
176661847f8eSopenharmony_ci
176761847f8eSopenharmony_ci  /**
176861847f8eSopenharmony_ci   * Subscribe Wi-Fi device config change events.
176961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
177061847f8eSopenharmony_ci   * @param { 'deviceConfigChange' } type - event name.
177161847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off, 0: config is added, 1: config is changed, 2: config is removed.
177261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
177361847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
177461847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
177561847f8eSopenharmony_ci   *     2. Incorrect parameter types.
177661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
177761847f8eSopenharmony_ci   * @throws {BusinessError} 2501000 - Operation failed.
177861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
177961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
178061847f8eSopenharmony_ci   * @since 9
178161847f8eSopenharmony_ci   */
178261847f8eSopenharmony_ci  function off(type: 'deviceConfigChange', callback?: Callback<number>): void;
178361847f8eSopenharmony_ci
178461847f8eSopenharmony_ci  /**
178561847f8eSopenharmony_ci   * Subscribe Wi-Fi hotspot state change events.
178661847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
178761847f8eSopenharmony_ci   * @param { 'hotspotStateChange' } type - event name.
178861847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on, 0: inactive, 1: active, 2: activating, 3: de-activating
178961847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
179061847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
179161847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
179261847f8eSopenharmony_ci   *     2. Incorrect parameter types.
179361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
179461847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
179561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
179661847f8eSopenharmony_ci   * @since 9
179761847f8eSopenharmony_ci   */
179861847f8eSopenharmony_ci  function on(type: 'hotspotStateChange', callback: Callback<number>): void;
179961847f8eSopenharmony_ci
180061847f8eSopenharmony_ci  /**
180161847f8eSopenharmony_ci   * Unsubscribe Wi-Fi hotspot state change events.
180261847f8eSopenharmony_ci   * All callback functions will be deregistered If there is no specific callback parameter.</p>
180361847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
180461847f8eSopenharmony_ci   * @param { 'hotspotStateChange'} type - event name.
180561847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off
180661847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
180761847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
180861847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
180961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
181061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
181161847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
181261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
181361847f8eSopenharmony_ci   * @since 9
181461847f8eSopenharmony_ci   */
181561847f8eSopenharmony_ci  function off(type: 'hotspotStateChange', callback?: Callback<number>): void;
181661847f8eSopenharmony_ci
181761847f8eSopenharmony_ci  /**
181861847f8eSopenharmony_ci   * Subscribe Wi-Fi hotspot sta join events.
181961847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_WIFI_HOTSPOT
182061847f8eSopenharmony_ci   * @param { 'hotspotStaJoin' } type - event name.
182161847f8eSopenharmony_ci   * @param { Callback<StationInfo> } callback - the callback of on
182261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
182361847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
182461847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
182561847f8eSopenharmony_ci   *     2. Incorrect parameter types.
182661847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
182761847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
182861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
182961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
183061847f8eSopenharmony_ci   * @since 9
183161847f8eSopenharmony_ci   */
183261847f8eSopenharmony_ci  function on(type: 'hotspotStaJoin', callback: Callback<StationInfo>): void;
183361847f8eSopenharmony_ci
183461847f8eSopenharmony_ci  /**
183561847f8eSopenharmony_ci   * Unsubscribe Wi-Fi hotspot sta join events.
183661847f8eSopenharmony_ci   * All callback functions will be deregistered If there is no specific callback parameter.</p>
183761847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_WIFI_HOTSPOT
183861847f8eSopenharmony_ci   * @param { 'hotspotStaJoin' } type - event name.
183961847f8eSopenharmony_ci   * @param { Callback<StationInfo> } callback - the callback of off
184061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
184161847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
184261847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
184361847f8eSopenharmony_ci   *     2. Incorrect parameter types.
184461847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
184561847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
184661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
184761847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
184861847f8eSopenharmony_ci   * @since 9
184961847f8eSopenharmony_ci   */
185061847f8eSopenharmony_ci  function off(type: 'hotspotStaJoin', callback?: Callback<StationInfo>): void;
185161847f8eSopenharmony_ci
185261847f8eSopenharmony_ci  /**
185361847f8eSopenharmony_ci   * Subscribe Wi-Fi hotspot sta leave events.
185461847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_WIFI_HOTSPOT
185561847f8eSopenharmony_ci   * @param { 'hotspotStaLeave' } type - event name.
185661847f8eSopenharmony_ci   * @param { Callback<StationInfo> } callback - the callback of on
185761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
185861847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
185961847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
186061847f8eSopenharmony_ci   *     2. Incorrect parameter types.
186161847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
186261847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
186361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
186461847f8eSopenharmony_ci
186561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
186661847f8eSopenharmony_ci   * @since 9
186761847f8eSopenharmony_ci   */
186861847f8eSopenharmony_ci  function on(type: 'hotspotStaLeave', callback: Callback<StationInfo>): void;
186961847f8eSopenharmony_ci
187061847f8eSopenharmony_ci  /**
187161847f8eSopenharmony_ci   * Unsubscribe Wi-Fi hotspot sta leave events.
187261847f8eSopenharmony_ci   * @permission ohos.permission.MANAGE_WIFI_HOTSPOT
187361847f8eSopenharmony_ci   * @param { 'hotspotStaLeave' } type - event name.
187461847f8eSopenharmony_ci   * @param { Callback<StationInfo> } callback - the callback of off
187561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
187661847f8eSopenharmony_ci   * @throws {BusinessError} 202 - System API is not allowed called by Non-system application.
187761847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
187861847f8eSopenharmony_ci   *     2. Incorrect parameter types.
187961847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
188061847f8eSopenharmony_ci   * @throws {BusinessError} 2601000 - Operation failed.
188161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
188261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
188361847f8eSopenharmony_ci   * @since 9
188461847f8eSopenharmony_ci   */
188561847f8eSopenharmony_ci  function off(type: 'hotspotStaLeave', callback?: Callback<StationInfo>): void;
188661847f8eSopenharmony_ci
188761847f8eSopenharmony_ci  /**
188861847f8eSopenharmony_ci   * Subscribe P2P status change events.
188961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
189061847f8eSopenharmony_ci   * @param { 'p2pStateChange' } type - event name.
189161847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on, 1: idle, 2: starting, 3:started, 4: closing, 5: closed
189261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
189361847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
189461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
189561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
189661847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
189761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
189861847f8eSopenharmony_ci   * @since 9
189961847f8eSopenharmony_ci   */
190061847f8eSopenharmony_ci  function on(type: 'p2pStateChange', callback: Callback<number>): void;
190161847f8eSopenharmony_ci
190261847f8eSopenharmony_ci  /**
190361847f8eSopenharmony_ci   * Unsubscribe P2P status change events.
190461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
190561847f8eSopenharmony_ci   * @param { 'p2pStateChange' } type - event name.
190661847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off
190761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
190861847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
190961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
191061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
191161847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
191261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
191361847f8eSopenharmony_ci   * @since 9
191461847f8eSopenharmony_ci   */
191561847f8eSopenharmony_ci  function off(type: 'p2pStateChange', callback?: Callback<number>): void;
191661847f8eSopenharmony_ci
191761847f8eSopenharmony_ci  /**
191861847f8eSopenharmony_ci   * Subscribe P2P connection change events.
191961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
192061847f8eSopenharmony_ci   * @param { 'p2pConnectionChange' } type - event name.
192161847f8eSopenharmony_ci   * @param { Callback<WifiP2pLinkedInfo> } callback - the callback of on
192261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
192361847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
192461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
192561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
192661847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
192761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
192861847f8eSopenharmony_ci   * @since 9
192961847f8eSopenharmony_ci   */
193061847f8eSopenharmony_ci  function on(type: 'p2pConnectionChange', callback: Callback<WifiP2pLinkedInfo>): void;
193161847f8eSopenharmony_ci
193261847f8eSopenharmony_ci  /**
193361847f8eSopenharmony_ci   * Unsubscribe P2P connection change events.
193461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
193561847f8eSopenharmony_ci   * @param { 'p2pConnectionChange' } type - event name.
193661847f8eSopenharmony_ci   * @param { Callback<WifiP2pLinkedInfo> } callback - the callback of off
193761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
193861847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
193961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
194061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
194161847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
194261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
194361847f8eSopenharmony_ci   * @since 9
194461847f8eSopenharmony_ci   */
194561847f8eSopenharmony_ci  function off(type: 'p2pConnectionChange', callback?: Callback<WifiP2pLinkedInfo>): void;
194661847f8eSopenharmony_ci
194761847f8eSopenharmony_ci  /**
194861847f8eSopenharmony_ci   * Subscribe P2P local device change events.
194961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
195061847f8eSopenharmony_ci   * @param { 'p2pDeviceChange' } type - event name.
195161847f8eSopenharmony_ci   * @param { Callback<WifiP2pDevice> } callback - the callback of on
195261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
195361847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
195461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
195561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
195661847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
195761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
195861847f8eSopenharmony_ci   * @since 9
195961847f8eSopenharmony_ci   */
196061847f8eSopenharmony_ci  /**
196161847f8eSopenharmony_ci   * Subscribe P2P local device change events.
196261847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
196361847f8eSopenharmony_ci   * @param { 'p2pDeviceChange' } type - event name.
196461847f8eSopenharmony_ci   * @param { Callback<WifiP2pDevice> } callback - the callback of on
196561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
196661847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
196761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
196861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
196961847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
197061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
197161847f8eSopenharmony_ci   * @since 10
197261847f8eSopenharmony_ci   */
197361847f8eSopenharmony_ci  function on(type: 'p2pDeviceChange', callback: Callback<WifiP2pDevice>): void;
197461847f8eSopenharmony_ci
197561847f8eSopenharmony_ci  /**
197661847f8eSopenharmony_ci   * Unsubscribe P2P local device change events.
197761847f8eSopenharmony_ci   * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
197861847f8eSopenharmony_ci   * @param { 'p2pDeviceChange' } type - event name.
197961847f8eSopenharmony_ci   * @param { Callback<WifiP2pDevice> } callback - the callback of off
198061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
198161847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
198261847f8eSopenharmony_ci   *     2. Incorrect parameter types.
198361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
198461847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
198561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
198661847f8eSopenharmony_ci   * @since 9
198761847f8eSopenharmony_ci   */
198861847f8eSopenharmony_ci  /**
198961847f8eSopenharmony_ci   * Unsubscribe P2P local device change events.
199061847f8eSopenharmony_ci   * @param { 'p2pDeviceChange' } type - event name.
199161847f8eSopenharmony_ci   * @param { Callback<WifiP2pDevice> } callback - the callback of off
199261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
199361847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
199461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
199561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
199661847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
199761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
199861847f8eSopenharmony_ci   * @since 10
199961847f8eSopenharmony_ci   */
200061847f8eSopenharmony_ci  function off(type: 'p2pDeviceChange', callback?: Callback<WifiP2pDevice>): void;
200161847f8eSopenharmony_ci
200261847f8eSopenharmony_ci  /**
200361847f8eSopenharmony_ci   * Subscribe P2P peer device change events.
200461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
200561847f8eSopenharmony_ci   * @param { 'p2pPeerDeviceChange' } type - event name.
200661847f8eSopenharmony_ci   * @param { Callback<WifiP2pDevice[]> } callback - the callback of on
200761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
200861847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
200961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
201061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
201161847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
201261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
201361847f8eSopenharmony_ci   * @since 9
201461847f8eSopenharmony_ci   */
201561847f8eSopenharmony_ci  /**
201661847f8eSopenharmony_ci   * Subscribe P2P peer device change events.
201761847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
201861847f8eSopenharmony_ci   * @param { 'p2pPeerDeviceChange' } type - event name.
201961847f8eSopenharmony_ci   * @param { Callback<WifiP2pDevice[]> } callback - the callback of on
202061847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
202161847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
202261847f8eSopenharmony_ci   *     2. Incorrect parameter types.
202361847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
202461847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
202561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
202661847f8eSopenharmony_ci   * @since 10
202761847f8eSopenharmony_ci   */
202861847f8eSopenharmony_ci  function on(type: 'p2pPeerDeviceChange', callback: Callback<WifiP2pDevice[]>): void;
202961847f8eSopenharmony_ci
203061847f8eSopenharmony_ci  /**
203161847f8eSopenharmony_ci   * Unsubscribe P2P peer device change events.
203261847f8eSopenharmony_ci   * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
203361847f8eSopenharmony_ci   * @param { 'p2pPeerDeviceChange' } type - event name.
203461847f8eSopenharmony_ci   * @param { Callback<WifiP2pDevice[]> } callback - the callback of off
203561847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
203661847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
203761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
203861847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
203961847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
204061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
204161847f8eSopenharmony_ci   * @since 9
204261847f8eSopenharmony_ci   */
204361847f8eSopenharmony_ci  /**
204461847f8eSopenharmony_ci   * Unsubscribe P2P peer device change events.
204561847f8eSopenharmony_ci   * @param { 'p2pPeerDeviceChange' } type - event name.
204661847f8eSopenharmony_ci   * @param { Callback<WifiP2pDevice[]> } callback - the callback of off
204761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
204861847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
204961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
205061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
205161847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
205261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
205361847f8eSopenharmony_ci   * @since 10
205461847f8eSopenharmony_ci   */
205561847f8eSopenharmony_ci  function off(type: 'p2pPeerDeviceChange', callback?: Callback<WifiP2pDevice[]>): void;
205661847f8eSopenharmony_ci
205761847f8eSopenharmony_ci  /**
205861847f8eSopenharmony_ci   * Subscribe P2P persistent group change events.
205961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
206061847f8eSopenharmony_ci   * @param { 'p2pPersistentGroupChange' } type - event name.
206161847f8eSopenharmony_ci   * @param { Callback<void> } callback - the callback of on
206261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
206361847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
206461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
206561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
206661847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
206761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
206861847f8eSopenharmony_ci   * @since 9
206961847f8eSopenharmony_ci   */
207061847f8eSopenharmony_ci  function on(type: 'p2pPersistentGroupChange', callback: Callback<void>): void;
207161847f8eSopenharmony_ci
207261847f8eSopenharmony_ci  /**
207361847f8eSopenharmony_ci   * Unsubscribe P2P persistent group change events.
207461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
207561847f8eSopenharmony_ci   * @param { 'p2pPersistentGroupChange' } type - event name.
207661847f8eSopenharmony_ci   * @param { Callback<void> } callback - the callback of off
207761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
207861847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
207961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
208061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
208161847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
208261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
208361847f8eSopenharmony_ci   * @since 9
208461847f8eSopenharmony_ci   */
208561847f8eSopenharmony_ci  function off(type: 'p2pPersistentGroupChange', callback?: Callback<void>): void;
208661847f8eSopenharmony_ci
208761847f8eSopenharmony_ci  /**
208861847f8eSopenharmony_ci   * Subscribe P2P discovery events.
208961847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
209061847f8eSopenharmony_ci   * @param { 'p2pDiscoveryChange' } type - event name.
209161847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of on
209261847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
209361847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
209461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
209561847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
209661847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
209761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
209861847f8eSopenharmony_ci   * @since 9
209961847f8eSopenharmony_ci   */
210061847f8eSopenharmony_ci  function on(type: 'p2pDiscoveryChange', callback: Callback<number>): void;
210161847f8eSopenharmony_ci
210261847f8eSopenharmony_ci  /**
210361847f8eSopenharmony_ci   * Unsubscribe P2P discovery events.
210461847f8eSopenharmony_ci   * @permission ohos.permission.GET_WIFI_INFO
210561847f8eSopenharmony_ci   * @param { 'p2pDiscoveryChange' } type - event name.
210661847f8eSopenharmony_ci   * @param { Callback<number> } callback - the callback of off
210761847f8eSopenharmony_ci   * @throws {BusinessError} 201 - Permission denied.
210861847f8eSopenharmony_ci   * @throws {BusinessError} 401 - Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
210961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
211061847f8eSopenharmony_ci   * @throws {BusinessError} 801 - Capability not supported.
211161847f8eSopenharmony_ci   * @throws {BusinessError} 2801000 - Operation failed.
211261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
211361847f8eSopenharmony_ci   * @since 9
211461847f8eSopenharmony_ci   */
211561847f8eSopenharmony_ci  function off(type: 'p2pDiscoveryChange', callback?: Callback<number>): void;
211661847f8eSopenharmony_ci
211761847f8eSopenharmony_ci  /**
211861847f8eSopenharmony_ci   * Wi-Fi device address( mac / bssid ) type.
211961847f8eSopenharmony_ci   * @enum { number }
212061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.Core
212161847f8eSopenharmony_ci   * @since 10
212261847f8eSopenharmony_ci   */
212361847f8eSopenharmony_ci
212461847f8eSopenharmony_ci  /**
212561847f8eSopenharmony_ci   * Wi-Fi device address( mac / bssid ) type.
212661847f8eSopenharmony_ci   * @enum { number }
212761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.Core
212861847f8eSopenharmony_ci   * @atomicservice
212961847f8eSopenharmony_ci   * @since 12
213061847f8eSopenharmony_ci   */
213161847f8eSopenharmony_ci  enum DeviceAddressType {
213261847f8eSopenharmony_ci    /**
213361847f8eSopenharmony_ci     * random device address
213461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
213561847f8eSopenharmony_ci     * @since 10
213661847f8eSopenharmony_ci     */
213761847f8eSopenharmony_ci
213861847f8eSopenharmony_ci    /**
213961847f8eSopenharmony_ci     * random device address
214061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
214161847f8eSopenharmony_ci     * @atomicservice
214261847f8eSopenharmony_ci     * @since 12
214361847f8eSopenharmony_ci     */
214461847f8eSopenharmony_ci    RANDOM_DEVICE_ADDRESS,
214561847f8eSopenharmony_ci
214661847f8eSopenharmony_ci    /**
214761847f8eSopenharmony_ci     * real device address
214861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
214961847f8eSopenharmony_ci     * @since 10
215061847f8eSopenharmony_ci     */
215161847f8eSopenharmony_ci
215261847f8eSopenharmony_ci    /**
215361847f8eSopenharmony_ci     * real device address
215461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
215561847f8eSopenharmony_ci     * @atomicservice
215661847f8eSopenharmony_ci     * @since 12
215761847f8eSopenharmony_ci     */
215861847f8eSopenharmony_ci    REAL_DEVICE_ADDRESS,
215961847f8eSopenharmony_ci  }
216061847f8eSopenharmony_ci
216161847f8eSopenharmony_ci  /**
216261847f8eSopenharmony_ci   * Wi-Fi EAP method.
216361847f8eSopenharmony_ci   * @enum { number }
216461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
216561847f8eSopenharmony_ci   * @since 10
216661847f8eSopenharmony_ci   */
216761847f8eSopenharmony_ci  enum EapMethod {
216861847f8eSopenharmony_ci    /**
216961847f8eSopenharmony_ci     * EAP NONE
217061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
217161847f8eSopenharmony_ci     * @since 10
217261847f8eSopenharmony_ci     */
217361847f8eSopenharmony_ci    EAP_NONE,
217461847f8eSopenharmony_ci    /**
217561847f8eSopenharmony_ci     * EAP PEAP
217661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
217761847f8eSopenharmony_ci     * @since 10
217861847f8eSopenharmony_ci     */
217961847f8eSopenharmony_ci    EAP_PEAP,
218061847f8eSopenharmony_ci    /**
218161847f8eSopenharmony_ci     * EAP TLS
218261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
218361847f8eSopenharmony_ci     * @since 10
218461847f8eSopenharmony_ci     */
218561847f8eSopenharmony_ci    EAP_TLS,
218661847f8eSopenharmony_ci    /**
218761847f8eSopenharmony_ci     * EAP TTLS
218861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
218961847f8eSopenharmony_ci     * @since 10
219061847f8eSopenharmony_ci     */
219161847f8eSopenharmony_ci    EAP_TTLS,
219261847f8eSopenharmony_ci    /**
219361847f8eSopenharmony_ci     * EAP PWD
219461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
219561847f8eSopenharmony_ci     * @since 10
219661847f8eSopenharmony_ci     */
219761847f8eSopenharmony_ci    EAP_PWD,
219861847f8eSopenharmony_ci    /**
219961847f8eSopenharmony_ci     * EAP SIM
220061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
220161847f8eSopenharmony_ci     * @since 10
220261847f8eSopenharmony_ci     */
220361847f8eSopenharmony_ci    EAP_SIM,
220461847f8eSopenharmony_ci    /**
220561847f8eSopenharmony_ci     * EAP AKA
220661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
220761847f8eSopenharmony_ci     * @since 10
220861847f8eSopenharmony_ci     */
220961847f8eSopenharmony_ci    EAP_AKA,
221061847f8eSopenharmony_ci    /**
221161847f8eSopenharmony_ci     * EAP AKA PRIME
221261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
221361847f8eSopenharmony_ci     * @since 10
221461847f8eSopenharmony_ci     */
221561847f8eSopenharmony_ci    EAP_AKA_PRIME,
221661847f8eSopenharmony_ci    /**
221761847f8eSopenharmony_ci     * EAP UNAUTH TLS
221861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
221961847f8eSopenharmony_ci     * @since 10
222061847f8eSopenharmony_ci     */
222161847f8eSopenharmony_ci    EAP_UNAUTH_TLS
222261847f8eSopenharmony_ci  }
222361847f8eSopenharmony_ci
222461847f8eSopenharmony_ci  /**
222561847f8eSopenharmony_ci   * Wi-Fi phase 2 method.
222661847f8eSopenharmony_ci   * @enum { number }
222761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
222861847f8eSopenharmony_ci   * @since 10
222961847f8eSopenharmony_ci   */
223061847f8eSopenharmony_ci  enum Phase2Method {
223161847f8eSopenharmony_ci    /**
223261847f8eSopenharmony_ci     * Phase2 NONE
223361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
223461847f8eSopenharmony_ci     * @since 10
223561847f8eSopenharmony_ci     */
223661847f8eSopenharmony_ci    PHASE2_NONE,
223761847f8eSopenharmony_ci    /**
223861847f8eSopenharmony_ci     * Phase2 PAP
223961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
224061847f8eSopenharmony_ci     * @since 10
224161847f8eSopenharmony_ci     */
224261847f8eSopenharmony_ci    PHASE2_PAP,
224361847f8eSopenharmony_ci    /**
224461847f8eSopenharmony_ci     * Phase2 MSCHAP
224561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
224661847f8eSopenharmony_ci     * @since 10
224761847f8eSopenharmony_ci     */
224861847f8eSopenharmony_ci    PHASE2_MSCHAP,
224961847f8eSopenharmony_ci    /**
225061847f8eSopenharmony_ci     * Phase2 MSCHAPV2
225161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
225261847f8eSopenharmony_ci     * @since 10
225361847f8eSopenharmony_ci     */
225461847f8eSopenharmony_ci    PHASE2_MSCHAPV2,
225561847f8eSopenharmony_ci    /**
225661847f8eSopenharmony_ci     * Phase2 GTC
225761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
225861847f8eSopenharmony_ci     * @since 10
225961847f8eSopenharmony_ci     */
226061847f8eSopenharmony_ci    PHASE2_GTC,
226161847f8eSopenharmony_ci    /**
226261847f8eSopenharmony_ci     * Phase2 SIM
226361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
226461847f8eSopenharmony_ci     * @since 10
226561847f8eSopenharmony_ci     */
226661847f8eSopenharmony_ci    PHASE2_SIM,
226761847f8eSopenharmony_ci    /**
226861847f8eSopenharmony_ci     * Phase2 AKA
226961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
227061847f8eSopenharmony_ci     * @since 10
227161847f8eSopenharmony_ci     */
227261847f8eSopenharmony_ci    PHASE2_AKA,
227361847f8eSopenharmony_ci    /**
227461847f8eSopenharmony_ci     * Phase2 AKA+
227561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
227661847f8eSopenharmony_ci     * @since 10
227761847f8eSopenharmony_ci     */
227861847f8eSopenharmony_ci    PHASE2_AKA_PRIME
227961847f8eSopenharmony_ci  }
228061847f8eSopenharmony_ci
228161847f8eSopenharmony_ci  /**
228261847f8eSopenharmony_ci   * Wi-Fi disconnected reason.
228361847f8eSopenharmony_ci   * @enum { number }
228461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
228561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
228661847f8eSopenharmony_ci   * @since 10
228761847f8eSopenharmony_ci   */
228861847f8eSopenharmony_ci  enum DisconnectedReason {
228961847f8eSopenharmony_ci    /**
229061847f8eSopenharmony_ci     * Default reason
229161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
229261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
229361847f8eSopenharmony_ci     * @since 10
229461847f8eSopenharmony_ci     */
229561847f8eSopenharmony_ci    DISC_REASON_DEFAULT = 0,
229661847f8eSopenharmony_ci
229761847f8eSopenharmony_ci    /**
229861847f8eSopenharmony_ci     * Password is wrong
229961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
230061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
230161847f8eSopenharmony_ci     * @since 10
230261847f8eSopenharmony_ci     */
230361847f8eSopenharmony_ci    DISC_REASON_WRONG_PWD = 1,
230461847f8eSopenharmony_ci
230561847f8eSopenharmony_ci    /**
230661847f8eSopenharmony_ci     * The number of router's connection reaches the maximum number limit
230761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
230861847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
230961847f8eSopenharmony_ci     * @since 10
231061847f8eSopenharmony_ci     */
231161847f8eSopenharmony_ci    DISC_REASON_CONNECTION_FULL = 2
231261847f8eSopenharmony_ci  }
231361847f8eSopenharmony_ci
231461847f8eSopenharmony_ci  /**
231561847f8eSopenharmony_ci   * Wi-Fi detail state.
231661847f8eSopenharmony_ci   * @enum { number } WifiDetailState
231761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
231861847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
231961847f8eSopenharmony_ci   * @since 12
232061847f8eSopenharmony_ci   */
232161847f8eSopenharmony_ci  enum WifiDetailState {
232261847f8eSopenharmony_ci    /**
232361847f8eSopenharmony_ci     * state is unknown
232461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
232561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
232661847f8eSopenharmony_ci     * @since 12
232761847f8eSopenharmony_ci     */
232861847f8eSopenharmony_ci    UNKNOWN = -1,
232961847f8eSopenharmony_ci
233061847f8eSopenharmony_ci    /**
233161847f8eSopenharmony_ci     * wifi is closed
233261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
233361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
233461847f8eSopenharmony_ci     * @since 12
233561847f8eSopenharmony_ci     */
233661847f8eSopenharmony_ci    INACTIVE = 0,
233761847f8eSopenharmony_ci
233861847f8eSopenharmony_ci    /**
233961847f8eSopenharmony_ci     * wifi is opened
234061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
234161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
234261847f8eSopenharmony_ci     * @since 12
234361847f8eSopenharmony_ci     */
234461847f8eSopenharmony_ci    ACTIVATED = 1,
234561847f8eSopenharmony_ci
234661847f8eSopenharmony_ci    /**
234761847f8eSopenharmony_ci     * wifi is opening
234861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
234961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
235061847f8eSopenharmony_ci     * @since 12
235161847f8eSopenharmony_ci     */
235261847f8eSopenharmony_ci    ACTIVATING = 2,
235361847f8eSopenharmony_ci
235461847f8eSopenharmony_ci    /**
235561847f8eSopenharmony_ci     * wifi is closing
235661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
235761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
235861847f8eSopenharmony_ci     * @since 12
235961847f8eSopenharmony_ci     */
236061847f8eSopenharmony_ci    DEACTIVATING = 3,
236161847f8eSopenharmony_ci
236261847f8eSopenharmony_ci    /**
236361847f8eSopenharmony_ci     * wifi sta is entering semi active
236461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
236561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
236661847f8eSopenharmony_ci     * @since 12
236761847f8eSopenharmony_ci     */
236861847f8eSopenharmony_ci    SEMI_ACTIVATING = 4,
236961847f8eSopenharmony_ci
237061847f8eSopenharmony_ci    /**
237161847f8eSopenharmony_ci     * wifi sta is semi active
237261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
237361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
237461847f8eSopenharmony_ci     * @since 12
237561847f8eSopenharmony_ci     */
237661847f8eSopenharmony_ci    SEMI_ACTIVE = 5,
237761847f8eSopenharmony_ci  }
237861847f8eSopenharmony_ci
237961847f8eSopenharmony_ci  /**
238061847f8eSopenharmony_ci   * Wi-Fi Proxy method.
238161847f8eSopenharmony_ci   * @enum { number }
238261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
238361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
238461847f8eSopenharmony_ci   * @since 10
238561847f8eSopenharmony_ci   */
238661847f8eSopenharmony_ci  enum ProxyMethod {
238761847f8eSopenharmony_ci    /**
238861847f8eSopenharmony_ci     * No proxy is to be used.
238961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
239061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
239161847f8eSopenharmony_ci     * @since 10
239261847f8eSopenharmony_ci     */
239361847f8eSopenharmony_ci    METHOD_NONE = 0,
239461847f8eSopenharmony_ci
239561847f8eSopenharmony_ci    /**
239661847f8eSopenharmony_ci     * Use auto configured proxy.
239761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
239861847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
239961847f8eSopenharmony_ci     * @since 10
240061847f8eSopenharmony_ci     */
240161847f8eSopenharmony_ci    METHOD_AUTO = 1,
240261847f8eSopenharmony_ci
240361847f8eSopenharmony_ci    /**
240461847f8eSopenharmony_ci     * Use manual configured proxy.
240561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
240661847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
240761847f8eSopenharmony_ci     * @since 10
240861847f8eSopenharmony_ci     */
240961847f8eSopenharmony_ci    METHOD_MANUAL = 2
241061847f8eSopenharmony_ci  }
241161847f8eSopenharmony_ci
241261847f8eSopenharmony_ci  /**
241361847f8eSopenharmony_ci   * Wi-Fi Category.
241461847f8eSopenharmony_ci   * @enum { number }
241561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
241661847f8eSopenharmony_ci   * @since 12
241761847f8eSopenharmony_ci   */
241861847f8eSopenharmony_ci  enum WifiCategory {
241961847f8eSopenharmony_ci    /**
242061847f8eSopenharmony_ci     * Default.
242161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
242261847f8eSopenharmony_ci     * @since 12
242361847f8eSopenharmony_ci     */
242461847f8eSopenharmony_ci    DEFAULT = 1,
242561847f8eSopenharmony_ci
242661847f8eSopenharmony_ci    /**
242761847f8eSopenharmony_ci     * Wifi6.
242861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
242961847f8eSopenharmony_ci     * @since 12
243061847f8eSopenharmony_ci     */
243161847f8eSopenharmony_ci    WIFI6 = 2,
243261847f8eSopenharmony_ci
243361847f8eSopenharmony_ci    /**
243461847f8eSopenharmony_ci     * Wifi6+.
243561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
243661847f8eSopenharmony_ci     * @since 12
243761847f8eSopenharmony_ci     */
243861847f8eSopenharmony_ci    WIFI6_PLUS = 3
243961847f8eSopenharmony_ci  }
244061847f8eSopenharmony_ci
244161847f8eSopenharmony_ci  /**
244261847f8eSopenharmony_ci   * Wi-Fi Proxy config.
244361847f8eSopenharmony_ci   * @typedef WifiProxyConfig
244461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
244561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
244661847f8eSopenharmony_ci   * @since 10
244761847f8eSopenharmony_ci   */
244861847f8eSopenharmony_ci  interface WifiProxyConfig {
244961847f8eSopenharmony_ci    /** 
245061847f8eSopenharmony_ci     * Wi-Fi proxy method 
245161847f8eSopenharmony_ci     * @type { ?ProxyMethod }
245261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
245361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
245461847f8eSopenharmony_ci     * @since 10
245561847f8eSopenharmony_ci     */
245661847f8eSopenharmony_ci    proxyMethod?: ProxyMethod;
245761847f8eSopenharmony_ci
245861847f8eSopenharmony_ci    /** 
245961847f8eSopenharmony_ci     * PAC web address for auto configured proxy.
246061847f8eSopenharmony_ci     * @type { ?string }
246161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
246261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
246361847f8eSopenharmony_ci     * @since 10
246461847f8eSopenharmony_ci     */
246561847f8eSopenharmony_ci    pacWebAddress?: string;
246661847f8eSopenharmony_ci
246761847f8eSopenharmony_ci    /** 
246861847f8eSopenharmony_ci     * Server host name for manual configured proxy. 
246961847f8eSopenharmony_ci     * @type { ?string }
247061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
247161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
247261847f8eSopenharmony_ci     * @since 10
247361847f8eSopenharmony_ci     */
247461847f8eSopenharmony_ci    serverHostName?: string;
247561847f8eSopenharmony_ci
247661847f8eSopenharmony_ci    /** 
247761847f8eSopenharmony_ci     * Server port for manual configured proxy. 
247861847f8eSopenharmony_ci     * @type { ?number }
247961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
248061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
248161847f8eSopenharmony_ci     * @since 10
248261847f8eSopenharmony_ci     */
248361847f8eSopenharmony_ci    serverPort?: number;
248461847f8eSopenharmony_ci
248561847f8eSopenharmony_ci    /** 
248661847f8eSopenharmony_ci     * Exclusion objects for manual configured proxy. objects are separated by ','.
248761847f8eSopenharmony_ci     * @type { ?string }
248861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
248961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
249061847f8eSopenharmony_ci     * @since 10
249161847f8eSopenharmony_ci     */
249261847f8eSopenharmony_ci    exclusionObjects?: string;
249361847f8eSopenharmony_ci  }
249461847f8eSopenharmony_ci
249561847f8eSopenharmony_ci  /**
249661847f8eSopenharmony_ci   * Wi-Fi EAP config.
249761847f8eSopenharmony_ci   * @typedef WifiEapConfig
249861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
249961847f8eSopenharmony_ci   * @since 10
250061847f8eSopenharmony_ci   */
250161847f8eSopenharmony_ci  interface WifiEapConfig {
250261847f8eSopenharmony_ci    /** 
250361847f8eSopenharmony_ci     * EAP authentication method 
250461847f8eSopenharmony_ci     * @type { EapMethod }
250561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
250661847f8eSopenharmony_ci     * @since 10
250761847f8eSopenharmony_ci     */
250861847f8eSopenharmony_ci    eapMethod: EapMethod;
250961847f8eSopenharmony_ci
251061847f8eSopenharmony_ci    /** 
251161847f8eSopenharmony_ci     * Phase 2 authentication method
251261847f8eSopenharmony_ci     * @type { Phase2Method }
251361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
251461847f8eSopenharmony_ci     * @since 10
251561847f8eSopenharmony_ci     */
251661847f8eSopenharmony_ci    phase2Method: Phase2Method;
251761847f8eSopenharmony_ci
251861847f8eSopenharmony_ci    /** 
251961847f8eSopenharmony_ci     * The identity
252061847f8eSopenharmony_ci     * @type { string }
252161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
252261847f8eSopenharmony_ci     * @since 10
252361847f8eSopenharmony_ci     */
252461847f8eSopenharmony_ci    identity: string;
252561847f8eSopenharmony_ci
252661847f8eSopenharmony_ci    /** 
252761847f8eSopenharmony_ci     * Anonymous identity
252861847f8eSopenharmony_ci     * @type { string }
252961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
253061847f8eSopenharmony_ci     * @since 10
253161847f8eSopenharmony_ci     */
253261847f8eSopenharmony_ci    anonymousIdentity: string;
253361847f8eSopenharmony_ci
253461847f8eSopenharmony_ci    /** 
253561847f8eSopenharmony_ci     * Password
253661847f8eSopenharmony_ci     * @type { string }
253761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
253861847f8eSopenharmony_ci     * @since 10
253961847f8eSopenharmony_ci     */
254061847f8eSopenharmony_ci    password: string;
254161847f8eSopenharmony_ci
254261847f8eSopenharmony_ci    /** 
254361847f8eSopenharmony_ci     * CA certificate alias
254461847f8eSopenharmony_ci     * @type { string }
254561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
254661847f8eSopenharmony_ci     * @since 10
254761847f8eSopenharmony_ci     */
254861847f8eSopenharmony_ci    caCertAlias: string;
254961847f8eSopenharmony_ci
255061847f8eSopenharmony_ci    /** 
255161847f8eSopenharmony_ci     * CA certificate path
255261847f8eSopenharmony_ci     * @type { string }
255361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
255461847f8eSopenharmony_ci     * @since 10
255561847f8eSopenharmony_ci     */
255661847f8eSopenharmony_ci    caPath: string;
255761847f8eSopenharmony_ci
255861847f8eSopenharmony_ci    /** 
255961847f8eSopenharmony_ci     * Client certificate alias
256061847f8eSopenharmony_ci     * @type { string }
256161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
256261847f8eSopenharmony_ci     * @since 10
256361847f8eSopenharmony_ci     */
256461847f8eSopenharmony_ci    clientCertAlias: string;
256561847f8eSopenharmony_ci
256661847f8eSopenharmony_ci    /** 
256761847f8eSopenharmony_ci     * content of user's certificate
256861847f8eSopenharmony_ci     * @type { Uint8Array }
256961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
257061847f8eSopenharmony_ci     * @since 10
257161847f8eSopenharmony_ci     */
257261847f8eSopenharmony_ci    certEntry: Uint8Array;
257361847f8eSopenharmony_ci
257461847f8eSopenharmony_ci    /** 
257561847f8eSopenharmony_ci     * Password of user's certificate
257661847f8eSopenharmony_ci     * @type { string }
257761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
257861847f8eSopenharmony_ci     * @since 10
257961847f8eSopenharmony_ci     */
258061847f8eSopenharmony_ci    certPassword: string;
258161847f8eSopenharmony_ci
258261847f8eSopenharmony_ci    /** 
258361847f8eSopenharmony_ci     * Alternate subject match
258461847f8eSopenharmony_ci     * @type { string }
258561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
258661847f8eSopenharmony_ci     * @since 10
258761847f8eSopenharmony_ci     */
258861847f8eSopenharmony_ci    altSubjectMatch: string;
258961847f8eSopenharmony_ci
259061847f8eSopenharmony_ci    /** 
259161847f8eSopenharmony_ci     * Domain suffix match
259261847f8eSopenharmony_ci     * @type { string }
259361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
259461847f8eSopenharmony_ci     * @since 10
259561847f8eSopenharmony_ci     */
259661847f8eSopenharmony_ci    domainSuffixMatch: string;
259761847f8eSopenharmony_ci
259861847f8eSopenharmony_ci    /** 
259961847f8eSopenharmony_ci     * Realm for Passpoint credential
260061847f8eSopenharmony_ci     * @type { string }
260161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
260261847f8eSopenharmony_ci     * @since 10
260361847f8eSopenharmony_ci     */
260461847f8eSopenharmony_ci    realm: string;
260561847f8eSopenharmony_ci
260661847f8eSopenharmony_ci    /** 
260761847f8eSopenharmony_ci     * Public Land Mobile Network of the provider of Passpoint credential
260861847f8eSopenharmony_ci     * @type { string }
260961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
261061847f8eSopenharmony_ci     * @since 10
261161847f8eSopenharmony_ci     */
261261847f8eSopenharmony_ci    plmn: string;
261361847f8eSopenharmony_ci
261461847f8eSopenharmony_ci    /** 
261561847f8eSopenharmony_ci     * Sub ID of the SIM card
261661847f8eSopenharmony_ci     * @type { number }
261761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
261861847f8eSopenharmony_ci     * @since 10
261961847f8eSopenharmony_ci     */
262061847f8eSopenharmony_ci    eapSubId: number;
262161847f8eSopenharmony_ci  }
262261847f8eSopenharmony_ci
262361847f8eSopenharmony_ci  /**
262461847f8eSopenharmony_ci   * Wi-Fi device configuration information.
262561847f8eSopenharmony_ci   * @typedef WifiDeviceConfig
262661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
262761847f8eSopenharmony_ci   * @since 9
262861847f8eSopenharmony_ci   */
262961847f8eSopenharmony_ci
263061847f8eSopenharmony_ci  /**
263161847f8eSopenharmony_ci   * Wi-Fi device configuration information.
263261847f8eSopenharmony_ci   * @typedef WifiDeviceConfig
263361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
263461847f8eSopenharmony_ci   * @atomicservice
263561847f8eSopenharmony_ci   * @since 12
263661847f8eSopenharmony_ci   */
263761847f8eSopenharmony_ci  interface WifiDeviceConfig {
263861847f8eSopenharmony_ci    /** 
263961847f8eSopenharmony_ci     * Wi-Fi SSID: the maximum length is 32.
264061847f8eSopenharmony_ci     * @type { string }
264161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
264261847f8eSopenharmony_ci     * @since 9
264361847f8eSopenharmony_ci     */
264461847f8eSopenharmony_ci    /**
264561847f8eSopenharmony_ci     * Wi-Fi SSID: the maximum length is 32.
264661847f8eSopenharmony_ci     * @type { string }
264761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
264861847f8eSopenharmony_ci     * @atomicservice
264961847f8eSopenharmony_ci     * @since 12
265061847f8eSopenharmony_ci     */
265161847f8eSopenharmony_ci    ssid: string;
265261847f8eSopenharmony_ci
265361847f8eSopenharmony_ci    /**
265461847f8eSopenharmony_ci     * Wi-Fi bssid(MAC): the length is 6.
265561847f8eSopenharmony_ci     * @type { ?string }
265661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
265761847f8eSopenharmony_ci     * @since 9
265861847f8eSopenharmony_ci     */
265961847f8eSopenharmony_ci    /**
266061847f8eSopenharmony_ci     * Wi-Fi bssid(MAC): the length is 6.
266161847f8eSopenharmony_ci     * @type { ?string }
266261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
266361847f8eSopenharmony_ci     * @atomicservice
266461847f8eSopenharmony_ci     * @since 12
266561847f8eSopenharmony_ci     */
266661847f8eSopenharmony_ci    bssid?: string;
266761847f8eSopenharmony_ci
266861847f8eSopenharmony_ci    /**
266961847f8eSopenharmony_ci     * Wi-Fi bssid type.
267061847f8eSopenharmony_ci     * @type { ?DeviceAddressType }
267161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
267261847f8eSopenharmony_ci     * @since 10
267361847f8eSopenharmony_ci     */
267461847f8eSopenharmony_ci    /**
267561847f8eSopenharmony_ci     * Wi-Fi bssid type.
267661847f8eSopenharmony_ci     * @type { ?DeviceAddressType }
267761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
267861847f8eSopenharmony_ci     * @atomicservice
267961847f8eSopenharmony_ci     * @since 12
268061847f8eSopenharmony_ci     */
268161847f8eSopenharmony_ci    bssidType?: DeviceAddressType;
268261847f8eSopenharmony_ci
268361847f8eSopenharmony_ci    /**
268461847f8eSopenharmony_ci     * Wi-Fi key: maximum length is 64.
268561847f8eSopenharmony_ci     * @type { string }
268661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
268761847f8eSopenharmony_ci     * @since 9
268861847f8eSopenharmony_ci     */
268961847f8eSopenharmony_ci    /**
269061847f8eSopenharmony_ci     * Wi-Fi key: maximum length is 64.
269161847f8eSopenharmony_ci     * @type { string }
269261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
269361847f8eSopenharmony_ci     * @atomicservice
269461847f8eSopenharmony_ci     * @since 12
269561847f8eSopenharmony_ci     */
269661847f8eSopenharmony_ci    preSharedKey: string;
269761847f8eSopenharmony_ci
269861847f8eSopenharmony_ci    /**
269961847f8eSopenharmony_ci     * Hide SSID or not, false(default): not hide
270061847f8eSopenharmony_ci     * @type { ?boolean }
270161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
270261847f8eSopenharmony_ci     * @since 9
270361847f8eSopenharmony_ci     */
270461847f8eSopenharmony_ci    isHiddenSsid?: boolean;
270561847f8eSopenharmony_ci
270661847f8eSopenharmony_ci    /**
270761847f8eSopenharmony_ci     * Security type: reference definition of WifiSecurityType
270861847f8eSopenharmony_ci     * @type { WifiSecurityType }
270961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
271061847f8eSopenharmony_ci     * @since 9
271161847f8eSopenharmony_ci     */
271261847f8eSopenharmony_ci
271361847f8eSopenharmony_ci	/**
271461847f8eSopenharmony_ci     * Security type: reference definition of WifiSecurityType
271561847f8eSopenharmony_ci     * @type { WifiSecurityType }
271661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
271761847f8eSopenharmony_ci     * @atomicservice
271861847f8eSopenharmony_ci     * @since 12
271961847f8eSopenharmony_ci     */
272061847f8eSopenharmony_ci    securityType: WifiSecurityType;
272161847f8eSopenharmony_ci
272261847f8eSopenharmony_ci    /**
272361847f8eSopenharmony_ci     * The UID of the Wi-Fi configuration creator.
272461847f8eSopenharmony_ci     * @type { ?number }
272561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
272661847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
272761847f8eSopenharmony_ci     * @since 9
272861847f8eSopenharmony_ci     */
272961847f8eSopenharmony_ci    creatorUid?: number;
273061847f8eSopenharmony_ci
273161847f8eSopenharmony_ci    /**
273261847f8eSopenharmony_ci     * Disable reason
273361847f8eSopenharmony_ci     * @type { ?number }
273461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
273561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
273661847f8eSopenharmony_ci     * @since 9
273761847f8eSopenharmony_ci     */
273861847f8eSopenharmony_ci    disableReason?: number;
273961847f8eSopenharmony_ci
274061847f8eSopenharmony_ci    /**
274161847f8eSopenharmony_ci     * Allocated networkId
274261847f8eSopenharmony_ci     * @type { ?number }
274361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
274461847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
274561847f8eSopenharmony_ci     * @since 9
274661847f8eSopenharmony_ci     */
274761847f8eSopenharmony_ci    netId?: number;
274861847f8eSopenharmony_ci
274961847f8eSopenharmony_ci    /**
275061847f8eSopenharmony_ci     * Random mac type
275161847f8eSopenharmony_ci     * @type { ?number }
275261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
275361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
275461847f8eSopenharmony_ci     * @since 9
275561847f8eSopenharmony_ci     */
275661847f8eSopenharmony_ci    randomMacType?: number;
275761847f8eSopenharmony_ci
275861847f8eSopenharmony_ci    /**
275961847f8eSopenharmony_ci     * Random mac address, the length is 6.
276061847f8eSopenharmony_ci     * @type { ?string }
276161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
276261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
276361847f8eSopenharmony_ci     * @since 9
276461847f8eSopenharmony_ci     */
276561847f8eSopenharmony_ci    randomMacAddr?: string;
276661847f8eSopenharmony_ci
276761847f8eSopenharmony_ci    /**
276861847f8eSopenharmony_ci     * IP Type
276961847f8eSopenharmony_ci     * @type { ?IpType }
277061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
277161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
277261847f8eSopenharmony_ci     * @since 9
277361847f8eSopenharmony_ci     */
277461847f8eSopenharmony_ci    ipType?: IpType;
277561847f8eSopenharmony_ci
277661847f8eSopenharmony_ci    /**
277761847f8eSopenharmony_ci     * IP config of static
277861847f8eSopenharmony_ci     * @type { ?IpConfig }
277961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
278061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
278161847f8eSopenharmony_ci     * @since 9
278261847f8eSopenharmony_ci     */
278361847f8eSopenharmony_ci    staticIp?: IpConfig;
278461847f8eSopenharmony_ci
278561847f8eSopenharmony_ci    /**
278661847f8eSopenharmony_ci     * EAP config info.
278761847f8eSopenharmony_ci     * @type { ?WifiEapConfig }
278861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
278961847f8eSopenharmony_ci     * @since 10
279061847f8eSopenharmony_ci     */
279161847f8eSopenharmony_ci    eapConfig?: WifiEapConfig;
279261847f8eSopenharmony_ci
279361847f8eSopenharmony_ci    /**
279461847f8eSopenharmony_ci     * Proxy config.
279561847f8eSopenharmony_ci     * @type { ?WifiProxyConfig }
279661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
279761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
279861847f8eSopenharmony_ci     * @since 10
279961847f8eSopenharmony_ci     */
280061847f8eSopenharmony_ci    proxyConfig?: WifiProxyConfig;
280161847f8eSopenharmony_ci
280261847f8eSopenharmony_ci    /**
280361847f8eSopenharmony_ci     * WAPI config info.
280461847f8eSopenharmony_ci     * @type { ?WifiWapiConfig }
280561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
280661847f8eSopenharmony_ci     * @since 12
280761847f8eSopenharmony_ci     */
280861847f8eSopenharmony_ci    wapiConfig?: WifiWapiConfig;
280961847f8eSopenharmony_ci
281061847f8eSopenharmony_ci    /**
281161847f8eSopenharmony_ci     * Device config status: 0 - enabled, 1 - disabled, 2 - permanent disabled, 3 - unknown.
281261847f8eSopenharmony_ci     * @type { ?number }
281361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
281461847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
281561847f8eSopenharmony_ci     * @since 12
281661847f8eSopenharmony_ci     */
281761847f8eSopenharmony_ci    configStatus?: number;
281861847f8eSopenharmony_ci  }
281961847f8eSopenharmony_ci
282061847f8eSopenharmony_ci  /**
282161847f8eSopenharmony_ci   * Wi-Fi WAPI config.
282261847f8eSopenharmony_ci   * @typedef WifiWapiConfig
282361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
282461847f8eSopenharmony_ci   * @since 12
282561847f8eSopenharmony_ci   */
282661847f8eSopenharmony_ci  interface WifiWapiConfig {
282761847f8eSopenharmony_ci    /**
282861847f8eSopenharmony_ci     * WAPI pre-shared key type.
282961847f8eSopenharmony_ci     * @type { WapiPskType }
283061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
283161847f8eSopenharmony_ci     * @since 12
283261847f8eSopenharmony_ci     */
283361847f8eSopenharmony_ci    wapiPskType: WapiPskType;
283461847f8eSopenharmony_ci
283561847f8eSopenharmony_ci    /**
283661847f8eSopenharmony_ci     * WAPI AS certification.
283761847f8eSopenharmony_ci     * @type { string }
283861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
283961847f8eSopenharmony_ci     * @since 12
284061847f8eSopenharmony_ci     */
284161847f8eSopenharmony_ci    wapiAsCert: string;
284261847f8eSopenharmony_ci
284361847f8eSopenharmony_ci    /**
284461847f8eSopenharmony_ci     * WAPI user certification.
284561847f8eSopenharmony_ci     * @type { string }
284661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
284761847f8eSopenharmony_ci     * @since 12
284861847f8eSopenharmony_ci     */
284961847f8eSopenharmony_ci    wapiUserCert: string;
285061847f8eSopenharmony_ci  }
285161847f8eSopenharmony_ci
285261847f8eSopenharmony_ci  /**
285361847f8eSopenharmony_ci   * Wi-Fi IP configuration information.
285461847f8eSopenharmony_ci   * @typedef IpConfig
285561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
285661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
285761847f8eSopenharmony_ci   * @since 9
285861847f8eSopenharmony_ci   */
285961847f8eSopenharmony_ci  interface IpConfig {
286061847f8eSopenharmony_ci    /**
286161847f8eSopenharmony_ci     * IP address.
286261847f8eSopenharmony_ci     * @type { number }
286361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
286461847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
286561847f8eSopenharmony_ci     * @since 9
286661847f8eSopenharmony_ci     */
286761847f8eSopenharmony_ci    ipAddress: number;
286861847f8eSopenharmony_ci
286961847f8eSopenharmony_ci    /**
287061847f8eSopenharmony_ci     * Gate way.
287161847f8eSopenharmony_ci     * @type { number }
287261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
287361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
287461847f8eSopenharmony_ci     * @since 9
287561847f8eSopenharmony_ci     */
287661847f8eSopenharmony_ci    gateway: number;
287761847f8eSopenharmony_ci
287861847f8eSopenharmony_ci    /**
287961847f8eSopenharmony_ci     * Prefix length.
288061847f8eSopenharmony_ci     * @type { number }
288161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
288261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
288361847f8eSopenharmony_ci     * @since 9
288461847f8eSopenharmony_ci     */
288561847f8eSopenharmony_ci    prefixLength: number;
288661847f8eSopenharmony_ci
288761847f8eSopenharmony_ci    /**
288861847f8eSopenharmony_ci     * DNS servers.
288961847f8eSopenharmony_ci     * @type { number[] }
289061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
289161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
289261847f8eSopenharmony_ci     * @since 9
289361847f8eSopenharmony_ci     */
289461847f8eSopenharmony_ci    dnsServers: number[];
289561847f8eSopenharmony_ci
289661847f8eSopenharmony_ci    /**
289761847f8eSopenharmony_ci     * Domains.
289861847f8eSopenharmony_ci     * @type { Array<string> }
289961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
290061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
290161847f8eSopenharmony_ci     * @since 9
290261847f8eSopenharmony_ci     */
290361847f8eSopenharmony_ci    domains: Array<string>;
290461847f8eSopenharmony_ci  }
290561847f8eSopenharmony_ci
290661847f8eSopenharmony_ci  /**
290761847f8eSopenharmony_ci   * Wi-Fi information elements.
290861847f8eSopenharmony_ci   * @typedef WifiInfoElem
290961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
291061847f8eSopenharmony_ci   * @since 9
291161847f8eSopenharmony_ci   */
291261847f8eSopenharmony_ci  interface WifiInfoElem {
291361847f8eSopenharmony_ci    /**
291461847f8eSopenharmony_ci     * Element id
291561847f8eSopenharmony_ci     * @type { number }
291661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
291761847f8eSopenharmony_ci     * @since 9
291861847f8eSopenharmony_ci     */
291961847f8eSopenharmony_ci    eid: number;
292061847f8eSopenharmony_ci
292161847f8eSopenharmony_ci    /**
292261847f8eSopenharmony_ci     * Element content
292361847f8eSopenharmony_ci     * @type { Uint8Array }
292461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
292561847f8eSopenharmony_ci     * @since 9
292661847f8eSopenharmony_ci     */
292761847f8eSopenharmony_ci    content: Uint8Array;
292861847f8eSopenharmony_ci  }
292961847f8eSopenharmony_ci
293061847f8eSopenharmony_ci  /**
293161847f8eSopenharmony_ci   * Describes the wifi channel width.
293261847f8eSopenharmony_ci   * @enum { number }
293361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
293461847f8eSopenharmony_ci   * @since 9
293561847f8eSopenharmony_ci   */
293661847f8eSopenharmony_ci  enum WifiChannelWidth {
293761847f8eSopenharmony_ci    /**
293861847f8eSopenharmony_ci     * 20MHz.
293961847f8eSopenharmony_ci     *
294061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
294161847f8eSopenharmony_ci     * @since 9
294261847f8eSopenharmony_ci     */
294361847f8eSopenharmony_ci    WIDTH_20MHZ = 0,
294461847f8eSopenharmony_ci
294561847f8eSopenharmony_ci    /**
294661847f8eSopenharmony_ci     * 40MHz.
294761847f8eSopenharmony_ci     *
294861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
294961847f8eSopenharmony_ci     * @since 9
295061847f8eSopenharmony_ci     */
295161847f8eSopenharmony_ci    WIDTH_40MHZ = 1,
295261847f8eSopenharmony_ci
295361847f8eSopenharmony_ci    /**
295461847f8eSopenharmony_ci     * 80MHz.
295561847f8eSopenharmony_ci     *
295661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
295761847f8eSopenharmony_ci     * @since 9
295861847f8eSopenharmony_ci     */
295961847f8eSopenharmony_ci    WIDTH_80MHZ = 2,
296061847f8eSopenharmony_ci
296161847f8eSopenharmony_ci    /**
296261847f8eSopenharmony_ci     * 160MHz.
296361847f8eSopenharmony_ci     *
296461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
296561847f8eSopenharmony_ci     * @since 9
296661847f8eSopenharmony_ci     */
296761847f8eSopenharmony_ci    WIDTH_160MHZ = 3,
296861847f8eSopenharmony_ci
296961847f8eSopenharmony_ci    /**
297061847f8eSopenharmony_ci     * 80MHz plus.
297161847f8eSopenharmony_ci     *
297261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
297361847f8eSopenharmony_ci     * @since 9
297461847f8eSopenharmony_ci     */
297561847f8eSopenharmony_ci    WIDTH_80MHZ_PLUS = 4,
297661847f8eSopenharmony_ci
297761847f8eSopenharmony_ci    /**
297861847f8eSopenharmony_ci     * Invalid.
297961847f8eSopenharmony_ci     *
298061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
298161847f8eSopenharmony_ci     * @since 9
298261847f8eSopenharmony_ci     */
298361847f8eSopenharmony_ci    WIDTH_INVALID
298461847f8eSopenharmony_ci  }
298561847f8eSopenharmony_ci
298661847f8eSopenharmony_ci  /**
298761847f8eSopenharmony_ci   * Describes the scanned Wi-Fi information.
298861847f8eSopenharmony_ci   * @typedef WifiScanInfo
298961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
299061847f8eSopenharmony_ci   * @since 9
299161847f8eSopenharmony_ci   */
299261847f8eSopenharmony_ci  /**
299361847f8eSopenharmony_ci   * Describes the scanned Wi-Fi information.
299461847f8eSopenharmony_ci   * @typedef WifiScanInfo
299561847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
299661847f8eSopenharmony_ci   * @atomicservice
299761847f8eSopenharmony_ci   * @since 12
299861847f8eSopenharmony_ci   */
299961847f8eSopenharmony_ci  interface WifiScanInfo {
300061847f8eSopenharmony_ci    /**
300161847f8eSopenharmony_ci     * Wi-Fi SSID: the maximum length is 32 
300261847f8eSopenharmony_ci     * @type { string }
300361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
300461847f8eSopenharmony_ci     * @since 9
300561847f8eSopenharmony_ci     */
300661847f8eSopenharmony_ci    /**
300761847f8eSopenharmony_ci     * Wi-Fi SSID: the maximum length is 32 
300861847f8eSopenharmony_ci     * @type { string }
300961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
301061847f8eSopenharmony_ci     * @atomicservice
301161847f8eSopenharmony_ci     * @since 12
301261847f8eSopenharmony_ci     */
301361847f8eSopenharmony_ci    ssid: string;
301461847f8eSopenharmony_ci
301561847f8eSopenharmony_ci    /**
301661847f8eSopenharmony_ci     * Wi-Fi bssid(MAC): the length is 6
301761847f8eSopenharmony_ci     * @type { string }
301861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
301961847f8eSopenharmony_ci     * @since 9
302061847f8eSopenharmony_ci     */
302161847f8eSopenharmony_ci    /**
302261847f8eSopenharmony_ci     * Wi-Fi bssid(MAC): the length is 6
302361847f8eSopenharmony_ci     * @type { string }
302461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
302561847f8eSopenharmony_ci     * @atomicservice
302661847f8eSopenharmony_ci     * @since 12
302761847f8eSopenharmony_ci     */
302861847f8eSopenharmony_ci    bssid: string;
302961847f8eSopenharmony_ci
303061847f8eSopenharmony_ci    /**
303161847f8eSopenharmony_ci     * Wi-Fi bssid type
303261847f8eSopenharmony_ci     * @type { DeviceAddressType }
303361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
303461847f8eSopenharmony_ci     * @since 10
303561847f8eSopenharmony_ci     */
303661847f8eSopenharmony_ci    /**
303761847f8eSopenharmony_ci     * Wi-Fi bssid type
303861847f8eSopenharmony_ci     * @type { DeviceAddressType }
303961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
304061847f8eSopenharmony_ci     * @atomicservice
304161847f8eSopenharmony_ci     * @since 12
304261847f8eSopenharmony_ci     */
304361847f8eSopenharmony_ci    bssidType: DeviceAddressType;
304461847f8eSopenharmony_ci
304561847f8eSopenharmony_ci    /**
304661847f8eSopenharmony_ci     * Hotspot capability
304761847f8eSopenharmony_ci     * @type { string }
304861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
304961847f8eSopenharmony_ci     * @since 9
305061847f8eSopenharmony_ci     */
305161847f8eSopenharmony_ci    capabilities: string;
305261847f8eSopenharmony_ci
305361847f8eSopenharmony_ci    /**
305461847f8eSopenharmony_ci     * Security type: reference definition of WifiSecurityType
305561847f8eSopenharmony_ci     * @type { WifiSecurityType }
305661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
305761847f8eSopenharmony_ci     * @since 9
305861847f8eSopenharmony_ci     */
305961847f8eSopenharmony_ci    /**
306061847f8eSopenharmony_ci     * Security type: reference definition of WifiSecurityType
306161847f8eSopenharmony_ci     * @type { WifiSecurityType }
306261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
306361847f8eSopenharmony_ci     * @atomicservice
306461847f8eSopenharmony_ci     * @since 12
306561847f8eSopenharmony_ci     */
306661847f8eSopenharmony_ci    securityType: WifiSecurityType;
306761847f8eSopenharmony_ci
306861847f8eSopenharmony_ci    /**
306961847f8eSopenharmony_ci     * Received signal strength indicator (RSSI)
307061847f8eSopenharmony_ci     * @type { number }
307161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
307261847f8eSopenharmony_ci     * @since 9
307361847f8eSopenharmony_ci     */
307461847f8eSopenharmony_ci    /**
307561847f8eSopenharmony_ci     * Received signal strength indicator (RSSI)
307661847f8eSopenharmony_ci     * @type { number }
307761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
307861847f8eSopenharmony_ci     * @atomicservice
307961847f8eSopenharmony_ci     * @since 12
308061847f8eSopenharmony_ci     */
308161847f8eSopenharmony_ci    rssi: number;
308261847f8eSopenharmony_ci
308361847f8eSopenharmony_ci    /**
308461847f8eSopenharmony_ci     * Frequency band, 1: 2.4G, 2: 5G
308561847f8eSopenharmony_ci     * @type { number }
308661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
308761847f8eSopenharmony_ci     * @since 9
308861847f8eSopenharmony_ci     */
308961847f8eSopenharmony_ci    band: number;
309061847f8eSopenharmony_ci
309161847f8eSopenharmony_ci    /**
309261847f8eSopenharmony_ci     * Frequency
309361847f8eSopenharmony_ci     * @type { number }
309461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
309561847f8eSopenharmony_ci     * @since 9
309661847f8eSopenharmony_ci     */
309761847f8eSopenharmony_ci    /**
309861847f8eSopenharmony_ci     * Frequency
309961847f8eSopenharmony_ci     * @type { number }
310061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
310161847f8eSopenharmony_ci     * @atomicservice
310261847f8eSopenharmony_ci     * @since 12
310361847f8eSopenharmony_ci     */
310461847f8eSopenharmony_ci    frequency: number;
310561847f8eSopenharmony_ci
310661847f8eSopenharmony_ci    /**
310761847f8eSopenharmony_ci     * Channel width
310861847f8eSopenharmony_ci     * @type { number }
310961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
311061847f8eSopenharmony_ci     * @since 9
311161847f8eSopenharmony_ci     */
311261847f8eSopenharmony_ci    channelWidth: number;
311361847f8eSopenharmony_ci
311461847f8eSopenharmony_ci    /**
311561847f8eSopenharmony_ci     * Center frequency 0.
311661847f8eSopenharmony_ci     * @type { number }
311761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
311861847f8eSopenharmony_ci     * @since 9
311961847f8eSopenharmony_ci     */
312061847f8eSopenharmony_ci    centerFrequency0: number;
312161847f8eSopenharmony_ci
312261847f8eSopenharmony_ci    /**
312361847f8eSopenharmony_ci     * Center frequency 1.
312461847f8eSopenharmony_ci     * @type { number }
312561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
312661847f8eSopenharmony_ci     * @since 9
312761847f8eSopenharmony_ci     */
312861847f8eSopenharmony_ci    centerFrequency1: number;
312961847f8eSopenharmony_ci
313061847f8eSopenharmony_ci    /**
313161847f8eSopenharmony_ci     * Information elements.
313261847f8eSopenharmony_ci     * @type { Array<WifiInfoElem> }
313361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
313461847f8eSopenharmony_ci     * @since 9
313561847f8eSopenharmony_ci     */
313661847f8eSopenharmony_ci    infoElems: Array<WifiInfoElem>;
313761847f8eSopenharmony_ci
313861847f8eSopenharmony_ci    /**
313961847f8eSopenharmony_ci     * Time stamp
314061847f8eSopenharmony_ci     * @type { number }
314161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
314261847f8eSopenharmony_ci     * @since 9
314361847f8eSopenharmony_ci     */
314461847f8eSopenharmony_ci    timestamp: number;
314561847f8eSopenharmony_ci
314661847f8eSopenharmony_ci    /**
314761847f8eSopenharmony_ci     * Supported wifi category
314861847f8eSopenharmony_ci     * @type { WifiCategory }
314961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
315061847f8eSopenharmony_ci     * @since 12
315161847f8eSopenharmony_ci     */
315261847f8eSopenharmony_ci    supportedWifiCategory: WifiCategory;
315361847f8eSopenharmony_ci
315461847f8eSopenharmony_ci    /**
315561847f8eSopenharmony_ci     * Whether the Wi-Fi hotspot is HiLink network.
315661847f8eSopenharmony_ci     * @type { boolean }
315761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
315861847f8eSopenharmony_ci     * @since 12
315961847f8eSopenharmony_ci     */
316061847f8eSopenharmony_ci    isHiLinkNetwork: boolean;
316161847f8eSopenharmony_ci  }
316261847f8eSopenharmony_ci
316361847f8eSopenharmony_ci  /**
316461847f8eSopenharmony_ci   * Describes the wifi security type.
316561847f8eSopenharmony_ci   * @enum { number }
316661847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.Core
316761847f8eSopenharmony_ci   * @since 9
316861847f8eSopenharmony_ci   */
316961847f8eSopenharmony_ci  /**
317061847f8eSopenharmony_ci   * Describes the wifi security type.
317161847f8eSopenharmony_ci   * @enum { number }
317261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.Core
317361847f8eSopenharmony_ci   * @atomicservice
317461847f8eSopenharmony_ci   * @since 12
317561847f8eSopenharmony_ci   */
317661847f8eSopenharmony_ci  enum WifiSecurityType {
317761847f8eSopenharmony_ci    /**
317861847f8eSopenharmony_ci     * Invalid security type
317961847f8eSopenharmony_ci     *
318061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
318161847f8eSopenharmony_ci     * @since 9
318261847f8eSopenharmony_ci     */
318361847f8eSopenharmony_ci    WIFI_SEC_TYPE_INVALID = 0,
318461847f8eSopenharmony_ci
318561847f8eSopenharmony_ci    /**
318661847f8eSopenharmony_ci     * Open
318761847f8eSopenharmony_ci     *
318861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
318961847f8eSopenharmony_ci     * @since 9
319061847f8eSopenharmony_ci     */
319161847f8eSopenharmony_ci    /**
319261847f8eSopenharmony_ci     * Open
319361847f8eSopenharmony_ci     *
319461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
319561847f8eSopenharmony_ci     * @atomicservice
319661847f8eSopenharmony_ci     * @since 12
319761847f8eSopenharmony_ci     */
319861847f8eSopenharmony_ci    WIFI_SEC_TYPE_OPEN = 1,
319961847f8eSopenharmony_ci
320061847f8eSopenharmony_ci    /** 
320161847f8eSopenharmony_ci     * Wired Equivalent Privacy (WEP)
320261847f8eSopenharmony_ci     *
320361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
320461847f8eSopenharmony_ci     * @since 9
320561847f8eSopenharmony_ci     */
320661847f8eSopenharmony_ci    WIFI_SEC_TYPE_WEP = 2,
320761847f8eSopenharmony_ci
320861847f8eSopenharmony_ci    /**
320961847f8eSopenharmony_ci     * Pre-shared key (PSK)
321061847f8eSopenharmony_ci     *
321161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
321261847f8eSopenharmony_ci     * @since 9
321361847f8eSopenharmony_ci     */
321461847f8eSopenharmony_ci    WIFI_SEC_TYPE_PSK = 3,
321561847f8eSopenharmony_ci
321661847f8eSopenharmony_ci    /**
321761847f8eSopenharmony_ci     * Simultaneous Authentication of Equals (SAE)
321861847f8eSopenharmony_ci     *
321961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
322061847f8eSopenharmony_ci     * @since 9
322161847f8eSopenharmony_ci     */
322261847f8eSopenharmony_ci    WIFI_SEC_TYPE_SAE = 4,
322361847f8eSopenharmony_ci
322461847f8eSopenharmony_ci    /**
322561847f8eSopenharmony_ci     * EAP authentication.
322661847f8eSopenharmony_ci     *
322761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
322861847f8eSopenharmony_ci     * @since 9
322961847f8eSopenharmony_ci     */
323061847f8eSopenharmony_ci    WIFI_SEC_TYPE_EAP = 5,
323161847f8eSopenharmony_ci
323261847f8eSopenharmony_ci    /**
323361847f8eSopenharmony_ci     * SUITE_B_192 192 bit level.
323461847f8eSopenharmony_ci     *
323561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
323661847f8eSopenharmony_ci     * @since 9
323761847f8eSopenharmony_ci     */
323861847f8eSopenharmony_ci    WIFI_SEC_TYPE_EAP_SUITE_B = 6,
323961847f8eSopenharmony_ci
324061847f8eSopenharmony_ci    /**
324161847f8eSopenharmony_ci     * Opportunistic Wireless Encryption.
324261847f8eSopenharmony_ci     *
324361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
324461847f8eSopenharmony_ci     * @since 9
324561847f8eSopenharmony_ci     */
324661847f8eSopenharmony_ci    WIFI_SEC_TYPE_OWE = 7,
324761847f8eSopenharmony_ci
324861847f8eSopenharmony_ci    /**
324961847f8eSopenharmony_ci     * WAPI certificate to be specified.
325061847f8eSopenharmony_ci     *
325161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
325261847f8eSopenharmony_ci     * @since 9
325361847f8eSopenharmony_ci     */
325461847f8eSopenharmony_ci    WIFI_SEC_TYPE_WAPI_CERT = 8,
325561847f8eSopenharmony_ci
325661847f8eSopenharmony_ci    /**
325761847f8eSopenharmony_ci     * WAPI pre-shared key to be specified.
325861847f8eSopenharmony_ci     *
325961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
326061847f8eSopenharmony_ci     * @since 9
326161847f8eSopenharmony_ci     */
326261847f8eSopenharmony_ci    WIFI_SEC_TYPE_WAPI_PSK = 9
326361847f8eSopenharmony_ci  }
326461847f8eSopenharmony_ci
326561847f8eSopenharmony_ci  /**
326661847f8eSopenharmony_ci   * Describes the WAPI pre-shared key Type.
326761847f8eSopenharmony_ci   * @enum { number }
326861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.Core
326961847f8eSopenharmony_ci   * @since 12
327061847f8eSopenharmony_ci   */
327161847f8eSopenharmony_ci  enum WapiPskType {
327261847f8eSopenharmony_ci    /**
327361847f8eSopenharmony_ci     * ASCII character type of WAPI pre-shared key.
327461847f8eSopenharmony_ci     *
327561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
327661847f8eSopenharmony_ci     * @since 12
327761847f8eSopenharmony_ci     */
327861847f8eSopenharmony_ci    WAPI_PSK_ASCII = 0,
327961847f8eSopenharmony_ci
328061847f8eSopenharmony_ci    /**
328161847f8eSopenharmony_ci     * HEX character type of WAPI pre-shared key.
328261847f8eSopenharmony_ci     *
328361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.Core
328461847f8eSopenharmony_ci     * @since 12
328561847f8eSopenharmony_ci     */
328661847f8eSopenharmony_ci    WAPI_PSK_HEX = 1
328761847f8eSopenharmony_ci  }
328861847f8eSopenharmony_ci
328961847f8eSopenharmony_ci  /**
329061847f8eSopenharmony_ci   * Wi-Fi band type.
329161847f8eSopenharmony_ci   * @enum { number }
329261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
329361847f8eSopenharmony_ci   * @since 10
329461847f8eSopenharmony_ci   */
329561847f8eSopenharmony_ci  enum WifiBandType {
329661847f8eSopenharmony_ci    /**
329761847f8eSopenharmony_ci     * Default.
329861847f8eSopenharmony_ci     *
329961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
330061847f8eSopenharmony_ci     * @since 10
330161847f8eSopenharmony_ci     */
330261847f8eSopenharmony_ci    WIFI_BAND_NONE,
330361847f8eSopenharmony_ci
330461847f8eSopenharmony_ci    /**
330561847f8eSopenharmony_ci     * Band 2.4G.
330661847f8eSopenharmony_ci     *
330761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
330861847f8eSopenharmony_ci     * @since 10
330961847f8eSopenharmony_ci     */
331061847f8eSopenharmony_ci    WIFI_BAND_2G,
331161847f8eSopenharmony_ci
331261847f8eSopenharmony_ci    /**
331361847f8eSopenharmony_ci     * Band 5G.
331461847f8eSopenharmony_ci     *
331561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
331661847f8eSopenharmony_ci     * @since 10
331761847f8eSopenharmony_ci     */
331861847f8eSopenharmony_ci    WIFI_BAND_5G,
331961847f8eSopenharmony_ci
332061847f8eSopenharmony_ci    /**
332161847f8eSopenharmony_ci     * Band 6G.
332261847f8eSopenharmony_ci     *
332361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
332461847f8eSopenharmony_ci     * @since 10
332561847f8eSopenharmony_ci     */
332661847f8eSopenharmony_ci    WIFI_BAND_6G,
332761847f8eSopenharmony_ci
332861847f8eSopenharmony_ci    /**
332961847f8eSopenharmony_ci     * Band 60G.
333061847f8eSopenharmony_ci     *
333161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
333261847f8eSopenharmony_ci     * @since 10
333361847f8eSopenharmony_ci     */
333461847f8eSopenharmony_ci    WIFI_BAND_60G
333561847f8eSopenharmony_ci  }
333661847f8eSopenharmony_ci
333761847f8eSopenharmony_ci  /**
333861847f8eSopenharmony_ci   * Wi-Fi standard.
333961847f8eSopenharmony_ci   * @enum { number }
334061847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
334161847f8eSopenharmony_ci   * @since 10
334261847f8eSopenharmony_ci   */
334361847f8eSopenharmony_ci  enum WifiStandard {
334461847f8eSopenharmony_ci    /**
334561847f8eSopenharmony_ci     * Undefined
334661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
334761847f8eSopenharmony_ci     * @since 10
334861847f8eSopenharmony_ci     */
334961847f8eSopenharmony_ci    WIFI_STANDARD_UNDEFINED,
335061847f8eSopenharmony_ci
335161847f8eSopenharmony_ci    /**
335261847f8eSopenharmony_ci     * Wifi 802.11a
335361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
335461847f8eSopenharmony_ci     * @since 10
335561847f8eSopenharmony_ci     */
335661847f8eSopenharmony_ci    WIFI_STANDARD_11A,
335761847f8eSopenharmony_ci
335861847f8eSopenharmony_ci    /**
335961847f8eSopenharmony_ci     * Wifi 802.11b
336061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
336161847f8eSopenharmony_ci     * @since 10
336261847f8eSopenharmony_ci     */
336361847f8eSopenharmony_ci    WIFI_STANDARD_11B,
336461847f8eSopenharmony_ci
336561847f8eSopenharmony_ci    /**
336661847f8eSopenharmony_ci     * Wifi 802.11g
336761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
336861847f8eSopenharmony_ci     * @since 10
336961847f8eSopenharmony_ci     */
337061847f8eSopenharmony_ci    WIFI_STANDARD_11G,
337161847f8eSopenharmony_ci
337261847f8eSopenharmony_ci    /**
337361847f8eSopenharmony_ci     * Wifi 802.11n
337461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
337561847f8eSopenharmony_ci     * @since 10
337661847f8eSopenharmony_ci     */
337761847f8eSopenharmony_ci    WIFI_STANDARD_11N,
337861847f8eSopenharmony_ci
337961847f8eSopenharmony_ci    /**
338061847f8eSopenharmony_ci     * Wifi 802.11ac
338161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
338261847f8eSopenharmony_ci     * @since 10
338361847f8eSopenharmony_ci     */
338461847f8eSopenharmony_ci    WIFI_STANDARD_11AC,
338561847f8eSopenharmony_ci
338661847f8eSopenharmony_ci    /**
338761847f8eSopenharmony_ci     * Wifi 802.11ax
338861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
338961847f8eSopenharmony_ci     * @since 10
339061847f8eSopenharmony_ci     */
339161847f8eSopenharmony_ci    WIFI_STANDARD_11AX,
339261847f8eSopenharmony_ci
339361847f8eSopenharmony_ci    /**
339461847f8eSopenharmony_ci     * Wifi 802.11ad
339561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
339661847f8eSopenharmony_ci     * @since 10
339761847f8eSopenharmony_ci     */
339861847f8eSopenharmony_ci    WIFI_STANDARD_11AD
339961847f8eSopenharmony_ci  }
340061847f8eSopenharmony_ci
340161847f8eSopenharmony_ci  /**
340261847f8eSopenharmony_ci   * Wi-Fi connection information.
340361847f8eSopenharmony_ci   * @typedef WifiLinkedInfo
340461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
340561847f8eSopenharmony_ci   * @since 9
340661847f8eSopenharmony_ci   */
340761847f8eSopenharmony_ci
340861847f8eSopenharmony_ci  /**
340961847f8eSopenharmony_ci   * Wi-Fi connection information.
341061847f8eSopenharmony_ci   * @typedef WifiLinkedInfo
341161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
341261847f8eSopenharmony_ci   * @atomicservice
341361847f8eSopenharmony_ci   * @since 12
341461847f8eSopenharmony_ci   */
341561847f8eSopenharmony_ci   
341661847f8eSopenharmony_ci  interface WifiLinkedInfo {
341761847f8eSopenharmony_ci    /**
341861847f8eSopenharmony_ci     * The SSID of the Wi-Fi hotspot
341961847f8eSopenharmony_ci     * @type { string }
342061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
342161847f8eSopenharmony_ci     * @since 9
342261847f8eSopenharmony_ci     */
342361847f8eSopenharmony_ci    /**
342461847f8eSopenharmony_ci     * The SSID of the Wi-Fi hotspot
342561847f8eSopenharmony_ci     * @type { string }
342661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
342761847f8eSopenharmony_ci     * @atomicservice
342861847f8eSopenharmony_ci     * @since 12
342961847f8eSopenharmony_ci     */
343061847f8eSopenharmony_ci    ssid: string;
343161847f8eSopenharmony_ci
343261847f8eSopenharmony_ci    /**
343361847f8eSopenharmony_ci     * The BSSID of the Wi-Fi hotspot
343461847f8eSopenharmony_ci     * @type { string }
343561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
343661847f8eSopenharmony_ci     * @since 9
343761847f8eSopenharmony_ci     */
343861847f8eSopenharmony_ci    /**
343961847f8eSopenharmony_ci     * The BSSID of the Wi-Fi hotspot
344061847f8eSopenharmony_ci     * @type { string }
344161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
344261847f8eSopenharmony_ci     * @atomicservice
344361847f8eSopenharmony_ci     * @since 12
344461847f8eSopenharmony_ci     */
344561847f8eSopenharmony_ci    bssid: string;
344661847f8eSopenharmony_ci
344761847f8eSopenharmony_ci    /**
344861847f8eSopenharmony_ci     * The ID(uniquely identifies) of a Wi-Fi connection.
344961847f8eSopenharmony_ci     * @type { number }
345061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
345161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
345261847f8eSopenharmony_ci     * @since 9
345361847f8eSopenharmony_ci     */
345461847f8eSopenharmony_ci    networkId: number;
345561847f8eSopenharmony_ci
345661847f8eSopenharmony_ci    /**
345761847f8eSopenharmony_ci     * The RSSI(dBm) of a Wi-Fi access point.
345861847f8eSopenharmony_ci     * @type { number }
345961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
346061847f8eSopenharmony_ci     * @since 9
346161847f8eSopenharmony_ci     */
346261847f8eSopenharmony_ci    /**
346361847f8eSopenharmony_ci     * The RSSI(dBm) of a Wi-Fi access point.
346461847f8eSopenharmony_ci     * @type { number }
346561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
346661847f8eSopenharmony_ci     * @atomicservice
346761847f8eSopenharmony_ci     * @since 12
346861847f8eSopenharmony_ci     */
346961847f8eSopenharmony_ci    rssi: number;
347061847f8eSopenharmony_ci
347161847f8eSopenharmony_ci    /**
347261847f8eSopenharmony_ci     * The frequency band of a Wi-Fi access point.
347361847f8eSopenharmony_ci     * @type { number }
347461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
347561847f8eSopenharmony_ci     * @since 9
347661847f8eSopenharmony_ci     */
347761847f8eSopenharmony_ci    band: number;
347861847f8eSopenharmony_ci
347961847f8eSopenharmony_ci    /**
348061847f8eSopenharmony_ci     * The speed of a Wi-Fi access point.
348161847f8eSopenharmony_ci     * @type { number }
348261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
348361847f8eSopenharmony_ci     * @since 9
348461847f8eSopenharmony_ci     */
348561847f8eSopenharmony_ci    linkSpeed: number;
348661847f8eSopenharmony_ci
348761847f8eSopenharmony_ci    /**
348861847f8eSopenharmony_ci     * The rx speed of a Wi-Fi access point.
348961847f8eSopenharmony_ci     * @type { number }
349061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
349161847f8eSopenharmony_ci     * @since 10
349261847f8eSopenharmony_ci     */
349361847f8eSopenharmony_ci    rxLinkSpeed: number;
349461847f8eSopenharmony_ci
349561847f8eSopenharmony_ci    /**
349661847f8eSopenharmony_ci     * Max tx speed of a Wi-Fi access point.
349761847f8eSopenharmony_ci     * @type { number }
349861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
349961847f8eSopenharmony_ci     * @since 10
350061847f8eSopenharmony_ci     */
350161847f8eSopenharmony_ci    maxSupportedTxLinkSpeed: number;
350261847f8eSopenharmony_ci
350361847f8eSopenharmony_ci    /**
350461847f8eSopenharmony_ci     * Max rx speed of a Wi-Fi access point.
350561847f8eSopenharmony_ci     * @type { number }
350661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
350761847f8eSopenharmony_ci     * @since 10
350861847f8eSopenharmony_ci     */
350961847f8eSopenharmony_ci    maxSupportedRxLinkSpeed: number;
351061847f8eSopenharmony_ci
351161847f8eSopenharmony_ci    /**
351261847f8eSopenharmony_ci     * The frequency of a Wi-Fi access point.
351361847f8eSopenharmony_ci     * @type { number }
351461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
351561847f8eSopenharmony_ci     * @since 9
351661847f8eSopenharmony_ci     */
351761847f8eSopenharmony_ci    /**
351861847f8eSopenharmony_ci     * The frequency of a Wi-Fi access point.
351961847f8eSopenharmony_ci     * @type { number }
352061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
352161847f8eSopenharmony_ci     * @atomicservice
352261847f8eSopenharmony_ci     * @since 12
352361847f8eSopenharmony_ci     */
352461847f8eSopenharmony_ci    frequency: number;
352561847f8eSopenharmony_ci
352661847f8eSopenharmony_ci    /**
352761847f8eSopenharmony_ci     * Whether the SSID of the access point (AP) of this Wi-Fi connection is hidden.
352861847f8eSopenharmony_ci     * @type { boolean }
352961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
353061847f8eSopenharmony_ci     * @since 9
353161847f8eSopenharmony_ci     */
353261847f8eSopenharmony_ci    isHidden: boolean;
353361847f8eSopenharmony_ci
353461847f8eSopenharmony_ci    /**
353561847f8eSopenharmony_ci     * Whether this Wi-Fi connection restricts the data volume.
353661847f8eSopenharmony_ci     * @type { boolean }
353761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
353861847f8eSopenharmony_ci     * @since 9
353961847f8eSopenharmony_ci     */
354061847f8eSopenharmony_ci    isRestricted: boolean;
354161847f8eSopenharmony_ci
354261847f8eSopenharmony_ci    /**
354361847f8eSopenharmony_ci     * The load value of this Wi-Fi connection. A greater value indicates a higher load.
354461847f8eSopenharmony_ci     * @type { number }
354561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
354661847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
354761847f8eSopenharmony_ci     * @since 9
354861847f8eSopenharmony_ci     */
354961847f8eSopenharmony_ci    chload: number;
355061847f8eSopenharmony_ci
355161847f8eSopenharmony_ci    /**
355261847f8eSopenharmony_ci     * The signal-to-noise ratio (SNR) of this Wi-Fi connection.
355361847f8eSopenharmony_ci     * @type { number }
355461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
355561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
355661847f8eSopenharmony_ci     * @since 9
355761847f8eSopenharmony_ci     */
355861847f8eSopenharmony_ci    snr: number;
355961847f8eSopenharmony_ci
356061847f8eSopenharmony_ci    /**
356161847f8eSopenharmony_ci     * Type of macAddress: 0 - real mac, 1 - random mac.
356261847f8eSopenharmony_ci     * @type { number }
356361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
356461847f8eSopenharmony_ci     * @since 9
356561847f8eSopenharmony_ci     */
356661847f8eSopenharmony_ci    macType: number;
356761847f8eSopenharmony_ci
356861847f8eSopenharmony_ci    /**
356961847f8eSopenharmony_ci     * The Wi-Fi MAC address of a device. 
357061847f8eSopenharmony_ci     * @type { string }
357161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
357261847f8eSopenharmony_ci     * @since 9
357361847f8eSopenharmony_ci     */
357461847f8eSopenharmony_ci    macAddress: string;
357561847f8eSopenharmony_ci
357661847f8eSopenharmony_ci    /**
357761847f8eSopenharmony_ci     * The IP address of this Wi-Fi connection. 
357861847f8eSopenharmony_ci     * @type { number }
357961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
358061847f8eSopenharmony_ci     * @since 9
358161847f8eSopenharmony_ci     */
358261847f8eSopenharmony_ci    ipAddress: number;
358361847f8eSopenharmony_ci
358461847f8eSopenharmony_ci    /**
358561847f8eSopenharmony_ci     * The state of the supplicant of this Wi-Fi connection. 
358661847f8eSopenharmony_ci     * @type { SuppState }
358761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
358861847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
358961847f8eSopenharmony_ci     * @since 9
359061847f8eSopenharmony_ci     */
359161847f8eSopenharmony_ci    suppState: SuppState;
359261847f8eSopenharmony_ci
359361847f8eSopenharmony_ci    /**
359461847f8eSopenharmony_ci     * The state of this Wi-Fi connection. 
359561847f8eSopenharmony_ci     * @type { ConnState }
359661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
359761847f8eSopenharmony_ci     * @since 9
359861847f8eSopenharmony_ci     */
359961847f8eSopenharmony_ci    connState: ConnState;
360061847f8eSopenharmony_ci
360161847f8eSopenharmony_ci    /**
360261847f8eSopenharmony_ci     * Channel width of the connected hotspot. 
360361847f8eSopenharmony_ci     * @type { WifiChannelWidth }
360461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
360561847f8eSopenharmony_ci     * @since 10
360661847f8eSopenharmony_ci     */
360761847f8eSopenharmony_ci    channelWidth: WifiChannelWidth;
360861847f8eSopenharmony_ci
360961847f8eSopenharmony_ci    /**
361061847f8eSopenharmony_ci     * Wifi standard of current connection. 
361161847f8eSopenharmony_ci     * @type { WifiStandard }
361261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
361361847f8eSopenharmony_ci     * @since 10
361461847f8eSopenharmony_ci     */
361561847f8eSopenharmony_ci    wifiStandard: WifiStandard;
361661847f8eSopenharmony_ci
361761847f8eSopenharmony_ci    /**
361861847f8eSopenharmony_ci     * Supported wifi category
361961847f8eSopenharmony_ci     * @type { WifiCategory }
362061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
362161847f8eSopenharmony_ci     * @since 12
362261847f8eSopenharmony_ci     */
362361847f8eSopenharmony_ci    supportedWifiCategory: WifiCategory;
362461847f8eSopenharmony_ci
362561847f8eSopenharmony_ci    /**
362661847f8eSopenharmony_ci     * Whether the Wi-Fi hotspot is HiLink network.
362761847f8eSopenharmony_ci     * @type { boolean }
362861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
362961847f8eSopenharmony_ci     * @since 12
363061847f8eSopenharmony_ci     */
363161847f8eSopenharmony_ci    isHiLinkNetwork: boolean;
363261847f8eSopenharmony_ci  }
363361847f8eSopenharmony_ci
363461847f8eSopenharmony_ci  /**
363561847f8eSopenharmony_ci   * Wi-Fi IP information.
363661847f8eSopenharmony_ci   * @typedef IpInfo
363761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
363861847f8eSopenharmony_ci   * @since 9
363961847f8eSopenharmony_ci   */
364061847f8eSopenharmony_ci  interface IpInfo {
364161847f8eSopenharmony_ci    /**
364261847f8eSopenharmony_ci     * The IP address of the Wi-Fi connection
364361847f8eSopenharmony_ci     * @type { number }
364461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
364561847f8eSopenharmony_ci     * @since 9
364661847f8eSopenharmony_ci     */
364761847f8eSopenharmony_ci    ipAddress: number;
364861847f8eSopenharmony_ci
364961847f8eSopenharmony_ci    /**
365061847f8eSopenharmony_ci     * The gateway of the Wi-Fi connection
365161847f8eSopenharmony_ci     * @type { number }
365261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
365361847f8eSopenharmony_ci     * @since 9
365461847f8eSopenharmony_ci     */
365561847f8eSopenharmony_ci    gateway: number;
365661847f8eSopenharmony_ci
365761847f8eSopenharmony_ci    /**
365861847f8eSopenharmony_ci     * The network mask of the Wi-Fi connection
365961847f8eSopenharmony_ci     * @type { number }
366061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
366161847f8eSopenharmony_ci     * @since 9
366261847f8eSopenharmony_ci     */
366361847f8eSopenharmony_ci    netmask: number;
366461847f8eSopenharmony_ci
366561847f8eSopenharmony_ci    /**
366661847f8eSopenharmony_ci     * The primary DNS server IP address of the Wi-Fi connection
366761847f8eSopenharmony_ci     * @type { number }
366861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
366961847f8eSopenharmony_ci     * @since 9
367061847f8eSopenharmony_ci     */
367161847f8eSopenharmony_ci    primaryDns: number;
367261847f8eSopenharmony_ci
367361847f8eSopenharmony_ci    /**
367461847f8eSopenharmony_ci     * The secondary DNS server IP address of the Wi-Fi connection
367561847f8eSopenharmony_ci     * @type { number }
367661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
367761847f8eSopenharmony_ci     * @since 9
367861847f8eSopenharmony_ci     */
367961847f8eSopenharmony_ci    secondDns: number;
368061847f8eSopenharmony_ci
368161847f8eSopenharmony_ci    /**
368261847f8eSopenharmony_ci     * The DHCP server IP address of the Wi-Fi connection
368361847f8eSopenharmony_ci     * @type { number }
368461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
368561847f8eSopenharmony_ci     * @since 9
368661847f8eSopenharmony_ci     */
368761847f8eSopenharmony_ci    serverIp: number;
368861847f8eSopenharmony_ci
368961847f8eSopenharmony_ci    /**
369061847f8eSopenharmony_ci     * The IP address lease duration of the Wi-Fi connection
369161847f8eSopenharmony_ci     * @type { number }
369261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
369361847f8eSopenharmony_ci     * @since 9
369461847f8eSopenharmony_ci     */
369561847f8eSopenharmony_ci    leaseDuration: number;
369661847f8eSopenharmony_ci  }
369761847f8eSopenharmony_ci
369861847f8eSopenharmony_ci  /**
369961847f8eSopenharmony_ci   * Wi-Fi IPv6 information.
370061847f8eSopenharmony_ci   * @typedef Ipv6Info
370161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
370261847f8eSopenharmony_ci   * @since 10
370361847f8eSopenharmony_ci   */
370461847f8eSopenharmony_ci  interface Ipv6Info {
370561847f8eSopenharmony_ci    /**
370661847f8eSopenharmony_ci     * The link IPv6 address of the Wi-Fi connection
370761847f8eSopenharmony_ci     * @type { string }
370861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
370961847f8eSopenharmony_ci     * @since 10
371061847f8eSopenharmony_ci     */
371161847f8eSopenharmony_ci    linkIpv6Address: string;
371261847f8eSopenharmony_ci
371361847f8eSopenharmony_ci    /**
371461847f8eSopenharmony_ci     * The global IPv6 address of the Wi-Fi connection
371561847f8eSopenharmony_ci     * @type { string }
371661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
371761847f8eSopenharmony_ci     * @since 10
371861847f8eSopenharmony_ci     */
371961847f8eSopenharmony_ci    globalIpv6Address: string;
372061847f8eSopenharmony_ci
372161847f8eSopenharmony_ci    /**
372261847f8eSopenharmony_ci     * The rand Global IPv6 address of the Wi-Fi connection
372361847f8eSopenharmony_ci     * @type { string }
372461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
372561847f8eSopenharmony_ci     * @since 10
372661847f8eSopenharmony_ci     */
372761847f8eSopenharmony_ci    randomGlobalIpv6Address: string;
372861847f8eSopenharmony_ci
372961847f8eSopenharmony_ci    /**
373061847f8eSopenharmony_ci     * The unique IPv6 address of the Wi-Fi connection
373161847f8eSopenharmony_ci     * @type { ?string }
373261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
373361847f8eSopenharmony_ci     * @since 12
373461847f8eSopenharmony_ci     */
373561847f8eSopenharmony_ci    uniqueIpv6Address?: string;
373661847f8eSopenharmony_ci
373761847f8eSopenharmony_ci    /**
373861847f8eSopenharmony_ci     * The rand unique IPv6 address of the Wi-Fi connection
373961847f8eSopenharmony_ci     * @type { ?string }
374061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
374161847f8eSopenharmony_ci     * @since 12
374261847f8eSopenharmony_ci     */
374361847f8eSopenharmony_ci    randomUniqueIpv6Address?: string;
374461847f8eSopenharmony_ci
374561847f8eSopenharmony_ci    /**
374661847f8eSopenharmony_ci     * The gateway of the Wi-Fi connection
374761847f8eSopenharmony_ci     * @type { string }
374861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
374961847f8eSopenharmony_ci     * @since 10
375061847f8eSopenharmony_ci     */
375161847f8eSopenharmony_ci    gateway: string;
375261847f8eSopenharmony_ci
375361847f8eSopenharmony_ci    /**
375461847f8eSopenharmony_ci     * The network mask of the Wi-Fi connection
375561847f8eSopenharmony_ci     * @type { string }
375661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
375761847f8eSopenharmony_ci     * @since 10
375861847f8eSopenharmony_ci     */
375961847f8eSopenharmony_ci    netmask: string;
376061847f8eSopenharmony_ci
376161847f8eSopenharmony_ci    /**
376261847f8eSopenharmony_ci     * The primary DNS server IPV6 address of the Wi-Fi connection
376361847f8eSopenharmony_ci     * @type { string }
376461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
376561847f8eSopenharmony_ci     * @since 10
376661847f8eSopenharmony_ci     */
376761847f8eSopenharmony_ci    primaryDNS: string;
376861847f8eSopenharmony_ci
376961847f8eSopenharmony_ci    /**
377061847f8eSopenharmony_ci     * The secondary DNS server IPV6 address of the Wi-Fi connection
377161847f8eSopenharmony_ci     * @type { string }
377261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
377361847f8eSopenharmony_ci     * @since 10
377461847f8eSopenharmony_ci     */
377561847f8eSopenharmony_ci    secondDNS: string;
377661847f8eSopenharmony_ci  }
377761847f8eSopenharmony_ci
377861847f8eSopenharmony_ci  /**
377961847f8eSopenharmony_ci   * Wi-Fi hotspot configuration information.
378061847f8eSopenharmony_ci   * @typedef HotspotConfig
378161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
378261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
378361847f8eSopenharmony_ci   * @since 9
378461847f8eSopenharmony_ci   */
378561847f8eSopenharmony_ci  interface HotspotConfig {
378661847f8eSopenharmony_ci    /**
378761847f8eSopenharmony_ci     * The SSID of the Wi-Fi hotspot
378861847f8eSopenharmony_ci     * @type { string }
378961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.AP.Core
379061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
379161847f8eSopenharmony_ci     * @since 9
379261847f8eSopenharmony_ci     */
379361847f8eSopenharmony_ci    ssid: string;
379461847f8eSopenharmony_ci
379561847f8eSopenharmony_ci    /**
379661847f8eSopenharmony_ci     * The encryption mode of the Wi-Fi hotspot
379761847f8eSopenharmony_ci     * @type { WifiSecurityType }
379861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.AP.Core
379961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
380061847f8eSopenharmony_ci     * @since 9
380161847f8eSopenharmony_ci     */
380261847f8eSopenharmony_ci    securityType: WifiSecurityType;
380361847f8eSopenharmony_ci
380461847f8eSopenharmony_ci    /**
380561847f8eSopenharmony_ci     * The frequency band of the Wi-Fi hotspot
380661847f8eSopenharmony_ci     * @type { number }
380761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.AP.Core
380861847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
380961847f8eSopenharmony_ci     * @since 9
381061847f8eSopenharmony_ci     */
381161847f8eSopenharmony_ci    band: number;
381261847f8eSopenharmony_ci
381361847f8eSopenharmony_ci    /**
381461847f8eSopenharmony_ci     * The channel of the Wi-Fi hotspot.
381561847f8eSopenharmony_ci     * @type { ?number }
381661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.AP.Core
381761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
381861847f8eSopenharmony_ci     * @since 10
381961847f8eSopenharmony_ci     */
382061847f8eSopenharmony_ci    channel?: number;
382161847f8eSopenharmony_ci
382261847f8eSopenharmony_ci    /**
382361847f8eSopenharmony_ci     * The password of the Wi-Fi hotspot
382461847f8eSopenharmony_ci     * @type { string }
382561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.AP.Core
382661847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
382761847f8eSopenharmony_ci     * @since 9
382861847f8eSopenharmony_ci     */
382961847f8eSopenharmony_ci    preSharedKey: string;
383061847f8eSopenharmony_ci
383161847f8eSopenharmony_ci    /**
383261847f8eSopenharmony_ci     * The maximum number of connections allowed by the Wi-Fi hotspot
383361847f8eSopenharmony_ci     * @type { number }
383461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.AP.Core
383561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
383661847f8eSopenharmony_ci     * @since 9
383761847f8eSopenharmony_ci     */
383861847f8eSopenharmony_ci    maxConn: number;
383961847f8eSopenharmony_ci
384061847f8eSopenharmony_ci    /**
384161847f8eSopenharmony_ci     * IP address of the dhcp server, it's a string, For example 192.168.43.1
384261847f8eSopenharmony_ci     * @type { ?string }
384361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.AP.Core
384461847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
384561847f8eSopenharmony_ci     * @since 10
384661847f8eSopenharmony_ci     */
384761847f8eSopenharmony_ci    ipAddress?: string;
384861847f8eSopenharmony_ci  }
384961847f8eSopenharmony_ci
385061847f8eSopenharmony_ci  /**
385161847f8eSopenharmony_ci   * Wi-Fi station information.
385261847f8eSopenharmony_ci   * @typedef StationInfo
385361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.AP.Core
385461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
385561847f8eSopenharmony_ci   * @since 9
385661847f8eSopenharmony_ci   */
385761847f8eSopenharmony_ci  interface StationInfo {
385861847f8eSopenharmony_ci    /**
385961847f8eSopenharmony_ci     * The network name of the Wi-Fi client
386061847f8eSopenharmony_ci     * @type { string }
386161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.AP.Core
386261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
386361847f8eSopenharmony_ci     * @since 9
386461847f8eSopenharmony_ci     */
386561847f8eSopenharmony_ci    name: string;
386661847f8eSopenharmony_ci
386761847f8eSopenharmony_ci    /**
386861847f8eSopenharmony_ci     * The MAC address of the Wi-Fi client
386961847f8eSopenharmony_ci     * @type { string }
387061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.AP.Core
387161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
387261847f8eSopenharmony_ci     * @since 9
387361847f8eSopenharmony_ci     */
387461847f8eSopenharmony_ci    macAddress: string;
387561847f8eSopenharmony_ci
387661847f8eSopenharmony_ci    /**
387761847f8eSopenharmony_ci     * The MAC address type of the Wi-Fi client
387861847f8eSopenharmony_ci     * @type { ?DeviceAddressType }
387961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.AP.Core
388061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
388161847f8eSopenharmony_ci     * @since 10
388261847f8eSopenharmony_ci     */
388361847f8eSopenharmony_ci    macAddressType?: DeviceAddressType;
388461847f8eSopenharmony_ci
388561847f8eSopenharmony_ci    /**
388661847f8eSopenharmony_ci     * The IP address of the Wi-Fi client
388761847f8eSopenharmony_ci     * @type { string }
388861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.AP.Core
388961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
389061847f8eSopenharmony_ci     * @since 9
389161847f8eSopenharmony_ci     */
389261847f8eSopenharmony_ci    ipAddress: string;
389361847f8eSopenharmony_ci  }
389461847f8eSopenharmony_ci
389561847f8eSopenharmony_ci  /**
389661847f8eSopenharmony_ci   * Wi-Fi IP type enumeration.
389761847f8eSopenharmony_ci   *
389861847f8eSopenharmony_ci   * @enum { number }
389961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
390061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
390161847f8eSopenharmony_ci   * @since 9
390261847f8eSopenharmony_ci   */
390361847f8eSopenharmony_ci  enum IpType {
390461847f8eSopenharmony_ci    /**
390561847f8eSopenharmony_ci     * Use statically configured IP settings
390661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
390761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
390861847f8eSopenharmony_ci     * @since 9
390961847f8eSopenharmony_ci     */
391061847f8eSopenharmony_ci    STATIC,
391161847f8eSopenharmony_ci
391261847f8eSopenharmony_ci    /**
391361847f8eSopenharmony_ci     * Use dynamically configured IP settings
391461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
391561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
391661847f8eSopenharmony_ci     * @since 9
391761847f8eSopenharmony_ci     */
391861847f8eSopenharmony_ci    DHCP,
391961847f8eSopenharmony_ci
392061847f8eSopenharmony_ci    /**
392161847f8eSopenharmony_ci     * No IP details are assigned
392261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
392361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
392461847f8eSopenharmony_ci     * @since 9
392561847f8eSopenharmony_ci     */
392661847f8eSopenharmony_ci    UNKNOWN
392761847f8eSopenharmony_ci  }
392861847f8eSopenharmony_ci
392961847f8eSopenharmony_ci  /**
393061847f8eSopenharmony_ci   * The state of the supplicant enumeration.
393161847f8eSopenharmony_ci   *
393261847f8eSopenharmony_ci   * @enum { number }
393361847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
393461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
393561847f8eSopenharmony_ci   * @since 9
393661847f8eSopenharmony_ci   */
393761847f8eSopenharmony_ci  export enum SuppState {
393861847f8eSopenharmony_ci    /**
393961847f8eSopenharmony_ci     * The supplicant is not associated with or is disconnected from the AP.
394061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
394161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
394261847f8eSopenharmony_ci     * @since 9
394361847f8eSopenharmony_ci     */
394461847f8eSopenharmony_ci    DISCONNECTED,
394561847f8eSopenharmony_ci
394661847f8eSopenharmony_ci    /**
394761847f8eSopenharmony_ci     * The network interface is disabled.
394861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
394961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
395061847f8eSopenharmony_ci     * @since 9
395161847f8eSopenharmony_ci     */
395261847f8eSopenharmony_ci    INTERFACE_DISABLED,
395361847f8eSopenharmony_ci
395461847f8eSopenharmony_ci    /**
395561847f8eSopenharmony_ci     * The supplicant is disabled.
395661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
395761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
395861847f8eSopenharmony_ci     * @since 9
395961847f8eSopenharmony_ci     */
396061847f8eSopenharmony_ci    INACTIVE,
396161847f8eSopenharmony_ci
396261847f8eSopenharmony_ci    /**
396361847f8eSopenharmony_ci     * The supplicant is scanning for a Wi-Fi connection.
396461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
396561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
396661847f8eSopenharmony_ci     * @since 9
396761847f8eSopenharmony_ci     */
396861847f8eSopenharmony_ci    SCANNING,
396961847f8eSopenharmony_ci
397061847f8eSopenharmony_ci    /**
397161847f8eSopenharmony_ci     * The supplicant is authenticating with a specified AP.
397261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
397361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
397461847f8eSopenharmony_ci     * @since 9
397561847f8eSopenharmony_ci     */
397661847f8eSopenharmony_ci    AUTHENTICATING,
397761847f8eSopenharmony_ci
397861847f8eSopenharmony_ci    /**
397961847f8eSopenharmony_ci     * The supplicant is associating with a specified AP.
398061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
398161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
398261847f8eSopenharmony_ci     * @since 9
398361847f8eSopenharmony_ci     */
398461847f8eSopenharmony_ci    ASSOCIATING,
398561847f8eSopenharmony_ci
398661847f8eSopenharmony_ci    /**
398761847f8eSopenharmony_ci     * The supplicant is associated with a specified AP.
398861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
398961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
399061847f8eSopenharmony_ci     * @since 9
399161847f8eSopenharmony_ci     */
399261847f8eSopenharmony_ci    ASSOCIATED,
399361847f8eSopenharmony_ci
399461847f8eSopenharmony_ci    /**
399561847f8eSopenharmony_ci     * The four-way handshake is ongoing.
399661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
399761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
399861847f8eSopenharmony_ci     * @since 9
399961847f8eSopenharmony_ci     */
400061847f8eSopenharmony_ci    FOUR_WAY_HANDSHAKE,
400161847f8eSopenharmony_ci
400261847f8eSopenharmony_ci    /**
400361847f8eSopenharmony_ci     * The group handshake is ongoing.
400461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
400561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
400661847f8eSopenharmony_ci     * @since 9
400761847f8eSopenharmony_ci     */
400861847f8eSopenharmony_ci    GROUP_HANDSHAKE,
400961847f8eSopenharmony_ci
401061847f8eSopenharmony_ci    /**
401161847f8eSopenharmony_ci     * All authentication is completed.
401261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
401361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
401461847f8eSopenharmony_ci     * @since 9
401561847f8eSopenharmony_ci     */
401661847f8eSopenharmony_ci    COMPLETED,
401761847f8eSopenharmony_ci
401861847f8eSopenharmony_ci    /**
401961847f8eSopenharmony_ci     * Failed to establish a connection to the supplicant.
402061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
402161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
402261847f8eSopenharmony_ci     * @since 9
402361847f8eSopenharmony_ci     */
402461847f8eSopenharmony_ci    UNINITIALIZED,
402561847f8eSopenharmony_ci
402661847f8eSopenharmony_ci    /**
402761847f8eSopenharmony_ci     * The supplicant is in an unknown or invalid state.
402861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
402961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
403061847f8eSopenharmony_ci     * @since 9
403161847f8eSopenharmony_ci     */
403261847f8eSopenharmony_ci    INVALID
403361847f8eSopenharmony_ci  }
403461847f8eSopenharmony_ci
403561847f8eSopenharmony_ci  /**
403661847f8eSopenharmony_ci   * The state of Wi-Fi connection enumeration.
403761847f8eSopenharmony_ci   *
403861847f8eSopenharmony_ci   * @enum { number }
403961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.STA
404061847f8eSopenharmony_ci   * @since 9
404161847f8eSopenharmony_ci   */
404261847f8eSopenharmony_ci  export enum ConnState {
404361847f8eSopenharmony_ci    /**
404461847f8eSopenharmony_ci     * The device is searching for an available AP.
404561847f8eSopenharmony_ci     *
404661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
404761847f8eSopenharmony_ci     * @since 9
404861847f8eSopenharmony_ci     */
404961847f8eSopenharmony_ci    SCANNING,
405061847f8eSopenharmony_ci
405161847f8eSopenharmony_ci    /**
405261847f8eSopenharmony_ci     * The Wi-Fi connection is being set up.
405361847f8eSopenharmony_ci     *
405461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
405561847f8eSopenharmony_ci     * @since 9
405661847f8eSopenharmony_ci     */
405761847f8eSopenharmony_ci    CONNECTING,
405861847f8eSopenharmony_ci
405961847f8eSopenharmony_ci    /**
406061847f8eSopenharmony_ci     * The Wi-Fi connection is being authenticated.
406161847f8eSopenharmony_ci     *
406261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
406361847f8eSopenharmony_ci     * @since 9
406461847f8eSopenharmony_ci     */
406561847f8eSopenharmony_ci    AUTHENTICATING,
406661847f8eSopenharmony_ci
406761847f8eSopenharmony_ci    /**
406861847f8eSopenharmony_ci     * The IP address of the Wi-Fi connection is being obtained.
406961847f8eSopenharmony_ci     *
407061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
407161847f8eSopenharmony_ci     * @since 9
407261847f8eSopenharmony_ci     */
407361847f8eSopenharmony_ci    OBTAINING_IPADDR,
407461847f8eSopenharmony_ci
407561847f8eSopenharmony_ci    /**
407661847f8eSopenharmony_ci     * The Wi-Fi connection has been set up.
407761847f8eSopenharmony_ci     *
407861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
407961847f8eSopenharmony_ci     * @since 9
408061847f8eSopenharmony_ci     */
408161847f8eSopenharmony_ci    CONNECTED,
408261847f8eSopenharmony_ci
408361847f8eSopenharmony_ci    /**
408461847f8eSopenharmony_ci     * The Wi-Fi connection is being torn down.
408561847f8eSopenharmony_ci     *
408661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
408761847f8eSopenharmony_ci     * @since 9
408861847f8eSopenharmony_ci     */
408961847f8eSopenharmony_ci    DISCONNECTING,
409061847f8eSopenharmony_ci
409161847f8eSopenharmony_ci    /**
409261847f8eSopenharmony_ci     * The Wi-Fi connection has been torn down.
409361847f8eSopenharmony_ci     *
409461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
409561847f8eSopenharmony_ci     * @since 9
409661847f8eSopenharmony_ci     */
409761847f8eSopenharmony_ci    DISCONNECTED,
409861847f8eSopenharmony_ci
409961847f8eSopenharmony_ci    /**
410061847f8eSopenharmony_ci     * Failed to set up the Wi-Fi connection.
410161847f8eSopenharmony_ci     *
410261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.STA
410361847f8eSopenharmony_ci     * @since 9
410461847f8eSopenharmony_ci     */
410561847f8eSopenharmony_ci    UNKNOWN
410661847f8eSopenharmony_ci  }
410761847f8eSopenharmony_ci
410861847f8eSopenharmony_ci  /**
410961847f8eSopenharmony_ci   * P2P device information.
411061847f8eSopenharmony_ci   *
411161847f8eSopenharmony_ci   * @typedef WifiP2pDevice
411261847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
411361847f8eSopenharmony_ci   * @since 9
411461847f8eSopenharmony_ci   */
411561847f8eSopenharmony_ci  interface WifiP2pDevice {
411661847f8eSopenharmony_ci    /**
411761847f8eSopenharmony_ci     * Device name
411861847f8eSopenharmony_ci     * @type { string }
411961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
412061847f8eSopenharmony_ci     * @since 9
412161847f8eSopenharmony_ci     */
412261847f8eSopenharmony_ci    deviceName: string;
412361847f8eSopenharmony_ci
412461847f8eSopenharmony_ci    /**
412561847f8eSopenharmony_ci     * Device mac address
412661847f8eSopenharmony_ci     * @type { string }
412761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
412861847f8eSopenharmony_ci     * @since 9
412961847f8eSopenharmony_ci     */
413061847f8eSopenharmony_ci    deviceAddress: string;
413161847f8eSopenharmony_ci
413261847f8eSopenharmony_ci    /**
413361847f8eSopenharmony_ci     * Device mac address type
413461847f8eSopenharmony_ci     * @type { ?DeviceAddressType }
413561847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
413661847f8eSopenharmony_ci     * @since 10
413761847f8eSopenharmony_ci     */
413861847f8eSopenharmony_ci    deviceAddressType?: DeviceAddressType;
413961847f8eSopenharmony_ci
414061847f8eSopenharmony_ci    /**
414161847f8eSopenharmony_ci     * Primary device type
414261847f8eSopenharmony_ci     * @type { string }
414361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
414461847f8eSopenharmony_ci     * @since 9
414561847f8eSopenharmony_ci     */
414661847f8eSopenharmony_ci    primaryDeviceType: string;
414761847f8eSopenharmony_ci
414861847f8eSopenharmony_ci    /**
414961847f8eSopenharmony_ci     * Device status
415061847f8eSopenharmony_ci     * @type { P2pDeviceStatus }
415161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
415261847f8eSopenharmony_ci     * @since 9
415361847f8eSopenharmony_ci     */
415461847f8eSopenharmony_ci    deviceStatus: P2pDeviceStatus;
415561847f8eSopenharmony_ci
415661847f8eSopenharmony_ci    /**
415761847f8eSopenharmony_ci     * Device group capabilities
415861847f8eSopenharmony_ci     * @type { number }
415961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
416061847f8eSopenharmony_ci     * @since 9
416161847f8eSopenharmony_ci     */
416261847f8eSopenharmony_ci    groupCapabilities: number;
416361847f8eSopenharmony_ci  }
416461847f8eSopenharmony_ci
416561847f8eSopenharmony_ci  /**
416661847f8eSopenharmony_ci   * P2P config.
416761847f8eSopenharmony_ci   *
416861847f8eSopenharmony_ci   * @typedef WifiP2PConfig
416961847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
417061847f8eSopenharmony_ci   * @since 9
417161847f8eSopenharmony_ci   */
417261847f8eSopenharmony_ci  interface WifiP2PConfig {
417361847f8eSopenharmony_ci    /** 
417461847f8eSopenharmony_ci     * Device mac address
417561847f8eSopenharmony_ci     * @type { string }
417661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
417761847f8eSopenharmony_ci     * @since 9
417861847f8eSopenharmony_ci     */
417961847f8eSopenharmony_ci    deviceAddress: string;
418061847f8eSopenharmony_ci
418161847f8eSopenharmony_ci    /**
418261847f8eSopenharmony_ci     * Device mac address type
418361847f8eSopenharmony_ci     * @type { ?DeviceAddressType }
418461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
418561847f8eSopenharmony_ci     * @since 10
418661847f8eSopenharmony_ci     */
418761847f8eSopenharmony_ci    deviceAddressType?: DeviceAddressType;
418861847f8eSopenharmony_ci
418961847f8eSopenharmony_ci    /**
419061847f8eSopenharmony_ci     * Group network ID. When creating a group, -1 indicates creates a temporary group,
419161847f8eSopenharmony_ci     * -2: indicates creates a persistent group
419261847f8eSopenharmony_ci     * @type { number }
419361847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
419461847f8eSopenharmony_ci     * @since 9
419561847f8eSopenharmony_ci     */
419661847f8eSopenharmony_ci    netId: number;
419761847f8eSopenharmony_ci
419861847f8eSopenharmony_ci    /**
419961847f8eSopenharmony_ci     * The passphrase of this {@code WifiP2pConfig} instance 
420061847f8eSopenharmony_ci     * @type { string }
420161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
420261847f8eSopenharmony_ci     * @since 9
420361847f8eSopenharmony_ci     */
420461847f8eSopenharmony_ci    passphrase: string;
420561847f8eSopenharmony_ci
420661847f8eSopenharmony_ci    /**
420761847f8eSopenharmony_ci     * Group name 
420861847f8eSopenharmony_ci     * @type { string }
420961847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
421061847f8eSopenharmony_ci     * @since 9
421161847f8eSopenharmony_ci     */
421261847f8eSopenharmony_ci    groupName: string;
421361847f8eSopenharmony_ci
421461847f8eSopenharmony_ci    /**
421561847f8eSopenharmony_ci     * Group owner band
421661847f8eSopenharmony_ci     * @type { GroupOwnerBand }
421761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
421861847f8eSopenharmony_ci     * @since 9
421961847f8eSopenharmony_ci     */
422061847f8eSopenharmony_ci    goBand: GroupOwnerBand;
422161847f8eSopenharmony_ci  }
422261847f8eSopenharmony_ci
422361847f8eSopenharmony_ci  /**
422461847f8eSopenharmony_ci   * P2P group information.
422561847f8eSopenharmony_ci   *
422661847f8eSopenharmony_ci   * @typedef WifiP2pGroupInfo
422761847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
422861847f8eSopenharmony_ci   * @since 9
422961847f8eSopenharmony_ci   */
423061847f8eSopenharmony_ci  interface WifiP2pGroupInfo {
423161847f8eSopenharmony_ci    /**
423261847f8eSopenharmony_ci     * Indicates whether it is group owner
423361847f8eSopenharmony_ci     * @type { boolean }
423461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
423561847f8eSopenharmony_ci     * @since 9
423661847f8eSopenharmony_ci     */
423761847f8eSopenharmony_ci    isP2pGo: boolean;
423861847f8eSopenharmony_ci
423961847f8eSopenharmony_ci    /**
424061847f8eSopenharmony_ci     * Group owner information
424161847f8eSopenharmony_ci     * @type { WifiP2pDevice }
424261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
424361847f8eSopenharmony_ci     * @since 9
424461847f8eSopenharmony_ci     */
424561847f8eSopenharmony_ci    ownerInfo: WifiP2pDevice;
424661847f8eSopenharmony_ci
424761847f8eSopenharmony_ci    /**
424861847f8eSopenharmony_ci     * The group passphrase
424961847f8eSopenharmony_ci     * @type { string }
425061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
425161847f8eSopenharmony_ci     * @since 9
425261847f8eSopenharmony_ci     */
425361847f8eSopenharmony_ci    passphrase: string;
425461847f8eSopenharmony_ci
425561847f8eSopenharmony_ci    /**
425661847f8eSopenharmony_ci     * Interface name
425761847f8eSopenharmony_ci     * @type { string }
425861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
425961847f8eSopenharmony_ci     * @since 9
426061847f8eSopenharmony_ci     */
426161847f8eSopenharmony_ci    interface: string;
426261847f8eSopenharmony_ci
426361847f8eSopenharmony_ci    /**
426461847f8eSopenharmony_ci     * Group name
426561847f8eSopenharmony_ci     * @type { string }
426661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
426761847f8eSopenharmony_ci     * @since 9
426861847f8eSopenharmony_ci     */
426961847f8eSopenharmony_ci    groupName: string;
427061847f8eSopenharmony_ci
427161847f8eSopenharmony_ci    /**
427261847f8eSopenharmony_ci     * Network ID
427361847f8eSopenharmony_ci     * @type { number }
427461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
427561847f8eSopenharmony_ci     * @since 9
427661847f8eSopenharmony_ci     */
427761847f8eSopenharmony_ci    networkId: number;
427861847f8eSopenharmony_ci
427961847f8eSopenharmony_ci    /**
428061847f8eSopenharmony_ci     * Frequency
428161847f8eSopenharmony_ci     * @type { number }
428261847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
428361847f8eSopenharmony_ci     * @since 9
428461847f8eSopenharmony_ci     */
428561847f8eSopenharmony_ci    frequency: number;
428661847f8eSopenharmony_ci
428761847f8eSopenharmony_ci    /**
428861847f8eSopenharmony_ci     * Client list
428961847f8eSopenharmony_ci     * @type { WifiP2pDevice[] }
429061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
429161847f8eSopenharmony_ci     * @since 9
429261847f8eSopenharmony_ci     */
429361847f8eSopenharmony_ci    clientDevices: WifiP2pDevice[];
429461847f8eSopenharmony_ci
429561847f8eSopenharmony_ci    /**
429661847f8eSopenharmony_ci     * Group owner IP address
429761847f8eSopenharmony_ci     * @type { string }
429861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
429961847f8eSopenharmony_ci     * @since 9
430061847f8eSopenharmony_ci     */
430161847f8eSopenharmony_ci    goIpAddress: string;
430261847f8eSopenharmony_ci  }
430361847f8eSopenharmony_ci
430461847f8eSopenharmony_ci  /**
430561847f8eSopenharmony_ci   * P2P connection status.
430661847f8eSopenharmony_ci   *
430761847f8eSopenharmony_ci   * @enum { number }
430861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
430961847f8eSopenharmony_ci   * @since 9
431061847f8eSopenharmony_ci   */
431161847f8eSopenharmony_ci  enum P2pConnectState {
431261847f8eSopenharmony_ci    /**
431361847f8eSopenharmony_ci     * p2p is disconnected 
431461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
431561847f8eSopenharmony_ci     * @since 9
431661847f8eSopenharmony_ci     */
431761847f8eSopenharmony_ci    DISCONNECTED = 0,
431861847f8eSopenharmony_ci
431961847f8eSopenharmony_ci    /**
432061847f8eSopenharmony_ci     * p2p is connected 
432161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
432261847f8eSopenharmony_ci     * @since 9
432361847f8eSopenharmony_ci     */
432461847f8eSopenharmony_ci    CONNECTED = 1
432561847f8eSopenharmony_ci  }
432661847f8eSopenharmony_ci
432761847f8eSopenharmony_ci  /**
432861847f8eSopenharmony_ci   * P2P linked information.
432961847f8eSopenharmony_ci   *
433061847f8eSopenharmony_ci   * @typedef WifiP2pLinkedInfo
433161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
433261847f8eSopenharmony_ci   * @since 9
433361847f8eSopenharmony_ci   */
433461847f8eSopenharmony_ci  interface WifiP2pLinkedInfo {
433561847f8eSopenharmony_ci    /**
433661847f8eSopenharmony_ci     * Connection status 
433761847f8eSopenharmony_ci     * @type { P2pConnectState }
433861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
433961847f8eSopenharmony_ci     * @since 9
434061847f8eSopenharmony_ci     */
434161847f8eSopenharmony_ci    connectState: P2pConnectState;
434261847f8eSopenharmony_ci
434361847f8eSopenharmony_ci    /**
434461847f8eSopenharmony_ci     * Indicates whether it is group owner
434561847f8eSopenharmony_ci     * @type { boolean }
434661847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
434761847f8eSopenharmony_ci     * @since 9
434861847f8eSopenharmony_ci     */
434961847f8eSopenharmony_ci    isGroupOwner: boolean;
435061847f8eSopenharmony_ci
435161847f8eSopenharmony_ci    /**
435261847f8eSopenharmony_ci     * Group owner address
435361847f8eSopenharmony_ci     * @type { string }
435461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
435561847f8eSopenharmony_ci     * @since 9
435661847f8eSopenharmony_ci     */
435761847f8eSopenharmony_ci    groupOwnerAddr: string;
435861847f8eSopenharmony_ci  }
435961847f8eSopenharmony_ci
436061847f8eSopenharmony_ci  /**
436161847f8eSopenharmony_ci   * P2P device status.
436261847f8eSopenharmony_ci   *
436361847f8eSopenharmony_ci   * @enum { number }
436461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
436561847f8eSopenharmony_ci   * @since 9
436661847f8eSopenharmony_ci   */
436761847f8eSopenharmony_ci  enum P2pDeviceStatus {
436861847f8eSopenharmony_ci    /** 
436961847f8eSopenharmony_ci     * Indicate p2p device is connected.  
437061847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
437161847f8eSopenharmony_ci     * @since 9
437261847f8eSopenharmony_ci     */
437361847f8eSopenharmony_ci    CONNECTED = 0,
437461847f8eSopenharmony_ci
437561847f8eSopenharmony_ci    /** 
437661847f8eSopenharmony_ci     * Indicate p2p device is invited.   
437761847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
437861847f8eSopenharmony_ci     * @since 9
437961847f8eSopenharmony_ci     */
438061847f8eSopenharmony_ci    INVITED = 1,
438161847f8eSopenharmony_ci
438261847f8eSopenharmony_ci    /**
438361847f8eSopenharmony_ci     * Indicate p2p device is failed.   
438461847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
438561847f8eSopenharmony_ci     * @since 9
438661847f8eSopenharmony_ci     */
438761847f8eSopenharmony_ci    FAILED = 2,
438861847f8eSopenharmony_ci
438961847f8eSopenharmony_ci    /**
439061847f8eSopenharmony_ci     * Indicate p2p device is available.   
439161847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
439261847f8eSopenharmony_ci     * @since 9
439361847f8eSopenharmony_ci     */
439461847f8eSopenharmony_ci    AVAILABLE = 3,
439561847f8eSopenharmony_ci
439661847f8eSopenharmony_ci    /** 
439761847f8eSopenharmony_ci     * Indicate p2p device is unavailable.   
439861847f8eSopenharmony_ci     * @syscap SystemCapability.Communication.WiFi.P2P
439961847f8eSopenharmony_ci     * @since 9
440061847f8eSopenharmony_ci     */
440161847f8eSopenharmony_ci    UNAVAILABLE = 4
440261847f8eSopenharmony_ci  }
440361847f8eSopenharmony_ci
440461847f8eSopenharmony_ci  /**
440561847f8eSopenharmony_ci   * P2P group owner band.
440661847f8eSopenharmony_ci   *
440761847f8eSopenharmony_ci   * @enum { number }
440861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
440961847f8eSopenharmony_ci   * @since 9
441061847f8eSopenharmony_ci   */
441161847f8eSopenharmony_ci  enum GroupOwnerBand {
441261847f8eSopenharmony_ci  /**
441361847f8eSopenharmony_ci   * default band.
441461847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
441561847f8eSopenharmony_ci   * @since 9
441661847f8eSopenharmony_ci   */
441761847f8eSopenharmony_ci    GO_BAND_AUTO = 0,
441861847f8eSopenharmony_ci
441961847f8eSopenharmony_ci  /**
442061847f8eSopenharmony_ci   * 2.4G band.
442161847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
442261847f8eSopenharmony_ci   * @since 9
442361847f8eSopenharmony_ci   */
442461847f8eSopenharmony_ci    GO_BAND_2GHZ = 1,
442561847f8eSopenharmony_ci
442661847f8eSopenharmony_ci  /**
442761847f8eSopenharmony_ci   * 5G band.
442861847f8eSopenharmony_ci   * @syscap SystemCapability.Communication.WiFi.P2P
442961847f8eSopenharmony_ci   * @since 9
443061847f8eSopenharmony_ci   */
443161847f8eSopenharmony_ci    GO_BAND_5GHZ = 2
443261847f8eSopenharmony_ci  }
443361847f8eSopenharmony_ci}
443461847f8eSopenharmony_ci
443561847f8eSopenharmony_ciexport default wifiManager;
4436