1/* 2 * Copyright (C) 2021-2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16/** 17 * @file 18 * @kit TelephonyKit 19 */ 20 21import type { AsyncCallback, Callback } from './@ohos.base'; 22 23/** 24 * Provides interfaces for applications to obtain the network state, cell information, signal information, 25 * and device ID of the wireless cellular network (WCN), and provides a callback registration mechanism to 26 * listen for changes of the network, cell, and signal status of the WCN. 27 * 28 * @namespace radio 29 * @syscap SystemCapability.Telephony.CoreService 30 * @since 6 31 */ 32declare namespace radio { 33 /** 34 * Obtains radio access technology (RAT) of the registered network. The system 35 * returns RAT of the packet service (PS) and circuit service (CS) domain. 36 * 37 * @permission ohos.permission.GET_NETWORK_INFO 38 * @param { number } slotId - Indicates the card slot index number, 39 * ranging from 0 to the maximum card slot index number supported by the device. 40 * @param { AsyncCallback<{psRadioTech: RadioTechnology, csRadioTech: RadioTechnology}> } callback - Returns 41 * an integer indicating the RAT in use. The values are as follows: 42 * <ul> 43 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_UNKNOWN} 44 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_GSM} 45 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_1XRTT} 46 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_WCDMA} 47 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPA} 48 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPAP} 49 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_TD_SCDMA} 50 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EVDO} 51 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EHRPD} 52 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE} 53 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE_CA} 54 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_IWLAN} 55 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_NR} 56 * </ul> 57 * @throws { BusinessError } 201 - Permission denied. 58 * @throws { BusinessError } 401 - Parameter error. 59 * @throws { BusinessError } 8300001 - Invalid parameter value. 60 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 61 * @throws { BusinessError } 8300003 - System internal error. 62 * @throws { BusinessError } 8300999 - Unknown error code. 63 * @syscap SystemCapability.Telephony.CoreService 64 * @since 6 65 */ 66 /** 67 * Obtains radio access technology (RAT) of the registered network. The system 68 * returns RAT of the packet service (PS) and circuit service (CS) domain. 69 * 70 * @permission ohos.permission.GET_NETWORK_INFO 71 * @param { number } slotId - Indicates the card slot index number, 72 * ranging from 0 to the maximum card slot index number supported by the device. 73 * @param { AsyncCallback<NetworkRadioTech> } callback - Returns 74 * the RAT of PS domain and CS domain of registered network. 75 * The values of RAT are as follows: 76 * <ul> 77 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_UNKNOWN} 78 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_GSM} 79 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_1XRTT} 80 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_WCDMA} 81 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPA} 82 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPAP} 83 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_TD_SCDMA} 84 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EVDO} 85 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EHRPD} 86 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE} 87 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE_CA} 88 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_IWLAN} 89 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_NR} 90 * </ul> 91 * @throws { BusinessError } 201 - Permission denied. 92 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 93 * 2. Incorrect parameter types. 94 * @throws { BusinessError } 8300001 - Invalid parameter value. 95 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 96 * @throws { BusinessError } 8300003 - System internal error. 97 * @throws { BusinessError } 8300999 - Unknown error code. 98 * @syscap SystemCapability.Telephony.CoreService 99 * @since 11 100 */ 101 function getRadioTech(slotId: number, callback: AsyncCallback<NetworkRadioTech>): void; 102 103 /** 104 * Obtains radio access technology (RAT) of the registered network. The system 105 * returns RAT of the packet service (PS) and circuit service (CS) domain. 106 * 107 * @permission ohos.permission.GET_NETWORK_INFO 108 * @param { number } slotId - Indicates the card slot index number, 109 * ranging from 0 to the maximum card slot index number supported by the device. 110 * @returns { Promise<{psRadioTech: RadioTechnology, csRadioTech: RadioTechnology}> } Returns 111 * the enumeration of RadioTechnology. The values are as follows: 112 * <ul> 113 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_UNKNOWN} 114 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_GSM} 115 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_1XRTT} 116 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_WCDMA} 117 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPA} 118 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPAP} 119 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_TD_SCDMA} 120 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EVDO} 121 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EHRPD} 122 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE} 123 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE_CA} 124 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_IWLAN} 125 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_NR} 126 * </ul> 127 * @throws { BusinessError } 201 - Permission denied. 128 * @throws { BusinessError } 401 - Parameter error. 129 * @throws { BusinessError } 8300001 - Invalid parameter value. 130 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 131 * @throws { BusinessError } 8300003 - System internal error. 132 * @throws { BusinessError } 8300999 - Unknown error code. 133 * @syscap SystemCapability.Telephony.CoreService 134 * @since 6 135 */ 136 /** 137 * Obtains radio access technology (RAT) of the registered network. The system 138 * returns RAT of the packet service (PS) and circuit service (CS) domain. 139 * 140 * @permission ohos.permission.GET_NETWORK_INFO 141 * @param { number } slotId - Indicates the card slot index number, 142 * ranging from 0 to the maximum card slot index number supported by the device. 143 * @returns { Promise<NetworkRadioTech> } Returns the RAT of PS domain and CS domain of registered network. 144 * The values of RAT are as follows: 145 * <ul> 146 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_UNKNOWN} 147 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_GSM} 148 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_1XRTT} 149 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_WCDMA} 150 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPA} 151 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_HSPAP} 152 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_TD_SCDMA} 153 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EVDO} 154 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_EHRPD} 155 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE} 156 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_LTE_CA} 157 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_IWLAN} 158 * <li>{@code RadioTechnology#RADIO_TECHNOLOGY_NR} 159 * </ul> 160 * @throws { BusinessError } 201 - Permission denied. 161 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 162 * 2. Incorrect parameter types. 163 * @throws { BusinessError } 8300001 - Invalid parameter value. 164 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 165 * @throws { BusinessError } 8300003 - System internal error. 166 * @throws { BusinessError } 8300999 - Unknown error code. 167 * @syscap SystemCapability.Telephony.CoreService 168 * @since 11 169 */ 170 function getRadioTech(slotId: number): Promise<NetworkRadioTech>; 171 172 /** 173 * Obtains radio access technology (RAT) of the registered network. 174 * 175 * @permission ohos.permission.GET_NETWORK_INFO 176 * @param { number } slotId - Indicates the card slot index number, 177 * ranging from 0 to the maximum card slot index number supported by the device. 178 * @returns { NetworkRadioTech } Returns the RAT of PS domain and CS domain of registered network. 179 * @syscap SystemCapability.Telephony.CoreService 180 * @since 16 181 */ 182 function getRadioTechSync(slotId: number): NetworkRadioTech; 183 184 /** 185 * Obtains the network state of the registered network. 186 * 187 * @permission ohos.permission.GET_NETWORK_INFO 188 * @param { number } slotId - Indicates the card slot index number, 189 * ranging from 0 to the maximum card slot index number supported by the device. 190 * @param { AsyncCallback<NetworkState> } callback - Indicates the callback for getting network registration state. 191 * @throws { BusinessError } 201 - Permission denied. 192 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 193 * 2. Incorrect parameter types. 194 * @throws { BusinessError } 8300001 - Invalid parameter value. 195 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 196 * @throws { BusinessError } 8300003 - System internal error. 197 * @throws { BusinessError } 8300999 - Unknown error code. 198 * @syscap SystemCapability.Telephony.CoreService 199 * @since 6 200 */ 201 function getNetworkState(slotId: number, callback: AsyncCallback<NetworkState>): void; 202 203 /** 204 * Obtains the network state of the registered network. 205 * 206 * @permission ohos.permission.GET_NETWORK_INFO 207 * @param { number } slotId - Indicates the card slot index number, 208 * ranging from 0 to the maximum card slot index number supported by the device. 209 * @returns { Promise<NetworkState> } Returns the NetworkState object. 210 * @throws { BusinessError } 201 - Permission denied. 211 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 212 * 2. Incorrect parameter types. 213 * @throws { BusinessError } 8300001 - Invalid parameter value. 214 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 215 * @throws { BusinessError } 8300003 - System internal error. 216 * @throws { BusinessError } 8300999 - Unknown error code. 217 * @syscap SystemCapability.Telephony.CoreService 218 * @since 6 219 */ 220 function getNetworkState(slotId?: number): Promise<NetworkState>; 221 222 /** 223 * Obtains the network state of the registered network. 224 * 225 * @permission ohos.permission.GET_NETWORK_INFO 226 * @param { AsyncCallback<NetworkState> } callback - Indicates the callback for getting network registration state. 227 * @throws { BusinessError } 201 - Permission denied. 228 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 229 * 2. Incorrect parameter types. 230 * @throws { BusinessError } 8300001 - Invalid parameter value. 231 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 232 * @throws { BusinessError } 8300003 - System internal error. 233 * @throws { BusinessError } 8300999 - Unknown error code. 234 * @syscap SystemCapability.Telephony.CoreService 235 * @since 6 236 */ 237 function getNetworkState(callback: AsyncCallback<NetworkState>): void; 238 239 /** 240 * Actively requests to update location information. 241 * 242 * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 243 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 244 * index number supported by the device. 245 * @param { AsyncCallback<void> } callback - The callback of sendUpdateCellLocationRequest. 246 * @throws { BusinessError } 201 - Permission denied. 247 * @throws { BusinessError } 202 - Non-system applications use system APIs. 248 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 249 * 2. Incorrect parameter types. 250 * @throws { BusinessError } 8300001 - Invalid parameter value. 251 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 252 * @throws { BusinessError } 8300003 - System internal error. 253 * @throws { BusinessError } 8300999 - Unknown error code. 254 * @syscap SystemCapability.Telephony.CoreService 255 * @systemapi Hide this for inner system use. 256 * @since 8 257 */ 258 function sendUpdateCellLocationRequest(slotId: number, callback: AsyncCallback<void>): void; 259 260 /** 261 * Actively requests to update location information. 262 * 263 * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 264 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 265 * index number supported by the device. 266 * @returns { Promise<void> } The promise returned by the sendUpdateCellLocationRequest. 267 * @throws { BusinessError } 201 - Permission denied. 268 * @throws { BusinessError } 202 - Non-system applications use system APIs. 269 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 270 * 2. Incorrect parameter types. 271 * @throws { BusinessError } 8300001 - Invalid parameter value. 272 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 273 * @throws { BusinessError } 8300003 - System internal error. 274 * @throws { BusinessError } 8300999 - Unknown error code. 275 * @syscap SystemCapability.Telephony.CoreService 276 * @systemapi Hide this for inner system use. 277 * @since 8 278 */ 279 function sendUpdateCellLocationRequest(slotId?: number): Promise<void>; 280 281 /** 282 * Actively requests to update location information. 283 * 284 * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 285 * @param { AsyncCallback<void> } callback - The callback of sendUpdateCellLocationRequest. 286 * @throws { BusinessError } 201 - Permission denied. 287 * @throws { BusinessError } 202 - Non-system applications use system APIs. 288 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 289 * 2. Incorrect parameter types. 290 * @throws { BusinessError } 8300001 - Invalid parameter value. 291 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 292 * @throws { BusinessError } 8300003 - System internal error. 293 * @throws { BusinessError } 8300999 - Unknown error code. 294 * @syscap SystemCapability.Telephony.CoreService 295 * @systemapi Hide this for inner system use. 296 * @since 8 297 */ 298 function sendUpdateCellLocationRequest(callback: AsyncCallback<void>): void; 299 300 /** 301 * Get the current cell information. 302 * 303 * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 304 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 305 * index number supported by the device. 306 * @param { AsyncCallback<Array<CellInformation>> } callback - Indicates the callback for getting cell information. 307 * @throws { BusinessError } 201 - Permission denied. 308 * @throws { BusinessError } 202 - Non-system applications use system APIs. 309 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 310 * 2. Incorrect parameter types. 311 * @throws { BusinessError } 8300001 - Invalid parameter value. 312 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 313 * @throws { BusinessError } 8300003 - System internal error. 314 * @throws { BusinessError } 8300999 - Unknown error code. 315 * @syscap SystemCapability.Telephony.CoreService 316 * @systemapi Hide this for inner system use. 317 * @since 8 318 */ 319 function getCellInformation(slotId: number, callback: AsyncCallback<Array<CellInformation>>): void; 320 321 /** 322 * Get the current cell information. 323 * 324 * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 325 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 326 * index number supported by the device. 327 * @returns { Promise<Array<CellInformation>> } Returns the current cell information. 328 * @throws { BusinessError } 201 - Permission denied. 329 * @throws { BusinessError } 202 - Non-system applications use system APIs. 330 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 331 * 2. Incorrect parameter types. 332 * @throws { BusinessError } 8300001 - Invalid parameter value. 333 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 334 * @throws { BusinessError } 8300003 - System internal error. 335 * @throws { BusinessError } 8300999 - Unknown error code. 336 * @syscap SystemCapability.Telephony.CoreService 337 * @systemapi Hide this for inner system use. 338 * @since 8 339 */ 340 function getCellInformation(slotId?: number): Promise<Array<CellInformation>>; 341 342 /** 343 * Get the current cell information. 344 * 345 * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 346 * @param { AsyncCallback<Array<CellInformation>> } callback - Indicates the callback for getting cell information. 347 * @throws { BusinessError } 201 - Permission denied. 348 * @throws { BusinessError } 202 - Non-system applications use system APIs. 349 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 350 * 2. Incorrect parameter types. 351 * @throws { BusinessError } 8300001 - Invalid parameter value. 352 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 353 * @throws { BusinessError } 8300003 - System internal error. 354 * @throws { BusinessError } 8300999 - Unknown error code. 355 * @syscap SystemCapability.Telephony.CoreService 356 * @systemapi Hide this for inner system use. 357 * @since 8 358 */ 359 function getCellInformation(callback: AsyncCallback<Array<CellInformation>>): void; 360 361 /** 362 * Obtains the network search mode of the SIM card in a specified slot. 363 * 364 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 365 * index number supported by the device. 366 * @param { AsyncCallback<NetworkSelectionMode> } callback - Indicates the callback for getting 367 * the network search mode of the SIM card. Available values are as follows: 368 * <ul> 369 * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_UNKNOWN} 370 * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_AUTOMATIC} 371 * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_MANUAL} 372 * <ul> 373 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 374 * 2. Incorrect parameter types. 375 * @throws { BusinessError } 8300001 - Invalid parameter value. 376 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 377 * @throws { BusinessError } 8300003 - System internal error. 378 * @throws { BusinessError } 8300999 - Unknown error code. 379 * @syscap SystemCapability.Telephony.CoreService 380 * @since 6 381 */ 382 function getNetworkSelectionMode(slotId: number, callback: AsyncCallback<NetworkSelectionMode>): void; 383 384 /** 385 * Obtains the network search mode of the SIM card in a specified slot. 386 * 387 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 388 * index number supported by the device. 389 * @returns { Promise<NetworkSelectionMode> } Returns the network search mode of the SIM card. 390 * Available values are as follows: 391 * <ul> 392 * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_UNKNOWN} 393 * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_AUTOMATIC} 394 * <li>{@link NetworkSelectionMode#NETWORK_SELECTION_MANUAL} 395 * <ul> 396 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 397 * 2. Incorrect parameter types. 398 * @throws { BusinessError } 8300001 - Invalid parameter value. 399 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 400 * @throws { BusinessError } 8300003 - System internal error. 401 * @throws { BusinessError } 8300999 - Unknown error code. 402 * @syscap SystemCapability.Telephony.CoreService 403 * @since 6 404 */ 405 function getNetworkSelectionMode(slotId: number): Promise<NetworkSelectionMode>; 406 407 /** 408 * Set the current network selection mode. 409 * 410 * @permission ohos.permission.SET_TELEPHONY_STATE 411 * @param { NetworkSelectionModeOptions } options Indicates the network selection mode option. 412 * @param { AsyncCallback<void> } callback - The callback of setNetworkSelectionMode. 413 * @throws { BusinessError } 201 - Permission denied. 414 * @throws { BusinessError } 202 - Non-system applications use system APIs. 415 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 416 * 2. Incorrect parameter types. 417 * @throws { BusinessError } 8300001 - Invalid parameter value. 418 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 419 * @throws { BusinessError } 8300003 - System internal error. 420 * @throws { BusinessError } 8300999 - Unknown error code. 421 * @syscap SystemCapability.Telephony.CoreService 422 * @systemapi Hide this for inner system use. 423 * @since 6 424 */ 425 function setNetworkSelectionMode(options: NetworkSelectionModeOptions, callback: AsyncCallback<void>): void; 426 427 /** 428 * Set the current network selection mode. 429 * 430 * @permission ohos.permission.SET_TELEPHONY_STATE 431 * @param { NetworkSelectionModeOptions } options Indicates the network selection mode option. 432 * @returns { Promise<void> } The promise returned by the setNetworkSelectionMode. 433 * @throws { BusinessError } 201 - Permission denied. 434 * @throws { BusinessError } 202 - Non-system applications use system APIs. 435 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 436 * 2. Incorrect parameter types. 437 * @throws { BusinessError } 8300001 - Invalid parameter value. 438 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 439 * @throws { BusinessError } 8300003 - System internal error. 440 * @throws { BusinessError } 8300999 - Unknown error code. 441 * @syscap SystemCapability.Telephony.CoreService 442 * @systemapi Hide this for inner system use. 443 * @since 6 444 */ 445 function setNetworkSelectionMode(options: NetworkSelectionModeOptions): Promise<void>; 446 447 /** 448 * Get network search information. 449 * 450 * @permission ohos.permission.GET_TELEPHONY_STATE 451 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 452 * index number supported by the device. 453 * @param { AsyncCallback<NetworkSearchResult> } callback - Indicates the callback for getting 454 * the search results of the network. 455 * @throws { BusinessError } 201 - Permission denied. 456 * @throws { BusinessError } 202 - Non-system applications use system APIs. 457 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 458 * 2. Incorrect parameter types. 459 * @throws { BusinessError } 8300001 - Invalid parameter value. 460 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 461 * @throws { BusinessError } 8300003 - System internal error. 462 * @throws { BusinessError } 8300999 - Unknown error code. 463 * @syscap SystemCapability.Telephony.CoreService 464 * @systemapi Hide this for inner system use. 465 * @since 6 466 */ 467 function getNetworkSearchInformation(slotId: number, callback: AsyncCallback<NetworkSearchResult>): void; 468 469 /** 470 * Get network search information. 471 * 472 * @permission ohos.permission.GET_TELEPHONY_STATE 473 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 474 * index number supported by the device. 475 * @returns { Promise<NetworkSearchResult> } Returns the search results of the network. 476 * @throws { BusinessError } 201 - Permission denied. 477 * @throws { BusinessError } 202 - Non-system applications use system APIs. 478 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 479 * 2. Incorrect parameter types. 480 * @throws { BusinessError } 8300001 - Invalid parameter value. 481 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 482 * @throws { BusinessError } 8300003 - System internal error. 483 * @throws { BusinessError } 8300999 - Unknown error code. 484 * @syscap SystemCapability.Telephony.CoreService 485 * @systemapi Hide this for inner system use. 486 * @since 6 487 */ 488 function getNetworkSearchInformation(slotId: number): Promise<NetworkSearchResult>; 489 490 /** 491 * Obtains the ISO-defined country code of the country where the registered network is deployed. 492 * 493 * @param { number } slotId - Indicates the card slot index number, 494 * ranging from 0 to the maximum card slot index number supported by the device. 495 * @param { AsyncCallback<string> } callback - Indicates the callback for getting the country code 496 * defined in ISO 3166-2; returns an empty string if the device is not registered with any network. 497 * @throws { BusinessError } 401 - Parameter error. 498 * @throws { BusinessError } 8300001 - Invalid parameter value. 499 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 500 * @throws { BusinessError } 8300003 - System internal error. 501 * @throws { BusinessError } 8300999 - Unknown error code. 502 * @syscap SystemCapability.Telephony.CoreService 503 * @since 7 504 */ 505 function getISOCountryCodeForNetwork(slotId: number, callback: AsyncCallback<string>): void; 506 507 /** 508 * Obtains the ISO-defined country code of the country where the registered network is deployed. 509 * 510 * @param { number } slotId - Indicates the card slot index number, 511 * ranging from 0 to the maximum card slot index number supported by the device. 512 * @returns { Promise<string> } Returns the country code defined in ISO 3166-2. 513 * Returns an empty string if the device is not registered with any network. 514 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 515 * 2. Incorrect parameter types. 516 * @throws { BusinessError } 8300001 - Invalid parameter value. 517 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 518 * @throws { BusinessError } 8300003 - System internal error. 519 * @throws { BusinessError } 8300999 - Unknown error code. 520 * @syscap SystemCapability.Telephony.CoreService 521 * @since 7 522 */ 523 function getISOCountryCodeForNetwork(slotId: number): Promise<string>; 524 525 /** 526 * Obtains the ISO-defined country code of the country where the registered network is deployed. 527 * 528 * @param { number } slotId - Indicates the card slot index number, 529 * ranging from 0 to the maximum card slots supported by the device. 530 * @returns { string } Returns the country code defined in ISO 3166-2. 531 * Returns an empty string if the device is not registered with any network. 532 * @syscap SystemCapability.Telephony.CoreService 533 * @since 10 534 */ 535 function getISOCountryCodeForNetworkSync(slotId: number): string; 536 537 /** 538 * Get the option mode of NR. 539 * 540 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 541 * index number supported by the device. 542 * @param { AsyncCallback<NrOptionMode> } callback - Indicates the callback for getting the selection mode of NR. 543 * @throws { BusinessError } 202 - Non-system applications use system APIs. 544 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 545 * 2. Incorrect parameter types. 546 * @throws { BusinessError } 8300001 - Invalid parameter value. 547 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 548 * @throws { BusinessError } 8300003 - System internal error. 549 * @throws { BusinessError } 8300999 - Unknown error code. 550 * @syscap SystemCapability.Telephony.CoreService 551 * @systemapi Hide this for inner system use. 552 * @since 8 553 * @deprecated since 10 554 * @useinstead telephony.radio#getNROptionMode 555 */ 556 function getNrOptionMode(slotId: number, callback: AsyncCallback<NrOptionMode>): void; 557 558 /** 559 * Get the option mode of NR. 560 * 561 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 562 * index number supported by the device. 563 * @returns { Promise<NrOptionMode> } Returns the selection mode of NR. 564 * @throws { BusinessError } 202 - Non-system applications use system APIs. 565 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 566 * 2. Incorrect parameter types. 567 * @throws { BusinessError } 8300001 - Invalid parameter value. 568 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 569 * @throws { BusinessError } 8300003 - System internal error. 570 * @throws { BusinessError } 8300999 - Unknown error code. 571 * @syscap SystemCapability.Telephony.CoreService 572 * @systemapi Hide this for inner system use. 573 * @since 8 574 * @deprecated since 10 575 * @useinstead telephony.radio#getNROptionMode 576 */ 577 function getNrOptionMode(slotId?: number): Promise<NrOptionMode>; 578 579 /** 580 * Get the option mode of NR. 581 * 582 * @param { AsyncCallback<NrOptionMode> } callback - Indicates the callback for getting the selection mode of NR. 583 * @throws { BusinessError } 202 - Non-system applications use system APIs. 584 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 585 * 2. Incorrect parameter types. 586 * @throws { BusinessError } 8300001 - Invalid parameter value. 587 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 588 * @throws { BusinessError } 8300003 - System internal error. 589 * @throws { BusinessError } 8300999 - Unknown error code. 590 * @syscap SystemCapability.Telephony.CoreService 591 * @systemapi Hide this for inner system use. 592 * @since 8 593 * @deprecated since 10 594 * @useinstead telephony.radio#getNROptionMode 595 */ 596 function getNrOptionMode(callback: AsyncCallback<NrOptionMode>): void; 597 598 /** 599 * Obtains the IMEI of a specified card slot of the device. 600 * 601 * @permission ohos.permission.GET_TELEPHONY_STATE 602 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 603 * index number supported by the device. 604 * @param { AsyncCallback<string> } callback - Indicates the callback for getting the IMEI. 605 * Returns an empty string if the IMEI does not exist. 606 * @throws { BusinessError } 201 - Permission denied. 607 * @throws { BusinessError } 202 - Non-system applications use system APIs. 608 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 609 * 2. Incorrect parameter types. 610 * @throws { BusinessError } 8300001 - Invalid parameter value. 611 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 612 * @throws { BusinessError } 8300003 - System internal error. 613 * @throws { BusinessError } 8300999 - Unknown error code. 614 * @syscap SystemCapability.Telephony.CoreService 615 * @systemapi Hide this for inner system use. 616 * @since 8 617 */ 618 function getIMEI(slotId: number, callback: AsyncCallback<string>): void; 619 620 /** 621 * Obtains the IMEI of a specified card slot of the device. 622 * 623 * @permission ohos.permission.GET_TELEPHONY_STATE 624 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 625 * index number supported by the device. 626 * @returns { Promise<string> } Returns the IMEI. Returns an empty string if the IMEI does not exist. 627 * @throws { BusinessError } 201 - Permission denied. 628 * @throws { BusinessError } 202 - Non-system applications use system APIs. 629 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 630 * 2. Incorrect parameter types. 631 * @throws { BusinessError } 8300001 - Invalid parameter value. 632 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 633 * @throws { BusinessError } 8300003 - System internal error. 634 * @throws { BusinessError } 8300999 - Unknown error code. 635 * @syscap SystemCapability.Telephony.CoreService 636 * @systemapi Hide this for inner system use. 637 * @since 8 638 */ 639 function getIMEI(slotId?: number): Promise<string>; 640 641 /** 642 * Obtains the IMEI of a specified card slot of the device. 643 * 644 * @permission ohos.permission.GET_TELEPHONY_STATE 645 * @param { AsyncCallback<string> } callback - Indicates the callback for getting the IMEI. 646 * Returns an empty string if the IMEI does not exist. 647 * @throws { BusinessError } 201 - Permission denied. 648 * @throws { BusinessError } 202 - Non-system applications use system APIs. 649 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 650 * 2. Incorrect parameter types. 651 * @throws { BusinessError } 8300001 - Invalid parameter value. 652 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 653 * @throws { BusinessError } 8300003 - System internal error. 654 * @throws { BusinessError } 8300999 - Unknown error code. 655 * @syscap SystemCapability.Telephony.CoreService 656 * @systemapi Hide this for inner system use. 657 * @since 8 658 */ 659 function getIMEI(callback: AsyncCallback<string>): void; 660 661 /** 662 * Obtains the MEID of a specified card slot of the device. 663 * 664 * @permission ohos.permission.GET_TELEPHONY_STATE 665 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 666 * index number supported by the device. 667 * @param { AsyncCallback<string> } callback - Indicates the callback for getting the MEID. 668 * Returns an empty string if the MEID does not exist. 669 * @throws { BusinessError } 201 - Permission denied. 670 * @throws { BusinessError } 202 - Non-system applications use system APIs. 671 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 672 * 2. Incorrect parameter types. 673 * @throws { BusinessError } 8300001 - Invalid parameter value. 674 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 675 * @throws { BusinessError } 8300003 - System internal error. 676 * @throws { BusinessError } 8300999 - Unknown error code. 677 * @syscap SystemCapability.Telephony.CoreService 678 * @systemapi Hide this for inner system use. 679 * @since 8 680 */ 681 function getMEID(slotId: number, callback: AsyncCallback<string>): void; 682 683 /** 684 * Obtains the MEID of a specified card slot of the device. 685 * 686 * @permission ohos.permission.GET_TELEPHONY_STATE 687 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 688 * index number supported by the device. 689 * @returns { Promise<string> } Returns the MEID. Returns an empty string if the MEID does not exist. 690 * @throws { BusinessError } 201 - Permission denied. 691 * @throws { BusinessError } 202 - Non-system applications use system APIs. 692 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 693 * 2. Incorrect parameter types. 694 * @throws { BusinessError } 8300001 - Invalid parameter value. 695 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 696 * @throws { BusinessError } 8300003 - System internal error. 697 * @throws { BusinessError } 8300999 - Unknown error code. 698 * @syscap SystemCapability.Telephony.CoreService 699 * @systemapi Hide this for inner system use. 700 * @since 8 701 */ 702 function getMEID(slotId?: number): Promise<string>; 703 704 /** 705 * Obtains the MEID of a specified card slot of the device. 706 * 707 * @permission ohos.permission.GET_TELEPHONY_STATE 708 * @param { AsyncCallback<string> } callback - Indicates the callback for getting the MEID. 709 * Returns an empty string if the MEID does not exist. 710 * @throws { BusinessError } 201 - Permission denied. 711 * @throws { BusinessError } 202 - Non-system applications use system APIs. 712 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 713 * 2. Incorrect parameter types. 714 * @throws { BusinessError } 8300001 - Invalid parameter value. 715 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 716 * @throws { BusinessError } 8300003 - System internal error. 717 * @throws { BusinessError } 8300999 - Unknown error code. 718 * @syscap SystemCapability.Telephony.CoreService 719 * @systemapi Hide this for inner system use. 720 * @since 8 721 */ 722 function getMEID(callback: AsyncCallback<string>): void; 723 724 /** 725 * Obtains the unique device ID of a specified card slot of the device. 726 * 727 * If the device is registered with a 3GPP-compliant network, the international mobile equipment identity 728 * (IMEI) is returned. If the device is registered with a 3GPP2-compliant network, the mobile equipment identifier 729 * (MEID) is returned. 730 * 731 * @permission ohos.permission.GET_TELEPHONY_STATE 732 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 733 * index number supported by the device. 734 * @param { AsyncCallback<string> } callback - Indicates the callback for getting the unique device ID. 735 * Returns an empty string if the unique device ID does not exist. 736 * @throws { BusinessError } 201 - Permission denied. 737 * @throws { BusinessError } 202 - Non-system applications use system APIs. 738 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 739 * 2. Incorrect parameter types. 740 * @throws { BusinessError } 8300001 - Invalid parameter value. 741 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 742 * @throws { BusinessError } 8300003 - System internal error. 743 * @throws { BusinessError } 8300999 - Unknown error code. 744 * @syscap SystemCapability.Telephony.CoreService 745 * @systemapi Hide this for inner system use. 746 * @since 8 747 */ 748 function getUniqueDeviceId(slotId: number, callback: AsyncCallback<string>): void; 749 750 /** 751 * Obtains the unique device ID of a specified card slot of the device. 752 * 753 * If the device is registered with a 3GPP-compliant network, the international mobile equipment identity 754 * (IMEI) is returned. If the device is registered with a 3GPP2-compliant network, the mobile equipment identifier 755 * (MEID) is returned. 756 * 757 * @permission ohos.permission.GET_TELEPHONY_STATE 758 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 759 * index number supported by the device. 760 * @returns { Promise<string> } Returns the unique device ID. 761 * Returns an empty string if the unique device ID does not exist. 762 * @throws { BusinessError } 201 - Permission denied. 763 * @throws { BusinessError } 202 - Non-system applications use system APIs. 764 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 765 * 2. Incorrect parameter types. 766 * @throws { BusinessError } 8300001 - Invalid parameter value. 767 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 768 * @throws { BusinessError } 8300003 - System internal error. 769 * @throws { BusinessError } 8300999 - Unknown error code. 770 * @syscap SystemCapability.Telephony.CoreService 771 * @systemapi Hide this for inner system use. 772 * @since 8 773 */ 774 function getUniqueDeviceId(slotId?: number): Promise<string>; 775 776 /** 777 * Obtains the unique device ID of a specified card slot of the device. 778 * 779 * If the device is registered with a 3GPP-compliant network, the international mobile equipment identity 780 * (IMEI) is returned. If the device is registered with a 3GPP2-compliant network, the mobile equipment identifier 781 * (MEID) is returned. 782 * 783 * @permission ohos.permission.GET_TELEPHONY_STATE 784 * @param { AsyncCallback<string> } callback - Indicates the callback for getting the unique device ID. 785 * Returns an empty string if the unique device ID does not exist. 786 * @throws { BusinessError } 201 - Permission denied. 787 * @throws { BusinessError } 202 - Non-system applications use system APIs. 788 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 789 * 2. Incorrect parameter types. 790 * @throws { BusinessError } 8300001 - Invalid parameter value. 791 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 792 * @throws { BusinessError } 8300003 - System internal error. 793 * @throws { BusinessError } 8300999 - Unknown error code. 794 * @syscap SystemCapability.Telephony.CoreService 795 * @systemapi Hide this for inner system use. 796 * @since 8 797 */ 798 function getUniqueDeviceId(callback: AsyncCallback<string>): void; 799 800 /** 801 * Obtains the index number of the card slot where the primary card is located if multiple SIM cards are inserted. 802 * 803 * The primary card is the SIM card inserted in the card slot that uses data services by default. 804 * 805 * @param { AsyncCallback<number> } callback - Indicates the callback for getting the index number of 806 * the primary card slot. 807 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 808 * 2. Incorrect parameter types. 809 * @throws { BusinessError } 8300001 - Invalid parameter value. 810 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 811 * @throws { BusinessError } 8300003 - System internal error. 812 * @throws { BusinessError } 8300999 - Unknown error code. 813 * @syscap SystemCapability.Telephony.CoreService 814 * @since 7 815 */ 816 function getPrimarySlotId(callback: AsyncCallback<number>): void; 817 818 /** 819 * Obtains the index number of the card slot where the primary card is located if multiple SIM cards are inserted. 820 * 821 * The primary card is the SIM card inserted in the card slot that uses data services by default. 822 * 823 * @returns { Promise<number> } Returns the index number of the primary card slot. 824 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 825 * @throws { BusinessError } 8300003 - System internal error. 826 * @throws { BusinessError } 8300999 - Unknown error code. 827 * @syscap SystemCapability.Telephony.CoreService 828 * @since 7 829 */ 830 function getPrimarySlotId(): Promise<number>; 831 832 /** 833 * Set the index number of the main SIM card slot. 834 * 835 * @permission ohos.permission.SET_TELEPHONY_STATE 836 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 837 * index number supported by the device. 838 * @param { AsyncCallback<void> } callback - The callback of setPrimarySlotId. 839 * @throws { BusinessError } 201 - Permission denied. 840 * @throws { BusinessError } 202 - Non-system applications use system APIs. 841 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 842 * 2. Incorrect parameter types. 843 * @throws { BusinessError } 8300001 - Invalid parameter value. 844 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 845 * @throws { BusinessError } 8300003 - System internal error. 846 * @throws { BusinessError } 8300004 - Do not have sim card. 847 * @throws { BusinessError } 8300999 - Unknown error code. 848 * @syscap SystemCapability.Telephony.CoreService 849 * @systemapi Hide this for inner system use. 850 * @since 8 851 */ 852 function setPrimarySlotId(slotId: number, callback: AsyncCallback<void>): void; 853 854 /** 855 * Set the index number of the main SIM card slot. 856 * 857 * @permission ohos.permission.SET_TELEPHONY_STATE 858 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 859 * index number supported by the device. 860 * @returns { Promise<void> } The promise returned by the setPrimarySlotId. 861 * @throws { BusinessError } 201 - Permission denied. 862 * @throws { BusinessError } 202 - Non-system applications use system APIs. 863 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 864 * 2. Incorrect parameter types. 865 * @throws { BusinessError } 8300001 - Invalid parameter value. 866 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 867 * @throws { BusinessError } 8300003 - System internal error. 868 * @throws { BusinessError } 8300004 - Do not have sim card. 869 * @throws { BusinessError } 8300999 - Unknown error code. 870 * @syscap SystemCapability.Telephony.CoreService 871 * @systemapi Hide this for inner system use. 872 * @since 8 873 */ 874 function setPrimarySlotId(slotId: number): Promise<void>; 875 876 /** 877 * Obtains the list of signal strength information of the registered network corresponding to a specified SIM card. 878 * 879 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 880 * index number supported by the device. 881 * @param { AsyncCallback<Array<SignalInformation>> } callback - Indicates the callback for getting 882 * the instance list of the child classes derived from {@link SignalInformation}. 883 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 884 * 2. Incorrect parameter types. 885 * @throws { BusinessError } 8300001 - Invalid parameter value. 886 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 887 * @throws { BusinessError } 8300003 - System internal error. 888 * @throws { BusinessError } 8300999 - Unknown error code. 889 * @syscap SystemCapability.Telephony.CoreService 890 * @since 7 891 */ 892 function getSignalInformation(slotId: number, callback: AsyncCallback<Array<SignalInformation>>): void; 893 894 /** 895 * Obtains the list of signal strength information of the registered network corresponding to a specified SIM card. 896 * 897 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 898 * index number supported by the device. 899 * @returns { Promise<Array<SignalInformation>> } Returns the callback for getting the instance list of 900 * the child classes derived from {@link SignalInformation}. 901 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 902 * 2. Incorrect parameter types. 903 * @throws { BusinessError } 8300001 - Invalid parameter value. 904 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 905 * @throws { BusinessError } 8300003 - System internal error. 906 * @throws { BusinessError } 8300999 - Unknown error code. 907 * @syscap SystemCapability.Telephony.CoreService 908 * @since 7 909 */ 910 function getSignalInformation(slotId: number): Promise<Array<SignalInformation>>; 911 912 /** 913 * Obtains the list of signal strength information of the registered network corresponding to a specified SIM card. 914 * 915 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum 916 * card slots supported by the device. 917 * @returns { Array<SignalInformation> } Returns the callback for getting the instance list of 918 * the child classes derived from {@link SignalInformation}. 919 * @syscap SystemCapability.Telephony.CoreService 920 * @since 10 921 */ 922 function getSignalInformationSync(slotId: number): Array<SignalInformation>; 923 924 /** 925 * Checks whether the device supports 5G New Radio (NR). 926 * 927 * @returns { boolean } Returns {@code true} if the device supports 5G NR; returns {@code false} otherwise. 928 * @syscap SystemCapability.Telephony.CoreService 929 * @since 7 930 * @deprecated since 9 931 * @useinstead telephony.radio#isNRSupported 932 */ 933 function isNrSupported(): boolean; 934 935 /** 936 * Checks whether the device supports 5G New Radio (NR) by according card slot. 937 * 938 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 939 * index number supported by the device. 940 * @returns { boolean } Returns {@code true} if the device supports 5G NR; returns {@code false} otherwise. 941 * @syscap SystemCapability.Telephony.CoreService 942 * @since 8 943 * @deprecated since 9 944 * @useinstead telephony.radio#isNRSupported 945 */ 946 function isNrSupported(slotId: number): boolean; 947 948 /** 949 * Checks whether the device supports 5G New Radio (NR). 950 * 951 * @returns { boolean } Returns {@code true} if the device supports 5G NR; returns {@code false} otherwise. 952 * @syscap SystemCapability.Telephony.CoreService 953 * @since 9 954 */ 955 function isNRSupported(): boolean; 956 957 /** 958 * Checks whether the device supports 5G New Radio (NR) by according card slot. 959 * 960 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 961 * index number supported by the device. 962 * @returns { boolean } Returns {@code true} if the device supports 5G NR; returns {@code false} otherwise. 963 * @syscap SystemCapability.Telephony.CoreService 964 * @since 9 965 */ 966 function isNRSupported(slotId: number): boolean; 967 968 /** 969 * Checks whether the radio service is enabled. 970 * 971 * @permission ohos.permission.GET_NETWORK_INFO 972 * @param { number } slotId - Indicates the card slot index number, 973 * ranging from 0 to the maximum card slot index number supported by the device. 974 * @param { AsyncCallback<boolean> } callback - Returns {@code true} If the radio service is enabled. 975 * Returns {@code false} otherwise. 976 * @throws { BusinessError } 201 - Permission denied. 977 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 978 * 2. Incorrect parameter types. 979 * @throws { BusinessError } 8300001 - Invalid parameter value. 980 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 981 * @throws { BusinessError } 8300003 - System internal error. 982 * @throws { BusinessError } 8300999 - Unknown error code. 983 * @syscap SystemCapability.Telephony.CoreService 984 * @since 7 985 */ 986 function isRadioOn(slotId: number, callback: AsyncCallback<boolean>): void; 987 988 /** 989 * Checks whether the radio service is enabled. 990 * 991 * @permission ohos.permission.GET_NETWORK_INFO 992 * @param { number } slotId - Indicates the card slot index number, 993 * ranging from 0 to the maximum card slot index number supported by the device. 994 * @returns { Promise<boolean> } Returns {@code true} If the radio service is enabled; returns {@code false} otherwise. 995 * @throws { BusinessError } 201 - Permission denied. 996 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 997 * 2. Incorrect parameter types. 998 * @throws { BusinessError } 8300001 - Invalid parameter value. 999 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1000 * @throws { BusinessError } 8300003 - System internal error. 1001 * @throws { BusinessError } 8300999 - Unknown error code. 1002 * @syscap SystemCapability.Telephony.CoreService 1003 * @since 7 1004 */ 1005 function isRadioOn(slotId?: number): Promise<boolean>; 1006 1007 /** 1008 * Checks whether the radio service is enabled. 1009 * 1010 * @permission ohos.permission.GET_NETWORK_INFO 1011 * @param { AsyncCallback<boolean> } callback - Returns {@code true} If the radio service is enabled. 1012 * Returns {@code false} otherwise. 1013 * @throws { BusinessError } 201 - Permission denied. 1014 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1015 * 2. Incorrect parameter types. 1016 * @throws { BusinessError } 8300001 - Invalid parameter value. 1017 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1018 * @throws { BusinessError } 8300003 - System internal error. 1019 * @throws { BusinessError } 8300999 - Unknown error code. 1020 * @syscap SystemCapability.Telephony.CoreService 1021 * @since 7 1022 */ 1023 function isRadioOn(callback: AsyncCallback<boolean>): void; 1024 1025 /** 1026 * Turn on the radio service. 1027 * 1028 * @permission ohos.permission.SET_TELEPHONY_STATE 1029 * @param { number } slotId - Indicates the card slot index number, 1030 * ranging from 0 to the maximum card slot index number supported by the device. 1031 * @param { AsyncCallback<void> } callback - The callback of turnOnRadio. 1032 * @throws { BusinessError } 201 - Permission denied. 1033 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1034 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1035 * 2. Incorrect parameter types. 1036 * @throws { BusinessError } 8300001 - Invalid parameter value. 1037 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1038 * @throws { BusinessError } 8300003 - System internal error. 1039 * @throws { BusinessError } 8300999 - Unknown error code. 1040 * @syscap SystemCapability.Telephony.CoreService 1041 * @systemapi Hide this for inner system use. 1042 * @since 7 1043 */ 1044 function turnOnRadio(slotId: number, callback: AsyncCallback<void>): void; 1045 1046 /** 1047 * Turn on the radio service. 1048 * 1049 * @permission ohos.permission.SET_TELEPHONY_STATE 1050 * @param { number } slotId - Indicates the card slot index number, 1051 * ranging from 0 to the maximum card slot index number supported by the device. 1052 * @returns { Promise<void> } The promise returned by the turnOnRadio. 1053 * @throws { BusinessError } 201 - Permission denied. 1054 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1055 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1056 * 2. Incorrect parameter types. 1057 * @throws { BusinessError } 8300001 - Invalid parameter value. 1058 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1059 * @throws { BusinessError } 8300003 - System internal error. 1060 * @throws { BusinessError } 8300999 - Unknown error code. 1061 * @syscap SystemCapability.Telephony.CoreService 1062 * @systemapi Hide this for inner system use. 1063 * @since 7 1064 */ 1065 function turnOnRadio(slotId?: number): Promise<void>; 1066 1067 /** 1068 * Turn on the radio service. 1069 * 1070 * @permission ohos.permission.SET_TELEPHONY_STATE 1071 * @param { AsyncCallback<void> } callback - The callback of turnOnRadio. 1072 * @throws { BusinessError } 201 - Permission denied. 1073 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1074 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1075 * 2. Incorrect parameter types. 1076 * @throws { BusinessError } 8300001 - Invalid parameter value. 1077 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1078 * @throws { BusinessError } 8300003 - System internal error. 1079 * @throws { BusinessError } 8300999 - Unknown error code. 1080 * @syscap SystemCapability.Telephony.CoreService 1081 * @systemapi Hide this for inner system use. 1082 * @since 7 1083 */ 1084 function turnOnRadio(callback: AsyncCallback<void>): void; 1085 1086 /** 1087 * Turn off the radio service. 1088 * 1089 * @permission ohos.permission.SET_TELEPHONY_STATE 1090 * @param { number } slotId - Indicates the card slot index number, 1091 * ranging from 0 to the maximum card slot index number supported by the device. 1092 * @param { AsyncCallback<void> } callback - The callback of turnOffRadio. 1093 * @throws { BusinessError } 201 - Permission denied. 1094 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1095 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1096 * 2. Incorrect parameter types. 1097 * @throws { BusinessError } 8300001 - Invalid parameter value. 1098 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1099 * @throws { BusinessError } 8300003 - System internal error. 1100 * @throws { BusinessError } 8300999 - Unknown error code. 1101 * @syscap SystemCapability.Telephony.CoreService 1102 * @systemapi Hide this for inner system use. 1103 * @since 7 1104 */ 1105 function turnOffRadio(slotId: number, callback: AsyncCallback<void>): void; 1106 1107 /** 1108 * Turn off the radio service. 1109 * 1110 * @permission ohos.permission.SET_TELEPHONY_STATE 1111 * @param { number } slotId - Indicates the card slot index number, 1112 * ranging from 0 to the maximum card slot index number supported by the device. 1113 * @returns { Promise<void> } The promise returned by the turnOffRadio. 1114 * @throws { BusinessError } 201 - Permission denied. 1115 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1116 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1117 * 2. Incorrect parameter types. 1118 * @throws { BusinessError } 8300001 - Invalid parameter value. 1119 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1120 * @throws { BusinessError } 8300003 - System internal error. 1121 * @throws { BusinessError } 8300999 - Unknown error code. 1122 * @syscap SystemCapability.Telephony.CoreService 1123 * @systemapi Hide this for inner system use. 1124 * @since 7 1125 */ 1126 function turnOffRadio(slotId?: number): Promise<void>; 1127 1128 /** 1129 * Turn off the radio service. 1130 * 1131 * @permission ohos.permission.SET_TELEPHONY_STATE 1132 * @param { AsyncCallback<void> } callback - The callback of turnOffRadio. 1133 * @throws { BusinessError } 201 - Permission denied. 1134 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1135 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1136 * 2. Incorrect parameter types. 1137 * @throws { BusinessError } 8300001 - Invalid parameter value. 1138 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1139 * @throws { BusinessError } 8300003 - System internal error. 1140 * @throws { BusinessError } 8300999 - Unknown error code. 1141 * @syscap SystemCapability.Telephony.CoreService 1142 * @systemapi Hide this for inner system use. 1143 * @since 7 1144 */ 1145 function turnOffRadio(callback: AsyncCallback<void>): void; 1146 1147 /** 1148 * Get the operator name of the specified SIM card slot. 1149 * 1150 * @param { number } slotId - Indicates the card slot index number, 1151 * ranging from 0 to the maximum card slot index number supported by the device. 1152 * @param { AsyncCallback<string> } callback - Indicates the callback for getting the operator name. 1153 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1154 * 2. Incorrect parameter types. 1155 * @throws { BusinessError } 8300001 - Invalid parameter value. 1156 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1157 * @throws { BusinessError } 8300003 - System internal error. 1158 * @throws { BusinessError } 8300999 - Unknown error code. 1159 * @syscap SystemCapability.Telephony.CoreService 1160 * @since 7 1161 */ 1162 function getOperatorName(slotId: number, callback: AsyncCallback<string>): void; 1163 1164 /** 1165 * Get the operator name of the specified SIM card slot. 1166 * 1167 * @param { number } slotId - Indicates the card slot index number, 1168 * ranging from 0 to the maximum card slot index number supported by the device. 1169 * @returns { Promise<string> } Returns the operator name. 1170 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1171 * 2. Incorrect parameter types. 1172 * @throws { BusinessError } 8300001 - Invalid parameter value. 1173 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1174 * @throws { BusinessError } 8300003 - System internal error. 1175 * @throws { BusinessError } 8300999 - Unknown error code. 1176 * @syscap SystemCapability.Telephony.CoreService 1177 * @since 7 1178 */ 1179 function getOperatorName(slotId: number): Promise<string>; 1180 1181 /** 1182 * Get the operator name of the specified SIM card slot. 1183 * 1184 * @param { number } slotId - Indicates the card slot index number, 1185 * ranging from 0 to the maximum card slot index number supported by the device. 1186 * @returns { string } Returns the operator name. 1187 * @syscap SystemCapability.Telephony.CoreService 1188 * @since 10 1189 */ 1190 function getOperatorNameSync(slotId: number): string; 1191 1192 /** 1193 * Set the preferred network for the specified SIM card slot. 1194 * 1195 * @permission ohos.permission.SET_TELEPHONY_STATE 1196 * @param { number } slotId - Indicates the card slot index number, 1197 * ranging from 0 to the maximum card slot index number supported by the device. 1198 * @param { PreferredNetworkMode } networkMode - Indicates that you want to set the preferred network mode. 1199 * @param { AsyncCallback<void> } callback - The callback of setPreferredNetwork. 1200 * @throws { BusinessError } 201 - Permission denied. 1201 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1202 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1203 * 2. Incorrect parameter types. 1204 * @throws { BusinessError } 8300001 - Invalid parameter value. 1205 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1206 * @throws { BusinessError } 8300003 - System internal error. 1207 * @throws { BusinessError } 8300999 - Unknown error code. 1208 * @syscap SystemCapability.Telephony.CoreService 1209 * @systemapi Hide this for inner system use. 1210 * @since 8 1211 */ 1212 function setPreferredNetwork(slotId: number, networkMode: PreferredNetworkMode, callback: AsyncCallback<void>): void; 1213 1214 /** 1215 * Set the preferred network for the specified SIM card slot. 1216 * 1217 * @permission ohos.permission.SET_TELEPHONY_STATE 1218 * @param { number } slotId - Indicates the card slot index number, 1219 * ranging from 0 to the maximum card slot index number supported by the device. 1220 * @param { PreferredNetworkMode } networkMode - Indicates that you want to set the preferred network mode. 1221 * @returns { Promise<void> } The promise returned by the setPreferredNetwork. 1222 * @throws { BusinessError } 201 - Permission denied. 1223 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1224 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1225 * 2. Incorrect parameter types. 1226 * @throws { BusinessError } 8300001 - Invalid parameter value. 1227 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1228 * @throws { BusinessError } 8300003 - System internal error. 1229 * @throws { BusinessError } 8300999 - Unknown error code. 1230 * @syscap SystemCapability.Telephony.CoreService 1231 * @systemapi Hide this for inner system use. 1232 * @since 8 1233 */ 1234 function setPreferredNetwork(slotId: number, networkMode: PreferredNetworkMode): Promise<void>; 1235 1236 /** 1237 * Get the preferred network for the specified SIM card slot. 1238 * 1239 * @permission ohos.permission.GET_TELEPHONY_STATE 1240 * @param { number } slotId - Indicates the card slot index number, 1241 * ranging from 0 to the maximum card slot index number supported by the device. 1242 * @param { AsyncCallback<PreferredNetworkMode> } callback - Indicates the callback for getting 1243 * the preferred network mode to obtain. 1244 * @throws { BusinessError } 201 - Permission denied. 1245 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1246 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1247 * 2. Incorrect parameter types. 1248 * @throws { BusinessError } 8300001 - Invalid parameter value. 1249 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1250 * @throws { BusinessError } 8300003 - System internal error. 1251 * @throws { BusinessError } 8300999 - Unknown error code. 1252 * @syscap SystemCapability.Telephony.CoreService 1253 * @systemapi Hide this for inner system use. 1254 * @since 8 1255 */ 1256 function getPreferredNetwork(slotId: number, callback: AsyncCallback<PreferredNetworkMode>): void; 1257 1258 /** 1259 * Get the preferred network for the specified SIM card slot. 1260 * 1261 * @permission ohos.permission.GET_TELEPHONY_STATE 1262 * @param { number } slotId - Indicates the card slot index number, 1263 * ranging from 0 to the maximum card slot index number supported by the device. 1264 * @returns { Promise<PreferredNetworkMode> } Returns the callback for getting the preferred network mode to obtain. 1265 * @throws { BusinessError } 201 - Permission denied. 1266 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1267 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1268 * 2. Incorrect parameter types. 1269 * @throws { BusinessError } 8300001 - Invalid parameter value. 1270 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1271 * @throws { BusinessError } 8300003 - System internal error. 1272 * @throws { BusinessError } 8300999 - Unknown error code. 1273 * @syscap SystemCapability.Telephony.CoreService 1274 * @systemapi Hide this for inner system use. 1275 * @since 8 1276 */ 1277 function getPreferredNetwork(slotId: number): Promise<PreferredNetworkMode>; 1278 1279 /** 1280 * Get the IMS registration state info of specified IMS service type. 1281 * 1282 * @permission ohos.permission.GET_TELEPHONY_STATE 1283 * @param { number } slotId - Indicates the card slot index number, 1284 * ranging from 0 to the maximum card slot index number supported by the device. 1285 * @param { ImsServiceType } imsType - Indicates the ims service type of the {@link ImsServiceType}. 1286 * @param { AsyncCallback<ImsRegInfo> } callback - Indicates an instance of the {@link ImsRegInfo} class. 1287 * @throws { BusinessError } 201 - Permission denied. 1288 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1289 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1290 * @throws { BusinessError } 8300001 - Invalid parameter value. 1291 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1292 * @throws { BusinessError } 8300003 - System internal error. 1293 * @throws { BusinessError } 8300999 - Unknown error code. 1294 * @syscap SystemCapability.Telephony.CoreService 1295 * @systemapi Hide this for inner system use. 1296 * @since 9 1297 */ 1298 function getImsRegInfo(slotId: number, imsType: ImsServiceType, callback: AsyncCallback<ImsRegInfo>): void; 1299 1300 /** 1301 * Get the IMS registration state info of specified IMS service type. 1302 * 1303 * @permission ohos.permission.GET_TELEPHONY_STATE 1304 * @param { number } slotId - Indicates the card slot index number, 1305 * ranging from 0 to the maximum card slot index number supported by the device. 1306 * @param { ImsServiceType } imsType - Indicates the ims service type of the {@link ImsServiceType}. 1307 * @returns { Promise<ImsRegInfo> } Returns an instance of the {@link ImsRegInfo} class. 1308 * @throws { BusinessError } 201 - Permission denied. 1309 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1310 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1311 * @throws { BusinessError } 8300001 - Invalid parameter value. 1312 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1313 * @throws { BusinessError } 8300003 - System internal error. 1314 * @throws { BusinessError } 8300999 - Unknown error code. 1315 * @syscap SystemCapability.Telephony.CoreService 1316 * @systemapi Hide this for inner system use. 1317 * @since 9 1318 */ 1319 function getImsRegInfo(slotId: number, imsType: ImsServiceType): Promise<ImsRegInfo>; 1320 1321 /** 1322 * Called when the IMS registration state of specified IMS service type corresponding to 1323 * a monitored {@code slotId} updates. 1324 * 1325 * @permission ohos.permission.GET_TELEPHONY_STATE 1326 * @param { 'imsRegStateChange' } type - Event type. Indicates the imsRegStateChange event to be subscribed to. 1327 * @param { number } slotId - Indicates the card slot index number, 1328 * ranging from 0 to the maximum card slot index number supported by the device. 1329 * @param { ImsServiceType } imsType - Indicates the ims service type of the {@link ImsServiceType}. 1330 * @param { Callback<ImsRegInfo> } callback - Indicates the callback for getting an instance of 1331 * the {@link ImsRegInfo} class. 1332 * @throws { BusinessError } 201 - Permission denied. 1333 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1334 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1335 * @throws { BusinessError } 8300001 - Invalid parameter value. 1336 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1337 * @throws { BusinessError } 8300003 - System internal error. 1338 * @throws { BusinessError } 8300999 - Unknown error code. 1339 * @syscap SystemCapability.Telephony.CoreService 1340 * @systemapi Hide this for inner system use. 1341 * @since 9 1342 */ 1343 function on(type: 'imsRegStateChange', slotId: number, imsType: ImsServiceType, callback: Callback<ImsRegInfo>): void; 1344 1345 /** 1346 * Unsubscribe from imsRegStateChange event. 1347 * 1348 * @permission ohos.permission.GET_TELEPHONY_STATE 1349 * @param { 'imsRegStateChange' } type - Event type. Indicates the imsRegStateChange event to unsubscribe from. 1350 * @param { number } slotId - Indicates the card slot index number, 1351 * ranging from 0 to the maximum card slot index number supported by the device. 1352 * @param { ImsServiceType } imsType - Indicates the ims service type of the {@link ImsServiceType}. 1353 * @param { Callback<ImsRegInfo> } callback - Indicates the callback for getting 1354 * an instance of the {@link ImsRegInfo} class. 1355 * @throws { BusinessError } 201 - Permission denied. 1356 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1357 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1358 * @throws { BusinessError } 8300001 - Invalid parameter value. 1359 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1360 * @throws { BusinessError } 8300003 - System internal error. 1361 * @throws { BusinessError } 8300999 - Unknown error code. 1362 * @syscap SystemCapability.Telephony.CoreService 1363 * @systemapi Hide this for inner system use. 1364 * @since 9 1365 */ 1366 function off(type: 'imsRegStateChange', slotId: number, imsType: ImsServiceType, callback?: Callback<ImsRegInfo>): void; 1367 1368 /** 1369 * Get the version of Baseband. 1370 * 1371 * @permission ohos.permission.GET_TELEPHONY_STATE 1372 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot index number 1373 * supported by the device. 1374 * @param { AsyncCallback<string> } callback - Indicates the callback for getting the baseband version. 1375 * @throws { BusinessError } 201 - Permission denied. 1376 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1377 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1378 * 2. Incorrect parameter types. 1379 * @throws { BusinessError } 8300001 - Invalid parameter value. 1380 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1381 * @throws { BusinessError } 8300003 - System internal error. 1382 * @throws { BusinessError } 8300999 - Unknown error code. 1383 * @syscap SystemCapability.Telephony.CoreService 1384 * @systemapi Hide this for inner system use. 1385 * @since 10 1386 */ 1387 function getBasebandVersion(slotId: number, callback: AsyncCallback<string>): void; 1388 1389 /** 1390 * Get the version of Baseband. 1391 * 1392 * @permission ohos.permission.GET_TELEPHONY_STATE 1393 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot index number 1394 * supported by the device. 1395 * @returns { Promise<string> } Returns the baseband version. 1396 * @throws { BusinessError } 201 - Permission denied. 1397 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1398 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1399 * 2. Incorrect parameter types. 1400 * @throws { BusinessError } 8300001 - Invalid parameter value. 1401 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1402 * @throws { BusinessError } 8300003 - System internal error. 1403 * @throws { BusinessError } 8300999 - Unknown error code. 1404 * @syscap SystemCapability.Telephony.CoreService 1405 * @systemapi Hide this for inner system use. 1406 * @since 10 1407 */ 1408 function getBasebandVersion(slotId: number): Promise<string>; 1409 1410 /** 1411 * Set the NR option mode. 1412 * 1413 * @permission ohos.permission.SET_TELEPHONY_STATE 1414 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot index 1415 * number supported by the device. 1416 * @param { NROptionMode } mode - Indicates the nr option mode to be set. 1417 * @param { AsyncCallback<void> } callback - Indicates the callback for getting the option result. 1418 * @throws { BusinessError } 201 - Permission denied. 1419 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1420 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1421 * 2. Incorrect parameter types. 1422 * @throws { BusinessError } 8300001 - Invalid parameter value. 1423 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1424 * @throws { BusinessError } 8300003 - System internal error. 1425 * @throws { BusinessError } 8300999 - Unknown error code. 1426 * @syscap SystemCapability.Telephony.CoreService 1427 * @systemapi Hide this for inner system use. 1428 * @since 10 1429 */ 1430 function setNROptionMode(slotId: number, mode: NROptionMode, callback: AsyncCallback<void>): void; 1431 1432 /** 1433 * Set the NR option mode. 1434 * 1435 * @permission ohos.permission.SET_TELEPHONY_STATE 1436 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot index 1437 * number supported by the device. 1438 * @param { NROptionMode } mode - Indicates the nr option mode to be set. 1439 * @returns { Promise<void> } Returns option result. 1440 * @throws { BusinessError } 201 - Permission denied. 1441 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1442 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1443 * 2. Incorrect parameter types. 1444 * @throws { BusinessError } 8300001 - Invalid parameter value. 1445 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1446 * @throws { BusinessError } 8300003 - System internal error. 1447 * @throws { BusinessError } 8300999 - Unknown error code. 1448 * @syscap SystemCapability.Telephony.CoreService 1449 * @systemapi Hide this for inner system use. 1450 * @since 10 1451 */ 1452 function setNROptionMode(slotId: number, mode: NROptionMode): Promise<void>; 1453 1454 /** 1455 * Get the option mode of NR. 1456 * 1457 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 1458 * index number supported by the device. 1459 * @param { AsyncCallback<NROptionMode> } callback - Indicates the callback for getting the selection mode of NR. 1460 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1461 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1462 * 2. Incorrect parameter types. 1463 * @throws { BusinessError } 8300001 - Invalid parameter value. 1464 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1465 * @throws { BusinessError } 8300003 - System internal error. 1466 * @throws { BusinessError } 8300999 - Unknown error code. 1467 * @syscap SystemCapability.Telephony.CoreService 1468 * @systemapi Hide this for inner system use. 1469 * @since 10 1470 */ 1471 function getNROptionMode(slotId: number, callback: AsyncCallback<NROptionMode>): void; 1472 1473 /** 1474 * Get the option mode of NR. 1475 * 1476 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 1477 * index number supported by the device. 1478 * @returns { Promise<NROptionMode> } Returns the selection mode of NR. 1479 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1480 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1481 * 2. Incorrect parameter types. 1482 * @throws { BusinessError } 8300001 - Invalid parameter value. 1483 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1484 * @throws { BusinessError } 8300003 - System internal error. 1485 * @throws { BusinessError } 8300999 - Unknown error code. 1486 * @syscap SystemCapability.Telephony.CoreService 1487 * @systemapi Hide this for inner system use. 1488 * @since 10 1489 */ 1490 function getNROptionMode(slotId: number): Promise<NROptionMode>; 1491 1492 /** 1493 * Set the type and state for the specified network capability. 1494 * 1495 * @permission ohos.permission.SET_TELEPHONY_STATE 1496 * @param { number } slotId - Indicates the card slot index number, 1497 * ranging from 0 to the maximum card slot index number supported by the device. 1498 * @param { NetworkCapabilityType } type - Indicates the service type of the {@link NetworkCapabilityType}. 1499 * @param { NetworkCapabilityState } state - Indicates the service ability state of the {@link NetworkCapabilityState}. 1500 * @param { AsyncCallback<void> } callback - The callback of setNetworkCapability. 1501 * @throws { BusinessError } 201 - Permission denied. 1502 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1503 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1504 * 2. Incorrect parameter types. 1505 * @throws { BusinessError } 8300001 - Invalid parameter value. 1506 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1507 * @throws { BusinessError } 8300003 - System internal error. 1508 * @throws { BusinessError } 8300999 - Unknown error code. 1509 * @syscap SystemCapability.Telephony.CoreService 1510 * @systemapi Hide this for inner system use. 1511 * @since 10 1512 */ 1513 function setNetworkCapability(slotId: number, type: NetworkCapabilityType, state: NetworkCapabilityState, 1514 callback: AsyncCallback<void>): void; 1515 1516 /** 1517 * Set the type and state for the specified network capability. 1518 * 1519 * @permission ohos.permission.SET_TELEPHONY_STATE 1520 * @param { number } slotId - Indicates the card slot index number, 1521 * ranging from 0 to the maximum card slot index number supported by the device. 1522 * @param { NetworkCapabilityType } type - Indicates the service type of the {@link NetworkCapabilityType}. 1523 * @param { NetworkCapabilityState } state - Indicates the service ability state of the {@link NetworkCapabilityState}. 1524 * @returns { Promise<void> } The promise returned by the setNetworkCapability. 1525 * @throws { BusinessError } 201 - Permission denied. 1526 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1527 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1528 * 2. Incorrect parameter types. 1529 * @throws { BusinessError } 8300001 - Invalid parameter value. 1530 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1531 * @throws { BusinessError } 8300003 - System internal error. 1532 * @throws { BusinessError } 8300999 - Unknown error code. 1533 * @syscap SystemCapability.Telephony.CoreService 1534 * @systemapi Hide this for inner system use. 1535 * @since 10 1536 */ 1537 function setNetworkCapability(slotId: number, type: NetworkCapabilityType, state: NetworkCapabilityState): Promise<void>; 1538 1539 /** 1540 * Get the network capability state according to the specified capability type. 1541 * 1542 * @permission ohos.permission.GET_TELEPHONY_STATE 1543 * @param { number } slotId - Indicates the card slot index number, 1544 * ranging from 0 to the maximum card slot index number supported by the device. 1545 * @param { NetworkCapabilityType } type - Indicates the service type of the {@link NetworkCapabilityType}. 1546 * @param { AsyncCallback<NetworkCapabilityState> } callback - Indicates the callback for getting 1547 * the network capability state. 1548 * @throws { BusinessError } 201 - Permission denied. 1549 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1550 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1551 * 2. Incorrect parameter types. 1552 * @throws { BusinessError } 8300001 - Invalid parameter value. 1553 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1554 * @throws { BusinessError } 8300003 - System internal error. 1555 * @throws { BusinessError } 8300999 - Unknown error code. 1556 * @syscap SystemCapability.Telephony.CoreService 1557 * @systemapi Hide this for inner system use. 1558 * @since 10 1559 */ 1560 function getNetworkCapability(slotId: number, type: NetworkCapabilityType, 1561 callback: AsyncCallback<NetworkCapabilityState>): void; 1562 1563 /** 1564 * Get the network capability state according to the specified capability type. 1565 * 1566 * @permission ohos.permission.GET_TELEPHONY_STATE 1567 * @param { number } slotId - Indicates the card slot index number, 1568 * ranging from 0 to the maximum card slot index number supported by the device. 1569 * @param { NetworkCapabilityType } type - Indicates the service type of the {@link NetworkCapabilityType}. 1570 * @returns { Promise<NetworkCapabilityState> } Returns the callback for getting the network capability state. 1571 * @throws { BusinessError } 201 - Permission denied. 1572 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1573 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1574 * 2. Incorrect parameter types. 1575 * @throws { BusinessError } 8300001 - Invalid parameter value. 1576 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1577 * @throws { BusinessError } 8300003 - System internal error. 1578 * @throws { BusinessError } 8300999 - Unknown error code. 1579 * @syscap SystemCapability.Telephony.CoreService 1580 * @systemapi Hide this for inner system use. 1581 * @since 10 1582 */ 1583 function getNetworkCapability(slotId: number, type: NetworkCapabilityType): Promise<NetworkCapabilityState>; 1584 1585 /** 1586 * Reset all network settings of telephony. 1587 * 1588 * @permission ohos.permission.SET_TELEPHONY_STATE 1589 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot 1590 * index number supported by the device. 1591 * @returns { Promise<void> } The promise returned by the factoryReset. 1592 * @throws { BusinessError } 201 - Permission denied. 1593 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1594 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1595 * 2. Incorrect parameter types. 1596 * @throws { BusinessError } 8300001 - Invalid parameter value. 1597 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1598 * @throws { BusinessError } 8300003 - System internal error. 1599 * @throws { BusinessError } 8300999 - Unknown error code. 1600 * @syscap SystemCapability.Telephony.CoreService 1601 * @systemapi Hide this for inner system use. 1602 * @since 11 1603 */ 1604 function factoryReset(slotId: number): Promise<void>; 1605 1606 /** 1607 * Obtains the software version number of a specified card slot of the device. 1608 * 1609 * @permission ohos.permission.GET_TELEPHONY_STATE 1610 * @param { number } slotId - Indicates the card slot index number, ranging from 0 to the maximum card slot index number 1611 * supported by the device. 1612 * @returns { string } Returns the IMEISV. Returns an empty string if the IMEISV does not exist. 1613 * @throws { BusinessError } 201 - Permission denied. 1614 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1615 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 1616 * 2. Incorrect parameter types. 1617 * @throws { BusinessError } 8300001 - Invalid parameter value. 1618 * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. 1619 * @throws { BusinessError } 8300003 - System internal error. 1620 * @throws { BusinessError } 8300999 - Unknown error code. 1621 * @syscap SystemCapability.Telephony.CoreService 1622 * @systemapi Hide this for inner system use. 1623 * @since 12 1624 */ 1625 function getIMEISV(slotId: number): string; 1626 1627 /** 1628 * Checks whether the device supports dual 5G New Radio (NR). 1629 * 1630 * @returns { boolean } Returns {@code true} if the device supports dual NR; returns {@code false} otherwise. 1631 * @throws { BusinessError } 202 - Non-system applications use system APIs. 1632 * @syscap SystemCapability.Telephony.CoreService 1633 * @systemapi Hide this for inner system use. 1634 * @since 12 1635 */ 1636 function isDualNRSupported(): boolean; 1637 1638 /** 1639 * Indicates the preferred network. 1640 * 1641 * @enum { number } 1642 * @syscap SystemCapability.Telephony.CoreService 1643 * @systemapi Hide this for inner system use. 1644 * @since 8 1645 */ 1646 export enum PreferredNetworkMode { 1647 /** 1648 * Preferred GSM network mode. 1649 * 1650 * @syscap SystemCapability.Telephony.CoreService 1651 * @systemapi Hide this for inner system use. 1652 * @since 8 1653 */ 1654 PREFERRED_NETWORK_MODE_GSM = 1, 1655 1656 /** 1657 * Preferred WCDMA network mode. 1658 * 1659 * @syscap SystemCapability.Telephony.CoreService 1660 * @systemapi Hide this for inner system use. 1661 * @since 8 1662 */ 1663 PREFERRED_NETWORK_MODE_WCDMA = 2, 1664 1665 /** 1666 * Preferred LTE mode. 1667 * 1668 * @syscap SystemCapability.Telephony.CoreService 1669 * @systemapi Hide this for inner system use. 1670 * @since 8 1671 */ 1672 PREFERRED_NETWORK_MODE_LTE = 3, 1673 1674 /** 1675 * Preferred LTE/WCDMA network mode. 1676 * 1677 * @syscap SystemCapability.Telephony.CoreService 1678 * @systemapi Hide this for inner system use. 1679 * @since 8 1680 */ 1681 PREFERRED_NETWORK_MODE_LTE_WCDMA = 4, 1682 1683 /** 1684 * Preferred LTE/WCDMA/GSM network mode. 1685 * 1686 * @syscap SystemCapability.Telephony.CoreService 1687 * @systemapi Hide this for inner system use. 1688 * @since 8 1689 */ 1690 PREFERRED_NETWORK_MODE_LTE_WCDMA_GSM = 5, 1691 1692 /** 1693 * Preferred WCDMA/GSM network mode. 1694 * 1695 * @syscap SystemCapability.Telephony.CoreService 1696 * @systemapi Hide this for inner system use. 1697 * @since 8 1698 */ 1699 PREFERRED_NETWORK_MODE_WCDMA_GSM = 6, 1700 1701 /** 1702 * Preferred CDMA network mode. 1703 * 1704 * @syscap SystemCapability.Telephony.CoreService 1705 * @systemapi Hide this for inner system use. 1706 * @since 8 1707 */ 1708 PREFERRED_NETWORK_MODE_CDMA = 7, 1709 1710 /** 1711 * Preferred EVDO network mode. 1712 * 1713 * @syscap SystemCapability.Telephony.CoreService 1714 * @systemapi Hide this for inner system use. 1715 * @since 8 1716 */ 1717 PREFERRED_NETWORK_MODE_EVDO = 8, 1718 1719 /** 1720 * Preferred EVDO/CDMA network mode. 1721 * 1722 * @syscap SystemCapability.Telephony.CoreService 1723 * @systemapi Hide this for inner system use. 1724 * @since 8 1725 */ 1726 PREFERRED_NETWORK_MODE_EVDO_CDMA = 9, 1727 1728 /** 1729 * Preferred WCDMA/GSM/EVDO/CDMA network mode. 1730 * 1731 * @syscap SystemCapability.Telephony.CoreService 1732 * @systemapi Hide this for inner system use. 1733 * @since 8 1734 */ 1735 PREFERRED_NETWORK_MODE_WCDMA_GSM_EVDO_CDMA = 10, 1736 1737 /** 1738 * Preferred LTE/EVDO/CDMA network mode. 1739 * 1740 * @syscap SystemCapability.Telephony.CoreService 1741 * @systemapi Hide this for inner system use. 1742 * @since 8 1743 */ 1744 PREFERRED_NETWORK_MODE_LTE_EVDO_CDMA = 11, 1745 1746 /** 1747 * Preferred LTE/WCDMA/GSM/EVDO/CDMA network mode. 1748 * 1749 * @syscap SystemCapability.Telephony.CoreService 1750 * @systemapi Hide this for inner system use. 1751 * @since 8 1752 */ 1753 PREFERRED_NETWORK_MODE_LTE_WCDMA_GSM_EVDO_CDMA = 12, 1754 1755 /** 1756 * Preferred TDSCDMA network mode. 1757 * 1758 * @syscap SystemCapability.Telephony.CoreService 1759 * @systemapi Hide this for inner system use. 1760 * @since 8 1761 */ 1762 PREFERRED_NETWORK_MODE_TDSCDMA = 13, 1763 1764 /** 1765 * Preferred TDSCDMA/GSM network mode. 1766 * 1767 * @syscap SystemCapability.Telephony.CoreService 1768 * @systemapi Hide this for inner system use. 1769 * @since 8 1770 */ 1771 PREFERRED_NETWORK_MODE_TDSCDMA_GSM = 14, 1772 1773 /** 1774 * Preferred TDSCDMA/WCDMA network mode. 1775 * 1776 * @syscap SystemCapability.Telephony.CoreService 1777 * @systemapi Hide this for inner system use. 1778 * @since 8 1779 */ 1780 PREFERRED_NETWORK_MODE_TDSCDMA_WCDMA = 15, 1781 1782 /** 1783 * Preferred TDSCDMA/WCDMA/GSM network mode. 1784 * 1785 * @syscap SystemCapability.Telephony.CoreService 1786 * @systemapi Hide this for inner system use. 1787 * @since 8 1788 */ 1789 PREFERRED_NETWORK_MODE_TDSCDMA_WCDMA_GSM = 16, 1790 1791 /** 1792 * Preferred LTE/TDSCDMA network mode. 1793 * 1794 * @syscap SystemCapability.Telephony.CoreService 1795 * @systemapi Hide this for inner system use. 1796 * @since 8 1797 */ 1798 PREFERRED_NETWORK_MODE_LTE_TDSCDMA = 17, 1799 1800 /** 1801 * Preferred LTE/TDSCDMA/GSM network mode. 1802 * 1803 * @syscap SystemCapability.Telephony.CoreService 1804 * @systemapi Hide this for inner system use. 1805 * @since 8 1806 */ 1807 PREFERRED_NETWORK_MODE_LTE_TDSCDMA_GSM = 18, 1808 1809 /** 1810 * Preferred LTE/TDSCDMA/WCDMA network mode. 1811 * 1812 * @syscap SystemCapability.Telephony.CoreService 1813 * @systemapi Hide this for inner system use. 1814 * @since 8 1815 */ 1816 PREFERRED_NETWORK_MODE_LTE_TDSCDMA_WCDMA = 19, 1817 1818 /** 1819 * Preferred LTE/TDSCDMA/WCDMA/GSM network mode. 1820 * 1821 * @syscap SystemCapability.Telephony.CoreService 1822 * @systemapi Hide this for inner system use. 1823 * @since 8 1824 */ 1825 PREFERRED_NETWORK_MODE_LTE_TDSCDMA_WCDMA_GSM = 20, 1826 1827 /** 1828 * Preferred TDSCDMA/WCDMA/GSM/EVDO/CDMA network mode. 1829 * 1830 * @syscap SystemCapability.Telephony.CoreService 1831 * @systemapi Hide this for inner system use. 1832 * @since 8 1833 */ 1834 PREFERRED_NETWORK_MODE_TDSCDMA_WCDMA_GSM_EVDO_CDMA = 21, 1835 1836 /** 1837 * Preferred LTE/TDSCDMA/WCDMA/GSM/EVDO/CDMA network mode. 1838 * 1839 * @syscap SystemCapability.Telephony.CoreService 1840 * @systemapi Hide this for inner system use. 1841 * @since 8 1842 */ 1843 PREFERRED_NETWORK_MODE_LTE_TDSCDMA_WCDMA_GSM_EVDO_CDMA = 22, 1844 1845 /** 1846 * Preferred NR network mode. 1847 * 1848 * @syscap SystemCapability.Telephony.CoreService 1849 * @systemapi Hide this for inner system use. 1850 * @since 8 1851 */ 1852 PREFERRED_NETWORK_MODE_NR = 31, 1853 1854 /** 1855 * Preferred NR/LTE network mode. 1856 * 1857 * @syscap SystemCapability.Telephony.CoreService 1858 * @systemapi Hide this for inner system use. 1859 * @since 8 1860 */ 1861 PREFERRED_NETWORK_MODE_NR_LTE = 32, 1862 1863 /** 1864 * Preferred NR/LTE/WCDMA network mode. 1865 * 1866 * @syscap SystemCapability.Telephony.CoreService 1867 * @systemapi Hide this for inner system use. 1868 * @since 8 1869 */ 1870 PREFERRED_NETWORK_MODE_NR_LTE_WCDMA = 33, 1871 1872 /** 1873 * Preferred NR/LTE/WCDMA/GSM network mode. 1874 * 1875 * @syscap SystemCapability.Telephony.CoreService 1876 * @systemapi Hide this for inner system use. 1877 * @since 8 1878 */ 1879 PREFERRED_NETWORK_MODE_NR_LTE_WCDMA_GSM = 34, 1880 1881 /** 1882 * Preferred NR/LTE/EVDO/CDMA network mode. 1883 * 1884 * @syscap SystemCapability.Telephony.CoreService 1885 * @systemapi Hide this for inner system use. 1886 * @since 8 1887 */ 1888 PREFERRED_NETWORK_MODE_NR_LTE_EVDO_CDMA = 35, 1889 1890 /** 1891 * Preferred NR/LTE/WCDMA/GSM/EVDO/CDMA network mode. 1892 * 1893 * @syscap SystemCapability.Telephony.CoreService 1894 * @systemapi Hide this for inner system use. 1895 * @since 8 1896 */ 1897 PREFERRED_NETWORK_MODE_NR_LTE_WCDMA_GSM_EVDO_CDMA = 36, 1898 1899 /** 1900 * Preferred NR/LTE/TDSCDMA network mode. 1901 * 1902 * @syscap SystemCapability.Telephony.CoreService 1903 * @systemapi Hide this for inner system use. 1904 * @since 8 1905 */ 1906 PREFERRED_NETWORK_MODE_NR_LTE_TDSCDMA = 37, 1907 1908 /** 1909 * Preferred NR/LTE/TDSCDMA/GSM network mode. 1910 * 1911 * @syscap SystemCapability.Telephony.CoreService 1912 * @systemapi Hide this for inner system use. 1913 * @since 8 1914 */ 1915 PREFERRED_NETWORK_MODE_NR_LTE_TDSCDMA_GSM = 38, 1916 1917 /** 1918 * Preferred NR/LTE/TDSCDMA/WCDMA network mode. 1919 * 1920 * @syscap SystemCapability.Telephony.CoreService 1921 * @systemapi Hide this for inner system use. 1922 * @since 8 1923 */ 1924 PREFERRED_NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA = 39, 1925 1926 /** 1927 * Preferred NR/LTE/TDSCDMA/WCDMA/GSM network mode. 1928 * 1929 * @syscap SystemCapability.Telephony.CoreService 1930 * @systemapi Hide this for inner system use. 1931 * @since 8 1932 */ 1933 PREFERRED_NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA_GSM = 40, 1934 1935 /** 1936 * Preferred NR/LTE/TDSCDMA/WCDMA/GSM/EVDO/CDMA network mode. 1937 * 1938 * @syscap SystemCapability.Telephony.CoreService 1939 * @systemapi Hide this for inner system use. 1940 * @since 8 1941 */ 1942 PREFERRED_NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA_GSM_EVDO_CDMA = 41, 1943 1944 /** 1945 * Preferred network mode Maximum. 1946 * 1947 * @syscap SystemCapability.Telephony.CoreService 1948 * @systemapi Hide this for inner system use. 1949 * @since 8 1950 */ 1951 PREFERRED_NETWORK_MODE_MAX_VALUE = 99, 1952 } 1953 1954 /** 1955 * Describes the radio access technology (RAT) of registered network. 1956 * 1957 * @interface NetworkRadioTech 1958 * @syscap SystemCapability.Telephony.CoreService 1959 * @since 11 1960 */ 1961 export interface NetworkRadioTech { 1962 /** 1963 * Indicates radio access technology (RAT) of packet service (PS) domain. 1964 * 1965 * @syscap SystemCapability.Telephony.CoreService 1966 * @since 11 1967 */ 1968 psRadioTech: RadioTechnology; 1969 1970 /** 1971 * Indicates radio access technology (RAT) of circuit service (CS) domain. 1972 * 1973 * @syscap SystemCapability.Telephony.CoreService 1974 * @since 11 1975 */ 1976 csRadioTech: RadioTechnology; 1977 } 1978 1979 /** 1980 * Describes the radio access technology. 1981 * 1982 * @enum { number } 1983 * @syscap SystemCapability.Telephony.CoreService 1984 * @since 6 1985 */ 1986 export enum RadioTechnology { 1987 /** 1988 * Indicates unknown radio access technology (RAT). 1989 * 1990 * @syscap SystemCapability.Telephony.CoreService 1991 * @since 6 1992 */ 1993 RADIO_TECHNOLOGY_UNKNOWN = 0, 1994 1995 /** 1996 * Indicates that RAT is global system for mobile communications (GSM), including GSM, general packet 1997 * radio system (GPRS), and enhanced data rates for GSM evolution (EDGE). 1998 * 1999 * @syscap SystemCapability.Telephony.CoreService 2000 * @since 6 2001 */ 2002 RADIO_TECHNOLOGY_GSM = 1, 2003 2004 /** 2005 * Indicates that RAT is code division multiple access (CDMA), including Interim Standard 95 (IS95) and 2006 * Single-Carrier Radio Transmission Technology (1xRTT). 2007 * 2008 * @syscap SystemCapability.Telephony.CoreService 2009 * @since 6 2010 */ 2011 RADIO_TECHNOLOGY_1XRTT = 2, 2012 2013 /** 2014 * Indicates that RAT is wideband code division multiple address (WCDMA). 2015 * 2016 * @syscap SystemCapability.Telephony.CoreService 2017 * @since 6 2018 */ 2019 RADIO_TECHNOLOGY_WCDMA = 3, 2020 2021 /** 2022 * Indicates that RAT is high-speed packet access (HSPA), including HSPA, high-speed downlink packet 2023 * access (HSDPA), and high-speed uplink packet access (HSUPA). 2024 * 2025 * @syscap SystemCapability.Telephony.CoreService 2026 * @since 6 2027 */ 2028 RADIO_TECHNOLOGY_HSPA = 4, 2029 2030 /** 2031 * Indicates that RAT is evolved high-speed packet access (HSPA+), including HSPA+ and dual-carrier 2032 * HSPA+ (DC-HSPA+). 2033 * 2034 * @syscap SystemCapability.Telephony.CoreService 2035 * @since 6 2036 */ 2037 RADIO_TECHNOLOGY_HSPAP = 5, 2038 2039 /** 2040 * Indicates that RAT is time division-synchronous code division multiple access (TD-SCDMA). 2041 * 2042 * @syscap SystemCapability.Telephony.CoreService 2043 * @since 6 2044 */ 2045 RADIO_TECHNOLOGY_TD_SCDMA = 6, 2046 2047 /** 2048 * Indicates that RAT is evolution data only (EVDO), including EVDO Rev.0, EVDO Rev.A, and EVDO Rev.B. 2049 * 2050 * @syscap SystemCapability.Telephony.CoreService 2051 * @since 6 2052 */ 2053 RADIO_TECHNOLOGY_EVDO = 7, 2054 2055 /** 2056 * Indicates that RAT is evolved high rate packet data (EHRPD). 2057 * 2058 * @syscap SystemCapability.Telephony.CoreService 2059 * @since 6 2060 */ 2061 RADIO_TECHNOLOGY_EHRPD = 8, 2062 2063 /** 2064 * Indicates that RAT is long term evolution (LTE). 2065 * 2066 * @syscap SystemCapability.Telephony.CoreService 2067 * @since 6 2068 */ 2069 RADIO_TECHNOLOGY_LTE = 9, 2070 2071 /** 2072 * Indicates that RAT is LTE carrier aggregation (LTE-CA). 2073 * 2074 * @syscap SystemCapability.Telephony.CoreService 2075 * @since 6 2076 */ 2077 RADIO_TECHNOLOGY_LTE_CA = 10, 2078 2079 /** 2080 * Indicates that RAT is interworking WLAN (I-WLAN). 2081 * 2082 * @syscap SystemCapability.Telephony.CoreService 2083 * @since 6 2084 */ 2085 RADIO_TECHNOLOGY_IWLAN = 11, 2086 2087 /** 2088 * Indicates that RAT is 5G new radio (NR). 2089 * 2090 * @syscap SystemCapability.Telephony.CoreService 2091 * @since 6 2092 */ 2093 RADIO_TECHNOLOGY_NR = 12 2094 } 2095 2096 /** 2097 * Returns child class objects specific to the network type. 2098 * 2099 * @interface SignalInformation 2100 * @syscap SystemCapability.Telephony.CoreService 2101 * @since 6 2102 */ 2103 export interface SignalInformation { 2104 /** 2105 * Obtains the network type corresponding to the signal. 2106 * 2107 * @type { NetworkType } 2108 * @syscap SystemCapability.Telephony.CoreService 2109 * @since 6 2110 */ 2111 signalType: NetworkType; 2112 2113 /** 2114 * Obtains the signal level of the current network. 2115 * 2116 * @type { number } 2117 * @syscap SystemCapability.Telephony.CoreService 2118 * @since 6 2119 */ 2120 signalLevel: number; 2121 2122 /** 2123 * rsrp for LTE and NR; dbm for CDMA and EVDO; rscp for WCDMA; rssi for GSM. 2124 * 2125 * @type { number } 2126 * @syscap SystemCapability.Telephony.CoreService 2127 * @since 9 2128 */ 2129 dBm: number; 2130 } 2131 2132 /** 2133 * Describes the network type. 2134 * 2135 * @enum { number } 2136 * @syscap SystemCapability.Telephony.CoreService 2137 * @since 6 2138 */ 2139 export enum NetworkType { 2140 /** 2141 * Indicates unknown network type. 2142 * 2143 * @syscap SystemCapability.Telephony.CoreService 2144 * @since 6 2145 */ 2146 NETWORK_TYPE_UNKNOWN, 2147 2148 /** 2149 * Indicates that the network type is GSM. 2150 * 2151 * @syscap SystemCapability.Telephony.CoreService 2152 * @since 6 2153 */ 2154 NETWORK_TYPE_GSM, 2155 2156 /** 2157 * Indicates that the network type is CDMA. 2158 * 2159 * @syscap SystemCapability.Telephony.CoreService 2160 * @since 6 2161 */ 2162 NETWORK_TYPE_CDMA, 2163 2164 /** 2165 * Indicates that the network type is WCDMA. 2166 * 2167 * @syscap SystemCapability.Telephony.CoreService 2168 * @since 6 2169 */ 2170 NETWORK_TYPE_WCDMA, 2171 2172 /** 2173 * Indicates that the network type is TD-SCDMA. 2174 * 2175 * @syscap SystemCapability.Telephony.CoreService 2176 * @since 6 2177 */ 2178 NETWORK_TYPE_TDSCDMA, 2179 2180 /** 2181 * Indicates that the network type is LTE. 2182 * 2183 * @syscap SystemCapability.Telephony.CoreService 2184 * @since 6 2185 */ 2186 NETWORK_TYPE_LTE, 2187 2188 /** 2189 * Indicates that the network type is 5G NR. 2190 * 2191 * @syscap SystemCapability.Telephony.CoreService 2192 * @since 6 2193 */ 2194 NETWORK_TYPE_NR 2195 } 2196 2197 /** 2198 * Describes the network registration state. 2199 * 2200 * @interface NetworkState 2201 * @syscap SystemCapability.Telephony.CoreService 2202 * @since 6 2203 */ 2204 export interface NetworkState { 2205 /** 2206 * Obtains the operator name in the long alphanumeric format of the registered network. 2207 * 2208 * Returns the operator name in the long alphanumeric format as a string; 2209 * returns an empty string if no operator name is obtained. 2210 * 2211 * @type { string } 2212 * @syscap SystemCapability.Telephony.CoreService 2213 * @since 6 2214 */ 2215 longOperatorName: string; 2216 2217 /** 2218 * Obtains the operator name in the short alphanumeric format of the registered network. 2219 * 2220 * Returns the operator name in the short alphanumeric format as a string; 2221 * returns an empty string if no operator name is obtained. 2222 * 2223 * @type { string } 2224 * @syscap SystemCapability.Telephony.CoreService 2225 * @since 6 2226 */ 2227 shortOperatorName: string; 2228 2229 /** 2230 * Obtains the PLMN code of the registered network. 2231 * 2232 * Returns the PLMN code as a string; returns an empty string if no operator name is obtained. 2233 * 2234 * @type { string } 2235 * @syscap SystemCapability.Telephony.CoreService 2236 * @since 6 2237 */ 2238 plmnNumeric: string; 2239 2240 /** 2241 * Checks whether the device is roaming. 2242 * 2243 * @type { boolean } 2244 * @syscap SystemCapability.Telephony.CoreService 2245 * @since 6 2246 */ 2247 isRoaming: boolean; 2248 2249 /** 2250 * Obtains the network registration status of the device. 2251 * 2252 * @type { RegState } 2253 * @syscap SystemCapability.Telephony.CoreService 2254 * @since 6 2255 */ 2256 regState: RegState; 2257 2258 /** 2259 * Obtains the radio Access technology after config conversion. 2260 * 2261 * @type { RadioTechnology } 2262 * @syscap SystemCapability.Telephony.CoreService 2263 * @since 8 2264 */ 2265 cfgTech: RadioTechnology; 2266 2267 /** 2268 * Obtains the NSA network registration status of the device. 2269 * 2270 * Returns the NSA network registration status {@code NsaState}. 2271 * 2272 * @type { NsaState } 2273 * @syscap SystemCapability.Telephony.CoreService 2274 * @since 6 2275 */ 2276 nsaState: NsaState; 2277 2278 /** 2279 * Obtains the status of CA. 2280 * 2281 * Returns {@code true} if CA is actived; returns {@code false} otherwise. 2282 * 2283 * @type { boolean } 2284 * @syscap SystemCapability.Telephony.CoreService 2285 * @since 6 2286 */ 2287 isCaActive: boolean; 2288 2289 /** 2290 * Checks whether this device is allowed to make emergency calls only. 2291 * 2292 * Returns {@code true} if this device is allowed to make emergency calls only; 2293 * returns {@code false} otherwise. 2294 * 2295 * @type { boolean } 2296 * @syscap SystemCapability.Telephony.CoreService 2297 * @since 6 2298 */ 2299 isEmergency: boolean; 2300 } 2301 2302 /** 2303 * Describes the network registration state. 2304 * 2305 * @enum { number } 2306 * @syscap SystemCapability.Telephony.CoreService 2307 * @since 6 2308 */ 2309 export enum RegState { 2310 /** 2311 * Indicates a state in which a device cannot use any service. 2312 * 2313 * @syscap SystemCapability.Telephony.CoreService 2314 * @since 6 2315 */ 2316 REG_STATE_NO_SERVICE = 0, 2317 2318 /** 2319 * Indicates a state in which a device can use services properly. 2320 * 2321 * @syscap SystemCapability.Telephony.CoreService 2322 * @since 6 2323 */ 2324 REG_STATE_IN_SERVICE = 1, 2325 2326 /** 2327 * Indicates a state in which a device can use only the emergency call service. 2328 * 2329 * @syscap SystemCapability.Telephony.CoreService 2330 * @since 6 2331 */ 2332 REG_STATE_EMERGENCY_CALL_ONLY = 2, 2333 2334 /** 2335 * Indicates that the cellular radio is powered off. 2336 * 2337 * @syscap SystemCapability.Telephony.CoreService 2338 * @since 6 2339 */ 2340 REG_STATE_POWER_OFF = 3 2341 } 2342 2343 /** 2344 * Describes the nsa state. 2345 * 2346 * @enum { number } 2347 * @syscap SystemCapability.Telephony.CoreService 2348 * @since 6 2349 */ 2350 export enum NsaState { 2351 /** 2352 * Indicates that a device is idle under or is connected to an LTE cell that does not support NSA. 2353 * 2354 * @syscap SystemCapability.Telephony.CoreService 2355 * @since 6 2356 */ 2357 NSA_STATE_NOT_SUPPORT = 1, 2358 2359 /** 2360 * Indicates that a device is idle under an LTE cell supporting NSA but not NR coverage detection. 2361 * 2362 * @syscap SystemCapability.Telephony.CoreService 2363 * @since 6 2364 */ 2365 NSA_STATE_NO_DETECT = 2, 2366 2367 /** 2368 * Indicates that a device is connected to an LTE network under an LTE cell 2369 * that supports NSA and NR coverage detection. 2370 * 2371 * @syscap SystemCapability.Telephony.CoreService 2372 * @since 6 2373 */ 2374 NSA_STATE_CONNECTED_DETECT = 3, 2375 2376 /** 2377 * Indicates that a device is idle under an LTE cell supporting NSA and NR coverage detection. 2378 * 2379 * @syscap SystemCapability.Telephony.CoreService 2380 * @since 6 2381 */ 2382 NSA_STATE_IDLE_DETECT = 4, 2383 2384 /** 2385 * Indicates that a device is connected to an LTE + NR network under an LTE cell that supports NSA. 2386 * 2387 * @syscap SystemCapability.Telephony.CoreService 2388 * @since 6 2389 */ 2390 NSA_STATE_DUAL_CONNECTED = 5, 2391 2392 /** 2393 * Indicates that a device is idle under or is connected to an NG-RAN cell while being attached to 5GC. 2394 * 2395 * @syscap SystemCapability.Telephony.CoreService 2396 * @since 6 2397 */ 2398 NSA_STATE_SA_ATTACHED = 6 2399 } 2400 2401 /** 2402 * Obtains current cell information. 2403 * 2404 * @interface CellInformation 2405 * @syscap SystemCapability.Telephony.CoreService 2406 * @since 8 2407 */ 2408 export interface CellInformation { 2409 /** 2410 * Obtains the network type of the serving cell. 2411 * 2412 * An application can call this method to determine the network type that the child class uses. 2413 * 2414 * @type { NetworkType } 2415 * @syscap SystemCapability.Telephony.CoreService 2416 * @since 8 2417 */ 2418 networkType: NetworkType; 2419 2420 /** 2421 * Obtains the camp-on status of the serving cell. 2422 * 2423 * Returns {@code true} if the user equipment (UE) is camped on the cell; returns {@code false} otherwise. 2424 * 2425 * @type { boolean } 2426 * @syscap SystemCapability.Telephony.CoreService 2427 * @systemapi Hide this for inner system use. 2428 * @since 8 2429 */ 2430 isCamped: boolean; 2431 2432 /** 2433 * Obtains the timestamp when the cell information is obtained. 2434 * 2435 * Returns a timestamp since boot, in nanoseconds. 2436 * 2437 * @type { number } 2438 * @syscap SystemCapability.Telephony.CoreService 2439 * @systemapi Hide this for inner system use. 2440 * @since 8 2441 */ 2442 timeStamp: number; 2443 2444 /** 2445 * An abstract method of the parent class whose implementation depends on the child classes. 2446 * Returned child class objects vary according to the network type. 2447 * Returns child class objects specific to the network type. 2448 * 2449 * @type { SignalInformation } 2450 * @syscap SystemCapability.Telephony.CoreService 2451 * @since 8 2452 */ 2453 signalInformation: SignalInformation; 2454 2455 /** 2456 * Obtains signal strength under different network formats. 2457 * 2458 * @type { CdmaCellInformation | GsmCellInformation | LteCellInformation | NrCellInformation 2459 * | TdscdmaCellInformation | WcdmaCellInformation } 2460 * @syscap SystemCapability.Telephony.CoreService 2461 * @systemapi Hide this for inner system use. 2462 * @since 8 2463 */ 2464 data: CdmaCellInformation | GsmCellInformation | LteCellInformation | NrCellInformation | TdscdmaCellInformation 2465 | WcdmaCellInformation; 2466 } 2467 2468 /** 2469 * Obtains CDMA cell information. 2470 * 2471 * @interface CdmaCellInformation 2472 * @syscap SystemCapability.Telephony.CoreService 2473 * @systemapi Hide this for inner system use. 2474 * @since 8 2475 */ 2476 export interface CdmaCellInformation { 2477 /** 2478 * Indicates the base station Id. 2479 * 2480 * @type { number } 2481 * @syscap SystemCapability.Telephony.CoreService 2482 * @systemapi Hide this for inner system use. 2483 * @since 8 2484 */ 2485 baseId: number; 2486 2487 /** 2488 * Indicates the latitude. 2489 * 2490 * @type { number } 2491 * @syscap SystemCapability.Telephony.CoreService 2492 * @systemapi Hide this for inner system use. 2493 * @since 8 2494 */ 2495 latitude: number; 2496 2497 /** 2498 * Indicates the longitude. 2499 * 2500 * @type { number } 2501 * @syscap SystemCapability.Telephony.CoreService 2502 * @systemapi Hide this for inner system use. 2503 * @since 8 2504 */ 2505 longitude: number; 2506 2507 /** 2508 * Indicates the network identification code. 2509 * 2510 * @type { number } 2511 * @syscap SystemCapability.Telephony.CoreService 2512 * @systemapi Hide this for inner system use. 2513 * @since 8 2514 */ 2515 nid: number; 2516 2517 /** 2518 * Indicates the system identification code. 2519 * 2520 * @type { number } 2521 * @syscap SystemCapability.Telephony.CoreService 2522 * @systemapi Hide this for inner system use. 2523 * @since 8 2524 */ 2525 sid: number; 2526 } 2527 2528 /** 2529 * Obtains GSM cell information. 2530 * 2531 * @interface GsmCellInformation 2532 * @syscap SystemCapability.Telephony.CoreService 2533 * @systemapi Hide this for inner system use. 2534 * @since 8 2535 */ 2536 export interface GsmCellInformation { 2537 /** 2538 * Indicates the location area code. 2539 * 2540 * @type { number } 2541 * @syscap SystemCapability.Telephony.CoreService 2542 * @systemapi Hide this for inner system use. 2543 * @since 8 2544 */ 2545 lac: number; 2546 2547 /** 2548 * Indicates the cell identification. 2549 * 2550 * @type { number } 2551 * @syscap SystemCapability.Telephony.CoreService 2552 * @systemapi Hide this for inner system use. 2553 * @since 8 2554 */ 2555 cellId: number; 2556 2557 /** 2558 * Indicates the ARFCN(absolute radio frequency channel number). 2559 * 2560 * @type { number } 2561 * @syscap SystemCapability.Telephony.CoreService 2562 * @systemapi Hide this for inner system use. 2563 * @since 8 2564 */ 2565 arfcn: number; 2566 2567 /** 2568 * Indicates the base station identification code. 2569 * 2570 * @type { number } 2571 * @syscap SystemCapability.Telephony.CoreService 2572 * @systemapi Hide this for inner system use. 2573 * @since 8 2574 */ 2575 bsic: number; 2576 2577 /** 2578 * Indicates the mobile country code. 2579 * 2580 * @type { string } 2581 * @syscap SystemCapability.Telephony.CoreService 2582 * @systemapi Hide this for inner system use. 2583 * @since 8 2584 */ 2585 mcc: string; 2586 2587 /** 2588 * Indicates the mobile network code. 2589 * 2590 * @type { string } 2591 * @syscap SystemCapability.Telephony.CoreService 2592 * @systemapi Hide this for inner system use. 2593 * @since 8 2594 */ 2595 mnc: string; 2596 } 2597 2598 /** 2599 * Obtains LTE cell information. 2600 * 2601 * @interface LteCellInformation 2602 * @syscap SystemCapability.Telephony.CoreService 2603 * @systemapi Hide this for inner system use. 2604 * @since 8 2605 */ 2606 export interface LteCellInformation { 2607 /** 2608 * Indicates the cell global identification. 2609 * 2610 * @type { number } 2611 * @syscap SystemCapability.Telephony.CoreService 2612 * @systemapi Hide this for inner system use. 2613 * @since 8 2614 */ 2615 cgi: number; 2616 2617 /** 2618 * Indicates the physical cell identification. 2619 * 2620 * @type { number } 2621 * @syscap SystemCapability.Telephony.CoreService 2622 * @systemapi Hide this for inner system use. 2623 * @since 8 2624 */ 2625 pci: number; 2626 2627 /** 2628 * Indicates the tracking area code. 2629 * 2630 * @type { number } 2631 * @syscap SystemCapability.Telephony.CoreService 2632 * @systemapi Hide this for inner system use. 2633 * @since 8 2634 */ 2635 tac: number; 2636 2637 /** 2638 * Indicates the E-UTRA Absolute Radio Frequency Channel Number. 2639 * 2640 * @type { number } 2641 * @syscap SystemCapability.Telephony.CoreService 2642 * @systemapi Hide this for inner system use. 2643 * @since 8 2644 */ 2645 earfcn: number; 2646 2647 /** 2648 * Indicates the bandwidth. 2649 * 2650 * @type { number } 2651 * @syscap SystemCapability.Telephony.CoreService 2652 * @systemapi Hide this for inner system use. 2653 * @since 8 2654 */ 2655 bandwidth: number; 2656 2657 /** 2658 * Indicates the mobile country code. 2659 * 2660 * @type { string } 2661 * @syscap SystemCapability.Telephony.CoreService 2662 * @systemapi Hide this for inner system use. 2663 * @since 8 2664 */ 2665 mcc: string; 2666 2667 /** 2668 * Indicates the mobile network code. 2669 * 2670 * @type { string } 2671 * @syscap SystemCapability.Telephony.CoreService 2672 * @systemapi Hide this for inner system use. 2673 * @since 8 2674 */ 2675 mnc: string; 2676 2677 /** 2678 * Support for New Radio_Dual Connectivity. 2679 * 2680 * @type { boolean } 2681 * @syscap SystemCapability.Telephony.CoreService 2682 * @systemapi Hide this for inner system use. 2683 * @since 8 2684 */ 2685 isSupportEndc: boolean; 2686 } 2687 2688 /** 2689 * Obtains NR cell information. 2690 * 2691 * @interface NrCellInformation 2692 * @syscap SystemCapability.Telephony.CoreService 2693 * @systemapi Hide this for inner system use. 2694 * @since 8 2695 */ 2696 export interface NrCellInformation { 2697 /** 2698 * Indicates the NR-ARFCN(NR Absolute Radio Frequency Channel Number). 2699 * 2700 * @type { number } 2701 * @syscap SystemCapability.Telephony.CoreService 2702 * @systemapi Hide this for inner system use. 2703 * @since 8 2704 */ 2705 nrArfcn: number; 2706 2707 /** 2708 * Indicates the physical cell identification. 2709 * 2710 * @type { number } 2711 * @syscap SystemCapability.Telephony.CoreService 2712 * @systemapi Hide this for inner system use. 2713 * @since 8 2714 */ 2715 pci: number; 2716 2717 /** 2718 * Indicates the tracking area code. 2719 * 2720 * @type { number } 2721 * @syscap SystemCapability.Telephony.CoreService 2722 * @systemapi Hide this for inner system use. 2723 * @since 8 2724 */ 2725 tac: number; 2726 2727 /** 2728 * Indicates the 5G network cell ID. 2729 * 2730 * @type { number } 2731 * @syscap SystemCapability.Telephony.CoreService 2732 * @systemapi Hide this for inner system use. 2733 * @since 8 2734 */ 2735 nci: number; 2736 2737 /** 2738 * Indicates the mobile country code. 2739 * 2740 * @type { string } 2741 * @syscap SystemCapability.Telephony.CoreService 2742 * @systemapi Hide this for inner system use. 2743 * @since 8 2744 */ 2745 mcc: string; 2746 2747 /** 2748 * Indicates the mobile network code. 2749 * 2750 * @type { string } 2751 * @syscap SystemCapability.Telephony.CoreService 2752 * @systemapi Hide this for inner system use. 2753 * @since 8 2754 */ 2755 mnc: string; 2756 } 2757 2758 /** 2759 * Obtains TDSCDMA cell information. 2760 * 2761 * @interface TdscdmaCellInformation 2762 * @syscap SystemCapability.Telephony.CoreService 2763 * @systemapi Hide this for inner system use. 2764 * @since 8 2765 */ 2766 export interface TdscdmaCellInformation { 2767 /** 2768 * Indicates the location area code. 2769 * 2770 * @type { number } 2771 * @syscap SystemCapability.Telephony.CoreService 2772 * @systemapi Hide this for inner system use. 2773 * @since 8 2774 */ 2775 lac: number; 2776 2777 /** 2778 * Indicates the cell ID. 2779 * 2780 * @type { number } 2781 * @syscap SystemCapability.Telephony.CoreService 2782 * @systemapi Hide this for inner system use. 2783 * @since 8 2784 */ 2785 cellId: number; 2786 2787 /** 2788 * Indicates the cell parameter ID. 2789 * 2790 * @type { number } 2791 * @syscap SystemCapability.Telephony.CoreService 2792 * @systemapi Hide this for inner system use. 2793 * @since 8 2794 */ 2795 cpid: number; 2796 2797 /** 2798 * Indicates the absolute radio frequency number. 2799 * 2800 * @type { number } 2801 * @syscap SystemCapability.Telephony.CoreService 2802 * @systemapi Hide this for inner system use. 2803 * @since 8 2804 */ 2805 uarfcn: number; 2806 2807 /** 2808 * Indicates the mobile country code. 2809 * 2810 * @type { string } 2811 * @syscap SystemCapability.Telephony.CoreService 2812 * @systemapi Hide this for inner system use. 2813 * @since 8 2814 */ 2815 mcc: string; 2816 2817 /** 2818 * Indicates the mobile network code. 2819 * 2820 * @type { string } 2821 * @syscap SystemCapability.Telephony.CoreService 2822 * @systemapi Hide this for inner system use. 2823 * @since 8 2824 */ 2825 mnc: string; 2826 } 2827 2828 /** 2829 * Obtains WCDMA cell information. 2830 * 2831 * @interface WcdmaCellInformation 2832 * @syscap SystemCapability.Telephony.CoreService 2833 * @systemapi Hide this for inner system use. 2834 * @since 8 2835 */ 2836 export interface WcdmaCellInformation { 2837 /** 2838 * Indicates the location area code. 2839 * 2840 * @type { number } 2841 * @syscap SystemCapability.Telephony.CoreService 2842 * @systemapi Hide this for inner system use. 2843 * @since 8 2844 */ 2845 lac: number; 2846 2847 /** 2848 * Indicates the cell ID. 2849 * 2850 * @type { number } 2851 * @syscap SystemCapability.Telephony.CoreService 2852 * @systemapi Hide this for inner system use. 2853 * @since 8 2854 */ 2855 cellId: number; 2856 2857 /** 2858 * Indicates the primary scrambling code. 2859 * 2860 * @type { number } 2861 * @syscap SystemCapability.Telephony.CoreService 2862 * @systemapi Hide this for inner system use. 2863 * @since 8 2864 */ 2865 psc: number; 2866 2867 /** 2868 * Indicates the absolute radio frequency number. 2869 * 2870 * @type { number } 2871 * @syscap SystemCapability.Telephony.CoreService 2872 * @systemapi Hide this for inner system use. 2873 * @since 8 2874 */ 2875 uarfcn: number; 2876 2877 /** 2878 * Indicates the mobile country code. 2879 * 2880 * @type { string } 2881 * @syscap SystemCapability.Telephony.CoreService 2882 * @systemapi Hide this for inner system use. 2883 * @since 8 2884 */ 2885 mcc: string; 2886 2887 /** 2888 * Indicates the mobile network code. 2889 * 2890 * @type { string } 2891 * @syscap SystemCapability.Telephony.CoreService 2892 * @systemapi Hide this for inner system use. 2893 * @since 8 2894 */ 2895 mnc: string; 2896 } 2897 2898 /** 2899 * Obtains the option mode of NR. 2900 * 2901 * @enum { number } 2902 * @syscap SystemCapability.Telephony.CoreService 2903 * @systemapi Hide this for inner system use. 2904 * @since 8 2905 * @deprecated since 10 2906 * @useinstead telephony.radio#NROptionMode 2907 */ 2908 export enum NrOptionMode { 2909 /** 2910 * Indicates unknown NR networking mode. 2911 * 2912 * @syscap SystemCapability.Telephony.CoreService 2913 * @systemapi Hide this for inner system use. 2914 * @since 8 2915 * @deprecated since 10 2916 */ 2917 NR_OPTION_UNKNOWN, 2918 2919 /** 2920 * Indicates that the NR networking mode is NSA only. 2921 * 2922 * @syscap SystemCapability.Telephony.CoreService 2923 * @systemapi Hide this for inner system use. 2924 * @since 8 2925 * @deprecated since 10 2926 */ 2927 NR_OPTION_NSA_ONLY, 2928 2929 /** 2930 * Indicates that the NR networking mode is SA only. 2931 * 2932 * @syscap SystemCapability.Telephony.CoreService 2933 * @systemapi Hide this for inner system use. 2934 * @since 8 2935 * @deprecated since 10 2936 */ 2937 NR_OPTION_SA_ONLY, 2938 2939 /** 2940 * Indicates that the NR networking mode is NSA and SA. 2941 * 2942 * @syscap SystemCapability.Telephony.CoreService 2943 * @systemapi Hide this for inner system use. 2944 * @since 8 2945 * @deprecated since 10 2946 */ 2947 NR_OPTION_NSA_AND_SA, 2948 } 2949 2950 /** 2951 * Obtains the option mode of NR. 2952 * 2953 * @enum { number } 2954 * @syscap SystemCapability.Telephony.CoreService 2955 * @systemapi Hide this for inner system use. 2956 * @since 10 2957 */ 2958 export enum NROptionMode { 2959 /** 2960 * Indicates unknown NR networking mode. 2961 * 2962 * @syscap SystemCapability.Telephony.CoreService 2963 * @systemapi Hide this for inner system use. 2964 * @since 10 2965 */ 2966 NR_OPTION_UNKNOWN, 2967 2968 /** 2969 * Indicates that the NR networking mode is NSA only. 2970 * 2971 * @syscap SystemCapability.Telephony.CoreService 2972 * @systemapi Hide this for inner system use. 2973 * @since 10 2974 */ 2975 NR_OPTION_NSA_ONLY, 2976 2977 /** 2978 * Indicates that the NR networking mode is SA only. 2979 * 2980 * @syscap SystemCapability.Telephony.CoreService 2981 * @systemapi Hide this for inner system use. 2982 * @since 10 2983 */ 2984 NR_OPTION_SA_ONLY, 2985 2986 /** 2987 * Indicates that the NR networking mode is NSA and SA. 2988 * 2989 * @syscap SystemCapability.Telephony.CoreService 2990 * @systemapi Hide this for inner system use. 2991 * @since 10 2992 */ 2993 NR_OPTION_NSA_AND_SA, 2994 } 2995 2996 /** 2997 * Obtains the network search results. 2998 * 2999 * @interface NetworkSearchResult 3000 * @syscap SystemCapability.Telephony.CoreService 3001 * @systemapi Hide this for inner system use. 3002 * @since 6 3003 */ 3004 export interface NetworkSearchResult { 3005 /** 3006 * Indicates whether the network search was successful. 3007 * 3008 * @type { boolean } 3009 * @syscap SystemCapability.Telephony.CoreService 3010 * @systemapi Hide this for inner system use. 3011 * @since 6 3012 */ 3013 isNetworkSearchSuccess: boolean; 3014 3015 /** 3016 * Obtains the network search results. 3017 * 3018 * @type { Array<NetworkInformation> } 3019 * @syscap SystemCapability.Telephony.CoreService 3020 * @systemapi Hide this for inner system use. 3021 * @since 6 3022 */ 3023 networkSearchResult: Array<NetworkInformation>; 3024 } 3025 3026 /** 3027 * Obtains the network information. 3028 * 3029 * @interface NetworkInformation 3030 * @syscap SystemCapability.Telephony.CoreService 3031 * @systemapi Hide this for inner system use. 3032 * @since 6 3033 */ 3034 export interface NetworkInformation { 3035 /** 3036 * Indicates the name of the operator. 3037 * 3038 * @type { string } 3039 * @syscap SystemCapability.Telephony.CoreService 3040 * @systemapi Hide this for inner system use. 3041 * @since 6 3042 */ 3043 operatorName: string; 3044 3045 /** 3046 * Indicates the number of the operator. 3047 * 3048 * @type { string } 3049 * @syscap SystemCapability.Telephony.CoreService 3050 * @systemapi Hide this for inner system use. 3051 * @since 6 3052 */ 3053 operatorNumeric: string; 3054 3055 /** 3056 * Indicates the status of network information. 3057 * 3058 * @type { NetworkInformationState } 3059 * @syscap SystemCapability.Telephony.CoreService 3060 * @systemapi Hide this for inner system use. 3061 * @since 6 3062 */ 3063 state: NetworkInformationState; 3064 3065 /** 3066 * Indicates the radio Technology. 3067 * 3068 * @type { string } 3069 * @syscap SystemCapability.Telephony.CoreService 3070 * @systemapi Hide this for inner system use. 3071 * @since 6 3072 */ 3073 radioTech: string; 3074 } 3075 3076 /** 3077 * Obtains network information status. 3078 * 3079 * @enum { number } 3080 * @syscap SystemCapability.Telephony.CoreService 3081 * @systemapi Hide this for inner system use. 3082 * @since 6 3083 */ 3084 export enum NetworkInformationState { 3085 /** 3086 * Indicates that the network state is unknown. 3087 * 3088 * @syscap SystemCapability.Telephony.CoreService 3089 * @systemapi Hide this for inner system use. 3090 * @since 6 3091 */ 3092 NETWORK_UNKNOWN, 3093 3094 /** 3095 * Indicates that the network is available for registration. 3096 * 3097 * @syscap SystemCapability.Telephony.CoreService 3098 * @systemapi Hide this for inner system use. 3099 * @since 6 3100 */ 3101 NETWORK_AVAILABLE, 3102 3103 /** 3104 * Indicates that you have already registered with the network. 3105 * 3106 * @syscap SystemCapability.Telephony.CoreService 3107 * @systemapi Hide this for inner system use. 3108 * @since 6 3109 */ 3110 NETWORK_CURRENT, 3111 3112 /** 3113 * Indicates that the network is unavailable for registration. 3114 * 3115 * @syscap SystemCapability.Telephony.CoreService 3116 * @systemapi Hide this for inner system use. 3117 * @since 6 3118 */ 3119 NETWORK_FORBIDDEN 3120 } 3121 3122 /** 3123 * Obtains the network selection mode option. 3124 * 3125 * @interface NetworkSelectionModeOptions 3126 * @syscap SystemCapability.Telephony.CoreService 3127 * @systemapi Hide this for inner system use. 3128 * @since 6 3129 */ 3130 export interface NetworkSelectionModeOptions { 3131 /** 3132 * Indicates the card slot index number, ranging from 0 to 3133 * the maximum card slot index number supported by the device. 3134 * 3135 * @type { number } 3136 * @syscap SystemCapability.Telephony.CoreService 3137 * @systemapi Hide this for inner system use. 3138 * @since 6 3139 */ 3140 slotId: number; 3141 3142 /** 3143 * Indicates the network search mode of the SIM card. 3144 * 3145 * @type { NetworkSelectionMode } 3146 * @syscap SystemCapability.Telephony.CoreService 3147 * @systemapi Hide this for inner system use. 3148 * @since 6 3149 */ 3150 selectMode: NetworkSelectionMode; 3151 3152 /** 3153 * Indicates the network information. 3154 * 3155 * @type { NetworkInformation } 3156 * @syscap SystemCapability.Telephony.CoreService 3157 * @systemapi Hide this for inner system use. 3158 * @since 6 3159 */ 3160 networkInformation: NetworkInformation; 3161 3162 /** 3163 * Indicates whether to continue selecting the network selection mode. 3164 * 3165 * @type { boolean } 3166 * @syscap SystemCapability.Telephony.CoreService 3167 * @systemapi Hide this for inner system use. 3168 * @since 6 3169 */ 3170 resumeSelection: boolean; 3171 } 3172 3173 /** 3174 * Obtains the network selection mode. 3175 * 3176 * @enum { number } 3177 * @syscap SystemCapability.Telephony.CoreService 3178 * @since 6 3179 */ 3180 export enum NetworkSelectionMode { 3181 /** 3182 * Indicates that the network is unavailable for registration. 3183 * 3184 * @syscap SystemCapability.Telephony.CoreService 3185 * @since 6 3186 */ 3187 NETWORK_SELECTION_UNKNOWN, 3188 3189 /** 3190 * Indicates that the network is unavailable for registration. 3191 * 3192 * @syscap SystemCapability.Telephony.CoreService 3193 * @since 6 3194 */ 3195 NETWORK_SELECTION_AUTOMATIC, 3196 3197 /** 3198 * Manual network selection modes. 3199 * 3200 * @syscap SystemCapability.Telephony.CoreService 3201 * @since 6 3202 */ 3203 NETWORK_SELECTION_MANUAL 3204 } 3205 3206 /** 3207 * Obtains IMS registration status. 3208 * 3209 * @enum { number } 3210 * @syscap SystemCapability.Telephony.CoreService 3211 * @systemapi Hide this for inner system use. 3212 * @since 9 3213 */ 3214 export enum ImsRegState { 3215 /** 3216 * Indicates that the ims service is not registered. 3217 * 3218 * @syscap SystemCapability.Telephony.CoreService 3219 * @systemapi Hide this for inner system use. 3220 * @since 9 3221 */ 3222 IMS_UNREGISTERED, 3223 3224 /** 3225 * Indicates that the ims service has been registered. 3226 * 3227 * @syscap SystemCapability.Telephony.CoreService 3228 * @systemapi Hide this for inner system use. 3229 * @since 9 3230 */ 3231 IMS_REGISTERED, 3232 } 3233 3234 /** 3235 * Indicates IMS registration technology. 3236 * 3237 * @enum { number } 3238 * @syscap SystemCapability.Telephony.CoreService 3239 * @systemapi Hide this for inner system use. 3240 * @since 9 3241 */ 3242 export enum ImsRegTech { 3243 /** 3244 * Indicates that ims has no registered technology. 3245 * 3246 * @syscap SystemCapability.Telephony.CoreService 3247 * @systemapi Hide this for inner system use. 3248 * @since 9 3249 */ 3250 REGISTRATION_TECH_NONE, 3251 3252 /** 3253 * Indicates that ims registers LTE technology. 3254 * 3255 * @syscap SystemCapability.Telephony.CoreService 3256 * @systemapi Hide this for inner system use. 3257 * @since 9 3258 */ 3259 REGISTRATION_TECH_LTE, 3260 3261 /** 3262 * Indicates that ims registers IWLAN technology. 3263 * 3264 * @syscap SystemCapability.Telephony.CoreService 3265 * @systemapi Hide this for inner system use. 3266 * @since 9 3267 */ 3268 REGISTRATION_TECH_IWLAN, 3269 3270 /** 3271 * Indicates that ims registers NR technology. 3272 * 3273 * @syscap SystemCapability.Telephony.CoreService 3274 * @systemapi Hide this for inner system use. 3275 * @since 9 3276 */ 3277 REGISTRATION_TECH_NR, 3278 } 3279 3280 /** 3281 * Indicates IMS registration information. 3282 * 3283 * @interface ImsRegInfo 3284 * @syscap SystemCapability.Telephony.CoreService 3285 * @systemapi Hide this for inner system use. 3286 * @since 9 3287 */ 3288 export interface ImsRegInfo { 3289 /** 3290 * Indicates the registration status of the ims service. 3291 * 3292 * @type { ImsRegState } 3293 * @syscap SystemCapability.Telephony.CoreService 3294 * @systemapi Hide this for inner system use. 3295 * @since 9 3296 */ 3297 imsRegState: ImsRegState; 3298 3299 /** 3300 * Indicates the mode of ims radio technology. 3301 * 3302 * @type { ImsRegTech } 3303 * @syscap SystemCapability.Telephony.CoreService 3304 * @systemapi Hide this for inner system use. 3305 * @since 9 3306 */ 3307 imsRegTech: ImsRegTech; 3308 } 3309 3310 /** 3311 * Indicates the type of IMS service. 3312 * 3313 * @enum { number } 3314 * @syscap SystemCapability.Telephony.CoreService 3315 * @systemapi Hide this for inner system use. 3316 * @since 9 3317 */ 3318 export enum ImsServiceType { 3319 /** 3320 * Indicates voice service. 3321 * 3322 * @syscap SystemCapability.Telephony.CoreService 3323 * @systemapi Hide this for inner system use. 3324 * @since 9 3325 */ 3326 TYPE_VOICE, 3327 3328 /** 3329 * Indicates video service. 3330 * 3331 * @syscap SystemCapability.Telephony.CoreService 3332 * @systemapi Hide this for inner system use. 3333 * @since 9 3334 */ 3335 TYPE_VIDEO, 3336 3337 /** 3338 * Indicates UT service. 3339 * 3340 * @syscap SystemCapability.Telephony.CoreService 3341 * @systemapi Hide this for inner system use. 3342 * @since 9 3343 */ 3344 TYPE_UT, 3345 3346 /** 3347 * Indicates SMS service. 3348 * 3349 * @syscap SystemCapability.Telephony.CoreService 3350 * @systemapi Hide this for inner system use. 3351 * @since 9 3352 */ 3353 TYPE_SMS, 3354 } 3355 3356 /** 3357 * Enum for network capability type. 3358 * 3359 * @enum { number } 3360 * @syscap SystemCapability.Telephony.CoreService 3361 * @systemapi Hide this for inner system use. 3362 * @since 10 3363 */ 3364 export enum NetworkCapabilityType { 3365 /** 3366 * Indicates LTE network switch type. 3367 * 3368 * @syscap SystemCapability.Telephony.CoreService 3369 * @systemapi Hide this for inner system use. 3370 * @since 10 3371 */ 3372 SERVICE_TYPE_LTE, 3373 3374 /** 3375 * Indicates NR network switch type. 3376 * 3377 * @syscap SystemCapability.Telephony.CoreService 3378 * @systemapi Hide this for inner system use. 3379 * @since 10 3380 */ 3381 SERVICE_TYPE_NR, 3382 } 3383 3384 /** 3385 * Enum for network capability state. 3386 * 3387 * @enum { number } 3388 * @syscap SystemCapability.Telephony.CoreService 3389 * @systemapi Hide this for inner system use. 3390 * @since 10 3391 */ 3392 export enum NetworkCapabilityState { 3393 /** 3394 * Indicates turn off network switch. 3395 * 3396 * @syscap SystemCapability.Telephony.CoreService 3397 * @systemapi Hide this for inner system use. 3398 * @since 10 3399 */ 3400 SERVICE_CAPABILITY_OFF, 3401 3402 /** 3403 * Indicates turn on network switch. 3404 * 3405 * @syscap SystemCapability.Telephony.CoreService 3406 * @systemapi Hide this for inner system use. 3407 * @since 10 3408 */ 3409 SERVICE_CAPABILITY_ON, 3410 } 3411} 3412 3413export default radio; 3414