1/* 2 * Copyright (c) 2022 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 BasicServicesKit 19 */ 20 21import type { AsyncCallback } from './@ohos.base'; 22 23/** 24 * A static class to do update for device. 25 * 26 * @namespace update 27 * @syscap SystemCapability.Update.UpdateService 28 * @systemapi hide for inner use. 29 * @since 9 30 */ 31declare namespace update { 32 /** 33 * Get online update handler for the calling device. 34 * 35 * @param { UpgradeInfo } upgradeInfo - Indicates client app and business type. 36 * @returns { Updater } online update handler to perform online update. 37 * @syscap SystemCapability.Update.UpdateService 38 * @systemapi hide for inner use. 39 * @since 9 40 */ 41 function getOnlineUpdater(upgradeInfo: UpgradeInfo): Updater; 42 43 /** 44 * Get restore handler. 45 * 46 * @returns { Restorer } restore handler to perform factory reset. 47 * @syscap SystemCapability.Update.UpdateService 48 * @systemapi hide for inner use. 49 * @since 9 50 */ 51 function getRestorer(): Restorer; 52 53 /** 54 * Get local update handler. 55 * 56 * @returns { LocalUpdater } local update handler to perform local update. 57 * @syscap SystemCapability.Update.UpdateService 58 * @systemapi hide for inner use. 59 * @since 9 60 */ 61 function getLocalUpdater(): LocalUpdater; 62 63 /** 64 * A static class to do online update. 65 * 66 * @interface Updater 67 * @syscap SystemCapability.Update.UpdateService 68 * @systemapi hide for inner use. 69 * @since 9 70 */ 71 export interface Updater { 72 /** 73 * Check new version. 74 * 75 * @permission ohos.permission.UPDATE_SYSTEM 76 * @param { AsyncCallback<CheckResult> } callback - Callback used to return the result. 77 * @throws { BusinessError } 201 - Permission denied. 78 * @throws { BusinessError } 11500104 - IPC error. 79 * @syscap SystemCapability.Update.UpdateService 80 * @systemapi hide for inner use. 81 * @since 9 82 */ 83 checkNewVersion(callback: AsyncCallback<CheckResult>): void; 84 85 /** 86 * Check new version. 87 * 88 * @permission ohos.permission.UPDATE_SYSTEM 89 * @returns { Promise<CheckResult> } Promise used to return the result. 90 * @throws { BusinessError } 201 - Permission denied. 91 * @throws { BusinessError } 11500104 - IPC error. 92 * @syscap SystemCapability.Update.UpdateService 93 * @systemapi hide for inner use. 94 * @since 9 95 */ 96 checkNewVersion(): Promise<CheckResult>; 97 98 /** 99 * Get new version. 100 * 101 * @permission ohos.permission.UPDATE_SYSTEM 102 * @param { AsyncCallback<NewVersionInfo> } callback - Callback used to return the result. 103 * @throws { BusinessError } 201 - Permission denied. 104 * @throws { BusinessError } 11500104 - IPC error. 105 * @syscap SystemCapability.Update.UpdateService 106 * @systemapi hide for inner use. 107 * @since 9 108 */ 109 getNewVersionInfo(callback: AsyncCallback<NewVersionInfo>): void; 110 111 /** 112 * Get new version. 113 * 114 * @permission ohos.permission.UPDATE_SYSTEM 115 * @returns { Promise<NewVersionInfo> } Promise used to return the result. 116 * @throws { BusinessError } 201 - Permission denied. 117 * @throws { BusinessError } 11500104 - IPC error. 118 * @syscap SystemCapability.Update.UpdateService 119 * @systemapi hide for inner use. 120 * @since 9 121 */ 122 getNewVersionInfo(): Promise<NewVersionInfo>; 123 124 /** 125 * Get new version description. 126 * 127 * @permission ohos.permission.UPDATE_SYSTEM 128 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 129 * @param { DescriptionOptions } descriptionOptions - Options of the description file. 130 * @param { AsyncCallback<Array<ComponentDescription>> } callback - Callback used to return the result. 131 * @throws { BusinessError } 201 - Permission denied. 132 * @throws { BusinessError } 401 - Parameter error. 133 * @throws { BusinessError } 11500104 - IPC error. 134 * @syscap SystemCapability.Update.UpdateService 135 * @systemapi hide for inner use. 136 * @since 9 137 */ 138 getNewVersionDescription( 139 versionDigestInfo: VersionDigestInfo, 140 descriptionOptions: DescriptionOptions, 141 callback: AsyncCallback<Array<ComponentDescription>> 142 ): void; 143 144 /** 145 * Get new version description. 146 * 147 * @permission ohos.permission.UPDATE_SYSTEM 148 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 149 * @param { DescriptionOptions } descriptionOptions - Options of the description file. 150 * @returns { Promise<Array<ComponentDescription>> } Promise used to return the result. 151 * @throws { BusinessError } 201 - Permission denied. 152 * @throws { BusinessError } 401 - Parameter error. 153 * @throws { BusinessError } 11500104 - IPC error. 154 * @syscap SystemCapability.Update.UpdateService 155 * @systemapi hide for inner use. 156 * @since 9 157 */ 158 getNewVersionDescription( 159 versionDigestInfo: VersionDigestInfo, 160 descriptionOptions: DescriptionOptions 161 ): Promise<Array<ComponentDescription>>; 162 163 /** 164 * Get current version. 165 * 166 * @permission ohos.permission.UPDATE_SYSTEM 167 * @param { AsyncCallback<CurrentVersionInfo> } callback - Callback used to return the result. 168 * @throws { BusinessError } 201 - Permission denied. 169 * @throws { BusinessError } 11500104 - IPC error. 170 * @syscap SystemCapability.Update.UpdateService 171 * @systemapi hide for inner use. 172 * @since 9 173 */ 174 getCurrentVersionInfo(callback: AsyncCallback<CurrentVersionInfo>): void; 175 176 /** 177 * Get current version. 178 * 179 * @permission ohos.permission.UPDATE_SYSTEM 180 * @returns { Promise<CurrentVersionInfo> } Promise used to return the result. 181 * @throws { BusinessError } 201 - Permission denied. 182 * @throws { BusinessError } 11500104 - IPC error. 183 * @syscap SystemCapability.Update.UpdateService 184 * @systemapi hide for inner use. 185 * @since 9 186 */ 187 getCurrentVersionInfo(): Promise<CurrentVersionInfo>; 188 189 /** 190 * Get current version description. 191 * 192 * @permission ohos.permission.UPDATE_SYSTEM 193 * @param { DescriptionOptions } descriptionOptions - Options of the description file. 194 * @param { AsyncCallback<Array<ComponentDescription>> } callback - Callback used to return the result. 195 * @throws { BusinessError } 201 - Permission denied. 196 * @throws { BusinessError } 401 - Parameter error. 197 * @throws { BusinessError } 11500104 - IPC error. 198 * @syscap SystemCapability.Update.UpdateService 199 * @systemapi hide for inner use. 200 * @since 9 201 */ 202 getCurrentVersionDescription( 203 descriptionOptions: DescriptionOptions, 204 callback: AsyncCallback<Array<ComponentDescription>> 205 ): void; 206 207 /** 208 * Get current version description. 209 * 210 * @permission ohos.permission.UPDATE_SYSTEM 211 * @param { DescriptionOptions } descriptionOptions - Options of the description file. 212 * @returns { Promise<Array<ComponentDescription>> } Promise used to return the result. 213 * @throws { BusinessError } 201 - Permission denied. 214 * @throws { BusinessError } 401 - Parameter error. 215 * @throws { BusinessError } 11500104 - IPC error. 216 * @syscap SystemCapability.Update.UpdateService 217 * @systemapi hide for inner use. 218 * @since 9 219 */ 220 getCurrentVersionDescription(descriptionOptions: DescriptionOptions): Promise<Array<ComponentDescription>>; 221 222 /** 223 * Get task info. 224 * 225 * @permission ohos.permission.UPDATE_SYSTEM 226 * @param { AsyncCallback<TaskInfo> } callback - Callback used to return the result. 227 * @throws { BusinessError } 201 - Permission denied. 228 * @throws { BusinessError } 11500104 - IPC error. 229 * @syscap SystemCapability.Update.UpdateService 230 * @systemapi hide for inner use. 231 * @since 9 232 */ 233 getTaskInfo(callback: AsyncCallback<TaskInfo>): void; 234 235 /** 236 * Get task info. 237 * 238 * @permission ohos.permission.UPDATE_SYSTEM 239 * @returns { Promise<TaskInfo> } Promise used to return the result. 240 * @throws { BusinessError } 201 - Permission denied. 241 * @throws { BusinessError } 11500104 - IPC error. 242 * @syscap SystemCapability.Update.UpdateService 243 * @systemapi hide for inner use. 244 * @since 9 245 */ 246 getTaskInfo(): Promise<TaskInfo>; 247 248 /** 249 * Trigger download new version packages. 250 * Apps should listen to task update event 251 * 252 * @permission ohos.permission.UPDATE_SYSTEM 253 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 254 * @param { DownloadOptions } downloadOptions - Download options. 255 * @param { AsyncCallback<void> } callback - Callback used to return the result. 256 * If the operation is successful, `err` is `undefined`; otherwise, `err` is an `Error` object. 257 * @throws { BusinessError } 201 - Permission denied. 258 * @throws { BusinessError } 401 - Parameter error. 259 * @throws { BusinessError } 11500104 - IPC error. 260 * @syscap SystemCapability.Update.UpdateService 261 * @systemapi hide for inner use. 262 * @since 9 263 */ 264 download( 265 versionDigestInfo: VersionDigestInfo, 266 downloadOptions: DownloadOptions, 267 callback: AsyncCallback<void> 268 ): void; 269 270 /** 271 * Trigger download new version packages. 272 * Apps should listen to task update event 273 * 274 * @permission ohos.permission.UPDATE_SYSTEM 275 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 276 * @param { DownloadOptions } downloadOptions - Download options. 277 * @returns { Promise<void> } Promise that returns no value. 278 * @throws { BusinessError } 201 - Permission denied. 279 * @throws { BusinessError } 401 - Parameter error. 280 * @throws { BusinessError } 11500104 - IPC error. 281 * @syscap SystemCapability.Update.UpdateService 282 * @systemapi hide for inner use. 283 * @since 9 284 */ 285 download(versionDigestInfo: VersionDigestInfo, downloadOptions: DownloadOptions): Promise<void>; 286 287 /** 288 * Resume download new version packages. 289 * Apps should listen to task update event 290 * 291 * @permission ohos.permission.UPDATE_SYSTEM 292 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 293 * @param { ResumeDownloadOptions } resumeDownloadOptions - Options for resume download. 294 * @param { AsyncCallback<void> } callback - Callback used to return the result. 295 * If the operation is successful, `err` is `undefined`; otherwise, `err` is an `Error` object. 296 * @throws { BusinessError } 201 - Permission denied. 297 * @throws { BusinessError } 401 - Parameter error. 298 * @throws { BusinessError } 11500104 - IPC error. 299 * @syscap SystemCapability.Update.UpdateService 300 * @systemapi hide for inner use. 301 * @since 9 302 */ 303 resumeDownload( 304 versionDigestInfo: VersionDigestInfo, 305 resumeDownloadOptions: ResumeDownloadOptions, 306 callback: AsyncCallback<void> 307 ): void; 308 309 /** 310 * Resume download new version packages. 311 * Apps should listen to task update event 312 * 313 * @permission ohos.permission.UPDATE_SYSTEM 314 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 315 * @param { ResumeDownloadOptions } resumeDownloadOptions - Options for resume download. 316 * @returns { Promise<void> } Promise that returns no value. 317 * @throws { BusinessError } 201 - Permission denied. 318 * @throws { BusinessError } 401 - Parameter error. 319 * @throws { BusinessError } 11500104 - IPC error. 320 * @syscap SystemCapability.Update.UpdateService 321 * @systemapi hide for inner use. 322 * @since 9 323 */ 324 resumeDownload(versionDigestInfo: VersionDigestInfo, resumeDownloadOptions: ResumeDownloadOptions): Promise<void>; 325 326 /** 327 * Pause download new version packages. 328 * Apps should listen to task update event 329 * 330 * @permission ohos.permission.UPDATE_SYSTEM 331 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 332 * @param { PauseDownloadOptions } pauseDownloadOptions - Options for pause download. 333 * @param { AsyncCallback<void> } callback - Callback used to return the result. 334 * If the operation is successful, `err` is `undefined`; otherwise, `err` is an `Error` object. 335 * @throws { BusinessError } 201 - Permission denied. 336 * @throws { BusinessError } 401 - Parameter error. 337 * @throws { BusinessError } 11500104 - IPC error. 338 * @syscap SystemCapability.Update.UpdateService 339 * @systemapi hide for inner use. 340 * @since 9 341 */ 342 pauseDownload( 343 versionDigestInfo: VersionDigestInfo, 344 pauseDownloadOptions: PauseDownloadOptions, 345 callback: AsyncCallback<void> 346 ): void; 347 348 /** 349 * Pause download new version packages. 350 * Apps should listen to task update event 351 * 352 * @permission ohos.permission.UPDATE_SYSTEM 353 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 354 * @param { PauseDownloadOptions } pauseDownloadOptions - Options for pause download. 355 * @returns { Promise<void> } Promise that returns no value. 356 * @throws { BusinessError } 201 - Permission denied. 357 * @throws { BusinessError } 401 - Parameter error. 358 * @throws { BusinessError } 11500104 - IPC error. 359 * @syscap SystemCapability.Update.UpdateService 360 * @systemapi hide for inner use. 361 * @since 9 362 */ 363 pauseDownload(versionDigestInfo: VersionDigestInfo, pauseDownloadOptions: PauseDownloadOptions): Promise<void>; 364 365 /** 366 * Install packages for the device. 367 * Apps should listen to task update event 368 * 369 * @permission ohos.permission.UPDATE_SYSTEM 370 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 371 * @param { UpgradeOptions } upgradeOptions - Update options. 372 * @param { AsyncCallback<void> } callback - Callback used to return the result. 373 * If the operation is successful, `err` is `undefined`; otherwise, `err` is an `Error` object. 374 * @throws { BusinessError } 201 - Permission denied. 375 * @throws { BusinessError } 401 - Parameter error. 376 * @throws { BusinessError } 11500104 - IPC error. 377 * @syscap SystemCapability.Update.UpdateService 378 * @systemapi hide for inner use. 379 * @since 9 380 */ 381 upgrade(versionDigestInfo: VersionDigestInfo, upgradeOptions: UpgradeOptions, callback: AsyncCallback<void>): void; 382 383 /** 384 * Install packages for the device. 385 * Apps should listen to task update event 386 * 387 * @permission ohos.permission.UPDATE_SYSTEM 388 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 389 * @param { UpgradeOptions } upgradeOptions - Update options. 390 * @returns { Promise<void> } Promise that returns no value. 391 * @throws { BusinessError } 201 - Permission denied. 392 * @throws { BusinessError } 401 - Parameter error. 393 * @throws { BusinessError } 11500104 - IPC error. 394 * @syscap SystemCapability.Update.UpdateService 395 * @systemapi hide for inner use. 396 * @since 9 397 */ 398 upgrade(versionDigestInfo: VersionDigestInfo, upgradeOptions: UpgradeOptions): Promise<void>; 399 400 /** 401 * Clear error during upgrade. 402 * 403 * @permission ohos.permission.UPDATE_SYSTEM 404 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 405 * @param { ClearOptions } clearOptions - Clear options. 406 * @param { AsyncCallback<void> } callback - Callback used to return the result. 407 * If the operation is successful, `err` is `undefined`; otherwise, `err` is an `Error` object. 408 * @throws { BusinessError } 201 - Permission denied. 409 * @throws { BusinessError } 401 - Parameter error. 410 * @throws { BusinessError } 11500104 - IPC error. 411 * @syscap SystemCapability.Update.UpdateService 412 * @systemapi hide for inner use. 413 * @since 9 414 */ 415 clearError(versionDigestInfo: VersionDigestInfo, clearOptions: ClearOptions, callback: AsyncCallback<void>): void; 416 417 /** 418 * Clear error during upgrade. 419 * 420 * @permission ohos.permission.UPDATE_SYSTEM 421 * @param { VersionDigestInfo } versionDigestInfo - Version digest information. 422 * @param { ClearOptions } clearOptions - Clear options. 423 * @returns { Promise<void> } Promise that returns no value. 424 * @throws { BusinessError } 201 - Permission denied. 425 * @throws { BusinessError } 401 - Parameter error. 426 * @throws { BusinessError } 11500104 - IPC error. 427 * @syscap SystemCapability.Update.UpdateService 428 * @systemapi hide for inner use. 429 * @since 9 430 */ 431 clearError(versionDigestInfo: VersionDigestInfo, clearOptions: ClearOptions): Promise<void>; 432 433 /** 434 * Get current upgrade policy. 435 * 436 * @permission ohos.permission.UPDATE_SYSTEM 437 * @param { AsyncCallback<UpgradePolicy> } callback - Callback used to return the result. 438 * @throws { BusinessError } 201 - Permission denied. 439 * @throws { BusinessError } 11500104 - IPC error. 440 * @syscap SystemCapability.Update.UpdateService 441 * @systemapi hide for inner use. 442 * @since 9 443 */ 444 getUpgradePolicy(callback: AsyncCallback<UpgradePolicy>): void; 445 446 /** 447 * Get current upgrade policy. 448 * 449 * @permission ohos.permission.UPDATE_SYSTEM 450 * @returns { Promise<UpgradePolicy> } Promise used to return the result. 451 * @throws { BusinessError } 201 - Permission denied. 452 * @throws { BusinessError } 11500104 - IPC error. 453 * @syscap SystemCapability.Update.UpdateService 454 * @systemapi hide for inner use. 455 * @since 9 456 */ 457 getUpgradePolicy(): Promise<UpgradePolicy>; 458 459 /** 460 * Set upgrade policy. 461 * 462 * @permission ohos.permission.UPDATE_SYSTEM 463 * @param { UpgradePolicy } policy - Update policy. 464 * @param { AsyncCallback<void> } callback - Callback used to return the result. 465 * @throws { BusinessError } 201 - Permission denied. 466 * @throws { BusinessError } 11500104 - IPC error. 467 * @syscap SystemCapability.Update.UpdateService 468 * @systemapi hide for inner use. 469 * @since 9 470 */ 471 setUpgradePolicy(policy: UpgradePolicy, callback: AsyncCallback<void>): void; 472 473 /** 474 * Set upgrade policy. 475 * 476 * @permission ohos.permission.UPDATE_SYSTEM 477 * @param { UpgradePolicy } policy - Update policy. 478 * @returns { Promise<void> } Promise that returns no value. 479 * @throws { BusinessError } 201 - Permission denied. 480 * @throws { BusinessError } 11500104 - IPC error. 481 * @syscap SystemCapability.Update.UpdateService 482 * @systemapi hide for inner use. 483 * @since 9 484 */ 485 setUpgradePolicy(policy: UpgradePolicy): Promise<void>; 486 487 /** 488 * Terminate upgrade task. 489 * 490 * @permission ohos.permission.UPDATE_SYSTEM 491 * @param { AsyncCallback<void> } callback - Callback used to return the result. 492 * If the operation is successful, 'err' is 'undefined'; otherwise, 'err' is an 'Error' object. 493 * @throws { BusinessError } 201 - Permission denied. 494 * @throws { BusinessError } 11500104 - IPC error. 495 * @syscap SystemCapability.Update.UpdateService 496 * @systemapi hide for inner use. 497 * @since 9 498 */ 499 terminateUpgrade(callback: AsyncCallback<void>): void; 500 501 /** 502 * Terminate upgrade task. 503 * 504 * @permission ohos.permission.UPDATE_SYSTEM 505 * @returns { Promise<void> } Promise that returns no value. 506 * @throws { BusinessError } 201 - Permission denied. 507 * @throws { BusinessError } 11500104 - IPC error. 508 * @syscap SystemCapability.Update.UpdateService 509 * @systemapi hide for inner use. 510 * @since 9 511 */ 512 terminateUpgrade(): Promise<void>; 513 514 /** 515 * Subscribe task update events 516 * 517 * @param { EventClassifyInfo } eventClassifyInfo - Event information. 518 * @param { UpgradeTaskCallback } taskCallback - Event callback. 519 * @syscap SystemCapability.Update.UpdateService 520 * @systemapi hide for inner use. 521 * @since 9 522 */ 523 on(eventClassifyInfo: EventClassifyInfo, taskCallback: UpgradeTaskCallback): void; 524 525 /** 526 * Unsubscribe task update events 527 * 528 * @param { EventClassifyInfo } eventClassifyInfo - Event information. 529 * @param { UpgradeTaskCallback } taskCallback - Event callback. 530 * @syscap SystemCapability.Update.UpdateService 531 * @systemapi hide for inner use. 532 * @since 9 533 */ 534 off(eventClassifyInfo: EventClassifyInfo, taskCallback?: UpgradeTaskCallback): void; 535 } 536 537 /** 538 * A static class to do restore. 539 * 540 * @interface Restorer 541 * @syscap SystemCapability.Update.UpdateService 542 * @systemapi hide for inner use. 543 * @since 9 544 */ 545 export interface Restorer { 546 /** 547 * Reboot and clean user data. 548 * 549 * @permission ohos.permission.FACTORY_RESET 550 * @param { AsyncCallback<void> } callback - Callback used to return the result. 551 * If the operation is successful, `err` is `undefined`; otherwise, `err` is an `Error` object. 552 * @throws { BusinessError } 201 - Permission denied. 553 * @throws { BusinessError } 11500104 - IPC error. 554 * @syscap SystemCapability.Update.UpdateService 555 * @systemapi hide for inner use. 556 * @since 9 557 */ 558 factoryReset(callback: AsyncCallback<void>): void; 559 560 /** 561 * Reboot and clean user data. 562 * 563 * @permission ohos.permission.FACTORY_RESET 564 * @returns { Promise<void> } Promise that returns no value. 565 * @throws { BusinessError } 201 - Permission denied. 566 * @throws { BusinessError } 11500104 - IPC error. 567 * @syscap SystemCapability.Update.UpdateService 568 * @systemapi hide for inner use. 569 * @since 9 570 */ 571 factoryReset(): Promise<void>; 572 } 573 574 /** 575 * A static class to do local update. 576 * 577 * @interface LocalUpdater 578 * @syscap SystemCapability.Update.UpdateService 579 * @systemapi hide for inner use. 580 * @since 9 581 */ 582 export interface LocalUpdater { 583 /** 584 * Verify local update package. 585 * 586 * @permission ohos.permission.UPDATE_SYSTEM 587 * @param { UpgradeFile } upgradeFile - Update file. 588 * @param { string } certsFile - Path of the certificate file. 589 * @param { AsyncCallback<void> } callback - Callback used to return the verify upgrade package result. 590 * @throws { BusinessError } 201 - Permission denied. 591 * @throws { BusinessError } 401 - Parameter error. 592 * @throws { BusinessError } 11500104 - IPC error. 593 * @syscap SystemCapability.Update.UpdateService 594 * @systemapi hide for inner use. 595 * @since 9 596 */ 597 verifyUpgradePackage(upgradeFile: UpgradeFile, certsFile: string, callback: AsyncCallback<void>): void; 598 599 /** 600 * Verify local update package. 601 * 602 * @permission ohos.permission.UPDATE_SYSTEM 603 * @param { UpgradeFile } upgradeFile - Update file. 604 * @param { string } certsFile - Path of the certificate file. 605 * @returns { Promise<void> } Promise that returns no value. 606 * @throws { BusinessError } 201 - Permission denied. 607 * @throws { BusinessError } 401 - Parameter error. 608 * @throws { BusinessError } 11500104 - IPC error. 609 * @syscap SystemCapability.Update.UpdateService 610 * @systemapi hide for inner use. 611 * @since 9 612 */ 613 verifyUpgradePackage(upgradeFile: UpgradeFile, certsFile: string): Promise<void>; 614 615 /** 616 * Apply local update package. 617 * Apps should listen to task update event 618 * 619 * @permission ohos.permission.UPDATE_SYSTEM 620 * @param { Array<UpgradeFile> } upgradeFiles - Update files. 621 * @param { AsyncCallback<void> } callback - Callback used to return the apply new version result. 622 * @throws { BusinessError } 201 - Permission denied. 623 * @throws { BusinessError } 401 - Parameter error. 624 * @throws { BusinessError } 11500104 - IPC error. 625 * @syscap SystemCapability.Update.UpdateService 626 * @systemapi hide for inner use. 627 * @since 9 628 */ 629 applyNewVersion(upgradeFiles: Array<UpgradeFile>, callback: AsyncCallback<void>): void; 630 631 /** 632 * Apply local update package. 633 * Apps should listen to task update event 634 * 635 * @permission ohos.permission.UPDATE_SYSTEM 636 * @param { Array<UpgradeFile> } upgradeFiles - Update files. 637 * @returns { Promise<void> } Promise that returns no value. 638 * @throws { BusinessError } 201 - Permission denied. 639 * @throws { BusinessError } 401 - Parameter error. 640 * @throws { BusinessError } 11500104 - IPC error. 641 * @syscap SystemCapability.Update.UpdateService 642 * @systemapi hide for inner use. 643 * @since 9 644 */ 645 applyNewVersion(upgradeFiles: Array<UpgradeFile>): Promise<void>; 646 647 /** 648 * Subscribe task update events 649 * 650 * @param { EventClassifyInfo } eventClassifyInfo - Event information. 651 * @param { UpgradeTaskCallback } taskCallback - Event callback. 652 * @syscap SystemCapability.Update.UpdateService 653 * @systemapi hide for inner use. 654 * @since 9 655 */ 656 on(eventClassifyInfo: EventClassifyInfo, taskCallback: UpgradeTaskCallback): void; 657 658 /** 659 * Unsubscribe task update events 660 * 661 * @param { EventClassifyInfo } eventClassifyInfo - Event information. 662 * @param { UpgradeTaskCallback } taskCallback - Event callback. 663 * @syscap SystemCapability.Update.UpdateService 664 * @systemapi hide for inner use. 665 * @since 9 666 */ 667 off(eventClassifyInfo: EventClassifyInfo, taskCallback?: UpgradeTaskCallback): void; 668 } 669 670 /** 671 * Represents upgrade info. 672 * 673 * @typedef UpgradeInfo 674 * @syscap SystemCapability.Update.UpdateService 675 * @systemapi hide for inner use. 676 * @since 9 677 */ 678 export interface UpgradeInfo { 679 /** 680 * Upgrade client package name 681 * 682 * @type { string } 683 * @syscap SystemCapability.Update.UpdateService 684 * @systemapi hide for inner use. 685 * @since 9 686 */ 687 upgradeApp: string; 688 689 /** 690 * BusinessType of upgrade 691 * 692 * @type { BusinessType } 693 * @syscap SystemCapability.Update.UpdateService 694 * @systemapi hide for inner use. 695 * @since 9 696 */ 697 businessType: BusinessType; 698 } 699 700 /** 701 * Represents business type. 702 * 703 * @typedef BusinessType 704 * @syscap SystemCapability.Update.UpdateService 705 * @systemapi hide for inner use. 706 * @since 9 707 */ 708 export interface BusinessType { 709 /** 710 * Vendor of business type 711 * 712 * @type { BusinessVendor } 713 * @syscap SystemCapability.Update.UpdateService 714 * @systemapi hide for inner use. 715 * @since 9 716 */ 717 vendor: BusinessVendor; 718 719 /** 720 * Update service type 721 * 722 * @type { BusinessSubType } 723 * @syscap SystemCapability.Update.UpdateService 724 * @systemapi hide for inner use. 725 * @since 9 726 */ 727 subType: BusinessSubType; 728 } 729 730 /** 731 * Represents new version check result. 732 * 733 * @typedef CheckResult 734 * @syscap SystemCapability.Update.UpdateService 735 * @systemapi hide for inner use. 736 * @since 9 737 */ 738 export interface CheckResult { 739 /** 740 * New version exist or not 741 * 742 * @type { boolean } 743 * @syscap SystemCapability.Update.UpdateService 744 * @systemapi hide for inner use. 745 * @since 9 746 */ 747 isExistNewVersion: boolean; 748 749 /** 750 * New version info 751 * 752 * @type { NewVersionInfo } 753 * @syscap SystemCapability.Update.UpdateService 754 * @systemapi hide for inner use. 755 * @since 9 756 */ 757 newVersionInfo: NewVersionInfo; 758 } 759 760 /** 761 * Represents new version info. 762 * 763 * @typedef NewVersionInfo 764 * @syscap SystemCapability.Update.UpdateService 765 * @systemapi hide for inner use. 766 * @since 9 767 */ 768 export interface NewVersionInfo { 769 /** 770 * Digest info of new version 771 * 772 * @type { VersionDigestInfo } 773 * @syscap SystemCapability.Update.UpdateService 774 * @systemapi hide for inner use. 775 * @since 9 776 */ 777 versionDigestInfo: VersionDigestInfo; 778 779 /** 780 * New version component array 781 * 782 * @type { Array<VersionComponent> } 783 * @syscap SystemCapability.Update.UpdateService 784 * @systemapi hide for inner use. 785 * @since 9 786 */ 787 versionComponents: Array<VersionComponent>; 788 } 789 790 /** 791 * Represents version digest info. 792 * 793 * @typedef VersionDigestInfo 794 * @syscap SystemCapability.Update.UpdateService 795 * @systemapi hide for inner use. 796 * @since 9 797 */ 798 export interface VersionDigestInfo { 799 /** 800 * Version digest value 801 * 802 * @type { string } 803 * @syscap SystemCapability.Update.UpdateService 804 * @systemapi hide for inner use. 805 * @since 9 806 */ 807 versionDigest: string; 808 } 809 810 /** 811 * Represents version component info. 812 * 813 * @typedef VersionComponent 814 * @syscap SystemCapability.Update.UpdateService 815 * @systemapi hide for inner use. 816 * @since 9 817 */ 818 export interface VersionComponent { 819 /** 820 * Version component id 821 * 822 * @type { string } 823 * @syscap SystemCapability.Update.UpdateService 824 * @systemapi hide for inner use. 825 * @since 9 826 */ 827 componentId: string; 828 829 /** 830 * Version component type 831 * 832 * @type { ComponentType } 833 * @syscap SystemCapability.Update.UpdateService 834 * @systemapi hide for inner use. 835 * @since 9 836 */ 837 componentType: ComponentType; 838 839 /** 840 * Upgrade action 841 * 842 * @type { UpgradeAction } 843 * @syscap SystemCapability.Update.UpdateService 844 * @systemapi hide for inner use. 845 * @since 9 846 */ 847 upgradeAction: UpgradeAction; 848 849 /** 850 * Display version number 851 * 852 * @type { string } 853 * @syscap SystemCapability.Update.UpdateService 854 * @systemapi hide for inner use. 855 * @since 9 856 */ 857 displayVersion: string; 858 859 /** 860 * Internal version number 861 * 862 * @type { string } 863 * @syscap SystemCapability.Update.UpdateService 864 * @systemapi hide for inner use. 865 * @since 9 866 */ 867 innerVersion: string; 868 869 /** 870 * Update package size 871 * 872 * @type { number } 873 * @syscap SystemCapability.Update.UpdateService 874 * @systemapi hide for inner use. 875 * @since 9 876 */ 877 size: number; 878 879 /** 880 * Effective mode 881 * 882 * @type { EffectiveMode } 883 * @syscap SystemCapability.Update.UpdateService 884 * @systemapi hide for inner use. 885 * @since 9 886 */ 887 effectiveMode: EffectiveMode; 888 889 /** 890 * Information about the version description file 891 * 892 * @type { DescriptionInfo } 893 * @syscap SystemCapability.Update.UpdateService 894 * @systemapi hide for inner use. 895 * @since 9 896 */ 897 descriptionInfo: DescriptionInfo; 898 } 899 900 /** 901 * Represents description options. 902 * 903 * @typedef DescriptionOptions 904 * @syscap SystemCapability.Update.UpdateService 905 * @systemapi hide for inner use. 906 * @since 9 907 */ 908 export interface DescriptionOptions { 909 /** 910 * Format of the description file 911 * 912 * @type { DescriptionFormat } 913 * @syscap SystemCapability.Update.UpdateService 914 * @systemapi hide for inner use. 915 * @since 9 916 */ 917 format: DescriptionFormat; 918 919 /** 920 * Language of the description file 921 * 922 * @type { string } 923 * @syscap SystemCapability.Update.UpdateService 924 * @systemapi hide for inner use. 925 * @since 9 926 */ 927 language: string; 928 } 929 930 /** 931 * Represents version component description. 932 * 933 * @typedef ComponentDescription 934 * @syscap SystemCapability.Update.UpdateService 935 * @systemapi hide for inner use. 936 * @since 9 937 */ 938 export interface ComponentDescription { 939 /** 940 * Component id 941 * 942 * @type { string } 943 * @syscap SystemCapability.Update.UpdateService 944 * @systemapi hide for inner use. 945 * @since 9 946 */ 947 componentId: string; 948 949 /** 950 * Information about the description file 951 * 952 * @type { DescriptionInfo } 953 * @syscap SystemCapability.Update.UpdateService 954 * @systemapi hide for inner use. 955 * @since 9 956 */ 957 descriptionInfo: DescriptionInfo; 958 } 959 960 /** 961 * Represents new version description information. 962 * 963 * @typedef DescriptionInfo 964 * @syscap SystemCapability.Update.UpdateService 965 * @systemapi hide for inner use. 966 * @since 9 967 */ 968 export interface DescriptionInfo { 969 /** 970 * Description content type 971 * 972 * @type { DescriptionType } 973 * @syscap SystemCapability.Update.UpdateService 974 * @systemapi hide for inner use. 975 * @since 9 976 */ 977 descriptionType: DescriptionType; 978 979 /** 980 * Content of the description file 981 * 982 * @type { string } 983 * @syscap SystemCapability.Update.UpdateService 984 * @systemapi hide for inner use. 985 * @since 9 986 */ 987 content: string; 988 } 989 990 /** 991 * Represents current version info. 992 * 993 * @typedef CurrentVersionInfo 994 * @syscap SystemCapability.Update.UpdateService 995 * @systemapi hide for inner use. 996 * @since 9 997 */ 998 export interface CurrentVersionInfo { 999 /** 1000 * System version number 1001 * 1002 * @type { string } 1003 * @syscap SystemCapability.Update.UpdateService 1004 * @systemapi hide for inner use. 1005 * @since 9 1006 */ 1007 osVersion: string; 1008 1009 /** 1010 * Device name 1011 * 1012 * @type { string } 1013 * @syscap SystemCapability.Update.UpdateService 1014 * @systemapi hide for inner use. 1015 * @since 9 1016 */ 1017 deviceName: string; 1018 1019 /** 1020 * Current version component array 1021 * 1022 * @type { Array<VersionComponent> } 1023 * @syscap SystemCapability.Update.UpdateService 1024 * @systemapi hide for inner use. 1025 * @since 9 1026 */ 1027 versionComponents: Array<VersionComponent>; 1028 } 1029 1030 /** 1031 * Represents download options. 1032 * 1033 * @typedef DownloadOptions 1034 * @syscap SystemCapability.Update.UpdateService 1035 * @systemapi hide for inner use. 1036 * @since 9 1037 */ 1038 export interface DownloadOptions { 1039 /** 1040 * Allow download with the network type 1041 * 1042 * @type { NetType } 1043 * @syscap SystemCapability.Update.UpdateService 1044 * @systemapi hide for inner use. 1045 * @since 9 1046 */ 1047 allowNetwork: NetType; 1048 1049 /** 1050 * Upgrade command 1051 * 1052 * @type { Order } 1053 * @syscap SystemCapability.Update.UpdateService 1054 * @systemapi hide for inner use. 1055 * @since 9 1056 */ 1057 order: Order; 1058 } 1059 1060 /** 1061 * Represents resume download options. 1062 * 1063 * @typedef ResumeDownloadOptions 1064 * @syscap SystemCapability.Update.UpdateService 1065 * @systemapi hide for inner use. 1066 * @since 9 1067 */ 1068 export interface ResumeDownloadOptions { 1069 /** 1070 * Allow download with the network type 1071 * 1072 * @type { NetType } 1073 * @syscap SystemCapability.Update.UpdateService 1074 * @systemapi hide for inner use. 1075 * @since 9 1076 */ 1077 allowNetwork: NetType; 1078 } 1079 1080 /** 1081 * Represents pause download options. 1082 * 1083 * @typedef PauseDownloadOptions 1084 * @syscap SystemCapability.Update.UpdateService 1085 * @systemapi hide for inner use. 1086 * @since 9 1087 */ 1088 export interface PauseDownloadOptions { 1089 /** 1090 * Whether allow auto resume when net available 1091 * 1092 * @type { boolean } 1093 * @syscap SystemCapability.Update.UpdateService 1094 * @systemapi hide for inner use. 1095 * @since 9 1096 */ 1097 isAllowAutoResume: boolean; 1098 } 1099 1100 /** 1101 * Represents upgrade options. 1102 * 1103 * @typedef UpgradeOptions 1104 * @syscap SystemCapability.Update.UpdateService 1105 * @systemapi hide for inner use. 1106 * @since 9 1107 */ 1108 export interface UpgradeOptions { 1109 /** 1110 * Upgrade command 1111 * 1112 * @type { Order } 1113 * @syscap SystemCapability.Update.UpdateService 1114 * @systemapi hide for inner use. 1115 * @since 9 1116 */ 1117 order: Order; 1118 } 1119 1120 /** 1121 * Represents clear error options. 1122 * 1123 * @typedef ClearOptions 1124 * @syscap SystemCapability.Update.UpdateService 1125 * @systemapi hide for inner use. 1126 * @since 9 1127 */ 1128 export interface ClearOptions { 1129 /** 1130 * Clear status error 1131 * 1132 * @type { UpgradeStatus } 1133 * @syscap SystemCapability.Update.UpdateService 1134 * @systemapi hide for inner use. 1135 * @since 9 1136 */ 1137 status: UpgradeStatus; 1138 } 1139 1140 /** 1141 * Represents upgrade policy. 1142 * 1143 * @typedef UpgradePolicy 1144 * @syscap SystemCapability.Update.UpdateService 1145 * @systemapi hide for inner use. 1146 * @since 9 1147 */ 1148 export interface UpgradePolicy { 1149 /** 1150 * Download strategy: open or close 1151 * 1152 * @type { boolean } 1153 * @syscap SystemCapability.Update.UpdateService 1154 * @systemapi hide for inner use. 1155 * @since 9 1156 */ 1157 downloadStrategy: boolean; 1158 1159 /** 1160 * Auto upgrade strategy: open or close 1161 * 1162 * @type { boolean } 1163 * @syscap SystemCapability.Update.UpdateService 1164 * @systemapi hide for inner use. 1165 * @since 9 1166 */ 1167 autoUpgradeStrategy: boolean; 1168 1169 /** 1170 * Auto upgrade period 1171 * 1172 * @type { Array<UpgradePeriod> } 1173 * @syscap SystemCapability.Update.UpdateService 1174 * @systemapi hide for inner use. 1175 * @since 9 1176 */ 1177 autoUpgradePeriods: Array<UpgradePeriod>; 1178 } 1179 1180 /** 1181 * Represents upgrade period. 1182 * 1183 * @typedef UpgradePeriod 1184 * @syscap SystemCapability.Update.UpdateService 1185 * @systemapi hide for inner use. 1186 * @since 9 1187 */ 1188 export interface UpgradePeriod { 1189 /** 1190 * Start time of upgrade period 1191 * 1192 * @type { number } 1193 * @syscap SystemCapability.Update.UpdateService 1194 * @systemapi hide for inner use. 1195 * @since 9 1196 */ 1197 start: number; 1198 1199 /** 1200 * End time of upgrade period 1201 * 1202 * @type { number } 1203 * @syscap SystemCapability.Update.UpdateService 1204 * @systemapi hide for inner use. 1205 * @since 9 1206 */ 1207 end: number; 1208 } 1209 1210 /** 1211 * Represents task info. 1212 * 1213 * @typedef TaskInfo 1214 * @syscap SystemCapability.Update.UpdateService 1215 * @systemapi hide for inner use. 1216 * @since 9 1217 */ 1218 export interface TaskInfo { 1219 /** 1220 * Whether upgrade task exist 1221 * 1222 * @type { boolean } 1223 * @syscap SystemCapability.Update.UpdateService 1224 * @systemapi hide for inner use. 1225 * @since 9 1226 */ 1227 existTask: boolean; 1228 1229 /** 1230 * Task body info 1231 * 1232 * @type { TaskBody } 1233 * @syscap SystemCapability.Update.UpdateService 1234 * @systemapi hide for inner use. 1235 * @since 9 1236 */ 1237 taskBody: TaskBody; 1238 } 1239 1240 /** 1241 * Represents event info. 1242 * 1243 * @typedef EventInfo 1244 * @syscap SystemCapability.Update.UpdateService 1245 * @systemapi hide for inner use. 1246 * @since 9 1247 */ 1248 export interface EventInfo { 1249 /** 1250 * Event id 1251 * 1252 * @type { EventId } 1253 * @syscap SystemCapability.Update.UpdateService 1254 * @systemapi hide for inner use. 1255 * @since 9 1256 */ 1257 eventId: EventId; 1258 1259 /** 1260 * Task body info 1261 * 1262 * @type { TaskBody } 1263 * @syscap SystemCapability.Update.UpdateService 1264 * @systemapi hide for inner use. 1265 * @since 9 1266 */ 1267 taskBody: TaskBody; 1268 } 1269 1270 /** 1271 * Represents task body info. 1272 * 1273 * @typedef TaskBody 1274 * @syscap SystemCapability.Update.UpdateService 1275 * @systemapi hide for inner use. 1276 * @since 9 1277 */ 1278 export interface TaskBody { 1279 /** 1280 * Digest info of new version 1281 * 1282 * @type { VersionDigestInfo } 1283 * @syscap SystemCapability.Update.UpdateService 1284 * @systemapi hide for inner use. 1285 * @since 9 1286 */ 1287 versionDigestInfo: VersionDigestInfo; 1288 1289 /** 1290 * Upgrade status 1291 * 1292 * @type { UpgradeStatus } 1293 * @syscap SystemCapability.Update.UpdateService 1294 * @systemapi hide for inner use. 1295 * @since 9 1296 */ 1297 status: UpgradeStatus; 1298 1299 /** 1300 * Upgrade sub status 1301 * 1302 * @type { number } 1303 * @syscap SystemCapability.Update.UpdateService 1304 * @systemapi hide for inner use. 1305 * @since 9 1306 */ 1307 subStatus: number; 1308 1309 /** 1310 * Upgrade progress 1311 * 1312 * @type { number } 1313 * @syscap SystemCapability.Update.UpdateService 1314 * @systemapi hide for inner use. 1315 * @since 9 1316 */ 1317 progress: number; 1318 1319 /** 1320 * Install mode 1321 * 1322 * @type { number } 1323 * @syscap SystemCapability.Update.UpdateService 1324 * @systemapi hide for inner use. 1325 * @since 9 1326 */ 1327 installMode: number; 1328 1329 /** 1330 * Error messages 1331 * 1332 * @type { Array<ErrorMessage> } 1333 * @syscap SystemCapability.Update.UpdateService 1334 * @systemapi hide for inner use. 1335 * @since 9 1336 */ 1337 errorMessages: Array<ErrorMessage>; 1338 1339 /** 1340 * Version component array 1341 * 1342 * @type { Array<VersionComponent> } 1343 * @syscap SystemCapability.Update.UpdateService 1344 * @systemapi hide for inner use. 1345 * @since 9 1346 */ 1347 versionComponents: Array<VersionComponent>; 1348 } 1349 1350 /** 1351 * Represents error message. 1352 * 1353 * @typedef ErrorMessage 1354 * @syscap SystemCapability.Update.UpdateService 1355 * @systemapi hide for inner use. 1356 * @since 9 1357 */ 1358 export interface ErrorMessage { 1359 /** 1360 * Error code 1361 * 1362 * @type { number } 1363 * @syscap SystemCapability.Update.UpdateService 1364 * @systemapi hide for inner use. 1365 * @since 9 1366 */ 1367 errorCode: number; 1368 1369 /** 1370 * Error message 1371 * 1372 * @type { string } 1373 * @syscap SystemCapability.Update.UpdateService 1374 * @systemapi hide for inner use. 1375 * @since 9 1376 */ 1377 errorMessage: string; 1378 } 1379 1380 /** 1381 * Represents event classify info. 1382 * 1383 * @typedef EventClassifyInfo 1384 * @syscap SystemCapability.Update.UpdateService 1385 * @systemapi hide for inner use. 1386 * @since 9 1387 */ 1388 export interface EventClassifyInfo { 1389 /** 1390 * Event classify 1391 * 1392 * @type { EventClassify } 1393 * @syscap SystemCapability.Update.UpdateService 1394 * @systemapi hide for inner use. 1395 * @since 9 1396 */ 1397 eventClassify: EventClassify; 1398 1399 /** 1400 * Additional information 1401 * 1402 * @type { string } 1403 * @syscap SystemCapability.Update.UpdateService 1404 * @systemapi hide for inner use. 1405 * @since 9 1406 */ 1407 extraInfo: string; 1408 } 1409 1410 /** 1411 * Represents upgrade file info. 1412 * 1413 * @typedef UpgradeFile 1414 * @syscap SystemCapability.Update.UpdateService 1415 * @systemapi hide for inner use. 1416 * @since 9 1417 */ 1418 export interface UpgradeFile { 1419 /** 1420 * Upgrade file type 1421 * 1422 * @type { ComponentType } 1423 * @syscap SystemCapability.Update.UpdateService 1424 * @systemapi hide for inner use. 1425 * @since 9 1426 */ 1427 fileType: ComponentType; 1428 1429 /** 1430 * Upgrade file path 1431 * 1432 * @type { string } 1433 * @syscap SystemCapability.Update.UpdateService 1434 * @systemapi hide for inner use. 1435 * @since 9 1436 */ 1437 filePath: string; 1438 } 1439 1440 /** 1441 * Called when upgrade task info changes. 1442 * You need to implement this method in a child class. 1443 * 1444 * @typedef UpgradeTaskCallback 1445 * @syscap SystemCapability.Update.UpdateService 1446 * @systemapi hide for inner use. 1447 * @since 9 1448 */ 1449 export interface UpgradeTaskCallback { 1450 /** 1451 * Event callback. 1452 * 1453 * @param { EventInfo } eventInfo - Event information. 1454 * @syscap SystemCapability.Update.UpdateService 1455 * @systemapi hide for inner use. 1456 * @since 9 1457 */ 1458 (eventInfo: EventInfo): void; 1459 } 1460 1461 /** 1462 * Enumerates business vendor type. 1463 * 1464 * @enum { string } 1465 * @syscap SystemCapability.Update.UpdateService 1466 * @systemapi hide for inner use. 1467 * @since 9 1468 */ 1469 export enum BusinessVendor { 1470 /** 1471 * Device vendor is open source. 1472 * 1473 * @syscap SystemCapability.Update.UpdateService 1474 * @systemapi hide for inner use. 1475 * @since 9 1476 */ 1477 PUBLIC = 'public' 1478 } 1479 1480 /** 1481 * Enumerates business sub type. 1482 * 1483 * @enum { number } 1484 * @syscap SystemCapability.Update.UpdateService 1485 * @systemapi hide for inner use. 1486 * @since 9 1487 */ 1488 export enum BusinessSubType { 1489 /** 1490 * Business sub type is Firmware. 1491 * 1492 * @syscap SystemCapability.Update.UpdateService 1493 * @systemapi hide for inner use. 1494 * @since 9 1495 */ 1496 FIRMWARE = 1 1497 } 1498 1499 /** 1500 * Enumerates component type. 1501 * 1502 * @enum { number } 1503 * @syscap SystemCapability.Update.UpdateService 1504 * @systemapi hide for inner use. 1505 * @since 9 1506 */ 1507 export enum ComponentType { 1508 /** 1509 * Component type is OTA. 1510 * 1511 * @syscap SystemCapability.Update.UpdateService 1512 * @systemapi hide for inner use. 1513 * @since 9 1514 */ 1515 OTA = 1 1516 } 1517 1518 /** 1519 * Enumerates upgrade action type. 1520 * 1521 * @enum { string } 1522 * @syscap SystemCapability.Update.UpdateService 1523 * @systemapi hide for inner use. 1524 * @since 9 1525 */ 1526 export enum UpgradeAction { 1527 /** 1528 * Differential package. 1529 * 1530 * @syscap SystemCapability.Update.UpdateService 1531 * @systemapi hide for inner use. 1532 * @since 9 1533 */ 1534 UPGRADE = 'upgrade', 1535 1536 /** 1537 * Recovery package. 1538 * 1539 * @syscap SystemCapability.Update.UpdateService 1540 * @systemapi hide for inner use. 1541 * @since 9 1542 */ 1543 RECOVERY = 'recovery' 1544 } 1545 1546 /** 1547 * Enumerates effective mode. 1548 * 1549 * @enum { number } 1550 * @syscap SystemCapability.Update.UpdateService 1551 * @systemapi hide for inner use. 1552 * @since 9 1553 */ 1554 export enum EffectiveMode { 1555 /** 1556 * Cold update. 1557 * 1558 * @syscap SystemCapability.Update.UpdateService 1559 * @systemapi hide for inner use. 1560 * @since 9 1561 */ 1562 COLD = 1, 1563 1564 /** 1565 * Live update. 1566 * 1567 * @syscap SystemCapability.Update.UpdateService 1568 * @systemapi hide for inner use. 1569 * @since 9 1570 */ 1571 LIVE = 2, 1572 1573 /** 1574 * Hybrid live and cold update. 1575 * 1576 * @syscap SystemCapability.Update.UpdateService 1577 * @systemapi hide for inner use. 1578 * @since 9 1579 */ 1580 LIVE_AND_COLD = 3 1581 } 1582 1583 /** 1584 * Enumerates description type. 1585 * 1586 * @enum { number } 1587 * @syscap SystemCapability.Update.UpdateService 1588 * @systemapi hide for inner use. 1589 * @since 9 1590 */ 1591 export enum DescriptionType { 1592 /** 1593 * Description type is content. 1594 * 1595 * @syscap SystemCapability.Update.UpdateService 1596 * @systemapi hide for inner use. 1597 * @since 9 1598 */ 1599 CONTENT = 0, 1600 1601 /** 1602 * Description type is link. 1603 * 1604 * @syscap SystemCapability.Update.UpdateService 1605 * @systemapi hide for inner use. 1606 * @since 9 1607 */ 1608 URI = 1 1609 } 1610 1611 /** 1612 * Enumerates description format. 1613 * 1614 * @enum { number } 1615 * @syscap SystemCapability.Update.UpdateService 1616 * @systemapi hide for inner use. 1617 * @since 9 1618 */ 1619 export enum DescriptionFormat { 1620 /** 1621 * Description format is standard format. 1622 * 1623 * @syscap SystemCapability.Update.UpdateService 1624 * @systemapi hide for inner use. 1625 * @since 9 1626 */ 1627 STANDARD = 0, 1628 1629 /** 1630 * Description format is Simple format. 1631 * 1632 * @syscap SystemCapability.Update.UpdateService 1633 * @systemapi hide for inner use. 1634 * @since 9 1635 */ 1636 SIMPLIFIED = 1 1637 } 1638 1639 /** 1640 * Enumerates network type. 1641 * 1642 * @enum { number } 1643 * @syscap SystemCapability.Update.UpdateService 1644 * @systemapi hide for inner use. 1645 * @since 9 1646 */ 1647 export enum NetType { 1648 /** 1649 * Network type is data network. 1650 * 1651 * @syscap SystemCapability.Update.UpdateService 1652 * @systemapi hide for inner use. 1653 * @since 9 1654 */ 1655 CELLULAR = 1, 1656 1657 /** 1658 * Network type is Wi-Fi hotspot. 1659 * 1660 * @syscap SystemCapability.Update.UpdateService 1661 * @systemapi hide for inner use. 1662 * @since 9 1663 */ 1664 METERED_WIFI = 2, 1665 1666 /** 1667 * Network type is non Wi-Fi hotspot. 1668 * 1669 * @syscap SystemCapability.Update.UpdateService 1670 * @systemapi hide for inner use. 1671 * @since 9 1672 */ 1673 NOT_METERED_WIFI = 4, 1674 1675 /** 1676 * Network type is Wi-Fi. 1677 * 1678 * @syscap SystemCapability.Update.UpdateService 1679 * @systemapi hide for inner use. 1680 * @since 9 1681 */ 1682 WIFI = 6, 1683 1684 /** 1685 * Network type is data network and Wi-Fi. 1686 * 1687 * @syscap SystemCapability.Update.UpdateService 1688 * @systemapi hide for inner use. 1689 * @since 9 1690 */ 1691 CELLULAR_AND_WIFI = 7 1692 } 1693 1694 /** 1695 * Enumerates upgrade order. 1696 * 1697 * @enum { number } 1698 * @syscap SystemCapability.Update.UpdateService 1699 * @systemapi hide for inner use. 1700 * @since 9 1701 */ 1702 export enum Order { 1703 /** 1704 * Upgrade order is download. 1705 * 1706 * @syscap SystemCapability.Update.UpdateService 1707 * @systemapi hide for inner use. 1708 * @since 9 1709 */ 1710 DOWNLOAD = 1, 1711 1712 /** 1713 * Upgrade order is Install. 1714 * 1715 * @syscap SystemCapability.Update.UpdateService 1716 * @systemapi hide for inner use. 1717 * @since 9 1718 */ 1719 INSTALL = 2, 1720 1721 /** 1722 * Upgrade order is download and install. 1723 * 1724 * @syscap SystemCapability.Update.UpdateService 1725 * @systemapi hide for inner use. 1726 * @since 9 1727 */ 1728 DOWNLOAD_AND_INSTALL = 3, 1729 1730 /** 1731 * Upgrade order is apply. 1732 * 1733 * @syscap SystemCapability.Update.UpdateService 1734 * @systemapi hide for inner use. 1735 * @since 9 1736 */ 1737 APPLY = 4, 1738 1739 /** 1740 * Upgrade order is install and apply. 1741 * 1742 * @syscap SystemCapability.Update.UpdateService 1743 * @systemapi hide for inner use. 1744 * @since 9 1745 */ 1746 INSTALL_AND_APPLY = 6 1747 } 1748 1749 /** 1750 * Enumerates upgrade status. 1751 * 1752 * @enum { number } 1753 * @syscap SystemCapability.Update.UpdateService 1754 * @systemapi hide for inner use. 1755 * @since 9 1756 */ 1757 export enum UpgradeStatus { 1758 /** 1759 * Upgrade status is waiting for download. 1760 * 1761 * @syscap SystemCapability.Update.UpdateService 1762 * @systemapi hide for inner use. 1763 * @since 9 1764 */ 1765 WAITING_DOWNLOAD = 20, 1766 1767 /** 1768 * Upgrade status is downloading. 1769 * 1770 * @syscap SystemCapability.Update.UpdateService 1771 * @systemapi hide for inner use. 1772 * @since 9 1773 */ 1774 DOWNLOADING = 21, 1775 1776 /** 1777 * Upgrade status is download paused. 1778 * 1779 * @syscap SystemCapability.Update.UpdateService 1780 * @systemapi hide for inner use. 1781 * @since 9 1782 */ 1783 DOWNLOAD_PAUSED = 22, 1784 1785 /** 1786 * Upgrade status is download failed. 1787 * 1788 * @syscap SystemCapability.Update.UpdateService 1789 * @systemapi hide for inner use. 1790 * @since 9 1791 */ 1792 DOWNLOAD_FAIL = 23, 1793 1794 /** 1795 * Upgrade status is waiting for installation. 1796 * 1797 * @syscap SystemCapability.Update.UpdateService 1798 * @systemapi hide for inner use. 1799 * @since 9 1800 */ 1801 WAITING_INSTALL = 30, 1802 1803 /** 1804 * Upgrade status is upgrading. 1805 * 1806 * @syscap SystemCapability.Update.UpdateService 1807 * @systemapi hide for inner use. 1808 * @since 9 1809 */ 1810 UPDATING = 31, 1811 1812 /** 1813 * Upgrade status is waiting for applying the update. 1814 * 1815 * @syscap SystemCapability.Update.UpdateService 1816 * @systemapi hide for inner use. 1817 * @since 9 1818 */ 1819 WAITING_APPLY = 40, 1820 1821 /** 1822 * Upgrade status is applying the update. 1823 * 1824 * @syscap SystemCapability.Update.UpdateService 1825 * @systemapi hide for inner use. 1826 * @since 9 1827 */ 1828 APPLYING = 41, 1829 1830 /** 1831 * Upgrade status is update succeeded. 1832 * 1833 * @syscap SystemCapability.Update.UpdateService 1834 * @systemapi hide for inner use. 1835 * @since 9 1836 */ 1837 UPGRADE_SUCCESS = 50, 1838 1839 /** 1840 * Upgrade status is update failed. 1841 * 1842 * @syscap SystemCapability.Update.UpdateService 1843 * @systemapi hide for inner use. 1844 * @since 9 1845 */ 1846 UPGRADE_FAIL = 51 1847 } 1848 1849 /** 1850 * Enumerates event classify. 1851 * 1852 * @enum { number } 1853 * @syscap SystemCapability.Update.UpdateService 1854 * @systemapi hide for inner use. 1855 * @since 9 1856 */ 1857 export enum EventClassify { 1858 /** 1859 * Event classify is task event. 1860 * 1861 * @syscap SystemCapability.Update.UpdateService 1862 * @systemapi hide for inner use. 1863 * @since 9 1864 */ 1865 TASK = 0x01000000 1866 } 1867 1868 /** 1869 * Enumerates event id. 1870 * 1871 * @enum { number } 1872 * @syscap SystemCapability.Update.UpdateService 1873 * @systemapi hide for inner use. 1874 * @since 9 1875 */ 1876 export enum EventId { 1877 /** 1878 * Event id is task event. 1879 * 1880 * @syscap SystemCapability.Update.UpdateService 1881 * @systemapi hide for inner use. 1882 * @since 9 1883 */ 1884 EVENT_TASK_BASE = EventClassify.TASK, 1885 1886 /** 1887 * Event id is task received. 1888 * 1889 * @syscap SystemCapability.Update.UpdateService 1890 * @systemapi hide for inner use. 1891 * @since 9 1892 */ 1893 EVENT_TASK_RECEIVE, 1894 1895 /** 1896 * Event id is task cancelled. 1897 * 1898 * @syscap SystemCapability.Update.UpdateService 1899 * @systemapi hide for inner use. 1900 * @since 9 1901 */ 1902 EVENT_TASK_CANCEL, 1903 1904 /** 1905 * Event id is waiting for download. 1906 * 1907 * @syscap SystemCapability.Update.UpdateService 1908 * @systemapi hide for inner use. 1909 * @since 9 1910 */ 1911 EVENT_DOWNLOAD_WAIT, 1912 1913 /** 1914 * Event id is download started. 1915 * 1916 * @syscap SystemCapability.Update.UpdateService 1917 * @systemapi hide for inner use. 1918 * @since 9 1919 */ 1920 EVENT_DOWNLOAD_START, 1921 1922 /** 1923 * Event id is download progress update. 1924 * 1925 * @syscap SystemCapability.Update.UpdateService 1926 * @systemapi hide for inner use. 1927 * @since 9 1928 */ 1929 EVENT_DOWNLOAD_UPDATE, 1930 1931 /** 1932 * Event id is download paused. 1933 * 1934 * @syscap SystemCapability.Update.UpdateService 1935 * @systemapi hide for inner use. 1936 * @since 9 1937 */ 1938 EVENT_DOWNLOAD_PAUSE, 1939 1940 /** 1941 * Event id is download resumed. 1942 * 1943 * @syscap SystemCapability.Update.UpdateService 1944 * @systemapi hide for inner use. 1945 * @since 9 1946 */ 1947 EVENT_DOWNLOAD_RESUME, 1948 1949 /** 1950 * Event id is download succeeded. 1951 * 1952 * @syscap SystemCapability.Update.UpdateService 1953 * @systemapi hide for inner use. 1954 * @since 9 1955 */ 1956 EVENT_DOWNLOAD_SUCCESS, 1957 1958 /** 1959 * Event id is download failed. 1960 * 1961 * @syscap SystemCapability.Update.UpdateService 1962 * @systemapi hide for inner use. 1963 * @since 9 1964 */ 1965 EVENT_DOWNLOAD_FAIL, 1966 1967 /** 1968 * Event id is waiting for update. 1969 * 1970 * @syscap SystemCapability.Update.UpdateService 1971 * @systemapi hide for inner use. 1972 * @since 9 1973 */ 1974 EVENT_UPGRADE_WAIT, 1975 1976 /** 1977 * Event id is update started. 1978 * 1979 * @syscap SystemCapability.Update.UpdateService 1980 * @systemapi hide for inner use. 1981 * @since 9 1982 */ 1983 EVENT_UPGRADE_START, 1984 1985 /** 1986 * Event id is update in progress. 1987 * 1988 * @syscap SystemCapability.Update.UpdateService 1989 * @systemapi hide for inner use. 1990 * @since 9 1991 */ 1992 EVENT_UPGRADE_UPDATE, 1993 1994 /** 1995 * Event id is waiting for applying the update. 1996 * 1997 * @syscap SystemCapability.Update.UpdateService 1998 * @systemapi hide for inner use. 1999 * @since 9 2000 */ 2001 EVENT_APPLY_WAIT, 2002 2003 /** 2004 * Event id is applying the update. 2005 * 2006 * @syscap SystemCapability.Update.UpdateService 2007 * @systemapi hide for inner use. 2008 * @since 9 2009 */ 2010 EVENT_APPLY_START, 2011 2012 /** 2013 * Event id is update succeeded. 2014 * 2015 * @syscap SystemCapability.Update.UpdateService 2016 * @systemapi hide for inner use. 2017 * @since 9 2018 */ 2019 EVENT_UPGRADE_SUCCESS, 2020 2021 /** 2022 * Event id is update failed. 2023 * 2024 * @syscap SystemCapability.Update.UpdateService 2025 * @systemapi hide for inner use. 2026 * @since 9 2027 */ 2028 EVENT_UPGRADE_FAIL 2029 } 2030} 2031 2032export default update;