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