161847f8eSopenharmony_ci/*
261847f8eSopenharmony_ci * Copyright (C) 2021-2024 Huawei Device Co., Ltd.
361847f8eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
461847f8eSopenharmony_ci * you may not use this file except in compliance with the License.
561847f8eSopenharmony_ci * You may obtain a copy of the License at
661847f8eSopenharmony_ci *
761847f8eSopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
861847f8eSopenharmony_ci *
961847f8eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1061847f8eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1161847f8eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1261847f8eSopenharmony_ci * See the License for the specific language governing permissions and
1361847f8eSopenharmony_ci * limitations under the License.
1461847f8eSopenharmony_ci */
1561847f8eSopenharmony_ci
1661847f8eSopenharmony_ci/**
1761847f8eSopenharmony_ci * @file
1861847f8eSopenharmony_ci * @kit TelephonyKit
1961847f8eSopenharmony_ci */
2061847f8eSopenharmony_ci
2161847f8eSopenharmony_ciimport type { AsyncCallback, Callback } from './@ohos.base';
2261847f8eSopenharmony_ci
2361847f8eSopenharmony_ci/**
2461847f8eSopenharmony_ci * Provides interfaces for applications to obtain the network state, cell information, signal information,
2561847f8eSopenharmony_ci * and device ID of the wireless cellular network (WCN), and provides a callback registration mechanism to
2661847f8eSopenharmony_ci * listen for changes of the network, cell, and signal status of the WCN.
2761847f8eSopenharmony_ci *
2861847f8eSopenharmony_ci * @namespace radio
2961847f8eSopenharmony_ci * @syscap SystemCapability.Telephony.CoreService
3061847f8eSopenharmony_ci * @since 6
3161847f8eSopenharmony_ci */
3261847f8eSopenharmony_cideclare namespace radio {
3361847f8eSopenharmony_ci  /**
3461847f8eSopenharmony_ci   * Obtains radio access technology (RAT) of the registered network. The system
3561847f8eSopenharmony_ci   * returns RAT of the packet service (PS) and circuit service (CS) domain.
3661847f8eSopenharmony_ci   *
3761847f8eSopenharmony_ci   * @permission ohos.permission.GET_NETWORK_INFO
3861847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
3961847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
4061847f8eSopenharmony_ci   * @param { AsyncCallback<{psRadioTech: RadioTechnology, csRadioTech: RadioTechnology}> } callback - Returns
4161847f8eSopenharmony_ci   * an integer indicating the RAT in use. The values are as follows:
4261847f8eSopenharmony_ci   * <ul>
4361847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_UNKNOWN}
4461847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_GSM}
4561847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_1XRTT}
4661847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_WCDMA}
4761847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPA}
4861847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPAP}
4961847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_TD_SCDMA}
5061847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EVDO}
5161847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EHRPD}
5261847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE}
5361847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE_CA}
5461847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_IWLAN}
5561847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_NR}
5661847f8eSopenharmony_ci   * </ul>
5761847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
5861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
5961847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
6061847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
6161847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
6261847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
6361847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
6461847f8eSopenharmony_ci   * @since 6
6561847f8eSopenharmony_ci   */
6661847f8eSopenharmony_ci  /**
6761847f8eSopenharmony_ci   * Obtains radio access technology (RAT) of the registered network. The system
6861847f8eSopenharmony_ci   * returns RAT of the packet service (PS) and circuit service (CS) domain.
6961847f8eSopenharmony_ci   *
7061847f8eSopenharmony_ci   * @permission ohos.permission.GET_NETWORK_INFO
7161847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
7261847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
7361847f8eSopenharmony_ci   * @param { AsyncCallback<NetworkRadioTech> } callback - Returns
7461847f8eSopenharmony_ci   * the RAT of PS domain and CS domain of registered network.
7561847f8eSopenharmony_ci   * The values of RAT are as follows:
7661847f8eSopenharmony_ci   * <ul>
7761847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_UNKNOWN}
7861847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_GSM}
7961847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_1XRTT}
8061847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_WCDMA}
8161847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPA}
8261847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPAP}
8361847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_TD_SCDMA}
8461847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EVDO}
8561847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EHRPD}
8661847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE}
8761847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE_CA}
8861847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_IWLAN}
8961847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_NR}
9061847f8eSopenharmony_ci   * </ul>
9161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
9261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
9361847f8eSopenharmony_ci   *     2. Incorrect parameter types.
9461847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
9561847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
9661847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
9761847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
9861847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
9961847f8eSopenharmony_ci   * @since 11
10061847f8eSopenharmony_ci   */
10161847f8eSopenharmony_ci  function getRadioTech(slotId: number, callback: AsyncCallback<NetworkRadioTech>): void;
10261847f8eSopenharmony_ci
10361847f8eSopenharmony_ci  /**
10461847f8eSopenharmony_ci   * Obtains radio access technology (RAT) of the registered network. The system
10561847f8eSopenharmony_ci   * returns RAT of the packet service (PS) and circuit service (CS) domain.
10661847f8eSopenharmony_ci   *
10761847f8eSopenharmony_ci   * @permission ohos.permission.GET_NETWORK_INFO
10861847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
10961847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
11061847f8eSopenharmony_ci   * @returns { Promise<{psRadioTech: RadioTechnology, csRadioTech: RadioTechnology}> } Returns
11161847f8eSopenharmony_ci   * the enumeration of RadioTechnology. The values are as follows:
11261847f8eSopenharmony_ci   * <ul>
11361847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_UNKNOWN}
11461847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_GSM}
11561847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_1XRTT}
11661847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_WCDMA}
11761847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPA}
11861847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPAP}
11961847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_TD_SCDMA}
12061847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EVDO}
12161847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EHRPD}
12261847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE}
12361847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE_CA}
12461847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_IWLAN}
12561847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_NR}
12661847f8eSopenharmony_ci   * </ul>
12761847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
12861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
12961847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
13061847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
13161847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
13261847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
13361847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
13461847f8eSopenharmony_ci   * @since 6
13561847f8eSopenharmony_ci   */
13661847f8eSopenharmony_ci  /**
13761847f8eSopenharmony_ci   * Obtains radio access technology (RAT) of the registered network. The system
13861847f8eSopenharmony_ci   * returns RAT of the packet service (PS) and circuit service (CS) domain.
13961847f8eSopenharmony_ci   *
14061847f8eSopenharmony_ci   * @permission ohos.permission.GET_NETWORK_INFO
14161847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
14261847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
14361847f8eSopenharmony_ci   * @returns { Promise<NetworkRadioTech> } Returns the RAT of PS domain and CS domain of registered network.
14461847f8eSopenharmony_ci   * The values of RAT are as follows:
14561847f8eSopenharmony_ci   * <ul>
14661847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_UNKNOWN}
14761847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_GSM}
14861847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_1XRTT}
14961847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_WCDMA}
15061847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPA}
15161847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPAP}
15261847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_TD_SCDMA}
15361847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EVDO}
15461847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EHRPD}
15561847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE}
15661847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE_CA}
15761847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_IWLAN}
15861847f8eSopenharmony_ci   * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_NR}
15961847f8eSopenharmony_ci   * </ul>
16061847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
16161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
16261847f8eSopenharmony_ci   *     2. Incorrect parameter types.
16361847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
16461847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
16561847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
16661847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
16761847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
16861847f8eSopenharmony_ci   * @since 11
16961847f8eSopenharmony_ci   */
17061847f8eSopenharmony_ci  function getRadioTech(slotId: number): Promise<NetworkRadioTech>;
17161847f8eSopenharmony_ci
17261847f8eSopenharmony_ci  /**
17361847f8eSopenharmony_ci   * Obtains the network state of the registered network.
17461847f8eSopenharmony_ci   *
17561847f8eSopenharmony_ci   * @permission ohos.permission.GET_NETWORK_INFO
17661847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
17761847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
17861847f8eSopenharmony_ci   * @param { AsyncCallback<NetworkState> } callback - Indicates the callback for getting network registration state.
17961847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
18061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
18161847f8eSopenharmony_ci   *     2. Incorrect parameter types.
18261847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
18361847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
18461847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
18561847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
18661847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
18761847f8eSopenharmony_ci   * @since 6
18861847f8eSopenharmony_ci   */
18961847f8eSopenharmony_ci  function getNetworkState(slotId: number, callback: AsyncCallback<NetworkState>): void;
19061847f8eSopenharmony_ci
19161847f8eSopenharmony_ci  /**
19261847f8eSopenharmony_ci   * Obtains the network state of the registered network.
19361847f8eSopenharmony_ci   *
19461847f8eSopenharmony_ci   * @permission ohos.permission.GET_NETWORK_INFO
19561847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
19661847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
19761847f8eSopenharmony_ci   * @returns { Promise<NetworkState> } Returns the NetworkState object.
19861847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
19961847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
20061847f8eSopenharmony_ci   *     2. Incorrect parameter types.
20161847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
20261847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
20361847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
20461847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
20561847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
20661847f8eSopenharmony_ci   * @since 6
20761847f8eSopenharmony_ci   */
20861847f8eSopenharmony_ci  function getNetworkState(slotId?: number): Promise<NetworkState>;
20961847f8eSopenharmony_ci
21061847f8eSopenharmony_ci  /**
21161847f8eSopenharmony_ci   * Obtains the network state of the registered network.
21261847f8eSopenharmony_ci   *
21361847f8eSopenharmony_ci   * @permission ohos.permission.GET_NETWORK_INFO
21461847f8eSopenharmony_ci   * @param { AsyncCallback<NetworkState> } callback - Indicates the callback for getting network registration state.
21561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
21661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
21761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
21861847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
21961847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
22061847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
22161847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
22261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
22361847f8eSopenharmony_ci   * @since 6
22461847f8eSopenharmony_ci   */
22561847f8eSopenharmony_ci  function getNetworkState(callback: AsyncCallback<NetworkState>): void;
22661847f8eSopenharmony_ci
22761847f8eSopenharmony_ci  /**
22861847f8eSopenharmony_ci   * Actively requests to update location information.
22961847f8eSopenharmony_ci   *
23061847f8eSopenharmony_ci   * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
23161847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
23261847f8eSopenharmony_ci   * index number supported by the device.
23361847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of sendUpdateCellLocationRequest.
23461847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
23561847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
23661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
23761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
23861847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
23961847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
24061847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
24161847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
24261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
24361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
24461847f8eSopenharmony_ci   * @since 8
24561847f8eSopenharmony_ci   */
24661847f8eSopenharmony_ci  function sendUpdateCellLocationRequest(slotId: number, callback: AsyncCallback<void>): void;
24761847f8eSopenharmony_ci
24861847f8eSopenharmony_ci  /**
24961847f8eSopenharmony_ci   * Actively requests to update location information.
25061847f8eSopenharmony_ci   *
25161847f8eSopenharmony_ci   * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
25261847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
25361847f8eSopenharmony_ci   * index number supported by the device.
25461847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the sendUpdateCellLocationRequest.
25561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
25661847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
25761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
25861847f8eSopenharmony_ci   *     2. Incorrect parameter types.
25961847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
26061847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
26161847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
26261847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
26361847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
26461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
26561847f8eSopenharmony_ci   * @since 8
26661847f8eSopenharmony_ci   */
26761847f8eSopenharmony_ci  function sendUpdateCellLocationRequest(slotId?: number): Promise<void>;
26861847f8eSopenharmony_ci
26961847f8eSopenharmony_ci  /**
27061847f8eSopenharmony_ci   * Actively requests to update location information.
27161847f8eSopenharmony_ci   *
27261847f8eSopenharmony_ci   * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
27361847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of sendUpdateCellLocationRequest.
27461847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
27561847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
27661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
27761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
27861847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
27961847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
28061847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
28161847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
28261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
28361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
28461847f8eSopenharmony_ci   * @since 8
28561847f8eSopenharmony_ci   */
28661847f8eSopenharmony_ci  function sendUpdateCellLocationRequest(callback: AsyncCallback<void>): void;
28761847f8eSopenharmony_ci
28861847f8eSopenharmony_ci  /**
28961847f8eSopenharmony_ci   * Get the current cell information.
29061847f8eSopenharmony_ci   *
29161847f8eSopenharmony_ci   * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
29261847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
29361847f8eSopenharmony_ci   * index number supported by the device.
29461847f8eSopenharmony_ci   * @param { AsyncCallback<Array<CellInformation>> } callback - Indicates the callback for getting cell information.
29561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
29661847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
29761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
29861847f8eSopenharmony_ci   *     2. Incorrect parameter types.
29961847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
30061847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
30161847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
30261847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
30361847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
30461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
30561847f8eSopenharmony_ci   * @since 8
30661847f8eSopenharmony_ci   */
30761847f8eSopenharmony_ci  function getCellInformation(slotId: number, callback: AsyncCallback<Array<CellInformation>>): void;
30861847f8eSopenharmony_ci
30961847f8eSopenharmony_ci  /**
31061847f8eSopenharmony_ci   * Get the current cell information.
31161847f8eSopenharmony_ci   *
31261847f8eSopenharmony_ci   * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
31361847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
31461847f8eSopenharmony_ci   * index number supported by the device.
31561847f8eSopenharmony_ci   * @returns { Promise<Array<CellInformation>> } Returns the current cell information.
31661847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
31761847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
31861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
31961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
32061847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
32161847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
32261847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
32361847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
32461847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
32561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
32661847f8eSopenharmony_ci   * @since 8
32761847f8eSopenharmony_ci   */
32861847f8eSopenharmony_ci  function getCellInformation(slotId?: number): Promise<Array<CellInformation>>;
32961847f8eSopenharmony_ci
33061847f8eSopenharmony_ci  /**
33161847f8eSopenharmony_ci   * Get the current cell information.
33261847f8eSopenharmony_ci   *
33361847f8eSopenharmony_ci   * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION
33461847f8eSopenharmony_ci   * @param { AsyncCallback<Array<CellInformation>> } callback - Indicates the callback for getting cell information.
33561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
33661847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
33761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
33861847f8eSopenharmony_ci   *     2. Incorrect parameter types.
33961847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
34061847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
34161847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
34261847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
34361847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
34461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
34561847f8eSopenharmony_ci   * @since 8
34661847f8eSopenharmony_ci   */
34761847f8eSopenharmony_ci  function getCellInformation(callback: AsyncCallback<Array<CellInformation>>): void;
34861847f8eSopenharmony_ci
34961847f8eSopenharmony_ci  /**
35061847f8eSopenharmony_ci   * Obtains the network search mode of the SIM card in a specified slot.
35161847f8eSopenharmony_ci   *
35261847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
35361847f8eSopenharmony_ci   * index number supported by the device.
35461847f8eSopenharmony_ci   * @param { AsyncCallback<NetworkSelectionMode> } callback - Indicates the callback for getting
35561847f8eSopenharmony_ci   * the network search mode of the SIM card. Available values are as follows:
35661847f8eSopenharmony_ci   * <ul>
35761847f8eSopenharmony_ci   * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_UNKNOWN}
35861847f8eSopenharmony_ci   * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_AUTOMATIC}
35961847f8eSopenharmony_ci   * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_MANUAL}
36061847f8eSopenharmony_ci   * <ul>
36161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
36261847f8eSopenharmony_ci   *     2. Incorrect parameter types.
36361847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
36461847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
36561847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
36661847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
36761847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
36861847f8eSopenharmony_ci   * @since 6
36961847f8eSopenharmony_ci   */
37061847f8eSopenharmony_ci  function getNetworkSelectionMode(slotId: number, callback: AsyncCallback<NetworkSelectionMode>): void;
37161847f8eSopenharmony_ci
37261847f8eSopenharmony_ci  /**
37361847f8eSopenharmony_ci   * Obtains the network search mode of the SIM card in a specified slot.
37461847f8eSopenharmony_ci   *
37561847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
37661847f8eSopenharmony_ci   * index number supported by the device.
37761847f8eSopenharmony_ci   * @returns { Promise<NetworkSelectionMode> } Returns the network search mode of the SIM card.
37861847f8eSopenharmony_ci   * Available values are as follows:
37961847f8eSopenharmony_ci   * <ul>
38061847f8eSopenharmony_ci   * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_UNKNOWN}
38161847f8eSopenharmony_ci   * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_AUTOMATIC}
38261847f8eSopenharmony_ci   * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_MANUAL}
38361847f8eSopenharmony_ci   * <ul>
38461847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
38561847f8eSopenharmony_ci   *     2. Incorrect parameter types.
38661847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
38761847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
38861847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
38961847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
39061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
39161847f8eSopenharmony_ci   * @since 6
39261847f8eSopenharmony_ci   */
39361847f8eSopenharmony_ci  function getNetworkSelectionMode(slotId: number): Promise<NetworkSelectionMode>;
39461847f8eSopenharmony_ci
39561847f8eSopenharmony_ci  /**
39661847f8eSopenharmony_ci   * Set the current network selection mode.
39761847f8eSopenharmony_ci   *
39861847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
39961847f8eSopenharmony_ci   * @param { NetworkSelectionModeOptions } options Indicates the network selection mode option.
40061847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of setNetworkSelectionMode.
40161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
40261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
40361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
40461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
40561847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
40661847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
40761847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
40861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
40961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
41061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
41161847f8eSopenharmony_ci   * @since 6
41261847f8eSopenharmony_ci   */
41361847f8eSopenharmony_ci  function setNetworkSelectionMode(options: NetworkSelectionModeOptions, callback: AsyncCallback<void>): void;
41461847f8eSopenharmony_ci
41561847f8eSopenharmony_ci  /**
41661847f8eSopenharmony_ci   * Set the current network selection mode.
41761847f8eSopenharmony_ci   *
41861847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
41961847f8eSopenharmony_ci   * @param { NetworkSelectionModeOptions } options Indicates the network selection mode option.
42061847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the setNetworkSelectionMode.
42161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
42261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
42361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
42461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
42561847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
42661847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
42761847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
42861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
42961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
43061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
43161847f8eSopenharmony_ci   * @since 6
43261847f8eSopenharmony_ci   */
43361847f8eSopenharmony_ci  function setNetworkSelectionMode(options: NetworkSelectionModeOptions): Promise<void>;
43461847f8eSopenharmony_ci
43561847f8eSopenharmony_ci  /**
43661847f8eSopenharmony_ci   * Get network search information.
43761847f8eSopenharmony_ci   *
43861847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
43961847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
44061847f8eSopenharmony_ci   * index number supported by the device.
44161847f8eSopenharmony_ci   * @param { AsyncCallback<NetworkSearchResult> } callback - Indicates the callback for getting
44261847f8eSopenharmony_ci   * the search results of the network.
44361847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
44461847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
44561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
44661847f8eSopenharmony_ci   *     2. Incorrect parameter types.
44761847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
44861847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
44961847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
45061847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
45161847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
45261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
45361847f8eSopenharmony_ci   * @since 6
45461847f8eSopenharmony_ci   */
45561847f8eSopenharmony_ci  function getNetworkSearchInformation(slotId: number, callback: AsyncCallback<NetworkSearchResult>): void;
45661847f8eSopenharmony_ci
45761847f8eSopenharmony_ci  /**
45861847f8eSopenharmony_ci   * Get network search information.
45961847f8eSopenharmony_ci   *
46061847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
46161847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
46261847f8eSopenharmony_ci   * index number supported by the device.
46361847f8eSopenharmony_ci   * @returns { Promise<NetworkSearchResult> } Returns the search results of the network.
46461847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
46561847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
46661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
46761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
46861847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
46961847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
47061847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
47161847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
47261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
47361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
47461847f8eSopenharmony_ci   * @since 6
47561847f8eSopenharmony_ci   */
47661847f8eSopenharmony_ci  function getNetworkSearchInformation(slotId: number): Promise<NetworkSearchResult>;
47761847f8eSopenharmony_ci
47861847f8eSopenharmony_ci  /**
47961847f8eSopenharmony_ci   * Obtains the ISO-defined country code of the country where the registered network is deployed.
48061847f8eSopenharmony_ci   *
48161847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
48261847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
48361847f8eSopenharmony_ci   * @param { AsyncCallback<string> } callback - Indicates the callback for getting the country code
48461847f8eSopenharmony_ci   * defined in ISO 3166-2; returns an empty string if the device is not registered with any network.
48561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
48661847f8eSopenharmony_ci   *     2. Incorrect parameter types.
48761847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
48861847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
48961847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
49061847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
49161847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
49261847f8eSopenharmony_ci   * @since 7
49361847f8eSopenharmony_ci   */
49461847f8eSopenharmony_ci  function getISOCountryCodeForNetwork(slotId: number, callback: AsyncCallback<string>): void;
49561847f8eSopenharmony_ci
49661847f8eSopenharmony_ci  /**
49761847f8eSopenharmony_ci   * Obtains the ISO-defined country code of the country where the registered network is deployed.
49861847f8eSopenharmony_ci   *
49961847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
50061847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
50161847f8eSopenharmony_ci   * @returns { Promise<string> } Returns the country code defined in ISO 3166-2.
50261847f8eSopenharmony_ci   * Returns an empty string if the device is not registered with any network.
50361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
50461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
50561847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
50661847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
50761847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
50861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
50961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
51061847f8eSopenharmony_ci   * @since 7
51161847f8eSopenharmony_ci   */
51261847f8eSopenharmony_ci  function getISOCountryCodeForNetwork(slotId: number): Promise<string>;
51361847f8eSopenharmony_ci
51461847f8eSopenharmony_ci  /**
51561847f8eSopenharmony_ci   * Obtains the ISO-defined country code of the country where the registered network is deployed.
51661847f8eSopenharmony_ci   *
51761847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
51861847f8eSopenharmony_ci   * ranging from 0 to the maximum card slots supported by the device.
51961847f8eSopenharmony_ci   * @returns { string } Returns the country code defined in ISO 3166-2.
52061847f8eSopenharmony_ci   * Returns an empty string if the device is not registered with any network.
52161847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
52261847f8eSopenharmony_ci   * @since 10
52361847f8eSopenharmony_ci   */
52461847f8eSopenharmony_ci  function getISOCountryCodeForNetworkSync(slotId: number): string;
52561847f8eSopenharmony_ci
52661847f8eSopenharmony_ci  /**
52761847f8eSopenharmony_ci   * Get the option mode of NR.
52861847f8eSopenharmony_ci   *
52961847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
53061847f8eSopenharmony_ci   * index number supported by the device.
53161847f8eSopenharmony_ci   * @param { AsyncCallback<NrOptionMode> } callback - Indicates the callback for getting the selection mode of NR.
53261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
53361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
53461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
53561847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
53661847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
53761847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
53861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
53961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
54061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
54161847f8eSopenharmony_ci   * @since 8
54261847f8eSopenharmony_ci   * @deprecated since 10
54361847f8eSopenharmony_ci   * @useinstead telephony.radio#getNROptionMode
54461847f8eSopenharmony_ci   */
54561847f8eSopenharmony_ci  function getNrOptionMode(slotId: number, callback: AsyncCallback<NrOptionMode>): void;
54661847f8eSopenharmony_ci
54761847f8eSopenharmony_ci  /**
54861847f8eSopenharmony_ci   * Get the option mode of NR.
54961847f8eSopenharmony_ci   *
55061847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
55161847f8eSopenharmony_ci   * index number supported by the device.
55261847f8eSopenharmony_ci   * @returns { Promise<NrOptionMode> } Returns the selection mode of NR.
55361847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
55461847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
55561847f8eSopenharmony_ci   *     2. Incorrect parameter types.
55661847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
55761847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
55861847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
55961847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
56061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
56161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
56261847f8eSopenharmony_ci   * @since 8
56361847f8eSopenharmony_ci   * @deprecated since 10
56461847f8eSopenharmony_ci   * @useinstead telephony.radio#getNROptionMode
56561847f8eSopenharmony_ci   */
56661847f8eSopenharmony_ci  function getNrOptionMode(slotId?: number): Promise<NrOptionMode>;
56761847f8eSopenharmony_ci
56861847f8eSopenharmony_ci  /**
56961847f8eSopenharmony_ci   * Get the option mode of NR.
57061847f8eSopenharmony_ci   *
57161847f8eSopenharmony_ci   * @param { AsyncCallback<NrOptionMode> } callback - Indicates the callback for getting the selection mode of NR.
57261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
57361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
57461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
57561847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
57661847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
57761847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
57861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
57961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
58061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
58161847f8eSopenharmony_ci   * @since 8
58261847f8eSopenharmony_ci   * @deprecated since 10
58361847f8eSopenharmony_ci   * @useinstead telephony.radio#getNROptionMode
58461847f8eSopenharmony_ci   */
58561847f8eSopenharmony_ci  function getNrOptionMode(callback: AsyncCallback<NrOptionMode>): void;
58661847f8eSopenharmony_ci
58761847f8eSopenharmony_ci  /**
58861847f8eSopenharmony_ci   * Obtains the IMEI of a specified card slot of the device.
58961847f8eSopenharmony_ci   *
59061847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
59161847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
59261847f8eSopenharmony_ci   * index number supported by the device.
59361847f8eSopenharmony_ci   * @param { AsyncCallback<string> } callback - Indicates the callback for getting the IMEI.
59461847f8eSopenharmony_ci   * Returns an empty string if the IMEI does not exist.
59561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
59661847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
59761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
59861847f8eSopenharmony_ci   *     2. Incorrect parameter types.
59961847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
60061847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
60161847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
60261847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
60361847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
60461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
60561847f8eSopenharmony_ci   * @since 8
60661847f8eSopenharmony_ci   */
60761847f8eSopenharmony_ci  function getIMEI(slotId: number, callback: AsyncCallback<string>): void;
60861847f8eSopenharmony_ci
60961847f8eSopenharmony_ci  /**
61061847f8eSopenharmony_ci   * Obtains the IMEI of a specified card slot of the device.
61161847f8eSopenharmony_ci   *
61261847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
61361847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
61461847f8eSopenharmony_ci   * index number supported by the device.
61561847f8eSopenharmony_ci   * @returns { Promise<string> } Returns the IMEI. Returns an empty string if the IMEI does not exist.
61661847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
61761847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
61861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
61961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
62061847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
62161847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
62261847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
62361847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
62461847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
62561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
62661847f8eSopenharmony_ci   * @since 8
62761847f8eSopenharmony_ci   */
62861847f8eSopenharmony_ci  function getIMEI(slotId?: number): Promise<string>;
62961847f8eSopenharmony_ci
63061847f8eSopenharmony_ci  /**
63161847f8eSopenharmony_ci   * Obtains the IMEI of a specified card slot of the device.
63261847f8eSopenharmony_ci   *
63361847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
63461847f8eSopenharmony_ci   * @param { AsyncCallback<string> } callback - Indicates the callback for getting the IMEI.
63561847f8eSopenharmony_ci   * Returns an empty string if the IMEI does not exist.
63661847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
63761847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
63861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
63961847f8eSopenharmony_ci   *     2. Incorrect parameter types.
64061847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
64161847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
64261847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
64361847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
64461847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
64561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
64661847f8eSopenharmony_ci   * @since 8
64761847f8eSopenharmony_ci   */
64861847f8eSopenharmony_ci  function getIMEI(callback: AsyncCallback<string>): void;
64961847f8eSopenharmony_ci
65061847f8eSopenharmony_ci  /**
65161847f8eSopenharmony_ci   * Obtains the MEID of a specified card slot of the device.
65261847f8eSopenharmony_ci   *
65361847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
65461847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
65561847f8eSopenharmony_ci   * index number supported by the device.
65661847f8eSopenharmony_ci   * @param { AsyncCallback<string> } callback - Indicates the callback for getting the MEID.
65761847f8eSopenharmony_ci   * Returns an empty string if the MEID does not exist.
65861847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
65961847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
66061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
66161847f8eSopenharmony_ci   *     2. Incorrect parameter types.
66261847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
66361847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
66461847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
66561847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
66661847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
66761847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
66861847f8eSopenharmony_ci   * @since 8
66961847f8eSopenharmony_ci   */
67061847f8eSopenharmony_ci  function getMEID(slotId: number, callback: AsyncCallback<string>): void;
67161847f8eSopenharmony_ci
67261847f8eSopenharmony_ci  /**
67361847f8eSopenharmony_ci   * Obtains the MEID of a specified card slot of the device.
67461847f8eSopenharmony_ci   *
67561847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
67661847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
67761847f8eSopenharmony_ci   * index number supported by the device.
67861847f8eSopenharmony_ci   * @returns { Promise<string> } Returns the MEID. Returns an empty string if the MEID does not exist.
67961847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
68061847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
68161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
68261847f8eSopenharmony_ci   *     2. Incorrect parameter types.
68361847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
68461847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
68561847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
68661847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
68761847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
68861847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
68961847f8eSopenharmony_ci   * @since 8
69061847f8eSopenharmony_ci   */
69161847f8eSopenharmony_ci  function getMEID(slotId?: number): Promise<string>;
69261847f8eSopenharmony_ci
69361847f8eSopenharmony_ci  /**
69461847f8eSopenharmony_ci   * Obtains the MEID of a specified card slot of the device.
69561847f8eSopenharmony_ci   *
69661847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
69761847f8eSopenharmony_ci   * @param { AsyncCallback<string> } callback - Indicates the callback for getting the MEID.
69861847f8eSopenharmony_ci   * Returns an empty string if the MEID does not exist.
69961847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
70061847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
70161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
70261847f8eSopenharmony_ci   *     2. Incorrect parameter types.
70361847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
70461847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
70561847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
70661847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
70761847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
70861847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
70961847f8eSopenharmony_ci   * @since 8
71061847f8eSopenharmony_ci   */
71161847f8eSopenharmony_ci  function getMEID(callback: AsyncCallback<string>): void;
71261847f8eSopenharmony_ci
71361847f8eSopenharmony_ci  /**
71461847f8eSopenharmony_ci   * Obtains the unique device ID of a specified card slot of the device.
71561847f8eSopenharmony_ci   *
71661847f8eSopenharmony_ci   * If the device is registered with a 3GPP-compliant network, the international mobile equipment identity
71761847f8eSopenharmony_ci   * (IMEI) is returned. If the device is registered with a 3GPP2-compliant network, the mobile equipment identifier
71861847f8eSopenharmony_ci   * (MEID) is returned.
71961847f8eSopenharmony_ci   *
72061847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
72161847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
72261847f8eSopenharmony_ci   * index number supported by the device.
72361847f8eSopenharmony_ci   * @param { AsyncCallback<string> } callback - Indicates the callback for getting the unique device ID.
72461847f8eSopenharmony_ci   * Returns an empty string if the unique device ID does not exist.
72561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
72661847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
72761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
72861847f8eSopenharmony_ci   *     2. Incorrect parameter types.
72961847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
73061847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
73161847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
73261847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
73361847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
73461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
73561847f8eSopenharmony_ci   * @since 8
73661847f8eSopenharmony_ci   */
73761847f8eSopenharmony_ci  function getUniqueDeviceId(slotId: number, callback: AsyncCallback<string>): void;
73861847f8eSopenharmony_ci
73961847f8eSopenharmony_ci  /**
74061847f8eSopenharmony_ci   * Obtains the unique device ID of a specified card slot of the device.
74161847f8eSopenharmony_ci   *
74261847f8eSopenharmony_ci   * If the device is registered with a 3GPP-compliant network, the international mobile equipment identity
74361847f8eSopenharmony_ci   * (IMEI) is returned. If the device is registered with a 3GPP2-compliant network, the mobile equipment identifier
74461847f8eSopenharmony_ci   * (MEID) is returned.
74561847f8eSopenharmony_ci   *
74661847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
74761847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
74861847f8eSopenharmony_ci   * index number supported by the device.
74961847f8eSopenharmony_ci   * @returns { Promise<string> } Returns the unique device ID.
75061847f8eSopenharmony_ci   * Returns an empty string if the unique device ID does not exist.
75161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
75261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
75361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
75461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
75561847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
75661847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
75761847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
75861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
75961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
76061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
76161847f8eSopenharmony_ci   * @since 8
76261847f8eSopenharmony_ci   */
76361847f8eSopenharmony_ci  function getUniqueDeviceId(slotId?: number): Promise<string>;
76461847f8eSopenharmony_ci
76561847f8eSopenharmony_ci  /**
76661847f8eSopenharmony_ci   * Obtains the unique device ID of a specified card slot of the device.
76761847f8eSopenharmony_ci   *
76861847f8eSopenharmony_ci   * If the device is registered with a 3GPP-compliant network, the international mobile equipment identity
76961847f8eSopenharmony_ci   * (IMEI) is returned. If the device is registered with a 3GPP2-compliant network, the mobile equipment identifier
77061847f8eSopenharmony_ci   * (MEID) is returned.
77161847f8eSopenharmony_ci   *
77261847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
77361847f8eSopenharmony_ci   * @param { AsyncCallback<string> } callback - Indicates the callback for getting the unique device ID.
77461847f8eSopenharmony_ci   * Returns an empty string if the unique device ID does not exist.
77561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
77661847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
77761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
77861847f8eSopenharmony_ci   *     2. Incorrect parameter types.
77961847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
78061847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
78161847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
78261847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
78361847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
78461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
78561847f8eSopenharmony_ci   * @since 8
78661847f8eSopenharmony_ci   */
78761847f8eSopenharmony_ci  function getUniqueDeviceId(callback: AsyncCallback<string>): void;
78861847f8eSopenharmony_ci
78961847f8eSopenharmony_ci  /**
79061847f8eSopenharmony_ci   * Obtains the index number of the card slot where the primary card is located if multiple SIM cards are inserted.
79161847f8eSopenharmony_ci   *
79261847f8eSopenharmony_ci   * The primary card is the SIM card inserted in the card slot that uses data services by default.
79361847f8eSopenharmony_ci   *
79461847f8eSopenharmony_ci   * @param { AsyncCallback<number> } callback - Indicates the callback for getting the index number of
79561847f8eSopenharmony_ci   * the primary card slot.
79661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
79761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
79861847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
79961847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
80061847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
80161847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
80261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
80361847f8eSopenharmony_ci   * @since 7
80461847f8eSopenharmony_ci   */
80561847f8eSopenharmony_ci  function getPrimarySlotId(callback: AsyncCallback<number>): void;
80661847f8eSopenharmony_ci
80761847f8eSopenharmony_ci  /**
80861847f8eSopenharmony_ci   * Obtains the index number of the card slot where the primary card is located if multiple SIM cards are inserted.
80961847f8eSopenharmony_ci   *
81061847f8eSopenharmony_ci   * The primary card is the SIM card inserted in the card slot that uses data services by default.
81161847f8eSopenharmony_ci   *
81261847f8eSopenharmony_ci   * @returns { Promise<number> } Returns the index number of the primary card slot.
81361847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
81461847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
81561847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
81661847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
81761847f8eSopenharmony_ci   * @since 7
81861847f8eSopenharmony_ci   */
81961847f8eSopenharmony_ci  function getPrimarySlotId(): Promise<number>;
82061847f8eSopenharmony_ci
82161847f8eSopenharmony_ci  /**
82261847f8eSopenharmony_ci   * Set the index number of the main SIM card slot.
82361847f8eSopenharmony_ci   *
82461847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
82561847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
82661847f8eSopenharmony_ci   * index number supported by the device.
82761847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of setPrimarySlotId.
82861847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
82961847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
83061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
83161847f8eSopenharmony_ci   *     2. Incorrect parameter types.
83261847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
83361847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
83461847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
83561847f8eSopenharmony_ci   * @throws { BusinessError } 8300004 - No SIM card found.
83661847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
83761847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
83861847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
83961847f8eSopenharmony_ci   * @since 8
84061847f8eSopenharmony_ci   */
84161847f8eSopenharmony_ci  function setPrimarySlotId(slotId: number, callback: AsyncCallback<void>): void;
84261847f8eSopenharmony_ci
84361847f8eSopenharmony_ci  /**
84461847f8eSopenharmony_ci   * Set the index number of the main SIM card slot.
84561847f8eSopenharmony_ci   *
84661847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
84761847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
84861847f8eSopenharmony_ci   * index number supported by the device.
84961847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the setPrimarySlotId.
85061847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
85161847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
85261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
85361847f8eSopenharmony_ci   *     2. Incorrect parameter types.
85461847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
85561847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
85661847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
85761847f8eSopenharmony_ci   * @throws { BusinessError } 8300004 - No SIM card found.
85861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
85961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
86061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
86161847f8eSopenharmony_ci   * @since 8
86261847f8eSopenharmony_ci   */
86361847f8eSopenharmony_ci  function setPrimarySlotId(slotId: number): Promise<void>;
86461847f8eSopenharmony_ci
86561847f8eSopenharmony_ci  /**
86661847f8eSopenharmony_ci   * Obtains the list of signal strength information of the registered network corresponding to a specified SIM card.
86761847f8eSopenharmony_ci   *
86861847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
86961847f8eSopenharmony_ci   * index number supported by the device.
87061847f8eSopenharmony_ci   * @param { AsyncCallback<Array<SignalInformation>> } callback - Indicates the callback for getting
87161847f8eSopenharmony_ci   * the instance list of the child classes derived from {@link SignalInformation}.
87261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
87361847f8eSopenharmony_ci   *     2. Incorrect parameter types.
87461847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
87561847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
87661847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
87761847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
87861847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
87961847f8eSopenharmony_ci   * @since 7
88061847f8eSopenharmony_ci   */
88161847f8eSopenharmony_ci  function getSignalInformation(slotId: number, callback: AsyncCallback<Array<SignalInformation>>): void;
88261847f8eSopenharmony_ci
88361847f8eSopenharmony_ci  /**
88461847f8eSopenharmony_ci   * Obtains the list of signal strength information of the registered network corresponding to a specified SIM card.
88561847f8eSopenharmony_ci   *
88661847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
88761847f8eSopenharmony_ci   * index number supported by the device.
88861847f8eSopenharmony_ci   * @returns { Promise<Array<SignalInformation>> } Returns the callback for getting the instance list of
88961847f8eSopenharmony_ci   * the child classes derived from {@link SignalInformation}.
89061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
89161847f8eSopenharmony_ci   *     2. Incorrect parameter types.
89261847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
89361847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
89461847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
89561847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
89661847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
89761847f8eSopenharmony_ci   * @since 7
89861847f8eSopenharmony_ci   */
89961847f8eSopenharmony_ci  function getSignalInformation(slotId: number): Promise<Array<SignalInformation>>;
90061847f8eSopenharmony_ci
90161847f8eSopenharmony_ci  /**
90261847f8eSopenharmony_ci   * Obtains the list of signal strength information of the registered network corresponding to a specified SIM card.
90361847f8eSopenharmony_ci   *
90461847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum
90561847f8eSopenharmony_ci   * card slots supported by the device.
90661847f8eSopenharmony_ci   * @returns { Array<SignalInformation> } Returns the callback for getting the instance list of
90761847f8eSopenharmony_ci   * the child classes derived from {@link SignalInformation}.
90861847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
90961847f8eSopenharmony_ci   * @since 10
91061847f8eSopenharmony_ci   */
91161847f8eSopenharmony_ci  function getSignalInformationSync(slotId: number): Array<SignalInformation>;
91261847f8eSopenharmony_ci
91361847f8eSopenharmony_ci  /**
91461847f8eSopenharmony_ci   * Checks whether the device supports 5G New Radio (NR).
91561847f8eSopenharmony_ci   *
91661847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if the device supports 5G NR; returns {@code false} otherwise.
91761847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
91861847f8eSopenharmony_ci   * @since 7
91961847f8eSopenharmony_ci   * @deprecated since 9
92061847f8eSopenharmony_ci   * @useinstead telephony.radio#isNRSupported
92161847f8eSopenharmony_ci   */
92261847f8eSopenharmony_ci  function isNrSupported(): boolean;
92361847f8eSopenharmony_ci
92461847f8eSopenharmony_ci  /**
92561847f8eSopenharmony_ci   * Checks whether the device supports 5G New Radio (NR) by according card slot.
92661847f8eSopenharmony_ci   *
92761847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
92861847f8eSopenharmony_ci   * index number supported by the device.
92961847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if the device supports 5G NR; returns {@code false} otherwise.
93061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
93161847f8eSopenharmony_ci   * @since 8
93261847f8eSopenharmony_ci   * @deprecated since 9
93361847f8eSopenharmony_ci   * @useinstead telephony.radio#isNRSupported
93461847f8eSopenharmony_ci   */
93561847f8eSopenharmony_ci  function isNrSupported(slotId: number): boolean;
93661847f8eSopenharmony_ci
93761847f8eSopenharmony_ci  /**
93861847f8eSopenharmony_ci   * Checks whether the device supports 5G New Radio (NR).
93961847f8eSopenharmony_ci   *
94061847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if the device supports 5G NR; returns {@code false} otherwise.
94161847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
94261847f8eSopenharmony_ci   * @since 9
94361847f8eSopenharmony_ci   */
94461847f8eSopenharmony_ci  function isNRSupported(): boolean;
94561847f8eSopenharmony_ci
94661847f8eSopenharmony_ci  /**
94761847f8eSopenharmony_ci   * Checks whether the device supports 5G New Radio (NR) by according card slot.
94861847f8eSopenharmony_ci   *
94961847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
95061847f8eSopenharmony_ci   * index number supported by the device.
95161847f8eSopenharmony_ci   * @returns { boolean } Returns {@code true} if the device supports 5G NR; returns {@code false} otherwise.
95261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
95361847f8eSopenharmony_ci   * @since 9
95461847f8eSopenharmony_ci   */
95561847f8eSopenharmony_ci  function isNRSupported(slotId: number): boolean;
95661847f8eSopenharmony_ci
95761847f8eSopenharmony_ci  /**
95861847f8eSopenharmony_ci   * Checks whether the radio service is enabled.
95961847f8eSopenharmony_ci   *
96061847f8eSopenharmony_ci   * @permission ohos.permission.GET_NETWORK_INFO
96161847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
96261847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
96361847f8eSopenharmony_ci   * @param { AsyncCallback<boolean> } callback - Returns {@code true} If the radio service is enabled.
96461847f8eSopenharmony_ci   * Returns {@code false} otherwise.
96561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
96661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
96761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
96861847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
96961847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
97061847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
97161847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
97261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
97361847f8eSopenharmony_ci   * @since 7
97461847f8eSopenharmony_ci   */
97561847f8eSopenharmony_ci  function isRadioOn(slotId: number, callback: AsyncCallback<boolean>): void;
97661847f8eSopenharmony_ci
97761847f8eSopenharmony_ci  /**
97861847f8eSopenharmony_ci   * Checks whether the radio service is enabled.
97961847f8eSopenharmony_ci   *
98061847f8eSopenharmony_ci   * @permission ohos.permission.GET_NETWORK_INFO
98161847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
98261847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
98361847f8eSopenharmony_ci   * @returns { Promise<boolean> } Returns {@code true} If the radio service is enabled; returns {@code false} otherwise.
98461847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
98561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
98661847f8eSopenharmony_ci   *     2. Incorrect parameter types.
98761847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
98861847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
98961847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
99061847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
99161847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
99261847f8eSopenharmony_ci   * @since 7
99361847f8eSopenharmony_ci   */
99461847f8eSopenharmony_ci  function isRadioOn(slotId?: number): Promise<boolean>;
99561847f8eSopenharmony_ci
99661847f8eSopenharmony_ci  /**
99761847f8eSopenharmony_ci   * Checks whether the radio service is enabled.
99861847f8eSopenharmony_ci   *
99961847f8eSopenharmony_ci   * @permission ohos.permission.GET_NETWORK_INFO
100061847f8eSopenharmony_ci   * @param { AsyncCallback<boolean> } callback - Returns {@code true} If the radio service is enabled.
100161847f8eSopenharmony_ci   * Returns {@code false} otherwise.
100261847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
100361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
100461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
100561847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
100661847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
100761847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
100861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
100961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
101061847f8eSopenharmony_ci   * @since 7
101161847f8eSopenharmony_ci   */
101261847f8eSopenharmony_ci  function isRadioOn(callback: AsyncCallback<boolean>): void;
101361847f8eSopenharmony_ci
101461847f8eSopenharmony_ci  /**
101561847f8eSopenharmony_ci   * Turn on the radio service.
101661847f8eSopenharmony_ci   *
101761847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
101861847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
101961847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
102061847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of turnOnRadio.
102161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
102261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
102361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
102461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
102561847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
102661847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
102761847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
102861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
102961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
103061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
103161847f8eSopenharmony_ci   * @since 7
103261847f8eSopenharmony_ci   */
103361847f8eSopenharmony_ci  function turnOnRadio(slotId: number, callback: AsyncCallback<void>): void;
103461847f8eSopenharmony_ci
103561847f8eSopenharmony_ci  /**
103661847f8eSopenharmony_ci   * Turn on the radio service.
103761847f8eSopenharmony_ci   *
103861847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
103961847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
104061847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
104161847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the turnOnRadio.
104261847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
104361847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
104461847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
104561847f8eSopenharmony_ci   *     2. Incorrect parameter types.
104661847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
104761847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
104861847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
104961847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
105061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
105161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
105261847f8eSopenharmony_ci   * @since 7
105361847f8eSopenharmony_ci   */
105461847f8eSopenharmony_ci  function turnOnRadio(slotId?: number): Promise<void>;
105561847f8eSopenharmony_ci
105661847f8eSopenharmony_ci  /**
105761847f8eSopenharmony_ci   * Turn on the radio service.
105861847f8eSopenharmony_ci   *
105961847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
106061847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of turnOnRadio.
106161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
106261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
106361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
106461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
106561847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
106661847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
106761847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
106861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
106961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
107061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
107161847f8eSopenharmony_ci   * @since 7
107261847f8eSopenharmony_ci   */
107361847f8eSopenharmony_ci  function turnOnRadio(callback: AsyncCallback<void>): void;
107461847f8eSopenharmony_ci
107561847f8eSopenharmony_ci  /**
107661847f8eSopenharmony_ci   * Turn off the radio service.
107761847f8eSopenharmony_ci   *
107861847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
107961847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
108061847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
108161847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of turnOffRadio.
108261847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
108361847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
108461847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
108561847f8eSopenharmony_ci   *     2. Incorrect parameter types.
108661847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
108761847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
108861847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
108961847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
109061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
109161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
109261847f8eSopenharmony_ci   * @since 7
109361847f8eSopenharmony_ci   */
109461847f8eSopenharmony_ci  function turnOffRadio(slotId: number, callback: AsyncCallback<void>): void;
109561847f8eSopenharmony_ci
109661847f8eSopenharmony_ci  /**
109761847f8eSopenharmony_ci   * Turn off the radio service.
109861847f8eSopenharmony_ci   *
109961847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
110061847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
110161847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
110261847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the turnOffRadio.
110361847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
110461847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
110561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
110661847f8eSopenharmony_ci   *     2. Incorrect parameter types.
110761847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
110861847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
110961847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
111061847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
111161847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
111261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
111361847f8eSopenharmony_ci   * @since 7
111461847f8eSopenharmony_ci   */
111561847f8eSopenharmony_ci  function turnOffRadio(slotId?: number): Promise<void>;
111661847f8eSopenharmony_ci
111761847f8eSopenharmony_ci  /**
111861847f8eSopenharmony_ci   * Turn off the radio service.
111961847f8eSopenharmony_ci   *
112061847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
112161847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of turnOffRadio.
112261847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
112361847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
112461847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
112561847f8eSopenharmony_ci   *     2. Incorrect parameter types.
112661847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
112761847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
112861847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
112961847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
113061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
113161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
113261847f8eSopenharmony_ci   * @since 7
113361847f8eSopenharmony_ci   */
113461847f8eSopenharmony_ci  function turnOffRadio(callback: AsyncCallback<void>): void;
113561847f8eSopenharmony_ci
113661847f8eSopenharmony_ci  /**
113761847f8eSopenharmony_ci   * Get the operator name of the specified SIM card slot.
113861847f8eSopenharmony_ci   *
113961847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
114061847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
114161847f8eSopenharmony_ci   * @param { AsyncCallback<string> } callback - Indicates the callback for getting the operator name.
114261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
114361847f8eSopenharmony_ci   *     2. Incorrect parameter types.
114461847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
114561847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
114661847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
114761847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
114861847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
114961847f8eSopenharmony_ci   * @since 7
115061847f8eSopenharmony_ci   */
115161847f8eSopenharmony_ci  function getOperatorName(slotId: number, callback: AsyncCallback<string>): void;
115261847f8eSopenharmony_ci
115361847f8eSopenharmony_ci  /**
115461847f8eSopenharmony_ci   * Get the operator name of the specified SIM card slot.
115561847f8eSopenharmony_ci   *
115661847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
115761847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
115861847f8eSopenharmony_ci   * @returns { Promise<string> } Returns the operator name.
115961847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
116061847f8eSopenharmony_ci   *     2. Incorrect parameter types.
116161847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
116261847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
116361847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
116461847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
116561847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
116661847f8eSopenharmony_ci   * @since 7
116761847f8eSopenharmony_ci   */
116861847f8eSopenharmony_ci  function getOperatorName(slotId: number): Promise<string>;
116961847f8eSopenharmony_ci
117061847f8eSopenharmony_ci  /**
117161847f8eSopenharmony_ci   * Get the operator name of the specified SIM card slot.
117261847f8eSopenharmony_ci   *
117361847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
117461847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
117561847f8eSopenharmony_ci   * @returns { string } Returns the operator name.
117661847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
117761847f8eSopenharmony_ci   * @since 10
117861847f8eSopenharmony_ci   */
117961847f8eSopenharmony_ci  function getOperatorNameSync(slotId: number): string;
118061847f8eSopenharmony_ci
118161847f8eSopenharmony_ci  /**
118261847f8eSopenharmony_ci   * Set the preferred network for the specified SIM card slot.
118361847f8eSopenharmony_ci   *
118461847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
118561847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
118661847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
118761847f8eSopenharmony_ci   * @param { PreferredNetworkMode } networkMode - Indicates that you want to set the preferred network mode.
118861847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of setPreferredNetwork.
118961847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
119061847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
119161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
119261847f8eSopenharmony_ci   *     2. Incorrect parameter types.
119361847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
119461847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
119561847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
119661847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
119761847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
119861847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
119961847f8eSopenharmony_ci   * @since 8
120061847f8eSopenharmony_ci   */
120161847f8eSopenharmony_ci  function setPreferredNetwork(slotId: number, networkMode: PreferredNetworkMode, callback: AsyncCallback<void>): void;
120261847f8eSopenharmony_ci
120361847f8eSopenharmony_ci  /**
120461847f8eSopenharmony_ci   * Set the preferred network for the specified SIM card slot.
120561847f8eSopenharmony_ci   *
120661847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
120761847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
120861847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
120961847f8eSopenharmony_ci   * @param { PreferredNetworkMode } networkMode - Indicates that you want to set the preferred network mode.
121061847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the setPreferredNetwork.
121161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
121261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
121361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
121461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
121561847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
121661847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
121761847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
121861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
121961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
122061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
122161847f8eSopenharmony_ci   * @since 8
122261847f8eSopenharmony_ci   */
122361847f8eSopenharmony_ci  function setPreferredNetwork(slotId: number, networkMode: PreferredNetworkMode): Promise<void>;
122461847f8eSopenharmony_ci
122561847f8eSopenharmony_ci  /**
122661847f8eSopenharmony_ci   * Get the preferred network for the specified SIM card slot.
122761847f8eSopenharmony_ci   *
122861847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
122961847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
123061847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
123161847f8eSopenharmony_ci   * @param { AsyncCallback<PreferredNetworkMode> } callback - Indicates the callback for getting
123261847f8eSopenharmony_ci   * the preferred network mode to obtain.
123361847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
123461847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
123561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
123661847f8eSopenharmony_ci   *     2. Incorrect parameter types.
123761847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
123861847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
123961847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
124061847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
124161847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
124261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
124361847f8eSopenharmony_ci   * @since 8
124461847f8eSopenharmony_ci   */
124561847f8eSopenharmony_ci  function getPreferredNetwork(slotId: number, callback: AsyncCallback<PreferredNetworkMode>): void;
124661847f8eSopenharmony_ci
124761847f8eSopenharmony_ci  /**
124861847f8eSopenharmony_ci   * Get the preferred network for the specified SIM card slot.
124961847f8eSopenharmony_ci   *
125061847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
125161847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
125261847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
125361847f8eSopenharmony_ci   * @returns { Promise<PreferredNetworkMode> } Returns the callback for getting the preferred network mode to obtain.
125461847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
125561847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
125661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
125761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
125861847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
125961847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
126061847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
126161847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
126261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
126361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
126461847f8eSopenharmony_ci   * @since 8
126561847f8eSopenharmony_ci   */
126661847f8eSopenharmony_ci  function getPreferredNetwork(slotId: number): Promise<PreferredNetworkMode>;
126761847f8eSopenharmony_ci
126861847f8eSopenharmony_ci  /**
126961847f8eSopenharmony_ci   * Get the IMS registration state info of specified IMS service type.
127061847f8eSopenharmony_ci   *
127161847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
127261847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
127361847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
127461847f8eSopenharmony_ci   * @param { ImsServiceType } imsType - Indicates the ims service type of the {@link ImsServiceType}.
127561847f8eSopenharmony_ci   * @param { AsyncCallback<ImsRegInfo> } callback - Indicates an instance of the {@link ImsRegInfo} class.
127661847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
127761847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
127861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
127961847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
128061847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
128161847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
128261847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
128361847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
128461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
128561847f8eSopenharmony_ci   * @since 9
128661847f8eSopenharmony_ci   */
128761847f8eSopenharmony_ci  function getImsRegInfo(slotId: number, imsType: ImsServiceType, callback: AsyncCallback<ImsRegInfo>): void;
128861847f8eSopenharmony_ci
128961847f8eSopenharmony_ci  /**
129061847f8eSopenharmony_ci   * Get the IMS registration state info of specified IMS service type.
129161847f8eSopenharmony_ci   *
129261847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
129361847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
129461847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
129561847f8eSopenharmony_ci   * @param { ImsServiceType } imsType - Indicates the ims service type of the {@link ImsServiceType}.
129661847f8eSopenharmony_ci   * @returns { Promise<ImsRegInfo> } Returns an instance of the {@link ImsRegInfo} class.
129761847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
129861847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
129961847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
130061847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
130161847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
130261847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
130361847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
130461847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
130561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
130661847f8eSopenharmony_ci   * @since 9
130761847f8eSopenharmony_ci   */
130861847f8eSopenharmony_ci  function getImsRegInfo(slotId: number, imsType: ImsServiceType): Promise<ImsRegInfo>;
130961847f8eSopenharmony_ci
131061847f8eSopenharmony_ci  /**
131161847f8eSopenharmony_ci   * Called when the IMS registration state of specified IMS service type corresponding to
131261847f8eSopenharmony_ci   * a monitored {@code slotId} updates.
131361847f8eSopenharmony_ci   *
131461847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
131561847f8eSopenharmony_ci   * @param { 'imsRegStateChange' } type - Event type. Indicates the imsRegStateChange event to be subscribed to.
131661847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
131761847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
131861847f8eSopenharmony_ci   * @param { ImsServiceType } imsType - Indicates the ims service type of the {@link ImsServiceType}.
131961847f8eSopenharmony_ci   * @param { Callback<ImsRegInfo> } callback - Indicates the callback for getting an instance of
132061847f8eSopenharmony_ci   * the {@link ImsRegInfo} class.
132161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
132261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
132361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
132461847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
132561847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
132661847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
132761847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
132861847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
132961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
133061847f8eSopenharmony_ci   * @since 9
133161847f8eSopenharmony_ci   */
133261847f8eSopenharmony_ci  function on(type: 'imsRegStateChange', slotId: number, imsType: ImsServiceType, callback: Callback<ImsRegInfo>): void;
133361847f8eSopenharmony_ci
133461847f8eSopenharmony_ci  /**
133561847f8eSopenharmony_ci   * Unsubscribe from imsRegStateChange event.
133661847f8eSopenharmony_ci   *
133761847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
133861847f8eSopenharmony_ci   * @param { 'imsRegStateChange' } type - Event type. Indicates the imsRegStateChange event to unsubscribe from.
133961847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
134061847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
134161847f8eSopenharmony_ci   * @param { ImsServiceType } imsType - Indicates the ims service type of the {@link ImsServiceType}.
134261847f8eSopenharmony_ci   * @param { Callback<ImsRegInfo> } callback - Indicates the callback for getting
134361847f8eSopenharmony_ci   * an instance of the {@link ImsRegInfo} class.
134461847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
134561847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
134661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
134761847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
134861847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
134961847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
135061847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
135161847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
135261847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
135361847f8eSopenharmony_ci   * @since 9
135461847f8eSopenharmony_ci   */
135561847f8eSopenharmony_ci  function off(type: 'imsRegStateChange', slotId: number, imsType: ImsServiceType, callback?: Callback<ImsRegInfo>): void;
135661847f8eSopenharmony_ci
135761847f8eSopenharmony_ci  /**
135861847f8eSopenharmony_ci   * Get the version of Baseband.
135961847f8eSopenharmony_ci   *
136061847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
136161847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot index number
136261847f8eSopenharmony_ci   * supported by the device.
136361847f8eSopenharmony_ci   * @param { AsyncCallback<string> } callback - Indicates the callback for getting the baseband version.
136461847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
136561847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
136661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
136761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
136861847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
136961847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
137061847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
137161847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
137261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
137361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
137461847f8eSopenharmony_ci   * @since 10
137561847f8eSopenharmony_ci   */
137661847f8eSopenharmony_ci  function getBasebandVersion(slotId: number, callback: AsyncCallback<string>): void;
137761847f8eSopenharmony_ci
137861847f8eSopenharmony_ci  /**
137961847f8eSopenharmony_ci   * Get the version of Baseband.
138061847f8eSopenharmony_ci   *
138161847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
138261847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot index number
138361847f8eSopenharmony_ci   * supported by the device.
138461847f8eSopenharmony_ci   * @returns { Promise<string> } Returns the baseband version.
138561847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
138661847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
138761847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
138861847f8eSopenharmony_ci   *     2. Incorrect parameter types.
138961847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
139061847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
139161847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
139261847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
139361847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
139461847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
139561847f8eSopenharmony_ci   * @since 10
139661847f8eSopenharmony_ci   */
139761847f8eSopenharmony_ci  function getBasebandVersion(slotId: number): Promise<string>;
139861847f8eSopenharmony_ci
139961847f8eSopenharmony_ci  /**
140061847f8eSopenharmony_ci   * Set the NR option mode.
140161847f8eSopenharmony_ci   *
140261847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
140361847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot index
140461847f8eSopenharmony_ci   * number supported by the device.
140561847f8eSopenharmony_ci   * @param { NROptionMode } mode - Indicates the nr option mode to be set.
140661847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - Indicates the callback for getting the option result.
140761847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
140861847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
140961847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
141061847f8eSopenharmony_ci   *     2. Incorrect parameter types.
141161847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
141261847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
141361847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
141461847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
141561847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
141661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
141761847f8eSopenharmony_ci   * @since 10
141861847f8eSopenharmony_ci   */
141961847f8eSopenharmony_ci  function setNROptionMode(slotId: number, mode: NROptionMode, callback: AsyncCallback<void>): void;
142061847f8eSopenharmony_ci
142161847f8eSopenharmony_ci  /**
142261847f8eSopenharmony_ci   * Set the NR option mode.
142361847f8eSopenharmony_ci   *
142461847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
142561847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot index
142661847f8eSopenharmony_ci   * number supported by the device.
142761847f8eSopenharmony_ci   * @param { NROptionMode } mode - Indicates the nr option mode to be set.
142861847f8eSopenharmony_ci   * @returns { Promise<void> } Returns option result.
142961847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
143061847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
143161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
143261847f8eSopenharmony_ci   *     2. Incorrect parameter types.
143361847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
143461847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
143561847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
143661847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
143761847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
143861847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
143961847f8eSopenharmony_ci   * @since 10
144061847f8eSopenharmony_ci   */
144161847f8eSopenharmony_ci  function setNROptionMode(slotId: number, mode: NROptionMode): Promise<void>;
144261847f8eSopenharmony_ci
144361847f8eSopenharmony_ci  /**
144461847f8eSopenharmony_ci   * Get the option mode of NR.
144561847f8eSopenharmony_ci   *
144661847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
144761847f8eSopenharmony_ci   * index number supported by the device.
144861847f8eSopenharmony_ci   * @param { AsyncCallback<NROptionMode> } callback - Indicates the callback for getting the selection mode of NR.
144961847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
145061847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
145161847f8eSopenharmony_ci   *     2. Incorrect parameter types.
145261847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
145361847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
145461847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
145561847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
145661847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
145761847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
145861847f8eSopenharmony_ci   * @since 10
145961847f8eSopenharmony_ci   */
146061847f8eSopenharmony_ci  function getNROptionMode(slotId: number, callback: AsyncCallback<NROptionMode>): void;
146161847f8eSopenharmony_ci
146261847f8eSopenharmony_ci  /**
146361847f8eSopenharmony_ci   * Get the option mode of NR.
146461847f8eSopenharmony_ci   *
146561847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
146661847f8eSopenharmony_ci   * index number supported by the device.
146761847f8eSopenharmony_ci   * @returns { Promise<NROptionMode> } Returns the selection mode of NR.
146861847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
146961847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
147061847f8eSopenharmony_ci   *     2. Incorrect parameter types.
147161847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
147261847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
147361847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
147461847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
147561847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
147661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
147761847f8eSopenharmony_ci   * @since 10
147861847f8eSopenharmony_ci   */
147961847f8eSopenharmony_ci  function getNROptionMode(slotId: number): Promise<NROptionMode>;
148061847f8eSopenharmony_ci
148161847f8eSopenharmony_ci  /**
148261847f8eSopenharmony_ci   * Set the type and state for the specified network capability.
148361847f8eSopenharmony_ci   *
148461847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
148561847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
148661847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
148761847f8eSopenharmony_ci   * @param { NetworkCapabilityType } type - Indicates the service type of the {@link NetworkCapabilityType}.
148861847f8eSopenharmony_ci   * @param { NetworkCapabilityState } state - Indicates the service ability state of the {@link NetworkCapabilityState}.
148961847f8eSopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of setNetworkCapability.
149061847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
149161847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
149261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
149361847f8eSopenharmony_ci   *     2. Incorrect parameter types.
149461847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
149561847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
149661847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
149761847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
149861847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
149961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
150061847f8eSopenharmony_ci   * @since 10
150161847f8eSopenharmony_ci   */
150261847f8eSopenharmony_ci  function setNetworkCapability(slotId: number, type: NetworkCapabilityType, state: NetworkCapabilityState,
150361847f8eSopenharmony_ci    callback: AsyncCallback<void>): void;
150461847f8eSopenharmony_ci
150561847f8eSopenharmony_ci  /**
150661847f8eSopenharmony_ci   * Set the type and state for the specified network capability.
150761847f8eSopenharmony_ci   *
150861847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
150961847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
151061847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
151161847f8eSopenharmony_ci   * @param { NetworkCapabilityType } type - Indicates the service type of the {@link NetworkCapabilityType}.
151261847f8eSopenharmony_ci   * @param { NetworkCapabilityState } state - Indicates the service ability state of the {@link NetworkCapabilityState}.
151361847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the setNetworkCapability.
151461847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
151561847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
151661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
151761847f8eSopenharmony_ci   *     2. Incorrect parameter types.
151861847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
151961847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
152061847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
152161847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
152261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
152361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
152461847f8eSopenharmony_ci   * @since 10
152561847f8eSopenharmony_ci   */
152661847f8eSopenharmony_ci  function setNetworkCapability(slotId: number, type: NetworkCapabilityType, state: NetworkCapabilityState): Promise<void>;
152761847f8eSopenharmony_ci
152861847f8eSopenharmony_ci  /**
152961847f8eSopenharmony_ci   * Get the network capability state according to the specified capability type.
153061847f8eSopenharmony_ci   *
153161847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
153261847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
153361847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
153461847f8eSopenharmony_ci   * @param { NetworkCapabilityType } type - Indicates the service type of the {@link NetworkCapabilityType}.
153561847f8eSopenharmony_ci   * @param { AsyncCallback<NetworkCapabilityState> } callback - Indicates the callback for getting
153661847f8eSopenharmony_ci   * the network capability state.
153761847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
153861847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
153961847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
154061847f8eSopenharmony_ci   *     2. Incorrect parameter types.
154161847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
154261847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
154361847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
154461847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
154561847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
154661847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
154761847f8eSopenharmony_ci   * @since 10
154861847f8eSopenharmony_ci   */
154961847f8eSopenharmony_ci  function getNetworkCapability(slotId: number, type: NetworkCapabilityType,
155061847f8eSopenharmony_ci    callback: AsyncCallback<NetworkCapabilityState>): void;
155161847f8eSopenharmony_ci
155261847f8eSopenharmony_ci  /**
155361847f8eSopenharmony_ci   * Get the network capability state according to the specified capability type.
155461847f8eSopenharmony_ci   *
155561847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
155661847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
155761847f8eSopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
155861847f8eSopenharmony_ci   * @param { NetworkCapabilityType } type - Indicates the service type of the {@link NetworkCapabilityType}.
155961847f8eSopenharmony_ci   * @returns { Promise<NetworkCapabilityState> } Returns the callback for getting the network capability state.
156061847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
156161847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
156261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
156361847f8eSopenharmony_ci   *     2. Incorrect parameter types.
156461847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
156561847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
156661847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
156761847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
156861847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
156961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
157061847f8eSopenharmony_ci   * @since 10
157161847f8eSopenharmony_ci   */
157261847f8eSopenharmony_ci  function getNetworkCapability(slotId: number, type: NetworkCapabilityType): Promise<NetworkCapabilityState>;
157361847f8eSopenharmony_ci  
157461847f8eSopenharmony_ci  /**
157561847f8eSopenharmony_ci   * Reset all network settings of telephony.
157661847f8eSopenharmony_ci   *
157761847f8eSopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
157861847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot
157961847f8eSopenharmony_ci   * index number supported by the device.
158061847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the factoryReset.
158161847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
158261847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
158361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
158461847f8eSopenharmony_ci   *     2. Incorrect parameter types.
158561847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
158661847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
158761847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
158861847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
158961847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
159061847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
159161847f8eSopenharmony_ci   * @since 11
159261847f8eSopenharmony_ci   */
159361847f8eSopenharmony_ci  function factoryReset(slotId: number): Promise<void>;
159461847f8eSopenharmony_ci
159561847f8eSopenharmony_ci  /**
159661847f8eSopenharmony_ci   * Obtains the software version number of a specified card slot of the device.
159761847f8eSopenharmony_ci   *
159861847f8eSopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
159961847f8eSopenharmony_ci   * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot index number
160061847f8eSopenharmony_ci   * supported by the device.
160161847f8eSopenharmony_ci   * @returns { string } Returns the IMEISV. Returns an empty string if the IMEISV does not exist.
160261847f8eSopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
160361847f8eSopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
160461847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.
160561847f8eSopenharmony_ci   *     2. Incorrect parameter types.
160661847f8eSopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
160761847f8eSopenharmony_ci   * @throws { BusinessError } 8300002 - Service connection failed.
160861847f8eSopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
160961847f8eSopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error.
161061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
161161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
161261847f8eSopenharmony_ci   * @since 12
161361847f8eSopenharmony_ci   */
161461847f8eSopenharmony_ci  function getIMEISV(slotId: number): string;
161561847f8eSopenharmony_ci
161661847f8eSopenharmony_ci  /**
161761847f8eSopenharmony_ci   * Indicates the preferred network.
161861847f8eSopenharmony_ci   *
161961847f8eSopenharmony_ci   * @enum { number }
162061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
162161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
162261847f8eSopenharmony_ci   * @since 8
162361847f8eSopenharmony_ci   */
162461847f8eSopenharmony_ci  export enum PreferredNetworkMode {
162561847f8eSopenharmony_ci    /**
162661847f8eSopenharmony_ci     * Preferred GSM network mode.
162761847f8eSopenharmony_ci     *
162861847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
162961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
163061847f8eSopenharmony_ci     * @since 8
163161847f8eSopenharmony_ci     */
163261847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_GSM = 1,
163361847f8eSopenharmony_ci
163461847f8eSopenharmony_ci    /**
163561847f8eSopenharmony_ci     * Preferred WCDMA network mode.
163661847f8eSopenharmony_ci     *
163761847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
163861847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
163961847f8eSopenharmony_ci     * @since 8
164061847f8eSopenharmony_ci     */
164161847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_WCDMA = 2,
164261847f8eSopenharmony_ci
164361847f8eSopenharmony_ci    /**
164461847f8eSopenharmony_ci     * Preferred LTE mode.
164561847f8eSopenharmony_ci     *
164661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
164761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
164861847f8eSopenharmony_ci     * @since 8
164961847f8eSopenharmony_ci     */
165061847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_LTE = 3,
165161847f8eSopenharmony_ci
165261847f8eSopenharmony_ci    /**
165361847f8eSopenharmony_ci     * Preferred LTE/WCDMA network mode.
165461847f8eSopenharmony_ci     *
165561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
165661847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
165761847f8eSopenharmony_ci     * @since 8
165861847f8eSopenharmony_ci     */
165961847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_LTE_WCDMA = 4,
166061847f8eSopenharmony_ci
166161847f8eSopenharmony_ci    /**
166261847f8eSopenharmony_ci     * Preferred LTE/WCDMA/GSM network mode.
166361847f8eSopenharmony_ci     *
166461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
166561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
166661847f8eSopenharmony_ci     * @since 8
166761847f8eSopenharmony_ci     */
166861847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_LTE_WCDMA_GSM = 5,
166961847f8eSopenharmony_ci
167061847f8eSopenharmony_ci    /**
167161847f8eSopenharmony_ci     * Preferred WCDMA/GSM network mode.
167261847f8eSopenharmony_ci     *
167361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
167461847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
167561847f8eSopenharmony_ci     * @since 8
167661847f8eSopenharmony_ci     */
167761847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_WCDMA_GSM = 6,
167861847f8eSopenharmony_ci
167961847f8eSopenharmony_ci    /**
168061847f8eSopenharmony_ci     * Preferred CDMA network mode.
168161847f8eSopenharmony_ci     *
168261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
168361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
168461847f8eSopenharmony_ci     * @since 8
168561847f8eSopenharmony_ci     */
168661847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_CDMA = 7,
168761847f8eSopenharmony_ci
168861847f8eSopenharmony_ci    /**
168961847f8eSopenharmony_ci     * Preferred EVDO network mode.
169061847f8eSopenharmony_ci     *
169161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
169261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
169361847f8eSopenharmony_ci     * @since 8
169461847f8eSopenharmony_ci     */
169561847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_EVDO = 8,
169661847f8eSopenharmony_ci
169761847f8eSopenharmony_ci    /**
169861847f8eSopenharmony_ci     * Preferred EVDO/CDMA network mode.
169961847f8eSopenharmony_ci     *
170061847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
170161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
170261847f8eSopenharmony_ci     * @since 8
170361847f8eSopenharmony_ci     */
170461847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_EVDO_CDMA = 9,
170561847f8eSopenharmony_ci
170661847f8eSopenharmony_ci    /**
170761847f8eSopenharmony_ci     * Preferred WCDMA/GSM/EVDO/CDMA network mode.
170861847f8eSopenharmony_ci     *
170961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
171061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
171161847f8eSopenharmony_ci     * @since 8
171261847f8eSopenharmony_ci     */
171361847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_WCDMA_GSM_EVDO_CDMA = 10,
171461847f8eSopenharmony_ci
171561847f8eSopenharmony_ci    /**
171661847f8eSopenharmony_ci     * Preferred LTE/EVDO/CDMA network mode.
171761847f8eSopenharmony_ci     *
171861847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
171961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
172061847f8eSopenharmony_ci     * @since 8
172161847f8eSopenharmony_ci     */
172261847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_LTE_EVDO_CDMA = 11,
172361847f8eSopenharmony_ci
172461847f8eSopenharmony_ci    /**
172561847f8eSopenharmony_ci     * Preferred LTE/WCDMA/GSM/EVDO/CDMA network mode.
172661847f8eSopenharmony_ci     *
172761847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
172861847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
172961847f8eSopenharmony_ci     * @since 8
173061847f8eSopenharmony_ci     */
173161847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_LTE_WCDMA_GSM_EVDO_CDMA = 12,
173261847f8eSopenharmony_ci
173361847f8eSopenharmony_ci    /**
173461847f8eSopenharmony_ci     * Preferred TDSCDMA network mode.
173561847f8eSopenharmony_ci     *
173661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
173761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
173861847f8eSopenharmony_ci     * @since 8
173961847f8eSopenharmony_ci     */
174061847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_TDSCDMA = 13,
174161847f8eSopenharmony_ci
174261847f8eSopenharmony_ci    /**
174361847f8eSopenharmony_ci     * Preferred TDSCDMA/GSM network mode.
174461847f8eSopenharmony_ci     *
174561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
174661847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
174761847f8eSopenharmony_ci     * @since 8
174861847f8eSopenharmony_ci     */
174961847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_TDSCDMA_GSM = 14,
175061847f8eSopenharmony_ci
175161847f8eSopenharmony_ci    /**
175261847f8eSopenharmony_ci     * Preferred TDSCDMA/WCDMA network mode.
175361847f8eSopenharmony_ci     *
175461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
175561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
175661847f8eSopenharmony_ci     * @since 8
175761847f8eSopenharmony_ci     */
175861847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_TDSCDMA_WCDMA = 15,
175961847f8eSopenharmony_ci
176061847f8eSopenharmony_ci    /**
176161847f8eSopenharmony_ci     * Preferred TDSCDMA/WCDMA/GSM network mode.
176261847f8eSopenharmony_ci     *
176361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
176461847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
176561847f8eSopenharmony_ci     * @since 8
176661847f8eSopenharmony_ci     */
176761847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_TDSCDMA_WCDMA_GSM = 16,
176861847f8eSopenharmony_ci
176961847f8eSopenharmony_ci    /**
177061847f8eSopenharmony_ci     * Preferred LTE/TDSCDMA network mode.
177161847f8eSopenharmony_ci     *
177261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
177361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
177461847f8eSopenharmony_ci     * @since 8
177561847f8eSopenharmony_ci     */
177661847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_LTE_TDSCDMA = 17,
177761847f8eSopenharmony_ci
177861847f8eSopenharmony_ci    /**
177961847f8eSopenharmony_ci     * Preferred LTE/TDSCDMA/GSM network mode.
178061847f8eSopenharmony_ci     *
178161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
178261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
178361847f8eSopenharmony_ci     * @since 8
178461847f8eSopenharmony_ci     */
178561847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_LTE_TDSCDMA_GSM = 18,
178661847f8eSopenharmony_ci
178761847f8eSopenharmony_ci    /**
178861847f8eSopenharmony_ci     * Preferred LTE/TDSCDMA/WCDMA network mode.
178961847f8eSopenharmony_ci     *
179061847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
179161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
179261847f8eSopenharmony_ci     * @since 8
179361847f8eSopenharmony_ci     */
179461847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_LTE_TDSCDMA_WCDMA = 19,
179561847f8eSopenharmony_ci
179661847f8eSopenharmony_ci    /**
179761847f8eSopenharmony_ci     * Preferred LTE/TDSCDMA/WCDMA/GSM network mode.
179861847f8eSopenharmony_ci     *
179961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
180061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
180161847f8eSopenharmony_ci     * @since 8
180261847f8eSopenharmony_ci     */
180361847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_LTE_TDSCDMA_WCDMA_GSM = 20,
180461847f8eSopenharmony_ci
180561847f8eSopenharmony_ci    /**
180661847f8eSopenharmony_ci     * Preferred TDSCDMA/WCDMA/GSM/EVDO/CDMA network mode.
180761847f8eSopenharmony_ci     *
180861847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
180961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
181061847f8eSopenharmony_ci     * @since 8
181161847f8eSopenharmony_ci     */
181261847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_TDSCDMA_WCDMA_GSM_EVDO_CDMA = 21,
181361847f8eSopenharmony_ci
181461847f8eSopenharmony_ci    /**
181561847f8eSopenharmony_ci     * Preferred LTE/TDSCDMA/WCDMA/GSM/EVDO/CDMA network mode.
181661847f8eSopenharmony_ci     *
181761847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
181861847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
181961847f8eSopenharmony_ci     * @since 8
182061847f8eSopenharmony_ci     */
182161847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_LTE_TDSCDMA_WCDMA_GSM_EVDO_CDMA = 22,
182261847f8eSopenharmony_ci
182361847f8eSopenharmony_ci    /**
182461847f8eSopenharmony_ci     * Preferred NR network mode.
182561847f8eSopenharmony_ci     *
182661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
182761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
182861847f8eSopenharmony_ci     * @since 8
182961847f8eSopenharmony_ci     */
183061847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_NR = 31,
183161847f8eSopenharmony_ci
183261847f8eSopenharmony_ci    /**
183361847f8eSopenharmony_ci     * Preferred NR/LTE network mode.
183461847f8eSopenharmony_ci     *
183561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
183661847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
183761847f8eSopenharmony_ci     * @since 8
183861847f8eSopenharmony_ci     */
183961847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_NR_LTE = 32,
184061847f8eSopenharmony_ci
184161847f8eSopenharmony_ci    /**
184261847f8eSopenharmony_ci     * Preferred NR/LTE/WCDMA network mode.
184361847f8eSopenharmony_ci     *
184461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
184561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
184661847f8eSopenharmony_ci     * @since 8
184761847f8eSopenharmony_ci     */
184861847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_NR_LTE_WCDMA = 33,
184961847f8eSopenharmony_ci
185061847f8eSopenharmony_ci    /**
185161847f8eSopenharmony_ci     * Preferred NR/LTE/WCDMA/GSM network mode.
185261847f8eSopenharmony_ci     *
185361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
185461847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
185561847f8eSopenharmony_ci     * @since 8
185661847f8eSopenharmony_ci     */
185761847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_NR_LTE_WCDMA_GSM = 34,
185861847f8eSopenharmony_ci
185961847f8eSopenharmony_ci    /**
186061847f8eSopenharmony_ci     * Preferred NR/LTE/EVDO/CDMA network mode.
186161847f8eSopenharmony_ci     *
186261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
186361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
186461847f8eSopenharmony_ci     * @since 8
186561847f8eSopenharmony_ci     */
186661847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_NR_LTE_EVDO_CDMA = 35,
186761847f8eSopenharmony_ci
186861847f8eSopenharmony_ci    /**
186961847f8eSopenharmony_ci     * Preferred NR/LTE/WCDMA/GSM/EVDO/CDMA network mode.
187061847f8eSopenharmony_ci     *
187161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
187261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
187361847f8eSopenharmony_ci     * @since 8
187461847f8eSopenharmony_ci     */
187561847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_NR_LTE_WCDMA_GSM_EVDO_CDMA = 36,
187661847f8eSopenharmony_ci
187761847f8eSopenharmony_ci    /**
187861847f8eSopenharmony_ci     * Preferred NR/LTE/TDSCDMA network mode.
187961847f8eSopenharmony_ci     *
188061847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
188161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
188261847f8eSopenharmony_ci     * @since 8
188361847f8eSopenharmony_ci     */
188461847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_NR_LTE_TDSCDMA = 37,
188561847f8eSopenharmony_ci
188661847f8eSopenharmony_ci    /**
188761847f8eSopenharmony_ci     * Preferred NR/LTE/TDSCDMA/GSM network mode.
188861847f8eSopenharmony_ci     *
188961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
189061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
189161847f8eSopenharmony_ci     * @since 8
189261847f8eSopenharmony_ci     */
189361847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_NR_LTE_TDSCDMA_GSM = 38,
189461847f8eSopenharmony_ci
189561847f8eSopenharmony_ci    /**
189661847f8eSopenharmony_ci     * Preferred NR/LTE/TDSCDMA/WCDMA network mode.
189761847f8eSopenharmony_ci     *
189861847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
189961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
190061847f8eSopenharmony_ci     * @since 8
190161847f8eSopenharmony_ci     */
190261847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA = 39,
190361847f8eSopenharmony_ci
190461847f8eSopenharmony_ci    /**
190561847f8eSopenharmony_ci     * Preferred NR/LTE/TDSCDMA/WCDMA/GSM network mode.
190661847f8eSopenharmony_ci     *
190761847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
190861847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
190961847f8eSopenharmony_ci     * @since 8
191061847f8eSopenharmony_ci     */
191161847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA_GSM = 40,
191261847f8eSopenharmony_ci
191361847f8eSopenharmony_ci    /**
191461847f8eSopenharmony_ci     * Preferred NR/LTE/TDSCDMA/WCDMA/GSM/EVDO/CDMA network mode.
191561847f8eSopenharmony_ci     *
191661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
191761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
191861847f8eSopenharmony_ci     * @since 8
191961847f8eSopenharmony_ci     */
192061847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA_GSM_EVDO_CDMA = 41,
192161847f8eSopenharmony_ci
192261847f8eSopenharmony_ci    /**
192361847f8eSopenharmony_ci     * Preferred network mode Maximum.
192461847f8eSopenharmony_ci     *
192561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
192661847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
192761847f8eSopenharmony_ci     * @since 8
192861847f8eSopenharmony_ci     */
192961847f8eSopenharmony_ci    PREFERRED_NETWORK_MODE_MAX_VALUE = 99,
193061847f8eSopenharmony_ci  }
193161847f8eSopenharmony_ci
193261847f8eSopenharmony_ci  /**
193361847f8eSopenharmony_ci   * Describes the radio access technology (RAT) of registered network.
193461847f8eSopenharmony_ci   *
193561847f8eSopenharmony_ci   * @interface NetworkRadioTech
193661847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
193761847f8eSopenharmony_ci   * @since 11
193861847f8eSopenharmony_ci   */
193961847f8eSopenharmony_ci  export interface NetworkRadioTech {
194061847f8eSopenharmony_ci    /**
194161847f8eSopenharmony_ci     * Indicates radio access technology (RAT) of packet service (PS) domain.
194261847f8eSopenharmony_ci     *
194361847f8eSopenharmony_ci     * @type { RadioTechnology }
194461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
194561847f8eSopenharmony_ci     * @since 11
194661847f8eSopenharmony_ci     */
194761847f8eSopenharmony_ci    psRadioTech: RadioTechnology;
194861847f8eSopenharmony_ci
194961847f8eSopenharmony_ci    /**
195061847f8eSopenharmony_ci     * Indicates radio access technology (RAT) of circuit service (CS) domain.
195161847f8eSopenharmony_ci     *
195261847f8eSopenharmony_ci     * @type { RadioTechnology }
195361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
195461847f8eSopenharmony_ci     * @since 11
195561847f8eSopenharmony_ci     */
195661847f8eSopenharmony_ci    csRadioTech: RadioTechnology;
195761847f8eSopenharmony_ci  }
195861847f8eSopenharmony_ci
195961847f8eSopenharmony_ci  /**
196061847f8eSopenharmony_ci   * Describes the radio access technology.
196161847f8eSopenharmony_ci   *
196261847f8eSopenharmony_ci   * @enum { number }
196361847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
196461847f8eSopenharmony_ci   * @since 6
196561847f8eSopenharmony_ci   */
196661847f8eSopenharmony_ci  export enum RadioTechnology {
196761847f8eSopenharmony_ci    /**
196861847f8eSopenharmony_ci     * Indicates unknown radio access technology (RAT).
196961847f8eSopenharmony_ci     *
197061847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
197161847f8eSopenharmony_ci     * @since 6
197261847f8eSopenharmony_ci     */
197361847f8eSopenharmony_ci    RADIO_TECHNOLOGY_UNKNOWN = 0,
197461847f8eSopenharmony_ci
197561847f8eSopenharmony_ci    /**
197661847f8eSopenharmony_ci     * Indicates that RAT is global system for mobile communications (GSM), including GSM, general packet
197761847f8eSopenharmony_ci     * radio system (GPRS), and enhanced data rates for GSM evolution (EDGE).
197861847f8eSopenharmony_ci     *
197961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
198061847f8eSopenharmony_ci     * @since 6
198161847f8eSopenharmony_ci     */
198261847f8eSopenharmony_ci    RADIO_TECHNOLOGY_GSM = 1,
198361847f8eSopenharmony_ci
198461847f8eSopenharmony_ci    /**
198561847f8eSopenharmony_ci     * Indicates that RAT is code division multiple access (CDMA), including Interim Standard 95 (IS95) and
198661847f8eSopenharmony_ci     * Single-Carrier Radio Transmission Technology (1xRTT).
198761847f8eSopenharmony_ci     *
198861847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
198961847f8eSopenharmony_ci     * @since 6
199061847f8eSopenharmony_ci     */
199161847f8eSopenharmony_ci    RADIO_TECHNOLOGY_1XRTT = 2,
199261847f8eSopenharmony_ci
199361847f8eSopenharmony_ci    /**
199461847f8eSopenharmony_ci     * Indicates that RAT is wideband code division multiple address (WCDMA).
199561847f8eSopenharmony_ci     *
199661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
199761847f8eSopenharmony_ci     * @since 6
199861847f8eSopenharmony_ci     */
199961847f8eSopenharmony_ci    RADIO_TECHNOLOGY_WCDMA = 3,
200061847f8eSopenharmony_ci
200161847f8eSopenharmony_ci    /**
200261847f8eSopenharmony_ci     * Indicates that RAT is high-speed packet access (HSPA), including HSPA, high-speed downlink packet
200361847f8eSopenharmony_ci     * access (HSDPA), and high-speed uplink packet access (HSUPA).
200461847f8eSopenharmony_ci     *
200561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
200661847f8eSopenharmony_ci     * @since 6
200761847f8eSopenharmony_ci     */
200861847f8eSopenharmony_ci    RADIO_TECHNOLOGY_HSPA = 4,
200961847f8eSopenharmony_ci
201061847f8eSopenharmony_ci    /**
201161847f8eSopenharmony_ci     * Indicates that RAT is evolved high-speed packet access (HSPA+), including HSPA+ and dual-carrier
201261847f8eSopenharmony_ci     * HSPA+ (DC-HSPA+).
201361847f8eSopenharmony_ci     *
201461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
201561847f8eSopenharmony_ci     * @since 6
201661847f8eSopenharmony_ci     */
201761847f8eSopenharmony_ci    RADIO_TECHNOLOGY_HSPAP = 5,
201861847f8eSopenharmony_ci
201961847f8eSopenharmony_ci    /**
202061847f8eSopenharmony_ci     * Indicates that RAT is time division-synchronous code division multiple access (TD-SCDMA).
202161847f8eSopenharmony_ci     *
202261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
202361847f8eSopenharmony_ci     * @since 6
202461847f8eSopenharmony_ci     */
202561847f8eSopenharmony_ci    RADIO_TECHNOLOGY_TD_SCDMA = 6,
202661847f8eSopenharmony_ci
202761847f8eSopenharmony_ci    /**
202861847f8eSopenharmony_ci     * Indicates that RAT is evolution data only (EVDO), including EVDO Rev.0, EVDO Rev.A, and EVDO Rev.B.
202961847f8eSopenharmony_ci     *
203061847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
203161847f8eSopenharmony_ci     * @since 6
203261847f8eSopenharmony_ci     */
203361847f8eSopenharmony_ci    RADIO_TECHNOLOGY_EVDO = 7,
203461847f8eSopenharmony_ci
203561847f8eSopenharmony_ci    /**
203661847f8eSopenharmony_ci     * Indicates that RAT is evolved high rate packet data (EHRPD).
203761847f8eSopenharmony_ci     *
203861847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
203961847f8eSopenharmony_ci     * @since 6
204061847f8eSopenharmony_ci     */
204161847f8eSopenharmony_ci    RADIO_TECHNOLOGY_EHRPD = 8,
204261847f8eSopenharmony_ci
204361847f8eSopenharmony_ci    /**
204461847f8eSopenharmony_ci     * Indicates that RAT is long term evolution (LTE).
204561847f8eSopenharmony_ci     *
204661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
204761847f8eSopenharmony_ci     * @since 6
204861847f8eSopenharmony_ci     */
204961847f8eSopenharmony_ci    RADIO_TECHNOLOGY_LTE = 9,
205061847f8eSopenharmony_ci
205161847f8eSopenharmony_ci    /**
205261847f8eSopenharmony_ci     * Indicates that RAT is LTE carrier aggregation (LTE-CA).
205361847f8eSopenharmony_ci     *
205461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
205561847f8eSopenharmony_ci     * @since 6
205661847f8eSopenharmony_ci     */
205761847f8eSopenharmony_ci    RADIO_TECHNOLOGY_LTE_CA = 10,
205861847f8eSopenharmony_ci
205961847f8eSopenharmony_ci    /**
206061847f8eSopenharmony_ci     * Indicates that RAT is interworking WLAN (I-WLAN).
206161847f8eSopenharmony_ci     *
206261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
206361847f8eSopenharmony_ci     * @since 6
206461847f8eSopenharmony_ci     */
206561847f8eSopenharmony_ci    RADIO_TECHNOLOGY_IWLAN = 11,
206661847f8eSopenharmony_ci
206761847f8eSopenharmony_ci    /**
206861847f8eSopenharmony_ci     * Indicates that RAT is 5G new radio (NR).
206961847f8eSopenharmony_ci     *
207061847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
207161847f8eSopenharmony_ci     * @since 6
207261847f8eSopenharmony_ci     */
207361847f8eSopenharmony_ci    RADIO_TECHNOLOGY_NR = 12
207461847f8eSopenharmony_ci  }
207561847f8eSopenharmony_ci
207661847f8eSopenharmony_ci  /**
207761847f8eSopenharmony_ci   * Returns child class objects specific to the network type.
207861847f8eSopenharmony_ci   *
207961847f8eSopenharmony_ci   * @interface SignalInformation
208061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
208161847f8eSopenharmony_ci   * @since 6
208261847f8eSopenharmony_ci   */
208361847f8eSopenharmony_ci  export interface SignalInformation {
208461847f8eSopenharmony_ci    /**
208561847f8eSopenharmony_ci     * Obtains the network type corresponding to the signal.
208661847f8eSopenharmony_ci     *
208761847f8eSopenharmony_ci     * @type { NetworkType }
208861847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
208961847f8eSopenharmony_ci     * @since 6
209061847f8eSopenharmony_ci     */
209161847f8eSopenharmony_ci    signalType: NetworkType;
209261847f8eSopenharmony_ci
209361847f8eSopenharmony_ci    /**
209461847f8eSopenharmony_ci     * Obtains the signal level of the current network.
209561847f8eSopenharmony_ci     *
209661847f8eSopenharmony_ci     * @type { number }
209761847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
209861847f8eSopenharmony_ci     * @since 6
209961847f8eSopenharmony_ci     */
210061847f8eSopenharmony_ci    signalLevel: number;
210161847f8eSopenharmony_ci
210261847f8eSopenharmony_ci    /**
210361847f8eSopenharmony_ci     * rsrp for LTE and NR; dbm for CDMA and EVDO; rscp for WCDMA; rssi for GSM.
210461847f8eSopenharmony_ci     *
210561847f8eSopenharmony_ci     * @type { number }
210661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
210761847f8eSopenharmony_ci     * @since 9
210861847f8eSopenharmony_ci     */
210961847f8eSopenharmony_ci    dBm: number;
211061847f8eSopenharmony_ci  }
211161847f8eSopenharmony_ci
211261847f8eSopenharmony_ci  /**
211361847f8eSopenharmony_ci   * Describes the network type.
211461847f8eSopenharmony_ci   *
211561847f8eSopenharmony_ci   * @enum { number }
211661847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
211761847f8eSopenharmony_ci   * @since 6
211861847f8eSopenharmony_ci   */
211961847f8eSopenharmony_ci  export enum NetworkType {
212061847f8eSopenharmony_ci    /**
212161847f8eSopenharmony_ci     * Indicates unknown network type.
212261847f8eSopenharmony_ci     *
212361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
212461847f8eSopenharmony_ci     * @since 6
212561847f8eSopenharmony_ci     */
212661847f8eSopenharmony_ci    NETWORK_TYPE_UNKNOWN,
212761847f8eSopenharmony_ci
212861847f8eSopenharmony_ci    /**
212961847f8eSopenharmony_ci     * Indicates that the network type is GSM.
213061847f8eSopenharmony_ci     *
213161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
213261847f8eSopenharmony_ci     * @since 6
213361847f8eSopenharmony_ci     */
213461847f8eSopenharmony_ci    NETWORK_TYPE_GSM,
213561847f8eSopenharmony_ci
213661847f8eSopenharmony_ci    /**
213761847f8eSopenharmony_ci     * Indicates that the network type is CDMA.
213861847f8eSopenharmony_ci     *
213961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
214061847f8eSopenharmony_ci     * @since 6
214161847f8eSopenharmony_ci     */
214261847f8eSopenharmony_ci    NETWORK_TYPE_CDMA,
214361847f8eSopenharmony_ci
214461847f8eSopenharmony_ci    /**
214561847f8eSopenharmony_ci     * Indicates that the network type is WCDMA.
214661847f8eSopenharmony_ci     *
214761847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
214861847f8eSopenharmony_ci     * @since 6
214961847f8eSopenharmony_ci     */
215061847f8eSopenharmony_ci    NETWORK_TYPE_WCDMA,
215161847f8eSopenharmony_ci
215261847f8eSopenharmony_ci    /**
215361847f8eSopenharmony_ci     * Indicates that the network type is TD-SCDMA.
215461847f8eSopenharmony_ci     *
215561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
215661847f8eSopenharmony_ci     * @since 6
215761847f8eSopenharmony_ci     */
215861847f8eSopenharmony_ci    NETWORK_TYPE_TDSCDMA,
215961847f8eSopenharmony_ci
216061847f8eSopenharmony_ci    /**
216161847f8eSopenharmony_ci     * Indicates that the network type is LTE.
216261847f8eSopenharmony_ci     *
216361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
216461847f8eSopenharmony_ci     * @since 6
216561847f8eSopenharmony_ci     */
216661847f8eSopenharmony_ci    NETWORK_TYPE_LTE,
216761847f8eSopenharmony_ci
216861847f8eSopenharmony_ci    /**
216961847f8eSopenharmony_ci     * Indicates that the network type is 5G NR.
217061847f8eSopenharmony_ci     *
217161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
217261847f8eSopenharmony_ci     * @since 6
217361847f8eSopenharmony_ci     */
217461847f8eSopenharmony_ci    NETWORK_TYPE_NR
217561847f8eSopenharmony_ci  }
217661847f8eSopenharmony_ci
217761847f8eSopenharmony_ci  /**
217861847f8eSopenharmony_ci   * Describes the network registration state.
217961847f8eSopenharmony_ci   *
218061847f8eSopenharmony_ci   * @interface NetworkState
218161847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
218261847f8eSopenharmony_ci   * @since 6
218361847f8eSopenharmony_ci   */
218461847f8eSopenharmony_ci  export interface NetworkState {
218561847f8eSopenharmony_ci    /**
218661847f8eSopenharmony_ci     * Obtains the operator name in the long alphanumeric format of the registered network.
218761847f8eSopenharmony_ci     *
218861847f8eSopenharmony_ci     * Returns the operator name in the long alphanumeric format as a string;
218961847f8eSopenharmony_ci     * returns an empty string if no operator name is obtained.
219061847f8eSopenharmony_ci     *
219161847f8eSopenharmony_ci     * @type { string }
219261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
219361847f8eSopenharmony_ci     * @since 6
219461847f8eSopenharmony_ci     */
219561847f8eSopenharmony_ci    longOperatorName: string;
219661847f8eSopenharmony_ci
219761847f8eSopenharmony_ci    /**
219861847f8eSopenharmony_ci     * Obtains the operator name in the short alphanumeric format of the registered network.
219961847f8eSopenharmony_ci     *
220061847f8eSopenharmony_ci     * Returns the operator name in the short alphanumeric format as a string;
220161847f8eSopenharmony_ci     * returns an empty string if no operator name is obtained.
220261847f8eSopenharmony_ci     *
220361847f8eSopenharmony_ci     * @type { string }
220461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
220561847f8eSopenharmony_ci     * @since 6
220661847f8eSopenharmony_ci     */
220761847f8eSopenharmony_ci    shortOperatorName: string;
220861847f8eSopenharmony_ci
220961847f8eSopenharmony_ci    /**
221061847f8eSopenharmony_ci     * Obtains the PLMN code of the registered network.
221161847f8eSopenharmony_ci     *
221261847f8eSopenharmony_ci     * Returns the PLMN code as a string; returns an empty string if no operator name is obtained.
221361847f8eSopenharmony_ci     *
221461847f8eSopenharmony_ci     * @type { string }
221561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
221661847f8eSopenharmony_ci     * @since 6
221761847f8eSopenharmony_ci     */
221861847f8eSopenharmony_ci    plmnNumeric: string;
221961847f8eSopenharmony_ci
222061847f8eSopenharmony_ci    /**
222161847f8eSopenharmony_ci     * Checks whether the device is roaming.
222261847f8eSopenharmony_ci     *
222361847f8eSopenharmony_ci     * @type { boolean }
222461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
222561847f8eSopenharmony_ci     * @since 6
222661847f8eSopenharmony_ci     */
222761847f8eSopenharmony_ci    isRoaming: boolean;
222861847f8eSopenharmony_ci
222961847f8eSopenharmony_ci    /**
223061847f8eSopenharmony_ci     * Obtains the network registration status of the device.
223161847f8eSopenharmony_ci     *
223261847f8eSopenharmony_ci     * @type { RegState }
223361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
223461847f8eSopenharmony_ci     * @since 6
223561847f8eSopenharmony_ci     */
223661847f8eSopenharmony_ci    regState: RegState;
223761847f8eSopenharmony_ci
223861847f8eSopenharmony_ci    /**
223961847f8eSopenharmony_ci     * Obtains the radio Access technology after config conversion.
224061847f8eSopenharmony_ci     *
224161847f8eSopenharmony_ci     * @type { RadioTechnology }
224261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
224361847f8eSopenharmony_ci     * @since 8
224461847f8eSopenharmony_ci     */
224561847f8eSopenharmony_ci    cfgTech: RadioTechnology;
224661847f8eSopenharmony_ci
224761847f8eSopenharmony_ci    /**
224861847f8eSopenharmony_ci     * Obtains the NSA network registration status of the device.
224961847f8eSopenharmony_ci     *
225061847f8eSopenharmony_ci     * Returns the NSA network registration status {@code NsaState}.
225161847f8eSopenharmony_ci     *
225261847f8eSopenharmony_ci     * @type { NsaState }
225361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
225461847f8eSopenharmony_ci     * @since 6
225561847f8eSopenharmony_ci     */
225661847f8eSopenharmony_ci    nsaState: NsaState;
225761847f8eSopenharmony_ci
225861847f8eSopenharmony_ci    /**
225961847f8eSopenharmony_ci     * Obtains the status of CA.
226061847f8eSopenharmony_ci     *
226161847f8eSopenharmony_ci     * Returns {@code true} if CA is actived; returns {@code false} otherwise.
226261847f8eSopenharmony_ci     *
226361847f8eSopenharmony_ci     * @type { boolean }
226461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
226561847f8eSopenharmony_ci     * @since 6
226661847f8eSopenharmony_ci     */
226761847f8eSopenharmony_ci    isCaActive: boolean;
226861847f8eSopenharmony_ci
226961847f8eSopenharmony_ci    /**
227061847f8eSopenharmony_ci     * Checks whether this device is allowed to make emergency calls only.
227161847f8eSopenharmony_ci     *
227261847f8eSopenharmony_ci     * Returns {@code true} if this device is allowed to make emergency calls only;
227361847f8eSopenharmony_ci     * returns {@code false} otherwise.
227461847f8eSopenharmony_ci     *
227561847f8eSopenharmony_ci     * @type { boolean }
227661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
227761847f8eSopenharmony_ci     * @since 6
227861847f8eSopenharmony_ci     */
227961847f8eSopenharmony_ci    isEmergency: boolean;
228061847f8eSopenharmony_ci  }
228161847f8eSopenharmony_ci
228261847f8eSopenharmony_ci  /**
228361847f8eSopenharmony_ci   * Describes the network registration state.
228461847f8eSopenharmony_ci   *
228561847f8eSopenharmony_ci   * @enum { number }
228661847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
228761847f8eSopenharmony_ci   * @since 6
228861847f8eSopenharmony_ci   */
228961847f8eSopenharmony_ci  export enum RegState {
229061847f8eSopenharmony_ci    /**
229161847f8eSopenharmony_ci     * Indicates a state in which a device cannot use any service.
229261847f8eSopenharmony_ci     *
229361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
229461847f8eSopenharmony_ci     * @since 6
229561847f8eSopenharmony_ci     */
229661847f8eSopenharmony_ci    REG_STATE_NO_SERVICE = 0,
229761847f8eSopenharmony_ci
229861847f8eSopenharmony_ci    /**
229961847f8eSopenharmony_ci     * Indicates a state in which a device can use services properly.
230061847f8eSopenharmony_ci     *
230161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
230261847f8eSopenharmony_ci     * @since 6
230361847f8eSopenharmony_ci     */
230461847f8eSopenharmony_ci    REG_STATE_IN_SERVICE = 1,
230561847f8eSopenharmony_ci
230661847f8eSopenharmony_ci    /**
230761847f8eSopenharmony_ci     * Indicates a state in which a device can use only the emergency call service.
230861847f8eSopenharmony_ci     *
230961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
231061847f8eSopenharmony_ci     * @since 6
231161847f8eSopenharmony_ci     */
231261847f8eSopenharmony_ci    REG_STATE_EMERGENCY_CALL_ONLY = 2,
231361847f8eSopenharmony_ci
231461847f8eSopenharmony_ci    /**
231561847f8eSopenharmony_ci     * Indicates that the cellular radio is powered off.
231661847f8eSopenharmony_ci     *
231761847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
231861847f8eSopenharmony_ci     * @since 6
231961847f8eSopenharmony_ci     */
232061847f8eSopenharmony_ci    REG_STATE_POWER_OFF = 3
232161847f8eSopenharmony_ci  }
232261847f8eSopenharmony_ci
232361847f8eSopenharmony_ci  /**
232461847f8eSopenharmony_ci   * Describes the nsa state.
232561847f8eSopenharmony_ci   *
232661847f8eSopenharmony_ci   * @enum { number }
232761847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
232861847f8eSopenharmony_ci   * @since 6
232961847f8eSopenharmony_ci   */
233061847f8eSopenharmony_ci  export enum NsaState {
233161847f8eSopenharmony_ci    /**
233261847f8eSopenharmony_ci     * Indicates that a device is idle under or is connected to an LTE cell that does not support NSA.
233361847f8eSopenharmony_ci     *
233461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
233561847f8eSopenharmony_ci     * @since 6
233661847f8eSopenharmony_ci     */
233761847f8eSopenharmony_ci    NSA_STATE_NOT_SUPPORT = 1,
233861847f8eSopenharmony_ci
233961847f8eSopenharmony_ci    /**
234061847f8eSopenharmony_ci     * Indicates that a device is idle under an LTE cell supporting NSA but not NR coverage detection.
234161847f8eSopenharmony_ci     *
234261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
234361847f8eSopenharmony_ci     * @since 6
234461847f8eSopenharmony_ci     */
234561847f8eSopenharmony_ci    NSA_STATE_NO_DETECT = 2,
234661847f8eSopenharmony_ci
234761847f8eSopenharmony_ci    /**
234861847f8eSopenharmony_ci     * Indicates that a device is connected to an LTE network under an LTE cell
234961847f8eSopenharmony_ci     * that supports NSA and NR coverage detection.
235061847f8eSopenharmony_ci     *
235161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
235261847f8eSopenharmony_ci     * @since 6
235361847f8eSopenharmony_ci     */
235461847f8eSopenharmony_ci    NSA_STATE_CONNECTED_DETECT = 3,
235561847f8eSopenharmony_ci
235661847f8eSopenharmony_ci    /**
235761847f8eSopenharmony_ci     * Indicates that a device is idle under an LTE cell supporting NSA and NR coverage detection.
235861847f8eSopenharmony_ci     *
235961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
236061847f8eSopenharmony_ci     * @since 6
236161847f8eSopenharmony_ci     */
236261847f8eSopenharmony_ci    NSA_STATE_IDLE_DETECT = 4,
236361847f8eSopenharmony_ci
236461847f8eSopenharmony_ci    /**
236561847f8eSopenharmony_ci     * Indicates that a device is connected to an LTE + NR network under an LTE cell that supports NSA.
236661847f8eSopenharmony_ci     *
236761847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
236861847f8eSopenharmony_ci     * @since 6
236961847f8eSopenharmony_ci     */
237061847f8eSopenharmony_ci    NSA_STATE_DUAL_CONNECTED = 5,
237161847f8eSopenharmony_ci
237261847f8eSopenharmony_ci    /**
237361847f8eSopenharmony_ci     * Indicates that a device is idle under or is connected to an NG-RAN cell while being attached to 5GC.
237461847f8eSopenharmony_ci     *
237561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
237661847f8eSopenharmony_ci     * @since 6
237761847f8eSopenharmony_ci     */
237861847f8eSopenharmony_ci    NSA_STATE_SA_ATTACHED = 6
237961847f8eSopenharmony_ci  }
238061847f8eSopenharmony_ci
238161847f8eSopenharmony_ci  /**
238261847f8eSopenharmony_ci   * Obtains current cell information.
238361847f8eSopenharmony_ci   *
238461847f8eSopenharmony_ci   * @interface CellInformation
238561847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
238661847f8eSopenharmony_ci   * @since 8
238761847f8eSopenharmony_ci   */
238861847f8eSopenharmony_ci  export interface CellInformation {
238961847f8eSopenharmony_ci    /**
239061847f8eSopenharmony_ci     * Obtains the network type of the serving cell.
239161847f8eSopenharmony_ci     *
239261847f8eSopenharmony_ci     * An application can call this method to determine the network type that the child class uses.
239361847f8eSopenharmony_ci     *
239461847f8eSopenharmony_ci     * @type { NetworkType }
239561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
239661847f8eSopenharmony_ci     * @since 8
239761847f8eSopenharmony_ci     */
239861847f8eSopenharmony_ci    networkType: NetworkType;
239961847f8eSopenharmony_ci
240061847f8eSopenharmony_ci    /**
240161847f8eSopenharmony_ci     * Obtains the camp-on status of the serving cell.
240261847f8eSopenharmony_ci     *
240361847f8eSopenharmony_ci     * Returns {@code true} if the user equipment (UE) is camped on the cell; returns {@code false} otherwise.
240461847f8eSopenharmony_ci     *
240561847f8eSopenharmony_ci     * @type { boolean }
240661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
240761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
240861847f8eSopenharmony_ci     * @since 8
240961847f8eSopenharmony_ci     */
241061847f8eSopenharmony_ci    isCamped: boolean;
241161847f8eSopenharmony_ci
241261847f8eSopenharmony_ci    /**
241361847f8eSopenharmony_ci     * Obtains the timestamp when the cell information is obtained.
241461847f8eSopenharmony_ci     *
241561847f8eSopenharmony_ci     * Returns a timestamp since boot, in nanoseconds.
241661847f8eSopenharmony_ci     *
241761847f8eSopenharmony_ci     * @type { number }
241861847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
241961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
242061847f8eSopenharmony_ci     * @since 8
242161847f8eSopenharmony_ci     */
242261847f8eSopenharmony_ci    timeStamp: number;
242361847f8eSopenharmony_ci
242461847f8eSopenharmony_ci    /**
242561847f8eSopenharmony_ci     * An abstract method of the parent class whose implementation depends on the child classes.
242661847f8eSopenharmony_ci     * Returned child class objects vary according to the network type.
242761847f8eSopenharmony_ci     * Returns child class objects specific to the network type.
242861847f8eSopenharmony_ci     *
242961847f8eSopenharmony_ci     * @type { SignalInformation }
243061847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
243161847f8eSopenharmony_ci     * @since 8
243261847f8eSopenharmony_ci     */
243361847f8eSopenharmony_ci    signalInformation: SignalInformation;
243461847f8eSopenharmony_ci
243561847f8eSopenharmony_ci    /**
243661847f8eSopenharmony_ci     * Obtains signal strength under different network formats.
243761847f8eSopenharmony_ci     *
243861847f8eSopenharmony_ci     * @type { CdmaCellInformation | GsmCellInformation | LteCellInformation | NrCellInformation
243961847f8eSopenharmony_ci     * | TdscdmaCellInformation | WcdmaCellInformation }
244061847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
244161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
244261847f8eSopenharmony_ci     * @since 8
244361847f8eSopenharmony_ci     */
244461847f8eSopenharmony_ci    data: CdmaCellInformation | GsmCellInformation | LteCellInformation | NrCellInformation | TdscdmaCellInformation
244561847f8eSopenharmony_ci    | WcdmaCellInformation;
244661847f8eSopenharmony_ci  }
244761847f8eSopenharmony_ci
244861847f8eSopenharmony_ci  /**
244961847f8eSopenharmony_ci   * Obtains CDMA cell information.
245061847f8eSopenharmony_ci   *
245161847f8eSopenharmony_ci   * @interface CdmaCellInformation
245261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
245361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
245461847f8eSopenharmony_ci   * @since 8
245561847f8eSopenharmony_ci   */
245661847f8eSopenharmony_ci  export interface CdmaCellInformation {
245761847f8eSopenharmony_ci    /**
245861847f8eSopenharmony_ci     * Indicates the base station Id.
245961847f8eSopenharmony_ci     *
246061847f8eSopenharmony_ci     * @type { number }
246161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
246261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
246361847f8eSopenharmony_ci     * @since 8
246461847f8eSopenharmony_ci     */
246561847f8eSopenharmony_ci    baseId: number;
246661847f8eSopenharmony_ci
246761847f8eSopenharmony_ci    /**
246861847f8eSopenharmony_ci     * Indicates the latitude.
246961847f8eSopenharmony_ci     *
247061847f8eSopenharmony_ci     * @type { number }
247161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
247261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
247361847f8eSopenharmony_ci     * @since 8
247461847f8eSopenharmony_ci     */
247561847f8eSopenharmony_ci    latitude: number;
247661847f8eSopenharmony_ci
247761847f8eSopenharmony_ci    /**
247861847f8eSopenharmony_ci     * Indicates the longitude.
247961847f8eSopenharmony_ci     *
248061847f8eSopenharmony_ci     * @type { number }
248161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
248261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
248361847f8eSopenharmony_ci     * @since 8
248461847f8eSopenharmony_ci     */
248561847f8eSopenharmony_ci    longitude: number;
248661847f8eSopenharmony_ci
248761847f8eSopenharmony_ci    /**
248861847f8eSopenharmony_ci     * Indicates the network identification code.
248961847f8eSopenharmony_ci     *
249061847f8eSopenharmony_ci     * @type { number }
249161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
249261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
249361847f8eSopenharmony_ci     * @since 8
249461847f8eSopenharmony_ci     */
249561847f8eSopenharmony_ci    nid: number;
249661847f8eSopenharmony_ci
249761847f8eSopenharmony_ci    /**
249861847f8eSopenharmony_ci     * Indicates the system identification code.
249961847f8eSopenharmony_ci     *
250061847f8eSopenharmony_ci     * @type { number }
250161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
250261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
250361847f8eSopenharmony_ci     * @since 8
250461847f8eSopenharmony_ci     */
250561847f8eSopenharmony_ci    sid: number;
250661847f8eSopenharmony_ci  }
250761847f8eSopenharmony_ci
250861847f8eSopenharmony_ci  /**
250961847f8eSopenharmony_ci   * Obtains GSM cell information.
251061847f8eSopenharmony_ci   *
251161847f8eSopenharmony_ci   * @interface GsmCellInformation
251261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
251361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
251461847f8eSopenharmony_ci   * @since 8
251561847f8eSopenharmony_ci   */
251661847f8eSopenharmony_ci  export interface GsmCellInformation {
251761847f8eSopenharmony_ci    /**
251861847f8eSopenharmony_ci     * Indicates the location area code.
251961847f8eSopenharmony_ci     *
252061847f8eSopenharmony_ci     * @type { number }
252161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
252261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
252361847f8eSopenharmony_ci     * @since 8
252461847f8eSopenharmony_ci     */
252561847f8eSopenharmony_ci    lac: number;
252661847f8eSopenharmony_ci
252761847f8eSopenharmony_ci    /**
252861847f8eSopenharmony_ci     * Indicates the cell identification.
252961847f8eSopenharmony_ci     *
253061847f8eSopenharmony_ci     * @type { number }
253161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
253261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
253361847f8eSopenharmony_ci     * @since 8
253461847f8eSopenharmony_ci     */
253561847f8eSopenharmony_ci    cellId: number;
253661847f8eSopenharmony_ci
253761847f8eSopenharmony_ci    /**
253861847f8eSopenharmony_ci     * Indicates the ARFCN(absolute radio frequency channel number).
253961847f8eSopenharmony_ci     *
254061847f8eSopenharmony_ci     * @type { number }
254161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
254261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
254361847f8eSopenharmony_ci     * @since 8
254461847f8eSopenharmony_ci     */
254561847f8eSopenharmony_ci    arfcn: number;
254661847f8eSopenharmony_ci
254761847f8eSopenharmony_ci    /**
254861847f8eSopenharmony_ci     * Indicates the base station identification code.
254961847f8eSopenharmony_ci     *
255061847f8eSopenharmony_ci     * @type { number }
255161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
255261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
255361847f8eSopenharmony_ci     * @since 8
255461847f8eSopenharmony_ci     */
255561847f8eSopenharmony_ci    bsic: number;
255661847f8eSopenharmony_ci
255761847f8eSopenharmony_ci    /**
255861847f8eSopenharmony_ci     * Indicates the mobile country code.
255961847f8eSopenharmony_ci     *
256061847f8eSopenharmony_ci     * @type { string }
256161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
256261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
256361847f8eSopenharmony_ci     * @since 8
256461847f8eSopenharmony_ci     */
256561847f8eSopenharmony_ci    mcc: string;
256661847f8eSopenharmony_ci
256761847f8eSopenharmony_ci    /**
256861847f8eSopenharmony_ci     * Indicates the mobile network code.
256961847f8eSopenharmony_ci     *
257061847f8eSopenharmony_ci     * @type { string }
257161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
257261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
257361847f8eSopenharmony_ci     * @since 8
257461847f8eSopenharmony_ci     */
257561847f8eSopenharmony_ci    mnc: string;
257661847f8eSopenharmony_ci  }
257761847f8eSopenharmony_ci
257861847f8eSopenharmony_ci  /**
257961847f8eSopenharmony_ci   * Obtains LTE cell information.
258061847f8eSopenharmony_ci   *
258161847f8eSopenharmony_ci   * @interface LteCellInformation
258261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
258361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
258461847f8eSopenharmony_ci   * @since 8
258561847f8eSopenharmony_ci   */
258661847f8eSopenharmony_ci  export interface LteCellInformation {
258761847f8eSopenharmony_ci    /**
258861847f8eSopenharmony_ci     * Indicates the cell global identification.
258961847f8eSopenharmony_ci     *
259061847f8eSopenharmony_ci     * @type { number }
259161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
259261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
259361847f8eSopenharmony_ci     * @since 8
259461847f8eSopenharmony_ci     */
259561847f8eSopenharmony_ci    cgi: number;
259661847f8eSopenharmony_ci
259761847f8eSopenharmony_ci    /**
259861847f8eSopenharmony_ci     * Indicates the physical cell identification.
259961847f8eSopenharmony_ci     *
260061847f8eSopenharmony_ci     * @type { number }
260161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
260261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
260361847f8eSopenharmony_ci     * @since 8
260461847f8eSopenharmony_ci     */
260561847f8eSopenharmony_ci    pci: number;
260661847f8eSopenharmony_ci
260761847f8eSopenharmony_ci    /**
260861847f8eSopenharmony_ci     * Indicates the tracking area code.
260961847f8eSopenharmony_ci     *
261061847f8eSopenharmony_ci     * @type { number }
261161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
261261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
261361847f8eSopenharmony_ci     * @since 8
261461847f8eSopenharmony_ci     */
261561847f8eSopenharmony_ci    tac: number;
261661847f8eSopenharmony_ci
261761847f8eSopenharmony_ci    /**
261861847f8eSopenharmony_ci     * Indicates the E-UTRA Absolute Radio Frequency Channel Number.
261961847f8eSopenharmony_ci     *
262061847f8eSopenharmony_ci     * @type { number }
262161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
262261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
262361847f8eSopenharmony_ci     * @since 8
262461847f8eSopenharmony_ci     */
262561847f8eSopenharmony_ci    earfcn: number;
262661847f8eSopenharmony_ci
262761847f8eSopenharmony_ci    /**
262861847f8eSopenharmony_ci     * Indicates the bandwidth.
262961847f8eSopenharmony_ci     *
263061847f8eSopenharmony_ci     * @type { number }
263161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
263261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
263361847f8eSopenharmony_ci     * @since 8
263461847f8eSopenharmony_ci     */
263561847f8eSopenharmony_ci    bandwidth: number;
263661847f8eSopenharmony_ci
263761847f8eSopenharmony_ci    /**
263861847f8eSopenharmony_ci     * Indicates the mobile country code.
263961847f8eSopenharmony_ci     *
264061847f8eSopenharmony_ci     * @type { string }
264161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
264261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
264361847f8eSopenharmony_ci     * @since 8
264461847f8eSopenharmony_ci     */
264561847f8eSopenharmony_ci    mcc: string;
264661847f8eSopenharmony_ci
264761847f8eSopenharmony_ci    /**
264861847f8eSopenharmony_ci     * Indicates the mobile network code.
264961847f8eSopenharmony_ci     *
265061847f8eSopenharmony_ci     * @type { string }
265161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
265261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
265361847f8eSopenharmony_ci     * @since 8
265461847f8eSopenharmony_ci     */
265561847f8eSopenharmony_ci    mnc: string;
265661847f8eSopenharmony_ci
265761847f8eSopenharmony_ci    /**
265861847f8eSopenharmony_ci     * Support for New Radio_Dual Connectivity.
265961847f8eSopenharmony_ci     *
266061847f8eSopenharmony_ci     * @type { boolean }
266161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
266261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
266361847f8eSopenharmony_ci     * @since 8
266461847f8eSopenharmony_ci     */
266561847f8eSopenharmony_ci    isSupportEndc: boolean;
266661847f8eSopenharmony_ci  }
266761847f8eSopenharmony_ci
266861847f8eSopenharmony_ci  /**
266961847f8eSopenharmony_ci   * Obtains NR cell information.
267061847f8eSopenharmony_ci   *
267161847f8eSopenharmony_ci   * @interface NrCellInformation
267261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
267361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
267461847f8eSopenharmony_ci   * @since 8
267561847f8eSopenharmony_ci   */
267661847f8eSopenharmony_ci  export interface NrCellInformation {
267761847f8eSopenharmony_ci    /**
267861847f8eSopenharmony_ci     * Indicates the NR-ARFCN(NR Absolute Radio Frequency Channel Number).
267961847f8eSopenharmony_ci     *
268061847f8eSopenharmony_ci     * @type { number }
268161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
268261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
268361847f8eSopenharmony_ci     * @since 8
268461847f8eSopenharmony_ci     */
268561847f8eSopenharmony_ci    nrArfcn: number;
268661847f8eSopenharmony_ci
268761847f8eSopenharmony_ci    /**
268861847f8eSopenharmony_ci     * Indicates the physical cell identification.
268961847f8eSopenharmony_ci     *
269061847f8eSopenharmony_ci     * @type { number }
269161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
269261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
269361847f8eSopenharmony_ci     * @since 8
269461847f8eSopenharmony_ci     */
269561847f8eSopenharmony_ci    pci: number;
269661847f8eSopenharmony_ci
269761847f8eSopenharmony_ci    /**
269861847f8eSopenharmony_ci     * Indicates the tracking area code.
269961847f8eSopenharmony_ci     *
270061847f8eSopenharmony_ci     * @type { number }
270161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
270261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
270361847f8eSopenharmony_ci     * @since 8
270461847f8eSopenharmony_ci     */
270561847f8eSopenharmony_ci    tac: number;
270661847f8eSopenharmony_ci
270761847f8eSopenharmony_ci    /**
270861847f8eSopenharmony_ci     * Indicates the 5G network cell ID.
270961847f8eSopenharmony_ci     *
271061847f8eSopenharmony_ci     * @type { number }
271161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
271261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
271361847f8eSopenharmony_ci     * @since 8
271461847f8eSopenharmony_ci     */
271561847f8eSopenharmony_ci    nci: number;
271661847f8eSopenharmony_ci
271761847f8eSopenharmony_ci    /**
271861847f8eSopenharmony_ci     * Indicates the mobile country code.
271961847f8eSopenharmony_ci     *
272061847f8eSopenharmony_ci     * @type { string }
272161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
272261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
272361847f8eSopenharmony_ci     * @since 8
272461847f8eSopenharmony_ci     */
272561847f8eSopenharmony_ci    mcc: string;
272661847f8eSopenharmony_ci
272761847f8eSopenharmony_ci    /**
272861847f8eSopenharmony_ci     * Indicates the mobile network code.
272961847f8eSopenharmony_ci     *
273061847f8eSopenharmony_ci     * @type { string }
273161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
273261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
273361847f8eSopenharmony_ci     * @since 8
273461847f8eSopenharmony_ci     */
273561847f8eSopenharmony_ci    mnc: string;
273661847f8eSopenharmony_ci  }
273761847f8eSopenharmony_ci
273861847f8eSopenharmony_ci  /**
273961847f8eSopenharmony_ci   * Obtains TDSCDMA cell information.
274061847f8eSopenharmony_ci   *
274161847f8eSopenharmony_ci   * @interface TdscdmaCellInformation
274261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
274361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
274461847f8eSopenharmony_ci   * @since 8
274561847f8eSopenharmony_ci   */
274661847f8eSopenharmony_ci  export interface TdscdmaCellInformation {
274761847f8eSopenharmony_ci    /**
274861847f8eSopenharmony_ci     * Indicates the location area code.
274961847f8eSopenharmony_ci     *
275061847f8eSopenharmony_ci     * @type { number }
275161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
275261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
275361847f8eSopenharmony_ci     * @since 8
275461847f8eSopenharmony_ci     */
275561847f8eSopenharmony_ci    lac: number;
275661847f8eSopenharmony_ci
275761847f8eSopenharmony_ci    /**
275861847f8eSopenharmony_ci     * Indicates the cell ID.
275961847f8eSopenharmony_ci     *
276061847f8eSopenharmony_ci     * @type { number }
276161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
276261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
276361847f8eSopenharmony_ci     * @since 8
276461847f8eSopenharmony_ci     */
276561847f8eSopenharmony_ci    cellId: number;
276661847f8eSopenharmony_ci
276761847f8eSopenharmony_ci    /**
276861847f8eSopenharmony_ci     * Indicates the cell parameter ID.
276961847f8eSopenharmony_ci     *
277061847f8eSopenharmony_ci     * @type { number }
277161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
277261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
277361847f8eSopenharmony_ci     * @since 8
277461847f8eSopenharmony_ci     */
277561847f8eSopenharmony_ci    cpid: number;
277661847f8eSopenharmony_ci
277761847f8eSopenharmony_ci    /**
277861847f8eSopenharmony_ci     * Indicates the absolute radio frequency number.
277961847f8eSopenharmony_ci     *
278061847f8eSopenharmony_ci     * @type { number }
278161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
278261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
278361847f8eSopenharmony_ci     * @since 8
278461847f8eSopenharmony_ci     */
278561847f8eSopenharmony_ci    uarfcn: number;
278661847f8eSopenharmony_ci
278761847f8eSopenharmony_ci    /**
278861847f8eSopenharmony_ci     * Indicates the mobile country code.
278961847f8eSopenharmony_ci     *
279061847f8eSopenharmony_ci     * @type { string }
279161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
279261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
279361847f8eSopenharmony_ci     * @since 8
279461847f8eSopenharmony_ci     */
279561847f8eSopenharmony_ci    mcc: string;
279661847f8eSopenharmony_ci
279761847f8eSopenharmony_ci    /**
279861847f8eSopenharmony_ci     * Indicates the mobile network code.
279961847f8eSopenharmony_ci     *
280061847f8eSopenharmony_ci     * @type { string }
280161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
280261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
280361847f8eSopenharmony_ci     * @since 8
280461847f8eSopenharmony_ci     */
280561847f8eSopenharmony_ci    mnc: string;
280661847f8eSopenharmony_ci  }
280761847f8eSopenharmony_ci
280861847f8eSopenharmony_ci  /**
280961847f8eSopenharmony_ci   * Obtains WCDMA cell information.
281061847f8eSopenharmony_ci   *
281161847f8eSopenharmony_ci   * @interface WcdmaCellInformation
281261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
281361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
281461847f8eSopenharmony_ci   * @since 8
281561847f8eSopenharmony_ci   */
281661847f8eSopenharmony_ci  export interface WcdmaCellInformation {
281761847f8eSopenharmony_ci    /**
281861847f8eSopenharmony_ci     * Indicates the location area code.
281961847f8eSopenharmony_ci     *
282061847f8eSopenharmony_ci     * @type { number }
282161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
282261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
282361847f8eSopenharmony_ci     * @since 8
282461847f8eSopenharmony_ci     */
282561847f8eSopenharmony_ci    lac: number;
282661847f8eSopenharmony_ci
282761847f8eSopenharmony_ci    /**
282861847f8eSopenharmony_ci     * Indicates the cell ID.
282961847f8eSopenharmony_ci     *
283061847f8eSopenharmony_ci     * @type { number }
283161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
283261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
283361847f8eSopenharmony_ci     * @since 8
283461847f8eSopenharmony_ci     */
283561847f8eSopenharmony_ci    cellId: number;
283661847f8eSopenharmony_ci
283761847f8eSopenharmony_ci    /**
283861847f8eSopenharmony_ci     * Indicates the primary scrambling code.
283961847f8eSopenharmony_ci     *
284061847f8eSopenharmony_ci     * @type { number }
284161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
284261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
284361847f8eSopenharmony_ci     * @since 8
284461847f8eSopenharmony_ci     */
284561847f8eSopenharmony_ci    psc: number;
284661847f8eSopenharmony_ci
284761847f8eSopenharmony_ci    /**
284861847f8eSopenharmony_ci     * Indicates the absolute radio frequency number.
284961847f8eSopenharmony_ci     *
285061847f8eSopenharmony_ci     * @type { number }
285161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
285261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
285361847f8eSopenharmony_ci     * @since 8
285461847f8eSopenharmony_ci     */
285561847f8eSopenharmony_ci    uarfcn: number;
285661847f8eSopenharmony_ci
285761847f8eSopenharmony_ci    /**
285861847f8eSopenharmony_ci     * Indicates the mobile country code.
285961847f8eSopenharmony_ci     *
286061847f8eSopenharmony_ci     * @type { string }
286161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
286261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
286361847f8eSopenharmony_ci     * @since 8
286461847f8eSopenharmony_ci     */
286561847f8eSopenharmony_ci    mcc: string;
286661847f8eSopenharmony_ci
286761847f8eSopenharmony_ci    /**
286861847f8eSopenharmony_ci     * Indicates the mobile network code.
286961847f8eSopenharmony_ci     *
287061847f8eSopenharmony_ci     * @type { string }
287161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
287261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
287361847f8eSopenharmony_ci     * @since 8
287461847f8eSopenharmony_ci     */
287561847f8eSopenharmony_ci    mnc: string;
287661847f8eSopenharmony_ci  }
287761847f8eSopenharmony_ci
287861847f8eSopenharmony_ci  /**
287961847f8eSopenharmony_ci   * Obtains the option mode of NR.
288061847f8eSopenharmony_ci   *
288161847f8eSopenharmony_ci   * @enum { number }
288261847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
288361847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
288461847f8eSopenharmony_ci   * @since 8
288561847f8eSopenharmony_ci   * @deprecated since 10
288661847f8eSopenharmony_ci   * @useinstead telephony.radio#NROptionMode
288761847f8eSopenharmony_ci   */
288861847f8eSopenharmony_ci  export enum NrOptionMode {
288961847f8eSopenharmony_ci    /**
289061847f8eSopenharmony_ci     * Indicates unknown NR networking mode.
289161847f8eSopenharmony_ci     *
289261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
289361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
289461847f8eSopenharmony_ci     * @since 8
289561847f8eSopenharmony_ci     * @deprecated since 10
289661847f8eSopenharmony_ci     */
289761847f8eSopenharmony_ci    NR_OPTION_UNKNOWN,
289861847f8eSopenharmony_ci
289961847f8eSopenharmony_ci    /**
290061847f8eSopenharmony_ci     * Indicates that the NR networking mode is NSA only.
290161847f8eSopenharmony_ci     *
290261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
290361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
290461847f8eSopenharmony_ci     * @since 8
290561847f8eSopenharmony_ci     * @deprecated since 10
290661847f8eSopenharmony_ci     */
290761847f8eSopenharmony_ci    NR_OPTION_NSA_ONLY,
290861847f8eSopenharmony_ci
290961847f8eSopenharmony_ci    /**
291061847f8eSopenharmony_ci     * Indicates that the NR networking mode is SA only.
291161847f8eSopenharmony_ci     *
291261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
291361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
291461847f8eSopenharmony_ci     * @since 8
291561847f8eSopenharmony_ci     * @deprecated since 10
291661847f8eSopenharmony_ci     */
291761847f8eSopenharmony_ci    NR_OPTION_SA_ONLY,
291861847f8eSopenharmony_ci
291961847f8eSopenharmony_ci    /**
292061847f8eSopenharmony_ci     * Indicates that the NR networking mode is NSA and SA.
292161847f8eSopenharmony_ci     *
292261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
292361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
292461847f8eSopenharmony_ci     * @since 8
292561847f8eSopenharmony_ci     * @deprecated since 10
292661847f8eSopenharmony_ci     */
292761847f8eSopenharmony_ci    NR_OPTION_NSA_AND_SA,
292861847f8eSopenharmony_ci  }
292961847f8eSopenharmony_ci
293061847f8eSopenharmony_ci  /**
293161847f8eSopenharmony_ci   * Obtains the option mode of NR.
293261847f8eSopenharmony_ci   *
293361847f8eSopenharmony_ci   * @enum { number }
293461847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
293561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
293661847f8eSopenharmony_ci   * @since 10
293761847f8eSopenharmony_ci   */
293861847f8eSopenharmony_ci  export enum NROptionMode {
293961847f8eSopenharmony_ci    /**
294061847f8eSopenharmony_ci     * Indicates unknown NR networking mode.
294161847f8eSopenharmony_ci     *
294261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
294361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
294461847f8eSopenharmony_ci     * @since 10
294561847f8eSopenharmony_ci     */
294661847f8eSopenharmony_ci    NR_OPTION_UNKNOWN,
294761847f8eSopenharmony_ci
294861847f8eSopenharmony_ci    /**
294961847f8eSopenharmony_ci     * Indicates that the NR networking mode is NSA only.
295061847f8eSopenharmony_ci     *
295161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
295261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
295361847f8eSopenharmony_ci     * @since 10
295461847f8eSopenharmony_ci     */
295561847f8eSopenharmony_ci    NR_OPTION_NSA_ONLY,
295661847f8eSopenharmony_ci
295761847f8eSopenharmony_ci    /**
295861847f8eSopenharmony_ci     * Indicates that the NR networking mode is SA only.
295961847f8eSopenharmony_ci     *
296061847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
296161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
296261847f8eSopenharmony_ci     * @since 10
296361847f8eSopenharmony_ci     */
296461847f8eSopenharmony_ci    NR_OPTION_SA_ONLY,
296561847f8eSopenharmony_ci
296661847f8eSopenharmony_ci    /**
296761847f8eSopenharmony_ci     * Indicates that the NR networking mode is NSA and SA.
296861847f8eSopenharmony_ci     *
296961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
297061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
297161847f8eSopenharmony_ci     * @since 10
297261847f8eSopenharmony_ci     */
297361847f8eSopenharmony_ci    NR_OPTION_NSA_AND_SA,
297461847f8eSopenharmony_ci  }
297561847f8eSopenharmony_ci
297661847f8eSopenharmony_ci  /**
297761847f8eSopenharmony_ci   * Obtains the network search results.
297861847f8eSopenharmony_ci   *
297961847f8eSopenharmony_ci   * @interface NetworkSearchResult
298061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
298161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
298261847f8eSopenharmony_ci   * @since 6
298361847f8eSopenharmony_ci   */
298461847f8eSopenharmony_ci  export interface NetworkSearchResult {
298561847f8eSopenharmony_ci    /**
298661847f8eSopenharmony_ci     * Indicates whether the network search was successful.
298761847f8eSopenharmony_ci     *
298861847f8eSopenharmony_ci     * @type { boolean }
298961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
299061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
299161847f8eSopenharmony_ci     * @since 6
299261847f8eSopenharmony_ci     */
299361847f8eSopenharmony_ci    isNetworkSearchSuccess: boolean;
299461847f8eSopenharmony_ci
299561847f8eSopenharmony_ci    /**
299661847f8eSopenharmony_ci     * Obtains the network search results.
299761847f8eSopenharmony_ci     *
299861847f8eSopenharmony_ci     * @type { Array<NetworkInformation> }
299961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
300061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
300161847f8eSopenharmony_ci     * @since 6
300261847f8eSopenharmony_ci     */
300361847f8eSopenharmony_ci    networkSearchResult: Array<NetworkInformation>;
300461847f8eSopenharmony_ci  }
300561847f8eSopenharmony_ci
300661847f8eSopenharmony_ci  /**
300761847f8eSopenharmony_ci   * Obtains the network information.
300861847f8eSopenharmony_ci   *
300961847f8eSopenharmony_ci   * @interface NetworkInformation
301061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
301161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
301261847f8eSopenharmony_ci   * @since 6
301361847f8eSopenharmony_ci   */
301461847f8eSopenharmony_ci  export interface NetworkInformation {
301561847f8eSopenharmony_ci    /**
301661847f8eSopenharmony_ci     * Indicates the name of the operator.
301761847f8eSopenharmony_ci     *
301861847f8eSopenharmony_ci     * @type { string }
301961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
302061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
302161847f8eSopenharmony_ci     * @since 6
302261847f8eSopenharmony_ci     */
302361847f8eSopenharmony_ci    operatorName: string;
302461847f8eSopenharmony_ci
302561847f8eSopenharmony_ci    /**
302661847f8eSopenharmony_ci     * Indicates the number of the operator.
302761847f8eSopenharmony_ci     *
302861847f8eSopenharmony_ci     * @type { string }
302961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
303061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
303161847f8eSopenharmony_ci     * @since 6
303261847f8eSopenharmony_ci     */
303361847f8eSopenharmony_ci    operatorNumeric: string;
303461847f8eSopenharmony_ci
303561847f8eSopenharmony_ci    /**
303661847f8eSopenharmony_ci     * Indicates the status of network information.
303761847f8eSopenharmony_ci     *
303861847f8eSopenharmony_ci     * @type { NetworkInformationState }
303961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
304061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
304161847f8eSopenharmony_ci     * @since 6
304261847f8eSopenharmony_ci     */
304361847f8eSopenharmony_ci    state: NetworkInformationState;
304461847f8eSopenharmony_ci
304561847f8eSopenharmony_ci    /**
304661847f8eSopenharmony_ci     * Indicates the radio Technology.
304761847f8eSopenharmony_ci     *
304861847f8eSopenharmony_ci     * @type { string }
304961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
305061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
305161847f8eSopenharmony_ci     * @since 6
305261847f8eSopenharmony_ci     */
305361847f8eSopenharmony_ci    radioTech: string;
305461847f8eSopenharmony_ci  }
305561847f8eSopenharmony_ci
305661847f8eSopenharmony_ci  /**
305761847f8eSopenharmony_ci   * Obtains network information status.
305861847f8eSopenharmony_ci   *
305961847f8eSopenharmony_ci   * @enum { number }
306061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
306161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
306261847f8eSopenharmony_ci   * @since 6
306361847f8eSopenharmony_ci   */
306461847f8eSopenharmony_ci  export enum NetworkInformationState {
306561847f8eSopenharmony_ci    /**
306661847f8eSopenharmony_ci     * Indicates that the network state is unknown.
306761847f8eSopenharmony_ci     *
306861847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
306961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
307061847f8eSopenharmony_ci     * @since 6
307161847f8eSopenharmony_ci     */
307261847f8eSopenharmony_ci    NETWORK_UNKNOWN,
307361847f8eSopenharmony_ci
307461847f8eSopenharmony_ci    /**
307561847f8eSopenharmony_ci     * Indicates that the network is available for registration.
307661847f8eSopenharmony_ci     *
307761847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
307861847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
307961847f8eSopenharmony_ci     * @since 6
308061847f8eSopenharmony_ci     */
308161847f8eSopenharmony_ci    NETWORK_AVAILABLE,
308261847f8eSopenharmony_ci
308361847f8eSopenharmony_ci    /**
308461847f8eSopenharmony_ci     * Indicates that you have already registered with the network.
308561847f8eSopenharmony_ci     *
308661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
308761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
308861847f8eSopenharmony_ci     * @since 6
308961847f8eSopenharmony_ci     */
309061847f8eSopenharmony_ci    NETWORK_CURRENT,
309161847f8eSopenharmony_ci
309261847f8eSopenharmony_ci    /**
309361847f8eSopenharmony_ci     * Indicates that the network is unavailable for registration.
309461847f8eSopenharmony_ci     *
309561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
309661847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
309761847f8eSopenharmony_ci     * @since 6
309861847f8eSopenharmony_ci     */
309961847f8eSopenharmony_ci    NETWORK_FORBIDDEN
310061847f8eSopenharmony_ci  }
310161847f8eSopenharmony_ci
310261847f8eSopenharmony_ci  /**
310361847f8eSopenharmony_ci   * Obtains the network selection mode option.
310461847f8eSopenharmony_ci   *
310561847f8eSopenharmony_ci   * @interface NetworkSelectionModeOptions
310661847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
310761847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
310861847f8eSopenharmony_ci   * @since 6
310961847f8eSopenharmony_ci   */
311061847f8eSopenharmony_ci  export interface NetworkSelectionModeOptions {
311161847f8eSopenharmony_ci    /**
311261847f8eSopenharmony_ci     * Indicates the card slot index number, ranging from 0 to
311361847f8eSopenharmony_ci     * the maximum card slot index number supported by the device.
311461847f8eSopenharmony_ci     *
311561847f8eSopenharmony_ci     * @type { number }
311661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
311761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
311861847f8eSopenharmony_ci     * @since 6
311961847f8eSopenharmony_ci     */
312061847f8eSopenharmony_ci    slotId: number;
312161847f8eSopenharmony_ci
312261847f8eSopenharmony_ci    /**
312361847f8eSopenharmony_ci     * Indicates the network search mode of the SIM card.
312461847f8eSopenharmony_ci     *
312561847f8eSopenharmony_ci     * @type { NetworkSelectionMode }
312661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
312761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
312861847f8eSopenharmony_ci     * @since 6
312961847f8eSopenharmony_ci     */
313061847f8eSopenharmony_ci    selectMode: NetworkSelectionMode;
313161847f8eSopenharmony_ci
313261847f8eSopenharmony_ci    /**
313361847f8eSopenharmony_ci     * Indicates the network information.
313461847f8eSopenharmony_ci     *
313561847f8eSopenharmony_ci     * @type { NetworkInformation }
313661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
313761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
313861847f8eSopenharmony_ci     * @since 6
313961847f8eSopenharmony_ci     */
314061847f8eSopenharmony_ci    networkInformation: NetworkInformation;
314161847f8eSopenharmony_ci
314261847f8eSopenharmony_ci    /**
314361847f8eSopenharmony_ci     * Indicates whether to continue selecting the network selection mode.
314461847f8eSopenharmony_ci     *
314561847f8eSopenharmony_ci     * @type { boolean }
314661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
314761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
314861847f8eSopenharmony_ci     * @since 6
314961847f8eSopenharmony_ci     */
315061847f8eSopenharmony_ci    resumeSelection: boolean;
315161847f8eSopenharmony_ci  }
315261847f8eSopenharmony_ci
315361847f8eSopenharmony_ci  /**
315461847f8eSopenharmony_ci   * Obtains the network selection mode.
315561847f8eSopenharmony_ci   *
315661847f8eSopenharmony_ci   * @enum { number }
315761847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
315861847f8eSopenharmony_ci   * @since 6
315961847f8eSopenharmony_ci   */
316061847f8eSopenharmony_ci  export enum NetworkSelectionMode {
316161847f8eSopenharmony_ci    /**
316261847f8eSopenharmony_ci     * Indicates that the network is unavailable for registration.
316361847f8eSopenharmony_ci     *
316461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
316561847f8eSopenharmony_ci     * @since 6
316661847f8eSopenharmony_ci     */
316761847f8eSopenharmony_ci    NETWORK_SELECTION_UNKNOWN,
316861847f8eSopenharmony_ci
316961847f8eSopenharmony_ci    /**
317061847f8eSopenharmony_ci     * Indicates that the network is unavailable for registration.
317161847f8eSopenharmony_ci     *
317261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
317361847f8eSopenharmony_ci     * @since 6
317461847f8eSopenharmony_ci     */
317561847f8eSopenharmony_ci    NETWORK_SELECTION_AUTOMATIC,
317661847f8eSopenharmony_ci
317761847f8eSopenharmony_ci    /**
317861847f8eSopenharmony_ci     * Manual network selection modes.
317961847f8eSopenharmony_ci     *
318061847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
318161847f8eSopenharmony_ci     * @since 6
318261847f8eSopenharmony_ci     */
318361847f8eSopenharmony_ci    NETWORK_SELECTION_MANUAL
318461847f8eSopenharmony_ci  }
318561847f8eSopenharmony_ci
318661847f8eSopenharmony_ci  /**
318761847f8eSopenharmony_ci   * Obtains IMS registration status.
318861847f8eSopenharmony_ci   *
318961847f8eSopenharmony_ci   * @enum { number }
319061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
319161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
319261847f8eSopenharmony_ci   * @since 9
319361847f8eSopenharmony_ci   */
319461847f8eSopenharmony_ci  export enum ImsRegState {
319561847f8eSopenharmony_ci    /**
319661847f8eSopenharmony_ci     * Indicates that the ims service is not registered.
319761847f8eSopenharmony_ci     *
319861847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
319961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
320061847f8eSopenharmony_ci     * @since 9
320161847f8eSopenharmony_ci     */
320261847f8eSopenharmony_ci    IMS_UNREGISTERED,
320361847f8eSopenharmony_ci
320461847f8eSopenharmony_ci    /**
320561847f8eSopenharmony_ci     * Indicates that the ims service has been registered.
320661847f8eSopenharmony_ci     *
320761847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
320861847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
320961847f8eSopenharmony_ci     * @since 9
321061847f8eSopenharmony_ci     */
321161847f8eSopenharmony_ci    IMS_REGISTERED,
321261847f8eSopenharmony_ci  }
321361847f8eSopenharmony_ci
321461847f8eSopenharmony_ci  /**
321561847f8eSopenharmony_ci   * Indicates IMS registration technology.
321661847f8eSopenharmony_ci   *
321761847f8eSopenharmony_ci   * @enum { number }
321861847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
321961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
322061847f8eSopenharmony_ci   * @since 9
322161847f8eSopenharmony_ci   */
322261847f8eSopenharmony_ci  export enum ImsRegTech {
322361847f8eSopenharmony_ci    /**
322461847f8eSopenharmony_ci     * Indicates that ims has no registered technology.
322561847f8eSopenharmony_ci     *
322661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
322761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
322861847f8eSopenharmony_ci     * @since 9
322961847f8eSopenharmony_ci     */
323061847f8eSopenharmony_ci    REGISTRATION_TECH_NONE,
323161847f8eSopenharmony_ci
323261847f8eSopenharmony_ci    /**
323361847f8eSopenharmony_ci     * Indicates that ims registers LTE technology.
323461847f8eSopenharmony_ci     *
323561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
323661847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
323761847f8eSopenharmony_ci     * @since 9
323861847f8eSopenharmony_ci     */
323961847f8eSopenharmony_ci    REGISTRATION_TECH_LTE,
324061847f8eSopenharmony_ci
324161847f8eSopenharmony_ci    /**
324261847f8eSopenharmony_ci     * Indicates that ims registers IWLAN technology.
324361847f8eSopenharmony_ci     *
324461847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
324561847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
324661847f8eSopenharmony_ci     * @since 9
324761847f8eSopenharmony_ci     */
324861847f8eSopenharmony_ci    REGISTRATION_TECH_IWLAN,
324961847f8eSopenharmony_ci
325061847f8eSopenharmony_ci    /**
325161847f8eSopenharmony_ci     * Indicates that ims registers NR technology.
325261847f8eSopenharmony_ci     *
325361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
325461847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
325561847f8eSopenharmony_ci     * @since 9
325661847f8eSopenharmony_ci     */
325761847f8eSopenharmony_ci    REGISTRATION_TECH_NR,
325861847f8eSopenharmony_ci  }
325961847f8eSopenharmony_ci
326061847f8eSopenharmony_ci  /**
326161847f8eSopenharmony_ci   * Indicates IMS registration information.
326261847f8eSopenharmony_ci   *
326361847f8eSopenharmony_ci   * @interface ImsRegInfo
326461847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
326561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
326661847f8eSopenharmony_ci   * @since 9
326761847f8eSopenharmony_ci   */
326861847f8eSopenharmony_ci  export interface ImsRegInfo {
326961847f8eSopenharmony_ci    /**
327061847f8eSopenharmony_ci     * Indicates the registration status of the ims service.
327161847f8eSopenharmony_ci     *
327261847f8eSopenharmony_ci     * @type { ImsRegState }
327361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
327461847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
327561847f8eSopenharmony_ci     * @since 9
327661847f8eSopenharmony_ci     */
327761847f8eSopenharmony_ci    imsRegState: ImsRegState;
327861847f8eSopenharmony_ci
327961847f8eSopenharmony_ci    /**
328061847f8eSopenharmony_ci     * Indicates the mode of ims radio technology.
328161847f8eSopenharmony_ci     *
328261847f8eSopenharmony_ci     * @type { ImsRegTech }
328361847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
328461847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
328561847f8eSopenharmony_ci     * @since 9
328661847f8eSopenharmony_ci     */
328761847f8eSopenharmony_ci    imsRegTech: ImsRegTech;
328861847f8eSopenharmony_ci  }
328961847f8eSopenharmony_ci
329061847f8eSopenharmony_ci  /**
329161847f8eSopenharmony_ci   * Indicates the type of IMS service.
329261847f8eSopenharmony_ci   *
329361847f8eSopenharmony_ci   * @enum { number }
329461847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
329561847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
329661847f8eSopenharmony_ci   * @since 9
329761847f8eSopenharmony_ci   */
329861847f8eSopenharmony_ci  export enum ImsServiceType {
329961847f8eSopenharmony_ci    /**
330061847f8eSopenharmony_ci     * Indicates voice service.
330161847f8eSopenharmony_ci     *
330261847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
330361847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
330461847f8eSopenharmony_ci     * @since 9
330561847f8eSopenharmony_ci     */
330661847f8eSopenharmony_ci    TYPE_VOICE,
330761847f8eSopenharmony_ci
330861847f8eSopenharmony_ci    /**
330961847f8eSopenharmony_ci     * Indicates video service.
331061847f8eSopenharmony_ci     *
331161847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
331261847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
331361847f8eSopenharmony_ci     * @since 9
331461847f8eSopenharmony_ci     */
331561847f8eSopenharmony_ci    TYPE_VIDEO,
331661847f8eSopenharmony_ci
331761847f8eSopenharmony_ci    /**
331861847f8eSopenharmony_ci     * Indicates UT service.
331961847f8eSopenharmony_ci     *
332061847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
332161847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
332261847f8eSopenharmony_ci     * @since 9
332361847f8eSopenharmony_ci     */
332461847f8eSopenharmony_ci    TYPE_UT,
332561847f8eSopenharmony_ci
332661847f8eSopenharmony_ci    /**
332761847f8eSopenharmony_ci     * Indicates SMS service.
332861847f8eSopenharmony_ci     *
332961847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
333061847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
333161847f8eSopenharmony_ci     * @since 9
333261847f8eSopenharmony_ci     */
333361847f8eSopenharmony_ci    TYPE_SMS,
333461847f8eSopenharmony_ci  }
333561847f8eSopenharmony_ci
333661847f8eSopenharmony_ci  /**
333761847f8eSopenharmony_ci   * Enum for network capability type.
333861847f8eSopenharmony_ci   *
333961847f8eSopenharmony_ci   * @enum { number }
334061847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
334161847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
334261847f8eSopenharmony_ci   * @since 10
334361847f8eSopenharmony_ci   */
334461847f8eSopenharmony_ci  export enum NetworkCapabilityType {
334561847f8eSopenharmony_ci    /**
334661847f8eSopenharmony_ci     * Indicates LTE network switch type.
334761847f8eSopenharmony_ci     *
334861847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
334961847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
335061847f8eSopenharmony_ci     * @since 10
335161847f8eSopenharmony_ci     */
335261847f8eSopenharmony_ci    SERVICE_TYPE_LTE,
335361847f8eSopenharmony_ci
335461847f8eSopenharmony_ci    /**
335561847f8eSopenharmony_ci     * Indicates NR network switch type.
335661847f8eSopenharmony_ci     *
335761847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
335861847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
335961847f8eSopenharmony_ci     * @since 10
336061847f8eSopenharmony_ci     */
336161847f8eSopenharmony_ci    SERVICE_TYPE_NR,
336261847f8eSopenharmony_ci  }
336361847f8eSopenharmony_ci
336461847f8eSopenharmony_ci  /**
336561847f8eSopenharmony_ci   * Enum for network capability state.
336661847f8eSopenharmony_ci   *
336761847f8eSopenharmony_ci   * @enum { number }
336861847f8eSopenharmony_ci   * @syscap SystemCapability.Telephony.CoreService
336961847f8eSopenharmony_ci   * @systemapi Hide this for inner system use.
337061847f8eSopenharmony_ci   * @since 10
337161847f8eSopenharmony_ci   */
337261847f8eSopenharmony_ci  export enum NetworkCapabilityState {
337361847f8eSopenharmony_ci    /**
337461847f8eSopenharmony_ci     * Indicates turn off network switch.
337561847f8eSopenharmony_ci     *
337661847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
337761847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
337861847f8eSopenharmony_ci     * @since 10
337961847f8eSopenharmony_ci     */
338061847f8eSopenharmony_ci    SERVICE_CAPABILITY_OFF,
338161847f8eSopenharmony_ci
338261847f8eSopenharmony_ci    /**
338361847f8eSopenharmony_ci     * Indicates turn on network switch.
338461847f8eSopenharmony_ci     *
338561847f8eSopenharmony_ci     * @syscap SystemCapability.Telephony.CoreService
338661847f8eSopenharmony_ci     * @systemapi Hide this for inner system use.
338761847f8eSopenharmony_ci     * @since 10
338861847f8eSopenharmony_ci     */
338961847f8eSopenharmony_ci    SERVICE_CAPABILITY_ON,
339061847f8eSopenharmony_ci  }
339161847f8eSopenharmony_ci}
339261847f8eSopenharmony_ci
339361847f8eSopenharmony_ciexport default radio;
3394