diff --git a/api/@ohos.file.cloudSync.d.ts b/api/@ohos.file.cloudSync.d.ts index cc691f3d943fbc4df1ce3b0618d7897414de7817..0d4a9938deea2c1b949fe89641bd98c08114893f 100644 --- a/api/@ohos.file.cloudSync.d.ts +++ b/api/@ohos.file.cloudSync.d.ts @@ -25,8 +25,7 @@ import type { AsyncCallback, Callback } from './@ohos.base'; * * @namespace cloudSync * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ declare namespace cloudSync { /** @@ -34,58 +33,51 @@ declare namespace cloudSync { * * @enum { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ enum SyncState { /** * Indicates that the sync state is uploading. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ UPLOADING = 0, /** * Indicates that the sync failed in upload processing. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ UPLOAD_FAILED = 1, /** * Indicates that the sync state is downloading. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ DOWNLOADING = 2, /** * Indicates that the sync failed in download processing. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ DOWNLOAD_FAILED = 3, /** * Indicates that the sync finish. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ COMPLETED = 4, /** * Indicates that the sync has been stopped. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ - STOPPED = 5, + STOPPED = 5 } /** @@ -93,75 +85,65 @@ declare namespace cloudSync { * * @enum { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ enum ErrorType { /** * No error occurred. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ NO_ERROR = 0, /** * Synchronization aborted due to network unavailable. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ NETWORK_UNAVAILABLE = 1, /** * Synchronization aborted due to wifi unavailable. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ WIFI_UNAVAILABLE = 2, /** * Synchronization aborted due to low capacity level. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ BATTERY_LEVEL_LOW = 3, /** * Synchronization aborted due to warning low capacity level. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ BATTERY_LEVEL_WARNING = 4, /** * Synchronization aborted due to cloud storage is full. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ CLOUD_STORAGE_FULL = 5, /** * Synchronization aborted due to local storage is full. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ LOCAL_STORAGE_FULL = 6, /** * Synchronization aborted due to device temperature is too high. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ - DEVICE_TEMPERATURE_TOO_HIGH = 7, - + DEVICE_TEMPERATURE_TOO_HIGH = 7 } /** @@ -169,8 +151,7 @@ declare namespace cloudSync { * * @interface SyncProgress * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ interface SyncProgress { /** @@ -178,8 +159,7 @@ declare namespace cloudSync { * * @type { SyncState } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ state: SyncState; /** @@ -187,8 +167,7 @@ declare namespace cloudSync { * * @type { ErrorType } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ error: ErrorType; } @@ -198,8 +177,7 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ class GallerySync { /** @@ -207,8 +185,7 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ constructor(); /** @@ -224,8 +201,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ on(evt: 'progress', callback: (pg: SyncProgress) => void): void; /** @@ -241,8 +217,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ off(evt: 'progress', callback: (pg: SyncProgress) => void): void; /** @@ -257,8 +232,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ off(evt: 'progress'): void; /** @@ -274,8 +248,7 @@ declare namespace cloudSync { * @throws { BusinessError } 22400003 - Low battery level. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ start(): Promise; /** @@ -292,8 +265,7 @@ declare namespace cloudSync { * @throws { BusinessError } 22400003 - Low battery level. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ start(callback: AsyncCallback): void; /** @@ -306,8 +278,7 @@ declare namespace cloudSync { * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ stop(): Promise; /** @@ -321,8 +292,7 @@ declare namespace cloudSync { *
2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ stop(callback: AsyncCallback): void; } @@ -332,42 +302,37 @@ declare namespace cloudSync { * * @enum { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ enum State { /** * Indicates that the download task in process now. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ RUNNING = 0, /** * Indicates that the download task finished. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ COMPLETED = 1, /** * Indicates that the download task failed. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ FAILED = 2, /** * Indicates that the download task stopped. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ - STOPPED = 3, + STOPPED = 3 } /** @@ -375,58 +340,51 @@ declare namespace cloudSync { * * @enum { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ enum DownloadErrorType { /** * No error occurred. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ NO_ERROR = 0, /** * download aborted due to unknown error. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ UNKNOWN_ERROR = 1, /** * download aborted due to network unavailable. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ NETWORK_UNAVAILABLE = 2, /** * download aborted due to local storage is full. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ LOCAL_STORAGE_FULL = 3, /** * download aborted due to content is not found in the cloud. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ CONTENT_NOT_FOUND = 4, /** * download aborted due to frequent user requests. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ - FREQUENT_USER_REQUESTS = 5, + FREQUENT_USER_REQUESTS = 5 } /** @@ -434,8 +392,7 @@ declare namespace cloudSync { * * @interface DownloadProgress * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ interface DownloadProgress { /** @@ -443,8 +400,7 @@ declare namespace cloudSync { * * @type { State } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ state: State; /** @@ -452,8 +408,7 @@ declare namespace cloudSync { * * @type { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ processed: number; /** @@ -461,8 +416,7 @@ declare namespace cloudSync { * * @type { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ size: number; /** @@ -470,8 +424,7 @@ declare namespace cloudSync { * * @type { string } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ uri: string; /** @@ -479,19 +432,168 @@ declare namespace cloudSync { * * @type { DownloadErrorType } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} + * @since 11 + */ + error: DownloadErrorType; + } + + /** + * Describes the download file type. + * @enum { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + enum DownloadFileType { + /** + * Content file type. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + CONTENT = 0, + /** + * Thumbnail file type. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + THUMBNAIL = 1, + /** + * LCD file type. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + LCD = 2 + } + + /** + * FailedFileInfo struct. + * @interface FailedFileInfo + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + interface FailedFileInfo { + /** + * The uri of the file that failes to be downloaded. + * @type { string } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + uri: string; + /** + * Error code of the file that failes to be downloaded. + * @type { DownloadErrorType } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 * @arkts 1.1&1.2 */ error: DownloadErrorType; } + /** + * MultiDownloadProgress object. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + class MultiDownloadProgress { + /** + * The current download state. + * @type { State } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + state: State; + /** + * The download ID of the batch files. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + taskId: number; + /** + * The number of files that downloaded successfully + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + successfulCount: number; + /** + * The number of files that fail to be downloaded. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + failedCount: number; + /** + * Total number of the batch files. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + totalCount: number; + /** + * Total size of downloaded files. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + downloadedSize: number; + /** + * Total size of the batch files. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + totalSize: number; + /** + * The error type of download. + * @type { DownloadErrorType } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + errType: DownloadErrorType; + /** + * Get the list of files that fail to be downloaded. + * @returns { Array } - Return list of files that fail to be downloaded. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + getFailedFiles(): Array; + /** + * Get the list of files that are successfully downloaded. + * @returns { Array } - Return list of files that are successfully downloaded. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + getSuccessfulFiles(): Array; + } /** * Download object. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ class Download { /** @@ -499,8 +601,7 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ constructor(); /** @@ -516,8 +617,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ on(evt: 'progress', callback: (pg: DownloadProgress) => void): void; /** @@ -533,8 +633,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ off(evt: 'progress', callback: (pg: DownloadProgress) => void): void; /** @@ -549,8 +648,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ off(evt: 'progress'): void; /** @@ -567,8 +665,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13900025 - No space left on device. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ start(uri: string): Promise; /** @@ -585,8 +682,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13900025 - No space left on device. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ start(uri: string, callback: AsyncCallback): void; /** @@ -601,8 +697,7 @@ declare namespace cloudSync { *
2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ stop(uri: string): Promise; /** @@ -617,8 +712,7 @@ declare namespace cloudSync { *
2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'10','1.2':'20'} - * @arkts 1.1&1.2 + * @since 10 */ stop(uri: string, callback: AsyncCallback): void; } @@ -627,8 +721,7 @@ declare namespace cloudSync { * FileSync object. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ class FileSync { /** @@ -636,8 +729,7 @@ declare namespace cloudSync { * * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ constructor(); /** @@ -649,8 +741,7 @@ declare namespace cloudSync { *
2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ constructor(bundleName: string); /** @@ -662,8 +753,7 @@ declare namespace cloudSync { *
2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ on(event: 'progress', callback: Callback): void; /** @@ -674,8 +764,7 @@ declare namespace cloudSync { * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:1.Mandatory parameters are left unspecified;2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ off(event: 'progress', callback?: Callback): void; /** @@ -688,8 +777,7 @@ declare namespace cloudSync { * @throws { BusinessError } 22400002 - Network unavailable. * @throws { BusinessError } 22400003 - Low battery level. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ start(): Promise; /** @@ -702,8 +790,7 @@ declare namespace cloudSync { * @throws { BusinessError } 22400002 - Network unavailable. * @throws { BusinessError } 22400003 - Low battery level. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ start(callback: AsyncCallback): void; /** @@ -713,8 +800,7 @@ declare namespace cloudSync { * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ stop(): Promise; /** @@ -725,8 +811,7 @@ declare namespace cloudSync { *
2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ stop(callback: AsyncCallback): void; /** @@ -736,8 +821,7 @@ declare namespace cloudSync { * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ getLastSyncTime(): Promise; /** @@ -748,8 +832,7 @@ declare namespace cloudSync { *
2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ getLastSyncTime(callback: AsyncCallback): void; } @@ -757,8 +840,7 @@ declare namespace cloudSync { * CloudFileCache object. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ class CloudFileCache { /** @@ -766,8 +848,7 @@ declare namespace cloudSync { * * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ constructor(); /** @@ -779,10 +860,24 @@ declare namespace cloudSync { *
2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ on(event: 'progress', callback: Callback): void; + /** + * Subscribes to a batch of cloud file cache download progress change event. This method uses a callback to get download progress changes. + * + * @param { 'batchDownload' } event - event type. + * @param { Callback } callback - callback function with a `MultiDownloadProgress` argument. + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: + *
1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + on(event: 'batchDownload', callback: Callback): void; /** * Unsubscribes from cloud file cache download progress event. * @@ -792,11 +887,24 @@ declare namespace cloudSync { *
2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ off(event: 'progress', callback?: Callback): void; - + /** + * Unsubscribes from cloud file cache download progress event. + * + * @param { 'batchDownload' } event - event type. + * @param { Callback } [callback] - callback function with a `MultiDownloadProgress` argument. + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: + *
1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + off(event: 'batchDownload', callback?: Callback): void; /** * Start the cloud file cache download task. * @@ -809,8 +917,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13900025 - No space left on device. * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ start(uri: string): Promise; /** @@ -825,10 +932,28 @@ declare namespace cloudSync { * @throws { BusinessError } 13900025 - No space left on device. * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ start(uri: string, callback: AsyncCallback): void; + /** + * Batch start the cloud file cache download task. + * + * @param { Array } uris - The list of uri of file. + * @param { DownloadFileType } fileType - download file type. + * @returns { Promise } - Return the downloadId in Promise mode. + * @throws { BusinessError } 13600001 - IPC error. Possible causes: + *
1.IPC failed or timed out. 2.Failed to load the service. + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: + *
1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 22400004 - Exceed the maximum limit. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + startBatch(uris: Array, fileType?: DownloadFileType): Promise; /** * Stop the cloud file cache download task. * @@ -854,8 +979,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13900002 - No such file or directory. * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ stop(uri: string, needClean?: boolean): Promise; /** @@ -869,10 +993,27 @@ declare namespace cloudSync { * @throws { BusinessError } 13900002 - No such file or directory. * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ stop(uri: string, callback: AsyncCallback): void; + /** + * Batch stop the cloud file caches download task. + * + * @param { number } downloadId - The download ID of a batch of file cache. + * @param { boolean } [needClean] - whether to delete the file that already downloaded. + * @returns { Promise } - Return Promise. + * @throws { BusinessError } 13600001 - IPC error. Possible causes: + *
1.IPC failed or timed out. 2.Failed to load the service. + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: + *
1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + stopBatch(downloadId: number, needClean?: boolean): Promise; /** * Clean the local file cache. * @@ -887,10 +1028,81 @@ declare namespace cloudSync { * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ cleanCache(uri: string): void; + /** + * Clean local content of the file that has been synced to the Cloud + * + * @param { string } uri - uri of file. + * @throws { BusinessError } 13600001 - IPC error. Possible causes: + *
1.IPC failed or timed out. 2.Failed to load the service. + * @throws { BusinessError } 13900002 - No such file or directory. + * @throws { BusinessError } 13900010 - Try again. + * @throws { BusinessError } 13900012 - Permission denied by the file system + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: + *
1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 14000002 - Invalid URI. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + cleanFileCache(uri: string): void; + } + + /** + * Describes the external sync state of file. + * @enum { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + enum FileState { + /** + * Indicates the initial state after a file is downloaded from the cloud to the local host. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + INITIAL_AFTER_DOWNLOAD = 0, + /** + * Indicates that the file is uploading now. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + UPLOADING = 1, + /** + * Indicates that the file sync task stopped. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + STOPPED = 2, + /** + * Indicates that the file is waiting for upload. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + TO_BE_UPLOADED = 3, + /** + * Indicates that the file has been already uploaded successfully. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + UPLOAD_SUCCESS = 4, + /** + * Indicates that the file upload failure + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + UPLOAD_FAILURE = 5 } /** @@ -899,8 +1111,7 @@ declare namespace cloudSync { * @enum { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ enum FileSyncState { /** @@ -908,8 +1119,7 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ UPLOADING = 0, /** @@ -917,8 +1127,7 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ DOWNLOADING = 1, /** @@ -926,8 +1135,7 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ COMPLETED = 2, /** @@ -935,8 +1143,7 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ STOPPED = 3, /** @@ -944,8 +1151,7 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ TO_BE_UPLOADED = 4, /** @@ -953,8 +1159,7 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ UPLOAD_SUCCESS = 5, /** @@ -962,10 +1167,9 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ - UPLOAD_FAILURE = 6, + UPLOAD_FAILURE = 6 } /** @@ -983,8 +1187,7 @@ declare namespace cloudSync { * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ function getFileSyncState(uri: Array): Promise>; /** @@ -1002,8 +1205,7 @@ declare namespace cloudSync { * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'11','1.2':'20'} - * @arkts 1.1&1.2 + * @since 11 */ function getFileSyncState(uri: Array, callback: AsyncCallback>): void; /** @@ -1019,14 +1221,36 @@ declare namespace cloudSync { * @throws { BusinessError } 13900010 - Try again * @throws { BusinessError } 13900012 - Permission denied by the file system * @throws { BusinessError } 13900031 - Function not implemented - * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900042 - Unknown error * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ function getFileSyncState(uri: string): FileSyncState; + /** + * Get the sync state of the specified file. + * + * @param { string } uri - uri of file. + * @returns { FileState } - return the sync state of the specified file. + * @throws { BusinessError } 13600001 - IPC error. Possible causes: + *
1.IPC failed or timed out. 2.Failed to load the service. + * @throws { BusinessError } 13900002 - No such file or directory. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900012 - Permission denied by the file system + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: + *
1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 14000002 - Invalid URI. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + function getCoreFileSyncState(uri: string): FileState; /** * Register change notify for the specified uri. * @@ -1040,8 +1264,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ function registerChange(uri: string, recursion: boolean, callback: Callback): void; /** @@ -1055,8 +1278,7 @@ declare namespace cloudSync { * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ function unregisterChange(uri: string): void; @@ -1065,98 +1287,87 @@ declare namespace cloudSync { * * @enum { number } NotifyType * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ enum NotifyType { /** * File has been newly created * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ NOTIFY_ADDED = 0, /** * File has been modified. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ NOTIFY_MODIFIED = 1, /** * File has been deleted. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ NOTIFY_DELETED = 2, /** * File has been renamed or moved. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ - NOTIFY_RENAMED = 3, + NOTIFY_RENAMED = 3 } - /** + /** * Defines the change data - * + * * @interface ChangeData * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ interface ChangeData { /** * The notify type of the change. - * + * * @type {NotifyType} * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ type: NotifyType; /** * Indicates whether the changed uri is directory. - * + * * @type {Array} * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ isDirectory: Array; /** * The changed uris. - * + * * @type {Array} * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since arkts{ '1.1':'12','1.2':'20'} - * @arkts 1.1&1.2 + * @since 12 */ uris: Array; } - /** - * Optimize storage space - * + * Optimizes storage space by handling aging device-cloud files. * @permission ohos.permission.CLOUDFILE_SYNC - * @returns { Promise } - Return Promise. - * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. - *
2.Incorrect parameter types. - * @throws { BusinessError } 13600001 - IPC error. - * @throws { BusinessError } 13900042 - Unknown error. + * @returns { Promise } Promise that returns no value. + * @throws { BusinessError } 201 Permission verification failed, usually the result returned by + * VerifyAccessToken. + * @throws { BusinessError } 202 Permission verification failed, application which is not a system + * application uses system API. + * @throws { BusinessError } 13600001 IPC error. + * @throws { BusinessError } 13900042 Internal Error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'17','1.2':'20'} - * @arkts 1.1&1.2 + * @since 17 */ - function optimizeStorage(): Promise; + function optimizeStorage():Promise; /** * Start optimize storage space task. @@ -1180,16 +1391,14 @@ declare namespace cloudSync { /** * Stop optimize storage space task. - * * @permission ohos.permission.CLOUDFILE_SYNC - * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. - * @throws { BusinessError } 13600001 - IPC error. - * @throws { BusinessError } 22400005 - Inner error. + * @throws { BusinessError } 201 Permission verification failed, usually the result returned by VerifyAccessToken. + * @throws { BusinessError } 202 Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 13600001 IPC Error + * @throws { BusinessError } 22400005 Inner Error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'17','1.2':'20'} - * @arkts 1.1&1.2 + * @since 17 */ function stopOptimizeSpace(): void; @@ -1201,14 +1410,12 @@ declare namespace cloudSync { * @since arkts{ '1.1':'17','1.2':'20'} * @arkts 1.1&1.2 */ - export enum OptimizeState { - + enum OptimizeState { /** * Indicates that the optimize space task in process now. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'17','1.2':'20'} - * @arkts 1.1&1.2 + * @since 17 */ RUNNING = 0, @@ -1216,8 +1423,7 @@ declare namespace cloudSync { * Indicates that the optimize space task finished successfully. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'17','1.2':'20'} - * @arkts 1.1&1.2 + * @since 17 */ COMPLETED = 1, @@ -1225,8 +1431,7 @@ declare namespace cloudSync { * Indicates that the optimize space task failed. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'17','1.2':'20'} - * @arkts 1.1&1.2 + * @since 17 */ FAILED = 2, @@ -1234,8 +1439,7 @@ declare namespace cloudSync { * Indicates that the optimize space task stopped. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'17','1.2':'20'} - * @arkts 1.1&1.2 + * @since 17 */ STOPPED = 3 } @@ -1249,15 +1453,13 @@ declare namespace cloudSync { * @arkts 1.1&1.2 */ interface OptimizeSpaceProgress { - /** * The current optimize space task state. * @permission ohos.permission.CLOUDFILE_SYNC * @type { OptimizeState } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'17','1.2':'20'} - * @arkts 1.1&1.2 + * @since 17 */ state: OptimizeState; @@ -1267,8 +1469,7 @@ declare namespace cloudSync { * @type { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'17','1.2':'20'} - * @arkts 1.1&1.2 + * @since 17 */ progress: number; } @@ -1282,17 +1483,15 @@ declare namespace cloudSync { * @arkts 1.1&1.2 */ interface OptimizeSpaceParam { - /** * The total size(Unit:byte) of clean space. * @permission ohos.permission.CLOUDFILE_SYNC * @type { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'17','1.2':'20'} - * @arkts 1.1&1.2 + * @since 17 */ - totalSize: number; + totalSize:number; /** * Clean files that are not accessed agingDays(unit:day) ago. @@ -1300,11 +1499,236 @@ declare namespace cloudSync { * @type { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since arkts{ '1.1':'17','1.2':'20'} - * @arkts 1.1&1.2 + * @since 17 */ agingDays: number; } + + /** + * Defines the HistoryVersion data structure. + * @typedef HistoryVersion + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + interface HistoryVersion { + /** + * The time when the content of this version file is edited. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + editedTime: number; + /** + * The size of this history version file. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + fileSize: number; + /** + * The version ID of this version. + * @type { string } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + versionId: string; + /** + * The original file name used to create this version. + * @type { string } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + originalFileName: string; + /** + * The Sha256 check value of this version file. + * @type { string } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + sha256: string; + /** + * Indicates whether this version automatically resolves the conflict. + * @type { boolean } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + autoResolved: boolean; + } + + /** + * Defines the VersionDownloadProgress data structure. + * @typedef VersionDownloadProgress + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + interface VersionDownloadProgress { + /** + * The current download task state. + * @type { State } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + state: State; + /** + * The percentage of downloaded files. + * @type { number } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + progress: number; + /** + * The error type of download. + * @type { DownloadErrorType } + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + errType: DownloadErrorType; + } + + /** + * FileVersion object. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + class FileVersion { + /** + * A constructor used to create a FileVersion object. + * + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + constructor(); + /** + * Get the specified number of most recent historical versions of the file specified by the URI. + * + * @param { string } uri - uri of file. + * @param { number } versionNumLimit - Maximum number of historical versions you want to obtained. + * @returns { Promise> } - Return the most recent history version list of the specified file. + * @throws { BusinessError } 13600001 - IPC error. Possible causes: + *
1.IPC failed or timed out. 2.Failed to load the service. + * @throws { BusinessError } 13900002 - No such file or directory. + * @throws { BusinessError } 13900010 - Try again. + * @throws { BusinessError } 13900012 - Permission denied by the file system. + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: + *
1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 14000002 - Invalid URI. + * @throws { BusinessError } 22400002 - Network unavailable. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + getHistoryVersionList(uri: string, versionNumLimit: number): Promise>; + /** + * Download the content of the specified history version to the specified temporary directory. + * + * @param { string } uri - Uri of file. + * @param { string } versionId - The version ID of the history version you want. + * @param { Callback } callback - callback function with a `VersionDownloadProgress` argument. + * @returns { Promise } - Return the temporary directory to use for saving the content of the specified history version. + * @throws { BusinessError } 13600001 - IPC error. Possible causes: + *
1.IPC failed or timed out. 2.Failed to load the service. + * @throws { BusinessError } 13900002 - No such file or directory. + * @throws { BusinessError } 13900010 - Try again. + * @throws { BusinessError } 13900012 - Permission denied by the file system. + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: + *
1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 14000002 - Invalid URI. + * @throws { BusinessError } 22400002 - Network unavailable. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + downloadHistoryVersion(uri: string, versionId: string, callback: Callback): Promise; + /** + * Replace the content of the specified file with the content of the specified history version. + * + * @param { string } originalUri - The uri of the file whose content you want to replace. + * @param { string } versionUri - The uri of the downloaded history version used to replace the original file. + * @returns { Promise } - Return Promise. + * @throws { BusinessError } 13600001 - IPC error. Possible causes: + *
1.IPC failed or timed out. 2.Failed to load the service. + * @throws { BusinessError } 13900002 - No such file or directory. + * @throws { BusinessError } 13900005 - I/O error. + * @throws { BusinessError } 13900008 - Bad file descriptor. + * @throws { BusinessError } 13900010 - Try again. + * @throws { BusinessError } 13900012 - Permission denied by the file system. + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: + *
1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 14000002 - Invalid URI. Possible causes: 1.originalUri invalid; 2.versionUri invalid. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @throws { BusinessError } 22400007 - The version file specified to replace the original file does not exist. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + replaceFileWithHistoryVersion(originalUri: string, versionUri: string): Promise; + /** + * Check whether the current file content is in conflict with other versions. + * + * @param { string } uri - Uri of file. + * @returns { Promise } - Return a Boolean value indicating whether the current file content is in conflict with other versions. + * @throws { BusinessError } 13600001 - IPC error. Possible causes: + *
1.IPC failed or timed out. 2.Failed to load the service. + * @throws { BusinessError } 13900002 - No such file or directory. + * @throws { BusinessError } 13900010 - Try again. + * @throws { BusinessError } 13900012 - Permission denied by the file system. + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: + *
1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 14000002 - Invalid URI. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + isFileConflict(uri: string): Promise; + /** + * Clean the current file conflict flag after the conflict is resolved. + * + * @param { string } uri - Uri of file. + * @returns { Promise } - Return Promise. + * @throws { BusinessError } 13600001 - IPC error. Possible causes: + *
1.IPC failed or timed out. 2.Failed to load the service. + * @throws { BusinessError } 13900002 - No such file or directory. + * @throws { BusinessError } 13900010 - Try again. + * @throws { BusinessError } 13900012 - Permission denied by the file system. + * @throws { BusinessError } 13900020 - Parameter error. Possible causes: + *
1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 14000002 - Invalid URI. + * @throws { BusinessError } 22400005 - Inner error. Possible causes: + *
1.Failed to access the database or execute the SQL statement. + *
2.System error, such as a null pointer, insufficient memory or a JS engine exception. + * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core + * @since 20 + * @arkts 1.1&1.2 + */ + clearFileConflict(uri: string): Promise; + } } -export default cloudSync; +export default cloudSync; \ No newline at end of file