1/* 2 * Copyright (c) 2023-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 ArkData 19 */ 20 21import { AsyncCallback } from './@ohos.base'; 22import image from "./@ohos.multimedia.image"; 23import Want from "./@ohos.app.ability.Want"; 24 25/** 26 * As a part of the Unified Data Management Framework (UDMF), the unifiedDataChannel module provides unified data 27 * channels and standard data access interfaces for many-to-many data sharing across applications. It also provides 28 * definitions for uniform data types, such as text and image, to streamline data interaction between different 29 * applications and minimize the workload of data type adaptation. Although the UDMF does not parse user data, you are 30 * advised not to transfer sensitive personal data or privacy data due to low-level security of storage path. 31 * 32 * @namespace unifiedDataChannel 33 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 34 * @since 10 35 */ 36/** 37 * As a part of the Unified Data Management Framework (UDMF), the unifiedDataChannel module provides unified data 38 * channels and standard data access interfaces for many-to-many data sharing across applications. It also provides 39 * definitions for uniform data types, such as text and image, to streamline data interaction between different 40 * applications and minimize the workload of data type adaptation. Although the UDMF does not parse user data, you are 41 * advised not to transfer sensitive personal data or privacy data due to low-level security of storage path. 42 * 43 * @namespace unifiedDataChannel 44 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 45 * @atomicservice 46 * @since 11 47 */ 48/** 49 * As a part of the Unified Data Management Framework (UDMF), the unifiedDataChannel module provides unified data 50 * channels and standard data access interfaces for many-to-many data sharing across applications. It also provides 51 * definitions for uniform data types, such as text and image, to streamline data interaction between different 52 * applications and minimize the workload of data type adaptation. Although the UDMF does not parse user data, you are 53 * advised not to transfer sensitive personal data or privacy data due to low-level security of storage path. 54 * 55 * @namespace unifiedDataChannel 56 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 57 * @crossplatform 58 * @atomicservice 59 * @since arkts {'1.1':'14', '1.2':'20'} 60 * @arkts 1.1&1.2 61 */ 62declare namespace unifiedDataChannel { 63 /** 64 * Types of scope that UnifiedData can be used. 65 * @enum { number } 66 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 67 * @atomicservice 68 * @since 12 69 */ 70 enum ShareOptions { 71 /** 72 * IN_APP indicates that only use in the same app is allowed. 73 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 74 * @atomicservice 75 * @since 12 76 */ 77 IN_APP, 78 /** 79 * CROSS_APP indicates that use in any app in this device is allowed. 80 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 81 * @atomicservice 82 * @since 12 83 */ 84 CROSS_APP 85 } 86 87 /** 88 * Indicated delay get UnifiedData 89 * 90 * @typedef {function} GetDelayData 91 * @param { string } type - the type of UnifiedData required. 92 * @returns { UnifiedData } Return the UnifiedData required. 93 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 94 * @atomicservice 95 * @since 12 96 */ 97 type GetDelayData = (type: string) => UnifiedData; 98 99 /** 100 * Indicates type of value. 101 * @typedef {number | string | boolean | image.PixelMap | Want | ArrayBuffer | object | null | undefined} 102 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 103 * @atomicservice 104 * @since 12 105 */ 106 /** 107 * Indicates type of value. 108 * @typedef {number | string | boolean | image.PixelMap | Want | ArrayBuffer | object | null | undefined} 109 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 110 * @crossplatform 111 * @atomicservice 112 * @since arkts {'1.1':'14', '1.2':'20'} 113 * @arkts 1.1&1.2 114 */ 115 type ValueType = number | string | boolean | image.PixelMap | Want | ArrayBuffer | object | null | undefined; 116 117 /** 118 * Describe the unified data properties. 119 * 120 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 121 * @atomicservice 122 * @since 12 123 */ 124 class UnifiedDataProperties { 125 /** 126 * extra property data. key-value pairs. 127 * @type { ?Record<string, object> } 128 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 129 * @atomicservice 130 * @since 12 131 */ 132 extras?: Record<string, object>; 133 134 /** 135 * the user-defined tag of a UnifiedData object. 136 * @type { ?string } 137 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 138 * @atomicservice 139 * @since 12 140 */ 141 tag?: string; 142 /** 143 * a timestamp, which indicates when data is written. 144 * @type { ?Date } 145 * @readonly 146 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 147 * @atomicservice 148 * @since 12 149 */ 150 readonly timestamp?: Date; 151 /** 152 * Indicates the scope of clipboard data which can be used. 153 * If it is not set or is incorrectly set, The default value is CrossDevice. 154 * @type { ?ShareOptions } 155 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 156 * @atomicservice 157 * @since 12 158 */ 159 shareOptions?: ShareOptions; 160 161 /** 162 * Indicated delay get UnifiedData. 163 * @type { ?GetDelayData } 164 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 165 * @atomicservice 166 * @since 12 167 */ 168 getDelayData?: GetDelayData; 169 } 170 171 /** 172 * Describe the unified data. 173 * 174 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 175 * @since 10 176 */ 177 /** 178 * Describe the unified data. 179 * 180 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 181 * @atomicservice 182 * @since 11 183 */ 184 /** 185 * Describe the unified data. 186 * 187 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 188 * @crossplatform 189 * @atomicservice 190 * @since arkts {'1.1':'14', '1.2':'20'} 191 * @arkts 1.1&1.2 192 */ 193 class UnifiedData { 194 /** 195 * Create unified data with a record 196 * 197 * @param { UnifiedRecord } record - Record will add into unified data. 198 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 199 * <br>2.Incorrect parameters types. 200 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 201 * @since 10 202 */ 203 /** 204 * Create unified data with a record 205 * 206 * @param { UnifiedRecord } record - Record will add into unified data. 207 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 208 * <br>2.Incorrect parameters types. 209 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 210 * @atomicservice 211 * @since 11 212 */ 213 /** 214 * Create unified data with a record 215 * 216 * @param { UnifiedRecord } record - Record will add into unified data. 217 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 218 * <br>2.Incorrect parameters types. 219 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 220 * @crossplatform 221 * @atomicservice 222 * @since arkts {'1.1':'14', '1.2':'20'} 223 * @arkts 1.1&1.2 224 */ 225 constructor(record: UnifiedRecord); 226 /** 227 * Create a empty unified data. 228 * 229 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 230 * @atomicservice 231 * @since 12 232 */ 233 /** 234 * Create a empty unified data. 235 * 236 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 237 * @crossplatform 238 * @atomicservice 239 * @since arkts {'1.1':'14', '1.2':'20'} 240 * @arkts 1.1&1.2 241 */ 242 constructor(); 243 /** 244 * Add a record into unified data 245 * 246 * @param { UnifiedRecord } record - Record will add into unified data. 247 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 248 * <br>2.Incorrect parameters types. 249 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 250 * @since 10 251 */ 252 /** 253 * Add a record into unified data 254 * 255 * @param { UnifiedRecord } record - Record will add into unified data. 256 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 257 * <br>2.Incorrect parameters types. 258 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 259 * @atomicservice 260 * @since 11 261 */ 262 /** 263 * Add a record into unified data 264 * 265 * @param { UnifiedRecord } record - Record will add into unified data. 266 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 267 * <br>2.Incorrect parameters types. 268 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 269 * @crossplatform 270 * @atomicservice 271 * @since 14 272 */ 273 addRecord(record: UnifiedRecord): void; 274 /** 275 * Get all records of unified data 276 * 277 * @returns { Array<UnifiedRecord> } Return the records of unified data 278 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 279 * @since 10 280 */ 281 /** 282 * Get all records of unified data 283 * 284 * @returns { Array<UnifiedRecord> } Return the records of unified data 285 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 286 * @atomicservice 287 * @since 11 288 */ 289 /** 290 * Get all records of unified data 291 * 292 * @returns { Array<UnifiedRecord> } Return the records of unified data 293 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 294 * @crossplatform 295 * @atomicservice 296 * @since arkts {'1.1':'14', '1.2':'20'} 297 * @arkts 1.1&1.2 298 */ 299 getRecords(): Array<UnifiedRecord>; 300 301 /** 302 * Checks whether this UnifiedData object contains the specified data type, including the data types added by using 303 * the addEntry function. 304 * For file types, if the type set of UnifiedData contains general.jpeg, true is returned when the hasType API is 305 * called to check whether the general.image type is included, because the general.jpeg type belongs to the 306 * general.image type. 307 * @param { string } type - indicates to query data type. 308 * @returns { boolean } if having mimeType in UnifiedData returns true, else returns false. 309 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 310 * <br>2.Incorrect parameters types. 311 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 312 * @atomicservice 313 * @since 12 314 */ 315 /** 316 * Checks whether this UnifiedData object contains the specified data type, including the data types added by using 317 * the addEntry function. 318 * For file types, if the type set of UnifiedData contains general.jpeg, true is returned when the hasType API is 319 * called to check whether the general.image type is included, because the general.jpeg type belongs to the 320 * general.image type. 321 * @param { string } type - indicates to query data type. 322 * @returns { boolean } if having mimeType in UnifiedData returns true, else returns false. 323 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 324 * <br>2.Incorrect parameters types. 325 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 326 * @crossplatform 327 * @atomicservice 328 * @since 14 329 */ 330 hasType(type: string): boolean; 331 332 /** 333 * UTD types of all content in the UnifiedData. 334 * @returns { Array<string> } type of array 335 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 336 * @atomicservice 337 * @since 12 338 */ 339 /** 340 * UTD types of all content in the UnifiedData. 341 * @returns { Array<string> } type of array 342 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 343 * @crossplatform 344 * @atomicservice 345 * @since 14 346 */ 347 getTypes(): Array<string>; 348 349 /** 350 * UnifiedData properties. 351 * @type { UnifiedDataProperties } 352 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 353 * @atomicservice 354 * @since 12 355 */ 356 properties: UnifiedDataProperties; 357 } 358 359 /** 360 * Summarizes the data information of the unifiedData object, including the data type and size. 361 * 362 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 363 * @since 10 364 */ 365 /** 366 * Summarizes the data information of the unifiedData object, including the data type and size. 367 * 368 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 369 * @atomicservice 370 * @since arkts {'1.1':'11', '1.2':'20'} 371 * @arkts 1.1&1.2 372 */ 373 class Summary { 374 /** 375 * A map for each type and data size, key is data type, value is the corresponding data size 376 * 377 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 378 * @since 10 379 */ 380 /** 381 * A map for each type and data size, key is data type, value is the corresponding data size 382 * 383 * @type { Record<string, number> } 384 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 385 * @atomicservice 386 * @since 11 387 */ 388 summary: Record<string, number>; 389 /** 390 * Total data size of data in Bytes 391 * 392 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 393 * @since 10 394 */ 395 /** 396 * Total data size of data in Bytes 397 * 398 * @type { number } 399 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 400 * @atomicservice 401 * @since 11 402 */ 403 totalSize: number; 404 } 405 406 /** 407 * Describe the unified record 408 * 409 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 410 * @since 10 411 */ 412 /** 413 * Describe the unified record 414 * 415 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 416 * @atomicservice 417 * @since 11 418 */ 419 /** 420 * An abstract definition of the data content supported by the UDMF. A UnifiedRecord object contains one or more data 421 * records, for example, a text record, an image record, or an HTML record. Since API version 15, different styles of 422 * the same content can be added to a UnifiedRecord object. Data users can obtain the corresponding styles as 423 * required. 424 * 425 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 426 * @crossplatform 427 * @atomicservice 428 * @since arkts {'1.1':'14', '1.2':'20'} 429 * @arkts 1.1&1.2 430 */ 431 class UnifiedRecord { 432 /** 433 * Get type of unified record 434 * 435 * @returns { string } Return the type of unified data 436 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 437 * @since 10 438 */ 439 /** 440 * Get type of unified record 441 * 442 * @returns { string } Return the type of unified data 443 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 444 * @atomicservice 445 * @since 11 446 */ 447 /** 448 * Get type of unified record 449 * 450 * @returns { string } Return the type of unified data 451 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 452 * @crossplatform 453 * @atomicservice 454 * @since 14 455 */ 456 getType(): string; 457 458 /** 459 * Create unified record. 460 * 461 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 462 * @atomicservice 463 * @since 12 464 */ 465 /** 466 * Create unified record. 467 * 468 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 469 * @crossplatform 470 * @atomicservice 471 * @since arkts {'1.1':'14', '1.2':'20'} 472 * @arkts 1.1&1.2 473 */ 474 constructor(); 475 476 /** 477 * Create unified record by type and value. 478 * 479 * @param { string } type - indicates to data type of unified record. It can not be empty. When type of value is 480 * object, parameter type must be pixel-map or want UTD type. 481 * @param { ValueType } value - indicates to value of unified record. 482 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 483 * <br>2.Incorrect parameters types; 484 * <br>3.Parameter verification failed. 485 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 486 * @atomicservice 487 * @since 12 488 */ 489 /** 490 * Create unified record by type and value. 491 * 492 * @param { string } type - indicates to data type of unified record. It can not be empty. When type of value is 493 * object, parameter type must be pixel-map or want UTD type. 494 * @param { ValueType } value - indicates to value of unified record. 495 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 496 * <br>2.Incorrect parameters types; 497 * <br>3.Parameter verification failed. 498 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 499 * @crossplatform 500 * @atomicservice 501 * @since arkts {'1.1':'14', '1.2':'20'} 502 * @arkts 1.1&1.2 503 */ 504 constructor(type: string, value: ValueType); 505 506 /** 507 * Get the value of unified record. 508 * 509 * @returns { ValueType } Return the value of unified record. 510 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 511 * @atomicservice 512 * @since 12 513 */ 514 /** 515 * Get the value of unified record. 516 * 517 * @returns { ValueType } Return the value of unified record. 518 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 519 * @crossplatform 520 * @atomicservice 521 * @since 14 522 */ 523 getValue(): ValueType; 524 525 /** 526 * Obtains all the data types in the data record. This API can be called using the UnifiedRecord object to query all 527 * data types in the record, including the data types added using the addEntry function. 528 * 529 * @returns { Array<string> } Return the types of unified record. 530 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 531 * @atomicservice 532 * @since 15 533 */ 534 getTypes(): Array<string>; 535 536 /** 537 * Adds data of a specified data type and content to the current data record. You can use this API to add different 538 * data types and contents to the same data. 539 * 540 * @param { string } type - type of entry. 541 * @param { ValueType } value - value of entry. 542 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 543 * <br>2.Incorrect parameters types. 544 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 545 * @atomicservice 546 * @since 15 547 */ 548 addEntry(type: string, value: ValueType): void; 549 550 /** 551 * Get an entry from unified record 552 * 553 * @param { string } type - type of entry want to get. 554 * @returns { ValueType } Return the value corresponding to the type. 555 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 556 * <br>2.Incorrect parameters types. 557 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 558 * @atomicservice 559 * @since 15 560 */ 561 getEntry(type: string): ValueType; 562 563 /** 564 * Get entries from unified record 565 * 566 * @returns { Record<string, ValueType> } Return all entries in the record. 567 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 568 * @atomicservice 569 * @since 15 570 */ 571 getEntries(): Record<string, ValueType>; 572 } 573 574 /** 575 * Describe the unified text data 576 * 577 * @extends UnifiedRecord 578 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 579 * @since 10 580 */ 581 /** 582 * Describe the unified text data 583 * 584 * @extends UnifiedRecord 585 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 586 * @atomicservice 587 * @since 11 588 */ 589 /** 590 * Describe the unified text data 591 * 592 * @extends UnifiedRecord 593 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 594 * @crossplatform 595 * @atomicservice 596 * @since 14 597 */ 598 class Text extends UnifiedRecord { 599 /** 600 * Indicates the details of unified text 601 * 602 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 603 * @since 10 604 */ 605 /** 606 * Indicates the details of unified text 607 * 608 * @type { ?Record<string, string> } 609 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 610 * @atomicservice 611 * @since 11 612 */ 613 /** 614 * Indicates the details of unified text 615 * 616 * @type { ?Record<string, string> } 617 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 618 * @crossplatform 619 * @atomicservice 620 * @since 14 621 */ 622 details?: Record<string, string>; 623 } 624 625 /** 626 * Describe the unified plain text data 627 * 628 * @extends Text 629 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 630 * @since 10 631 */ 632 /** 633 * Describe the unified plain text data 634 * 635 * @extends Text 636 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 637 * @atomicservice 638 * @since 11 639 */ 640 /** 641 * Describe the unified plain text data 642 * 643 * @extends Text 644 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 645 * @crossplatform 646 * @atomicservice 647 * @since 14 648 */ 649 class PlainText extends Text { 650 /** 651 * Indicates the content of text 652 * 653 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 654 * @since 10 655 */ 656 /** 657 * Indicates the content of text 658 * 659 * @type { string } 660 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 661 * @atomicservice 662 * @since 11 663 */ 664 /** 665 * Indicates the content of text 666 * 667 * @type { string } 668 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 669 * @crossplatform 670 * @atomicservice 671 * @since 14 672 */ 673 textContent: string; 674 /** 675 * Indicates the abstract of text 676 * 677 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 678 * @since 10 679 */ 680 /** 681 * Indicates the abstract of text 682 * 683 * @type { ?string } 684 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 685 * @atomicservice 686 * @since 11 687 */ 688 /** 689 * Indicates the abstract of text 690 * 691 * @type { ?string } 692 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 693 * @crossplatform 694 * @atomicservice 695 * @since 14 696 */ 697 abstract?: string; 698 } 699 700 /** 701 * Describe the unified link data 702 * 703 * @extends Text 704 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 705 * @since 10 706 */ 707 /** 708 * Describe the unified link data 709 * 710 * @extends Text 711 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 712 * @atomicservice 713 * @since 11 714 */ 715 /** 716 * Describe the unified link data 717 * 718 * @extends Text 719 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 720 * @crossplatform 721 * @atomicservice 722 * @since 14 723 */ 724 class Hyperlink extends Text { 725 /** 726 * Indicates the url of a link 727 * 728 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 729 * @since 10 730 */ 731 /** 732 * Indicates the url of a link 733 * 734 * @type { string } 735 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 736 * @atomicservice 737 * @since 11 738 */ 739 /** 740 * Indicates the url of a link 741 * 742 * @type { string } 743 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 744 * @crossplatform 745 * @atomicservice 746 * @since 14 747 */ 748 url: string; 749 /** 750 * Indicates the description of a link 751 * 752 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 753 * @since 10 754 */ 755 /** 756 * Indicates the description of a link 757 * 758 * @type { ?string } 759 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 760 * @atomicservice 761 * @since 11 762 */ 763 /** 764 * Indicates the description of a link 765 * 766 * @type { ?string } 767 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 768 * @crossplatform 769 * @atomicservice 770 * @since 14 771 */ 772 description?: string; 773 } 774 775 /** 776 * Describe the unified html data 777 * 778 * @extends Text 779 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 780 * @since 10 781 */ 782 /** 783 * Describe the unified html data 784 * 785 * @extends Text 786 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 787 * @atomicservice 788 * @since 11 789 */ 790 /** 791 * Describe the unified html data 792 * 793 * @extends Text 794 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 795 * @crossplatform 796 * @atomicservice 797 * @since 14 798 */ 799 class HTML extends Text { 800 /** 801 * Indicates the content of html, with html tags 802 * 803 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 804 * @since 10 805 */ 806 /** 807 * Indicates the content of html, with html tags 808 * 809 * @type { string } 810 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 811 * @atomicservice 812 * @since 11 813 */ 814 /** 815 * Indicates the content of html, with html tags 816 * 817 * @type { string } 818 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 819 * @crossplatform 820 * @atomicservice 821 * @since 14 822 */ 823 htmlContent: string; 824 /** 825 * Indicates the plain content of html 826 * 827 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 828 * @since 10 829 */ 830 /** 831 * Indicates the plain content of html 832 * 833 * @type { ?string } 834 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 835 * @atomicservice 836 * @since 11 837 */ 838 /** 839 * Indicates the plain content of html 840 * 841 * @type { ?string } 842 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 843 * @crossplatform 844 * @atomicservice 845 * @since 14 846 */ 847 plainContent?: string; 848 } 849 850 /** 851 * Describe the unified file data 852 * 853 * @extends UnifiedRecord 854 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 855 * @since 10 856 */ 857 /** 858 * Describe the unified file data 859 * 860 * @extends UnifiedRecord 861 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 862 * @atomicservice 863 * @since 11 864 */ 865 /** 866 * Describe the unified file data 867 * 868 * @extends UnifiedRecord 869 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 870 * @crossplatform 871 * @atomicservice 872 * @since 14 873 */ 874 class File extends UnifiedRecord { 875 /** 876 * Indicates the details of unified File 877 * 878 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 879 * @since 10 880 */ 881 /** 882 * Indicates the details of unified File 883 * 884 * @type { ?Record<string, string> } 885 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 886 * @atomicservice 887 * @since 11 888 */ 889 /** 890 * Indicates the details of unified File 891 * 892 * @type { ?Record<string, string> } 893 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 894 * @crossplatform 895 * @atomicservice 896 * @since 14 897 */ 898 details?: Record<string, string>; 899 /** 900 * URI of the local file or online file. The local file URI can be obtained using the getUriFromPath function. 901 * 902 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 903 * @since 10 904 */ 905 /** 906 * URI of the local file or online file. The local file URI can be obtained using the getUriFromPath function. 907 * 908 * @type { string } 909 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 910 * @atomicservice 911 * @since 11 912 */ 913 /** 914 * URI of the local file or online file. The local file URI can be obtained using the getUriFromPath function. 915 * 916 * @type { string } 917 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 918 * @crossplatform 919 * @atomicservice 920 * @since 14 921 */ 922 uri: string; 923 } 924 925 /** 926 * Describe the unified image data 927 * 928 * @extends File 929 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 930 * @since 10 931 */ 932 /** 933 * Describe the unified image data 934 * 935 * @extends File 936 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 937 * @atomicservice 938 * @since 11 939 */ 940 /** 941 * Describe the unified image data 942 * 943 * @extends File 944 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 945 * @crossplatform 946 * @atomicservice 947 * @since 14 948 */ 949 class Image extends File { 950 /** 951 * URI of the local image or online image. The local image URI can be obtained using the getUriFromPath function. 952 * 953 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 954 * @since 10 955 */ 956 /** 957 * URI of the local image or online image. The local image URI can be obtained using the getUriFromPath function. 958 * 959 * @type { string } 960 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 961 * @atomicservice 962 * @since 11 963 */ 964 /** 965 * URI of the local image or online image. The local image URI can be obtained using the getUriFromPath function. 966 * 967 * @type { string } 968 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 969 * @crossplatform 970 * @atomicservice 971 * @since 14 972 */ 973 imageUri: string; 974 } 975 976 /** 977 * Describe the unified video data 978 * 979 * @extends File 980 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 981 * @since 10 982 */ 983 /** 984 * Describe the unified video data 985 * 986 * @extends File 987 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 988 * @atomicservice 989 * @since 11 990 */ 991 /** 992 * Describe the unified video data 993 * 994 * @extends File 995 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 996 * @crossplatform 997 * @atomicservice 998 * @since 14 999 */ 1000 class Video extends File { 1001 /** 1002 * URI of the local video or online video. The local video URI can be obtained using the getUriFromPath function. 1003 * 1004 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1005 * @since 10 1006 */ 1007 /** 1008 * URI of the local video or online video. The local video URI can be obtained using the getUriFromPath function. 1009 * 1010 * @type { string } 1011 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1012 * @atomicservice 1013 * @since 11 1014 */ 1015 /** 1016 * URI of the local video or online video. The local video URI can be obtained using the getUriFromPath function. 1017 * 1018 * @type { string } 1019 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1020 * @crossplatform 1021 * @atomicservice 1022 * @since 14 1023 */ 1024 videoUri: string; 1025 } 1026 1027 /** 1028 * Describe the unified audio data 1029 * 1030 * @extends File 1031 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1032 * @since 10 1033 */ 1034 /** 1035 * Describe the unified audio data 1036 * 1037 * @extends File 1038 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1039 * @atomicservice 1040 * @since 11 1041 */ 1042 /** 1043 * Describe the unified audio data 1044 * 1045 * @extends File 1046 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1047 * @crossplatform 1048 * @atomicservice 1049 * @since 14 1050 */ 1051 class Audio extends File { 1052 /** 1053 * URI of the local audio or online audio. The local audio URI can be obtained using the getUriFromPath function. 1054 * 1055 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1056 * @since 10 1057 */ 1058 /** 1059 * URI of the local audio or online audio. The local audio URI can be obtained using the getUriFromPath function. 1060 * 1061 * @type { string } 1062 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1063 * @atomicservice 1064 * @since 11 1065 */ 1066 /** 1067 * URI of the local audio or online audio. The local audio URI can be obtained using the getUriFromPath function. 1068 * 1069 * @type { string } 1070 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1071 * @crossplatform 1072 * @atomicservice 1073 * @since 14 1074 */ 1075 audioUri: string; 1076 } 1077 1078 /** 1079 * Describe the unified folder data 1080 * 1081 * @extends File 1082 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1083 * @since 10 1084 */ 1085 /** 1086 * Describe the unified folder data 1087 * 1088 * @extends File 1089 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1090 * @atomicservice 1091 * @since 11 1092 */ 1093 /** 1094 * Describe the unified folder data 1095 * 1096 * @extends File 1097 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1098 * @crossplatform 1099 * @atomicservice 1100 * @since 14 1101 */ 1102 class Folder extends File { 1103 /** 1104 * URI of the local folder or online folder. The local folder URI can be obtained using the getUriFromPath function. 1105 * 1106 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1107 * @since 10 1108 */ 1109 /** 1110 * URI of the local folder or online folder. The local folder URI can be obtained using the getUriFromPath function. 1111 * 1112 * @type { string } 1113 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1114 * @atomicservice 1115 * @since 11 1116 */ 1117 /** 1118 * URI of the local folder or online folder. The local folder URI can be obtained using the getUriFromPath function. 1119 * 1120 * @type { string } 1121 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1122 * @crossplatform 1123 * @atomicservice 1124 * @since 14 1125 */ 1126 folderUri: string; 1127 } 1128 1129 /** 1130 * Describe system defined type data(this kind of data is provided and bound to OpenHarmony, 1131 * also can be parsed by system provided API) 1132 * 1133 * @extends UnifiedRecord 1134 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1135 * @since 10 1136 */ 1137 /** 1138 * Describe system defined type data(this kind of data is provided and bound to OpenHarmony, 1139 * also can be parsed by system provided API) 1140 * 1141 * @extends UnifiedRecord 1142 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1143 * @atomicservice 1144 * @since 11 1145 */ 1146 class SystemDefinedRecord extends UnifiedRecord { 1147 /** 1148 * Indicates the details of system defined data 1149 * 1150 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1151 * @since 10 1152 */ 1153 /** 1154 * Indicates the details of system defined data 1155 * 1156 * @type { ?Record<string, number | string | Uint8Array> } 1157 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1158 * @atomicservice 1159 * @since 11 1160 */ 1161 details?: Record<string, number | string | Uint8Array>; 1162 } 1163 1164 /** 1165 * Describe system defined form data(this kind of data is provided and bound to OpenHarmony, 1166 * also can be parsed by system provided API) 1167 * 1168 * @extends SystemDefinedRecord 1169 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1170 * @since 10 1171 */ 1172 /** 1173 * Describe system defined form data(this kind of data is provided and bound to OpenHarmony, 1174 * also can be parsed by system provided API) 1175 * 1176 * @extends SystemDefinedRecord 1177 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1178 * @atomicservice 1179 * @since 11 1180 */ 1181 class SystemDefinedForm extends SystemDefinedRecord { 1182 /** 1183 * Indicates the id of form 1184 * 1185 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1186 * @since 10 1187 */ 1188 /** 1189 * Indicates the id of form 1190 * 1191 * @type { number } 1192 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1193 * @atomicservice 1194 * @since 11 1195 */ 1196 formId: number; 1197 /** 1198 * Indicates the name of form 1199 * 1200 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1201 * @since 10 1202 */ 1203 /** 1204 * Indicates the name of form 1205 * 1206 * @type { string } 1207 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1208 * @atomicservice 1209 * @since 11 1210 */ 1211 formName: string; 1212 /** 1213 * Indicates the bundle name of form 1214 * 1215 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1216 * @since 10 1217 */ 1218 /** 1219 * Indicates the bundle name of form 1220 * 1221 * @type { string } 1222 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1223 * @atomicservice 1224 * @since 11 1225 */ 1226 bundleName: string; 1227 /** 1228 * Indicates the ability name of form 1229 * 1230 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1231 * @since 10 1232 */ 1233 /** 1234 * Indicates the ability name of form 1235 * 1236 * @type { string } 1237 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1238 * @atomicservice 1239 * @since 11 1240 */ 1241 abilityName: string; 1242 /** 1243 * Indicates the module of form 1244 * 1245 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1246 * @since 10 1247 */ 1248 /** 1249 * Indicates the module of form 1250 * 1251 * @type { string } 1252 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1253 * @atomicservice 1254 * @since 11 1255 */ 1256 module: string; 1257 } 1258 1259 /** 1260 * Describe system defined app item data(this kind of data is provided and bound to OpenHarmony, 1261 * also can be parsed by system provided API) 1262 * 1263 * @extends SystemDefinedRecord 1264 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1265 * @since 10 1266 */ 1267 /** 1268 * Describe system defined app item data(this kind of data is provided and bound to OpenHarmony, 1269 * also can be parsed by system provided API) 1270 * 1271 * @extends SystemDefinedRecord 1272 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1273 * @atomicservice 1274 * @since 11 1275 */ 1276 class SystemDefinedAppItem extends SystemDefinedRecord { 1277 /** 1278 * Indicates the app id 1279 * 1280 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1281 * @since 10 1282 */ 1283 /** 1284 * Indicates the app id 1285 * 1286 * @type { string } 1287 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1288 * @atomicservice 1289 * @since 11 1290 */ 1291 appId: string; 1292 /** 1293 * Indicates the app name 1294 * 1295 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1296 * @since 10 1297 */ 1298 /** 1299 * Indicates the app name 1300 * 1301 * @type { string } 1302 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1303 * @atomicservice 1304 * @since 11 1305 */ 1306 appName: string; 1307 /** 1308 * Indicates the id of app icon 1309 * 1310 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1311 * @since 10 1312 */ 1313 /** 1314 * Indicates the id of app icon 1315 * 1316 * @type { string } 1317 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1318 * @atomicservice 1319 * @since 11 1320 */ 1321 appIconId: string; 1322 /** 1323 * Indicates the id of app label 1324 * 1325 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1326 * @since 10 1327 */ 1328 /** 1329 * Indicates the id of app label 1330 * 1331 * @type { string } 1332 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1333 * @atomicservice 1334 * @since 11 1335 */ 1336 appLabelId: string; 1337 /** 1338 * Indicates the bundle name of app 1339 * 1340 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1341 * @since 10 1342 */ 1343 /** 1344 * Indicates the bundle name of app 1345 * 1346 * @type { string } 1347 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1348 * @atomicservice 1349 * @since 11 1350 */ 1351 bundleName: string; 1352 /** 1353 * Indicates the ability name of app 1354 * 1355 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1356 * @since 10 1357 */ 1358 /** 1359 * Indicates the ability name of app 1360 * 1361 * @type { string } 1362 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1363 * @atomicservice 1364 * @since 11 1365 */ 1366 abilityName: string; 1367 } 1368 1369 /** 1370 * Describe system defined pixel map data(this kind of data is provided and bound to OpenHarmony, 1371 * also can be parsed by system provided API) 1372 * 1373 * @extends SystemDefinedRecord 1374 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1375 * @since 10 1376 */ 1377 /** 1378 * Describe system defined pixel map data(this kind of data is provided and bound to OpenHarmony, 1379 * also can be parsed by system provided API) 1380 * 1381 * @extends SystemDefinedRecord 1382 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1383 * @atomicservice 1384 * @since 11 1385 */ 1386 class SystemDefinedPixelMap extends SystemDefinedRecord { 1387 /** 1388 * Indicates the raw data of pixel map 1389 * 1390 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1391 * @since 10 1392 */ 1393 /** 1394 * Indicates the raw data of pixel map 1395 * 1396 * @type { Uint8Array } 1397 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1398 * @atomicservice 1399 * @since 11 1400 */ 1401 rawData: Uint8Array; 1402 } 1403 1404 /** 1405 * Describe application defined data(this kind of data is provided and bound to OpenHarmony, 1406 * also can be parsed by system provided API) 1407 * 1408 * @extends UnifiedRecord 1409 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1410 * @since 10 1411 */ 1412 /** 1413 * Describe application defined data(this kind of data is provided and bound to OpenHarmony, 1414 * also can be parsed by system provided API) 1415 * 1416 * @extends UnifiedRecord 1417 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1418 * @atomicservice 1419 * @since 11 1420 */ 1421 class ApplicationDefinedRecord extends UnifiedRecord { 1422 /** 1423 * Indicates the type of data, should always be started with 'ApplicationDefined.', will 1424 * return error otherwise 1425 * 1426 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1427 * @since 10 1428 */ 1429 /** 1430 * Indicates the type of data, should always be started with 'ApplicationDefined.', will 1431 * return error otherwise 1432 * 1433 * @type { string } 1434 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1435 * @atomicservice 1436 * @since 11 1437 */ 1438 applicationDefinedType: string; 1439 /** 1440 * Indicates the raw data of application defined data 1441 * 1442 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1443 * @since 10 1444 */ 1445 /** 1446 * Indicates the raw data of application defined data 1447 * 1448 * @type { Uint8Array } 1449 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1450 * @atomicservice 1451 * @since 11 1452 */ 1453 rawData: Uint8Array; 1454 } 1455 1456 /** 1457 * Describe the sharing channel that UDMF support 1458 * 1459 * @enum { string } 1460 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1461 * @since 10 1462 */ 1463 /** 1464 * Describe the sharing channel that UDMF support 1465 * 1466 * @enum { string } 1467 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1468 * @atomicservice 1469 * @since 11 1470 */ 1471 enum Intention { 1472 /** 1473 * Indicates the intention of data hub 1474 * 1475 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1476 * @since 10 1477 */ 1478 /** 1479 * Indicates the intention of data hub 1480 * 1481 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1482 * @atomicservice 1483 * @since 11 1484 */ 1485 DATA_HUB = 'DataHub', 1486 1487 /** 1488 * Indicates the intention of drag 1489 * 1490 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1491 * @systemapi 1492 * @StageModelOnly 1493 * @since 12 1494 */ 1495 /** 1496 * Indicates the intention of drag 1497 * 1498 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1499 * @stagemodelonly 1500 * @since 14 1501 */ 1502 DRAG = 'Drag', 1503 1504 /** 1505 * Indicates a system sharing channel. 1506 * 1507 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1508 * @stagemodelonly 1509 * @since 20 1510 */ 1511 SYSTEM_SHARE = 'SystemShare', 1512 1513 /** 1514 * Indicates a Picker channel. 1515 * 1516 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1517 * @stagemodelonly 1518 * @since 20 1519 */ 1520 PICKER = 'Picker', 1521 1522 /** 1523 * Indicates a menu channel. 1524 * 1525 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1526 * @stagemodelonly 1527 * @since 20 1528 */ 1529 MENU = 'Menu' 1530 } 1531 1532 /** 1533 * Describe the visibility range of data 1534 * 1535 * @enum { number } 1536 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1537 * @atomicservice 1538 * @since 20 1539 */ 1540 enum Visibility { 1541 /** 1542 * The visibility level that specifies that any hap or native can be obtained. 1543 * 1544 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1545 * @stagemodelonly 1546 * @since 20 1547 */ 1548 ALL, 1549 1550 /** 1551 * The visibility level that specifies that only data providers can be obtained. 1552 * 1553 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1554 * @stagemodelonly 1555 * @since 20 1556 */ 1557 OWN_PROCESS 1558 } 1559 1560 /** 1561 * Describe the optional arguments of data operation 1562 * 1563 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1564 * @since 10 1565 */ 1566 /** 1567 * Describe the optional arguments of data operation 1568 * 1569 * @typedef { object } 1570 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1571 * @atomicservice 1572 * @since 11 1573 */ 1574 /** 1575 * Describe the optional arguments of data operation 1576 * 1577 * @interface { Options } 1578 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1579 * @atomicservice 1580 * @since 20 1581 */ 1582 interface Options { 1583 /** 1584 * Indicates the target Intention 1585 * 1586 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1587 * @since 10 1588 */ 1589 /** 1590 * Indicates the target Intention 1591 * 1592 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1593 * @atomicservice 1594 * @since 11 1595 */ 1596 /** 1597 * Indicates the target Intention 1598 * 1599 * @type { ?Intention } 1600 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1601 * @atomicservice 1602 * @since 20 1603 */ 1604 intention?: Intention; 1605 1606 /** 1607 * Indicates the unique identifier of target UnifiedData 1608 * 1609 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1610 * @since 10 1611 */ 1612 /** 1613 * Indicates the unique identifier of target UnifiedData 1614 * 1615 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1616 * @atomicservice 1617 * @since 11 1618 */ 1619 /** 1620 * Indicates the unique identifier of target UnifiedData 1621 * 1622 * @type { ?string } 1623 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1624 * @atomicservice 1625 * @since 20 1626 */ 1627 key?: string; 1628 1629 /** 1630 * Represents the visibility range of data. 1631 * This parameter is used only when data is inserted. 1632 * 1633 * @type { ?Visibility } 1634 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1635 * @atomicservice 1636 * @since 20 1637 */ 1638 visibility?: Visibility; 1639 } 1640 1641 /** 1642 * Defines the types of file conflict options when getting data from the UDMF. 1643 * 1644 * @enum { number } 1645 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1646 * @atomicservice 1647 * @since 15 1648 */ 1649 enum FileConflictOptions { 1650 /** 1651 * Overwrite when destUri has file with same name. 1652 * 1653 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1654 * @atomicservice 1655 * @since 15 1656 */ 1657 OVERWRITE, 1658 1659 /** 1660 * Skip when destUri has file with same name. 1661 * 1662 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1663 * @atomicservice 1664 * @since 15 1665 */ 1666 SKIP 1667 } 1668 1669 /** 1670 * Defines the types of progress indicator when getting data from the UDMF. 1671 * 1672 * @enum { number } 1673 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1674 * @atomicservice 1675 * @since 15 1676 */ 1677 enum ProgressIndicator { 1678 /** 1679 * Getting data without system default progress indicator. 1680 * 1681 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1682 * @atomicservice 1683 * @since 15 1684 */ 1685 NONE, 1686 1687 /** 1688 * Getting data with system default progress indicator. 1689 * 1690 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1691 * @atomicservice 1692 * @since 15 1693 */ 1694 DEFAULT 1695 } 1696 1697 /** 1698 * Defines the listener status of obtaining progress and data. 1699 * 1700 * @enum { number } 1701 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1702 * @atomicservice 1703 * @since 15 1704 */ 1705 enum ListenerStatus { 1706 /** 1707 * Indicates the finished status. 1708 * 1709 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1710 * @atomicservice 1711 * @since 15 1712 */ 1713 FINISHED = 0, 1714 1715 /** 1716 * Indicates that processing is still in progress. 1717 * 1718 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1719 * @atomicservice 1720 * @since 15 1721 */ 1722 PROCESSING, 1723 1724 /** 1725 * Indicates that the process has been canceled. 1726 * 1727 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1728 * @atomicservice 1729 * @since 15 1730 */ 1731 CANCELED, 1732 1733 /** 1734 * Indicates that an internal error has occurred. 1735 * 1736 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1737 * @atomicservice 1738 * @since 15 1739 */ 1740 INNER_ERROR = 200, 1741 1742 /** 1743 * Indicates that the GetDataParams contains invalid parameters. 1744 * 1745 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1746 * @atomicservice 1747 * @since 15 1748 */ 1749 INVALID_PARAMETERS, 1750 1751 /** 1752 * Indicates that no data is obtained. 1753 * 1754 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1755 * @atomicservice 1756 * @since 15 1757 */ 1758 DATA_NOT_FOUND, 1759 1760 /** 1761 * Indicates that an error occurred in the synchronization process. 1762 * 1763 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1764 * @atomicservice 1765 * @since 15 1766 */ 1767 SYNC_FAILED, 1768 1769 /** 1770 * Indicates that an error occurred during file copying. 1771 * 1772 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1773 * @atomicservice 1774 * @since 15 1775 */ 1776 COPY_FILE_FAILED, 1777 } 1778 1779 /** 1780 * Indicates the progress information. 1781 * 1782 * @interface ProgressInfo 1783 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1784 * @atomicservice 1785 * @since 15 1786 */ 1787 interface ProgressInfo { 1788 /** 1789 * Indicates the UDMF processing progress. 1790 * 1791 * @type { number } 1792 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1793 * @atomicservice 1794 * @since 15 1795 */ 1796 progress: number; 1797 1798 /** 1799 * Indicates the status of obtaining progress and data. 1800 * 1801 * @type { ListenerStatus } 1802 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1803 * @atomicservice 1804 * @since 15 1805 */ 1806 status: ListenerStatus; 1807 } 1808 1809 /** 1810 * A listener callback function that fetches progress info and data. 1811 * 1812 * @typedef { function } DataProgressListener 1813 * @param { ProgressInfo } progressInfo - the progress information. 1814 * @param { UnifiedData | null } data - Data obtained when the progress reaches 100%. 1815 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1816 * @atomicservice 1817 * @since 15 1818 */ 1819 type DataProgressListener = (progressInfo: ProgressInfo, data: UnifiedData | null) => void; 1820 1821 /** 1822 * Represents the get data parameters when getting data from udmf. 1823 * 1824 * @interface GetDataParams 1825 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1826 * @atomicservice 1827 * @since 15 1828 */ 1829 interface GetDataParams { 1830 /** 1831 * Indicates whether to use default system progress indicator. 1832 * 1833 * @type { ProgressIndicator } 1834 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1835 * @atomicservice 1836 * @since 15 1837 */ 1838 progressIndicator: ProgressIndicator; 1839 1840 /** 1841 * Indicates progress and data listener when getting unified data. 1842 * 1843 * @type { DataProgressListener } 1844 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1845 * @atomicservice 1846 * @since 15 1847 */ 1848 dataProgressListener: DataProgressListener; 1849 1850 /** 1851 * Indicates the dest path uri where copy file will be copied to sandbox of application. 1852 * 1853 * @type { string } 1854 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1855 * @atomicservice 1856 * @since 15 1857 */ 1858 destUri?: string; 1859 1860 /** 1861 * Indicates file conflict options when dest path has file with same name. 1862 * 1863 * @type { FileConflictOptions } 1864 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1865 * @atomicservice 1866 * @since 15 1867 */ 1868 fileConflictOptions?: FileConflictOptions; 1869 1870 /** 1871 * Indicates the supported data information. 1872 * 1873 * @type { ?DataLoadInfo } 1874 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1875 * @atomicservice 1876 * @since 20 1877 */ 1878 acceptableInfo?: DataLoadInfo; 1879 } 1880 1881 /** 1882 * Indicates data loading information. 1883 * 1884 * @interface DataLoadInfo 1885 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1886 * @atomicservice 1887 * @since 20 1888 */ 1889 interface DataLoadInfo { 1890 /** 1891 * Represents the data type or supported types to load. 1892 * <br>This parameter is mandatory when used by the data provider. 1893 * 1894 * @type { ?Set<string> } 1895 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1896 * @atomicservice 1897 * @since 20 1898 */ 1899 types?: Set<string>; 1900 1901 /** 1902 * Indicates the maximum number of data records to be loaded. 1903 * 1904 * @type { ?number } 1905 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1906 * @atomicservice 1907 * @since 20 1908 */ 1909 recordCount?: number; 1910 } 1911 1912 /** 1913 * Indicates the callback function for loading data. 1914 * 1915 * @typedef { function } DataLoadHandler 1916 * @param { DataLoadInfo } acceptableInfo Indicates the type and number of data that can be accepted by the receiver. 1917 * @returns { UnifiedData | null } the {@link UnifiedData} object to be loaded. 1918 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1919 * @atomicservice 1920 * @since 20 1921 */ 1922 type DataLoadHandler = (acceptableInfo?: DataLoadInfo) => UnifiedData | null; 1923 1924 /** 1925 * Indicates data loading params. 1926 * 1927 * @interface DataLoadParams 1928 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1929 * @atomicservice 1930 * @since 20 1931 */ 1932 interface DataLoadParams { 1933 /** 1934 * Indicates the callback function for loading data. 1935 * 1936 * @type { DataLoadHandler } 1937 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1938 * @atomicservice 1939 * @since 20 1940 */ 1941 loadHandler: DataLoadHandler; 1942 1943 /** 1944 * Indicates data loading information. 1945 * @type { DataLoadInfo } 1946 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1947 * @atomicservice 1948 * @since 20 1949 */ 1950 dataLoadInfo: DataLoadInfo; 1951 } 1952 1953 /** 1954 * Insert data into unified data channel by Intention 1955 * 1956 * @param { Options } options - fill the intention field to indicate the target {@link Intention}. 1957 * @param { UnifiedData } data - {@link UnifiedData} data object to insert into target intention. 1958 * @param { AsyncCallback<string> } callback - {string}: the unique identifier. 1959 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 1960 * <br>2.Incorrect parameters types. 1961 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1962 * @since 10 1963 */ 1964 /** 1965 * Insert data into unified data channel by Intention 1966 * 1967 * @param { Options } options - fill the intention field to indicate the target {@link Intention}. 1968 * @param { UnifiedData } data - {@link UnifiedData} data object to insert into target intention. 1969 * @param { AsyncCallback<string> } callback - {string}: the unique identifier. 1970 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 1971 * <br>2.Incorrect parameters types. 1972 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1973 * @atomicservice 1974 * @since 11 1975 */ 1976 function insertData(options: Options, data: UnifiedData, callback: AsyncCallback<string>): void; 1977 1978 /** 1979 * Insert data into unified data channel by Intention 1980 * 1981 * @param { Options } options - fill the intention field to indicate the target {@link Intention}. 1982 * @param { UnifiedData } data - {@link UnifiedData} data object to insert into target intention. 1983 * @returns { Promise<string> } {string}: the unique identifier. 1984 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 1985 * <br>2.Incorrect parameters types. 1986 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1987 * @since 10 1988 */ 1989 /** 1990 * Insert data into unified data channel by Intention 1991 * 1992 * @param { Options } options - fill the intention field to indicate the target {@link Intention}. 1993 * @param { UnifiedData } data - {@link UnifiedData} data object to insert into target intention. 1994 * @returns { Promise<string> } {string}: the unique identifier. 1995 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 1996 * <br>2.Incorrect parameters types. 1997 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 1998 * @atomicservice 1999 * @since 11 2000 */ 2001 function insertData(options: Options, data: UnifiedData): Promise<string>; 2002 2003 /** 2004 * Update data to unified data channel by Unique Identifier 2005 * 2006 * @param { Options } options - fill the unique identifier field to indicate the target {@link UnifiedData}. 2007 * @param { UnifiedData } data - {@link UnifiedData} data object to update the target data. 2008 * @param { AsyncCallback<void> } callback - the callback of updateData. 2009 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2010 * <br>2.Incorrect parameters types. 2011 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2012 * @since 10 2013 */ 2014 /** 2015 * Update data to unified data channel by Unique Identifier 2016 * 2017 * @param { Options } options - fill the unique identifier field to indicate the target {@link UnifiedData}. 2018 * @param { UnifiedData } data - {@link UnifiedData} data object to update the target data. 2019 * @param { AsyncCallback<void> } callback - the callback of updateData. 2020 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2021 * <br>2.Incorrect parameters types. 2022 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2023 * @atomicservice 2024 * @since 11 2025 */ 2026 function updateData(options: Options, data: UnifiedData, callback: AsyncCallback<void>): void; 2027 2028 /** 2029 * Update data to unified data channel by Unique Identifier 2030 * 2031 * @param { Options } options - fill the unique identifier field to indicate the target {@link UnifiedData}. 2032 * @param { UnifiedData } data - {@link UnifiedData} data object to update the target data. 2033 * @returns { Promise<void> } the promise returned by the function. 2034 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2035 * <br>2.Incorrect parameters types. 2036 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2037 * @since 10 2038 */ 2039 /** 2040 * Update data to unified data channel by Unique Identifier 2041 * 2042 * @param { Options } options - fill the unique identifier field to indicate the target {@link UnifiedData}. 2043 * @param { UnifiedData } data - {@link UnifiedData} data object to update the target data. 2044 * @returns { Promise<void> } the promise returned by the function. 2045 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2046 * <br>2.Incorrect parameters types. 2047 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2048 * @atomicservice 2049 * @since 11 2050 */ 2051 function updateData(options: Options, data: UnifiedData): Promise<void>; 2052 2053 /** 2054 * Query data of unified data channel by Intention or Unique Identifier 2055 * 2056 * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} 2057 * or {@link UnifiedData}. 2058 * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the target {@link UnifiedData} 2059 * object array. 2060 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2061 * <br>2.Incorrect parameters types. 2062 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2063 * @since 10 2064 */ 2065 /** 2066 * Query data of unified data channel by Intention or Unique Identifier 2067 * 2068 * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} 2069 * or {@link UnifiedData}. 2070 * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the target {@link UnifiedData} object 2071 * array. 2072 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2073 * <br>2.Incorrect parameters types. 2074 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2075 * @atomicservice 2076 * @since 11 2077 */ 2078 function queryData(options: Options, callback: AsyncCallback<Array<UnifiedData>>): void; 2079 2080 /** 2081 * Query data of unified data channel by Intention or Unique Identifier 2082 * 2083 * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} 2084 * or {@link UnifiedData}. 2085 * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the target {@link UnifiedData} object array. 2086 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2087 * <br>2.Incorrect parameters types. 2088 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2089 * @since 10 2090 */ 2091 /** 2092 * Query data of unified data channel by Intention or Unique Identifier 2093 * 2094 * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} 2095 * or {@link UnifiedData}. 2096 * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the target {@link UnifiedData} object array. 2097 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2098 * <br>2.Incorrect parameters types. 2099 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2100 * @atomicservice 2101 * @since 11 2102 */ 2103 function queryData(options: Options): Promise<Array<UnifiedData>>; 2104 2105 /** 2106 * Delete data of unified data channel by Intention or Unique Identifier 2107 * 2108 * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} 2109 * or {@link UnifiedData}. 2110 * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the deleted {@link UnifiedData} 2111 * object array. 2112 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2113 * <br>2.Incorrect parameters types. 2114 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2115 * @since 10 2116 */ 2117 /** 2118 * Delete data of unified data channel by Intention or Unique Identifier 2119 * 2120 * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} 2121 * or {@link UnifiedData}. 2122 * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the deleted {@link UnifiedData} 2123 * object array. 2124 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2125 * <br>2.Incorrect parameters types. 2126 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2127 * @atomicservice 2128 * @since 11 2129 */ 2130 function deleteData(options: Options, callback: AsyncCallback<Array<UnifiedData>>): void; 2131 2132 /** 2133 * Delete data of unified data channel by Intention or Unique Identifier 2134 * 2135 * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} 2136 * or {@link UnifiedData}. 2137 * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the deleted {@link UnifiedData} object array. 2138 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2139 * <br>2.Incorrect parameters types. 2140 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2141 * @since 10 2142 */ 2143 /** 2144 * Delete data of unified data channel by Intention or Unique Identifier 2145 * 2146 * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} 2147 * or {@link UnifiedData}. 2148 * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the deleted {@link UnifiedData} object array. 2149 * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; 2150 * <br>2.Incorrect parameters types. 2151 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2152 * @atomicservice 2153 * @since 11 2154 */ 2155 function deleteData(options: Options): Promise<Array<UnifiedData>>; 2156 2157 /** 2158 * Sets the ShareOptions for the application data. Currently, only the drag-and-drop data channel is supported. 2159 * 2160 * @param { Intention } intention - Describe the sharing channel that UDMF support. 2161 * @param { ShareOptions } shareOptions - Types of scope that UnifiedData can be used. 2162 * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses 2163 * system API. 2164 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2165 * 2. Incorrect parameter types. 2166 * @throws { BusinessError } 20400001 - Settings already exist. To reconfigure, remove the existing sharing options. 2167 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2168 * @systemapi 2169 * @StageModelOnly 2170 * @since 12 2171 */ 2172 /** 2173 * Sets the ShareOptions for the application data. Currently, only the drag-and-drop data channel is supported. 2174 * 2175 * @permission ohos.permission.MANAGE_UDMF_APP_SHARE_OPTION 2176 * @param { Intention } intention - Describe the sharing channel that UDMF support. Currently only supports DRAG 2177 * intention. 2178 * @param { ShareOptions } shareOptions - Types of scope that UnifiedData can be used. 2179 * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission 2180 * required to call the API. 2181 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2182 * 2. Incorrect parameter types; 2183 * 3. Parameter verification failed. 2184 * @throws { BusinessError } 20400001 - Settings already exist. To reconfigure, remove the existing sharing options. 2185 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2186 * @stagemodelonly 2187 * @since 14 2188 */ 2189 function setAppShareOptions(intention: Intention, shareOptions: ShareOptions): void; 2190 2191 /** 2192 * Remove app sharing options. 2193 * 2194 * @param { Intention } intention - Describe the sharing channel that UDMF support. 2195 * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application 2196 * uses system API. 2197 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2198 * 2. Incorrect parameter types. 2199 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2200 * @systemapi 2201 * @StageModelOnly 2202 * @since 12 2203 */ 2204 /** 2205 * Remove app sharing options. 2206 * 2207 * @permission ohos.permission.MANAGE_UDMF_APP_SHARE_OPTION 2208 * @param { Intention } intention - Describe the sharing channel that UDMF support. Currently only supports DRAG 2209 * intention. 2210 * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission 2211 * required to call the API. 2212 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2213 * 2. Incorrect parameter types; 2214 * 3. Parameter verification failed. 2215 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2216 * @stagemodelonly 2217 * @since 14 2218 */ 2219 function removeAppShareOptions(intention: Intention): void; 2220 2221 /** 2222 * Converts the provided data into a multi-style data structure, which is useful when the original data uses multiple 2223 * records to represent different styles of the same data. This API is used only when the following rules are met: 2224 * 1.The number of records in data is greater than 2225 * 2.The value of unifiedData.properties.tag is records_to_entries_data_format. 2226 * 2227 * @param { UnifiedData } data - {@link UnifiedData} Data to convert. 2228 * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2229 * 2. Incorrect parameter types. 2230 * @syscap SystemCapability.DistributedDataManager.UDMF.Core 2231 * @stagemodelonly 2232 * @atomicservice 2233 * @since 17 2234 */ 2235 function convertRecordsToEntries(data: UnifiedData): void; 2236} 2237 2238export default unifiedDataChannel; 2239